Skip to main content

twined

A library to help digital twins and data services talk to one another. Read more at twined.readthedocs.io

PyPI version Build Status codecov Documentation Status pre-commit black

Developer notes

Documentation for use of the library is here. You don't need to pay attention to the following unless you plan to develop Twined itself.

Contributing

  • Please raise an issue on the board (or add your $0.02 to an existing issue) so the maintainers know what's happening and can advise / steer you.

  • Create a fork of twined, undertake your changes on a new branch, named like issue-84 or similar. To run tests and make commits, you'll need to do something like:

git clone <your_forked_repo_address>    # fetches the repo to your local machine
cd twined                               # move into the repo directory
pyenv virtualenv 3.6.9 twinedenv        # Makes a virtual environment for you to install the dev tools into. Use any python >= 3.6
pyend activate twinedenv                # Activates the virtual environment so you don't screw up other installations
pip install -r requirements-dev.txt     # Installs the testing and code formatting utilities
pre-commit install                      # Installs the pre-commit code formatting hooks in the git repo
tox                                     # Runs the tests with coverage. NB you can also just set up pycharm or vscode to run these.
  • Adopt a Test Driven Development approach to implementing new features or fixing bugs.

  • Ask the twined maintainers where to make your pull request. We'll create a version branch, according to the roadmap, into which you can make your PR. We'll help review the changes and improve the PR.

  • Once checks have passed, test coverage of the new code is >=95%, documentation is updated and the Review is passed, we'll merge into the version branch.

  • Once all the roadmapped features for that version are done, we'll release.

Release process

The process for creating a new release is as follows:

  1. Check out a branch for your release, called eg release/X.Y.Z
  2. Create a Pull Request into the main branch.
  3. Undertake your changes in other branches according to the git flow and create pull requests into release/X.Y.Z
  4. Ensure that documentation is updated to match changes, and increment the changelog. Pull requests which do not update documentation will be refused.
  5. Ensure that test coverage is sufficient. Pull requests that decrease test coverage will be refused.
  6. Ensure code meets style guidelines (pre-commit scripts and flake8 tests will fail otherwise)
  7. Address Review Comments on the PR
  8. Ensure the version in setup.py is correct and matches the branch version.
  9. Merge to main. Successful test, doc build, flake8 and a new version number will automatically create the release on pypi.
  10. Confirm the successful release on pypi
  11. Go to code > releases and create a new release on GitHub at the same SHA.

Metadata

Release files for twined 0.7.0

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

Source distribution (sdist)

Source distribution for twined 0.7.0
File Size Uploaded Provenance
twined-0.7.0.tar.gz 355.3 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for twined 0.7.0
File Interpreter ABI Platform
twined-0.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 714.0 kB

Release files / twined-0.7.0.tar.gz

Download URL twined-0.7.0.tar.gz
Size 355.3 kB
Tags Source
SHA-256 checksum
How to use checksums
402c5bda416e8feb031ab9d32b468dcfab84cc6f03b1fd6779057d1016f2655f
BLAKE2b-256 checksum
How to use checksums
81e202c14be219457150c5bf0387db333a822ef3968648f23da4f7db0dbf7f88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 13, 2025.

Transparency log

Release files / twined-0.7.0-py3-none-any.whl

Download URL twined-0.7.0-py3-none-any.whl
Size 358.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7b582aa8a517c15faa49f453986a245a4119901aa8ce60bf2b1fae30656777ff
BLAKE2b-256 checksum
How to use checksums
969671b9a8d179232e1d1660f446c69be93c026193dbbf1c4f1e540ad5e2fece
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 13, 2025.

Transparency log

Security for twined 0.7.0

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for twined-0.7.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 13, 2025.

Transparency log

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.

Release history Release notifications | RSS feed

This release

0.7.0 This release

2 release files Full 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