microsoft/vscode-react-native

Public

mirrored from https://github.com/microsoft/vscode-react-nativeAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
fb81ad476e0119d02cca2b9abfa0d295d146f83c

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

.github/CONTRIBUTING.md

50lines · modecode

1## Development setup
2We welcome any quality bugfixes or contributions!
3
4To avoid a conflict, delete the installed extension at `~/.vscode/extensions/vsmobile.vscode-react-native`.
5
6### Windows
7* In `C:/Users/<username>/.vscode/extensions/`, `git clone` this repository
8
9### OS X/Linux
10* `git clone` this repository
11* Run `ln -s <path to repo> ~/.vscode/extensions/vscode-react-native`
12* You could clone it to the extensions directory if you want, but working with hidden folders in OS X can be a pain.
13
14### Then...
15* `cd` to the folder you just cloned
16* Run `npm install -g gulp` and `npm install`
17 * You may see an error if `bufferutil` or `utf-8-validate` fail to build. These native modules required by `ws` are optional and the debug adapter should work fine without them.
18* Run `gulp build`
19
20
21## Debugging
22In VS Code, run the `launch as server` launch config - it will start the adapter as a server listening on port 4712. In your test app launch.json, include this flag at the top level: `"debugServer": "4712"`. Then you'll be able to debug the adapter in the first instance of VS Code, in its original TypeScript, using sourcemaps.
23
24## Testing
25There is a set of mocha tests for the debug adapter which can be run with `npm test`, and a set of mocha tests for the other functionality run as part of the `test` launch config. Also run `gulp tslint` to check your code against our tslint rules.
26
27See the project under test/testProjcet/ for a sample project that should build and compile, allow debugging of plugins and merges, and enable intellisense for plugins.
28
29## Legal
30
31You will need to complete a Contributor License Agreement (CLA). Briefly, this agreement testifies that you are granting us permission to use the submitted change according to the terms of the project's license, and that the work being submitted is under appropriate copyright.
32
33Please submit a Contributor License Agreement (CLA) before submitting a pull request. You may visit https://cla.microsoft.com to sign digitally. Alternatively, download the agreement ([Microsoft Contribution License Agreement.docx](https://www.codeplex.com/Download?ProjectName=typescript&DownloadId=822190) or [Microsoft Contribution License Agreement.pdf](https://www.codeplex.com/Download?ProjectName=typescript&DownloadId=921298)), sign, scan, and email it back to <cla@microsoft.com>. Be sure to include your github user name along with the agreement. Once we have received the signed CLA, we'll review the request.
34
35## Sending PR
36
37Your pull request should:
38
39* Include a clear description of the change
40* Be a child commit of a reasonably recent commit in the **master** branch
41 * Requests need not be a single commit, but should be a linear sequence of commits (i.e. no merge commits in your PR)
42* It is desirable, but not necessary, for the tests to pass at each commit
43* Have clear commit messages
44 * e.g. "Refactor feature", "Fix issue", "Add tests for issue"
45* Include adequate tests
46 * At least one test should fail in the absence of your non-test code changes. If your PR does not match this criteria, please specify why
47 * Tests should include reasonable permutations of the target fix/change
48 * Include baseline changes with your change
49* Ensure there are no linting issues ("gulp tslint")
50* To avoid line ending issues, set `autocrlf = input` and `whitespace = cr-at-eol` in your git configuration
51