Skip to main content

The Modular Autonomous Discovery for Science (MADSci) Common Definitions and Utilities.

Project description

MADSci Common

Common types, validators, serializers, utilities, and other flotsam and jetsam used across the MADSci toolkit.

Installation

The MADSci common components are available via the Python Package Index, and can be installed via:

pip install madsci.common

This python package is also included as part of the madsci Docker image.

MADSci Types

The MADSci toolkit uses a variety of "types", implemented as Pydantic Data Models. These data models allow us to easily create, validate, serialize, and de-serialize data structures used throughout the distributed systems. They can easily be serialized to JSON when being sent between system components over REST or stored in JSON-friendly databases like MongoDB or Redis, or to YAML for human-readable and editable definition files.

You can import these types from madsci.common.types, where they are organized by subsystem.

Settings

MADSci uses Pydantic Settings to configure many of it's subsystems. This allows users to configure managers, clients, nodes, and other MADSci components using command line arguments, environment variables, settings files in various formats (.env, .toml, .yaml, .json), and secrets files.

Settings Precedence

Detailed documentation for what configuration can be set is included in the Configuration.md, and an example .env is included in the root of the MADSci repository.

In general, each subsystem supports configuration via both a generic file (.env, settings.yaml, etc), and a subsystem-specific file (event_client.env, event_client.yaml, etc). In such cases, the subsystem specific version takes precedence over the generic version.

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

madsci_common-0.4.0.tar.gz (40.8 kB view details)

Uploaded Source

Built Distribution

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

madsci_common-0.4.0-py3-none-any.whl (54.2 kB view details)

Uploaded Python 3

File details

Details for the file madsci_common-0.4.0.tar.gz.

File metadata

  • Download URL: madsci_common-0.4.0.tar.gz
  • Upload date:
  • Size: 40.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.24.2 CPython/3.9.22 Linux/6.11.0-1014-azure

File hashes

Hashes for madsci_common-0.4.0.tar.gz
Algorithm Hash digest
SHA256 91b9f6ae1e20d41ce112f223f6901b4a8fc7a49bb04695586e279edb00c231e2
MD5 e72867907ed7a06f5a14e49673267ad5
BLAKE2b-256 49d4d6d359e4c419226f304e6331cf07fce2819af5df7e16ec823b90e2440431

See more details on using hashes here.

File details

Details for the file madsci_common-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: madsci_common-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 54.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.24.2 CPython/3.9.22 Linux/6.11.0-1014-azure

File hashes

Hashes for madsci_common-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 18ae3040b1a9bc73692f857e4b752bcaef3ee4805df3f982c1e3ecc47c9ff5b4
MD5 6a4b620c3c2cf32028500ec3228453c5
BLAKE2b-256 bdb61e6eeb5b387670d30025f21247f09a6419247554f1ae7874f5d2c99e8744

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