zope.configuration


Namezope.configuration JSON
Version 6.0 PyPI version JSON
download
home_pagehttps://github.com/zopefoundation/zope.configuration
SummaryZope Configuration Markup Language (ZCML)
upload_time2024-12-06 07:34:22
maintainerNone
docs_urlNone
authorZope Foundation and Contributors
requires_python>=3.8
licenseZPL 2.1
keywords zope configuration zcml
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ``zope.configuration``
======================

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

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

.. image:: https://readthedocs.org/projects/zopeconfiguration/badge/?version=latest
        :target: http://zopeconfiguration.readthedocs.io/en/latest/
        :alt: Documentation Status

The Zope configuration system provides an extensible system for
supporting various kinds of configurations.

It is based on the idea of configuration directives. Users of the
configuration system provide configuration directives in some
language that express configuration choices. The intent is that the
language be pluggable.  An XML language is provided by default.

Please see http://zopeconfiguration.readthedocs.io/en/latest/ for the documentation.




Changes
=======

6.0 (2024-12-06)
----------------

- Add support for checking environment variables in zcml conditions. Use
  ``envvar`` or ``not-envvar``. ``not-envvar`` is true when the variable is not
  set, is empty, or has one of the usual 'false' values like '0'.

- Add support for Python 3.12, 3.13.

- Drop support for Python 3.7.


5.0.1 (2024-02-12)
------------------

- Fix tests when running from a distribution.


5.0 (2023-05-04)
----------------

- Drop support for Python 2.7, 3.5, 3.6.

- Add support for Python 3.11.


4.4.1 (2022-04-07)
------------------

- Avoid creating reference cycles through tracebacks in ``reraise`` (change
  imported from ``six``).

- Add support for Python 3.9, 3.10.


4.4.0 (2020-03-22)
------------------

- Ensure a consistent interface resolution order for all objects. See
  `issue 49 <https://github.com/zopefoundation/zope.configuration/issues/49>`_.

- Drop support for Python 3.4.

- Add support for Python 3.8.


4.3.1 (2019-02-12)
------------------

- Do not break when running the tests from a wheel.


4.3.0 (2018-10-01)
------------------

- Simplify exception chaining and nested exception error messages.
  See `issue 43 <https://github.com/zopefoundation/zope.configuration/issues/43>`_.


4.2.2 (2018-09-27)
------------------

- Fix ``GlobalObject`` (and ``GlobalInterface``) no longer allowing
  multiple leading dots. See `issue 41
  <https://github.com/zopefoundation/zope.configuration/issues/41>`_.

- Add ``__all__`` to all modules listing the documented members of
  the module. Note that this is currently a broad list and may be
  reduced in the future.


4.2.1 (2018-09-26)
------------------

- Fix ``GlobalObject`` (and ``GlobalInterface``) no longer allowing
  just a single '.'. See `issue 35
  <https://github.com/zopefoundation/zope.configuration/issues/35>`_.


4.2.0 (2018-09-26)
------------------

- Reach 100% automated test coverage.

- Add support for Python 3.7.

- Drop support for Python 3.3 and remove internal compatibility
  functions needed to support it. See `issue 20
  <https://github.com/zopefoundation/zope.configuration/issues/20>`_
  and `issue 26
  <https://github.com/zopefoundation/zope.configuration/issues/26>`_.

- Drop support for ``python setup.py test``.

- Make ``zope.configuration.fields.Path`` and
  ``zope.configuration.config.ConfigurationContext`` expand
  environment variables and expand user home directories in paths. See
  `issue 3 <https://github.com/zopefoundation/zope.configuration/issues/3>`_.

- Fix resolving names from a Python 2 package whose ``__init__.py`` has
  unicode elements in ``__all__``.

- Make ``GroupingContextDecorator`` stop shadowing builtins in its
  ``__getattr__``. These were not intended as arguments to be used by
  subclasses, and the signature caused confusion.

- Fix the doctests with zope.schema 4.7 and above, and run the
  doctests on both Python 2 and Python 3. See `issue 21
  <https://github.com/zopefoundation/zope.configuration/issues/21>`_.

- Fix ``GlobalObject`` and ``GlobalInterface`` fields to only accept
  dotted names instead of names with ``/``. Previously, slash
  delimited names could result in incorrect imports. See `issue 6
  <https://github.com/zopefoundation/zope.configuration/issues/6>`_.

- Fix the schema fields to include the ``value`` and ``field`` values
  on exceptions they raise.

- Make ``zope.configuration.fields.PythonIdentifier`` subclass
  ``PythonIdentifier`` from ``zope.schema``. It now implements ``fromBytes``,
  always produces a native string, and validates the value in
  ``fromUnicode``. See `issue 28
  <https://github.com/zopefoundation/zope.configuration/issues/28>`_.

- Add ``ConfigurationMachine.pass_through_exceptions`` to allow
  customizing the exceptions that
  ``ConfigurationMachine.execute_actions`` wraps in a
  ``ConfigurationExecutionError``. See `issue 10
  <https://github.com/zopefoundation/zope.configuration/issues/10>`_.

- Stop catching ``BaseException`` and wrapping it in either
  ``ConfigurationExecutionError`` or ``ZopeXMLConfigurationError``.
  ``SystemExit`` and ``KeyboardInterrupt`` were always allowed to
  propagate; now ``GeneratorExit`` and custom subclasses of
  ``BaseException`` are also allowed te propagate.

4.1.0 (2017-04-26)
------------------

- Drop support for Python 2.6 and 3.2.

- Add support for Python 3.5 and 3.6.

- Fix the ``domain`` of MessageID fields to be a native string.
  Previously on Python 3 they were bytes, which meant that they
  couldn't be used to find translation utilities registered by
  zope.i18n. See `issue 17 <https://github.com/zopefoundation/zope.configuration/issues/17>`_.

4.0.3 (2014-03-19)
------------------

- Add explicit support for Python 3.4.

4.0.2 (2012-12-31)
------------------

- Flesh out PyPI Trove classifiers.

- Remove spurious declaration of 'test' dependency on ``zope.testing``.

4.0.1 (2012-11-21)
------------------

- Add support for Python 3.3.

- Remove the deprecated 'zope.configuration.stxdocs' script.
  and made the 'zope.configuration.tests.conditions' helper module
  (used in running Sphinx doctest snippets) Py3k compatible.
  https://bugs.launchpad.net/zope.configuration/+bug/1025390

4.0.0 (2012-05-16)
------------------

- Bring unit test coverage to 100%.

- Automate build of Sphinx HTML docs and running doctest snippets via tox.

- Drop hard testing dependency on ``zope.testing``.

- Add explicit support for PyPy.

- Add explicit support for Python 3.2.

- Drop explicit support for Python 2.4 / 2.5.

- Add support for continuous integration using ``tox`` and ``jenkins``.

- Add ``Sphinx`` documentation.

- Add ``setup.py docs`` alias (installs ``Sphinx`` and dependencies).

- Add ``setup.py dev`` alias (runs ``setup.py develop`` plus installs
  ``nose`` and ``coverage``).

3.8.1 (2012-05-05)
------------------

- Fix Python 2.4 backwards incompat (itemgetter used with multiple args);
  Python 2.4 now works (at least if you use zope.schema == 3.8.1).
  This is the last release which will support Python 2.4 or 2.5.

3.8.0 (2011-12-06)
------------------

- Change action structures from tuples to dictionaries to allow for action
  structure extensibility (merged chrism-dictactions branch).

3.7.4 (2011-04-03)
------------------

- Apply test fixes for Windows.

3.7.3 (2011-03-11)
------------------

- Correctly locate packages with a __path__ attribute but no
  __file__ attribute (such as namespace packages installed with setup.py
  install --single-version-externally-managed).

- Allow "info" and "includepath" to be passed optionally to context.action.

3.7.2 (2010-04-30)
------------------

- Prefer the standard libraries doctest module over zope.testing.doctest.

3.7.1 (2010-01-05)
------------------

- Jython support: use ``__builtin__`` module import rather than assuming
  ``__builtins__`` is available.

- Jython support: deal with the fact that the Jython SAX parser
  returns attribute sets that have an empty string indicating no
  namespace instead of ``None``.

- Allow ``setup.py test`` to run at least a subset of the tests that
  would be run when using the zope testrunner: ``setup.py test`` runs
  53 tests, while ``bin/test`` runs 156.

3.7.0 (2009-12-22)
------------------

- Adjust testing output to newer zope.schema.

- Prefer zope.testing.doctest over doctestunit.

3.6.0 (2009-04-01)
------------------

- Removed dependency of `zope.deprecation` package.

- Don't suppress deprecation warnings any more in 'zope.configuration'
  package level. This makes it more likely other packages will generate
  deprecation warnings now, which will allow us to remove more
  outdated ones.

- Don't fail when zope.testing is not installed.

- Added missing ``processFile`` method to ``IConfigurationContext``.
  It is already implemented in the mix-in class,
  ``zope.configuration.config.ConfigurationContext``, and used by
  implementations of ``include`` and ``exclude`` directives.

3.5.0 (2009-02-26)
------------------

- Added the ``exclude`` directive to standard directives. It was
  previously available via ``zc.configuration`` package and now it's
  merged into ``zope.configuration``.

- Changed package's mailing list address to zope-dev at zope.org,
  change "cheeseshop" to "pypi" in the package's url.

3.4.1 (2008-12-11)
------------------

- Use built-in 'set' type, rather than importin the 'sets' module,
  which is deprecated in Python 2.6.

- Added support to bootstrap on Jython.

3.4.0 (2007-10-02)
------------------

- Initial release as a standalone package.

Before 3.4.0
------------

This package was part of the Zope 3 distribution and did not have its own
CHANGES.txt. For earlier changes please refer to either our subversion log or
the CHANGES.txt of earlier Zope 3 releases.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/zopefoundation/zope.configuration",
    "name": "zope.configuration",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "zope configuration zcml",
    "author": "Zope Foundation and Contributors",
    "author_email": "zope-dev@zope.dev",
    "download_url": "https://files.pythonhosted.org/packages/05/4b/0b6bc5ffc29243ecb56681244dc87d04db83f58d50bd2f58d6a962d26199/zope_configuration-6.0.tar.gz",
    "platform": null,
    "description": "``zope.configuration``\n======================\n\n.. image:: https://img.shields.io/pypi/v/zope.configuration.svg\n    :target: https://pypi.python.org/pypi/zope.configuration/\n    :alt: Latest Version\n\n.. image:: https://github.com/zopefoundation/zope.configuration/actions/workflows/tests.yml/badge.svg\n        :target: https://github.com/zopefoundation/zope.configuration/actions/workflows/tests.yml\n\n.. image:: https://readthedocs.org/projects/zopeconfiguration/badge/?version=latest\n        :target: http://zopeconfiguration.readthedocs.io/en/latest/\n        :alt: Documentation Status\n\nThe Zope configuration system provides an extensible system for\nsupporting various kinds of configurations.\n\nIt is based on the idea of configuration directives. Users of the\nconfiguration system provide configuration directives in some\nlanguage that express configuration choices. The intent is that the\nlanguage be pluggable.  An XML language is provided by default.\n\nPlease see http://zopeconfiguration.readthedocs.io/en/latest/ for the documentation.\n\n\n\n\nChanges\n=======\n\n6.0 (2024-12-06)\n----------------\n\n- Add support for checking environment variables in zcml conditions. Use\n  ``envvar`` or ``not-envvar``. ``not-envvar`` is true when the variable is not\n  set, is empty, or has one of the usual 'false' values like '0'.\n\n- Add support for Python 3.12, 3.13.\n\n- Drop support for Python 3.7.\n\n\n5.0.1 (2024-02-12)\n------------------\n\n- Fix tests when running from a distribution.\n\n\n5.0 (2023-05-04)\n----------------\n\n- Drop support for Python 2.7, 3.5, 3.6.\n\n- Add support for Python 3.11.\n\n\n4.4.1 (2022-04-07)\n------------------\n\n- Avoid creating reference cycles through tracebacks in ``reraise`` (change\n  imported from ``six``).\n\n- Add support for Python 3.9, 3.10.\n\n\n4.4.0 (2020-03-22)\n------------------\n\n- Ensure a consistent interface resolution order for all objects. See\n  `issue 49 <https://github.com/zopefoundation/zope.configuration/issues/49>`_.\n\n- Drop support for Python 3.4.\n\n- Add support for Python 3.8.\n\n\n4.3.1 (2019-02-12)\n------------------\n\n- Do not break when running the tests from a wheel.\n\n\n4.3.0 (2018-10-01)\n------------------\n\n- Simplify exception chaining and nested exception error messages.\n  See `issue 43 <https://github.com/zopefoundation/zope.configuration/issues/43>`_.\n\n\n4.2.2 (2018-09-27)\n------------------\n\n- Fix ``GlobalObject`` (and ``GlobalInterface``) no longer allowing\n  multiple leading dots. See `issue 41\n  <https://github.com/zopefoundation/zope.configuration/issues/41>`_.\n\n- Add ``__all__`` to all modules listing the documented members of\n  the module. Note that this is currently a broad list and may be\n  reduced in the future.\n\n\n4.2.1 (2018-09-26)\n------------------\n\n- Fix ``GlobalObject`` (and ``GlobalInterface``) no longer allowing\n  just a single '.'. See `issue 35\n  <https://github.com/zopefoundation/zope.configuration/issues/35>`_.\n\n\n4.2.0 (2018-09-26)\n------------------\n\n- Reach 100% automated test coverage.\n\n- Add support for Python 3.7.\n\n- Drop support for Python 3.3 and remove internal compatibility\n  functions needed to support it. See `issue 20\n  <https://github.com/zopefoundation/zope.configuration/issues/20>`_\n  and `issue 26\n  <https://github.com/zopefoundation/zope.configuration/issues/26>`_.\n\n- Drop support for ``python setup.py test``.\n\n- Make ``zope.configuration.fields.Path`` and\n  ``zope.configuration.config.ConfigurationContext`` expand\n  environment variables and expand user home directories in paths. See\n  `issue 3 <https://github.com/zopefoundation/zope.configuration/issues/3>`_.\n\n- Fix resolving names from a Python 2 package whose ``__init__.py`` has\n  unicode elements in ``__all__``.\n\n- Make ``GroupingContextDecorator`` stop shadowing builtins in its\n  ``__getattr__``. These were not intended as arguments to be used by\n  subclasses, and the signature caused confusion.\n\n- Fix the doctests with zope.schema 4.7 and above, and run the\n  doctests on both Python 2 and Python 3. See `issue 21\n  <https://github.com/zopefoundation/zope.configuration/issues/21>`_.\n\n- Fix ``GlobalObject`` and ``GlobalInterface`` fields to only accept\n  dotted names instead of names with ``/``. Previously, slash\n  delimited names could result in incorrect imports. See `issue 6\n  <https://github.com/zopefoundation/zope.configuration/issues/6>`_.\n\n- Fix the schema fields to include the ``value`` and ``field`` values\n  on exceptions they raise.\n\n- Make ``zope.configuration.fields.PythonIdentifier`` subclass\n  ``PythonIdentifier`` from ``zope.schema``. It now implements ``fromBytes``,\n  always produces a native string, and validates the value in\n  ``fromUnicode``. See `issue 28\n  <https://github.com/zopefoundation/zope.configuration/issues/28>`_.\n\n- Add ``ConfigurationMachine.pass_through_exceptions`` to allow\n  customizing the exceptions that\n  ``ConfigurationMachine.execute_actions`` wraps in a\n  ``ConfigurationExecutionError``. See `issue 10\n  <https://github.com/zopefoundation/zope.configuration/issues/10>`_.\n\n- Stop catching ``BaseException`` and wrapping it in either\n  ``ConfigurationExecutionError`` or ``ZopeXMLConfigurationError``.\n  ``SystemExit`` and ``KeyboardInterrupt`` were always allowed to\n  propagate; now ``GeneratorExit`` and custom subclasses of\n  ``BaseException`` are also allowed te propagate.\n\n4.1.0 (2017-04-26)\n------------------\n\n- Drop support for Python 2.6 and 3.2.\n\n- Add support for Python 3.5 and 3.6.\n\n- Fix the ``domain`` of MessageID fields to be a native string.\n  Previously on Python 3 they were bytes, which meant that they\n  couldn't be used to find translation utilities registered by\n  zope.i18n. See `issue 17 <https://github.com/zopefoundation/zope.configuration/issues/17>`_.\n\n4.0.3 (2014-03-19)\n------------------\n\n- Add explicit support for Python 3.4.\n\n4.0.2 (2012-12-31)\n------------------\n\n- Flesh out PyPI Trove classifiers.\n\n- Remove spurious declaration of 'test' dependency on ``zope.testing``.\n\n4.0.1 (2012-11-21)\n------------------\n\n- Add support for Python 3.3.\n\n- Remove the deprecated 'zope.configuration.stxdocs' script.\n  and made the 'zope.configuration.tests.conditions' helper module\n  (used in running Sphinx doctest snippets) Py3k compatible.\n  https://bugs.launchpad.net/zope.configuration/+bug/1025390\n\n4.0.0 (2012-05-16)\n------------------\n\n- Bring unit test coverage to 100%.\n\n- Automate build of Sphinx HTML docs and running doctest snippets via tox.\n\n- Drop hard testing dependency on ``zope.testing``.\n\n- Add explicit support for PyPy.\n\n- Add explicit support for Python 3.2.\n\n- Drop explicit support for Python 2.4 / 2.5.\n\n- Add support for continuous integration using ``tox`` and ``jenkins``.\n\n- Add ``Sphinx`` documentation.\n\n- Add ``setup.py docs`` alias (installs ``Sphinx`` and dependencies).\n\n- Add ``setup.py dev`` alias (runs ``setup.py develop`` plus installs\n  ``nose`` and ``coverage``).\n\n3.8.1 (2012-05-05)\n------------------\n\n- Fix Python 2.4 backwards incompat (itemgetter used with multiple args);\n  Python 2.4 now works (at least if you use zope.schema == 3.8.1).\n  This is the last release which will support Python 2.4 or 2.5.\n\n3.8.0 (2011-12-06)\n------------------\n\n- Change action structures from tuples to dictionaries to allow for action\n  structure extensibility (merged chrism-dictactions branch).\n\n3.7.4 (2011-04-03)\n------------------\n\n- Apply test fixes for Windows.\n\n3.7.3 (2011-03-11)\n------------------\n\n- Correctly locate packages with a __path__ attribute but no\n  __file__ attribute (such as namespace packages installed with setup.py\n  install --single-version-externally-managed).\n\n- Allow \"info\" and \"includepath\" to be passed optionally to context.action.\n\n3.7.2 (2010-04-30)\n------------------\n\n- Prefer the standard libraries doctest module over zope.testing.doctest.\n\n3.7.1 (2010-01-05)\n------------------\n\n- Jython support: use ``__builtin__`` module import rather than assuming\n  ``__builtins__`` is available.\n\n- Jython support: deal with the fact that the Jython SAX parser\n  returns attribute sets that have an empty string indicating no\n  namespace instead of ``None``.\n\n- Allow ``setup.py test`` to run at least a subset of the tests that\n  would be run when using the zope testrunner: ``setup.py test`` runs\n  53 tests, while ``bin/test`` runs 156.\n\n3.7.0 (2009-12-22)\n------------------\n\n- Adjust testing output to newer zope.schema.\n\n- Prefer zope.testing.doctest over doctestunit.\n\n3.6.0 (2009-04-01)\n------------------\n\n- Removed dependency of `zope.deprecation` package.\n\n- Don't suppress deprecation warnings any more in 'zope.configuration'\n  package level. This makes it more likely other packages will generate\n  deprecation warnings now, which will allow us to remove more\n  outdated ones.\n\n- Don't fail when zope.testing is not installed.\n\n- Added missing ``processFile`` method to ``IConfigurationContext``.\n  It is already implemented in the mix-in class,\n  ``zope.configuration.config.ConfigurationContext``, and used by\n  implementations of ``include`` and ``exclude`` directives.\n\n3.5.0 (2009-02-26)\n------------------\n\n- Added the ``exclude`` directive to standard directives. It was\n  previously available via ``zc.configuration`` package and now it's\n  merged into ``zope.configuration``.\n\n- Changed package's mailing list address to zope-dev at zope.org,\n  change \"cheeseshop\" to \"pypi\" in the package's url.\n\n3.4.1 (2008-12-11)\n------------------\n\n- Use built-in 'set' type, rather than importin the 'sets' module,\n  which is deprecated in Python 2.6.\n\n- Added support to bootstrap on Jython.\n\n3.4.0 (2007-10-02)\n------------------\n\n- Initial release as a standalone package.\n\nBefore 3.4.0\n------------\n\nThis package was part of the Zope 3 distribution and did not have its own\nCHANGES.txt. For earlier changes please refer to either our subversion log or\nthe CHANGES.txt of earlier Zope 3 releases.\n",
    "bugtrack_url": null,
    "license": "ZPL 2.1",
    "summary": "Zope Configuration Markup Language (ZCML)",
    "version": "6.0",
    "project_urls": {
        "Homepage": "https://github.com/zopefoundation/zope.configuration"
    },
    "split_keywords": [
        "zope",
        "configuration",
        "zcml"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9732ec9fe5c67a5b549d7088d523dc3429392e3b57b0d6055f781e7ed2e42803",
                "md5": "440bd0502c488db2b88a17909dba5df2",
                "sha256": "1b99b4845c987fbb8e329a5548b7c4aa3b75ee5531dcc5f69674365a2f5e5306"
            },
            "downloads": -1,
            "filename": "zope.configuration-6.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "440bd0502c488db2b88a17909dba5df2",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 79015,
            "upload_time": "2024-12-06T07:34:20",
            "upload_time_iso_8601": "2024-12-06T07:34:20.522192Z",
            "url": "https://files.pythonhosted.org/packages/97/32/ec9fe5c67a5b549d7088d523dc3429392e3b57b0d6055f781e7ed2e42803/zope.configuration-6.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "054b0b6bc5ffc29243ecb56681244dc87d04db83f58d50bd2f58d6a962d26199",
                "md5": "3e894fa3a615b79159acdaa1b25c14da",
                "sha256": "da1b879bd41138fb809e341b3cbd1e38f32b88f0cc88ee7e0f80a5aa25e68cfe"
            },
            "downloads": -1,
            "filename": "zope_configuration-6.0.tar.gz",
            "has_sig": false,
            "md5_digest": "3e894fa3a615b79159acdaa1b25c14da",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 84258,
            "upload_time": "2024-12-06T07:34:22",
            "upload_time_iso_8601": "2024-12-06T07:34:22.977582Z",
            "url": "https://files.pythonhosted.org/packages/05/4b/0b6bc5ffc29243ecb56681244dc87d04db83f58d50bd2f58d6a962d26199/zope_configuration-6.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-06 07:34:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "zopefoundation",
    "github_project": "zope.configuration",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "zope.configuration"
}
        
Elapsed time: 1.63843s