Metadata-Version: 2.4
Name: zope.meta
Version: 2.1
Summary: Helper functions for package management
Home-page: https://github.com/zopefoundation/meta
Author: Zope Foundation and Contributors
Author-email: zope-dev@zope.dev
License: ZPL-2.1
Project-URL: Documentation, https://zopemeta.readthedocs.io
Project-URL: Issue Tracker, https://github.com/zopefoundation/meta/issues
Project-URL: Sources, https://github.com/zopefoundation/meta
Keywords: zope packaging
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Zope Public License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE.txt
Requires-Dist: setuptools
Requires-Dist: check-python-versions
Requires-Dist: Jinja2
Requires-Dist: packaging
Requires-Dist: pyupgrade
Requires-Dist: requests
Requires-Dist: tomlkit
Requires-Dist: tox
Requires-Dist: zest.releaser
Provides-Extra: test
Requires-Dist: zope.testrunner>=6.4; extra == "test"
Provides-Extra: docs
Requires-Dist: Sphinx; extra == "docs"
Requires-Dist: furo; extra == "docs"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: license-file
Dynamic: project-url
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

``zope.meta``
=============

.. image:: https://img.shields.io/pypi/v/zope.meta.svg
    :target: https://pypi.python.org/pypi/zope.meta/
    :alt: Latest Version

.. image:: https://github.com/zopefoundation/meta/actions/workflows/tests.yml/badge.svg
    :target: https://github.com/zopefoundation/meta/actions/workflows/tests.yml

.. image:: https://coveralls.io/repos/github/zopefoundation/meta/badge.svg?branch=master
    :target: https://coveralls.io/github/zopefoundation/meta?branch=master
        
.. image:: https://readthedocs.org/projects/zopemeta/badge/?version=latest
    :target: https://zopemeta.readthedocs.io/en/latest/?badge=latest
    :alt: Documentation Status

This package contains helper functions and scripts for maintaining package
configurations for Zope Foundation GitHub packages
(https://github.com/zopefoundation).

Please visit https://zopemeta.readthedocs.io for the documentation.


Change log
==========

2.1 (2025-11-21)
----------------

- editorconfig: Don't use inline comments.
  Inline comments are invalid since editorconfig v0.15.0.

- Fix publishing Linux/arm64 wheels, which did not work after switching the
  GHA manylinux wheel build step for arm64 to a real arm64 runner.

- Fix Python version used for pre-commit at 3.13 so 3.14 is not used.
  Some linters like teyit are not compatible with Python 3.14.

- Update Python version used for manylinux builds to 3.13

- Run the GHA manylinux wheel build step for arm64 architecture on an actual
  Linux on arm64 VM instead of emulated on a x86_64 VM to speed things up.

- Fix ``update_python_support`` script for the case when ``with-future-python``
  is enabled.


2.0 (2025-10-28)
----------------

- Also check ``pyproject.toml`` when running ``check-python-versions``.

- Fix handling of ``tool`` section during ``pyproject.toml`` generation.

- Add support for Python 3.14.

- Drop support for Python 3.9.

- Allow ``setuptools >= 78.1.1, <81``.

- Replace ``pkg_resources`` namespace with PEP 420 native namespace.

- Update to ``pypy-3.11``.

- Add flag ``--no-tests`` to the scripts for switching to PEP 420
  namespaces and for updating supported Python versions.

- Add support for the ``--template-overrides`` flag to the Python version
  update script because it calls ``config-package``.

- Add ability to omit creating files by providing empty override templates.

- Fixed a regression that removed GHA additional installs from the
  default template for GHA testing.

- Upgrade setuptools pin to 75.8.2, which is extensively tested with the
  latest zc.buildout release 4.1.4. **Package maintainers should update
  all their sandboxes to use ``setuptools==75.8.2`` and ``zc.buildout>=4.1.4``
  to avoid issues with building and/or loading wheels!**

- Use Jinja templates to generate ``pyproject.toml`` files as well.

- Add argument ``--template-overrides`` to configuration script to specify
  an additional configuration templates folder. This folder is expected to
  contain subfolders for each overridden configuration type or a ``default``
  folder. The templates in these template folders will override the built-in
  templates.

- Add argument ``--no-tests`` to configuration script to skip unit tests.
  Useful for quick iterative configuration or code changes.

- Retire configurations ``require-cffi`` and ``additional-build-requirement``.
  Build dependencies should go into ``pyproject.toml`` instead.

- Fixes for changed wheel name issues with the latest setuptools/pip

- Improve ``pyproject.toml`` generation

- Add the tox ``release-check`` step to the ``c-code`` templates

- Add script ``bin/switch-to-pep420`` to convert a package from the old
  namespace package layout to the new PEP 420 native layout.

- Add ``pyupgrade-exclude`` to ``[pre-commit]`` section in ``.meta.toml``.

1.1 (2025-01-29)
----------------

- Drop support for Python 3.8.

- Allow specifying a minimum supported Python version other than the previously
  hardcoded default of Python 3.8.

- Allow ``setuptools <= 75.6.0``.

- Add ``omit`` option to ``coverage-run`` configuration because when defined in
  ``pyproject.toml`` it needs to be a list of strings.

- Update ``setup.py`` of configured packages with small textual changes to
  match current best practices.

1.0 (2024-10-02)
----------------

- Converted to an installable Python package.
