Skip to content

Conversation

@vkarak
Copy link
Contributor

@vkarak vkarak commented Dec 3, 2025

This PR removes support for all Python versions lower than 3.9 and it also removes support of the legacy environment modules. The following changes are introduced in detail

  1. Remove all Python < 3.9 workarounds and specific dependencies
  2. Remove Tmod3 backends and merge TmodImpl and Tmod4Impl
  3. The tmod4 name is deprecated in favor of envmod which corresponds to the modern environment modules.
  4. Unit tests for old Python versions and for unsupported modules systems are removed.
  5. Updated the containers for Lmod and Envmod to use their latest version on Ubuntu 24.04.
  6. Fixed Lmod collection unit tests as since Lmod 9 the location of module collections has changed.
  7. Removed stale ci configuration files and cleaned up the existing ones.
  8. Bump the Spack and EasyBuild versions used for unit tests and in the howto.
  9. Build the zlib instead of bzip2 in the Spack/EasyBuild examples, as EasyBuild has introduced a dependency on binutils which would cause the increased build times not suitable for CI. The howto examples are updated accordingly.
  10. osext.copytree is deprecated as it is no more necessary.
  11. Documentation is updated accordingly.

Closes #3583.

@vkarak vkarak added this to the ReFrame 4.10 milestone Dec 3, 2025
@vkarak vkarak self-assigned this Dec 3, 2025
@vkarak vkarak added prio: normal code quality python Pull requests that update python code labels Dec 3, 2025
@codecov
Copy link

codecov bot commented Dec 3, 2025

Codecov Report

❌ Patch coverage is 64.81481% with 19 lines in your changes missing coverage. Please review.
✅ Project coverage is 91.38%. Comparing base (07ff6b3) to head (f99e544).

Files with missing lines Patch % Lines
reframe/core/modules.py 56.81% 19 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #3596      +/-   ##
===========================================
+ Coverage    91.19%   91.38%   +0.19%     
===========================================
  Files           62       62              
  Lines        13622    13484     -138     
===========================================
- Hits         12423    12323     -100     
+ Misses        1199     1161      -38     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@vkarak vkarak closed this Dec 4, 2025
@github-project-automation github-project-automation bot moved this from Todo to Done in ReFrame Backlog Dec 4, 2025
@vkarak vkarak reopened this Dec 4, 2025
@github-project-automation github-project-automation bot moved this from Done to In Progress in ReFrame Backlog Dec 4, 2025
@vkarak vkarak force-pushed the feat/remove-old-pythons branch from 1e009e3 to e7041f7 Compare December 4, 2025 01:20
@vkarak
Copy link
Contributor Author

vkarak commented Dec 4, 2025

I think there is something wrong with pytest-cov as it doesn't show as covered the imports and the function definitions 👀

@vkarak vkarak force-pushed the feat/remove-old-pythons branch 8 times, most recently from 5a16715 to 512e23c Compare December 5, 2025 22:35
@vkarak vkarak force-pushed the feat/remove-old-pythons branch from 512e23c to b8c7eac Compare December 6, 2025 15:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

code quality prio: normal python Pull requests that update python code

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

Drop support for Python versions < 3.9

1 participant