|
| 1 | +# Contributing to OpenAPI.net |
| 2 | + |
| 3 | +OpenAPI.net is a mono-repo containing source code for the following packages: |
| 4 | + |
| 5 | +## Libraries |
| 6 | + |
| 7 | +| Library | NuGet Release | |
| 8 | +|----------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |
| 9 | +| [Microsoft.OpenAPI](./src/Microsoft.OpenAPI/README.md) | [](https://www.nuget.org/packages/Microsoft.OpenAPI/) | |
| 10 | +| [Microsoft.OpenAPI.Readers](./src/Microsoft.OpenAPI.Readers/README.md) | [](https://www.nuget.org/packages/Microsoft.OpenAPI.Readers/) | |
| 11 | +| [Microsoft.OpenAPI.Hidi](./src/Microsoft.OpenAPI.Hidi/README.md) | [](https://www.nuget.org/packages/Microsoft.OpenAPI.Hidi/) | |
| 12 | + |
| 13 | +OpenAPI.net is open to contributions. There are a couple of different recommended paths to get contributions into the released version of this library. |
| 14 | + |
| 15 | +__NOTE__ A signed a contribution license agreement is required for all contributions, and is checked automatically on new pull requests. Please read and sign [the agreement](https://cla.microsoft.com/) before starting any work for this repository. |
| 16 | + |
| 17 | +## File issues |
| 18 | + |
| 19 | +The best way to get started with a contribution is to start a dialog with the owners of this repository. Sometimes features will be under development or out of scope for this SDK and it's best to check before starting work on contribution. Discussions on bugs and potential fixes could point you to the write change to make. |
| 20 | + |
| 21 | +## Submit pull requests for bug fixes and features |
| 22 | + |
| 23 | +Feel free to submit a pull request with a linked issue against the __main__ branch. The main branch will be updated frequently. |
| 24 | +## Commit message format |
| 25 | + |
| 26 | +To support our automated release process, pull requests are required to follow the [Conventional Commit](https://www.conventionalcommits.org/en/v1.0.0/) |
| 27 | +format. |
| 28 | +Each commit message consists of a __header__, an optional __body__ and an optional __footer__. The header is the first line of the commit and |
| 29 | +MUST have a __type__ (see below for a list of types) and a __description__. An optional __scope__ can be added to the header to give extra context. |
| 30 | + |
| 31 | +``` |
| 32 | +<type>[optional scope]: <short description> |
| 33 | +<BLANK LINE> |
| 34 | +<optional body> |
| 35 | +<BLANK LINE> |
| 36 | +<optional footer(s)> |
| 37 | +``` |
| 38 | + |
| 39 | +The recommended commit types used are: |
| 40 | + |
| 41 | +- __feat__ for feature updates (increments the _minor_ version) |
| 42 | +- __fix__ for bug fixes (increments the _patch_ version) |
| 43 | +- __perf__ for performance related changes e.g. optimizing an algorithm |
| 44 | +- __refactor__ for code refactoring changes |
| 45 | +- __test__ for test suite updates e.g. adding a test or fixing a test |
| 46 | +- __style__ for changes that don't affect the meaning of code. e.g. formatting changes |
| 47 | +- __docs__ for documentation updates e.g. ReadMe update or code documentation updates |
| 48 | +- __build__ for build system changes (gradle updates, external dependency updates) |
| 49 | +- __ci__ for CI configuration file changes e.g. updating a pipeline |
| 50 | +- __chore__ for miscallaneous non-sdk changesin the repo e.g. removing an unused file |
| 51 | + |
| 52 | +Adding an exclamation mark after the commit type (`feat!`) or footer with the prefix __BREAKING CHANGE:__ will cause an increment of the _major_ version. |
0 commit comments