They slowly started locking down the platform for people without accounts and it has been really annoying to use the website since. First it was not possible to search for code, then even searching for issues got more and more difficult with it randomly failing, and now it’s gotten to the point where I can’t search for a fucking project anymore!
Github’s search is becoming as bad as reddit’s, where if you want to find anything, a secondary service like SourceGraph, GrepApp, or even a dumb search engine is better. Sometimes those haven’t indexed what I need (especially code search), so I have to download the bloody tarball and rg
for whatever the fuck it is I was looking for.
Sometimes it will also block the VPN I’m using, so I have to proxy to a non-VPNed machine. The world could do without these unnecessary roadblocks.
What also grinds my gears is requiring an account to contribute. There is no way to send in a patch, raise an issue, or anything without an account there, so by if a project being on github, you have no choice but to give Microsoft your data to participate in opensource. Don’t get me wrong, mailing-lists are filth, but and I’d rather claw my eyes out than participate in any project demanding their use, but Microsoft being the “lesser evil” is not a good look.
Please, for the love of opensource, get your project off of github, please. It’s a monopoly at this point and doing microsoft things. This isn’t the end and they’ll probably do more stuff to see how far they can push it. We’ll all be the boiled frogs.
Yes, I know they have a CI and some other features, but if all you’re doing is hosting your code, please consider an alternative.
Possible alternatives in alphabetic order:
- Codeberg (could have federation in the future)
- Gitlab (has CI)
OneDev (no git SSH clone but feature-rich)not an instance for the public- Radicle (no CI, but federated)
- Sourcehut (minimalist, but fast as fuck)
or maybe others will suggest more.
I support moving off GH but
There is no way to send in a patch, raise an issue, or anything without an account there
Currently this is the case everywhere? With the exception of projects that take email patches, currently all the options are centralised/not federated, and even if e.g. Forgejo finished adding ActivityPub integration you’d still need an account on some Forgejo instance to contribute. Same for email patches; they still require having an email address. If it’s specifically about giving MS your data, sure, although iirc the only data they actually require is an email address. You can use duckduckgo’s duck addresses to get one that’s relatively anonymous (i.e. can be deanonymised by duckduckgo but I doubt anyone’s conspiring that hard to deanonymise a random github user).
Yeah and that makes sense. There’s plenty of examples of open source projects that have had their issue trackers flooded with politics rather than real issues and they have to then spend all their time policing and cleaning that up and that’s using GitHub’s user reg system and basic protections against spam accounts. Without requiring any sort of auth or user reg that would be impossible
If you look at a project on sourcehut while not logged in, you will see instructions on the side how to create a patchset and mail it directly to the maintainer, no account needed.
You still need an email address…. which is functionally an account.
Pretty sure gitlab requires you to enter a CC to make an account as well, which turned me off from submitting a bug report a few weeks or so back
Specifically for the rate limit issue, a lot of nix’s derivations are hosted on GitHub and now and then the rate limit problem comes up when I rebuilds a dev environment.
Nixos.org is kind enough to host gigabytes of cache, but to get a ~40MiB tarball, we need to beg at the door of M$. Path dependency is really a trap.
Yeah, nix is utterly dependent on github and there have been many discussions about it. The majority of the community is very against migrating and refuses investing in anything else.
I remember a project abused github as their CDN, and github shut that down. Can’t remember the name but it was something plant-related (the name). Pods or something. If nix ever scales up massively, github just might rate limit the repo.
I used codeberg and liked it. This is a good reminder to try to stick with it moving forward
I use Codeberg and even paid to be a member, because it goes directly to support the development of forgejo.
I’ve stopped using github because I hate advertising and nags. Probably most people don’t care much about it, but for me github nagging and ‘reminding’ me about copilot is just so off-putting that I immediately want to leave the site. I don’t want my attention stolen like that.
Gitlab just reduced their monthly ci minute cap.
Fucking… Goddammit Gitlab!
I’m really looking forward to Forgejo federation
sounds awesome
I don’t know if they need more funding or contributors or something, but that has been on the roadmap for years now. I think all they can federate now are stars.
But I do hope that it’ll arrive soon. Github needs a federated alternative and gitlab isn’t going to give it to us. Radicle already has federation, but only within its network, so not exactly optimal.
I see projects move over to Gitlab a lot lately, but without porting over the issues. That means a huge amount of history and discussions are lost. If you want to find out why something is the way it is, old issues would be a goldmine. Sometimes they are still up on archived GitHub, but not always.
It’s a shame because how gitlab is basically begging to be bought out and hides a lot of useful features behind subscriptions… I remember when it was originally just a GitHub clone way back when.
I selfhost using forgejo (the same project codeberg is using) and I only clone on github.
This should be a good first step to decentralize.
without these unnecessary roadblocks
But then how will they harvest your data?
For a small project I recently switched to fossil from git. It’s also distributed version control, but includes a bug tracker, wiki, and other stuff as well. It’s minimalist, but hosting yourself is super easy.
Default git over ssh is often enough as well. Combine with any bug tracker and CI you like. You don’t need to use an all in one tool like GitHub.
whats funny is I was working in an azure shop and we got rate limited on api calls that caused all sorts of issues and for modern times it really was not a lot of calls. Much less internal calls from a customer on one of the big three cloud computing providers. Seriously!!! Oh and their support was like. Yeah it will do that.
Can confirm this type of thing. Under the Microsoft umbrella stuff doesn’t get special treatment or exemptions from rate limits.
Instead we make multiple accounts and randomly pick ones to use for various api calls. We waste time fighting with secondary rate limits for them as well as guess how to avoid them.
Ooof its been awhile and honestly just going back and getting details on the issue is something Im generally paid to do but I can say we got the account from our infrastructure folks and it was seperate from what they were using but it actually impacted them moving vms in a batch script. we were just grabbing metric and metadata.
This has been the agreed-upon way to do things within the MS umbrella for a while. Not sure why they won’t just allow for setting a higher rate limit.
Each app registration in a tenant gets their own limits. Most backup platforms for an MS tenant have you register 4-10 apps so it can parallelize the backup load without getting rate limited.
If I have to search something in a repo, I just clone it and use my IDE. GitHub search sucks, but I don’t think it’s possible to have a web experience that is on par with an actual environment an IDE.
VSCode runs on the web and has IDE-grade search functionality
I literally just need dumb search. No regex, no nothing, but just for that you now need an account. Especially on mobile, I’m not going to clone every repo I come across. It’s a hassle already.
If I really do care and dependent on the repo, I’ll clone it. Otherwise I just drop it most of the time or use a third party service. But ever since Microsoft bought github, it’s been really annoying.
I sound like a corporate shill but like, I don’t know if this is due to abuse.
GitHub actions and certain things were free until the crypto bros started abusing it. There are certain challenges that happen at scale.
Yes, I know they have a CI and some other features, but if all you’re doing is hosting your code, please consider an alternative.
Don’t worry, their CI is pure garbage.
That’s not very nice.
To garbage.
I mean, at least in a pinch you can burn some garbage to stay warm. Its going to suck but not as much as actions.
Which service has better CI? Genuine question
Gitlab CI is so far ahead of github actions… The only thing it doesn’t have is a marketplace, but otherwise it’s superior in nearly every aspect.
Thanks for that. I have somehow never used Gitlab myself but I have wondered if CI is always so annoying. GitHub actions are powerful imo, however their documentation is trash and there are many annoyances involved with using them. Typically if I think setting up a new GHA will take an hour, it ends up taking me a day to figure out. Slow, confusing, and poorly designed version of something that could be great. Maybe someday I’ll get to use Gitlab…
They both use YAML, but I find the Gitlab doc to be better. If you don’t want YAML, you can try Dagger.IO which forces you to write code and can be run in any CI. Haven’t used it yet though as it requires a change in thinking that I haven’t managed yet.
selfhosted forgejo, but you have to host it :/
you can use self hosted runners from GitHub though
It’s not the self-hosting part that sucks about github actions 😉
Want to mention that OneDev does support SSH clone. Only that SSH access to code.onedev.io is turned off (code.onedev.io is not a public hosting service, it is set up to develop OneDev itself).
Oh, that’s a pity. So there is no public instance? If not, I’ll just remove it from the list. code.onedev.io is thus a dogfooding instance?