Skip to main content

Requirements

Requirements

Stable

Project requirements before synchronizing version information.

Commandcusty version

Category

Versioning

Quick Command

custy version update

requirementsversion

Overview​

Before Custy updates project version information, several resources must be available.

These requirements ensure that version synchronization completes safely and updates the intended project files.


Project Requirements

Minimum requirements before running Version Update.

Git Repository

Required
The current project should already be initialized as a Git repository.

Version Metadata

Recommended
Custy can detect supported Python or Node.js metadata. Projects without it remain valid and can use Git-tag-only versioning.

Project Configuration

Recommended
Configure the preferred versioning strategy and bump policy inside config.toml.

Initialized Project

Recommended
Projects initialized withcusty initalready contain the recommended directory structure and configuration files.

Version Metadata

With version_file = "auto", Custy looks for an existing target in this order:

  • Python __version__.py below the detected source directory,
  • static [project].version in pyproject.toml,
  • string version in package.json.

Mixed Python and Node.js projects may synchronize both ecosystems. Version values written to metadata omit a leading tag prefix such as v.

An explicit tool.custy.cli.paths.version_file remains strict: the path must exist and must be a file. Use auto when a project follows supported metadata conventions or intentionally has no version file.


Project Detection

Custy automatically detects the project type before applying version updates.

Depending on the detected ecosystem, different project files are updated.

For example:

  • Python projects update an existing version module or static project metadata.
  • Node.js projects update package.json and a root lockfile when applicable.
  • Mixed projects update both supported metadata sets.
  • Generic projects without metadata continue without a forced app/ directory or generated Python version module.

Version Strategy

A versioning strategy should be selected before running Version Update.

Supported strategies include:

  • SemVer
  • PEP 440
  • Commitizen
  • Date
  • Git Count

The selected strategy determines how the next version number is calculated.



What's Next?

Continue to the Syntax page to learn how to execute the Version command from the command line and as part of a workflow.