Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 12 additions & 1 deletion .github/ISSUE_TEMPLATE/1-bug.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,18 @@ labels: bug
assignees: ''
---

<!-- If you like this project, please ⭐ star it https://github.com/omni-us/jsonargparse/ -->
<!--
Thank you very much for contributing! If you enjoy this project, please consider
giving it a ⭐ star on [GitHub](https://github.com/omni-us/jsonargparse/) or
sponsor it via [GitHub Sponsors](https://github.com/sponsors/mauvilsa). Even the
smallest donation is greatly appreciated and helps support the project.
-->

<!--
Note: If you already understand the bug and know how to resolve it, please
proceed to create a pull request directly. This helps avoid having a redundant
issue.
-->

## 🐛 Bug report

Expand Down
9 changes: 7 additions & 2 deletions .github/ISSUE_TEMPLATE/2-regression.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,16 @@ labels: bug
assignees: ''
---

<!-- If you like this project, please ⭐ star it https://github.com/omni-us/jsonargparse/ -->
<!--
Thank you very much for contributing! If you enjoy this project, please consider
giving it a ⭐ star on [GitHub](https://github.com/omni-us/jsonargparse/) or
sponsor it via [GitHub Sponsors](https://github.com/sponsors/mauvilsa). Even the
smallest donation is greatly appreciated and helps support the project.
-->

## 🕰️ Regression report

<!-- A clear and concise description of the regression. -->
<!-- Here write a clear and concise description of the regression. -->

### To reproduce

Expand Down
17 changes: 12 additions & 5 deletions .github/ISSUE_TEMPLATE/3-documentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,18 @@ labels: documentation
assignees: ''
---

<!-- If you like this project, please ⭐ star it https://github.com/omni-us/jsonargparse/ -->

## 📚 Documentation improvement
<!--
Thank you very much for contributing! If you enjoy this project, please consider
giving it a ⭐ star on [GitHub](https://github.com/omni-us/jsonargparse/) or
sponsor it via [GitHub Sponsors](https://github.com/sponsors/mauvilsa). Even the
smallest donation is greatly appreciated and helps support the project.
-->

<!--
For simple improvements and typo fixes, please create a pull request without a
linked issue. Otherwise, describe here your proposal.
Note: For minor improvements or corrections, such as fixing typos, feel free to
submit a pull request directly without opening a related issue.
-->

## 📚 Documentation improvement

<!-- Here describe your proposal. -->
14 changes: 12 additions & 2 deletions .github/ISSUE_TEMPLATE/4-enhancement.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,21 @@ labels: enhancement
assignees: ''
---

<!-- If you like this project, please ⭐ star it https://github.com/omni-us/jsonargparse/ -->
<!--
Thank you very much for contributing! If you enjoy this project, please consider
giving it a ⭐ star on [GitHub](https://github.com/omni-us/jsonargparse/) or
sponsor it via [GitHub Sponsors](https://github.com/sponsors/mauvilsa). Even the
smallest donation is greatly appreciated and helps support the project.
-->

<!--
Note: If your proposal is better explained through actual code changes, feel
free to create a pull request directly instead of opening an issue.
-->

## 🚀 Feature request

<!-- A clear and concise description of the feature proposal. -->
<!-- Here write a clear and concise description of the feature proposal. -->

### Motivation

Expand Down
9 changes: 7 additions & 2 deletions .github/ISSUE_TEMPLATE/5-refactor.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,13 @@ labels: refactor
assignees: ''
---

<!-- If you like this project, please ⭐ star it https://github.com/omni-us/jsonargparse/ -->
<!--
Thank you very much for contributing! If you enjoy this project, please consider
giving it a ⭐ star on [GitHub](https://github.com/omni-us/jsonargparse/) or
sponsor it via [GitHub Sponsors](https://github.com/sponsors/mauvilsa). Even the
smallest donation is greatly appreciated and helps support the project.
-->

## 🔧 Code refactor

<!-- A clear and concise description of the code refactor. -->
<!-- Here write a clear and concise description of the proposed code refactor. -->
9 changes: 8 additions & 1 deletion .github/ISSUE_TEMPLATE/6-other.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,11 @@ labels: ''
assignees: ''
---

<!-- If you like this project, please ⭐ star it https://github.com/omni-us/jsonargparse/ -->
<!--
Thank you very much for contributing! If you enjoy this project, please consider
giving it a ⭐ star on [GitHub](https://github.com/omni-us/jsonargparse/) or
sponsor it via [GitHub Sponsors](https://github.com/sponsors/mauvilsa). Even the
smallest donation is greatly appreciated and helps support the project.
-->

<!-- Here describe your issue. -->
18 changes: 14 additions & 4 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,23 @@
<!--
Thank you very much for contributing! If you like this project, please ⭐ star it
https://github.com/omni-us/jsonargparse/
Thank you very much for contributing! If you enjoy this project, please consider
giving it a ⭐ star on [GitHub](https://github.com/omni-us/jsonargparse/) or
sponsor it via [GitHub Sponsors](https://github.com/sponsors/mauvilsa). Even the
smallest donation is greatly appreciated and helps support the project.
-->

<!--
Note: it is fine to create a pull request without the need to have a
corresponding issue. In fact, if the issue would describe essentially the same
as the pull request, please don't create an issue to avoid duplication.
-->

## What does this PR do?

<!--
Concisely describe what this pull request does. If available, include links to
issues web pages where the need for this change has been motivated.
issues web pages where the need for this change has been motivated. If you
opted for creating a pull request without an issue, still have a look at the
issue templates to include more information depending on the type.
-->

## Before submitting
Expand All @@ -23,4 +33,4 @@ task is not relevant or leave empty when in doubt.
- [ ] Did you write **unit tests** such that there is 100% coverage on related code? (required for bug fixes and new features)
- [ ] Did you verify that new and existing **tests pass locally**?
- [ ] Did you make sure that all changes preserve **backward compatibility**?
- [ ] Did you update **the CHANGELOG** with the pull request link? (not for typos, docs, test updates, or minor internal changes/refactors)
- [ ] Did you update **the CHANGELOG** including a pull request link? (not for typos, docs, test updates, or minor internal changes/refactors)
41 changes: 27 additions & 14 deletions CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,15 @@ people to help and contribute, among them:
- Create `pull requests <https://github.com/omni-us/jsonargparse/pulls>`__ with
documentation improvements, bug fixes or new features.

.. note::

While creating an issue before submitting a pull request is not mandatory,
it might be helpful. Issues allow for discussion and feedback before
significant development effort is invested. However, in some cases, code
changes can better illustrate a proposal, making it more effective to submit
a pull request directly. In such cases please avoid opening a largely
redundant issue.

Development environment
-----------------------

Expand Down Expand Up @@ -49,24 +58,27 @@ The crucial step is installing the requirements which would be done by running:
pre-commit
----------

Please also install the `pre-commit <https://pre-commit.com/>`__ git hook
scripts so that unit tests and code checks are automatically run locally. This
is done as follows:
Please also install the `pre-commit <https://pre-commit.com/>`__ git hooks so
that unit tests and code checks are automatically run locally. This is done as
follows:

.. code-block:: bash

pre-commit install

.. note::

``.pre-commit-config.yaml`` is configured to run the hooks using python
3.12. Thus, you need to have python 3.12 installed for pre-commit to work.
``.pre-commit-config.yaml`` is configured to run the hooks using Python
3.12. Ensure you have Python 3.12 installed and available in your
environment for ``pre-commit`` to function correctly. For development, other
Python versions will work, but for convenience, Python 3.12 can also be
used.

The ``pre-push`` stage runs several hooks (tests, doctests, mypy, coverage) that
take some time. These hooks are intended to inform developers of issues that
must be resolved before any pull request can be considered for merging. If you
wish to push without running these hooks, use the command ``git push
--no-verify``.
The ``pre-push`` stage runs several hooks, including tests, doctests, mypy, and
coverage. These hooks are designed to inform developers of issues that must be
resolved before a pull request can be merged. Note that these hooks may take
some time to complete. If you wish to push without running these hooks, use the
command ``git push --no-verify``.

Formatting of the code is done automatically by pre-commit. If some pre-commit
hooks fail and you decide to skip them, the formatting will be automatically
Expand All @@ -87,7 +99,7 @@ browser.
Tests
-----

Running the unit tests can be done either using using `pytest
Running the unit tests can be done either using `pytest
<https://docs.pytest.org/>`__ or `tox
<https://tox.readthedocs.io/en/stable/>`__. The tests are also installed with
the package, thus can be run in a production system. Also pre-commit runs some
Expand Down Expand Up @@ -150,9 +162,10 @@ example:
^^^^^
-

If no such section exists, just add it. Have a look at previous releases to
decide under which subsection the new entry should go. If you are unsure, ask in
the pull request.
If no such section exists, just add it. New sections should include ``-??`` in
the date to illustrate that the release date is not known yet. Have a look at
previous releases to decide under which subsection the new entry should go. If
you are unsure, ask in the pull request.

Please don't open pull requests with breaking changes unless this has been
discussed and agreed upon in an issue.