Metadata-Version: 2.1
Name: climate-categories
Version: 0.9.2
Summary: Commonly used codes, categories, terminologies, and nomenclatures used in climate policy analysis as a Python package.
Home-page: https://github.com/pik-primap/climate_categories
Author: Mika Pflüger
Author-email: mika.pflueger@climate-resource.com
License: Apache Software License 2.0
Project-URL: Documentation, https://climate-categories.readthedocs.io/
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: Atmospheric Science
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.9
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: networkx
Requires-Dist: pandas
Requires-Dist: strictyaml
Requires-Dist: natsort
Requires-Dist: ruamel.yaml
Requires-Dist: pyparsing
Requires-Dist: immutables
Requires-Dist: black
Provides-Extra: dev
Requires-Dist: pip ; extra == 'dev'
Requires-Dist: tbump ; extra == 'dev'
Requires-Dist: wheel ; extra == 'dev'
Requires-Dist: build ; extra == 'dev'
Requires-Dist: ruff ; extra == 'dev'
Requires-Dist: coverage ; extra == 'dev'
Requires-Dist: Sphinx ; extra == 'dev'
Requires-Dist: twine ; extra == 'dev'
Requires-Dist: pytest ; extra == 'dev'
Requires-Dist: pre-commit ; extra == 'dev'
Requires-Dist: sphinx-rtd-theme ; extra == 'dev'
Requires-Dist: ipykernel ; extra == 'dev'
Requires-Dist: nbsphinx ; extra == 'dev'
Requires-Dist: networkx ; extra == 'dev'
Requires-Dist: xdoctest ; extra == 'dev'
Requires-Dist: camelot-py[plot] (>=0.11.0) ; extra == 'dev'
Requires-Dist: tox ; extra == 'dev'
Requires-Dist: unfccc-di-api (>=3.0.1) ; extra == 'dev'
Requires-Dist: openscm-units ; extra == 'dev'
Requires-Dist: black ; extra == 'dev'
Provides-Extra: test
Requires-Dist: pytest ; extra == 'test'
Requires-Dist: pytest-cov ; extra == 'test'
Requires-Dist: xdoctest ; extra == 'test'

==================
Climate categories
==================


.. image:: https://img.shields.io/pypi/v/climate_categories.svg
        :target: https://pypi.python.org/pypi/climate_categories

.. image:: https://readthedocs.org/projects/climate-categories/badge/?version=latest
        :target: https://climate-categories.readthedocs.io/en/latest/?badge=latest
        :alt: Documentation Status

.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.4590232.svg
        :target: https://doi.org/10.5281/zenodo.4590232

Commonly used codes, categories, terminologies, and nomenclatures used in climate
policy analysis in a nice Python package.
The documentation can be found at: https://climate-categories.readthedocs.io.

Included categorizations
------------------------

===============  ==================================================================
Name             Title
---------------  ------------------------------------------------------------------
IPCC1996         IPCC GHG emission categories (1996)
IPCC2006         IPCC GHG emission categories (2006)
IPCC2006_PRIMAP  IPCC GHG emission categories (2006) with additional categories
CRF1999          Common Reporting Format GHG emissions categories (1999)
CRF2013          Common Reporting Format GHG emissions categories (2013)
CRF2013_2021     CRF categories extended with country specific categories from
                 2021 submissions
CRF2013_2022     CRF categories extended with country specific categories from
                 2022 submissions
CRF2013_2023     CRF categories extended with country specific categories from
                 2023 submissions
BURDI            BUR GHG emission categories (DI query interface)
BURDI_class      BUR GHG emission categories (DI query interface) + classifications
CRFDI            CRF GHG emission categories (DI query interface)
CRFDI_class      CRF GHG emission categories (DI query interface) + classifications
GCB              Global Carbon Budget CO2 emission categories
RCMIP            RCMIP emissions categories
gas              Gases and other climate-forcing substances
ISO3             Countries, country groups, and other areas from ISO 3166
===============  ==================================================================

Included conversions between categorizations
--------------------------------------------

* IPCC1996 <-> IPCC2006

Status
------
Climate categories is still in development and the API and names of categorizations
are still subject to change.

License
-------
Copyright 2021, Potsdam-Institut für Klimafolgenforschung e.V.

Copyright 2021, Robert Gieseke

Copyright 2023, Climate Resource Pty Ltd

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
file except in compliance with the License. You may obtain a copy of the License at

https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under
the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the specific language governing
permissions and limitations under the License.

Citation
--------
If you use this library and want to cite it, please cite it as:

Mika Pflüger, Annika Günther, Johannes Gütschow, and Robert Gieseke. (2023-06-22).
pik-primap/climate_categories: climate_categories Version 0.9.2.
Zenodo. https://doi.org/10.5281/zenodo.8069963

=========
Changelog
=========

0.9.2 (2023-06-22)
------------------
* ISO3: Add all parties to the UNFCCC as direct children of UNFCCC as first set of
  children. That way, it is easy to ergonomically get all parties to the UNFCCC without
  adding up Annex-I and Non-Annex-I parties manually.

0.9.1 (2023-06-15)
------------------
* Add AOSIS country group to ISO3 categorization.

0.9.0 (2023-06-14)
------------------
* Add ISO3 terminology for countries, areas, and country groups including UNFCCC
  signatories and Annex-I and Non-Annex-I groups and the evolution of the EU over time.

0.8.5 (2023-05-23)
------------------
* Re-release again.

0.8.4 (2023-05-23)
------------------
* Re-release to make sure py.typed is included in built package.

0.8.3 (2023-05-23)
------------------
* add py.typed file to announce this library is using type hints.

0.8.2 (2023-05-15)
------------------
* Remove pygments-csv-lexer dependency for docs building.
* Add function to find leaf children of a category, useful for re-calculating top-level
  categories from constituents.

0.8.1 (2023-04-26)
------------------
* regenerate data included in the package to benefit
  from latest fixes in data generation scripts.

0.8.0 (2023-04-26)
------------------
* Add updated CRF2013 terminologies for 2021, 2022, and 2023 submission rounds
* The unfccc DI API recently returns unspecified measure IDs.
  data_generation/CRFDI_class.py was fixed to ignore them.
* Add CRF2013 terminology for data submitted by AnnexI countries to the UNFCCC
* Drop support for Python 3.7 and 3.8, add support for Python 3.11

0.7.1 (2021-11-25)
------------------
* Change conversion metadata format to use comment chars and a YAML header.

0.7.0 (2021-11-25)
------------------
* Use Python files instead of pickle objects for caching

0.6.3 (2021-11-05)
------------------
* Export Category and HierarchicalCategory types.
* Add ConversionRule.is_restricted attribute to easily check if a rule is restricted to
  specific auxiliary categories.

0.6.2 (2021-11-05)
------------------
* Export Conversion and ConversionRule types.

0.6.1 (2021-11-04)
------------------
* Add emissions categorization from the `Reduced Complexity Model Intercomparison Project (RCMIP) <https://www.rcmip.org/>`_. Thanks to Robert Gieseke for the contribution and Zeb Nicholls for input.

0.6.0 (2021-10-22)
------------------
* Automate changelog generation from snippets - avoids resolving merge conflicts
  manually
* Automate github releases.
* Add category "0" (National total) to IPCC1996 and IPCC2006 categorizations. While it
  is not in the official specification, it is widely used and adding it also enables
  automatically assigning a level to all other categories.
* Add categorization CRF1999 used within in the common reporting framework data.
* Refactor rendering of large categorizations using ``show_as_tree()``, adding more
  clarity to alternative child sets. Add usage documentation for ``show_as_tree()``.
  Thanks to Robert Gieseke for feedback.
* Fixes for IPCC2006 categorization (and IPCC2006_PRIMAP):

  - proper title for category 3.B.3.a "Grassland Remaining Grassland"
  - correct corresponding 1996 category for category 1.A.4.c.ii

* Fixes for IPCC1996 categorization:

  - category 4.B.10 has the correct title "Anaerobic Lagoons"
  - correct usage of units in the titles of categories 4.C.3.a and 4.C.3.b

* Add mechanism to describe conversions between categorizations.
* Add conversion between IPCC2006 and IPCC1996.
* Add algorithm to detect over counting in conversions between categorizations.
* Refactor generation of IPCC2006 and IPCC1996 categorizations.
* Add function to find unmapped categories in a conversion.

0.5.4 (2021-10-18)
------------------

* Add Global Carbon Budget categorization.

0.5.3 (2021-10-12)
------------------

* Add gas categorization which includes commonly used climate forcing substances.

0.5.2 (2021-05-18)
------------------

* Add IPCC2006_PRIMAP categorization.
* Add refrigerant sub-classes and additional codes to CRFDI_class.

0.5.1 (2021-05-04)
------------------

* Add BURDI, CRFDI, BURDI_class, and CRFDI_class categorizations and scripts to generate
  them from the UNFCCC DI flexible query API.

0.5.0 (2021-03-23)
------------------

* Switch ``to_yaml()`` output to ruamel.yaml so that valid, correctly typed YAML 1.2
  is written. This should enable easier re-use of the data in other contexts.
* Consistently use title case for titles in IPCC categorizations.

0.4.0 (2021-03-17)
------------------

* Add more unit tests.
* Add consistency tests for IPCC categorizations.
* Update documentation.
* Add data format documentation.

0.3.2 (2021-03-16)
------------------

* Use tbump for simpler versioning.

0.3.1 (2021-03-16)
------------------

* Properly include data files in binary releases.

0.3.0 (2021-03-16)
------------------

* Add IPCC1996 categorization and scripts to generate it from the source pdf.
* Change packaging to declarative style.
* Automate generation of pickled files via Makefile.
* Automate loading of included categorizations.

0.2.2 (2021-03-09)
------------------

* Re-release again to trigger zenodo.

0.2.1 (2021-03-09)
------------------

* Re-release to include correct changelog.

0.2.0 (2021-03-09)
------------------

* Introduce API for multiple codes and multiple children.
* Implement classes and functions.
* Add IPCC2006 categorization and scripts to generate it from the source pdf.

0.1.0 (2021-01-18)
------------------

* First release on PyPI.
* Contains documentation and a stub API for querying, but no working code yet.
