skillfed

colcon-defaults

Extension for colcon to read defaults from a config file.

colcon-defaults v0.2.9 183.0K downloads/30d#10,076 on PyPI2
Permissive license Apache License, Version 2.0 Active released

What it is and what it does

colcon-defaults is a plugin for the colcon build system that reads default values for command-line arguments from a YAML configuration file. Instead of typing the same flags every time you run colcon build or other colcon commands, you define your defaults once in a configuration file and the plugin applies them automatically on each invocation.

The package depends on colcon-core (the plugin framework) and PyYAML (for parsing the configuration file). It targets developers working with colcon-based build systems who want to reduce repetitive typing and standardize build parameters across a team or project. The plugin integrates transparently into the colcon command pipeline.

Use it for:

  • Set default build profiles, parallelism levels, or output directories once in a config file instead of repeating them on every colcon build invocation.
  • Standardize build flags across a development team by committing a shared defaults.yaml to version control.
  • Reduce command-line clutter in CI/CD pipelines by moving common arguments to a persistent configuration.
  • Override default colcon behavior for specific workspaces without modifying shell aliases or wrapper scripts.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Extends colcon to load default command-line argument values from a YAML configuration file, reducing repetitive command typing in build workflows.

Yes, if you use colcon regularly and find yourself repeating the same command-line flags. The plugin is lightweight, actively maintained, and has no security vulnerabilities. Install it as part of your colcon ecosystem if you want to streamline repetitive build commands; skip it if you rarely use colcon or prefer explicit command lines.

Install

colcon-defaults on PyPI

pip

pip install colcon-defaults

uv

uv add colcon-defaults

poetry

poetry add colcon-defaults

Installing colcon-defaults

Before you install

Low friction install with only two runtime dependencies (colcon-core and PyYAML). Active maintenance with a recent commit in May 2026, though the repository has minimal stars.

License in practice

Apache License 2.0 is permissive, allowing use in commercial and private projects with minimal restrictions.

Quickstart

pip install colcon-defaults

# Create ~/.colcon/defaults.yaml with your default arguments
# Then use colcon normally; defaults are applied automatically
colcon build

Requires colcon-core to be installed; this is a plugin extension, not a standalone tool.

Verify before relying

  • Whether the defaults.yaml format and location are documented sufficiently for new users.
  • Performance impact of loading defaults on each colcon invocation.
  • Compatibility with all colcon subcommands or specific limitations.

Package facts

License Apache License, Version 2.0 (permissive)
Python support supports the current Python release (>=3.6)
Install friction low — pure-Python wheel
Runtime dependencies 2 — colcon-core, PyYAML
Maintenance actively maintained — 604 days since the last release
Last repo commit
First released
Downloads 183,027/month — #10,076 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: colcon_defaults-0.2.9-py3-none-any.whl

Keywords: colcon

Development Status :: 3 - AlphaEnvironment :: PluginsIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: PythonTopic :: Software Development :: Build Tools

Tags

colcon defaults configurationcolcon command line defaultscolcon config file argumentscolcon yaml defaultscolcon build tool configuration
colcon-pluginbuild-configuration

More Build Tools packages