The other side is, that existing users will get pissed at github, because they can't even search anymore without logging in, and sometimes that's a pain (not their pc, public pc, incognito tab, the time needed to do the 2fa, etc.).
Github can still keep the cheap, fast basic search for users not logged in, but they didn't.
1: You have to maintain two full independent search and indexing implementations
2: User confusion. Why are the search results different depending on if I'm logged in or logged out?
I mean, the person opening the issue escalated this into socioeconomic issues just because they don't know how to use grep... What else is there to say?
I suppose one could try to see the value in the argument and engage in good faith discussion but it's easier to flippantly dismiss people like this, I imagine.
There wasn't enough thought behind the issue, other than being outraged at their unsatisfied entitlement
Slightly more than your response, at any rate
Trying to think this through, my own best guess for what is going on is that there is some amount of traffic coming from bots/scripts and github would like to have all queries associated with an account so that they can block accounts? I'm not sure if this makes sense, but I think it's a reasonable possibility.
now under new ownership they closed search and "pray they don't alter the terms further"
ps: also everyone here guessing wrong. Microsoft is an advertising company. requiring you profile for a service is self explanatory.
Seems to be around 5pc revenue from a quick search.
Not that I want to defend Microsoft.
That's an assumption which github may not agree with.
They justify it with "engagement" and it kinda works to a point, since if you don't get pissed with the broken search and register an account, you're not considered a "user", and if you try to use the tool but don't want to register you're not "engaging" with it, I guess... But it makes the initial contact that much more miserable.
This makes no sense. The number of people who use GitHub code search but don’t already have a GitHub account is surely negligible
logged in user ad impression is 8 to 12 usd. anonymous user is .01cent per thousands.
by putting login, they can throttle or block it entirely.
The end result is that it's no longer possible to participate in "GitHub hosted open source" without actually being a member of GitHub.
Since those are "fixed costs" per repo rather than per search, they'd now be much more expensive per search if they were only used by logged-out users.
Pure outside speculation of course.
In other words, GitHub is no longer suitable to host open source repositories because of all the closed "extras" it adds on top.
They're shady AF, but some features require an account not because they're moat water but for some other reason.
It's clear the "extinguish" phase of Microsoft's open source venture has started. There're plenty of very good alternatives, it's time to move on.
http://vger.kernel.org/vger-lists.html
Unless you count your ISP of course.
probably for the best.
Are these now also no longer "open source"?
No.
None of this is somehow a core requirement of "open source".
An account has always been required for active participation, e.g. committing directly to any repo, submitting a PR, opening an issue, etc.
> That's a lot to give for "I want to browse a piece of code someone made for free".
You can still do this. All repositories are accessible without signing in.
I'm not saying it's a deal that makes sense for everyone. But it's certainly a barter trade and is well within their prerogative to offer.
This is just degrading in to conspiratorial FUD.
Or to put it another way: It's a surprise you need a Github account to use ("participate in") Github?
And also, what is stopping the scrapers from creating a bunch of accounts to scrape with, and rotating them once they get banned?
They already did.
> . . . then I won’t like that.
There is no universe in the multiverse where Microsoft or one of its subsidiaries gives a single flying fuck. Something about those who forget history being doomed to repeat it . . . .
https://www.reddit.com/r/ChatGPT/comments/10j531u/i_made_cha...
those accounts still need to be created, which is hard to automate
also, now GH can just ban more easily detectable accounts that scrape, vs anonymous visitors
While a bad actor can certainly scrape/clone the same data... Given repos with thousands of files... Scanning by scraping vs searching vs cloning.... Search is certainly the cheapest for the attacker while the most expensive for GitHub
In fact, that's exactly how it was until in June GitHub started requiring login for searches even in just a single repo.
> Give me repos with project.toml and a flake.nix at the root
The interface supports it, but searches come back empty. I end up leaving scripts running while I sleep which walk search results and narrow them by just checking to see if the files are there.
If you're out there Microsoft, please fix your search so I can stop being a bad citizen.
I suspect the change has more to do with security concerns (and having an audit trail) than performance.
I think the solution to hard coded credentials isn’t making search harder (security through obscurity == bad) but the other things GitHub is doing to detect and mitigate hard coded credentials.
Search is still possible using google and other methods, so any theoretical gains from forcing login are dangerous to count on as vulnerable projects are still vulnerable.
If anything, I think the solution to projects with hard coded credentials are to make the credentials easier to find and exploit so they fixed more quickly after being created. The most dangerous are ones they are hard to find so someone uses them for long periods of time without detection.
Some high-profile cases where credentials were leaked on public GitHub: Uber in 2014 and 2021 [1, 2] and Twitch in 2021.
> Search is still possible using google and other methods
Yes, you can search with Google or other sources. But the thing is, pretty much only GitHub has easy access to all the code present there, readily available to search within minutes of pushing.
You could try mirroring GitHub yourself, but you'd need enormous disk space and bandwidth, and would quickly hit rate limits. You also wouldn't be able to do fast full regex search like you can with GitHub's search, as you don't have their search infrastructure.
Hackers are aware of this and do make use of GitHub's search to identify possible leaked credentials. I recently experimented with uploading a dummy AWS credential pair to a public Git repo, and saw that numerous IPs started trying those credentials less than 5 minutes after I pushed.
> any theoretical gains from forcing login are dangerous to count on as vulnerable projects are still vulnerable
Indeed, requiring login is not going to _solve_ the problem. But it could lessen the impact of leaked credentials at large scale, by making it more difficult for automated systems to harvest them.
Perhaps more significantly, requiring login could give better audit trails in incidence response situations, as the logs would indicate which accounts were searching for secrets.
> I think the solution to projects with hard coded credentials are to make the credentials easier to find and exploit so they fixed more quickly after being created
Yes, this can help! There are several other companies that specialize in secret detection. I've also written Nosey Parker, a fast regex-based detection tool that has higher-precision rules than similar tools [4]. GitHub also has its own offering in Advanced Security to address this problem.
[1] https://www.reuters.com/article/uk-uber-tech-lyft-hacking-ex... [2] https://www.securonix.com/blog/securonix-threat-research-ube... [3] https://news.ycombinator.com/item?id=28770590 [4] https://github.com/praetorian-inc/noseyparker
Disclosure: I work at Google.
If there is a 3rd explanation, I'd love to hear it.
They explicitly said that they "had" to require being logged in, so, yeah: https://github.com/orgs/community/discussions/77046#discussi... . Although they do assure us, however, that they're totally sorry for the inconvenience.
So are expected to believe that a hostile user who has zillion of ip addresses (to get around the rate limits) won't also be able to make a handful of accounts?
My guess is that the trade-off here is genuinely a question of if they spend 3-4x (I'm guessing, but I think this is likely a low-ball estimate) on their search infrastructure, v.s. having people angry at them for requiring login to use the feature.
I actually built my own code search tool for use with GitHub repos, but I've mostly stopped using that because the new GitHub code search is so useful by default: https://simonwillison.net/2020/Nov/28/datasette-ripgrep/