Skip to main content

A library for managing FMU settings

Project description

fmu-settings

ci docs

Documentation: https://equinor.github.io/fmu-settings/

Source code: https://github.com/equinor/fmu-settings/

fmu-settings is the Python core library for reading, writing, and managing resources in .fmu/ directories for FMU projects and user environments.

It owns the filesystem behavior around those resources: initialization, discovery, configuration models, resource managers, locking, cache handling, changelogs, restore behavior, and synchronization helpers.

FMU Settings Architecture

FMU Settings is split across a few repositories:

flowchart LR
    CLI["fmu-settings-cli"]
    API["fmu-settings-api"]
    GUI["fmu-settings-gui"]
    LIB["fmu-settings"]
    MODELS["fmu-datamodels"]

    CLI --> API
    CLI --> GUI
    CLI --> LIB
    GUI --> API
    API --> LIB
    LIB --> MODELS
    API --> MODELS
  • fmu-settings is the core library for reading, writing, and managing .fmu/ resources.
  • fmu-datamodels provides shared Pydantic domain models.
  • fmu-settings-api exposes fmu-settings through a FastAPI application layer.
  • fmu-settings-gui provides the browser-based user interface.
  • fmu-settings-cli provides the user-facing command line interface, including commands that bootstrap local user state and launch the API and GUI.

See ARCHITECTURE.md for the library architecture and a high-level ecosystem overview.

Documentation

The published documentation is the best starting point for users:

Documentation sources live under docs/src/.

Developing

Clone and install into a virtual environment.

git clone git@github.com:equinor/fmu-settings.git
cd fmu-settings
# Create or source virtual/Komodo env
pip install -U pip
pip install -e ".[dev]"
# Make a feature branch for your changes
git checkout -b some-feature-branch

Run the tests with:

pytest -n auto tests

Ensure your changes will pass the various linters before making a pull request. It is expected that all code will be typed and validated with mypy.

ruff check
ruff format --check
mypy src tests

See CONTRIBUTING.md for more.

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

fmu_settings-0.32.0.tar.gz (777.7 kB view details)

Uploaded Source

Built Distribution

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

fmu_settings-0.32.0-py3-none-any.whl (61.1 kB view details)

Uploaded Python 3

File details

Details for the file fmu_settings-0.32.0.tar.gz.

File metadata

  • Download URL: fmu_settings-0.32.0.tar.gz
  • Upload date:
  • Size: 777.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fmu_settings-0.32.0.tar.gz
Algorithm Hash digest
SHA256 8d22cd23c0857a926279f4453c1deda2c9d7ff1807b1189bcfdc80349ea60713
MD5 ada00cabf11db0d220a00dfd83f1da8e
BLAKE2b-256 b348f6558f4dcdd1cd1c4b2e13c7964d5bca701a1fde22bc909bd97326a0c2fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for fmu_settings-0.32.0.tar.gz:

Publisher: publish.yml on equinor/fmu-settings

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

File details

Details for the file fmu_settings-0.32.0-py3-none-any.whl.

File metadata

  • Download URL: fmu_settings-0.32.0-py3-none-any.whl
  • Upload date:
  • Size: 61.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fmu_settings-0.32.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ffb4f6bbd2fa2c7101a33a9bdeac2ae83a5b9b66676e496b40ce4173fd722c9d
MD5 f6c5380318abdab6e58cea1c4fd8c2c3
BLAKE2b-256 ed11ebc7833b99a72fd074ef16e3d903660fcbd23576d358af6e1a54e70eb8d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for fmu_settings-0.32.0-py3-none-any.whl:

Publisher: publish.yml on equinor/fmu-settings

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