Skip to main content

copyist - Easily sync your configuration files

To make sure all your projects share the same configuration, add a [tool.copyist] section to the pyproject.toml file of your projects specifying the expected files and their generators.

For example, copyist’s isort configuration is synced from examples/isort.py policy as specified in its pyproject.toml:

[tool.copyist]
  [tool.copyist.context]
  package_name = "copyist"

  [tool.copyist.files]
  "pyproject.toml" = ["examples.isort.apply_config"]

Configuration

[tool.copyist.files] section lists the files to generate/keep synced with their list of generators to apply.

Each generator is a function taking as argument the previous content of the file and an optional context specified in [tool.copyist.context] section.

The generators are generally provided by an other Python package specifying your expected configuration.

Command line options

You can list them by running copyist --help:

usage: copyist [-h] [--version] [--config CONFIG] [--verbose] [--dry-run]

optional arguments:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  --config CONFIG, -c CONFIG
                        Configuration file (defaults to pyproject.toml)
  --verbose, -v         Show the diff produced at each stage
  --dry-run             Do not overwrite files

Helpers

Currently only copyist.helpers.fill_tool_section(previous_content, tool_name, section_text) is available to help fill pyproject.toml with the different tools’ configurations.

Release files for copyist 0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for copyist 0.2
File Size Uploaded
copyist-0.2.tar.gz 5.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for copyist 0.2
File Interpreter ABI Platform
copyist-0.2-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 11.0 kB

Release files / copyist-0.2.tar.gz

Download URL copyist-0.2.tar.gz
Size 5.1 kB
Tags Source
SHA-256 checksum
How to use checksums
45985661805a4e47f3883266d588a88378cba1a2d5959add9199e82e02723f97
BLAKE2b-256 checksum
How to use checksums
220b7b7e417c2c6f0d688323c2b36620c7440c902c189e76bc72cedbc86306bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.37.0 CPython/3.7.4

Release files / copyist-0.2-py2.py3-none-any.whl

Download URL copyist-0.2-py2.py3-none-any.whl
Size 5.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
0dccdee27a5c3c8eec8d750a56f6c95c7f8d71ded79a502b96dfe0329690ed29
BLAKE2b-256 checksum
How to use checksums
66d2fae05898b9b0cef00af67994faa2607fc99931582985a759667b857a0757
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.37.0 CPython/3.7.4

Release history Release notifications | RSS feed

0.3

2 release files

This release

0.2 This release

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page