Colour - Demosaicing
====================
.. start-badges
|actions| |coveralls| |codacy| |version|
.. |actions| image:: https://img.shields.io/github/actions/workflow/status/colour-science/colour-demosaicing/.github/workflows/continuous-integration-quality-unit-tests.yml?branch=develop&style=flat-square
:target: https://github.com/colour-science/colour-demosaicing/actions
:alt: Develop Build Status
.. |coveralls| image:: http://img.shields.io/coveralls/colour-science/colour-demosaicing/develop.svg?style=flat-square
:target: https://coveralls.io/r/colour-science/colour-demosaicing
:alt: Coverage Status
.. |codacy| image:: https://img.shields.io/codacy/grade/2862b4f2217742ae83c972d7e3af44d7/develop.svg?style=flat-square
:target: https://app.codacy.com/gh/colour-science/colour-demosaicing
:alt: Code Grade
.. |version| image:: https://img.shields.io/pypi/v/colour-demosaicing.svg?style=flat-square
:target: https://pypi.org/project/colour-demosaicing
:alt: Package Version
.. end-badges
A `Python <https://www.python.org>`__ package implementing various
CFA (Colour Filter Array) demosaicing algorithms and related utilities.
It is open source and freely available under the
`BSD-3-Clause <https://opensource.org/licenses/BSD-3-Clause>`__ terms.
.. image:: https://raw.githubusercontent.com/colour-science/colour-demosaicing/master/docs/_static/Demosaicing_001.png
.. contents:: **Table of Contents**
:backlinks: none
:depth: 2
.. sectnum::
Features
--------
The following CFA (Colour Filter Array) demosaicing algorithms are implemented:
- Bilinear
- Malvar (2004)
- DDFAPD - Menon (2007)
Examples
^^^^^^^^
Various usage examples are available from the
`examples directory <https://github.com/colour-science/colour-demosaicing/tree/master/colour_demosaicing/examples>`__.
User Guide
----------
Installation
^^^^^^^^^^^^
Because of their size, the resources dependencies needed to run the various
examples and unit tests are not provided within the Pypi package. They are
separately available as
`Git Submodules <https://git-scm.com/book/en/v2/Git-Tools-Submodules>`__
when cloning the
`repository <https://github.com/colour-science/colour-demosaicing>`__.
Primary Dependencies
~~~~~~~~~~~~~~~~~~~~
**Colour - Demosaicing** requires various dependencies in order to run:
- `python >= 3.10, < 3.14 <https://www.python.org/download/releases>`__
- `colour-science >= 4.4 <https://pypi.org/project/colour-science>`__
- `imageio >= 2, < 3 <https://imageio.github.io>`__
- `numpy >= 1.24, < 3 <https://pypi.org/project/numpy>`__
- `scipy >= 1.10, < 2 <https://pypi.org/project/scipy>`__
Pypi
~~~~
Once the dependencies are satisfied, **Colour - Demosaicing** can be installed from
the `Python Package Index <http://pypi.python.org/pypi/colour-demosaicing>`__ by
issuing this command in a shell::
pip install --user colour-demosaicing
The overall development dependencies are installed as follows::
pip install --user 'colour-demosaicing[development]'
Contributing
^^^^^^^^^^^^
If you would like to contribute to `Colour - Demosaicing <https://github.com/colour-science/colour-demosaicing>`__,
please refer to the following `Contributing <https://www.colour-science.org/contributing>`__
guide for `Colour <https://github.com/colour-science/colour>`__.
Bibliography
^^^^^^^^^^^^
The bibliography is available in the repository in
`BibTeX <https://github.com/colour-science/colour-demosaicing/blob/develop/BIBLIOGRAPHY.bib>`__
format.
API Reference
-------------
The main technical reference for `Colour - Demosaicing <https://github.com/colour-science/colour-demosaicing>`__
is the `API Reference <https://colour-demosaicing.readthedocs.io/en/latest/reference.html>`__.
Code of Conduct
---------------
The *Code of Conduct*, adapted from the `Contributor Covenant 1.4 <https://www.contributor-covenant.org/version/1/4/code-of-conduct.html>`__,
is available on the `Code of Conduct <https://www.colour-science.org/code-of-conduct>`__ page.
Contact & Social
----------------
The *Colour Developers* can be reached via different means:
- `Email <mailto:colour-developers@colour-science.org>`__
- `Facebook <https://www.facebook.com/python.colour.science>`__
- `Github Discussions <https://github.com/colour-science/colour-demosaicing/discussions>`__
- `Gitter <https://gitter.im/colour-science/colour>`__
- `Twitter <https://twitter.com/colour_science>`__
About
-----
| **Colour - Demosaicing** by Colour Developers
| Copyright 2015 Colour Developers – `colour-developers@colour-science.org <colour-developers@colour-science.org>`__
| This software is released under terms of BSD-3-Clause: https://opensource.org/licenses/BSD-3-Clause
| `https://github.com/colour-science/colour-demosaicing <https://github.com/colour-science/colour-demosaicing>`__
Raw data
{
"_id": null,
"home_page": null,
"name": "colour-demosaicing",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.14,>=3.10",
"maintainer_email": "Colour Developers <colour-developers@colour-science.org>",
"keywords": "bayer, cfa, color, color-science, color-space, color-spaces, colorspace, colorspaces, colour, colour-science, colour-space, colour-spaces, colourspace, colourspaces, de-mosaicing, debayering, demosaicing, demosaicking, python, raw",
"author": null,
"author_email": "Colour Developers <colour-developers@colour-science.org>",
"download_url": "https://files.pythonhosted.org/packages/38/31/6b0361591fa221f6accd7758bf35906a6e1889e7035988310421f26a3542/colour_demosaicing-0.2.6.tar.gz",
"platform": null,
"description": "Colour - Demosaicing\n====================\n\n.. start-badges\n\n|actions| |coveralls| |codacy| |version|\n\n.. |actions| image:: https://img.shields.io/github/actions/workflow/status/colour-science/colour-demosaicing/.github/workflows/continuous-integration-quality-unit-tests.yml?branch=develop&style=flat-square\n :target: https://github.com/colour-science/colour-demosaicing/actions\n :alt: Develop Build Status\n.. |coveralls| image:: http://img.shields.io/coveralls/colour-science/colour-demosaicing/develop.svg?style=flat-square\n :target: https://coveralls.io/r/colour-science/colour-demosaicing\n :alt: Coverage Status\n.. |codacy| image:: https://img.shields.io/codacy/grade/2862b4f2217742ae83c972d7e3af44d7/develop.svg?style=flat-square\n :target: https://app.codacy.com/gh/colour-science/colour-demosaicing\n :alt: Code Grade\n.. |version| image:: https://img.shields.io/pypi/v/colour-demosaicing.svg?style=flat-square\n :target: https://pypi.org/project/colour-demosaicing\n :alt: Package Version\n\n.. end-badges\n\nA `Python <https://www.python.org>`__ package implementing various\nCFA (Colour Filter Array) demosaicing algorithms and related utilities.\n\nIt is open source and freely available under the\n`BSD-3-Clause <https://opensource.org/licenses/BSD-3-Clause>`__ terms.\n\n.. image:: https://raw.githubusercontent.com/colour-science/colour-demosaicing/master/docs/_static/Demosaicing_001.png\n\n.. contents:: **Table of Contents**\n :backlinks: none\n :depth: 2\n\n.. sectnum::\n\nFeatures\n--------\n\nThe following CFA (Colour Filter Array) demosaicing algorithms are implemented:\n\n- Bilinear\n- Malvar (2004)\n- DDFAPD - Menon (2007)\n\nExamples\n^^^^^^^^\n\nVarious usage examples are available from the\n`examples directory <https://github.com/colour-science/colour-demosaicing/tree/master/colour_demosaicing/examples>`__.\n\nUser Guide\n----------\n\nInstallation\n^^^^^^^^^^^^\n\nBecause of their size, the resources dependencies needed to run the various\nexamples and unit tests are not provided within the Pypi package. They are\nseparately available as\n`Git Submodules <https://git-scm.com/book/en/v2/Git-Tools-Submodules>`__\nwhen cloning the\n`repository <https://github.com/colour-science/colour-demosaicing>`__.\n\nPrimary Dependencies\n~~~~~~~~~~~~~~~~~~~~\n\n**Colour - Demosaicing** requires various dependencies in order to run:\n\n- `python >= 3.10, < 3.14 <https://www.python.org/download/releases>`__\n- `colour-science >= 4.4 <https://pypi.org/project/colour-science>`__\n- `imageio >= 2, < 3 <https://imageio.github.io>`__\n- `numpy >= 1.24, < 3 <https://pypi.org/project/numpy>`__\n- `scipy >= 1.10, < 2 <https://pypi.org/project/scipy>`__\n\nPypi\n~~~~\n\nOnce the dependencies are satisfied, **Colour - Demosaicing** can be installed from\nthe `Python Package Index <http://pypi.python.org/pypi/colour-demosaicing>`__ by\nissuing this command in a shell::\n\n pip install --user colour-demosaicing\n\nThe overall development dependencies are installed as follows::\n\n pip install --user 'colour-demosaicing[development]'\n\nContributing\n^^^^^^^^^^^^\n\nIf you would like to contribute to `Colour - Demosaicing <https://github.com/colour-science/colour-demosaicing>`__,\nplease refer to the following `Contributing <https://www.colour-science.org/contributing>`__\nguide for `Colour <https://github.com/colour-science/colour>`__.\n\nBibliography\n^^^^^^^^^^^^\n\nThe bibliography is available in the repository in\n`BibTeX <https://github.com/colour-science/colour-demosaicing/blob/develop/BIBLIOGRAPHY.bib>`__\nformat.\n\nAPI Reference\n-------------\n\nThe main technical reference for `Colour - Demosaicing <https://github.com/colour-science/colour-demosaicing>`__\nis the `API Reference <https://colour-demosaicing.readthedocs.io/en/latest/reference.html>`__.\n\nCode of Conduct\n---------------\n\nThe *Code of Conduct*, adapted from the `Contributor Covenant 1.4 <https://www.contributor-covenant.org/version/1/4/code-of-conduct.html>`__,\nis available on the `Code of Conduct <https://www.colour-science.org/code-of-conduct>`__ page.\n\nContact & Social\n----------------\n\nThe *Colour Developers* can be reached via different means:\n\n- `Email <mailto:colour-developers@colour-science.org>`__\n- `Facebook <https://www.facebook.com/python.colour.science>`__\n- `Github Discussions <https://github.com/colour-science/colour-demosaicing/discussions>`__\n- `Gitter <https://gitter.im/colour-science/colour>`__\n- `Twitter <https://twitter.com/colour_science>`__\n\nAbout\n-----\n\n| **Colour - Demosaicing** by Colour Developers\n| Copyright 2015 Colour Developers \u2013 `colour-developers@colour-science.org <colour-developers@colour-science.org>`__\n| This software is released under terms of BSD-3-Clause: https://opensource.org/licenses/BSD-3-Clause\n| `https://github.com/colour-science/colour-demosaicing <https://github.com/colour-science/colour-demosaicing>`__\n",
"bugtrack_url": null,
"license": "BSD-3-Clause",
"summary": "CFA (Colour Filter Array) Demosaicing Algorithms for Python",
"version": "0.2.6",
"project_urls": {
"Changelog": "https://github.com/colour-science/colour-demosaicing/releases",
"Documentation": "https://colour-demosaicing.readthedocs.org",
"Homepage": "https://www.colour-science.org",
"Issues": "https://github.com/colour-science/colour-demosaicing/issues",
"Repository": "https://github.com/colour-science/colour-demosaicing"
},
"split_keywords": [
"bayer",
" cfa",
" color",
" color-science",
" color-space",
" color-spaces",
" colorspace",
" colorspaces",
" colour",
" colour-science",
" colour-space",
" colour-spaces",
" colourspace",
" colourspaces",
" de-mosaicing",
" debayering",
" demosaicing",
" demosaicking",
" python",
" raw"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7f550bef3f4b9bf61b21ed0bbf4d1535984c07a84b9bba06c87f2be8a260b099",
"md5": "f1f62c026abf8556af56df1073c11557",
"sha256": "0dc47f732867fb218ee75be108ed8988716563cc5ea4ceb8967bc41a98495bef"
},
"downloads": -1,
"filename": "colour_demosaicing-0.2.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f1f62c026abf8556af56df1073c11557",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.14,>=3.10",
"size": 3263094,
"upload_time": "2024-10-11T02:07:21",
"upload_time_iso_8601": "2024-10-11T02:07:21.630460Z",
"url": "https://files.pythonhosted.org/packages/7f/55/0bef3f4b9bf61b21ed0bbf4d1535984c07a84b9bba06c87f2be8a260b099/colour_demosaicing-0.2.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "38316b0361591fa221f6accd7758bf35906a6e1889e7035988310421f26a3542",
"md5": "1f1c61cb4d9e40247287edd8e0dc8929",
"sha256": "19e6f56cd4b7ae8340da6e9a0e8f7d06ddae49d86536c63d8c2be98adc617e28"
},
"downloads": -1,
"filename": "colour_demosaicing-0.2.6.tar.gz",
"has_sig": false,
"md5_digest": "1f1c61cb4d9e40247287edd8e0dc8929",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.14,>=3.10",
"size": 3999027,
"upload_time": "2024-10-11T02:07:16",
"upload_time_iso_8601": "2024-10-11T02:07:16.341598Z",
"url": "https://files.pythonhosted.org/packages/38/31/6b0361591fa221f6accd7758bf35906a6e1889e7035988310421f26a3542/colour_demosaicing-0.2.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-11 02:07:16",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "colour-science",
"github_project": "colour-demosaicing",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "accessible-pygments",
"specs": [
[
"==",
"0.0.5"
]
]
},
{
"name": "alabaster",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "anyio",
"specs": [
[
"==",
"4.6.0"
]
]
},
{
"name": "appnope",
"specs": [
[
"==",
"0.1.4"
]
]
},
{
"name": "argon2-cffi",
"specs": [
[
"==",
"23.1.0"
]
]
},
{
"name": "argon2-cffi-bindings",
"specs": [
[
"==",
"21.2.0"
]
]
},
{
"name": "arrow",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "asttokens",
"specs": [
[
"==",
"2.4.1"
]
]
},
{
"name": "async-lru",
"specs": [
[
"==",
"2.0.4"
]
]
},
{
"name": "attrs",
"specs": [
[
"==",
"24.2.0"
]
]
},
{
"name": "babel",
"specs": [
[
"==",
"2.16.0"
]
]
},
{
"name": "backports-tarfile",
"specs": [
[
"==",
"1.2.0"
]
]
},
{
"name": "beautifulsoup4",
"specs": [
[
"==",
"4.12.3"
]
]
},
{
"name": "biblib-simple",
"specs": [
[
"==",
"0.1.2"
]
]
},
{
"name": "bleach",
"specs": [
[
"==",
"6.1.0"
]
]
},
{
"name": "certifi",
"specs": [
[
"==",
"2024.8.30"
]
]
},
{
"name": "cffi",
"specs": [
[
"==",
"1.17.1"
]
]
},
{
"name": "cfgv",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "charset-normalizer",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "click",
"specs": [
[
"==",
"8.1.7"
]
]
},
{
"name": "colorama",
"specs": [
[
"==",
"0.4.6"
]
]
},
{
"name": "colour-science",
"specs": [
[
"==",
"0.4.5"
]
]
},
{
"name": "comm",
"specs": [
[
"==",
"0.2.2"
]
]
},
{
"name": "contourpy",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "coverage",
"specs": [
[
"==",
"7.6.2"
]
]
},
{
"name": "coveralls",
"specs": [
[
"==",
"4.0.1"
]
]
},
{
"name": "cryptography",
"specs": [
[
"==",
"43.0.1"
]
]
},
{
"name": "cycler",
"specs": [
[
"==",
"0.12.1"
]
]
},
{
"name": "debugpy",
"specs": [
[
"==",
"1.8.7"
]
]
},
{
"name": "decorator",
"specs": [
[
"==",
"5.1.1"
]
]
},
{
"name": "defusedxml",
"specs": [
[
"==",
"0.7.1"
]
]
},
{
"name": "distlib",
"specs": [
[
"==",
"0.3.9"
]
]
},
{
"name": "docopt",
"specs": [
[
"==",
"0.6.2"
]
]
},
{
"name": "docutils",
"specs": [
[
"==",
"0.21.2"
]
]
},
{
"name": "exceptiongroup",
"specs": [
[
"==",
"1.2.2"
]
]
},
{
"name": "execnet",
"specs": [
[
"==",
"2.1.1"
]
]
},
{
"name": "executing",
"specs": [
[
"==",
"2.1.0"
]
]
},
{
"name": "fastjsonschema",
"specs": [
[
"==",
"2.20.0"
]
]
},
{
"name": "filelock",
"specs": [
[
"==",
"3.16.1"
]
]
},
{
"name": "fonttools",
"specs": [
[
"==",
"4.54.1"
]
]
},
{
"name": "fqdn",
"specs": [
[
"==",
"1.5.1"
]
]
},
{
"name": "h11",
"specs": [
[
"==",
"0.14.0"
]
]
},
{
"name": "hatch",
"specs": [
[
"==",
"1.12.0"
]
]
},
{
"name": "hatchling",
"specs": [
[
"==",
"1.25.0"
]
]
},
{
"name": "httpcore",
"specs": [
[
"==",
"1.0.6"
]
]
},
{
"name": "httpx",
"specs": [
[
"==",
"0.27.2"
]
]
},
{
"name": "hyperlink",
"specs": [
[
"==",
"21.0.0"
]
]
},
{
"name": "identify",
"specs": [
[
"==",
"2.6.1"
]
]
},
{
"name": "idna",
"specs": [
[
"==",
"3.10"
]
]
},
{
"name": "imageio",
"specs": [
[
"==",
"2.35.1"
]
]
},
{
"name": "imagesize",
"specs": [
[
"==",
"1.4.1"
]
]
},
{
"name": "importlib-metadata",
"specs": [
[
"==",
"8.5.0"
]
]
},
{
"name": "iniconfig",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "invoke",
"specs": [
[
"==",
"2.2.0"
]
]
},
{
"name": "ipykernel",
"specs": [
[
"==",
"6.29.5"
]
]
},
{
"name": "ipython",
"specs": [
[
"==",
"8.28.0"
]
]
},
{
"name": "ipywidgets",
"specs": [
[
"==",
"8.1.5"
]
]
},
{
"name": "isoduration",
"specs": [
[
"==",
"20.11.0"
]
]
},
{
"name": "jaraco-classes",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "jaraco-context",
"specs": [
[
"==",
"6.0.1"
]
]
},
{
"name": "jaraco-functools",
"specs": [
[
"==",
"4.1.0"
]
]
},
{
"name": "jedi",
"specs": [
[
"==",
"0.19.1"
]
]
},
{
"name": "jeepney",
"specs": [
[
"==",
"0.8.0"
]
]
},
{
"name": "jinja2",
"specs": [
[
"==",
"3.1.4"
]
]
},
{
"name": "json5",
"specs": [
[
"==",
"0.9.25"
]
]
},
{
"name": "jsonpointer",
"specs": [
[
"==",
"3.0.0"
]
]
},
{
"name": "jsonschema",
"specs": [
[
"==",
"4.23.0"
]
]
},
{
"name": "jsonschema-specifications",
"specs": [
[
"==",
"2024.10.1"
]
]
},
{
"name": "jupyter",
"specs": [
[
"==",
"1.1.1"
]
]
},
{
"name": "jupyter-client",
"specs": [
[
"==",
"8.6.3"
]
]
},
{
"name": "jupyter-console",
"specs": [
[
"==",
"6.6.3"
]
]
},
{
"name": "jupyter-core",
"specs": [
[
"==",
"5.7.2"
]
]
},
{
"name": "jupyter-events",
"specs": [
[
"==",
"0.10.0"
]
]
},
{
"name": "jupyter-lsp",
"specs": [
[
"==",
"2.2.5"
]
]
},
{
"name": "jupyter-server",
"specs": [
[
"==",
"2.14.2"
]
]
},
{
"name": "jupyter-server-terminals",
"specs": [
[
"==",
"0.5.3"
]
]
},
{
"name": "jupyterlab",
"specs": [
[
"==",
"4.2.5"
]
]
},
{
"name": "jupyterlab-pygments",
"specs": [
[
"==",
"0.3.0"
]
]
},
{
"name": "jupyterlab-server",
"specs": [
[
"==",
"2.27.3"
]
]
},
{
"name": "jupyterlab-widgets",
"specs": [
[
"==",
"3.0.13"
]
]
},
{
"name": "keyring",
"specs": [
[
"==",
"25.4.1"
]
]
},
{
"name": "kiwisolver",
"specs": [
[
"==",
"1.4.7"
]
]
},
{
"name": "latexcodec",
"specs": [
[
"==",
"3.0.0"
]
]
},
{
"name": "markdown-it-py",
"specs": [
[
"==",
"3.0.0"
]
]
},
{
"name": "markupsafe",
"specs": [
[
"==",
"3.0.1"
]
]
},
{
"name": "matplotlib",
"specs": [
[
"==",
"3.9.2"
]
]
},
{
"name": "matplotlib-inline",
"specs": [
[
"==",
"0.1.7"
]
]
},
{
"name": "mdurl",
"specs": [
[
"==",
"0.1.2"
]
]
},
{
"name": "mistune",
"specs": [
[
"==",
"3.0.2"
]
]
},
{
"name": "more-itertools",
"specs": [
[
"==",
"10.5.0"
]
]
},
{
"name": "nbclient",
"specs": [
[
"==",
"0.10.0"
]
]
},
{
"name": "nbconvert",
"specs": [
[
"==",
"7.16.4"
]
]
},
{
"name": "nbformat",
"specs": [
[
"==",
"5.10.4"
]
]
},
{
"name": "nest-asyncio",
"specs": [
[
"==",
"1.6.0"
]
]
},
{
"name": "nh3",
"specs": [
[
"==",
"0.2.18"
]
]
},
{
"name": "nodeenv",
"specs": [
[
"==",
"1.9.1"
]
]
},
{
"name": "notebook",
"specs": [
[
"==",
"7.2.2"
]
]
},
{
"name": "notebook-shim",
"specs": [
[
"==",
"0.2.4"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"2.1.2"
]
]
},
{
"name": "overrides",
"specs": [
[
"==",
"7.7.0"
]
]
},
{
"name": "packaging",
"specs": [
[
"==",
"24.1"
]
]
},
{
"name": "pandocfilters",
"specs": [
[
"==",
"1.5.1"
]
]
},
{
"name": "parso",
"specs": [
[
"==",
"0.8.4"
]
]
},
{
"name": "pathspec",
"specs": [
[
"==",
"0.12.1"
]
]
},
{
"name": "pexpect",
"specs": [
[
"==",
"4.9.0"
]
]
},
{
"name": "pillow",
"specs": [
[
"==",
"10.4.0"
]
]
},
{
"name": "pkginfo",
"specs": [
[
"==",
"1.10.0"
]
]
},
{
"name": "platformdirs",
"specs": [
[
"==",
"4.3.6"
]
]
},
{
"name": "pluggy",
"specs": [
[
"==",
"1.5.0"
]
]
},
{
"name": "pre-commit",
"specs": [
[
"==",
"4.0.1"
]
]
},
{
"name": "prometheus-client",
"specs": [
[
"==",
"0.21.0"
]
]
},
{
"name": "prompt-toolkit",
"specs": [
[
"==",
"3.0.48"
]
]
},
{
"name": "psutil",
"specs": [
[
"==",
"6.0.0"
]
]
},
{
"name": "ptyprocess",
"specs": [
[
"==",
"0.7.0"
]
]
},
{
"name": "pure-eval",
"specs": [
[
"==",
"0.2.3"
]
]
},
{
"name": "pybtex",
"specs": [
[
"==",
"0.24.0"
]
]
},
{
"name": "pybtex-docutils",
"specs": [
[
"==",
"1.0.3"
]
]
},
{
"name": "pycparser",
"specs": [
[
"==",
"2.22"
]
]
},
{
"name": "pydata-sphinx-theme",
"specs": [
[
"==",
"0.15.4"
]
]
},
{
"name": "pygments",
"specs": [
[
"==",
"2.18.0"
]
]
},
{
"name": "pyparsing",
"specs": [
[
"==",
"3.1.4"
]
]
},
{
"name": "pyright",
"specs": [
[
"==",
"1.1.384"
]
]
},
{
"name": "pytest",
"specs": [
[
"==",
"8.3.3"
]
]
},
{
"name": "pytest-cov",
"specs": [
[
"==",
"5.0.0"
]
]
},
{
"name": "pytest-xdist",
"specs": [
[
"==",
"3.6.1"
]
]
},
{
"name": "python-dateutil",
"specs": [
[
"==",
"2.9.0.post0"
]
]
},
{
"name": "python-json-logger",
"specs": [
[
"==",
"2.0.7"
]
]
},
{
"name": "pywin32",
"specs": [
[
"==",
"307"
]
]
},
{
"name": "pywin32-ctypes",
"specs": [
[
"==",
"0.2.3"
]
]
},
{
"name": "pywinpty",
"specs": [
[
"==",
"2.0.13"
]
]
},
{
"name": "pyyaml",
"specs": [
[
"==",
"6.0.2"
]
]
},
{
"name": "pyzmq",
"specs": [
[
"==",
"26.2.0"
]
]
},
{
"name": "readme-renderer",
"specs": [
[
"==",
"44.0"
]
]
},
{
"name": "referencing",
"specs": [
[
"==",
"0.35.1"
]
]
},
{
"name": "requests",
"specs": [
[
"==",
"2.32.3"
]
]
},
{
"name": "requests-toolbelt",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "restructuredtext-lint",
"specs": [
[
"==",
"1.4.0"
]
]
},
{
"name": "rfc3339-validator",
"specs": [
[
"==",
"0.1.4"
]
]
},
{
"name": "rfc3986",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "rfc3986-validator",
"specs": [
[
"==",
"0.1.1"
]
]
},
{
"name": "rich",
"specs": [
[
"==",
"13.9.2"
]
]
},
{
"name": "rpds-py",
"specs": [
[
"==",
"0.20.0"
]
]
},
{
"name": "scipy",
"specs": [
[
"==",
"1.14.1"
]
]
},
{
"name": "secretstorage",
"specs": [
[
"==",
"3.3.3"
]
]
},
{
"name": "send2trash",
"specs": [
[
"==",
"1.8.3"
]
]
},
{
"name": "setuptools",
"specs": [
[
"==",
"75.1.0"
]
]
},
{
"name": "shellingham",
"specs": [
[
"==",
"1.5.4"
]
]
},
{
"name": "six",
"specs": [
[
"==",
"1.16.0"
]
]
},
{
"name": "sniffio",
"specs": [
[
"==",
"1.3.1"
]
]
},
{
"name": "snowballstemmer",
"specs": [
[
"==",
"2.2.0"
]
]
},
{
"name": "soupsieve",
"specs": [
[
"==",
"2.6"
]
]
},
{
"name": "sphinx",
"specs": [
[
"==",
"8.1.0"
]
]
},
{
"name": "sphinxcontrib-applehelp",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "sphinxcontrib-bibtex",
"specs": [
[
"==",
"2.6.3"
]
]
},
{
"name": "sphinxcontrib-devhelp",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "sphinxcontrib-htmlhelp",
"specs": [
[
"==",
"2.1.0"
]
]
},
{
"name": "sphinxcontrib-jsmath",
"specs": [
[
"==",
"1.0.1"
]
]
},
{
"name": "sphinxcontrib-qthelp",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "sphinxcontrib-serializinghtml",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "stack-data",
"specs": [
[
"==",
"0.6.3"
]
]
},
{
"name": "terminado",
"specs": [
[
"==",
"0.18.1"
]
]
},
{
"name": "tinycss2",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "toml",
"specs": [
[
"==",
"0.10.2"
]
]
},
{
"name": "tomli",
"specs": [
[
"==",
"2.0.2"
]
]
},
{
"name": "tomli-w",
"specs": [
[
"==",
"1.1.0"
]
]
},
{
"name": "tomlkit",
"specs": [
[
"==",
"0.13.2"
]
]
},
{
"name": "tornado",
"specs": [
[
"==",
"6.4.1"
]
]
},
{
"name": "traitlets",
"specs": [
[
"==",
"5.14.3"
]
]
},
{
"name": "trimesh",
"specs": [
[
"==",
"4.4.9"
]
]
},
{
"name": "trove-classifiers",
"specs": [
[
"==",
"2024.9.12"
]
]
},
{
"name": "twine",
"specs": [
[
"==",
"5.1.1"
]
]
},
{
"name": "types-python-dateutil",
"specs": [
[
"==",
"2.9.0.20241003"
]
]
},
{
"name": "typing-extensions",
"specs": [
[
"==",
"4.12.2"
]
]
},
{
"name": "uri-template",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "urllib3",
"specs": [
[
"==",
"2.2.3"
]
]
},
{
"name": "userpath",
"specs": [
[
"==",
"1.9.2"
]
]
},
{
"name": "uv",
"specs": [
[
"==",
"0.4.20"
]
]
},
{
"name": "virtualenv",
"specs": [
[
"==",
"20.26.6"
]
]
},
{
"name": "wcwidth",
"specs": [
[
"==",
"0.2.13"
]
]
},
{
"name": "webcolors",
"specs": [
[
"==",
"24.8.0"
]
]
},
{
"name": "webencodings",
"specs": [
[
"==",
"0.5.1"
]
]
},
{
"name": "websocket-client",
"specs": [
[
"==",
"1.8.0"
]
]
},
{
"name": "widgetsnbextension",
"specs": [
[
"==",
"4.0.13"
]
]
},
{
"name": "zipp",
"specs": [
[
"==",
"3.20.2"
]
]
},
{
"name": "zstandard",
"specs": [
[
"==",
"0.23.0"
]
]
}
],
"lcname": "colour-demosaicing"
}