You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+52-53Lines changed: 52 additions & 53 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,13 +4,14 @@ We would love for you to contribute to Nest and help make it even better than it
4
4
today! As a contributor, here are the guidelines we would like you to follow:
5
5
6
6
<!--* [Code of Conduct](#coc)-->
7
-
*[Question or Problem?](#question)
8
-
*[Issues and Bugs](#issue)
9
-
*[Feature Requests](#feature)
10
-
*[Submission Guidelines](#submit)
11
-
*[Development Setup](#development)
12
-
*[Coding Rules](#rules)
13
-
*[Commit Message Guidelines](#commit)
7
+
8
+
-[Question or Problem?](#question)
9
+
-[Issues and Bugs](#issue)
10
+
-[Feature Requests](#feature)
11
+
-[Submission Guidelines](#submit)
12
+
-[Development Setup](#development)
13
+
-[Coding Rules](#rules)
14
+
-[Commit Message Guidelines](#commit)
14
15
<!-- - [Signing the CLA](#cla) -->
15
16
16
17
<!-- ## <a name="coc"></a> Code of Conduct
@@ -24,8 +25,8 @@ Stack Overflow is a much better place to ask questions since:
24
25
25
26
<!-- - there are thousands of people willing to help on Stack Overflow [maybe one day] -->
26
27
27
-
* questions and answers stay available for public viewing so your question / answer might help someone else
28
-
* Stack Overflow's voting system assures that the best answers are prominently visible.
28
+
- questions and answers stay available for public viewing so your question / answer might help someone else
29
+
- Stack Overflow's voting system assures that the best answers are prominently visible.
29
30
30
31
To save your and our time, we will systematically close all issues that are requests for general support and redirect people to Stack Overflow.
31
32
@@ -44,10 +45,10 @@ Repository. If you would like to _implement_ a new feature, please submit an iss
44
45
a proposal for your work first, to be sure that we can use it.
45
46
Please consider what kind of change it is:
46
47
47
-
* For a **Major Feature**, first open an issue and outline your proposal so that it can be
48
+
- For a **Major Feature**, first open an issue and outline your proposal so that it can be
48
49
discussed. This will also allow us to better coordinate our efforts, prevent duplication of work,
49
50
and help you to craft the change so that it is successfully accepted into the project. For your issue name, please prefix your proposal with `[discussion]`, for example "[discussion]: your feature idea".
50
-
***Small Features** can be crafted and directly [submitted as a Pull Request](#submit-pr).
51
+
-**Small Features** can be crafted and directly [submitted as a Pull Request](#submit-pr).
51
52
52
53
## <aname="submit"></a> Submission Guidelines
53
54
@@ -57,9 +58,9 @@ Before you submit an issue, please search the issue tracker, maybe an issue for
57
58
58
59
We want to fix all the issues as soon as possible, but before fixing a bug we need to reproduce and confirm it. In order to reproduce bugs we will systematically ask you to provide a minimal reproduction scenario using a repository or [Gist](https://gist.github.com/). Having a live, reproducible scenario gives us wealth of important information without going back & forth to you with additional questions like:
59
60
60
-
* version of NestJS used
61
-
* 3rd-party libraries and their versions
62
-
* and most importantly - a use-case that fails
61
+
- version of NestJS used
62
+
- 3rd-party libraries and their versions
63
+
- and most importantly - a use-case that fails
63
64
64
65
<!--
65
66
// TODO we need to create a playground, similar to plunkr
@@ -114,11 +115,11 @@ We cannot accept code without this.
114
115
115
116
1. In GitHub, send a pull request to `nestjs:master`.
116
117
117
-
* If we suggest changes then:
118
+
- If we suggest changes then:
118
119
119
-
* Make the required updates.
120
-
* Re-run the Nest test suites to ensure tests are still passing.
121
-
* Rebase your branch and force push to your GitHub repository (this will update your Pull Request):
120
+
- Make the required updates.
121
+
- Re-run the Nest test suites to ensure tests are still passing.
122
+
- Rebase your branch and force push to your GitHub repository (this will update your Pull Request):
122
123
123
124
```shell
124
125
git rebase master -i
@@ -132,25 +133,25 @@ That's it! Thank you for your contribution!
132
133
After your pull request is merged, you can safely delete your branch and pull the changes
133
134
from the main (upstream) repository:
134
135
135
-
* Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:
136
+
- Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:
136
137
137
138
```shell
138
139
git push origin --delete my-fix-branch
139
140
```
140
141
141
-
* Check out the master branch:
142
+
- Check out the master branch:
142
143
143
144
```shell
144
145
git checkout master -f
145
146
```
146
147
147
-
* Delete the local branch:
148
+
- Delete the local branch:
148
149
149
150
```shell
150
151
git branch -D my-fix-branch
151
152
```
152
153
153
-
* Update your master with the latest upstream version:
154
+
- Update your master with the latest upstream version:
154
155
155
156
```shell
156
157
git pull --ff upstream master
@@ -177,13 +178,8 @@ That will compile fresh packages and afterward, move them to all `sample` direct
177
178
### <a name="common-scripts"></a>Commonly used NPM scripts
178
179
179
180
```bash
180
-
# build all packages and put them near to their source .ts files
181
-
$ npm run build
182
-
183
181
# build all packages and move to "sample" and "integration" directories
184
-
# if cross-packages breaking changes were performed you may face irrelevant errors
185
-
# in order to verify the build, you can run this command again then
186
-
$ npm run build:dev
182
+
$ npm run build
187
183
188
184
# run the full unit tests suite
189
185
$ npm run test
@@ -194,6 +190,9 @@ $ sh scripts/run-integration.sh
194
190
195
191
# run linter
196
192
$ npm run lint
193
+
194
+
# build all packages and put them near to their source .ts files
195
+
$ npm run build:prod
197
196
```
198
197
199
198
## <a name="rules"></a> Coding Rules
@@ -204,8 +203,8 @@ To ensure consistency throughout the source code, keep these rules in mind as yo
204
203
// We're working on auto-documentation.
205
204
* All public API methods **must be documented**. (Details TBC). -->
206
205
207
-
* All features or bug fixes **must be tested** by one or more specs (unit-tests).
208
-
* We follow [Google's JavaScript Style Guide][js-style-guide], but wrap all code at
206
+
- All features or bug fixes **must be tested** by one or more specs (unit-tests).
207
+
- We follow [Google's JavaScript Style Guide][js-style-guide], but wrap all code at
209
208
**100 characters**. An automated formatter is available (`npm run format`).
@@ -249,44 +248,44 @@ If the commit reverts a previous commit, it should begin with `revert:`, followe
249
248
250
249
Must be one of the following:
251
250
252
-
* **build**: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
253
-
* **ci**: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
254
-
* **docs**: Documentation only changes
255
-
* **feature**: A new feature
256
-
* **bugfix**: A bug fix
257
-
* **perf**: A code change that improves performance
258
-
* **refactor**: A code change that neither fixes a bug nor adds a feature
259
-
* **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
260
-
* **test**: Adding missing tests or correcting existing tests
251
+
- **build**: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
252
+
- **ci**: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
253
+
- **docs**: Documentation only changes
254
+
- **feature**: A new feature
255
+
- **bugfix**: A bug fix
256
+
- **perf**: A code change that improves performance
257
+
- **refactor**: A code change that neither fixes a bug nor adds a feature
258
+
- **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
259
+
- **test**: Adding missing tests or correcting existing tests
261
260
262
261
### Scope
263
262
264
263
The scope should be the name of the npm package affected (as perceived by person reading changelog generated from commit messages.
265
264
266
265
The following is the list of supported scopes:
267
266
268
-
* **common**
269
-
* **core**
270
-
* **sample**
271
-
* **microservices**
272
-
* **testing**
273
-
* **websockets**
267
+
- **common**
268
+
- **core**
269
+
- **sample**
270
+
- **microservices**
271
+
- **testing**
272
+
- **websockets**
274
273
275
274
There are currently a few exceptions to the "use package name" rule:
276
275
277
-
* **packaging**: used for changes that change the npm package layout in all of our packages, e.g. public path changes, package.json changes done to all packages, d.ts file/format changes, changes to bundles, etc.
278
-
* **changelog**: used for updating the release notes in CHANGELOG.md
279
-
* **sample/#**: for the example apps directory, replacing # with the example app number
280
-
* none/empty string: useful for `style`, `test` and `refactor` changes that are done across all packages (e.g. `style: add missing semicolons`)
281
-
<!-- * **aio**: used for docs-app (angular.io) related changes within the /aio directory of the repo -->
276
+
- **packaging**: used for changes that change the npm package layout in all of our packages, e.g. public path changes, package.json changes done to all packages, d.ts file/format changes, changes to bundles, etc.
277
+
- **changelog**: used for updating the release notes in CHANGELOG.md
278
+
- **sample/#**: for the example apps directory, replacing # with the example app number
279
+
- none/empty string: useful for `style`, `test` and `refactor` changes that are done across all packages (e.g. `style: add missing semicolons`)
280
+
<!-- * **aio**: used for docs-app (angular.io) related changes within the /aio directory of the repo -->
282
281
283
282
### Subject
284
283
285
284
The subject contains succinct description of the change:
286
285
287
-
* use the imperative, present tense: "change" not "changed" nor "changes"
288
-
* don't capitalize first letter
289
-
* no dot (.) at the end
286
+
- use the imperative, present tense: "change" not "changed" nor "changes"
<palign="center">A progressive <ahref="http://nodejs.org"target="_blank">Node.js</a> framework for building efficient and scalable server-side applications, heavily inspired by <ahref="https://angular.io"target="blank">Angular</a>.</p>
10
+
<palign="center">A progressive <ahref="http://nodejs.org"target="_blank">Node.js</a> framework for building efficient and scalable server-side applications.</p>
0 commit comments