Skip to main content

Python Version PyPi Version

tdl-client-python Development

Submodules

Project contains a submodule as mentioned in the .gitmodules file:

  • tdl-client-spec (gets cloned into test/features)

Getting started

Requirements:

  • Python 3.12 (support for Python 2.x has been dropped)
  • pip (ensure it supports Python 3.10)

Python client to connect to the central kata server.

Update submodules

git submodule update --init

Setting up a development environment:

python3 -m venv venv
. venv/bin/activate
pip install -r requirements.txt

Your virtualenv will be created in ./venv/

Testing

All test require the ActiveMQ broker and Wiremock to be started.

Start ActiveMQ

export ACTIVEMQ_CONTAINER=apache/activemq-classic:6.1.0
docker run -d -it --rm -p 28161:8161 -p 21613:61613 -p 21616:61616 --name activemq ${ACTIVEMQ_CONTAINER}

The ActiveMQ web UI can be accessed at: http://localhost:28161/admin/ use admin/admin to login

Start two Wiremock servers

export WIREMOCK_CONTAINER=wiremock/wiremock:3.7.0
docker run -d -it --rm -p 8222:8080 --name challenge-server ${WIREMOCK_CONTAINER}
docker run -d -it --rm -p 41375:8080 --name recording-server ${WIREMOCK_CONTAINER}

The Wiremock admin UI can be found at: http://localhost:8222/__admin/ and docs at http://localhost:8222/__admin/docs

Cleanup

Stop dependencies

docker stop activemq
docker stop recording-server
docker stop challenge-server

Tests

Running all the tests,

behave

Pass arguments to behave, e.g. to run a specific scenario,

$ behave test/features/queue/QueueRunner.feature:154

or

$ behave -n "Process message then publish"

See behave docs for more details.

Distributable

Run the below to generate a distributable archive:

python3 -m build

The tdl-client-python-x.xx.x.tar.gz archive can be found in the dist folder.

To release

Set version manually in setup.py:

VERSION = "0.29.1"

Commit the changes

export RELEASE_TAG="v$(cat setup.py | grep "VERSION =" | cut -d "\"" -f2)"
echo ${RELEASE_TAG}

git add --all
git commit -m "Releasing version ${RELEASE_TAG}"

git tag -a "${RELEASE_TAG}" -m "${RELEASE_TAG}"
git push --tags
git push

Wait for the Github build to finish, then go to: https://pypi.org/project/tdl-client-python/

To manually build the PyPi files

TODO

Metadata

Release files for tdl-client-python 0.33.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tdl-client-python 0.33.1
File Size Uploaded Provenance Actions
tdl_client_python-0.33.1.tar.gz 15.1 kB Without provenance Details for tdl_client_python-0.33.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tdl-client-python 0.33.1
File Interpreter ABI Platform Actions
tdl_client_python-0.33.1-py3-none-any.whl Python 3 none any Details for tdl_client_python-0.33.1-py3-none-any.whl

Total release size: 33.8 kB

Release files / tdl_client_python-0.33.1.tar.gz

Download URL tdl_client_python-0.33.1.tar.gz
Size 15.1 kB
Tags Source
SHA-256 checksum
How to use checksums
02bd0102fc8c83c997ed3d329a39fecd72d78552da9faa663f386a4ff5158d30
BLAKE2b-256 checksum
How to use checksums
8bc0ac9a18034e0aa54f5c53575d168ef4af0ed967d19bc89d480b54ee9fa8c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / tdl_client_python-0.33.1-py3-none-any.whl

Download URL tdl_client_python-0.33.1-py3-none-any.whl
Size 18.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
30dc7e5b6371c2c6e7dcb5bded2379df5d35c4a445cebd279b7db615784d3ac7
BLAKE2b-256 checksum
How to use checksums
822049787ab2df3dc6ef99940439e2a858165d75a68ca881f39c2b35eac13dd0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Security for tdl-client-python 0.33.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.33.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page