Skip to main content

Client for running simulations with Epistemix Platform Cloud.

Project description

Epistemix Platform Client

For users of the epx client please visit our documentation

Epistemix Platform Client Developers Guide

Client for running simulations with Epistemix Platform Cloud.

Branching Strategy

This repo follows the environment strategy described here.

Development

Initial setup

To bootstrap the development environment using a Python virtual environment, run

. scripts/setup

This will create and activate the development Python environment. This environment can be reactivated subsequently in a different shell session with

source .venv/bin/activate

Pre-commit

Before committing, developers are asked to run the following scripts and resolve any identified issues:

scripts/test
scripts/format
scripts/lint

Test data generation

Test data is generated in the scripts/test/tests directory. Note that the test data is checked into this repo and should only need to be regenerated if the generation script needs to be changed. See resources/tests/README.md for more details.

Testing integration with SRS

The best known way to test epx_client's interaction with SRS is to package it up, install it in the Platform, and perform manual testing in-situ. This can be done by following these steps:

1. Build the Program

Checkout the feature branch that you want to build. Make sure you are in a virtual environment (see initial setup). Build the epx python package:

python -m build

This will create package artifacts in the /dist directory.

2. Upload the Artifact to Platform

Within the Platform environment that you wish to test in, click the upload file button from the file menu. Upload the built .tar.gz artifact from your local /dist directory.

upload button

3. Install epx_client on the Platform

Use pip to install the artifact on the Platform. E.g. if your build artifact is called ~/packages/epx-0.0.0+unknown.tar.gz, run

python -m pip install --user --force-reinstall ~/packages/epx-0.0.0+unknown.tar.gz

This can be done either using the Platform terminal, or from within a notebook.

--force-reinstall forces pip to install the most recently uploaded package artifact.

4. Perform manual tests as required

5. Revert back to default version of epx

To reset your Platform IDE to use the originally installed version of epx_client, uninstall epx_client. Since the testing version was installed for your user account only (--user), the globally installed version will show as the installed version.

python -m pip uninstall epx -y

Documentation

Documentation for the package uses the Sphinx framework in the docs directory. To build and locally host the docs at port 8000 run

scripts/docs

Making a Release

To make a release, follow the process described here.

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

epx-1.2.2.tar.gz (87.1 kB view details)

Uploaded Source

Built Distribution

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

epx-1.2.2-py3-none-any.whl (61.8 kB view details)

Uploaded Python 3

File details

Details for the file epx-1.2.2.tar.gz.

File metadata

  • Download URL: epx-1.2.2.tar.gz
  • Upload date:
  • Size: 87.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for epx-1.2.2.tar.gz
Algorithm Hash digest
SHA256 e59a7dc6fff934efef2c167128aa60f0eb723fefc615faad650d901251b43cd2
MD5 2bf396e5774d8b34a8dfecc76c36257c
BLAKE2b-256 41cd320f3440e3b92a1f2fde7fa9ce544d211c8edd604b770b6ee8034ae98a16

See more details on using hashes here.

Provenance

The following attestation bundles were made for epx-1.2.2.tar.gz:

Publisher: release.yml on Epistemix-Inc/epx-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file epx-1.2.2-py3-none-any.whl.

File metadata

  • Download URL: epx-1.2.2-py3-none-any.whl
  • Upload date:
  • Size: 61.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for epx-1.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b2e53be74592d09b39fc50e5cbcaa32e93611806582e9108fce19a461a95e128
MD5 718e37b5f8356dd14001b7d3d360fef5
BLAKE2b-256 46a6df12d4831acbbbc2fe87e0774f3eac087833bfaa646317445d62d4ef682a

See more details on using hashes here.

Provenance

The following attestation bundles were made for epx-1.2.2-py3-none-any.whl:

Publisher: release.yml on Epistemix-Inc/epx-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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