Skip to content

v1.7.11

Compare
Choose a tag to compare
@shchen-idmod shchen-idmod released this 16 Aug 20:46
· 351 commits to main since this release
c153c80

Release notes for idmtools 1.7.11

The idmtools 1.7.11 release is a feature update that introduces a new container platform and maintains compatibility across other platforms with no breaking changes.

The ContainerPlatform is a new platform designed to streamline the execution of experiments and simulations within Docker containers. It offers a fully equipped environment with all the necessary tools and dependencies, ensuring smooth integration and execution of computational tasks.

Highlights

Highlights of this release include:

  • New features:

    • Introduced ContainerPlatform for running experiments and simulations within Docker containers.
    • Provided default Docker images based on RockyLinux 9.2 and Debian 12, with automatic pulling of these images when using ContainerPlatform.
    • Enabled support for custom Docker images, allowing users to run experiments and simulations with their own configurations.
    • Added CLI commands for managing and monitoring experiments and simulations on ContainerPlatform:
      • idmtools container jobs [<container-id>] [-l <limit>] [-n <next>]: List running jobs.
      • idmtools container status <item-id> [-c <container_id>] [-l <limit>] [--verbose/--no-verbose]: Check the status of an experiment or simulation.
      • idmtools container cancel <item-id> [-c <container_id>]: Cancel a job.
      • idmtools container history [<container-id>] [-l <limit>] [-n <next>]: View experiment history.
      • idmtools container --all --help: View all container platform CLI commands.
    • Added container and slurm pip install groups streamlined installation of related packages.
    • Implemented the ability to add extra Python packages to the container platform on the fly or via CLI commands.
    • Facilitated viewing experiment/simulation results either within the container or on the host machine.
    • Provided default and custom binding mounts to the container.
    • Included examples/tests to demonstrate running experiments with ContainerPlatform.
  • idmtools improvements:

    • Removed support for Python 3.7 in idmtools.
    • Added a new platform alias for Nibbler.
    • Resolved the scheduling issue on the COMPS platform.
    • Corrected default values for the COMPSPlatform's environment and URL fields.
  • Documentation improvements:

    • Introduced new documentation for ContainerPlatform.
    • Added new docstrings for the platform factory and platform classes.
    • Fixed the broken build issue on Windows and GitHub actions.
    • Updated existing documentation with improved structure and more detailed information.

Change log

Platform

  • #2253 - ContainerPlatform: Design Container Platform
  • #2254 - ContainerPlatform: Task list
  • #2266 - ContainerPlatform: Platform implementation (basic class)
  • #2267 - ContainerPlatform: Handle Platform alias
  • #2268 - ContainerPlatform: Handle file directory binding
  • #2269 - ContainerPlatform: Modify required to File/Process Platform
  • #2270 - ContainerPlatform: Container Utilities
  • #2271 - ContainerPlatform: Handle Windows/Linux differences
  • #2272 - ContainerPlatform: Implement CLI Status check
  • #2273 - ContainerPlatform: Run AnalyzeManager
  • #2274 - ContainerPlatform: Consider Calibra
  • #2275 - ContainerPlatform: Consider Container Cleanup
  • #2276 - ContainerPlatform: Consider Cancel experiment/simulation
  • #2277 - ContainerPlatform: Consider Pre and Post run (ep4)
  • #2278 - ContainerPlatform: Install extra packages required for ep4
  • #2279 - ContainerPlatform: Collect EMOD requirements
  • #2280 - ContainerPlatform: Build docker image
  • #2281 - ContainerPlatform: Upload image to hub (idm artifactory)
  • #2320 - ContainerPlatform: user select container to use
  • #2331 - Container Platform: Code cleanup

Bugs

  • #2318 - add_schdule_config should not hard code for num_cores and node_group
  • #2306 - idmtoolscore experiment run can wait long time until timeout in certain case
  • #2298 - idmtools package should not include the tests folder
  • #2251 - local doc build (make html) errors out and does not complete
  • #2169 - For dry run, we better not to display 'check status message
  • #2208 - SlurmPlatform: experiment's metadata.json file has suite_id is null

Feature Request

  • #2261- Consider changes to new COMPS scheduling support
  • #2328 - COMPSPlatform should set default values for endpoint and environment set to production instead of staging
  • #2326 - SlurmPlatform should have default mode to 'Local' instead of None
  • #2319 - Add new alias for COMPS new environment: Nibbler
  • #2317 - idmtools should stop support python3.7
  • #2337 - Add container, slurm options in idmtools setup for customized installation

Developer/Test

  • #2282 - ContainerPlatform: Test image
  • #2283 - ContainerPlatform: Test platform on docker container
  • #2284 - ContainerPlatform: Test utilities
  • #2285 - ContainerPlatform: Test Windows/Linux
  • #2286 - ContainerPlatform: Test CLI
  • #2287 - ContainerPlatform: Test AnalyzeManager
  • #2288 - ContainerPlatform: Test Calibration (Calibra)
  • #2289 - ContainerPlatform: Write unit tests

Documentation

  • #2314 - Update docs build with container platform and fix bunch of issues
  • #2329 - ContainerPlatform: Write README on container platform
  • #2303 - SlurmPlatform doc missing parameters information
  • #2292 -ContainerPlatform: Write Documents