Skip to main content

Project and package manager for Arx workspaces

Project description

arxpm

arxpm is the Arx project manager and workspace tool.

arx stays compiler-only. arxpm owns project manifests (.arxproject.toml), workspace lifecycle, Python environment provisioning (via uv), and user-facing workflow commands.

Compatibility

  • Python 3.10+ is supported.
  • On Python 3.10, arxpm uses tomli as a compatibility fallback for tomllib.

Architecture

  • models.py: typed manifest models.
  • manifest.py: .arxproject.toml parsing and rendering.
  • _toml.py: TOML parser compatibility shim (tomllib/tomli).
  • environment.py: backend-neutral environment protocol plus managed-venv, existing-venv, and conda implementations that install packages via uv pip install --python <interp>.
  • project.py: project workflows (init, add, install, build, run, pack, publish).
  • healthcheck.py: health checks for environment and manifest.
  • cli.py: Typer command layer.

Commands (v0)

  • arxpm init
  • arxpm install
  • arxpm add <name> [--path PATH|--git URL]
  • arxpm build
  • arxpm compile
  • arxpm run
  • arxpm pack
  • arxpm publish
  • arxpm healthcheck

Development

mamba env create --file conda/dev.yaml
conda activate arxpm
poetry install --with dev
pytest

The examples/ directory ships several sample projects:

  • examples/hello-arx/ — minimal single-file project.
  • examples/multi-module/ — multi-file project whose main.x imports and calls functions from sibling .x modules. See the Multi-file Projects guide.
  • examples/local_lib/ + examples/local-consumer/ — a library and a consumer that live side by side on disk so the consumer resolves imports against the library's .x files. See Local Packages for the supported layout and the current boundary around installed libraries.

Integration tests that compile and execute the examples live in tests/test_examples_integration.py and are gated on arx and uv being on PATH. Run them with:

pytest -m integration

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

arxpm-1.3.0.tar.gz (18.8 kB view details)

Uploaded Source

Built Distribution

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

arxpm-1.3.0-py3-none-any.whl (22.4 kB view details)

Uploaded Python 3

File details

Details for the file arxpm-1.3.0.tar.gz.

File metadata

  • Download URL: arxpm-1.3.0.tar.gz
  • Upload date:
  • Size: 18.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.4 CPython/3.10.20 Linux/6.17.0-1010-azure

File hashes

Hashes for arxpm-1.3.0.tar.gz
Algorithm Hash digest
SHA256 e57417033514f1a62c3af6036306210bbd752cc0e92f815d06647e5a81112b52
MD5 ccc2996e70df5cbc5868d68439e8dc4a
BLAKE2b-256 66437ce5dda565afdb0a7f4c24a0285bfc07d4505058ec9de1e0dd445f680f7e

See more details on using hashes here.

File details

Details for the file arxpm-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: arxpm-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 22.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.4 CPython/3.10.20 Linux/6.17.0-1010-azure

File hashes

Hashes for arxpm-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d1bd0718ba8d8d12ed6d78a466adc205d9b0855755e7fbb5a27ff3845da8b3b7
MD5 0becc1211a73e0edf5b48d22ec1e0b4e
BLAKE2b-256 25a0210608e3c0c94ccfae5ada04210bf9df10d7e0d7166c15013bc75d7c775b

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