Skip to main content

Validation of input4MIPs data (checking file formats, metadata etc.).

Project description

Input4MIPs-validation

Validation of input4MIPs data (checking file formats, metadata etc.).

Key info : Docs Main branch: supported Python versions Licence

PyPI : PyPI PyPI install

Conda : Conda Conda platforms Conda install

Tests : CI Coverage

Other info : Last Commit Contributors

Status

  • development: the project is actively being worked on

As a user, please note that input4MIPs validation is undergoing heavy development. This means that files which pass validation today may not pass in future. While this will initially be frustrating, it will pay off in the long run by helping us to create the cleanest, clearest set of data possible. We hope that you can appreciate the importance of this too (and we hope to get the effort it takes to do this recognised at some point in the future too, watch this space). So, please enjoy the tool, please make use of it, please raise an issue whenever there is a problem, but please also be ready to update your file writing scripts when submitting the next round of files in three to six months' time.

If you want to prepare your input4MIPs files for publication on ESGF, please see "How can I prepare my input4MIPs files for publication on ESGF?".

Full documentation can be found at: input4mips-validation.readthedocs.io. We recommend reading the docs there because the internal documentation links don't render correctly on GitHub's viewer.

Installation

As an application

If you want to use input4MIPs-validation as an application, for example you just want to use its command-line interface, then we recommend using the 'locked' version of the package. This version pins the version of all dependencies too, which reduces the chance of installation issues because of breaking updates to dependencies.

The locked version of input4mips-validation can be installed with

=== "mamba" sh mamba install -c conda-forge input4mips-validation-locked

[mamba](https://mamba.readthedocs.io/en/latest/)
is our recommend way to install the package
because it has better handling of the compiled dependencies
(like cfunits).

=== "conda" sh conda install -c conda-forge input4mips-validation-locked

[conda](https://docs.conda.io/projects/conda/en/stable/)
is a good way to install the package
because it has better handling of the compiled dependencies
(like cfunits).

=== "pip" sh pip install input4mips-validation[locked]

[pip](https://pip.pypa.io/en/stable/)
is a standard way to install Python packages.
We make no guarantees that this will actually work
because pip's handling of the compiled dependencies
is not guaranteed.

As a library

If you want to use input4MIPs-validation as a library, for example you want to use it as a dependency in another package/application that you're building, then we recommend installing the package with the commands below. This method provides the loosest pins possible of all dependencies. This gives you, the package/application developer, as much freedom as possible to set the versions of different packages. However, the tradeoff with this freedom is that you may install incompatible versions of input4mips-validation's dependencies (we cannot test all combinations of dependencies, particularly ones which haven't been released yet!). Hence, you may run into installation issues. If you believe these are because of a problem in input4mips-validation, please raise an issue.

The (non-locked) version of input4mips-validation can be installed with

=== "mamba" sh mamba install -c conda-forge input4mips-validation

[mamba](https://mamba.readthedocs.io/en/latest/)
is our recommend way to install the package
because it has better handling of the compiled dependencies
(like cfunits).

=== "conda" sh conda install -c conda-forge input4mips-validation

[conda](https://docs.conda.io/projects/conda/en/stable/)
is a good way to install the package
because it has better handling of the compiled dependencies
(like cfunits).

=== "pip" sh pip install input4mips-validation

[pip](https://pip.pypa.io/en/stable/)
is a standard way to install Python packages.
We make no guarantees that this will actually work
because pip's handling of the compiled dependencies
is not guaranteed.

Additional dependencies can be installed using

=== "mamba" If you are installing with mamba, we recommend installing the extras by hand because there is no stable solution yet (see conda issue #7502)

=== "conda" If you are installing with conda, we recommend installing the extras by hand because there is no stable solution yet (see conda issue #7502)

=== "pip" sh # To add plotting dependencies pip install input4mips-validation[plots] # To add notebook dependencies pip install input4mips-validation[notebooks]

For developers

For development, we rely on pixi for all our dependency management. To get started, you will need to make sure that pixi is installed (instructions here).

We rely on pdm for managing our PyPI builds. Hence, you will also need to make sure that pdm is installed on your system (instructions here, although we found that installing with pipx worked perfectly for us).

For all of work, we use our Makefile. You can read the instructions out and run the commands by hand if you wish, but we generally discourage this because it can be error prone. In order to create your environment, run make virtual-environment.

If there are any issues, the messages from the Makefile should guide you through. If not, please raise an issue in the issue tracker.

For the rest of our developer docs, please see [development][development-reference].

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

input4mips_validation-0.13.0.tar.gz (88.7 kB view details)

Uploaded Source

Built Distribution

input4mips_validation-0.13.0-py3-none-any.whl (94.6 kB view details)

Uploaded Python 3

File details

Details for the file input4mips_validation-0.13.0.tar.gz.

File metadata

  • Download URL: input4mips_validation-0.13.0.tar.gz
  • Upload date:
  • Size: 88.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.19.1 CPython/3.10.12 Linux/6.8.0-1014-azure

File hashes

Hashes for input4mips_validation-0.13.0.tar.gz
Algorithm Hash digest
SHA256 3d1dd3d68ce5f3b52436af6ce57c3ba8b4c3350788e2de87c5bb089b2e812c50
MD5 03ef0c29514bbf7aa5864e26424cfa3d
BLAKE2b-256 079be6a42dfbc9e674325e981192dca76ba0b4e3e6bd450bebc8392d6d2aa009

See more details on using hashes here.

Provenance

File details

Details for the file input4mips_validation-0.13.0-py3-none-any.whl.

File metadata

File hashes

Hashes for input4mips_validation-0.13.0-py3-none-any.whl
Algorithm Hash digest
SHA256 069e05ba7d02e298b5262d9d48a5f1714fcc2c6b7cc975c4734817e323d68828
MD5 fc7358592291587ea2ab01cebd1d2c7d
BLAKE2b-256 09cc1561c8204745f236f792112c2949412da17d3d8c9225ef58bdbb3a4aff7e

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page