- Feel free to work on any issues that are not assigned out to anyone. If you want to work on an issue, leave a comment on it and it will be assigned to you so that multiple people are not working on it.
- If you have an idea that does not fall under a current issue, open a new one so that we can talk it through. It will likely be approved and we can work on building out this plugin together.
- Most changes should be branched directly from master. The exceptions are limited to breaking changes.
- Breaking changes should branch off of and pull requests should target "dev".
Dev is kept in sync with master, but breaking changes go here first to limit the frequency with which library consumers should expect a breaking change. New features are fine in master, we just want to avoid alienating our users.
We use semantic release, as well as commitlint.
Commits should follow the specification laid out in the Angular contributor guidelines.
We support the following types:
- feat
- fix
- test
- docs
- chore
Only commits with the feat / fix type will show up in the release notes.
We support the following scopes:
// pkg specific improvements
- dotnet
- core
- typescript
// misc
- ci // improvements to the CI / CD pipelines.
- repo // improvements to the general repository.
The recommended way to validate your changes is to deploy the plugin locally to a fresh nx workspace.
- A sandbox workspace can be generated via
yarn sandbox
- This script will build/publish the plugin to a sandbox workspace (./tmp/sandbox)
- Verdaccio is leveraged to start a locally running instance of npm (http://localhost:4872)
- The server will close when the script is stopped
- use
nx generate @nx-dotnet/core:[generator]
to validate your changes manually
To validate against the affected tests, use nx affected:test