Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Modelon-impact-client

Client library for easy scripting against Modelon Impact

Installation

For installation instructions and requirements, please refer to the documentation.

Develop

Devcontainer

If you are developing with VS Code you can use the devcontainer which gives gives you a ready to use environment for development. Just click the "Reopen in Container" button after opening the project in VS Code.

Tips and tricks

It is possible to run the 'make' commands listed bellow using the devcontainer. It will detect being in a container and bypass Docker parts of the commands.

You can open a project with the dev-container directly without having to open and then re-load. Standing in the project directory you can run:

devcontainer open .

Note that this requires the devcontainer-cli.

You can add your own extensions to devcontainers. These extensions will be added for all devcontainers. First open your 'settings' as JSON. Then, to add for example the "GitLens" extension, put the following at the bottom of the settings:

    ...
    "remote.containers.defaultExtensions": ["eamodio.gitlens"]
}

VS Code also have a 'Install Local Extensions in 'Remote' command, but it must be repeated for each devcontainer and everytime a devcontainer is re-built.

Creating a shell

Modelon-impact-client is developed using a Docker container for all build tools. You can get a shell into said container by running:

make shell

Manage dependencies

Dependencies are managed by poetry. Add dependencies by running poetry add <package> or poetry add <package> --dev inside the shell

Running tests

Tests are executed by running make test. You can also run make test-watch to get a watcher that continuously re-runs the tests.

Running lint

make lint

Build

Building modelon-impact-client is done by running

make wheel

Test

The tests for modelon-impact-client could be run by executing

make test

VCR test

Vcrpy(https://vcrpy.readthedocs.io/en/latest/) is used to mock the http requests and responses for some of the tests. VCR.py records all HTTP interactions that take place in a flat file called a 'cassette'. These files could are stored in the impact-client-python/tests/fixtures/vcr_cassettes folder. When an API response/request body is updated on MI, these files need to be regenerated. To regenerate these file, follow the following steps:

  1. Start Modelon impact cloud - https://impact.modelon.cloud.
  2. Generate an MI api key and JH token and store them in secrets folder. See Readme for more information.
  3. Delete the cassette file you wish to regenerate from impact-client-python/tests/fixtures/vcr_cassettes folder.
  4. The file could now be regenrated by executing
make regenerate-cassette

Release

The modelon-impact-client build process is a fully automated using Semantic-release.

Automation is enabled for:

  • Bumping version
  • Generate changelog

This is done based on git commit semantics as described here: https://semantic-release.gitbook.io/semantic-release/

To make a new release simply run:

make publish

This command will detect what branch you are on and your git history and make a appropriate release.

Current configuration can be found in .releaserc and specifies that commits to branch master should be released and commits to branch beta should be released as a pre-release.

This workflow make sure that no administrative time needs to be put into managing the release workflow.

Metadata

Release files for modelon-impact-client 4.15.0b7

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

Source distribution (sdist)

Source distribution for modelon-impact-client 4.15.0b7
File Size Uploaded Provenance Actions
modelon_impact_client-4.15.0b7.tar.gz 80.7 kB Without provenance Details for modelon_impact_client-4.15.0b7.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for modelon-impact-client 4.15.0b7
File Interpreter ABI Platform Actions
modelon_impact_client-4.15.0b7-py3-none-any.whl Python 3 none any Details for modelon_impact_client-4.15.0b7-py3-none-any.whl

Total release size: 203.1 kB

Release files / modelon_impact_client-4.15.0b7.tar.gz

Download URL modelon_impact_client-4.15.0b7.tar.gz
Size 80.7 kB
Tags Source
SHA-256 checksum
How to use checksums
03a8d935fcfee16d48cc19502b61e74041a3be10f450cca689027d9b974fe3a8
BLAKE2b-256 checksum
How to use checksums
7617d6ed3670e48a91cfe0b33424cea5fcfc853b722b1b62356474b1ca795d03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.6.1 CPython/3.9.25 Linux/4.18.0-553.81.1.el8_10.x86_64

Release files / modelon_impact_client-4.15.0b7-py3-none-any.whl

Download URL modelon_impact_client-4.15.0b7-py3-none-any.whl
Size 122.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cbaf1a40b751180fa36eced96f06c705504027837f8e464afc4ec4aaeadf30b2
BLAKE2b-256 checksum
How to use checksums
878b43bcf6a73a391303922962895cad750c2e54174fa38af75e083bd773cbea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.6.1 CPython/3.9.25 Linux/4.18.0-553.81.1.el8_10.x86_64

Security for modelon-impact-client 4.15.0b7

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
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