v2.2.0
Release notes for idmtools 2.2.0
🛠 idmtools Code Refactor
- Refactored SlurmPlatform to inherit from FilePlatform (unified code base for many idmtools platforms)
- Refactored flatten method — bug fixed and performance improved (used in AnalyzeManager, PlatformAnalysis, etc.)
- Code cleanup: removed unused functions and legacy code
✨ New Features
- Simulation filtering by tags, status and more:
experiment.get_simulations_by_tags(...)
suite.get_simulations_by_tags(...)
platform.filter_simulations_by_tags(...)
- Added new methods to get children objects:
suite.get_experiments()
experiment.get_simulations()
- Added
get_directory()
method for Suite, Experiment, and Simulation - Added
get_tags()
method for Suite, Experiment, and Simulation - Added support for alias SLURM_CLUSTER for SlurmPlatform
- Improved dev_script to work around pip "Access Denied" issues on Windows
- Removed task_type tag from simulations to reduce tag clutter in the COMPS UI
- Added bump version Github Actions script
- Changed setup.py to pyproject.toml for package build
- Updated Github Actions test scripts to allow user pick different python version to tests
- Updated Github Actions test scripts to allow user pick specific package to test
- Added Github Actions build scripts to allow auto trigger build new packages after version bump
- Update devscript for code coverage and Github Actions
- Updated Github Actions scripts to use pypython.toml to build packages
🐞 Bug Fixes
- Fixed case-sensitivity issue in get_files() on Windows
- Fixed incorrect log level in dev_script
- Resolved duplicate Experiment entries in Suite metadata
- Fixed display issue in process/thread logging output
Change log:
Bugs
- #2478 - bootstrap.py didn't initialize logging well
- #2207 - Fix AnalyzeManager: output message
- #2502 - AnalyzeManager not able to retrieve assets files
- #2503 - get_files failed with COMPS Simulation
Core
Developer/Test
- #2472 - Test calibration with new changes
- #2474 - Update dev scripts
- #2476 - Update unit tests
- #2484 - Remove slurm utils GA related scripts
- #2490 - Test AnalyzeManager and PlatformAnalysis
Documentation
- #2475 - Update idmtools documents
- #2535 - Intermittent Sphinx Build Failures Triggered by PUML Rendering
Feature Request
- #2493 - Epic: Add tag-based filtering and other utility enhancements
- #2494 - Reallocate JobHistory utility and we may use it in other platforms
- #2498 - Add get_directory methods for Suite\Experiment\Simulations
- #2499 - Add get_simulations() and get_experiments()
- #2500 - Add simulation filtering with tags
- #2504 - get_files is case-sensitive on files names
- #2510 - Reduce UI tags space used by idmtools task_type tag in Simulation/Experiment
Other
- #2477 - Refactor Slurm Platform: prepare new idmtools 2.2.0 release
- #2491 - Work with EMOD team to test before the release
Platforms
- #2424 - Epic: Refactor SLURMPlatform to reduce the duplicate coding
- #2465 - Update tests and GHA for SLURM platform change
- #2466 - Make SlurmPlatform inherit from FilePlatform
- #2467 - Refactor FilePlatform
- #2468 - Remove bridged and remote utility
- #2483 - Remove mode related functions
- #2488 - Consolidate FileExperiment, SlurmExperiment, etc.
- #2489 - Refactor flatten_item method
Support
- #2482 - bootstrap.py may encounter "Access is denied." issue
Full Changelog: v2.1.0...v2.2.0