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.

Files for copyist, version 0.3
Filename, size File type Python version Upload date Hashes
Filename, size copyist-0.3-py2.py3-none-any.whl (5.9 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size copyist-0.3.tar.gz (5.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page