Skip to main content

A tool to keep your configuration synced between repositories

Project description

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.

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

copyist-0.2.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

copyist-0.2-py2.py3-none-any.whl (5.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file copyist-0.2.tar.gz.

File metadata

  • Download URL: copyist-0.2.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for copyist-0.2.tar.gz
Algorithm Hash digest
SHA256 45985661805a4e47f3883266d588a88378cba1a2d5959add9199e82e02723f97
MD5 c9d731794f1388b417f24c6a6f6bcb21
BLAKE2b-256 220b7b7e417c2c6f0d688323c2b36620c7440c902c189e76bc72cedbc86306bb

See more details on using hashes here.

File details

Details for the file copyist-0.2-py2.py3-none-any.whl.

File metadata

  • Download URL: copyist-0.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using 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

File hashes

Hashes for copyist-0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 0dccdee27a5c3c8eec8d750a56f6c95c7f8d71ded79a502b96dfe0329690ed29
MD5 18ce16378b2e47a3bd223f07b827e886
BLAKE2b-256 66d2fae05898b9b0cef00af67994faa2607fc99931582985a759667b857a0757

See more details on using hashes here.

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