technomancy / leiningen

Moved to Codeberg; this is a convenience mirror
https://codeberg.org/leiningen/leiningen
Other
7.29k stars 1.61k forks source link

Moving the repository to a new host #2800

Closed technomancy closed 2 years ago

technomancy commented 2 years ago

In light of the points raised by the https://giveupgithub.org campaign, we will be moving the Leiningen repository to a new host. I have been mirroring Leiningen to Gitlab for many years for redundancy purposes, and have had it on Codeberg for around a year too.

I would like to hear from the community what the preference would be for a new home for Leiningen. Right now Codeberg is the top choice because it is significantly faster and less buggy than Gitlab in almost every respect. The exception being the CI setup, which is still new and fairly rough around the edges, but works: https://ci.codeberg.org/technomancy/leiningen/build/11/3 My experience with Gitlab has been subpar; I run into bugs on a regular basis, and when I type in the textarea fields I frequently have to slow down to allow the page to catch up with my keystrokes. I would also consider SourceHut, which I personally like a lot more, but I expect that it might be a little too big of a change for most people who are used to the pull request contribution flow.

I'm asking the community to chime in and give feedback about which they prefer:

We will leave this repository up on Github as a read-only mirror for a few years at least as we transition. People who wish to use it to report bugs or submit patches may continue to do so here for the foreseeable future, but the repository will not be considered the canonical one.

We will also use this opportunity to change the default branch to main.

Edit: I also urge anyone reading this to consider the points raised by https://giveupgithub.org and https://mako.cc/writing/hill-free_tools.html and think about doing likewise for their own projects. If you've tried Gitlab in the past and come away unimpressed you should know that non-github options have come a long way in the past few years, and with Gitea's federation features right around the corner there's never been a better time to move to a host that's more in line with the values of free software.

winks commented 2 years ago

No hard preference, but codeberg sounds good - although I don't have a lot of experience with it, only made a personal account this week.

esuomi commented 2 years ago

The only one of those I'm familiar with is GitLab, and while I prefer it for on-premise enterprisey installations, I've never kinda liked the open core/hosted variant, mainly for the same reasons as you listed. Never heard of codeberg before, and after a peek I'm slightly worried about their monetization model (or lack thereof) in the long run.

Going purely by feel, I think either Codeberg or GitLab would be a good choice. For me SourceHut looks sketchy and outdated, so it doesn't really produce the kind of confidence and reliability I'd need when looking into new libraries and such.

technomancy commented 2 years ago

I'm just going to go ahead and veto gitlab; I just failed the login captcha twice, and now it's gone non-responsive when I try to do a git push. This is not a suitable host for the project.

McSinyx commented 2 years ago

I just failed the login captcha twice, and now it's gone non-responsive when I try to do a git push. This is not a suitable host for the project.

Yup @technomancy you just described CloudFlare, which is a hard nope for me.

For me SourceHut looks sketchy and outdated, so it doesn't really produce the kind of confidence and reliability I'd need when looking into new libraries and such.

Looks might be personal, but SourceHut is a lot lighter to load and doesn't require JavaScript. Maybe it's not a concern for @esuomi if he uses a newer high-end computer and has fast and stable connection, but I do not have such luxury. Note that I only use lein lightly and am definitely not a representative of future contributors though.

Speaking of contributors, it's also worth mentioning that SourceHut does not require people to create an account to send patches or filing bug reports: everything is done through emails. Another worth-mentioning killer feature is the support of SSH'ing into CI builds and manually submitting builds.

As for Codeberg, it's run by a non-profit so there's no monetization. For longevity if it's to be used I'd suggest donating around the same cost as SourceHut membership.

IMHO it'd be best if the forge is self-hosted, but I suppose it's likely to be out of the picture given the maintenance cost.

andreyorst commented 2 years ago

I'm all for Sourcehut, but I'm just being selfish here, because I like their platform more than Codeberg, mainly because of the mailing lists and patches don't require an account, but I don't think I'll actually contribute to leiningen project (everything works for me, hehe), so this is more an opinion rather than a vote.

technomancy commented 2 years ago

A little further research around accessibility for older machines: I tried all three alternatives with noscript enabled.

While it's disappointing that codeberg has this bug around issue closing, I don't see it as a deal-killer, because the scripts on codeberg do not slow the whole site to a crawl the way they do on gitlab. Using codeberg on a code 2 duo laptop from 2008 there is no noticeable speed penalty for leaving scripting enabled. It is still slower than sourcehut, but the difference is only barely noticeable.

My view on this is that codeberg is a compromise; asking contributors to give up github is already asking a lot, and to ask at the same time to give up the pull request flow for the patch-driven contribution flow (which I personally find superior) would probably result in some contributors just giving up and not bothering to contribute.

The other big difference between the sites is one of governance and finance.

winks commented 2 years ago

slightly related, what about the projects in https://github.com/leiningen/ - just asking because of namespacing, should we reserve an "org name" there? do they have that?

winks commented 2 years ago

Re: the bylaws for a German eV like codeberg is: afaik as a member you have a good chance of getting to see the finances anyway and you probably can demand to see them if not. Then again I'm not sure how many expenses they really have or if it's basically easily enough to get hosting...

technomancy commented 2 years ago

slightly related, what about the projects in https://github.com/leiningen

Honestly it was never clear to me why downstream packaging got added to the organization for these packagers when every other package manager stores it separately. I don't think these should be under the leiningen org since it gives an appearance of first-party support which is not realistic.

On the other hand, moving Leiningen's main repository to an organization instead of having it directly under my username is a good idea; we never bothered in the past because of the hassle, but now that we're moving it anyway we might as well. Codeberg and Gitlab support this, but Sourcehut does not. This is not about grouping repositories together so much as it is about reducing the bus factor and emphasizing the community over the original creator.

I've created the repo under the leiningen org on codeberg, so if we go forward with codeberg (which seems pretty likely at this point) then we will probably use this one: https://codeberg.org/leiningen/leiningen

winks commented 2 years ago

As discussed on IRC we will make https://github.com/leiningen/leiningen-sdkman and https://github.com/leiningen/leiningen-chocolatey "unofficial" and I will keep maintaining them in a different namespace, seeing as I've been the only main contributor there in years.

For some history:

technomancy commented 2 years ago

Thanks; just wanted to repeat that I appreciate the work you've done maintaining those, and my desire to have them outside the org doesn't reflect on the quality of the packaging or the value of the work you've done!

technomancy commented 2 years ago

I've updated all the links I could in 3379520. There's still some work remaining upon release to point the bin script and uberjar links to new locations, and I haven't touched the wiki yet.

I also want to take some of the money that nubank has been sponsoring me with and put it towards a membership on Codeberg to help ensure longetivity but since my bank is in the US instead of Europe that's somewhat complicated.

But the move can be considered accomplished.

technomancy commented 2 years ago

Wow, ok so the wiki was surprisingly easy to move: https://codeberg.org/leiningen/leiningen/wiki/Plugins

I'll close this out since the remaining code changes don't really make sense to do until the release.