Skip to main content

A collection of tools for working with xapp-core packages.

Project description

xapp-tools

Coverage

Purpose

xapp-tools is an installable package of reusable build and development tooling for Xapp-based Python projects. Its role is to provide automation that is broadly useful across repositories, not app-specific behavior.

Usage

uv add xapp-tools --dev
xapp-tools --help

Available commands:

version — Version management

  • xapp-tools version show — print the current version from pyproject.toml
  • xapp-tools version set X.Y.Z — set an explicit version (strict SemVer)
  • xapp-tools version bump [patch|minor|major] — bump the version
  • xapp-tools version check-source — ensure no hardcoded __version__ in source

tag — Git tag management

  • xapp-tools tag dryrun — print the tag without creating it
  • xapp-tools tag create — create an annotated local git tag
  • xapp-tools tag push — push the tag to origin

dist — Distribution artifacts

  • xapp-tools dist verify — verify wheel and sdist build artifacts
  • xapp-tools dist wheel-smoke — smoke-test the installed wheel in a clean venv
  • xapp-tools dist api-snapshot — capture or verify the public API contract

Top-level

  • xapp-tools coverage-badge — update the coverage badge in README
  • xapp-tools update-deps — refresh all dependencies to latest versions via uv

Reuse Policy

Tools in this package should be written so they can be reused in other Python projects with little or no modification. When project values are needed, prefer metadata/config introspection (for example from pyproject.toml) over hardcoded constants.

Scope Boundaries

Only generic tooling belongs in this package.

Allowed examples:

  • Dependency maintenance helpers
  • Packaging/public API verification scripts
  • Repository metadata utilities
  • Generic release/build checks

Not allowed examples:

  • Application/domain business logic
  • Project feature commands
  • One-off scripts tightly coupled to a specific app's runtime behavior

This packages offers a hatch hook that combines the README with the HISTORY.

In the package which implements xapp-tools add the follwoing the pyproject.toml:

requires = ["hatchling", "xapp-tools"]
build-backend = "hatchling.build"

[tool.hatch.metadata.hooks.combined-readme]

Or simply use ``hatch-fancy-pypi-readme`.

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

xapp_tools-0.4.0.tar.gz (69.7 kB view details)

Uploaded Source

Built Distribution

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

xapp_tools-0.4.0-py3-none-any.whl (17.9 kB view details)

Uploaded Python 3

File details

Details for the file xapp_tools-0.4.0.tar.gz.

File metadata

  • Download URL: xapp_tools-0.4.0.tar.gz
  • Upload date:
  • Size: 69.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for xapp_tools-0.4.0.tar.gz
Algorithm Hash digest
SHA256 441775c2aaa1bb27a9bba242af6788bf844b1a55b5d3f9f67d263d681ce9cd82
MD5 5f484c3c23fecd3ab97d57a9629b5258
BLAKE2b-256 36c523320ec8fe528a7d0e4e7467bbf162d69ba901ce7866c54eac87fd105261

See more details on using hashes here.

File details

Details for the file xapp_tools-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: xapp_tools-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 17.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for xapp_tools-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f9cb395f92083cf30fd3af589951f445f653a9cbc620fd53500a31df28cc1542
MD5 29832225289d35c09c0ecabd8668433c
BLAKE2b-256 4217739d0ee5b0ea38eb480038453347278ddec3000cd56542ca6fe0f0095ff6

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