This commit is contained in:
Iliyan Angelov
2025-12-01 06:50:10 +02:00
parent 91f51bc6fe
commit 62c1fe5951
4682 changed files with 544807 additions and 31208 deletions

View File

@@ -0,0 +1,202 @@
Metadata-Version: 2.4
Name: marshmallow
Version: 4.1.0
Summary: A lightweight library for converting complex datatypes to and from native Python datatypes.
Author-email: Steven Loria <oss@stevenloria.com>
Maintainer-email: Steven Loria <oss@stevenloria.com>, Jérôme Lafréchoux <jerome@jolimont.fr>, Jared Deckard <jared@shademaps.com>
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
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
License-File: LICENSE
Requires-Dist: backports-datetime-fromisoformat; python_version < '3.11'
Requires-Dist: typing-extensions; python_version < '3.11'
Requires-Dist: marshmallow[tests] ; extra == "dev"
Requires-Dist: tox ; extra == "dev"
Requires-Dist: pre-commit>=3.5,<5.0 ; extra == "dev"
Requires-Dist: autodocsumm==0.2.14 ; extra == "docs"
Requires-Dist: furo==2025.9.25 ; extra == "docs"
Requires-Dist: sphinx-copybutton==0.5.2 ; extra == "docs"
Requires-Dist: sphinx-issues==5.0.1 ; extra == "docs"
Requires-Dist: sphinx==8.2.3 ; extra == "docs"
Requires-Dist: sphinxext-opengraph==0.13.0 ; extra == "docs"
Requires-Dist: pytest ; extra == "tests"
Requires-Dist: simplejson ; extra == "tests"
Project-URL: Changelog, https://marshmallow.readthedocs.io/en/latest/changelog.html
Project-URL: Funding, https://opencollective.com/marshmallow
Project-URL: Issues, https://github.com/marshmallow-code/marshmallow/issues
Project-URL: Source, https://github.com/marshmallow-code/marshmallow
Project-URL: Tidelift, https://tidelift.com/subscription/pkg/pypi-marshmallow?utm_source=pypi-marshmallow&utm_medium=pypi
Provides-Extra: dev
Provides-Extra: docs
Provides-Extra: tests
********************************************
marshmallow: simplified object serialization
********************************************
|pypi| |build-status| |pre-commit| |docs|
.. |pypi| image:: https://badgen.net/pypi/v/marshmallow
:target: https://pypi.org/project/marshmallow/
:alt: Latest version
.. |build-status| image:: https://github.com/marshmallow-code/marshmallow/actions/workflows/build-release.yml/badge.svg
:target: https://github.com/marshmallow-code/marshmallow/actions/workflows/build-release.yml
:alt: Build status
.. |pre-commit| image:: https://results.pre-commit.ci/badge/github/marshmallow-code/marshmallow/dev.svg
:target: https://results.pre-commit.ci/latest/github/marshmallow-code/marshmallow/dev
:alt: pre-commit.ci status
.. |docs| image:: https://readthedocs.org/projects/marshmallow/badge/
:target: https://marshmallow.readthedocs.io/
:alt: Documentation
.. start elevator-pitch
**marshmallow** is an ORM/ODM/framework-agnostic library for converting complex datatypes, such as objects, to and from native Python datatypes.
.. code-block:: python
from datetime import date
from pprint import pprint
from marshmallow import Schema, fields
class ArtistSchema(Schema):
name = fields.Str()
class AlbumSchema(Schema):
title = fields.Str()
release_date = fields.Date()
artist = fields.Nested(ArtistSchema())
bowie = dict(name="David Bowie")
album = dict(artist=bowie, title="Hunky Dory", release_date=date(1971, 12, 17))
schema = AlbumSchema()
result = schema.dump(album)
pprint(result, indent=2)
# { 'artist': {'name': 'David Bowie'},
# 'release_date': '1971-12-17',
# 'title': 'Hunky Dory'}
In short, marshmallow schemas can be used to:
- **Validate** input data.
- **Deserialize** input data to app-level objects.
- **Serialize** app-level objects to primitive Python types. The serialized objects can then be rendered to standard formats such as JSON for use in an HTTP API.
Get it now
==========
.. code-block:: shell-session
$ pip install -U marshmallow
.. end elevator-pitch
Documentation
=============
Full documentation is available at https://marshmallow.readthedocs.io/ .
Ecosystem
=========
A list of marshmallow-related libraries can be found at the GitHub wiki here:
https://github.com/marshmallow-code/marshmallow/wiki/Ecosystem
Credits
=======
Contributors
------------
This project exists thanks to all the people who contribute.
**You're highly encouraged to participate in marshmallow's development.**
Check out the `Contributing Guidelines <https://marshmallow.readthedocs.io/en/latest/contributing.html>`_ to see how you can help.
Thank you to all who have already contributed to marshmallow!
.. image:: https://opencollective.com/marshmallow/contributors.svg?width=890&button=false
:target: https://marshmallow.readthedocs.io/en/latest/authors.html
:alt: Contributors
Backers
-------
If you find marshmallow useful, please consider supporting the team with
a donation. Your donation helps move marshmallow forward.
Thank you to all our backers! [`Become a backer`_]
.. _`Become a backer`: https://opencollective.com/marshmallow#backer
.. image:: https://opencollective.com/marshmallow/backers.svg?width=890
:target: https://opencollective.com/marshmallow#backers
:alt: Backers
Sponsors
--------
.. start sponsors
marshmallow is sponsored by `Route4Me <https://route4me.com>`_.
.. image:: https://github.com/user-attachments/assets/018c2e23-032e-4a11-98da-8b6dc25b9054
:target: https://route4me.com
:alt: Routing Planner
Support this project by becoming a sponsor (or ask your company to support this project by becoming a sponsor).
Your logo will be displayed here with a link to your website. [`Become a sponsor`_]
.. _`Become a sponsor`: https://opencollective.com/marshmallow#sponsor
.. end sponsors
Professional Support
====================
Professionally-supported marshmallow is now available through the
`Tidelift Subscription <https://tidelift.com/subscription/pkg/pypi-marshmallow?utm_source=pypi-marshmallow&utm_medium=readme>`_.
Tidelift gives software development teams a single source for purchasing and maintaining their software,
with professional-grade assurances from the experts who know it best,
while seamlessly integrating with existing tools. [`Get professional support`_]
.. _`Get professional support`: https://tidelift.com/subscription/pkg/pypi-marshmallow?utm_source=marshmallow&utm_medium=referral&utm_campaign=github
.. image:: https://user-images.githubusercontent.com/2379650/45126032-50b69880-b13f-11e8-9c2c-abd16c433495.png
:target: https://tidelift.com/subscription/pkg/pypi-marshmallow?utm_source=pypi-marshmallow&utm_medium=readme
:alt: Get supported marshmallow with Tidelift
Project Links
=============
- Docs: https://marshmallow.readthedocs.io/
- Changelog: https://marshmallow.readthedocs.io/en/latest/changelog.html
- Contributing Guidelines: https://marshmallow.readthedocs.io/en/latest/contributing.html
- PyPI: https://pypi.org/project/marshmallow/
- Issues: https://github.com/marshmallow-code/marshmallow/issues
- Donate: https://opencollective.com/marshmallow
License
=======
MIT licensed. See the bundled `LICENSE <https://github.com/marshmallow-code/marshmallow/blob/dev/LICENSE>`_ file for more details.

View File

@@ -0,0 +1,34 @@
marshmallow-4.1.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
marshmallow-4.1.0.dist-info/METADATA,sha256=JQA9KW9qwD2NGhc3sAF4VSU3xIfjssg7LJn39lq8we0,7439
marshmallow-4.1.0.dist-info/RECORD,,
marshmallow-4.1.0.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
marshmallow-4.1.0.dist-info/licenses/LICENSE,sha256=kGtdkFHkJhRMsXOtkRZnuOvQWpxYTCwmwTWzKj7RIAE,1064
marshmallow/__init__.py,sha256=9XHBRTrPmbVaU-Z8CWo8nlcf9Z5VvkRD37d1luJuAaM,573
marshmallow/__pycache__/__init__.cpython-312.pyc,,
marshmallow/__pycache__/class_registry.cpython-312.pyc,,
marshmallow/__pycache__/constants.cpython-312.pyc,,
marshmallow/__pycache__/decorators.cpython-312.pyc,,
marshmallow/__pycache__/error_store.cpython-312.pyc,,
marshmallow/__pycache__/exceptions.cpython-312.pyc,,
marshmallow/__pycache__/fields.cpython-312.pyc,,
marshmallow/__pycache__/orderedset.cpython-312.pyc,,
marshmallow/__pycache__/schema.cpython-312.pyc,,
marshmallow/__pycache__/types.cpython-312.pyc,,
marshmallow/__pycache__/utils.cpython-312.pyc,,
marshmallow/__pycache__/validate.cpython-312.pyc,,
marshmallow/class_registry.py,sha256=HTC9srCEaRsiy5L_vUKQso7IQfeZeRXxZfz4_2NitoM,3029
marshmallow/constants.py,sha256=v86zJ9nywyN7euiHQw8hJSkuPyeuflUvv0jZVtfre8M,415
marshmallow/decorators.py,sha256=maOozW03vQ7k9qZqZ_TvTYR3w--kb0NfkAOy1Q0TnZ0,10165
marshmallow/error_store.py,sha256=iCPSdw8nJGiS4fjWuIAY1aSI_Hhckcdo3l_g-7pjaMw,2240
marshmallow/exceptions.py,sha256=1L3ZHwQNelWU5ujIPsON5tZ6WQPk64pBGWNyfwhz608,2273
marshmallow/experimental/__init__.py,sha256=5_iaUmT7_f6QML2LJXmA3xqgk5UBAgCeIazHtC1GVgc,147
marshmallow/experimental/__pycache__/__init__.cpython-312.pyc,,
marshmallow/experimental/__pycache__/context.cpython-312.pyc,,
marshmallow/experimental/context.py,sha256=_4KF6sNK6pE0MckyYTGXmU3hJL2tY-TN4oVmE_eDob0,2040
marshmallow/fields.py,sha256=DxFiqatexaj9tbs395Pre_Sr2h3BdlF2scSKxcJLV1M,72154
marshmallow/orderedset.py,sha256=adVCG4HtfYFexqZThiFsiwc_i0g8LNWI_bF6cjMz2r0,2953
marshmallow/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
marshmallow/schema.py,sha256=tgcgL1wqJTMd6irpGL7x89lDUNP4cPRCNPY1y6-kBeI,49955
marshmallow/types.py,sha256=X2DVsg8H7fFqco5yK2tZDwoqjxRPFjVurEdT-YogNC8,1161
marshmallow/utils.py,sha256=YI38vVbIwa9T1kPrnW8sF6HmTbi0MFZYNzINKwtbxew,5334
marshmallow/validate.py,sha256=X6uhUir-2DqUVzKMkEN6I8LrLPJ1mbL8RECRggByllU,23931

View File

@@ -0,0 +1,4 @@
Wheel-Version: 1.0
Generator: flit 3.12.0
Root-Is-Purelib: true
Tag: py3-none-any

View File

@@ -0,0 +1,19 @@
Copyright Steven Loria and contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.