Skip to main content

A Colcon extension providing support for Python projects that use UV

Project description

colcon-uv

CI

A colcon extension for building and testing Python packages that use uv for dependency management.

Features

  • Fast Dependency Management: Leverages UV's lightning-fast dependency resolution and installation
  • Modern Python Packaging: Support for pyproject.toml-based packages following PEP 517/518 standards
  • ROS Integration: Seamless integration with colcon build system and ROS package management
  • Dependency Isolation: Prevents dependency conflicts between packages

Installation

pip install colcon-uv

Configuration

Data Files

Similar to colcon-poetry-ros, you can specify data files using the [tool.colcon-uv-ros.data-files] section:

[tool.colcon-uv-ros.data-files]
"share/ament_index/resource_index/packages" = ["resource/{package_name}"]
"share/{package_name}" = ["package.xml", "launch/", "config/"]
"lib/{package_name}" = ["scripts/"]

Required entries for all ROS packages:

[tool.colcon-uv-ros.data-files]
"share/ament_index/resource_index/packages" = ["resource/{package_name}"]
"share/{package_name}" = ["package.xml"]

Package Dependencies

Specify package dependencies for build ordering and to use system libraries (fetched from system paths, not installed in virtual environment):

[tool.colcon-uv-ros.dependencies]
depend = ["rclpy", "geometry_msgs"]  # System packages (adds to both build_depend and exec_depend)
build_depend = ["bar_package"]       # Build-time only dependency
exec_depend = ["std_msgs"]           # Runtime system library
test_depend = ["qux_package"]        # Test-time only dependency

Important: ROS system libraries like rclpy, geometry_msgs, std_msgs, etc. should be listed here so they are resolved from the system installation rather than being installed into the virtual environment.

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

colcon_uv-0.2.0.tar.gz (13.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

colcon_uv-0.2.0-py2.py3-none-any.whl (13.3 kB view details)

Uploaded Python 2Python 3

File details

Details for the file colcon_uv-0.2.0.tar.gz.

File metadata

  • Download URL: colcon_uv-0.2.0.tar.gz
  • Upload date:
  • Size: 13.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for colcon_uv-0.2.0.tar.gz
Algorithm Hash digest
SHA256 96ae6418e68ef66dec4efc0396775f140204125100e75f6f944f4611e49dfec8
MD5 a26effe906072bf46dfc728e8f1bc7e9
BLAKE2b-256 ce5111490140984cc0db3d7df771a976390b93568ba9f74932ab4d62427dcbf8

See more details on using hashes here.

Provenance

The following attestation bundles were made for colcon_uv-0.2.0.tar.gz:

Publisher: publish.yml on nzlz/colcon-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file colcon_uv-0.2.0-py2.py3-none-any.whl.

File metadata

  • Download URL: colcon_uv-0.2.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for colcon_uv-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7f2c4869a5793701d6c6708f699a13ec2d29efff3107631762f0bbf927020f39
MD5 cca3b80078045681912af03a557c8a61
BLAKE2b-256 f9186e8f9c40e3a48ac7e1a2c198d6b226569a33b2a6cb4daf66399b1c4e26cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for colcon_uv-0.2.0-py2.py3-none-any.whl:

Publisher: publish.yml on nzlz/colcon-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page