Skip to content

This repository should not and cannot be a replacement for referencesource #225

@Kira-NT

Description

@Kira-NT

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions