Changelog

All notable changes to this project will be documented here.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[unreleased]

[0.5.9] - 2025-01-29

  • package contains function mantik.init() which bookkeeps notebook source if found (!242)

[0.5.8] - 2025-01-15

  • Streamline documentation look and feel with mantik platform

    • Look and Feel, Table of contents refactoring (!258, !257)

    • Make docs menu collapsible (!262)

  • Fix: cli command documentation is again generated (!261)

  • Documentation: Updated the contribution guide for ‘how to document’ (!258)

  • Documentation: Mantik Quick Start Page (!259)

  • Documentation: Add “how to create a local run with dev” to contribution guide documentation (!255)

[0.5.7] - 2024-08-05

  • package contains function mantik.init() which bookkeeps run infrastructure (!242)

  • Different run managers (Virtualenv, local or Conda) can be used as the run managers for local runs. Default is set to local (!241)

[0.5.6] - 2024-07-29

  • Private GIT repos can be used as Data repos (!240)

  • Change data download interface - use branch and commit instead of mantik version (!240)

  • Fix documentation and improve user-facing APIs (!236)

[0.5.5] - 2024-07-24

Fixed

  • Broken import (!237)

[0.5.4] - 2024-07-24

Fixed

  • Local run uses local environment (!237)

  • Mantik data download does not switch directories (!237)

[0.5.3] - 2024-07-23

Added

  • Mantik data fetch function can derive arguments from environment (!235)

  • Local run function passes enrivonment variables to run entrypoint (!235)

  • Private GIT repos can be used as Code repos (!231)

[0.5.2] - 2024-07-17

Added

  • Allow absolute path for data client (!229)

Fixed

  • Remove project reference from data client (!229)

  • Fix broken imports (!232)

[0.5.1] - 2024-06-14

Added

  • Added documentation for newly integrated MLflow experiment view (!214)

  • Removed old tracking server (replaced by tracking server forked)

  • Upload logs for local runs (!220)

  • Added download data repository functionality !222

  • Removed data repository reference tracking from the client !222

[0.5.0] - 2024-05-06

Added

  • Fix add models command in cli and python client (!207)

  • Change default tracking uri (!211)

[0.4.9] - 2024-03-13

Added

  • Basic firecREST support (!188)

  • Download model artifacts is supported (!192)

Fixed

  • File upload via firecREST (!190)

  • Modules load on compute node instead of login node (!191)

  • Worker times out when submitting a run via firecREST (!193)

[0.4.8] - 2024-02-26

Added

  • Compute Backend supports run submission via firecREST (!181)

  • CLI models build and build-status command (!186)

[0.4.7] - 2024-01-24

Added

  • CLI models download command (!180)

[0.4.6] - 2023-12-19

Added

  • Distinct commands for on login and compute node that can be executed before and after application execution (!155)

  • Added tutorial and defaults tracking uri (!161)

  • Added documentation (!162)

  • Fixed parameter and artifact tracking (!164)

[0.4.5] - 2023-12-12

Added

  • Convenience funtions for mantik.init_tracking() and MLflow commands to avoid application crashes (!156)

  • Local Runs (!157)

  • Status tracking for local Runs (!159)

  • Optional saving of system details for local runs (!158)

[0.4.4] - 2023-10-23

Added

  • Trained model management through client (!148)

[0.4.3] - 2023-10-16

Added

  • RBAC for experiments in Mlflow UI (!171)

Changed

  • Reduced installation size from ~800MB to ~19MB with extra dependencies (!140:

    • mlflow: mlflow-skinny (+19MB)

    • s3: fs, fss3fs` (+90MB)

    • unicore: pyunicore, fs (+21MB)

    The maximum package size hence is ~144MB with all extras installed.

Fixed

  • Environment variables now inherited in Apptainer containers (!146)

[0.4.2] - 2023-09-14

Added

Changed

  • Refactor documentation and tutorials (!127)

  • Support S3 as backend to remote file service (!117)

  • Refactor API (!126)

Fixed

  • Client can fetch connections by ID (!126)

  • Run names in Mlflow and Mantik are identical (!124)

[0.4.1] - 2023-08-24

Added

  • Backend config:

    • Options can now be passed to the Apptainer executable via Environment.Apptainer.Options (!100)

    • Execution environment now optional (!101)

    • Pre- and post-run commands can be used (!98)

    • GPUs per node can be specified via Resources.GPUs (!103)

  • Connections stored on the Mantik platform can be used with Python API and CLI (!109)

Changed

Fixed

  • Backend config options adjusted to latest UNICORE version 9.2 (!103)

    • Resources.CPUs renamed to Resources.TotalCPUs

    • Resources.Memory renamed to Resources.MemoryPerNode

  • Resources.CPUsPerNode used for SRUN_CPUS_PER_TASK if given (!103)

[0.3.1] - 2023-07-07

Added

Changed

  • Move system tests to separate repository(!87)

Fixed

  • Bug tracking email address (!61)

  • Publishinǵ and layout of the documentation(#101)

  • Better logging with tracking server (!68, !69, !70)

  • Make config case insensitive(#111)

[0.2.0] - 2023-04-12

Added

  • Added documentation (mantik-ai/docs#9, mantik-ai#13)

  • Added Changelog (#79)

  • Project configuration is now validated before being sent to the compute backend (#83)

  • Added license (#61)

  • Added contribution guide (#63)

  • Logs from remote execution can now be accessed by a user (#66)

  • Added py.typed (#82)

  • Docker images are now built in the CI (#77)

Changed

  • Drop support for python3.7, upgrade to mlflow version 2.2.2 (!60)

  • Move AWS deployment code to separate project (#76)

Fixed

  • Crashing of the Compute Backend when receiving large Singularity images (#56)

  • JSON decoding error when calling mantik init (#71)

  • Internal Server Error raised when a token is invalid for unknown reason (#47)

  • Return correct error message when Singularity image path is incorrect (#42)

  • Dedicated error message when job ID was not found (#69)

[0.1.2] - 2022-11-25

Added

  • Add CLI commands for runs mantik runs

    • submit: submit a run to be executed on a remote system (#44)

    • cancel: cancel a submitted run (#65)

    • list: list all submitted runs

    • status: get the run status

    • info: get detailed information about the run

    • logs: get the application logs (stdout/stderr) (#52)

    • download: download a file or folder from the run’s working directory

  • Support usage of Singularity images located on a remote system (see Backend Config changes) (#49)

  • Support non-containerized Python applications (see Backend Config changes) (#49)

  • Backend Config now supports YAML format (#46)

Changed

  • Changes to the Backend Config:

    • Environment now defines the application environment (#49)

      • Environment.Singularity.Path now defines the image location. Environment.Singularity.Type can be local or remote, defining whether the given path applies to the local or the remote system.

      • Environment.Python (optionally Environment.Python.Path) allows to give the path to a venv directory that should be sourced before executing an application.

      • Environment.Modules allows to define a list of modules to load in the remote system before executing an application.

      • Environment.Variables now allows defining environment variables to be set in the execution environment.

    • Exclude field allows excluding files when uploading the MLproject directory #48

Fixed

  • Error when trying to log emtpy strings as parameters or metrics by updating to MLflow 1.30.0 (#50)

[0.1.1] - 2022-08-25

Added

  • Add CLI command to initialize tracking and return the token as an environment variable (#41)

[0.1.0] - 2022-07-14

Added

  • UNICORE plugin for MLflow (#2)