Hi Stephen, Stephen Gallagher <sgallagh@xxxxxxxxxx> writes: > On Tue, Sep 6, 2022 at 2:29 PM Ben Cotton <bcotton@xxxxxxxxxx> wrote: > *snip* > When a Node.js release goes out of support, we have a question to > answer: do we Obsolete it with a newer version? If so, which one? The > most recent version or the oldest one? It will not be 100% compatible > in either case. Do we Obsolete it with fedora-retired-packages? Do we > just leave the packages in Fedora forever (possibly patching the > `/usr/bin/node` binary to warn that it's out of support)? I would definitely obsolete it. I personally would obsolete it with the default nodejs version, if there is one. > There's another potential upgrade issue: We have multiple choices of > how to upgrade from the nodejs package to the nodejsXX packages: > 1) Upgrading from either F36 or F37 will result in you getting Node.js > 18. (This method is closest to how things worked prior to this Change, > where the nodejs package would just get updated to the latest stable > release) > 2) Upgrading from F36 will move you onto nodejs16 in F38. Upgrading > from F37 will move you onto Node.js 18 in F38. (This method maintains > compatibility with applications running on the current system) > 3) Upgrading from F36 or F37 will *remove* the nodejs package and the > user will need to manually select one to install. (This method has > increased friction, but more user choice) > 4) Upgrading from F36 or F37 will leave the existing nodejs package on > the system, receiving no updates. Users of F38 will need to manually > remove and install a newer version. (This method is high-friction, > offers nothing over any of the others and potentially leaves people > vulnerable) > > With options 1), 3) and 4), we can make the change in F38 exclusively. > However if we want to do 2), we *also* need to either backport this > Change to Fedora 37 and Fedora 36 because otherwise we would have to > continuously update the Obsoletes: values in F38. With 1) I can update > the Obsoletes: to just treat any Node.js with an epoch < 3 as the > trigger to move to nodejs18. > > My questions to those brave souls who have read this far: > 1) Which do you think is the best of the above options for upgrades to F38? My personal preference would be Option 1. Imho it's a bit expected that you might have to do some cleanup after a system upgrade. So moving to the latest stable version sounds like a good overall compromise for most users: you'll get the latest stable version and if you need an older version, you'll (hopefully) figure it out during the post-upgrade cleanup. (And we could implement it without backporting) > 2) What do we do about future upgrades in the following scenarios: > a. The user has nodejsXX installed as the default interpreter. The > nodejsXX package is no longer available upon upgrade (EOL). I would upgrade to the new default version. > b. The user has nodejsXX installed as the default interpreter. The > nodejsXX package is available but non-default upon upgrade. Unless it is very simple to upgrade to that non-default version on upgrade, I'd just upgrade to the new default/latest stable as well in this case. Cheers, Dan _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue