On Wed, May 29, 2024 at 11:32 AM Stephen Gallagher <sgallagh@xxxxxxxxxx> wrote: > > tl;dr: I'll be stepping down from maintaining the nodejs22, nodejs20 > and nodejs16 packages in Fedora, effective June 30, 2024. I will > continue to maintain libuv. > > > > It's been a hard decision to come to, but I think this is the correct > decision for me. I've been effectively the sole maintainer of Node.js > in Fedora for nearly a dozen years now (apparently, I landed the first > official package in Fedora on Dec. 18, 2012). It has been a long, long > road. > > I first picked up Node.js because it was being added as a new > dependency on a package I maintained at the time: Review Board (a > Django-base code-review application). When I looked into it, I > discovered that others had tried - and failed - to package Node.js > previously, but Fedora's rules at the time were *very* strict with > regards to carrying bundled software and Node.js upstream at the time > had a build-system that pretty much only allowed bundling. It took > quite a bit of effort to work through that, but we got there in the > end and I was able to deliver Node.js 0.8 as the very first version to > ship as part of Fedora. It's been a wild ride ever since. > > For a long time, Fedora carried a single version of Node.js - whatever > was the latest version destined for LTS status at the time that Fedora > version would be released. Then, along came... Modularity. As you may > know, I was heavily involved with the design of Modularity. Node.js in > particular was something I viewed as a perfect consumer of this new > packaging mechanism: it gave us the ability to ship all versions of > Node.js in Fedora (not just the LTS ones) in a way that could be > packaged in VMs and (new at the time) container images without needing > to modify the way the applications were launched. > > Sadly, as you probably know, the implementation of Modularity fell > short of its lofty goals and has largely been relegated to the > dust-bin of history. When it became clear that Modules were going to > be dropped from Fedora, I took on another big packaging exercise: > DE-modularizing Node.js. Rather than go back to the "single Node.js > version in Fedora" approach, I moved to a hybrid approach where we > would have a single "system" version of Node.js LTS like in the older > style, but we would also package the older (and newer!) LTS releases > in a non-default arrangement, similar to how Python packages are > delivered in Fedora. I've been doing it this way for a few years now, > and while there have been some bumps in the road around major-release > upgrades, it's been overall quite workable. > > Recently, the Node.js downstream maintainers made some additional > improvements in Node.js 20 to unbundle some previously-precompiled > WASM code into their own packages which build it properly. This is > great! Unfortunately, it has introduced some new issues with the > non-default version in the release (as many of you probably saw last > week). We sorted this out by temporarily re-bundling the WASM in the > non-default versions, but this is really a stop-gap solution. > > It's not a huge issue, but it took a big chunk out of my week to get > that resolved and in doing it, I came to an important realization: I'm > burnt out. I took a moment to think through it and realized that I > don't actually *use* Node.js anywhere anymore. I've been maintaining > it for so long that it's become a habit, but I'm not a real consumer > of it. I've sent requests in the past to fedora-devel asking for > comaintainers, but I've never actually had anyone step up, so I've > just kept going. Thank you for all the work you've done on this, Stephen. Kudos to you for recognizing where you're at, and having the courage to share it. > So that brings us to today and my decision to step down. It's been a > wild ride, but I need to step away and focus on other things. I hope > someone out there will pop up and take over for me. I'm perfectly > happy to train someone on how I maintain the various versions, but my > time as a maintainer is coming to an end. I'll keep things going for > another month, but after that it becomes Someone Else's Problem. > > If you read this far, thanks for suffering through that rambling journey. No, again, thank you. josh -- _______________________________________________ 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