My initial impression is that creating a script that edits sources correctly will take longer to write than editing the head of master to remove some of the generics. Recall that the code has other generics.
I am guessing that a manual edit is probably a half day to a full day of work, I'm not sure how much editing the tests would need. My gut feel is that it is safer to take the head of master, create a 2.x.y branch and edit that, and switch master to 3.0.0. This pretty much guarantees that neither branch will miss any fix. Gary On Wed, Jul 12, 2023, 14:29 Phil Steitz <phil.ste...@gmail.com> wrote: > I think the code in master is close to releasable modulo the breaking > change that we have agreed should move to 3.x. The clean way to proceed on > the 2.x branch would be to go back to the commit that introduced the new > exception type parameter, cut the branch from there and then port all of > the subsequent changes. That would be a lot of manual work to do > individually, referencing each commit. Do we think that this is necessary? > > I see two alternatives. One is to cut the 2.x branch from master and write > a script to make the changes to remove the type parameters, then do one > commit to revert that change. Second is to do basically the same thing, > only creating the branch from the prior commit, then one big commit to both > port subsequent changes and get rid of the type parameters. > > I am OK if people think we need to go back to the breaking commit and > individually port commits from there. It will just take a little longer. > I am also obviously open to any better suggestions on how to do this. > > Phil >