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.3.1.tar.gz (69.4 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.3.1-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: xapp_tools-0.3.1.tar.gz
  • Upload date:
  • Size: 69.4 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.3.1.tar.gz
Algorithm Hash digest
SHA256 54ceeee16f6a95675749e0a83d02dba2cf230205f965d549d780ea3d75a003af
MD5 8355f77b0de7ecf8d4af3c2207d9623f
BLAKE2b-256 cc172ca87df686561681572120122e1db58589f1e1e1b9b980c3728700bd9df6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xapp_tools-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 17.2 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.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cda679fbd2dc56c8834851c4ac4eec32164ad837dbc6a8351b40e6d2286ecd4f
MD5 1fd228db89c36dbf608fa01da1ed925d
BLAKE2b-256 8da1019c71be22f21595dacddfa23649d95142521c641194893f74c1ef3b4b83

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