Skip to content

Commit

Permalink
Fix broken link and update docs (#1690)
Browse files Browse the repository at this point in the history
  • Loading branch information
rly authored Apr 28, 2023
1 parent dd23d23 commit 2eb2ddf
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 20 deletions.
3 changes: 1 addition & 2 deletions .github/PULL_REQUEST_TEMPLATE/release.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@ Prepare for release of PyNWB [version]

### Before merging:
- [ ] Major and minor releases: Update package versions in `requirements.txt`, `requirements-dev.txt`,
`requirements-doc.txt`, `requirements-min.txt`, `setup.py` as needed
See https://requires.io/github/NeurodataWithoutBorders/pynwb/requirements/?branch=dev
`requirements-doc.txt`, `requirements-min.txt`, `environment-ros3.yml`, and `setup.py` as needed.
- [ ] Check legal file dates and information in `Legal.txt`, `license.txt`, `README.rst`, `docs/source/conf.py`,
and any other locations as needed
- [ ] Update `setup.py` as needed
Expand Down
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@
### Bug fixes
- Remove unused, deprecated `codecov` package from dev installation requirements. @rly
[#1688](https://github.com/NeurodataWithoutBorders/pynwb/pull/1688)
- Remove references to discontinued `requires.io` service in documentation. @rly
[#1690](https://github.com/NeurodataWithoutBorders/pynwb/pull/1690)

## PyNWB 2.3.2 (April 10, 2023)

Expand Down
4 changes: 0 additions & 4 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,10 +55,6 @@ Overall Health
.. image:: https://github.com/NeurodataWithoutBorders/pynwb/actions/workflows/deploy_release.yml/badge.svg
:target: https://github.com/NeurodataWithoutBorders/pynwb/actions/workflows/deploy_release.yml

.. image:: https://requires.io/github/NeurodataWithoutBorders/pynwb/requirements.svg?branch=dev
:target: https://requires.io/github/NeurodataWithoutBorders/pynwb/requirements/?branch=dev
:alt: Requirements Status

.. image:: https://readthedocs.org/projects/pynwb/badge/?version=latest
:target: https://pynwb.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
Expand Down
39 changes: 25 additions & 14 deletions docs/source/software_process.rst
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,23 @@ codecov_, which shows line by line which lines are covered by the tests.
.. _coverage: https://coverage.readthedocs.io
.. _codecov: https://app.codecov.io/gh/NeurodataWithoutBorders/pynwb/tree/dev/src/pynwb

--------------------------
Requirement Specifications
--------------------------
-------------------------
Installation Requirements
-------------------------

:pynwb:`setup.py <blob/dev/setup.py>` contains a list of package dependencies and their version ranges allowed for
running PyNWB. As a library, upper bound version constraints create more harm than good in the long term (see this
`blog post`_) so we avoid setting upper bounds on requirements.

If some of the packages are outdated, see :ref:`update_requirements_files`.

There are 5 kinds of requirements specification in PyNWB.
.. _blog post: https://iscinumpy.dev/post/bound-version-constraints/

--------------------
Testing Requirements
--------------------

There are several kinds of requirements files used for testing PyNWB.

The first one is the :pynwb:`requirements-min.txt <blob/dev/requirements-min.txt>` file, which lists the package dependencies and their minimum versions for
installing PyNWB.
Expand All @@ -48,20 +60,19 @@ The third one is :pynwb:`requirements-dev.txt <blob/dev/requirements-dev.txt>`,
an entire development environment to use PyNWB, run PyNWB tests, check code style, compute coverage, and create test
environments.

The fourth one is :pynwb:`requirements-doc.txt <blob/dev/requirements-doc.txt>`, which lists the dependencies to generate the documentation for PyNWB.
Both this file and :pynwb:`requirements.txt <blob/dev/requirements.txt>` are used by ReadTheDocs_ to initialize the local environment for Sphinx to run.
The final one is :pynwb:`environment-ros3.yml <blob/dev/environment-ros3.yml>`, which lists the dependencies used to
test ROS3 streaming in PyNWB.

The final one is within :pynwb:`setup.py <blob/dev/setup.py>`, which contains a list of package dependencies and their version ranges allowed for
running PyNWB.

In order to check the status of the required packages, requires.io_ is used to create a badge on the project
:pynwb:`README <#readme>`. If all the required packages are up to date, a green badge appears.
--------------------------
Documentation Requirements
--------------------------

If some of the packages are outdated, see :ref:`update_requirements_files`.
:pynwb:`requirements-doc.txt <blob/dev/requirements-doc.txt>` lists the dependencies to generate the documentation
for PyNWB.
Both this file and :pynwb:`requirements.txt <blob/dev/requirements.txt>` are used by ReadTheDocs_ to initialize the
local environment for Sphinx to run.

.. _ReadTheDocs: https://readthedocs.org/projects/pynwb/
.. _requires.io: https://requires.io/github/NeurodataWithoutBorders/pynwb/requirements/?branch=dev


-------------------------
Versioning and Releasing
Expand Down

0 comments on commit 2eb2ddf

Please sign in to comment.