Metadata-Version: 2.1
Name: primap2
Version: 0.7.1
Summary: The next generation of the PRIMAP climate policy analysis suite.
Home-page: https://github.com/pik-primap/primap2
Author: Mika Pflüger
Author-email: mika.pflueger@pik-potsdam.de
License: Apache Software License 2.0
Project-URL: Documentation, https://primap2.readthedocs.io/
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
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.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Python: >=3.7
Description-Content-Type: text/x-rst
Provides-Extra: test
Provides-Extra: dev
Provides-Extra: datalad
License-File: LICENSE

=======
PRIMAP2
=======

.. image:: https://img.shields.io/pypi/v/primap2.svg
        :target: https://pypi.python.org/pypi/primap2
        :alt: PyPI status

.. image:: https://readthedocs.org/projects/primap2/badge/?version=main
        :target: https://primap2.readthedocs.io/en/main/?badge=main
        :alt: Documentation Status

.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.4535902.svg
        :target: https://doi.org/10.5281/zenodo.4535902
        :alt: Zenodo release

PRIMAP2 is the next generation of the PRIMAP climate policy analysis suite.
PRIMAP2 is free software, you are welcome to use it in your own research.
The documentation can be found at https://primap2.readthedocs.io.

Structure
---------

PRIMAP2 is:
 * A flexible and powerful data format built on `xarray <https://xarray.pydata.org>`_.
 * A collection of functions for common tasks when wrangling climate policy
   data, like aggregation and interpolation.
 * A format for data packages built on `datalad <https://www.datalad.org>`_, providing
   metadata extraction and search on a collection of data packages.

Status
------

PRIMAP2 is in active development, and not everything promised above is built
yet.

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

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.

PRIMAP2 incorporates parts of xarray and pint_xarray, which are available under the
Apache License, Version 2.0 as well. The full text of the xarray copyright statement is
included in the licenses directory.

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

Mika Pflüger and Johannes Gütschow. (2021-07-27).
pik-primap/primap2: PRIMAP2 Version 0.7.1.
Zenodo. https://doi.org/10.5281/zenodo.5139583

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

0.7.1
-----
* Require openscm-units >= 0.3 to ensure that refrigerants and AR5GWPCCF are available.
* Make primap2 compatible with pint-xarray v0.2.1.

0.7.0
-----
* Add the `publication_date` property for datasets to record the date of publication,
  which is especially useful to record the publication date for datasets which are
  published continuously.
* change to stable sphinx-autosummary-accessors version.
* pin sphinx version to repair RTD latex builds until the `upstream bug <https://github.com/spatialaudio/nbsphinx/issues/584>`_
  is fixed.
* Add stringly typed data variables to the PRIMAP specification.
* Update `ensure_valid` for the updated specification.
* Enhance interchange format documentation.

0.6.0
-----
* Improve ``venv`` handling in the Makefile.
* Split wide csv reading function into a conversion function and a wrapper
* Add function to convert long format dataframe to interchange format
* Add functions to help reading of different national GHG inventories
* Add functionality to fill columns using information from other
  columns to csv reading and dataframe conversion functions
* Add additional coordinates to interchange format and data reading functions
* Pin ruamel.yaml to version 0.17.4 until https://github.com/crdoconnor/strictyaml/issues/145 is solved.
* use `sum()` instead of `np.sum()` with generator to avoid deprecation warning
* Write changelog entries for unreleased changes into individual files in the
  ``changelog_unreleased`` directory to avoid merge conflicts.
* Bump dependency on ``pint-xarray`` to 0.2 and fix test regressions introduced by
  release 0.2 of pint-xarray.

0.5.0
-----
* Add read and write functionality for interchange format
* Add csv reading capabilities in pm2io module for wide and long (tidy) CSV files.
* Add ``da.pr.coverage()`` and ``ds.pr.coverage()`` functions to summarize data
  coverage.
* Add aggregation functions ``set`` and ``count`` which use aliasing and can reduce to
  a given set of dimensions, including the entity.
* Update python packaging to use declarative style and modern setuptools.
* Support and test python 3.9 and windows.
* Add dataset attr for storing the terminology used for entities (and thus variable
  names).

0.4.0
-----
* Add the ``da.pr.set()`` and ``ds.pr.set()`` functions for overwriting / infilling /
  extending data.
* Allow for more than one source in a single Dataset / DataArray.
* Support xarray 0.17, and therefore drop support for Python 3.6.

0.3.1
-----
* Re-release 0.3.0 to trigger zenodo.

0.3.0
-----
* Add functions for downscaling and aggregation of gas baskets and categorical baskets.
* Add functions, docs, and tests for basic GWP handling.
* Add Makefile target to generate patched stub files for xarray containing the primap2
  API.
* Add development documentation detailing the structure of the repository and the tools
  used to development of PRIMAP2.
* Add selection and indexing which understands dimension names like ``area`` in addition
  to the full dimension key including the category set like ``area (ISO3)``. Works with
  ``ds.pr[key]`` and ``ds.pr.loc[selection]`` as well as ``da.pr.loc[selection]``.
* Add usage documentation for all currently included functionality.
* Access metadata easily via properties like ``ds.pr.references``.

0.2.0
-----
* Add documentation.
* Add tests.
* Add continuous integration using github actions.
* Add functions for storing to and loading from netcdf.
* Add description of the data format.
* Add function which ensures that a dataset is in this data format.
* Provide all functions using a pint extension accessor.

0.1.0
-----

* First development release.


