There are currently 42 open non-draft PRs (Pull Requests). These would make the foundation of Gramps 6.1.
I’ve broken them down into 3 groups:
Those that should be reviewed+merged first either to cut down on merge conflicts, or to allow additional PRs and development (gramps desktop and web)
Regular bug fixes and enhancements
Items that should be merged at the end of the 6.1 development process
I suggest we review and merge the PRs in this order. If you are working on something (draft or otherwise) please leave a message on this post. If you have a suggestion for changing the order, let me know and I will edit this list.
Thank you very much. Even for a non-developer it is interesting to see what to expect for new releases.
But it also raises some questions.
What about all the feature requests in the Gramps Bugtracker (MantisBT). Is there any formal prioritisation rules, for a feature request to be considered for the next release?
Users often asks for a new feature or improved UI in the Gramps Discourse categories ‘Ideas’ or ‘Help’. Is such requests considered or are they ignored until there is a feature request in the Bugtracker or a Pull Request in Git?
Is there any means to raise attention for a particular request, or could/should we have a voting for which feature requests to prioritise for the next release?
TIA
Claus
I think it might help if developers could identify, and discuss the implications of, technical changes that need to happen in next few years. For example, “we should move from GTK3 to GTK4 (or whatever) by x date, and doing so will give us the ability do these new things, and make it easier to improve these old things”.
Maybe AI can also help analyze the backlog. Many requests are already marked as “related” but it might identify more connections.
Then, developer input could again be helpful, for example “each of the issues in this group would individually be a pain in the neck and not worth my time, but if we changed how the such-and-such worked, then it would be straightforward to implement them.” Or another example, “the requests in this group are probably not useful to many people besides the requestors, but if we changed x, then users could tweak things to their desire.”
@Nick-Hall@dsblank@SteveY and other Gramps developers:
When a PR introduces a breaking API change that may end up breaking 3P addons, what should be done to ensure minimum disruption?
Case in point, for PR #2083 there are comments indicating such a breaking change and that the PR should be targeted to Gramps 6.1.
Should the author of the PR add a commit in the same PR to fix the addons so that the build remains stable?
Our goal for Gramps 6.1 is that we will have proper checks not only for the correct number of arguments that are passed into functions, but that they will also be checked to be of the correct type. My suggestion would be to add that requirement to the 3rd party addons for 6.1 (using mytype) so that it will automatically catch and prevent any such addon from being accepted.
It will be the addon’s author’s responsibility to either fix any breaking change, or their addon just won’t be accepted.
(In technical terms, an addon commit can’t be in the same PR as that is a different repository, but I get your meaning.)
I have to disagree. If the core developer breaks an API, I think it is upon them to fix both any occurrence in core as well as addons. I could imagine one core PR for the commit and to cover core breakage. And an Addon PR to cover all breakage there. The Addon PR could be part of the migration path when a new release is created.
We had a long discussion about features when Nick posted the Roadmap for 5.3/6.0…
At least the first half of it is about features wanted…
I will again mention my 3x two cents.
Main-/Sub Events
Events on Places
CSL support and a hierarchical and extended feature for Repositories/Sources/Citations (RSC)…
In addition, I do not know how much more all of you devs work with moving logic from the frontend to the backend for speed, but I think that is something most users with larger databases still need more of… (speed)…
Ooh, one more thing…
Regarding time periods: please move away from the GEDCOM logic ASAP…
But as a whole: My earlier posts in the roadmap thread outline the structural backend changes needed for long‑term performance — JSON‑based storage, proper indexing, database views, and multi‑threading support.
In addition, I’ve already described 3–4 core features that would lift Gramps several floors in the humaniora‑oriented research field.
Our current policy is that core developers to not have to update third-party addons after an API change. However, in the past, some developers have updated addons as a courtesy.
In this case, as the PR author, I don’t believe that it will be easy to identify which, if any, add-ons are broken by the change. You would need to identify the expected type of an argument to a callback function in the add-on. The breaking change was necessary to fix core gramps which is broken in 6.0 and earlier versions.
@Nick-Hall it seems like the bug fixes that are applied to a maintenance branch are not immediately applied to master. This makes it difficult to work on master. Is there any reason not to immediately apply a maintenance fix to master?
The maintenance branches are merged into the master branch on a regular basis. The last branch merge was on 20th March and there haven’t been any bug fixes committed since then - just some translations and changes to the AIO build.
I can merge at any time when there is a reason to do so.
@Nick-Hall What is your plan for starting to merge the 6.1 PRs into master? There are going to be lots of merge conflicts as we go, and I for one could start working on a 6.1 addon once we start getting the above merged.
I usually do this in two passes. Firstly, I merge the small PRs that are easy to review and test. They also are less likely to have conflicts. I have started this process already.
Then I review the larger PRs and decide what will go into the next release. This obviously takes longer.
I leave merging the large PRs until shortly before creation of the new maintenance branch. In the past I have had problems merging the maintenance branch if this is done too early.
After this I create the new maintenance branch, a new addons branch and point Weblate at the new branches. This will be about three months before the planned release date to give the translators a good amount of time.
The current roadmap was to plan for the next feature release around 1 Oct 2026. However, I am still in discussions with FamilySearch and our plans may change.
What are these discussions like? Do they involve developers from our side? I’m the only one so far that has started reviewing the 19k lines of code, and don’t really know what the goals or timeframe is. Feel free to invite me to any FS conversation.
I’m also worried that some of the speed improvement PRs might not get in because of the focus on FamilySearch.
Can you add some transparency to the FS conversation?