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.3.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 2 Python 3

File details

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

File metadata

  • Download URL: copyist-0.3.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.5

File hashes

Hashes for copyist-0.3.tar.gz
Algorithm Hash digest
SHA256 850bbceee959c368d616dfea4ec7b40efe89f2c6071e4b27a1c2f6219d1f677f
MD5 ddef6e9ca3f42954b16d67c46f4e9fef
BLAKE2b-256 7f5a69a2567a76b8c90ea25e93d62be635a47a2f87bc6cf2caf23ea406004e6c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: copyist-0.3-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.5

File hashes

Hashes for copyist-0.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 cbac597397c3a7cf65c54696c473ea31e5c76d2b8b15c6af6f04c3795dacffd0
MD5 d56fde2ddc9a52b4116c06eeef16a5a1
BLAKE2b-256 126a7d4f49d403e95464a81248736412d42e312b35f4e066f1ac3f4c85db8d65

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