Skip to content

New Contributors Guide

Tanay Parikh edited this page Nov 30, 2022 · 8 revisions

Hello! Thank you for helping we really appreciate it! The infrastructure around large projects can be intimidating; for this repo here's what I had to learn to work smoothly:

Instructions for getting up and running with this repository

Opening a Project

Open VS by running .\startvs.cmd from a solution folder. This ensures that everything is configured correctly.

Writing Code

For small changes (typos, open bugs) just write and submit a PR. If there's a GitHub issue, please comment "hey I'm working on this". For anything but simple typos, code review takes multiple days and rounds of feedback. This is good and normal.

For larger changes, please open a conversation about what you want to build, and we will help you work through potential issues before you start coding.

(more details here)

(specific code patterns here)

If Unit Tests Won't Run

There's dlls locked by a zombie process. Use Task Manager (or Process Explorer) to find and kill it. Probably named "dotnet.exe".

If Stuff Is Generally Broken

Close VS, from the repo home re-run:

. .\activate.ps1
.\restore.cmd

If this doesn't work, first commit anything you want to keep, then

git clean -xdf -e .dotnet
. .\activate.ps1
.\build.cmd /t:Noop -norestore

If "Code Check" Has Failed on Your PR

Probably need to regen refs. Navigate to your solution directory and run

dotnet msbuild /t:GenerateReferenceSource