Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
New contributor Docs
Motivation, Goals, Rules
We want to create better new-contributor docs, to encourage new contributors in CoreFX repo and to make it easier for existing contributors to find the right information.
To iterate really fast, CoreFX Wiki is now writable for everyone. It allows fast collaboration without blocking on PR code reviews, etc. Feel free to improve the docs with your notes, gotchas, ideas, etc. For even easier collaboration:
When the docs are finalized, we will move them back to CoreFX repo under PR model.
Feel free to create sub-pages as necessary, please try to link/make them reachable from this 'main' page, so that we can eventually just "copy-paste" the content into CoreFX README.md, without larger restructuring/redesign of the navigation layout. It is fine to leave TODOs and intermittent notes/ideas in all pages for now - just follow the structure you see.
Below is a skeleton to start filling out content.
NEW CONTRIBUTOR INFORMATION
Main page section content
Note: Targeted at people just filing bugs - what to expect - e.g. API process, where to file, how to file, etc.
TODO: See ideas in Issues
- Per-machine setup: Machine setup and Fork and clone repo
- Build and run tests
- git commands and workflow - for newbies
- Pick issue
- Coding guidelines
- Testing change - TODO
- Creating a Pull Request
- TODO - see ideas in Contributions
Raw Notes and TODOs
Random useful stuff
- How to debug (VS, VS Code, windbg)
- Mixed mode
- Linux - using SOS
- How to investigate perf
- How trace Runtime event
- On Windows - PerfView, on Linux
- How/when to run with GCStress (set environment variable COMPlus_GCStress=3 on retail build)
- How to change .NET Core docs
- SharpLab: https://sharplab.io/
- How to port .NET Framework app to .NET Core:
- Developing .NET Core apps: https://blogs.msdn.microsoft.com/mvpawardprogram/2016/07/19/key-steps-in-developing-net-core-applications/
- Using reference source from here is OK: https://github.com/Microsoft/referencesource (same license)
- Richard's explanation: https://github.com/dotnet/coreclr/issues/9301#issuecomment-277534312
- Useful tips and tricks, tools, education material - https://github.com/quozd/awesome-dotnet (we might bring some links to CoreFX docs)