zest.releaser


Namezest.releaser JSON
Version 9.1.3 PyPI version JSON
download
home_page
SummarySoftware releasing made easy and repeatable
upload_time2024-02-07 09:33:28
maintainer
docs_urlNone
author
requires_python>=3.8
licenseGPL
keywords releasing packaging pypi
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            Package releasing made easy: zest.releaser overview and installation
====================================================================

zest.releaser is collection of command-line programs to help you automate the
task of releasing a Python project.

It does away with all the boring bits. This is what zest.releaser automates
for you:

* It updates the version number. The version number can either be in
  ``setup.py`` or ``version.txt`` or in a ``__version__`` attribute in a
  Python file or in ``setup.cfg``. For example, it switches you from
  ``0.3.dev0`` (current development version) to ``0.3`` (release) to
  ``0.4.dev0`` (new development version).

* It updates the history/changes file. It logs the release date on release and
  adds a new heading for the upcoming changes (new development version).

* It tags the release. It creates a tag in your version control system named
  after the released version number.

* It optionally uploads a source release to PyPI. It will only do this if the
  package is already registered there (else it will ask, defaulting to 'no');
  zest releaser is careful not to publish your private projects!


Most important URLs
-------------------

First the three most important links:

- The full documentation is at `zestreleaser.readthedocs.io
  <https://zestreleaser.readthedocs.io>`_.

- We're `on PyPI <https://pypi.org/project/zest.releaser>`_, so we're only
  an ``pip install zest.releaser`` away from installation on your computer.

- The code is at `github.com/zestsoftware/zest.releaser
  <https://github.com/zestsoftware/zest.releaser>`_.


Compatibility / Dependencies
----------------------------

.. image:: https://img.shields.io/pypi/pyversions/zest.releaser?   :alt: PyPI - Python Version
.. image:: https://img.shields.io/pypi/implementation/zest.releaser?   :alt: PyPI - Implementation

``zest.releaser`` works on Python 3.8+, including PyPy3.
Tested until Python 3.11, but see ``tox.ini`` for the canonical place for that.

To be sure: the packages that you release with ``zest.releaser`` may
very well work on other Python versions: that totally depends on your
package.

We depend on:

- ``setuptools`` for the entrypoint hooks that we offer.

- ``colorama`` for colorized output (some errors printed in red).

- ``twine`` for secure uploading via https to pypi. Plain setuptools doesn't
  support this.

Since version 4.0 there is a ``recommended`` extra that you can get by
installing ``zest.releaser[recommended]`` instead of ``zest.releaser``.  It
contains a few trusted add-ons that we feel are useful for the great majority
of ``zest.releaser`` users:

- wheel_ for creating a Python wheel that we upload to PyPI next to
  the standard source distribution.  Wheels are the official binary
  distribution format for Python.
  Since version 8.0.0a2 we always create wheels, except when you
  explicitly switch this off in the config:
  ``create-wheel = false``.
  If you are sure you want "universal" wheels, follow the directions from the
  `wheel documentation <https://wheel.readthedocs.io/en/stable/user_guide.html>`_.

- `check-manifest`_ checks your ``MANIFEST.in`` file for completeness,
  or tells you that you need such a file.  It basically checks if all
  version controlled files are ending up the the distribution that we
  will upload.  This may avoid 'brown bag' releases that are missing
  files.

- pyroma_ checks if the package follows best practices of Python
  packaging.  Mostly it performs checks on the ``setup.py`` file, like
  checking for Python version classifiers.

- readme_renderer_ to check your long description in the same way as pypi does. No more
  unformatted restructured text on your pypi page just because there was a
  small error somewhere. Handy.

.. _wheel: https://pypi.org/project/wheel
.. _`check-manifest`: https://pypi.org/project/check-manifest
.. _pyroma: https://pypi.org/project/pyroma
.. _readme_renderer: https://pypi.org/project/readme_renderer


Installation
------------

Just a simple ``pip install zest.releaser`` or ``easy_install zest.releaser`` is
enough. If you want the recommended extra utilities, do a ``pip install
zest.releaser[recommended]``.

Alternatively, buildout users can install zest.releaser as part of a specific
project's buildout, by having a buildout configuration such as::

    [buildout]
    parts =
        scripts

    [scripts]
    recipe = zc.recipe.egg
    eggs = zest.releaser[recommended]


Version control systems: git
----------------------------

Of course you must have a version control system installed.
Since version 7, zest.releaser only supports git.

If you use Subversion (svn), Mercurial (hg), Git-svn, or Bazaar (bzr), please use version 6.
If you really want, you can probably copy the relevant parts from the old code to a new package,
and release this as an add-on package for zest.releaser.
I suspect that currently it would only work with a monkey patch.
If you are planning something, please open an issue, and we can see about making this part pluggable.


Available commands
------------------

Zest.releaser gives you four commands to help in releasing python
packages.  They must be run in a version controlled checkout.  The commands
are:

- **prerelease**: asks you for a version number (defaults to the current
  version minus a 'dev' or so), updates the setup.py or version.txt and the
  CHANGES/HISTORY/CHANGELOG file (with either .rst/.txt/.md/.markdown or no
  extension) with this new version number and offers to commit those changes
  to subversion (or bzr or hg or git).

- **release**: copies the the trunk or branch of the current checkout and
  creates a version control tag of it.  Makes a checkout of the tag in a
  temporary directory.  Offers to register and upload a source dist
  of this package to PyPI (Python Package Index).  Note: if the package has
  not been registered yet, it will not do that for you.  You must register the
  package manually (``python setup.py register``) so this remains a conscious
  decision.  The main reason is that you want to avoid having to say: "Oops, I
  uploaded our client code to the internet; and this is the initial version
  with the plaintext root passwords."

- **postrelease**: asks you for a version number (gives a sane default), adds
  a development marker to it, updates the setup.py or version.txt and the
  CHANGES/HISTORY/CHANGELOG file with this and offers to commit those changes
  to version control. Note that with git and hg, you'd also be asked to push
  your changes (since 3.27). Otherwise the release and tag only live in your
  local hg/git repository and not on the server.

- **fullrelease**: all of the above in order.

Note: markdown files should use the "underline" style of headings, not the
"atx" style where you prefix the headers with ``#`` signs.

There are some additional tools:

- **longtest**: small tool that renders the long description and opens it in a
  web browser. Handy for debugging formatting issues locally before uploading
  it to pypi.

- **lasttagdiff**: small tool that shows the *diff* of the current
  branch with the last released tag.  Handy for checking whether all
  the changes are adequately described in the changes file.

- **lasttaglog**: small tool that shows the *log* of the current
  branch since the last released tag.  Handy for checking whether all
  the changes are adequately described in the changes file.

- **addchangelogentry**: pass this a text on the command line and it
  will add this as an entry in the changelog.  This is probably mostly
  useful when you are making the same change in a batch of packages.
  The same text is used as commit message.  In the changelog, the text
  is indented and the first line is started with a dash.  The command
  detects it if you use for example a star as first character of an
  entry.

- **bumpversion**: do not release, only bump the version.  A
  development marker is kept when it is there.  With ``--feature`` we
  update the minor version.  With option ``--breaking`` we update the
  major version.

Credits
=======

* `Reinout van Rees <http://reinout.vanrees.org>`_ (Nelen & Schuurmans) is the
  original author. He's still maintaining it, together with Maurits.

* `Maurits van Rees <http://maurits.vanrees.org>`_ (Zest Software) added
  a heapload of improvements and is the maintainer, together with Reinout.

* `Kevin Teague <http://bud.ca>`_ (Canada's Michael Smith Genome Sciences
  Center) added support for multiple version control systems, most notable
  Mercurial.

* `Wouter vanden Hove <http://ugent.be>`_ (University of Gent) added
  support for uploading to multiple servers, using collective.dist.

* `Godefroid Chapelle <http://bubblenet.be>`_ (BubbleNet) added /tag besides
  /tags for subversion.

* `Richard Mitchell <https://github.com/mitchellrj>`_
  (`Isotoma <https://www.isotoma.com/>`_) added Python 3 support.

* `Mateusz Legięcki <https://github.com/Behoston>`_ added a dockerfile for
  much easier testing.

* `Eli Sallé <https://github.com/elisallenens>`_ added pyproject.toml support
  for zest.releaser's own options. We're modern now!

Changelog for zest.releaser
===========================

9.1.3 (2024-02-07)
------------------

- Fix to the project setup. ``tox.ini`` uses ``extras =`` instead of ``deps =`` to to
  install the test extras.
  [mtelka]


9.1.2 (2024-02-05)
------------------

- If you want to build a release package (release=true, the default), but don't want to
  actually upload it, you can now set the ``upload-pypi`` option to false (default is
  true).
  [leplatrem]


9.1.1 (2023-10-11)
------------------

- When reading ``~/.pypirc`` config, read ``setup.cfg`` as well, as it might
  override some of these values, like ``[distutils] index-servers``.
  Fixes issue #436.  [maurits]


9.1.0 (2023-10-03)
------------------

- Using newer 'build' (``>=1.0.0``) including a slight API change, fixes
  #433. [reinout]

- Typo fix in the readme: we look at ``__version__`` instead of
  the previously-documented ``__versions__``... [reinout]


9.0.0 (2023-09-11)
------------------

- Make final release.  Nothing changed since the last beta.  [maurits]


9.0.0b1 (2023-07-31)
--------------------

- When a command we call exits with a non-zero exit code, clearly state this in the output.
  Ask the user if she wants to continue or not.
  Note that this is tricky to do right.  Some commands like ``git`` seem to print everything to stderr,
  leading us to think there are errors, but the exit code is zero, so it should be fine.
  We do not want to ask too many questions, but we do not want to silently swallow important errors either.
  [maurits]


9.0.0a3 (2023-07-25)
--------------------

- Updated contributors list.

- Documenting ``hook_package_dir`` setting for entry points (which isn't
  needed for most entry points, btw).
  Fixes `issue 370 <https://github.com/zestsoftware/zest.releaser/issues/370>`_.

- Allowing for retry for ``git push``, which might fail because of a protected
  branch. Also displaying that possible cause when it occurs. Fixes `issue 385
  <https://github.com/zestsoftware/zest.releaser/issues/385>`_.


9.0.0a2 (2023-07-19)
--------------------

- Ignore error output when calling `build`.
  We only need to look at the exit code to see if it worked.
  You can call zest.releaser with ``--verbose`` if you want
  to see the possible warnings.

- Removed ``encoding`` config option as nobody is using it anymore (using the
  option would result in a crash). Apparently it isn't needed anymore now that
  we don't use python 2 anymore. Fixes `issue 391
  <https://github.com/zestsoftware/zest.releaser/issues/391>`_.

- The ``longtest`` is now simpler. It runs readme_renderer and just displays
  the result in the browser, without error handling. ``twine check`` should be
  used if you want a real hard check (``longtest --headless`` is
  deprecated). The advantage is that longtest now also renders markdown
  correctly.  This adds `readme_renderer[md]` as dependency.
  Fixes `issue 363 <https://github.com/zestsoftware/zest.releaser/issues/363>`_.


9.0.0a1 (2023-07-13)
--------------------

- Changed build system to pypa/build instead of explicitly using
  setuptools.

- Zest.releaser's settings can now also be placed in ``pyproject.toml``.

- Use native namespace packages for ``zest.releaser``, instead of
  deprecated ``pkg_resources`` based ones.

- Added pre-commit config for neater code (black, flake8, isort).

- Dropped support for python 3.7. Together with switching to ``build`` and
  ``pyproject.toml``, this warrants a major version bump.


8.0.0 (2023-05-05)
------------------

- Make final release, no changes since latest alpha.  [maurits]


8.0.0a2 (2023-04-06)
--------------------

- Always create wheels, except when you explicitly switch this off in the config:
  ``[zest.releaser] create-wheel = no``.
  If the ``wheel`` package is not available, we still do not create wheels.
  Fixes `issue 406 <https://github.com/zestsoftware/zest.releaser/issues/406>`_.
  [maurits]

- Do not fail when tag versions cannot be parsed.
  This can happen in ``lasttaglog``, ``lasttagdiff``, and ``bumpversion``, with ``setuptools`` 66 or higher.
  Fixes `issue 408 <https://github.com/zestsoftware/zest.releaser/issues/408>`_.
  [maurits]


8.0.0a1 (2023-02-08)
--------------------

- Drop support for Python 3.6.  [maurits]

- Support reading and writing the version in ``pyproject.toml``.
  See `issue 295 <https://github.com/zestsoftware/zest.releaser/issues/295>`_,
  `issue 373 <https://github.com/zestsoftware/zest.releaser/issues/373>`_,
  and `PEP-621 <https://peps.python.org/pep-0621/>`_,
  [maurits]


7.3.0 (2023-02-07)
------------------

- Add option ``run-pre-commit = yes / no``.
  Default: no.
  When set to true, pre commit hooks are run.
  This may interfere with releasing when they fail.
  [maurits]


7.2.0 (2022-12-09)
------------------

- Auto-detect ``history_format`` based on history filename.
  [ericof]

- Add ``history_format`` option, to explicitly set changelogs
  entries in Markdown.
  [ericof]


7.1.0 (2022-11-23)
------------------

- Add the ``bumpversion`` options to the ``postrelease`` command.
  This means ``feature``, ``breaking``, and ``final``.
  [rnc, maurits]

- Add ``--final`` option to ``bumpversion`` command.
  This removes alpha / beta / rc markers from the version.
  [maurits]

- Add support for Python 3.11, remove ``z3c.testsetup`` from test dependencies.  [maurits]


7.0.0 (2022-09-09)
------------------

- Optionally add prefix text to commit messages.  This can be used ensure your messages follow some regular expression.
  To activate this, add ``prefix-message = [TAG]`` to a ``[zest.releaser]``
  section in the ``setup.cfg`` of your package, or your global
  ``~/.pypirc``.  Or add your favorite geeky quotes there.
  [LvffY]


7.0.0a3 (2022-04-04)
--------------------

- Bug 381: In ``prerelease``, check with ``pep440`` if the version is canonical.
  Added ``pep440`` to the ``recommended`` extra, not to the core dependencies:
  ``zest.releaser`` can also be used for non-Python projects.
  [maurits]


7.0.0a2 (2022-02-10)
--------------------

- Add ``--headless`` option to ``longtest``.


7.0.0a1 (2021-12-01)
--------------------

Big cleanup to ease future development:

- Removed support for Subversion (``svn``), Bazaar (``bzr``), Mercurial (``hg``).

- Removed support for Python 2 and 3.5.

- Added support for Python 3.9 and 3.10.

- Tested with Python 3.6-3.10 plus PyPy3.

- Switched from Travis to GitHub Actions.

- Simplified running commands by using ``subprocess.run``.


.. # Note: for older changes see ``doc/sources/changelog.rst``.

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "zest.releaser",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "releasing,packaging,pypi",
    "author": "",
    "author_email": "Reinout van Rees <reinout@vanrees.org>, Maurits van Rees <maurits@vanrees.org>",
    "download_url": "https://files.pythonhosted.org/packages/78/87/077d562d1837ad92647b9d3464dfc753b46a33cb1529ee07af0cacfe30b9/zest.releaser-9.1.3.tar.gz",
    "platform": null,
    "description": "Package releasing made easy: zest.releaser overview and installation\n====================================================================\n\nzest.releaser is collection of command-line programs to help you automate the\ntask of releasing a Python project.\n\nIt does away with all the boring bits. This is what zest.releaser automates\nfor you:\n\n* It updates the version number. The version number can either be in\n  ``setup.py`` or ``version.txt`` or in a ``__version__`` attribute in a\n  Python file or in ``setup.cfg``. For example, it switches you from\n  ``0.3.dev0`` (current development version) to ``0.3`` (release) to\n  ``0.4.dev0`` (new development version).\n\n* It updates the history/changes file. It logs the release date on release and\n  adds a new heading for the upcoming changes (new development version).\n\n* It tags the release. It creates a tag in your version control system named\n  after the released version number.\n\n* It optionally uploads a source release to PyPI. It will only do this if the\n  package is already registered there (else it will ask, defaulting to 'no');\n  zest releaser is careful not to publish your private projects!\n\n\nMost important URLs\n-------------------\n\nFirst the three most important links:\n\n- The full documentation is at `zestreleaser.readthedocs.io\n  <https://zestreleaser.readthedocs.io>`_.\n\n- We're `on PyPI <https://pypi.org/project/zest.releaser>`_, so we're only\n  an ``pip install zest.releaser`` away from installation on your computer.\n\n- The code is at `github.com/zestsoftware/zest.releaser\n  <https://github.com/zestsoftware/zest.releaser>`_.\n\n\nCompatibility / Dependencies\n----------------------------\n\n.. image:: https://img.shields.io/pypi/pyversions/zest.releaser?   :alt: PyPI - Python Version\n.. image:: https://img.shields.io/pypi/implementation/zest.releaser?   :alt: PyPI - Implementation\n\n``zest.releaser`` works on Python 3.8+, including PyPy3.\nTested until Python 3.11, but see ``tox.ini`` for the canonical place for that.\n\nTo be sure: the packages that you release with ``zest.releaser`` may\nvery well work on other Python versions: that totally depends on your\npackage.\n\nWe depend on:\n\n- ``setuptools`` for the entrypoint hooks that we offer.\n\n- ``colorama`` for colorized output (some errors printed in red).\n\n- ``twine`` for secure uploading via https to pypi. Plain setuptools doesn't\n  support this.\n\nSince version 4.0 there is a ``recommended`` extra that you can get by\ninstalling ``zest.releaser[recommended]`` instead of ``zest.releaser``.  It\ncontains a few trusted add-ons that we feel are useful for the great majority\nof ``zest.releaser`` users:\n\n- wheel_ for creating a Python wheel that we upload to PyPI next to\n  the standard source distribution.  Wheels are the official binary\n  distribution format for Python.\n  Since version 8.0.0a2 we always create wheels, except when you\n  explicitly switch this off in the config:\n  ``create-wheel = false``.\n  If you are sure you want \"universal\" wheels, follow the directions from the\n  `wheel documentation <https://wheel.readthedocs.io/en/stable/user_guide.html>`_.\n\n- `check-manifest`_ checks your ``MANIFEST.in`` file for completeness,\n  or tells you that you need such a file.  It basically checks if all\n  version controlled files are ending up the the distribution that we\n  will upload.  This may avoid 'brown bag' releases that are missing\n  files.\n\n- pyroma_ checks if the package follows best practices of Python\n  packaging.  Mostly it performs checks on the ``setup.py`` file, like\n  checking for Python version classifiers.\n\n- readme_renderer_ to check your long description in the same way as pypi does. No more\n  unformatted restructured text on your pypi page just because there was a\n  small error somewhere. Handy.\n\n.. _wheel: https://pypi.org/project/wheel\n.. _`check-manifest`: https://pypi.org/project/check-manifest\n.. _pyroma: https://pypi.org/project/pyroma\n.. _readme_renderer: https://pypi.org/project/readme_renderer\n\n\nInstallation\n------------\n\nJust a simple ``pip install zest.releaser`` or ``easy_install zest.releaser`` is\nenough. If you want the recommended extra utilities, do a ``pip install\nzest.releaser[recommended]``.\n\nAlternatively, buildout users can install zest.releaser as part of a specific\nproject's buildout, by having a buildout configuration such as::\n\n    [buildout]\n    parts =\n        scripts\n\n    [scripts]\n    recipe = zc.recipe.egg\n    eggs = zest.releaser[recommended]\n\n\nVersion control systems: git\n----------------------------\n\nOf course you must have a version control system installed.\nSince version 7, zest.releaser only supports git.\n\nIf you use Subversion (svn), Mercurial (hg), Git-svn, or Bazaar (bzr), please use version 6.\nIf you really want, you can probably copy the relevant parts from the old code to a new package,\nand release this as an add-on package for zest.releaser.\nI suspect that currently it would only work with a monkey patch.\nIf you are planning something, please open an issue, and we can see about making this part pluggable.\n\n\nAvailable commands\n------------------\n\nZest.releaser gives you four commands to help in releasing python\npackages.  They must be run in a version controlled checkout.  The commands\nare:\n\n- **prerelease**: asks you for a version number (defaults to the current\n  version minus a 'dev' or so), updates the setup.py or version.txt and the\n  CHANGES/HISTORY/CHANGELOG file (with either .rst/.txt/.md/.markdown or no\n  extension) with this new version number and offers to commit those changes\n  to subversion (or bzr or hg or git).\n\n- **release**: copies the the trunk or branch of the current checkout and\n  creates a version control tag of it.  Makes a checkout of the tag in a\n  temporary directory.  Offers to register and upload a source dist\n  of this package to PyPI (Python Package Index).  Note: if the package has\n  not been registered yet, it will not do that for you.  You must register the\n  package manually (``python setup.py register``) so this remains a conscious\n  decision.  The main reason is that you want to avoid having to say: \"Oops, I\n  uploaded our client code to the internet; and this is the initial version\n  with the plaintext root passwords.\"\n\n- **postrelease**: asks you for a version number (gives a sane default), adds\n  a development marker to it, updates the setup.py or version.txt and the\n  CHANGES/HISTORY/CHANGELOG file with this and offers to commit those changes\n  to version control. Note that with git and hg, you'd also be asked to push\n  your changes (since 3.27). Otherwise the release and tag only live in your\n  local hg/git repository and not on the server.\n\n- **fullrelease**: all of the above in order.\n\nNote: markdown files should use the \"underline\" style of headings, not the\n\"atx\" style where you prefix the headers with ``#`` signs.\n\nThere are some additional tools:\n\n- **longtest**: small tool that renders the long description and opens it in a\n  web browser. Handy for debugging formatting issues locally before uploading\n  it to pypi.\n\n- **lasttagdiff**: small tool that shows the *diff* of the current\n  branch with the last released tag.  Handy for checking whether all\n  the changes are adequately described in the changes file.\n\n- **lasttaglog**: small tool that shows the *log* of the current\n  branch since the last released tag.  Handy for checking whether all\n  the changes are adequately described in the changes file.\n\n- **addchangelogentry**: pass this a text on the command line and it\n  will add this as an entry in the changelog.  This is probably mostly\n  useful when you are making the same change in a batch of packages.\n  The same text is used as commit message.  In the changelog, the text\n  is indented and the first line is started with a dash.  The command\n  detects it if you use for example a star as first character of an\n  entry.\n\n- **bumpversion**: do not release, only bump the version.  A\n  development marker is kept when it is there.  With ``--feature`` we\n  update the minor version.  With option ``--breaking`` we update the\n  major version.\n\nCredits\n=======\n\n* `Reinout van Rees <http://reinout.vanrees.org>`_ (Nelen & Schuurmans) is the\n  original author. He's still maintaining it, together with Maurits.\n\n* `Maurits van Rees <http://maurits.vanrees.org>`_ (Zest Software) added\n  a heapload of improvements and is the maintainer, together with Reinout.\n\n* `Kevin Teague <http://bud.ca>`_ (Canada's Michael Smith Genome Sciences\n  Center) added support for multiple version control systems, most notable\n  Mercurial.\n\n* `Wouter vanden Hove <http://ugent.be>`_ (University of Gent) added\n  support for uploading to multiple servers, using collective.dist.\n\n* `Godefroid Chapelle <http://bubblenet.be>`_ (BubbleNet) added /tag besides\n  /tags for subversion.\n\n* `Richard Mitchell <https://github.com/mitchellrj>`_\n  (`Isotoma <https://www.isotoma.com/>`_) added Python 3 support.\n\n* `Mateusz Legi\u0119cki <https://github.com/Behoston>`_ added a dockerfile for\n  much easier testing.\n\n* `Eli Sall\u00e9 <https://github.com/elisallenens>`_ added pyproject.toml support\n  for zest.releaser's own options. We're modern now!\n\nChangelog for zest.releaser\n===========================\n\n9.1.3 (2024-02-07)\n------------------\n\n- Fix to the project setup. ``tox.ini`` uses ``extras =`` instead of ``deps =`` to to\n  install the test extras.\n  [mtelka]\n\n\n9.1.2 (2024-02-05)\n------------------\n\n- If you want to build a release package (release=true, the default), but don't want to\n  actually upload it, you can now set the ``upload-pypi`` option to false (default is\n  true).\n  [leplatrem]\n\n\n9.1.1 (2023-10-11)\n------------------\n\n- When reading ``~/.pypirc`` config, read ``setup.cfg`` as well, as it might\n  override some of these values, like ``[distutils] index-servers``.\n  Fixes issue #436.  [maurits]\n\n\n9.1.0 (2023-10-03)\n------------------\n\n- Using newer 'build' (``>=1.0.0``) including a slight API change, fixes\n  #433. [reinout]\n\n- Typo fix in the readme: we look at ``__version__`` instead of\n  the previously-documented ``__versions__``... [reinout]\n\n\n9.0.0 (2023-09-11)\n------------------\n\n- Make final release.  Nothing changed since the last beta.  [maurits]\n\n\n9.0.0b1 (2023-07-31)\n--------------------\n\n- When a command we call exits with a non-zero exit code, clearly state this in the output.\n  Ask the user if she wants to continue or not.\n  Note that this is tricky to do right.  Some commands like ``git`` seem to print everything to stderr,\n  leading us to think there are errors, but the exit code is zero, so it should be fine.\n  We do not want to ask too many questions, but we do not want to silently swallow important errors either.\n  [maurits]\n\n\n9.0.0a3 (2023-07-25)\n--------------------\n\n- Updated contributors list.\n\n- Documenting ``hook_package_dir`` setting for entry points (which isn't\n  needed for most entry points, btw).\n  Fixes `issue 370 <https://github.com/zestsoftware/zest.releaser/issues/370>`_.\n\n- Allowing for retry for ``git push``, which might fail because of a protected\n  branch. Also displaying that possible cause when it occurs. Fixes `issue 385\n  <https://github.com/zestsoftware/zest.releaser/issues/385>`_.\n\n\n9.0.0a2 (2023-07-19)\n--------------------\n\n- Ignore error output when calling `build`.\n  We only need to look at the exit code to see if it worked.\n  You can call zest.releaser with ``--verbose`` if you want\n  to see the possible warnings.\n\n- Removed ``encoding`` config option as nobody is using it anymore (using the\n  option would result in a crash). Apparently it isn't needed anymore now that\n  we don't use python 2 anymore. Fixes `issue 391\n  <https://github.com/zestsoftware/zest.releaser/issues/391>`_.\n\n- The ``longtest`` is now simpler. It runs readme_renderer and just displays\n  the result in the browser, without error handling. ``twine check`` should be\n  used if you want a real hard check (``longtest --headless`` is\n  deprecated). The advantage is that longtest now also renders markdown\n  correctly.  This adds `readme_renderer[md]` as dependency.\n  Fixes `issue 363 <https://github.com/zestsoftware/zest.releaser/issues/363>`_.\n\n\n9.0.0a1 (2023-07-13)\n--------------------\n\n- Changed build system to pypa/build instead of explicitly using\n  setuptools.\n\n- Zest.releaser's settings can now also be placed in ``pyproject.toml``.\n\n- Use native namespace packages for ``zest.releaser``, instead of\n  deprecated ``pkg_resources`` based ones.\n\n- Added pre-commit config for neater code (black, flake8, isort).\n\n- Dropped support for python 3.7. Together with switching to ``build`` and\n  ``pyproject.toml``, this warrants a major version bump.\n\n\n8.0.0 (2023-05-05)\n------------------\n\n- Make final release, no changes since latest alpha.  [maurits]\n\n\n8.0.0a2 (2023-04-06)\n--------------------\n\n- Always create wheels, except when you explicitly switch this off in the config:\n  ``[zest.releaser] create-wheel = no``.\n  If the ``wheel`` package is not available, we still do not create wheels.\n  Fixes `issue 406 <https://github.com/zestsoftware/zest.releaser/issues/406>`_.\n  [maurits]\n\n- Do not fail when tag versions cannot be parsed.\n  This can happen in ``lasttaglog``, ``lasttagdiff``, and ``bumpversion``, with ``setuptools`` 66 or higher.\n  Fixes `issue 408 <https://github.com/zestsoftware/zest.releaser/issues/408>`_.\n  [maurits]\n\n\n8.0.0a1 (2023-02-08)\n--------------------\n\n- Drop support for Python 3.6.  [maurits]\n\n- Support reading and writing the version in ``pyproject.toml``.\n  See `issue 295 <https://github.com/zestsoftware/zest.releaser/issues/295>`_,\n  `issue 373 <https://github.com/zestsoftware/zest.releaser/issues/373>`_,\n  and `PEP-621 <https://peps.python.org/pep-0621/>`_,\n  [maurits]\n\n\n7.3.0 (2023-02-07)\n------------------\n\n- Add option ``run-pre-commit = yes / no``.\n  Default: no.\n  When set to true, pre commit hooks are run.\n  This may interfere with releasing when they fail.\n  [maurits]\n\n\n7.2.0 (2022-12-09)\n------------------\n\n- Auto-detect ``history_format`` based on history filename.\n  [ericof]\n\n- Add ``history_format`` option, to explicitly set changelogs\n  entries in Markdown.\n  [ericof]\n\n\n7.1.0 (2022-11-23)\n------------------\n\n- Add the ``bumpversion`` options to the ``postrelease`` command.\n  This means ``feature``, ``breaking``, and ``final``.\n  [rnc, maurits]\n\n- Add ``--final`` option to ``bumpversion`` command.\n  This removes alpha / beta / rc markers from the version.\n  [maurits]\n\n- Add support for Python 3.11, remove ``z3c.testsetup`` from test dependencies.  [maurits]\n\n\n7.0.0 (2022-09-09)\n------------------\n\n- Optionally add prefix text to commit messages.  This can be used ensure your messages follow some regular expression.\n  To activate this, add ``prefix-message = [TAG]`` to a ``[zest.releaser]``\n  section in the ``setup.cfg`` of your package, or your global\n  ``~/.pypirc``.  Or add your favorite geeky quotes there.\n  [LvffY]\n\n\n7.0.0a3 (2022-04-04)\n--------------------\n\n- Bug 381: In ``prerelease``, check with ``pep440`` if the version is canonical.\n  Added ``pep440`` to the ``recommended`` extra, not to the core dependencies:\n  ``zest.releaser`` can also be used for non-Python projects.\n  [maurits]\n\n\n7.0.0a2 (2022-02-10)\n--------------------\n\n- Add ``--headless`` option to ``longtest``.\n\n\n7.0.0a1 (2021-12-01)\n--------------------\n\nBig cleanup to ease future development:\n\n- Removed support for Subversion (``svn``), Bazaar (``bzr``), Mercurial (``hg``).\n\n- Removed support for Python 2 and 3.5.\n\n- Added support for Python 3.9 and 3.10.\n\n- Tested with Python 3.6-3.10 plus PyPy3.\n\n- Switched from Travis to GitHub Actions.\n\n- Simplified running commands by using ``subprocess.run``.\n\n\n.. # Note: for older changes see ``doc/sources/changelog.rst``.\n",
    "bugtrack_url": null,
    "license": "GPL",
    "summary": "Software releasing made easy and repeatable",
    "version": "9.1.3",
    "project_urls": {
        "changelog": "https://github.com/zestsoftware/zest.releaser/blob/master/CHANGES.rst",
        "documentation": "https://zestreleaser.readthedocs.io",
        "repository": "https://github.com/zestsoftware/zest.releaser/"
    },
    "split_keywords": [
        "releasing",
        "packaging",
        "pypi"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7887077d562d1837ad92647b9d3464dfc753b46a33cb1529ee07af0cacfe30b9",
                "md5": "a8d432991db9ed28087660a222c0201f",
                "sha256": "7ef1fb259a7f6b3e103d799f4d7092614c9daa1be491d28c08063353c1ad6001"
            },
            "downloads": -1,
            "filename": "zest.releaser-9.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "a8d432991db9ed28087660a222c0201f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 119923,
            "upload_time": "2024-02-07T09:33:28",
            "upload_time_iso_8601": "2024-02-07T09:33:28.793664Z",
            "url": "https://files.pythonhosted.org/packages/78/87/077d562d1837ad92647b9d3464dfc753b46a33cb1529ee07af0cacfe30b9/zest.releaser-9.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-07 09:33:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "zestsoftware",
    "github_project": "zest.releaser",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "tox": true,
    "lcname": "zest.releaser"
}
        
Elapsed time: 0.33995s