-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Description
It's definitely nice to have this repo, but that doesn't mean we no longer need https://referencesource.microsoft.com/! Their existence is not mutually exclusive, as they serve quite different purposes.
First of all, as many folks have already pointed out, the code provided in this repository is incomplete, and some pretty important components (that have been available for inspection via Reference Source since forever) are missing.
Secondly, and arguably more importantly, Reference Source was designed for exploring the internals of the .NET Framework, so it was heavily optimized for searching specific symbols, their definitions, and their usage across the entire codebase in mere milliseconds. GitHub simply doesn't provide that functionality in any meaningful way.
For example, I'm currently working on a cross-framework .NET Standard 2.0 library that heavily relies on reflection. To make it compatible with .NET Framework, .NET Core, .NET, Mono (WineHQ), and Mono (Microsoft), I had to dig through a lot of source code related to all these platforms. The only thing that made this even remotely bearable was Reference Source. It allowed me to quickly find what I needed in the .NET Framework, compare it with the modern .NET (Core) codebase, and then work backwards from Microsoft's Mono to WineHQ's Mono implementation details. And now it's gone, making it nearly impossible to search for specific bits of code on GitHub. Tasks that used to take minutes or even seconds now take literal hours.
I honestly don't understand why Microsoft is eager to invest in costly "AI" infrastructure, yet when it comes to maintaining a small but incredibly useful web utility - oh boy, cuts and sacrifices must be made!
Anyways, until GitHub's "search for symbol" actually means that rather than "vaguely search for similar substrings across all available text in the repo and drop the results after N entries, so the user can't tell whether what they're looking for doesn't exist at all or just wasn't shown" - please, do keep Reference Source around. Thanks.