diff --git a/doc/changelog.rst b/doc/changelog.rst index faf86051e..e11455624 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -11,56 +11,118 @@ Jump to :ref:`SmartRedis Changelog ` SmartSim ======== +0.6.1 +----- -Development branch ------------------- - -To be released at some future point in time +Released on 15 February, 2024 Description -- Updated tests to address Torch warning -- Updated GitHub actions to latest versions in CI/CD -- Dropped Cobalt support -- Override the sphinx-tabs extension background color -- Updated SmartSim's machine learning backends -- Added ONNX support for Python 3.10 -- Added support for Python 3.11 -- Added support for SmartSim with Torch on Apple Silicon -- Updated install instructions for Apple Silicon +- Duplicate for DBModel/Script prevented +- Update license to include 2024 +- Telemetry monitor is now active by default +- Add support for Mac OSX on Apple Silicon +- Remove Torch warnings during testing +- Validate Slurm timing format +- Expose Python Typehints +- Fix test_logs to prevent generation of directory +- Fix Python Typehint for colocated database settings +- Python 3.11 Support +- Quality of life `smart validate` improvements +- Remove Cobalt support +- Enrich logging through context variables +- Upgrade Machine Learning dependencies +- Override sphinx-tabs background color +- Add concurrency group to test workflow +- Fix index when installing torch through smart build Detailed Notes +- Modify the `git clone` for both Redis and RedisAI to set the line endings to + unix-style line endings when using MacOS on ARM. (SmartSim-PR482_) +- Separate install instructions are now provided for Mac OSX on x64 vs ARM64 (SmartSim-PR479_) +- Prevent duplicate ML model and script names being added to an + Ensemble member if the names exists. (SmartSim-PR475_) +- Updates `Copyright (c) 2021-2023` to `Copyright (c) 2021-2024` + in all of the necessary files. (SmartSim-PR485_) +- Bug fix which prevents the expected behavior when the `SMARTSIM_LOG_LEVEL` + environment variable was set to `developer`. (SmartSim-PR473_) +- Sets the default value of the "enable telemetry" flag to on. + Bumps the output `manifest.json` version number to match that of + `smartdashboard` and pins a watchdog version to avoid build errors. + (SmartSim-PR477_) +- Refactor logic of `Manifest.has_db_objects` to remove excess branching + and improve readability/maintainability. (SmartSim-PR476_) +- SmartSim can now be built and used on platforms using Apple Silicon + (ARM64). Currently, only the PyTorch backend is supported. Note that libtorch + will be downloaded from a CrayLabs github repo. (SmartSim-PR465_) - Tests that were saving Torch models were emitting warnings. These warnings were addressed by updating the model save test function. (SmartSim-PR472_) +- Validate the timing format when requesting a slurm allocation. (SmartSim-PR471_) +- Add and ship `py.typed` marker to expose inline type hints. Fix + type errors related to SmartRedis. (SmartSim-PR468_) +- Fix the `test_logs.py::test_context_leak` test that was + erroneously creating a directory named `some value` in SmartSim's root + directory. (SmartSim-PR467_) +- Add Python type hinting to colocated settings. (SmartSim-PR462_) +- Add github actions for running black and isort checks. (SmartSim-PR464_) +- Relax the required version of `typing_extensions`. (SmartSim-PR459_) +- Addition of Python 3.11 to SmartSim. (SmartSim-PR461_) +- Quality of life `smart validate` improvements such as setting `CUDA_VISIBLE_DEVICES` + environment variable within `smart validate` prior to importing any ML deps to + prevent false negatives on multi-GPU systems. Additionally, move SmartRedis logs + from standard out to dedicated log file in the validation temporary directory as well as + suppress `sklearn` deprecation warning by pinning `KMeans` constructor + argument. Lastly, move TF test to last as TF may reserve the GPUs it uses. + (SmartSim-PR458_) - Some actions in the current GitHub CI/CD workflows were outdated. They were - replaced with their latest versions. (SmartSim-PR446_) + replaced with the latest versions. (SmartSim-PR446_) - As the Cobalt workload manager is not used on any system we are aware of, its support in SmartSim was terminated and classes such as `CobaltLauncher` have been removed. (SmartSim-PR448_) -- The sphinx-tabs documentation extension uses a white background for the tabs component. - A custom CSS for those components to inherit the overall theme color has - been added. (SmartSim-PR453_) +- Experiment logs are written to a file that can be read by the dashboard. (SmartSim-PR452_) - Updated SmartSim's machine learning backends to PyTorch 2.0.1, Tensorflow 2.13.1, ONNX 1.14.1, and ONNX Runtime 1.16.1. As a result of this change, there is now an available ONNX wheel for use with Python 3.10, and wheels for all of SmartSim's machine learning backends with Python 3.11. (SmartSim-PR451_) (SmartSim-PR461_) -- SmartSim can now be built and used on platforms using Apple Silicon - (ARM64). Currently, only the PyTorch backend is supported. Note that libtorch - will be downloaded from a CrayLabs github repo. (SmartSim-PR465_) -- Separate install instructions are now provided for Mac OSX on x64 vs ARM64 (SmartSim-PR478_) - -.. _SmartSim-PR446: https://github.com/CrayLabs/SmartSim/pull/446 -.. _SmartSim-PR448: https://github.com/CrayLabs/SmartSim/pull/448 -.. _SmartSim-PR451: https://github.com/CrayLabs/SmartSim/pull/451 -.. _SmartSim-PR453: https://github.com/CrayLabs/SmartSim/pull/453 -.. _SmartSim-PR461: https://github.com/CrayLabs/SmartSim/pull/461 -.. _SmartSim-PR465: https://github.com/CrayLabs/SmartSim/pull/465 +- The sphinx-tabs documentation extension uses a white background for the tabs component. + A custom CSS for those components to inherit the overall theme color has + been added. (SmartSim-PR453_) +- Add concurrency groups to GitHub's CI/CD workflows, preventing + multiple workflows from the same PR to be launched concurrently. + (SmartSim-PR439_) +- Torch changed their preferred indexing when trying to install + their provided wheels. Updated the `pip install` command within + `smart build` to ensure that the appropriate packages can be found. + (SmartSim-PR449_) + + +.. _SmartSim-PR485: https://github.com/CrayLabs/SmartSim/pull/485 +.. _SmartSim-PR482: https://github.com/CrayLabs/SmartSim/pull/482 +.. _SmartSim-PR479: https://github.com/CrayLabs/SmartSim/pull/479 +.. _SmartSim-PR477: https://github.com/CrayLabs/SmartSim/pull/477 +.. _SmartSim-PR476: https://github.com/CrayLabs/SmartSim/pull/476 +.. _SmartSim-PR475: https://github.com/CrayLabs/SmartSim/pull/475 +.. _SmartSim-PR473: https://github.com/CrayLabs/SmartSim/pull/473 .. _SmartSim-PR472: https://github.com/CrayLabs/SmartSim/pull/472 -.. _SmartSim-PR478: https://github.com/CrayLabs/SmartSim/pull/478 - +.. _SmartSim-PR471: https://github.com/CrayLabs/SmartSim/pull/471 +.. _SmartSim-PR468: https://github.com/CrayLabs/SmartSim/pull/468 +.. _SmartSim-PR467: https://github.com/CrayLabs/SmartSim/pull/467 +.. _SmartSim-PR465: https://github.com/CrayLabs/SmartSim/pull/465 +.. _SmartSim-PR464: https://github.com/CrayLabs/SmartSim/pull/464 +.. _SmartSim-PR462: https://github.com/CrayLabs/SmartSim/pull/462 +.. _SmartSim-PR461: https://github.com/CrayLabs/SmartSim/pull/461 +.. _SmartSim-PR459: https://github.com/CrayLabs/SmartSim/pull/459 +.. _SmartSim-PR458: https://github.com/CrayLabs/SmartSim/pull/458 +.. _SmartSim-PR453: https://github.com/CrayLabs/SmartSim/pull/453 +.. _SmartSim-PR452: https://github.com/CrayLabs/SmartSim/pull/452 +.. _SmartSim-PR451: https://github.com/CrayLabs/SmartSim/pull/451 +.. _SmartSim-PR449: https://github.com/CrayLabs/SmartSim/pull/449 +.. _SmartSim-PR448: https://github.com/CrayLabs/SmartSim/pull/448 +.. _SmartSim-PR446: https://github.com/CrayLabs/SmartSim/pull/446 +.. _SmartSim-PR439: https://github.com/CrayLabs/SmartSim/pull/439 0.6.0 -----