Releases
1.12.2
[1.12.2]
Added
Conflict handler option to the dict_deep_merge
function in utils.py
Ability to add module-specific pytest fixtures
Added fixtures specifically for testing status functionality
Added tests for reading and writing status files, and status conflict handling
Added tests for the dict_deep_merge
function
Pytest-mock as a dependency for the test suite (necessary for using mocks and fixtures in the same test)
New github action test to make sure target branch has been merged into the source first, so we know histories are ok
Check in the status commands to make sure we're not pulling statuses from nested workspaces
Added setuptools
as a requirement for python 3.12 to recognize the pkg_resources
library
Patch to celery results backend to stop ChordErrors being raised and breaking workflows when a single task fails
New step return code $(MERLIN_RAISE_ERROR)
to force an error to be raised by a task (mainly for testing)
Added description of this to docs
New test to ensure a single failed task won't break a workflow
Several new unit tests for the following subdirectories:
merlin/common/
merlin/config/
merlin/examples/
merlin/server/
Context managers for the conftest.py
file to ensure safe spin up and shutdown of fixtures
RedisServerManager
: context to help with starting/stopping a redis server for tests
CeleryWorkersManager
: context to help with starting/stopping workers for tests
Ability to copy and print the Config
object from merlin/config/__init__.py
Equality method to the ContainerFormatConfig
and ContainerConfig
objects from merlin/server/server_util.py
Changed
merlin info
is cleaner and gives python package info
merlin version now prints with every banner message
Applying filters for merlin detailed-status
will now log debug statements instead of warnings
Modified the unit tests for the merlin status
command to use pytest rather than unittest
Added fixtures for merlin status
tests that copy the workspace to a temporary directory so you can see exactly what's run in a test
Batch block and workers now allow for variables to be used in node settings
Task id is now the path to the directory
Split the start_server
and config_server
functions of merlin/server/server_commands.py
into multiple functions to make testing easier
Split the create_server_config
function of merlin/server/server_config.py
into two functions to make testing easier
Combined set_snapshot_seconds
and set_snapshot_changes
methods of RedisConfig
into one method set_snapshot
Fixed
Bugfix for output of merlin example openfoam_wf_singularity
A bug with the CHANGELOG detection test when the target branch isn't in the ci runner history
Link to Merlin banner in readme
Issue with escape sequences in ascii art (caught by python 3.12)
Bug where Flux wasn't identifying total number of nodes on an allocation
Not supporting Flux versions below 0.17.0
@bgunnar5 @lucpeterson
You can’t perform that action at this time.