Skip to content

Commit 2f10eb8

Browse files
authored
Add CONTRIBUTING.md. (#1456)
1 parent 2847a96 commit 2f10eb8

File tree

2 files changed

+18
-18
lines changed

2 files changed

+18
-18
lines changed

CONTRIBUTING.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# How to Contribute Changes
2+
3+
## Contribution Steps:
4+
* [Build and debug the extension](Documentation/Getting%20started.md#build-and-debug-the-cpptools-extension).
5+
* File an [issue](https://github.com/Microsoft/vscode-cpptools/issues) and a [pull request](https://github.com/Microsoft/vscode-cpptools/pulls) with the change and we will review it.
6+
* If the change affects functionality, add a line describing the change to [CHANGELOG.md](Extension/CHANGELOG.md).
7+
* Try and add a test in [test/extension.test.ts](Extension/test/unitTests/extension.test.ts).
8+
* Run tests via opening the [Extension](https://github.com/Microsoft/vscode-cpptools/tree/master/Extension) folder in Visual Studio Code, selecting the `Launch Tests` configuration in the Debug pane, and choosing `Start Debugging`.
9+
10+
## About the Code
11+
* Execution starts in the `activate` method in [main.ts](Extension/src/main.ts).
12+
* `processRuntimeDependencies` handles the downloading and installation of the OS-dependent files. Downloading code exists in [packageManager.ts](Extension/src/packageManager.ts).
13+
* `downloadCpptoolsJsonPkg` handles the `cpptools.json`, which can be used to enable changes to occur mid-update, such as turning the `intelliSenseEngine` to `"Default"` for a certain percentage of users.
14+
* The debugger code is in the [Debugger](https://github.com/Microsoft/vscode-cpptools/tree/master/Extension/src/Debugger) folder.
15+
* [LanguageServer/client.ts](Extension/src/LanguageServer/client.ts) handles various language server functionality.
16+
* [LanguageServer/configurations.ts](Extension/src/LanguageServer/configurations.ts) handles functionality related to `c_cpp_properties.json`.
17+
* [telemetry.ts](Extension/src/telemetry.ts): Telemetry data gets sent to either `logLanguageServerEvent` or `logDebuggerEvent`.
18+
* The Tag Parser (symbol database) doesn't automatically expand macros, so the [cpp.hint](Extension/cpp.hint) file contains definitions of macros that should be expanded in order for symbols to be parsed correctly.

Documentation/LanguageServer/How to Contribute Changes.md

Lines changed: 0 additions & 18 deletions
This file was deleted.

0 commit comments

Comments
 (0)