Skip to main content

Extraction implementation for modwire.

Project description

modwire-extraction

Extraction implementation for Modwire.

The primary API starts from ModwireExtraction:

from pathlib import Path

from modwire_extraction import ModwireExtraction

queryable_map = ModwireExtraction(Path("src")).generate_queryable_map("python")
print(queryable_map.source_ids())

Public data and query helpers are exported from:

  • modwire_extraction for ModwireExtraction.
  • modwire_extraction.code for CodeMap, QueryableCodeMap, and query result types.
  • modwire_extraction.dependency for dependency graph helpers.
  • modwire_extraction.extractors for extractor loading.

Compatibility notes

The public Python import paths listed above are the supported API surface for 1.0.0.

Dependency graph edges use normalized import strings. Imports such as domain/model/user are not represented as the source ID src/domain/model/user.

Serialized CodeMap JSON is intended for same-version interchange in 1.0.0. Do not treat the JSON shape as a cross-version compatibility contract yet.

TypeScript and PHP helper build files are included as package data because they are part of the bundled extractor runtimes and reproducible maintenance path.

Install

pip install modwire-extraction

Python extraction works with the active Python interpreter. TypeScript, JavaScript, TSX, and JSX extraction require node on PATH. PHP extraction requires php on PATH.

Development

python -m pip install -e ".[dev]"
pytest
python -m build
twine check dist/*

Before publishing manually, choose the release version in pyproject.toml, remove stale local artifacts, build a fresh distribution, and upload only the expected version files:

rm -rf build dist src/*.egg-info
python -m build
twine check dist/*
twine upload dist/modwire_extraction-1.0.0*

The preferred release path is GitHub Actions. Publish a GitHub Release tagged vX.Y.Z or run the Release workflow manually for that tag after configuring PyPI Trusted Publishing for workflow release.yml and GitHub Environment pypi.

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

modwire_extraction-1.0.2.tar.gz (2.3 MB view details)

Uploaded Source

Built Distribution

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

modwire_extraction-1.0.2-py3-none-any.whl (2.3 MB view details)

Uploaded Python 3

File details

Details for the file modwire_extraction-1.0.2.tar.gz.

File metadata

  • Download URL: modwire_extraction-1.0.2.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for modwire_extraction-1.0.2.tar.gz
Algorithm Hash digest
SHA256 ae1c2b6334c24144a8c965c697664f7f7ac34a710d6a1a39b121bae6f0cf75e0
MD5 71e6af2498643b836915413ea5e20ea1
BLAKE2b-256 746aa2b338a3347a689e5d93c8a27e0168ac535495da5741e222e5aa49f0158f

See more details on using hashes here.

Provenance

The following attestation bundles were made for modwire_extraction-1.0.2.tar.gz:

Publisher: release.yml on 9orky/modwire-extraction

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file modwire_extraction-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for modwire_extraction-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ed52153994cb5db43864d66916e2b9e09e49576c2516ecb8b1f9b71b4635c1ac
MD5 b966daa1be8949a35538b37aeda28a6a
BLAKE2b-256 964fafc2c66d5b041adc0db4293d61f597d602ea7aa5dff84089123b055524cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for modwire_extraction-1.0.2-py3-none-any.whl:

Publisher: release.yml on 9orky/modwire-extraction

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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