Skip to main content

MCAP Bag Parser

Parse MCAP rosbags into pandas dataframes using an adapter around rosx_introspection for speed.

Installation

pip install mcap-bag-parser

Note: The mcap-bag-parser is now a fully self-contained package using scikit-build-core, for automatically building/bundling rosx_introspection during pip install. Users now get a unified mcap_bag module with both legacy (BagFileParser) and modern (parse_mcap_file) APIs, with scikit-build-core handling C++ compilation and Python extension creation.

Development

# Clone with submodules
git clone --recurse-submodules https://gitlab.com/nealtanner/mcap-bag-parser.git
cd mcap-bag-parser

# Install in editable mode with test dependencies (pip >= 25.1)
pip install -e . --group test

# Run tests
pytest

For isolated development alongside other versions:

python -m venv .venv && source .venv/bin/activate
pip install -e . --group test

Rebuilding after C++ changes

# Update code and submodules
git pull --recurse-submodules  # Or: git pull && git submodule update --init

# Force rebuild (cleans build cache)
pip install --force-reinstall --no-deps -e .

# Or clean everything and rebuild
rm -rf build/ build_python/
pip install -e .

Publishing to PyPI

Important: PyPI rejects linux_x86_64 and linux_aarch64 wheels. Must use cibuildwheel for manylinux tags.

pip install build twine cibuildwheel
rm -rf dist/ wheelhouse/  # Clean old builds

# Linux - builds manylinux wheels in Docker (required for PyPI)
cibuildwheel --platform linux  # All architectures
# Or specific: --archs x86_64 or --archs aarch64

# macOS - builds universal2 wheels
cibuildwheel --platform macos

# Source distribution
python -m build --sdist

# Upload all
twine upload wheelhouse/*.whl dist/*.tar.gz  # Username: __token__

Supported platforms:

  • Linux: x86_64, aarch64 (manylinux_2_28, glibc 2.28+)
  • macOS: x86_64, arm64 (11.0+)
  • Python: 3.10, 3.11, and 3.12+ (a single stable-ABI abi3 wheel covers 3.12 and later)

Metadata

Release files for mcap-bag-parser 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for mcap-bag-parser 0.3.0
File
mcap_bag_parser-0.3.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 abi3 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
mcap_bag_parser-0.3.0-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 abi3 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
mcap_bag_parser-0.3.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
mcap_bag_parser-0.3.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
mcap_bag_parser-0.3.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
mcap_bag_parser-0.3.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details

Total release size: 5.6 MB

Release files / mcap_bag_parser-0.3.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL mcap_bag_parser-0.3.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 957.4 kB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
07f9a66491f2a0ee5e9b310c7a28d55bcace5e8c731b3fd49c034bb10c285282
BLAKE2b-256 checksum
How to use checksums
961025c4a26b1338df3c1c53928c7025dea0e5c17a85a041b986c932fb80a88b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / mcap_bag_parser-0.3.0-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL mcap_bag_parser-0.3.0-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 902.5 kB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
309ec8257643bff01960d16b8f867f9fc23a0b38f7a40e55bf45fe3d8d27f055
BLAKE2b-256 checksum
How to use checksums
fbaadcd4fe661bab8ea85c9b666f25cc72fd359ffe56f22db7a97d15fd4c30ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / mcap_bag_parser-0.3.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL mcap_bag_parser-0.3.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 960.5 kB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c603a7a0bd0915e294db6e888beec44a94673a3333bf850da76f06ed5866c6fd
BLAKE2b-256 checksum
How to use checksums
b928d28e1777ea3687fd06e6ab8dcba75a563f30d751a17f05c589231ce2427b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / mcap_bag_parser-0.3.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL mcap_bag_parser-0.3.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 905.7 kB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
f758f2f445352af61076f58e6186598c4bb8e1385577c6ba65f7747ab31deadc
BLAKE2b-256 checksum
How to use checksums
f6e20513f22331e1675b11fb4a2d3afe84308aaa40f58cc1564045494424f46c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / mcap_bag_parser-0.3.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL mcap_bag_parser-0.3.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 960.6 kB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ea4c930b08903867494bee94d70d9cf2608f4c1d4c5139399cf65c3440099c0c
BLAKE2b-256 checksum
How to use checksums
2145ce2ec80468f80ae404509b728fef2ae47f1f19fa5fdf56078fe07268e416
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / mcap_bag_parser-0.3.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL mcap_bag_parser-0.3.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 905.8 kB
Tags CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
cdea718722feae9ad78f0671b91f656f3b088725b6d65bb5c102ec0356327cb8
BLAKE2b-256 checksum
How to use checksums
e92b57c04c72dcd75c110f22fae2259f2136d959d0e845a470623b14a86f1a76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

0.3.1

7 release files

This release

0.3.0 This release

6 release files

0.2.5

3 release files

0.2.4

3 release files

0.2.3

2 release files

0.2.2

1 release file

0.2.1

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page