Skip to main content

Bazaar formats

Project description

bzrformats

Core Bazaar format implementations and utilities, extracted from the Breezy version control system.

Overview

bzrformats provides the internal format implementations that power Bazaar-compatible version control. It includes serialization, compression, indexing, and data structure modules for reading and writing Bazaar repositories, working trees, and branches.

Features

  • Versioned file storage — knit, weave, and groupcompress formats
  • Directory state tracking — efficient metadata caching for working trees
  • Serialization — XML-based inventory and revision serialization (formats 5–8), plus CHK-based serialization
  • Indexing — graph index and B+Tree index for pack-based repositories
  • Compression — groupcompress for efficient delta storage of related files
  • Pack repositories — container format for bundling versioned data
  • Rust accelerators — performance-critical code implemented in Rust with Python bindings via PyO3
  • Cython extensions — optional compiled extensions for hot paths

Installation

pip install bzrformats

Build requirements

Building from source requires:

  • Python >= 3.10, < 3.15
  • A Rust toolchain (for the compiled extensions)
  • Cython >= 0.29

Usage

This package is primarily intended for use by version control systems and tools that need to work with Bazaar format data. The modules provide building blocks for implementing Bazaar-compatible storage formats.

from bzrformats import knit, groupcompress, index

License

GNU General Public License v2 or later (GPLv2+). See COPYING.txt.

History

These modules were originally part of the Breezy project (breezy.bzr) and have been extracted into a standalone package.

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

bzrformats-3.4.4.tar.gz (783.8 kB view details)

Uploaded Source

File details

Details for the file bzrformats-3.4.4.tar.gz.

File metadata

  • Download URL: bzrformats-3.4.4.tar.gz
  • Upload date:
  • Size: 783.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for bzrformats-3.4.4.tar.gz
Algorithm Hash digest
SHA256 3709da4b5ac22d4cd6b4b778c5d1148fd97be2988c623db8d73f0870886fec58
MD5 265d48858e2d91e4c16b41580add1801
BLAKE2b-256 ea62c47164ae1e06e86e98c0c1b04273af83aee48653f313ff56b2d7ebcae80d

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