Skip to main content

Command line tools for working with the colcon meta-buildsystem and colcon workspaces.

Project description

Hatchy: Colcon Workspace Management Tool

Overview

Hatchy is a command-line tool designed to simplify and enhance the management of Colcon workspaces. Inspired by catkin_tools, Hatchy provides a user-friendly interface for working with ROS 2 and other Colcon-based projects.

Features

Hatchy supports several key commands to streamline your Colcon workspace workflow:

1. Build

  • Build entire workspaces or specific packages
  • Customize build configurations
  • Options to build with or without dependencies
hatchy build                    # Build default workspace
hatchy build --workspace /path  # Build specific workspace
hatchy build --this             # Build package in current directory
hatchy build --no-deps          # Build only specified packages

2. Clean

  • Remove build artifacts
  • Clean specific spaces (build, install, test results)
  • Support for cleaning packages and their dependents
hatchy clean                    # Clean default workspace
hatchy clean --build            # Remove build space
hatchy clean --this             # Clean current package
hatchy clean --dependents       # Clean dependent packages

3. Config

  • Configure workspace context
  • Manage build spaces and extensions
  • Customize build arguments
hatchy config --extend /path/to/workspace  # Extend another workspace
hatchy config --build-space custom_build   # Set custom build space

4. Init

  • Initialize new Colcon workspaces
hatchy init                     # Initialize workspace in current directory
hatchy init --workspace /path   # Initialize workspace in specific path

5. List

  • List packages and repositories in workspace
hatchy list packages            # List all packages
hatchy list repos               # List workspace repositories

6. Test

  • Run tests for workspace or specific packages
hatchy test                     # Run all tests
hatchy test --this              # Test current package
hatchy test --no-deps           # Test only specified packages

Installation

pip install git+https://github.com/hatchbed/hatchy

Requirements

  • Python 3.7+
  • Colcon

Contributing

Contributions are welcome! Please submit pull requests or file issues on the project's repository.

License

BSD 3-Clause License

Copyright (c) 2025, Hatchbed LLC All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

  3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

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

hatchy-0.5.2.tar.gz (43.7 kB view details)

Uploaded Source

Built Distribution

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

hatchy-0.5.2-py3-none-any.whl (48.1 kB view details)

Uploaded Python 3

File details

Details for the file hatchy-0.5.2.tar.gz.

File metadata

  • Download URL: hatchy-0.5.2.tar.gz
  • Upload date:
  • Size: 43.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for hatchy-0.5.2.tar.gz
Algorithm Hash digest
SHA256 4fa6a243652d61eb8cbdf9062a4bc0a77d58337352691ede4679df33f6ed6795
MD5 2d738cba4236f41d8a0615c928c18501
BLAKE2b-256 3e3d4f7bc87794fb420ba20f0caefef77594d97f4f0d5b25dad33a4036be928a

See more details on using hashes here.

File details

Details for the file hatchy-0.5.2-py3-none-any.whl.

File metadata

  • Download URL: hatchy-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 48.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for hatchy-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bd9c0484fb7fa8b7e7c23e0c42fb64114aa73f60b7e8c4aeca721213baee9026
MD5 aeac0db7a6c2a6ae7d65b30ac297b026
BLAKE2b-256 6427691ccb42860f700b8d90ebdaa52dc47e65e3abd44d206e211f74cc4dbe0e

See more details on using hashes here.

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