{"id":22197080,"url":"https://github.com/openscm/openscm-units","last_synced_at":"2025-07-05T14:38:41.100Z","repository":{"id":44554408,"uuid":"249294924","full_name":"openscm/openscm-units","owner":"openscm","description":"Units for use with simple climate modelling","archived":false,"fork":false,"pushed_at":"2025-06-19T04:04:36.000Z","size":556,"stargazers_count":9,"open_issues_count":13,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-07-02T18:15:41.775Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://openscm-units.readthedocs.io/en/latest/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openscm.png","metadata":{"files":{"readme":"README.md","changelog":"changelog/57.trivial.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-03-22T23:52:13.000Z","updated_at":"2025-01-09T15:37:36.000Z","dependencies_parsed_at":"2024-01-14T23:03:26.643Z","dependency_job_id":"4c024e0c-ef67-41e9-81bd-c8efe3304f4c","html_url":"https://github.com/openscm/openscm-units","commit_stats":{"total_commits":188,"total_committers":7,"mean_commits":"26.857142857142858","dds":"0.34042553191489366","last_synced_commit":"34100df5bacf71e87f0cc231a52a50f5834feead"},"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/openscm/openscm-units","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openscm%2Fopenscm-units","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openscm%2Fopenscm-units/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openscm%2Fopenscm-units/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openscm%2Fopenscm-units/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openscm","download_url":"https://codeload.github.com/openscm/openscm-units/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openscm%2Fopenscm-units/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263756506,"owners_count":23506541,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-02T14:18:20.250Z","updated_at":"2025-07-05T14:38:41.047Z","avatar_url":"https://github.com/openscm.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--- --8\u003c-- [start:description] --\u003e\n# OpenSCM-Units\n\nHandling of units related to simple climate modelling.\n\n**Key info :**\n[![Docs](https://readthedocs.org/projects/openscm-units/badge/?version=latest)](https://openscm-units.readthedocs.io)\n[![Main branch: supported Python versions](https://img.shields.io/python/required-version-toml?tomlFilePath=https%3A%2F%2Fraw.githubusercontent.com%2Fopenscm%2Fopenscm-units%2Fmain%2Fpyproject.toml)](https://github.com/openscm/openscm-units/blob/main/pyproject.toml)\n[![Licence](https://img.shields.io/pypi/l/openscm-units?label=licence)](https://github.com/openscm/openscm-units/blob/main/LICENCE)\n\n**PyPI :**\n[![PyPI](https://img.shields.io/pypi/v/openscm-units.svg)](https://pypi.org/project/openscm-units/)\n[![PyPI install](https://github.com/openscm/openscm-units/actions/workflows/install-pypi.yaml/badge.svg?branch=main)](https://github.com/openscm/openscm-units/actions/workflows/install-pypi.yaml)\n\n**Conda :**\n[![Conda](https://img.shields.io/conda/vn/conda-forge/openscm-units.svg)](https://anaconda.org/conda-forge/openscm-units)\n[![Conda platforms](https://img.shields.io/conda/pn/conda-forge/openscm-units.svg)](https://anaconda.org/conda-forge/openscm-units)\n[![Conda install](https://github.com/openscm/openscm-units/actions/workflows/install-conda.yaml/badge.svg?branch=main)](https://github.com/openscm/openscm-units/actions/workflows/install-conda.yaml)\n\n**Tests :**\n[![CI](https://github.com/openscm/openscm-units/actions/workflows/ci.yaml/badge.svg?branch=main)](https://github.com/openscm/openscm-units/actions/workflows/ci.yaml)\n[![Coverage](https://codecov.io/gh/openscm/openscm-units/branch/main/graph/badge.svg)](https://codecov.io/gh/openscm/openscm-units)\n\n**Other info :**\n[![Last Commit](https://img.shields.io/github/last-commit/openscm/openscm-units.svg)](https://github.com/openscm/openscm-units/commits/main)\n[![Contributors](https://img.shields.io/github/contributors/openscm/openscm-units.svg)](https://github.com/openscm/openscm-units/graphs/contributors)\n## Status\n\n\u003c!---\n\nWe recommend having a status line in your repo\nto tell anyone who stumbles on your repository where you're up to.\nSome suggested options:\n\n- prototype: the project is just starting up and the code is all prototype\n- development: the project is actively being worked on\n- finished: the project has achieved what it wanted\n  and is no longer being worked on, we won't reply to any issues\n- dormant: the project is no longer worked on\n  but we might come back to it,\n  if you have questions, feel free to raise an issue\n- abandoned: this project is no longer worked on\n  and we won't reply to any issues\n--\u003e\n\n- development: the project is actively being worked on\n\n\u003c!--- --8\u003c-- [end:description] --\u003e\n\nFull documentation can be found at:\n[openscm-units.readthedocs.io](https://openscm-units.readthedocs.io/en/latest/).\nWe recommend reading the docs there because the internal documentation links\ndon't render correctly on GitHub's viewer.\n\n## Installation\n\n\u003c!--- --8\u003c-- [start:installation] --\u003e\n### As a library\n\nIf you want to use OpenSCM-Units as a library,\nfor example you want to use it\nas a dependency in another package/application that you're building,\nthen we recommend installing the package with the commands below.\nThis method provides the loosest pins possible of all dependencies.\nThis gives you, the package/application developer,\nas much freedom as possible to set the versions of different packages.\nHowever, the tradeoff with this freedom is that you may install\nincompatible versions of OpenSCM-Units's dependencies\n(we cannot test all combinations of dependencies,\nparticularly ones which haven't been released yet!).\nHence, you may run into installation issues.\nIf you believe these are because of a problem in OpenSCM-Units,\nplease [raise an issue](https://github.com/openscm/openscm-units/issues).\n\nThe (non-locked) version of OpenSCM-Units can be installed with\n\n=== \"pip\"\n    ```sh\n    pip install openscm-units\n    ```\n\n=== \"mamba\"\n    ```sh\n    mamba install -c conda-forge openscm-units\n    ```\n\n=== \"conda\"\n    ```sh\n    conda install -c conda-forge openscm-units\n    ```\n\n### As an application\n\nIf you want to use OpenSCM-Units as an application,\nthen we recommend using the 'locked' version of the package.\nThis version pins the version of all dependencies too,\nwhich reduces the chance of installation issues\nbecause of breaking updates to dependencies.\n\nThe locked version of OpenSCM-Units can be installed with\n\n=== \"pip\"\n    ```sh\n    pip install openscm-units[locked]\n    ```\n\n=== \"mamba\"\n    ```sh\n    mamba install -c conda-forge openscm-units-locked\n    ```\n\n=== \"conda\"\n    ```sh\n    conda install -c conda-forge openscm-units-locked\n    ```\n\n### For developers\n\nFor development, we rely on [pdm](https://pdm-project.org/en/latest/)\nfor all our dependency management.\nTo get started, you will need to make sure that pdm is installed\n([instructions here](https://pdm-project.org/en/latest/#installation),\nalthough we found that installing with [pipx](https://pipx.pypa.io/stable/installation/)\nworked perfectly for us).\n\nFor all of our work, we use our `Makefile`.\nYou can read the instructions out and run the commands by hand if you wish,\nbut we generally discourage this because it can be error prone.\nIn order to create your environment, run `make virtual-environment`.\n\nIf there are any issues, the messages from the `Makefile` should guide you through.\nIf not, please raise an issue in the\n[issue tracker](https://github.com/openscm/openscm-units/issues).\n\nFor the rest of our developer docs, please see [development][development].\n\n\u003c!--- --8\u003c-- [end:installation] --\u003e\n\n## Original template\n\nThis project was generated from this template:\n[copier core python repository](https://gitlab.com/znicholls/copier-core-python-repository).\n[copier](https://copier.readthedocs.io/en/stable/) is used to manage and\ndistribute this template.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenscm%2Fopenscm-units","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenscm%2Fopenscm-units","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenscm%2Fopenscm-units/lists"}