v2.3.6 - 2026-02-27
- Fixed retry capability allowing metrics to be re-sent if specific server errors are returned.
- Added ability to specify above one server in the
simvue.tomlfile usingprofiles. - Enforced keyword arguments for readability and certainty in intent within initialiser for
simvue.Run.
v2.3.5 - 2026-02-12
- Ensure runs do not enter lost state during metric upload.
- Set total grid metric threshold to be greater than individual.
v2.3.4 - 2026-02-11
- Add handling of metrics based on size and enforce 10k points per grid metric as per server.
- Freeze
flatdict==4.0.0do address install issues.
v2.3.3 - 2026-02-10
Broken release yanked from PyPi
v2.3.2 - 2026-02-10
Broken release yanked from PyPi
v2.3.1 - 2026-01-30
- Allow negative time when logging simulation metrics.
v2.3.0 - 2025-12-11
- Refactored sender functionality introducing new
Senderclass. - Added missing
createdproperty toUserandTenantLLAPI objects.
v2.2.4 - 2025-11-13
- Added fixes for future servers which disallow extra arguments in requests.
v2.2.3 - 2025-11-10
- Use
msgpackforGridMetricsin a manner similar toMetrics. - Fix incorrect setting of global log level.
- Fix alert duplication in offline mode and other offline fixes.
v2.2.2 - 2025-10-14
- Enforced use of UTC for all datetime recording.
- Added support for Python3.14.
v2.2.1 - 2025-10-13
Broken release yanked from PyPi
v2.2.0 - 2025-09-22
- Improves handling of Conda based environments in metadata collection.
- Adds additional options to
Client.get_runs. - Added ability to include environment variables within metadata for runs.
- Added new feature allowing users to log tensors as multidimensional metrics after defining a grid.
- Improves checks on
offline.cachedirectory specification in config file. - Added ability to upload multiple runs as a batch via the low level API.
v2.1.2 - 2025-06-25
- Fixed issue in downloading files from tenant runs.
- Fixed bug in pagination whereby the count value specified by the user is ignored.
- Fixed bug where uploading larger files timed out leading to file of size 0B.
- Fixed bug where if the range or threshold of an alert is zero the alert type validation fails.
- Fixed bug in
Folder.idswherekwargswere not being passed toGET. - Ensured all threads have
daemon=Trueto prevent hanging on termination. - Added error when
close()method is called within thesimvue.Runcontext manager.
v2.1.1 - 2025-04-25
- Changed from CO2 Signal to ElectricityMaps
- Fixed a number of bugs in how offline mode is handled with emissions
- Streamlined EmissionsMonitor class and handling
- Fixed bugs in client getting results from Simvue server arising from pagination
- Fixed bug in setting visibility in
run.initmethod - Default setting in
Client.get_runsis nowshow_shared=True
v2.1.0 - 2025-03-28
- Removed CodeCarbon dependence in favour of a slimmer solution using the CO2 Signal API.
- Added sorting to server queries, users can now specify to sort by columns during data retrieval from the database.
- Added pagination of results from server to reduce await time in responses.
- Added equivalent of folder details modification function to
Clientclass.
v2.0.1 - 2025-03-24
- Improvements to docstrings on methods, classes and functions.
v2.0.0 - 2025-03-07
- Add new example notebooks
- Update and refactor examples to work with v2.0
- Fix bug in offline artifacts using wrong file path
- Change names of sustainability metrics
- Fix
Selfbeing used in typing Generators so that Simvue works with Python 3.10 in Conda - Updated codecarbon to work with new API
- Codecarbon now works with offline mode
- Codecarbon metadata dict is now nested
- Add PID to sender lock file so it can recover from crashes
- Add accept Gzip encoding
- Fixed list of processes to add / remove from existing list of objects
- Add step to resource metrics
- Fix bug where process user alerts should not be overridden if manually set by the user
- Removed 'no config file' and 'unstaged changes' warnings from Offline mode as they do not apply
- Made
staging_checknot apply in Offline mode - Added heartbeat functionality to Offline mode
- Moved away from
FlatDictmodule for metadata collection, fixes Simvue in Jupyter notebooks - Fixed
reconnect()by settingread_onlyto False and added tests - Fixed resource metrics collection to return measurement on startup and use short interval for more accurate measurements
- Fixed
set_pidso that resource metrics are also collected for child processes of it - Improved sender by having all cached files read at start and lock file so only one sender runs at once
- Added
nameoption inlog_alertand added tests - Fixed client
get_alertsand improved tests - Removed all server config checks in Offline mode
- Fixed
add_alertsso that it now works with both IDs and names - Improved alert and folder deduplication methods to rely on 409 responses from server upon creation
- Added
attach_to_runoption to create alerts methods so that alerts can be created without a run attached - Improved merging of local staging file and _staged dict using
deepmerge- fixes bugs with tags, alerts and metadata in offline mode - Added
started,createdandendedtimestamps to runs in offline mode - Remove all erronous server calls in offline mode
- Fixed method to find simvue.toml config files, now just looks in cwd and home
- Added run notification option to
run.initso that users can now get emails upon their runs completing - Fixed artifact retrieval by run so that
categoryparameter works correctly - Fixed bug where file artifacts wouldn't be saved correctly in offline mode if sender runs in different location to script
- Fixed bug where DEBUG log messages were spamming to the console
- Fixed link to run dashboard printed to the console by removing
/api - Fixed bug where offline mode wouldn't work if no run name provided
- Fixed bug where errors would be thrown if a traceback was logged as an event when a run was already terminated
- Fixed hierarchical artifact retrieval to maintain directory structure
- Loosened Numpy requirement to >2.0.0
- Add support for defining Simvue run defaults using
tool.simvuein a projectpyproject.tomlfile. - Drop support for INI based configuration files.
- Retrieve all metric values if
max_pointsis unspecified or set toNone. - Add support for PyTorch in Python 3.13
- Create lower level API for directly interacting with the Simvue RestAPI endpoints.
- Removes support for Python <3.10 due to dependency constraints.
- Separates
create_alertinto specific methodscreate_event_alertetc. - Adds additional functionality and support for offline mode.
- Support for Simvue servers
>=3.
v1.1.4 - 2024-12-11
- Remove incorrect identifier reference for latest Simvue servers during reconnection.
- Fixed missing online mode selection when retrieving configuration for
Clientclass.
v1.1.3 - 2024-12-09
- Fixed bug with
requirements.txtmetadata read. - Added Simvue server version check.
- Remove checking of server version in offline mode and add default run mode to configuration options.
- Fix offline mode class initialisation, and propagation of configuration.
v1.1.2 - 2024-11-06
- Fix bug in offline mode directory retrieval.
v1.1.1 - 2024-10-22
- Add missing
offline.cachekey to TOML config. - Fix repetition of server URL validation for each call to configuration.
v1.1.0 - 2024-10-21
- Add option to specify a callback executed when an alert is triggered for a run.
- Allow retrieval of all alerts when no constraints are specified.
- Add carbon emissions statistics as optional metrics.
- Include Python and Rust environment metadata.
- Allow the disabling of heartbeat to allow runs to continue indefinitely.
- Verify Simvue server URL as early as possible.
- Indicate the source used for token and URL.
- Migrate to
simvue.tomlfromsimvue.ini, allowing more defaults to be set during runs.
v1.0.6 - 2024-10-10
- Fix incorrect usage of
retrywhen attempting connections to the server.
v1.0.5 - 2024-10-09
- Ensure all functionality is deactivated when mode is set to
disabled. - When an exception is thrown an event is sent to Simvue displaying the traceback.
- If
add_processis used and an exception is thrown,.errand.outfiles are still uploaded.
v1.0.4 - 2024-09-24
- Set resource metrics to be recorded by default.
v1.0.3 - 2024-09-23
- Fix issue of hanging threads when exception raised by script using the API.
v1.0.2 - 2024-08-21
- Fix incorrect HTTP status code in
Clientwhen checking if object exists. - Fix issue with
running=Falsewhen launching aRuncaused by incorrect system metadata being sent to the server.
v1.0.1 - 2024-07-16
- Fix to
add_processwith list of strings as arguments, the executable no longer returns the string"None". - Fix callbacks and triggers for
add_processbeing executed only onRunclass termination, not on process completion.
v1.0.0 - 2024-06-14
- Refactor and re-write of codebase to align with latest developments in version 2 of the Simvue server.
- Added
Executorto Simvue runs allowing users to start shell based processes as part of a run and handle termination of these. - Removal of obsolete functions due to server change, and renaming of functions and parameters (see documentation).
- Added pre-request validation to both
ClientandRunclass methods via Pydantic. - Separation of save functionality into
save_fileandsave_object. - Fixed issue whereby metrics would still have to wait for the next iteration of dispatch before being sent to the server, even if the queue was not full.
- Added support for
'user'alerts.
v0.14.3 - 2023-06-29
- Ensure import of the
requestsmodule is only done if actually used.
v0.14.0 - 2023-04-04
- Added a method to the
Clientclass for retrieving events.
v0.13.3 - 2023-04-04
- Allow files (
inputandcodeonly) to be saved for runs in thecreatedstate. - Allow metadata and tags to be updated for runs in the
createdstate.
v0.13.2 - 2023-04-04
- Added
plot_metricsmethod to theClientclass to simplify plotting metrics. - (Bug fix)
reconnectworks without a uuid being specified whenofflinemode isn't being used. - (Bug fix) Restrict version of Pydantic to prevent v2 from accidentally being used.
v0.13.1 - 2023-03-28
- Set
sample_byto 0 by default (no sampling) inget_metrics_multiple.
v0.13.0 - 2023-03-28
- Added methods to the
Clientclass for retrieving metrics. - CPU architecture and processor obtained on Apple hardware.
- Client now reports to server when files have been successfully uploaded.
User-Agentheader now included in HTTP requests.
v0.12.0 - 2023-03-13
- Add methods to the
Clientclass for deleting runs and folders. - Confusing messages about
process no longer existsorNVML Shared Library Not Foundno longer displayed.
v0.11.4 - 2023-03-13
- (Bug fix) Ensure
simvue_sendercan be run when installed from PyPI. - (Bug fix) Runs created in
offlinemode using a context manager weren't automatically closed.
v0.11.3 - 2023-03-07
- Added logging messages for debugging when debug level set to
debug.
v0.11.2 - 2023-03-06
- Raise exceptions in
Clientclass methods if run does not exist or artifact does not exist. - (Bug fix)
list_artifactsoptional category restriction now works.
v0.11.1 - 2023-03-05
- Support different runs having different metadata in
get_runsdataframe output. - (Bug fix) Error message when creating a duplicate run is now more clear.
- (Bug fix) Correction to stopping the worker thread in situations where the run never started.
v0.11.0 - 2023-03-04
- Support optional dataframe output from
get_runs.
v0.10.1 - 2023-03-03
- The worker process now no longer gives a long delay when a run has finished (now at most ~1 second).
- The worker process ends when the
Run()context ends orcloseis called, rather than only when the main process exits.
v0.10.0 - 2023-02-07
- The
clientclass can now be used to retrieve runs.
v0.9.1 - 2023-01-25
- (Bug fix) Retries in POST/PUTs to REST APIs didn't happen.
- Warn users if
allow_pickle=Trueis required.
v0.9.0 - 2023-01-25
- Set status to
failedorterminatedif the context manager is used and there is an exception.
v0.8.0 - 2023-01-23
- Support NumPy arrays, PyTorch tensors, Matplotlib and Plotly plots and picklable Python objects as artifacts.
- (Bug fix) Events in offline mode didn't work.
v0.7.2 - 2023-01-08
- Pydantic model is used for input validation.
- Support NaN, -inf and inf in metadata and metrics.
v0.7.0 - 2022-12-05
- Collect CPU, GPU and memory resource metrics.
- Automatically delete temporary files used in offline mode once runs have entered a terminal state.
- Warn users if their access token has expired.
- Remove dependency on the randomname module, instead handle name generation server side.
v0.6.0 - 2022-11-07
offlineanddisabledoptions replaced with singlemodeflag.
v0.5.0 - 2022-11-03
- Added option to disable all monitoring.
v0.4.0 - 2022-11-03
- Offline mode added, enabling tracking of simulations running on worker nodes without outgoing network access.
- Argument to
initenabling runs to be left in thecreatedstate changed fromstatus="created"torunning=True. - Improvements to error handling.
v0.3.0 - 2022-10-31
- Update
add_alertmethod to support either metrics or events based alerts.
v0.2.0 - 2022-10-26
- The previous
Simvueclass has been split intoRunandClient. When creating a run use the newRunclass rather thanSimvue.
v0.1.0 - 2022-10-25
- First release.