cff2toml
A module to synchronize metadata between TOML and CFF files, including between pyproject.toml and CITATION.cff files.
Table of Contents
Installation
pip install cff2toml
Usage
cff2toml --help
This package offers a CLI and classes to manipulate metadata in CFF and TOML files.
One common use case is to synchronize metadata between pyproject.toml and CITATION.cff files in a Python project.
Viewing metadata in CITATION.cff and pyproject.toml
Here is how you view the version in both CITATION.cff and pyproject.toml, assuming they are in the same directory
cff2toml view version
You can also view other common metadata. See the help.
Changing metadata in both CITATION.cff and pyproject.toml
Here is how you change the version in both CITATION.cff and pyproject.toml, assuming they are in the same directory
cff2toml change version 2.30.1
You can also change other common metadata. See the help.
Limitations
The tool is in early and active development, so it should not be used yet for production systems. The CLI only supports version and license at the moment, but the underlying libraries support more.
Roadmap
- Improve CLI tool to view and change other metadata fields.
- Improve documentation of the underlying classes.
- Fix the output order so that it creates a more useful semantic ordering of propreties (not alphabetical).
License
cff2toml is distributed under the terms of the Apache 2.0 license
Contribution
Contributions in the form of feature requests, bug reports, bug fixes, tests, and feature implementations are welcome. To contribute code, please fork the project, and then do a pull request.
Developer Notes
Buildiing Locally
To build the tool locally, please follow the general advice from here.
python3 -m pip install --upgrade build
python3 -m build
Deploying
To deploy the tool, use the Github Action defined in .github/workflows/python-publish.yml
Metadata
Release files for cff2toml 3.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| cff2toml-3.2.2.tar.gz | 21.2 kB | Without provenance | Details for cff2toml-3.2.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| cff2toml-3.2.2-py3-none-any.whl | Python 3 | none | any | Details for cff2toml-3.2.2-py3-none-any.whl |
Total release size: 45.7 kB
Release files / cff2toml-3.2.2.tar.gz
| Download URL | cff2toml-3.2.2.tar.gz |
|---|---|
| Size | 21.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b07a9920b4c38e3340f02e97449487775a2e4910b88e5f19a8872b5bc7f99d5d
|
|
BLAKE2b-256 checksum How to use checksums |
8aa0a13756307aa742c998c3f57f7368379e9e64982b2ddd64ca525235d30ce5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.19
|
Release files / cff2toml-3.2.2-py3-none-any.whl
| Download URL | cff2toml-3.2.2-py3-none-any.whl |
|---|---|
| Size | 24.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2413645523bf314c34c767eaf3b99f9c38e347eeb96163f3cd80bc46e9f40805
|
|
BLAKE2b-256 checksum How to use checksums |
0345e123e69c4d56ce804cffdebc2d315d4f58a74338f09fede90e3ca08785ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.19
|
Security for cff2toml 3.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.