Skip to main content

Alpha: deterministic architecture maps, verification, and change contracts

Project description

Archbird for Python

This is the native Archbird alpha. It provides deterministic architecture maps, focused queries, structural diffs, workspaces, the built-in lexical floor, and CPython-AST precision for Python source. Verification and change contracts remain experimental during the native migration.

python -m pip install --pre archbird
archbird --config archbird.json --root /path/to/repository --check
# Python-heavy repositories automatically use up to eight AST workers.
archbird --config archbird.json --root /path/to/repository --jobs 4 --check

Library use:

from archbird import Project

project = Project.from_config("archbird.json", root="/path/to/repository")
architecture = project.map()

Archbird analyzes source bytes without importing or executing the analyzed project. The alpha package currently builds a native CPython extension from the bundled, content-hashed C snapshot. --jobs 0 is deterministic automatic selection, --jobs 1 is serial, and a positive value selects that many Python analyzer processes.

The first binary wheel targets CPython 3.10 on x86-64 glibc systems and is audited for manylinux2014/manylinux_2_17. Other supported Python versions build the same content-hashed native source from the sdist during this alpha.

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

archbird-0.0.1a1.tar.gz (848.0 kB view details)

Uploaded Source

Built Distribution

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

archbird-0.0.1a1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (591.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

File details

Details for the file archbird-0.0.1a1.tar.gz.

File metadata

  • Download URL: archbird-0.0.1a1.tar.gz
  • Upload date:
  • Size: 848.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.16

File hashes

Hashes for archbird-0.0.1a1.tar.gz
Algorithm Hash digest
SHA256 da54605f7ce523d4dc62141996f9725b8f4df7b452b52e392bf8d27cd11ede84
MD5 4dd8446dc803a7e7c980ce5509584078
BLAKE2b-256 3b0b7fbf4f7ebdaca02a3b7bbbc904369666c1aa69f6622f18165e95bda422b0

See more details on using hashes here.

File details

Details for the file archbird-0.0.1a1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for archbird-0.0.1a1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 10bc9bba1e6ed9640ec0a673f8d95a5b7c051ce574e9a210a58288b5ffb44340
MD5 7249d4aed143062058335fed5bce3c9b
BLAKE2b-256 36e7d5efb86424ee9a985d1e02f4f0fe4fc9f465244b55384de6d3b320b524f4

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