--- id: catkin-pkg version: "1.1.0" license: BSD license_treatment: permissive maintenance: aging --- # catkin-pkg — catkin package library License: permissive · Maintenance: aging · Downloads: 898.1K/mo ## What it is and what it does catkin_pkg is a standalone Python library that reads and interprets Catkin package metadata—the format used by ROS to describe package structure, dependencies, build rules, and metadata. It parses package.xml files and provides programmatic access to that information, making it useful for build tools, dependency analysis, and package management scripts that work with ROS projects. The library depends on standard Python utilities (docutils, packaging, python-dateutil, pyparsing, setuptools) and has been part of the ROS infrastructure since 2012. It is primarily used by ROS build systems and tools that need to understand package relationships and metadata without invoking the full Catkin build environment. Use it for: - Parse ROS package.xml files to extract dependencies and metadata in build automation scripts. - Analyze package relationships and generate dependency graphs for ROS workspaces. - Validate Catkin package structure and metadata in CI/CD pipelines for ROS projects. - Programmatically inspect package information in tools that manage or document ROS packages. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Parses and manages Catkin package metadata and configuration files for the ROS (Robot Operating System) build system, enabling programmatic access to package structure and dependencies. Yes, if you work with ROS and need to programmatically read package metadata. The library is stable, has no known vulnerabilities, and carries a permissive license. However, maintenance is aging (338 days since last release)—verify that it supports your ROS version and use case before adopting it in new projects. ## Install pip install catkin-pkg uv add catkin-pkg poetry add catkin-pkg ## Installing catkin-pkg Before you install: Low install friction with a pure-Python wheel distribution. Maintenance status is aging—last release was 338 days ago, though the repository remains active with a recent commit on 2025-09-29. Suitable for stable, established ROS workflows. License in practice: BSD permissive license allows use in both open-source and proprietary projects with minimal restrictions; attribution required but no copyleft obligations. Quickstart: pip install catkin-pkg from catkin_pkg.package import parse_package package = parse_package('/path/to/package.xml') Requires Python 3.6 or later; intended for use within ROS environments where package.xml files are present. Verify before relying: - Whether this package is actively maintained for new ROS versions or primarily serves legacy ROS 1 systems. - Specific Catkin package format versions supported by this release. ## Package facts - License: BSD (permissive) - Python support: supports_current - Install friction: low - Maintenance: aging - Downloads: 898.1K/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags catkin package parsing, ROS package metadata, catkin build system library, ROS package dependencies, catkin package configuration, ros, build-system, package-management [View on SkillFed](https://skillfed.io/packages/catkin-pkg) · [View on PyPI](https://pypi.org/project/catkin-pkg/)