Skip to content

Release Notes

2.2.0 [2026-02-10]

Enhancements:

  • Added support for custom cast tags via custom_cast_tags configuration to enable multiple HPC Clients on different clusters accessible from separate head/login nodes
  • Added custom Python script support via site_modification_script configuration to modify HPC job settings based on Flywheel job properties
  • Added time and ntasks fields to JobSettings for scheduler time limits and task count configuration
  • Added --version CLI flag to display fw-hpc-client version
  • Added show_security_checks and show_scheduler_lookups configuration options to control logging verbosity for security validation and scheduler lookups
  • Added comprehensive FAQ documentation for custom cast tags, job settings modification scripts, and custom script templates
  • Added HPC Configuration Checklist guide with step-by-step setup instructions
  • Added Directory Configuration and Setup guide explaining directory structure and storage requirements
  • Added networking requirements documentation specifying HTTPS access on port 443
  • Added fw_hpc_client.util.file_utils module with load_yaml_file() function
  • Added fw_hpc_client.util.secure_imports module with security validation for custom Python scripts

Fixes:

  • Fixed typo in configuration parameter from show_commnd_template_result to show_command_template_result

Maintenance:

  • Updated minimum python version from >=3.8 to >=3.9
  • Updated setuptools from ^70.0 to ^78.1.1
  • Updated urllib3 from ^2.2 to ^2.6.3
  • Updated mkdocs from ==1.5.3 to ^1.6
  • Updated mkdocs-minify-plugin from ==0.8.0 to ^0.8
  • Updated mkdocstrings from ==0.21.0 to ^0.26
  • Updated mkdocs-material from ==9.5.11 to ^9.5
  • Added htmlcov directory to .gitignore
  • Added Claude Code CI integration for automated release notes generation
  • Added comprehensive test suite for secure imports and custom job settings modification

Documentation:

  • Updated all references from hpc-client to fw-hpc-client for consistency
  • Updated documentation to clarify official support status for schedulers (Slurm fully supported, LSF and SGE provided as-is)
  • Updated installation guide with note about version 2.1.0 configuration changes
  • Updated file path references from src/ to fw_hpc_client/ throughout documentation
  • Added example custom job settings modification scripts in examples/settings/custom_mods_to_HPC_job_settings/
  • Updated example cast.yml files with corrected parameter spelling and new optional fields

2.1.0 [2025-02-20]

Enhancements:

  • Added --version flag to check installed fw-hpc-client version
  • Made fw-hpc-client available as a pip package for easier installation and upgrades
  • Added support for job priority mapping from Flywheel to scheduler-specific priority settings
  • Added support for filtering jobs by multiple tags in multi-cluster environments
  • Added support for scheduler_ram and scheduler_cpu configuration variables in gear configs, job tags, and cast.yml for flexible resource allocation
  • Added comprehensive documentation including installation guides, FAQs, and troubleshooting resources
  • Added support for GPU job scheduling on Slurm clusters with gpu tag
  • Added support for Podman as container executor alongside Singularity
  • Added configuration examples for priority mapping, multi-cluster setups, and GPU-enabled clusters

Fixes:

  • Fixed incorrect access of scheduler_ram and scheduler_cpu from Flywheel job config
  • Fixed default cast.yml variable script not setting correct job number in SBATCH directive

Maintenance:

  • Renamed source code directory from code to src to prevent collision with default code module
  • Migrated build system from poetry.core.masonry.api to standard Poetry configuration
  • Added pre-commit hooks for code quality including ruff, pytest, markdownlint, and yamllint
  • Added CI/CD configuration with .gitlab-ci.yml for automated testing and publishing
  • Added comprehensive unit and integration test suite with pytest
  • Restructured project layout with fw_hpc_client package structure
  • Updated dependency specifications in pyproject.toml for compatibility with python versions >=3.8,<=3.12

Documentation:

  • Added comprehensive documentation site built with mkdocs-material
  • Added installation guide covering pip-based installation and configuration
  • Added FAQ section covering common issues including GPU setup, priority mapping, and version updates
  • Added system requirements documentation covering hardware and software prerequisites
  • Added architecture diagrams and HPC scheduler compatibility matrix
  • Added guides for updating HPC Client and Flywheel engine
  • Added troubleshooting documentation for Slurm GPU configuration and Podman usage
  • Added development guide for adding new scheduler types
  • Added CONTRIBUTING.md with guidelines for dependency management and testing