============
nti.schema
============
.. image:: https://img.shields.io/pypi/v/nti.schema.svg
:target: https://pypi.python.org/pypi/nti.schema/
:alt: Latest release
.. image:: https://img.shields.io/pypi/pyversions/nti.schema.svg
:target: https://pypi.org/project/nti.schema/
:alt: Supported Python versions
.. image:: https://github.com/NextThought/nti.zope_catalog/workflows/tests/badge.svg
:target: https://github.com/NextThought/nti.zope_catalog/actions?query=workflow%3Atests
.. image:: https://coveralls.io/repos/github/NextThought/nti.schema/badge.svg
:target: https://coveralls.io/github/NextThought/nti.schema
.. image:: http://readthedocs.org/projects/ntischema/badge/?version=latest
:target: http://ntischema.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
nti.schema includes utilities for working with schema-driven
development using `zope.schema <http://docs.zope.org/zope.schema/>`_.
For complete details and the changelog, see the `documentation <http://ntischema.readthedocs.io/>`_.
Overview
========
Some of the most useful features include:
- ``nti.schema.interfaces.find_most_derived_interface`` for finding a
bounded interface.
- ``nti.schema.eqhash.EqHash`` is a class-decorator for creating
efficient, correct implementations of equality and hashing.
- ``nti.schema.field`` contains various schema fields, including a
``Variant`` type and more flexible collection types, all of which
produce better validation errors.
- ``nti.schema.fieldproperty`` contains field properties that can
adapt to interfaces or decode incoming text. The function
``createDirectFieldProperties`` can assign just the necessary
properties automatically.
=========
Changes
=========
1.18.0 (2024-11-18)
===================
- Make ``nti.schema.field.FieldConverter`` a public utility class.
1.17.0 (2024-11-08)
===================
- Drop support for anything less than Python 3.10.
- Add support for all current versions of Python, up to 3.13.
- Use native namespace packages.
1.16.0 (2021-05-08)
===================
- Add support for Python 3.9.
- Drop support for Python 3.5.
- Fix deprecation warnings emitted by using this package, and make the
deprecation warnings it emits more precise. See `issue 58
<https://github.com/NextThought/nti.schema/issues/58>`_.
- Fix constructing a ``Variant`` to do some extra validation of
``IMapping`` fields to require that both the ``key_type`` and
``value_type`` are given. Previously, if one or both were left
``None``, an ``AttributeError`` would be raised when the field was
asked to validate data or its ``fromObject()`` method was called.
Now, a ``RequiredMissing`` error will be raised when the ``Variant``
is created. Some other nested uses of ``Dict`` fields, such as a
``Sequence``, could also have raised the ``AttributeError``; this
may change in the future to raise at construction time as well.
See `issue 59 <https://github.com/NextThought/nti.schema/issues>`_.
1.15.1 (2020-07-02)
===================
- Fix plurality of error message for fields with min length of 1.
1.15.0 (2020-05-06)
===================
- Improve the speed of ``SchemaConfigured`` subclasses. See `issue 54
<https://github.com/NextThought/nti.schema/issues/54>`_.
This involves some caching, so be sure to read the documentation for
``nti.schema.schema`` if you ever mutate classes directly, or mutate
the results of ``schemadict``.
1.14.0 (2020-03-27)
===================
- Require zope.interface 5.0.0 and related dependencies.
- Ensure all objects have consistent interface resolution orders.
- Add support for Python 3.8.
1.13.1 (2019-06-11)
===================
- ``StrippedValidTextLine`` should accept single character lines.
1.13.0 (2019-05-22)
===================
- Ensure ``StrippedValidTextLine`` correctly recognizes single character values
as stripped. Previously, 'b' would have been rejected.
1.12.0 (2018-10-10)
===================
- JSON schemas report the schema for ``IObject`` fields
and the schemas for the possible fields in ``IVariant``.
- Fields in JSON schemas may specify a JSON-serializable dictionary
to be passed as the ``application_info`` schema value. See `issue 44
<https://github.com/NextThought/nti.schema/issues/44>`_.
- JSON schemas now output more constraints automatically. See `issue
47 <https://github.com/NextThought/nti.schema/pull/48>`_.
1.11.0 (2018-10-10)
===================
- JSON schemas now include nested ``value_type`` and ``key_type`` for
collection and mapping fields. See `issue 42
<https://github.com/NextThought/nti.schema/issues/42>`_.
- JSON schemas now include (translated) ``title`` and ``description``
values for fields. See `issue 41
<https://github.com/NextThought/nti.schema/issues/41>`_.
1.10.0 (2018-10-04)
===================
- Add ``nti.schema.fieldproperty.field_name`` to compensate for the
mangling that ``FieldPropertyStoredThroughField`` does.
1.9.2 (2018-10-04)
==================
- Fix ``Variant`` and other implementations of ``IFromObject`` to stop
passing known non-text values to ``fromUnicode`` methods. This only
worked with certain fields (such as ``zope.schema.Number``) that
could accept non-text values, usually by implementation accident,
and could have surprising consequences. Instead, non-text values
will be passed to the ``validate`` method.
- Fix ``Variant`` to stop double-validating values. The underlying
``fromUnicode``, ``fromBytes`` or ``fromObject`` methods were
supposed to already validate.
1.9.1 (2018-10-03)
==================
- Make ``VariantValidationError`` and ``Variant`` have more useful
string representations.
- Make ``fromObject`` methods more gracefully handle an AttributeError
raised by an underlying ``fromUnicode`` method on non-string input
(such as None). This is especially helpful for ``Variant`` fields
because they can catch the error and continue to the next field.
- Fix ``Variant``, ``TupleFromObject``, ``DictFromObject``,
``ListFromObject`` and ``ListOrTupleFromObject`` to allow the
``missing_value`` (which defaults to ``None``) in their
``fromObject`` methods; passing that value in simply returns it
without raising an exception if the field is not required. If the
field is required, a ``RequiredMissing`` is raised. Previously the
sequences raised a ``WrongType`` error, while ``Variant`` *may* or
*may not* have raised an error, depending on the underlying fields
in use.
1.9.0 (2018-10-02)
==================
- ``Variant`` objects now automatically add ``fromObject`` support to
``ICollection`` and ``IMapping`` fields that do not already provide
it, if their ``value_type`` (and ``key_type``) qualify by being
either an ``Object`` field, or something that provides
``IFromObject`` or can be made to, such as a collection or mapping.
1.8.0 (2018-09-28)
==================
- Add ``VariantValidationError``, an error raised by variant fields
when none of their constituent fields could adapt or validate the
value.
1.7.0 (2018-09-19)
==================
- Add support for ``IFromBytes`` in zope.schema 4.8.0.
- The ``Variant`` and ``ListOrTupleFromObject``, ``TupleFromObject``,
``DictFromObject`` fields all have tweaked behaviour in
``fromObject``. If the incoming value is a bytestring or text
string, the underlying field's ``fromBytes`` and ``fromUnicode``
will be called in preference to a ``fromObject``, if that method is
implemented.
- ``ValidSet`` and ``UniqueIterable`` now implement ``fromObject``.
- All fields that implement ``fromObject`` now accept an ``Object``
field for their ``value_type`` (and ``key_type`` in the case of
``DictFromObject``) and will attempt to adapt objects that do not
provide the schema in ``fromObject``.
1.6.0 (2018-09-18)
==================
- Adjust the deprecated ``zope.schema.interfaces.InvalidValue`` to be
a simple alias for ``zope.schema.interfaces.InvalidValue`` (while
preserving the constructor) for improved backwards compatibility.
1.5.0 (2018-09-11)
==================
- Add support for zope.schema 4.7.0; drop support for older versions.
1.4.2 (2018-09-10)
==================
- Fix the ``repr`` of ``nti.schema.interfaces.InvalidValue``. See
`issue 26 <https://github.com/NextThought/nti.schema/issues/26>`_.
- ``nti.schema.jsonschema`` turns more abstract field types into
concrete types. See `issue 29 <https://github.com/NextThought/nti.schema/issues/29>`_.
1.4.1 (2018-09-10)
==================
- Make ``nti.schema.interfaces.InvalidValue`` a class again. It is
deprecated. See `issue 24 <https://github.com/NextThought/nti.schema/issues/24>`_.
1.4.0 (2018-09-10)
==================
- Drop support for ``dm.zope.schema`` fields, in particular the
``Object`` field. The validation performed by ``zope.schema.Object``
is much improved.
- Drop support for ``zope.schema`` older than 4.6.1.
- Deprecate ``nti.schema.field.Number``.
- Add support for Python 3.7.
1.3.3 (2018-09-07)
==================
- Minor fix for changes in zope.schema 4.6.0 (import
``BeforeObjectAssignedEvent`` from its new, but still private, location).
1.3.2 (2017-10-24)
==================
- Depend on zope.deferredimport >= 4.2.1 to be able to generate Sphinx
documentation.
- Clean up code to match PEP8.
1.3.1 (2017-10-18)
==================
- Fix an ``UnboundLocalError`` on Python 3 in the ``Variant`` field.
See `issue 14 <https://github.com/NextThought/nti.schema/issues/14>`_.
1.3.0 (2017-07-06)
==================
- Drop the Python 2 dependency on ``plone.i18n`` in favor of the new
library ``nti.i18n``, which supports Python 3. If ``plone.i18n`` is
installed, it *should not* be configured (ZCML), but its utility
objects can be looked up by either interface.
1.2.0 (2017-05-17)
==================
- Remove use of ``unicode_literals``.
- Add support for Python 3.6.
- The ``SchemaConfigured`` constructor doesn't hide errors when
checking for properties on Python 2. See `issue 11
<https://github.com/NextThought/nti.schema/issues/11>`_.
1.1.3 (2017-01-17)
==================
- Add info to minLength validation message.
1.1.2 (2016-09-14)
==================
- Add ``Acquisition`` and ``zope.event`` as install dependencies.
Previously they were only pulled in via the ``test`` extra.
1.1.1 (2016-09-08)
==================
- Substantial speedups to the hash functions generated by ``EqHash``.
- Substantial speedups to the equality functions generated by ``EqHash``.
1.1.0 (2016-07-29)
==================
- Add support for Python 3. *Note* the countries vocabulary will not
be complete on Python 3.
- Drop the ``dolmen.builtins`` dependency.
- Drop the ``dm.zope.schema`` dependency.
- The ``plone.i18n`` dependency is Python 2 only (and can even be
removed).
- The matchers in ``nti.schema.testing`` have been moved to
``nti.testing.matchers``.
- Using ``AdaptingFieldProperty`` will now raise the more specific
``SchemaNotProvided`` error instead of a ``TypeError`` if adapting
the value fails.
- ``EqHash`` has moved from ``nti.schema.schema`` to
``nti.schema.eqhash``. A compatibility shim remains.
Raw data
{
"_id": null,
"home_page": "https://github.com/OpenNTI/nti.schema",
"name": "nti.schema",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "zope schema",
"author": "Jason Madden",
"author_email": "open-source@nextthought.com",
"download_url": "https://files.pythonhosted.org/packages/7a/e4/4830c2f9f7a555a81c7ad36f3edef2d86f36a2107849c59c555e35241118/nti_schema-1.18.0.tar.gz",
"platform": null,
"description": "============\n nti.schema\n============\n\n.. image:: https://img.shields.io/pypi/v/nti.schema.svg\n :target: https://pypi.python.org/pypi/nti.schema/\n :alt: Latest release\n\n.. image:: https://img.shields.io/pypi/pyversions/nti.schema.svg\n :target: https://pypi.org/project/nti.schema/\n :alt: Supported Python versions\n\n.. image:: https://github.com/NextThought/nti.zope_catalog/workflows/tests/badge.svg\n :target: https://github.com/NextThought/nti.zope_catalog/actions?query=workflow%3Atests\n\n.. image:: https://coveralls.io/repos/github/NextThought/nti.schema/badge.svg\n :target: https://coveralls.io/github/NextThought/nti.schema\n\n.. image:: http://readthedocs.org/projects/ntischema/badge/?version=latest\n :target: http://ntischema.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\nnti.schema includes utilities for working with schema-driven\ndevelopment using `zope.schema <http://docs.zope.org/zope.schema/>`_.\n\nFor complete details and the changelog, see the `documentation <http://ntischema.readthedocs.io/>`_.\n\nOverview\n========\n\nSome of the most useful features include:\n\n- ``nti.schema.interfaces.find_most_derived_interface`` for finding a\n bounded interface.\n- ``nti.schema.eqhash.EqHash`` is a class-decorator for creating\n efficient, correct implementations of equality and hashing.\n- ``nti.schema.field`` contains various schema fields, including a\n ``Variant`` type and more flexible collection types, all of which\n produce better validation errors.\n- ``nti.schema.fieldproperty`` contains field properties that can\n adapt to interfaces or decode incoming text. The function\n ``createDirectFieldProperties`` can assign just the necessary\n properties automatically.\n\n\n=========\n Changes\n=========\n\n1.18.0 (2024-11-18)\n===================\n\n- Make ``nti.schema.field.FieldConverter`` a public utility class.\n\n\n1.17.0 (2024-11-08)\n===================\n\n- Drop support for anything less than Python 3.10.\n- Add support for all current versions of Python, up to 3.13.\n- Use native namespace packages.\n\n\n1.16.0 (2021-05-08)\n===================\n\n- Add support for Python 3.9.\n\n- Drop support for Python 3.5.\n\n- Fix deprecation warnings emitted by using this package, and make the\n deprecation warnings it emits more precise. See `issue 58\n <https://github.com/NextThought/nti.schema/issues/58>`_.\n\n- Fix constructing a ``Variant`` to do some extra validation of\n ``IMapping`` fields to require that both the ``key_type`` and\n ``value_type`` are given. Previously, if one or both were left\n ``None``, an ``AttributeError`` would be raised when the field was\n asked to validate data or its ``fromObject()`` method was called.\n Now, a ``RequiredMissing`` error will be raised when the ``Variant``\n is created. Some other nested uses of ``Dict`` fields, such as a\n ``Sequence``, could also have raised the ``AttributeError``; this\n may change in the future to raise at construction time as well.\n\n See `issue 59 <https://github.com/NextThought/nti.schema/issues>`_.\n\n\n1.15.1 (2020-07-02)\n===================\n\n- Fix plurality of error message for fields with min length of 1.\n\n\n1.15.0 (2020-05-06)\n===================\n\n- Improve the speed of ``SchemaConfigured`` subclasses. See `issue 54\n <https://github.com/NextThought/nti.schema/issues/54>`_.\n\n This involves some caching, so be sure to read the documentation for\n ``nti.schema.schema`` if you ever mutate classes directly, or mutate\n the results of ``schemadict``.\n\n\n1.14.0 (2020-03-27)\n===================\n\n- Require zope.interface 5.0.0 and related dependencies.\n\n- Ensure all objects have consistent interface resolution orders.\n\n- Add support for Python 3.8.\n\n\n1.13.1 (2019-06-11)\n===================\n\n- ``StrippedValidTextLine`` should accept single character lines.\n\n1.13.0 (2019-05-22)\n===================\n\n- Ensure ``StrippedValidTextLine`` correctly recognizes single character values\n as stripped. Previously, 'b' would have been rejected.\n\n1.12.0 (2018-10-10)\n===================\n\n- JSON schemas report the schema for ``IObject`` fields\n and the schemas for the possible fields in ``IVariant``.\n\n- Fields in JSON schemas may specify a JSON-serializable dictionary\n to be passed as the ``application_info`` schema value. See `issue 44\n <https://github.com/NextThought/nti.schema/issues/44>`_.\n\n- JSON schemas now output more constraints automatically. See `issue\n 47 <https://github.com/NextThought/nti.schema/pull/48>`_.\n\n1.11.0 (2018-10-10)\n===================\n\n- JSON schemas now include nested ``value_type`` and ``key_type`` for\n collection and mapping fields. See `issue 42\n <https://github.com/NextThought/nti.schema/issues/42>`_.\n\n- JSON schemas now include (translated) ``title`` and ``description``\n values for fields. See `issue 41\n <https://github.com/NextThought/nti.schema/issues/41>`_.\n\n\n1.10.0 (2018-10-04)\n===================\n\n- Add ``nti.schema.fieldproperty.field_name`` to compensate for the\n mangling that ``FieldPropertyStoredThroughField`` does.\n\n\n1.9.2 (2018-10-04)\n==================\n\n- Fix ``Variant`` and other implementations of ``IFromObject`` to stop\n passing known non-text values to ``fromUnicode`` methods. This only\n worked with certain fields (such as ``zope.schema.Number``) that\n could accept non-text values, usually by implementation accident,\n and could have surprising consequences. Instead, non-text values\n will be passed to the ``validate`` method.\n\n- Fix ``Variant`` to stop double-validating values. The underlying\n ``fromUnicode``, ``fromBytes`` or ``fromObject`` methods were\n supposed to already validate.\n\n1.9.1 (2018-10-03)\n==================\n\n- Make ``VariantValidationError`` and ``Variant`` have more useful\n string representations.\n\n- Make ``fromObject`` methods more gracefully handle an AttributeError\n raised by an underlying ``fromUnicode`` method on non-string input\n (such as None). This is especially helpful for ``Variant`` fields\n because they can catch the error and continue to the next field.\n\n- Fix ``Variant``, ``TupleFromObject``, ``DictFromObject``,\n ``ListFromObject`` and ``ListOrTupleFromObject`` to allow the\n ``missing_value`` (which defaults to ``None``) in their\n ``fromObject`` methods; passing that value in simply returns it\n without raising an exception if the field is not required. If the\n field is required, a ``RequiredMissing`` is raised. Previously the\n sequences raised a ``WrongType`` error, while ``Variant`` *may* or\n *may not* have raised an error, depending on the underlying fields\n in use.\n\n\n1.9.0 (2018-10-02)\n==================\n\n- ``Variant`` objects now automatically add ``fromObject`` support to\n ``ICollection`` and ``IMapping`` fields that do not already provide\n it, if their ``value_type`` (and ``key_type``) qualify by being\n either an ``Object`` field, or something that provides\n ``IFromObject`` or can be made to, such as a collection or mapping.\n\n\n1.8.0 (2018-09-28)\n==================\n\n- Add ``VariantValidationError``, an error raised by variant fields\n when none of their constituent fields could adapt or validate the\n value.\n\n\n1.7.0 (2018-09-19)\n==================\n\n- Add support for ``IFromBytes`` in zope.schema 4.8.0.\n\n- The ``Variant`` and ``ListOrTupleFromObject``, ``TupleFromObject``,\n ``DictFromObject`` fields all have tweaked behaviour in\n ``fromObject``. If the incoming value is a bytestring or text\n string, the underlying field's ``fromBytes`` and ``fromUnicode``\n will be called in preference to a ``fromObject``, if that method is\n implemented.\n\n- ``ValidSet`` and ``UniqueIterable`` now implement ``fromObject``.\n\n- All fields that implement ``fromObject`` now accept an ``Object``\n field for their ``value_type`` (and ``key_type`` in the case of\n ``DictFromObject``) and will attempt to adapt objects that do not\n provide the schema in ``fromObject``.\n\n1.6.0 (2018-09-18)\n==================\n\n- Adjust the deprecated ``zope.schema.interfaces.InvalidValue`` to be\n a simple alias for ``zope.schema.interfaces.InvalidValue`` (while\n preserving the constructor) for improved backwards compatibility.\n\n\n1.5.0 (2018-09-11)\n==================\n\n- Add support for zope.schema 4.7.0; drop support for older versions.\n\n\n1.4.2 (2018-09-10)\n==================\n\n- Fix the ``repr`` of ``nti.schema.interfaces.InvalidValue``. See\n `issue 26 <https://github.com/NextThought/nti.schema/issues/26>`_.\n\n- ``nti.schema.jsonschema`` turns more abstract field types into\n concrete types. See `issue 29 <https://github.com/NextThought/nti.schema/issues/29>`_.\n\n1.4.1 (2018-09-10)\n==================\n\n- Make ``nti.schema.interfaces.InvalidValue`` a class again. It is\n deprecated. See `issue 24 <https://github.com/NextThought/nti.schema/issues/24>`_.\n\n\n1.4.0 (2018-09-10)\n==================\n\n- Drop support for ``dm.zope.schema`` fields, in particular the\n ``Object`` field. The validation performed by ``zope.schema.Object``\n is much improved.\n\n- Drop support for ``zope.schema`` older than 4.6.1.\n\n- Deprecate ``nti.schema.field.Number``.\n\n- Add support for Python 3.7.\n\n1.3.3 (2018-09-07)\n==================\n\n- Minor fix for changes in zope.schema 4.6.0 (import\n ``BeforeObjectAssignedEvent`` from its new, but still private, location).\n\n\n1.3.2 (2017-10-24)\n==================\n\n- Depend on zope.deferredimport >= 4.2.1 to be able to generate Sphinx\n documentation.\n- Clean up code to match PEP8.\n\n\n1.3.1 (2017-10-18)\n==================\n\n- Fix an ``UnboundLocalError`` on Python 3 in the ``Variant`` field.\n See `issue 14 <https://github.com/NextThought/nti.schema/issues/14>`_.\n\n\n1.3.0 (2017-07-06)\n==================\n\n- Drop the Python 2 dependency on ``plone.i18n`` in favor of the new\n library ``nti.i18n``, which supports Python 3. If ``plone.i18n`` is\n installed, it *should not* be configured (ZCML), but its utility\n objects can be looked up by either interface.\n\n\n1.2.0 (2017-05-17)\n==================\n\n- Remove use of ``unicode_literals``.\n\n- Add support for Python 3.6.\n\n- The ``SchemaConfigured`` constructor doesn't hide errors when\n checking for properties on Python 2. See `issue 11\n <https://github.com/NextThought/nti.schema/issues/11>`_.\n\n\n1.1.3 (2017-01-17)\n==================\n\n- Add info to minLength validation message.\n\n\n1.1.2 (2016-09-14)\n==================\n\n- Add ``Acquisition`` and ``zope.event`` as install dependencies.\n Previously they were only pulled in via the ``test`` extra.\n\n\n1.1.1 (2016-09-08)\n==================\n\n- Substantial speedups to the hash functions generated by ``EqHash``.\n- Substantial speedups to the equality functions generated by ``EqHash``.\n\n1.1.0 (2016-07-29)\n==================\n- Add support for Python 3. *Note* the countries vocabulary will not\n be complete on Python 3.\n- Drop the ``dolmen.builtins`` dependency.\n- Drop the ``dm.zope.schema`` dependency.\n- The ``plone.i18n`` dependency is Python 2 only (and can even be\n removed).\n- The matchers in ``nti.schema.testing`` have been moved to\n ``nti.testing.matchers``.\n- Using ``AdaptingFieldProperty`` will now raise the more specific\n ``SchemaNotProvided`` error instead of a ``TypeError`` if adapting\n the value fails.\n- ``EqHash`` has moved from ``nti.schema.schema`` to\n ``nti.schema.eqhash``. A compatibility shim remains.\n",
"bugtrack_url": null,
"license": "Apache",
"summary": "Zope schema related support",
"version": "1.18.0",
"project_urls": {
"Homepage": "https://github.com/OpenNTI/nti.schema"
},
"split_keywords": [
"zope",
"schema"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "521e850ffa8f2fc0f3f238e2a4bed69b10b33edcc1e84d4134fa0cfceb6cded9",
"md5": "aefa54bda8967715956ec116223e5d3b",
"sha256": "5d8a7cb4f9e4e26af0e54932ec375421b6456a21bafc7341e9430ae407101cbd"
},
"downloads": -1,
"filename": "nti.schema-1.18.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "aefa54bda8967715956ec116223e5d3b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 54482,
"upload_time": "2024-11-18T14:42:09",
"upload_time_iso_8601": "2024-11-18T14:42:09.367397Z",
"url": "https://files.pythonhosted.org/packages/52/1e/850ffa8f2fc0f3f238e2a4bed69b10b33edcc1e84d4134fa0cfceb6cded9/nti.schema-1.18.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7ae44830c2f9f7a555a81c7ad36f3edef2d86f36a2107849c59c555e35241118",
"md5": "3f8f4f5ddcf54fb7379f723acb03bf90",
"sha256": "08903e3d41e716aa7d310dae634927e1a6dbe727f421d09d98e4ec0aa1309485"
},
"downloads": -1,
"filename": "nti_schema-1.18.0.tar.gz",
"has_sig": false,
"md5_digest": "3f8f4f5ddcf54fb7379f723acb03bf90",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 63938,
"upload_time": "2024-11-18T14:42:11",
"upload_time_iso_8601": "2024-11-18T14:42:11.285943Z",
"url": "https://files.pythonhosted.org/packages/7a/e4/4830c2f9f7a555a81c7ad36f3edef2d86f36a2107849c59c555e35241118/nti_schema-1.18.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-18 14:42:11",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "OpenNTI",
"github_project": "nti.schema",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"tox": true,
"lcname": "nti.schema"
}