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
8 changes: 8 additions & 0 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Read the Docs configuration file for Sphinx projects
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

version: 2

build:
os: ubuntu-22.04
tools:
python: "3.11"

formats:
- htmlzip

Expand Down
28 changes: 0 additions & 28 deletions .travis.yml

This file was deleted.

28 changes: 17 additions & 11 deletions CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,15 @@ The package can be set up (ideally in a fresh virtual environment) for local
development with the following::

$ git clone https://github.com/epfl-lts2/pyunlocbox.git
$ cd pyunlocbox
$ uv sync --dev
$ source .venv/bin/activate # On Windows: .venv\Scripts\activate

Or with pip (legacy method)::

$ pip install --upgrade --editable pyunlocbox[dev]

The ``dev`` "extras requirement" ensures that dependencies required for
The ``dev`` dependencies ensure that packages required for
development (to run the test suite and build the documentation) are installed.

You can improve or add solvers, functions, and acceleration schemes in
Expand All @@ -30,7 +36,7 @@ short example in ``examples``.
Update ``README.rst`` and ``CHANGELOG.rst`` if applicable.

After making any change, please check the style, run the tests, and build the
documentation with the following (enforced by Travis CI)::
documentation with the following (enforced by GitHub Actions)::

$ make lint
$ make test
Expand All @@ -42,31 +48,31 @@ tests reasonably cover the changes you've introduced.
To iterate faster, you can partially run the test suite, at various degrees of
granularity, as follows::

$ python -m unittest pyunlocbox.tests.test_functions
$ python -m unittest pyunlocbox.tests.test_functions.TestCase.test_norm_l1
$ uv run pytest pyunlocbox/tests/test_functions.py
$ uv run pytest pyunlocbox/tests/test_functions.py::TestFunctions::test_norm_l1

Making a release
----------------

#. Update the version number and release date in ``setup.py``,
#. Update the version number and release date in ``pyproject.toml``,
``pyunlocbox/__init__.py`` and ``CHANGELOG.rst``.
#. Create a git tag with ``git tag -a v0.5.0 -m "PyUNLocBox v0.5.0"``.
#. Push the tag to GitHub with ``git push github v0.5.0``. The tag should now
#. Push the tag to GitHub with ``git push origin v0.5.0``. The tag should now
appear in the releases and tags tab.
#. `Create a release <https://github.com/epfl-lts2/pygsp/releases/new>`_ on
GitHub and select the created tag. A DOI should then be issued by Zenodo.
#. Go on Zenodo and fix the metadata if necessary.
#. Build the distribution with ``make dist`` and check that the
#. Build the distribution with ``make dist`` (or ``uv build``) and check that the
``dist/pyunlocbox-0.5.0.tar.gz`` source archive contains all required files.
The binary wheel should be found as
``dist/pyunlocbox-0.5.0-py2.py3-none-any.whl``.
``dist/pyunlocbox-0.5.0-py3-none-any.whl``.
#. Test the upload and installation process::

$ twine upload --repository-url https://test.pypi.org/legacy/ dist/*
$ pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple pyunlocbox
$ uv run twine upload --repository-url https://test.pypi.org/legacy/ dist/*
$ uv pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple pyunlocbox

Log in as the LTS2 user.
#. Build and upload the distribution to the real PyPI with ``make release``.
#. Build and upload the distribution to the real PyPI with ``make release`` (or ``uv run twine upload dist/*``).
#. Update the conda feedstock (at least the version number and sha256 in
``recipe/meta.yaml``) by sending a PR to
`conda-forge <https://github.com/conda-forge/pyunlocbox-feedstock>`_.
20 changes: 10 additions & 10 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@ and development takes place on
`GitHub <https://github.com/epfl-lts2/pyunlocbox>`_.
A (mostly unmaintained) `Matlab version <https://epfl-lts2.github.io/unlocbox-html>`_ exists.

+-----------------------------------+
| |doc| |pypi| |conda| |binder| |
+-----------------------------------+
| |zenodo| |license| |pyversions| |
+-----------------------------------+
| |travis| |coveralls| |github| |
+-----------------------------------+
+-----------------------------------------+
| |doc| |pypi| |conda| |binder| |
+-----------------------------------------+
| |zenodo| |license| |pyversions| |
+-----------------------------------------+
| |github-actions| |coveralls| |github| |
+-----------------------------------------+

.. |doc| image:: https://readthedocs.org/projects/pyunlocbox/badge/?version=latest
:target: https://pyunlocbox.readthedocs.io
Expand All @@ -29,8 +29,8 @@ A (mostly unmaintained) `Matlab version <https://epfl-lts2.github.io/unlocbox-ht
:target: https://github.com/epfl-lts2/pyunlocbox/blob/master/LICENSE.txt
.. |pyversions| image:: https://img.shields.io/pypi/pyversions/pyunlocbox.svg
:target: https://pypi.org/project/pyunlocbox
.. |travis| image:: https://img.shields.io/travis/com/epfl-lts2/pyunlocbox.svg
:target: https://app.travis-ci.com/github/epfl-lts2/pyunlocbox
.. |github-actions| image:: https://github.com/epfl-lts2/pyunlocbox/workflows/CI/badge.svg
:target: https://github.com/epfl-lts2/pyunlocbox/actions
.. |coveralls| image:: https://img.shields.io/coveralls/github/epfl-lts2/pyunlocbox.svg
:target: https://coveralls.io/github/epfl-lts2/pyunlocbox
.. |github| image:: https://img.shields.io/github/stars/epfl-lts2/pyunlocbox.svg?style=social
Expand Down Expand Up @@ -220,7 +220,7 @@ Build documentation::

$ uv run sphinx-build -b html doc/ doc/_build/

Note: This project has migrated from Travis CI to GitHub Actions. The ``.travis.yml`` file can be removed once the migration is complete.
Note: This project uses GitHub Actions for continuous integration and deployment.

Similar libraries
-----------------
Expand Down
2 changes: 1 addition & 1 deletion pyunlocbox/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
from pyunlocbox import operators # noqa: F401
from pyunlocbox import solvers # noqa: F401

__version__ = "0.5.2"
__version__ = "0.6.0"
__release_date__ = "2017-12-15"


Expand Down