Skip to content

Patch Release 3.2.1#896

Merged
wahln merged 143 commits into
masterfrom
rc/v3.2.1
Mar 25, 2026
Merged

Patch Release 3.2.1#896
wahln merged 143 commits into
masterfrom
rc/v3.2.1

Conversation

@wahln
Copy link
Copy Markdown
Contributor

@wahln wahln commented Mar 24, 2026

Patch Release 3.2.1

  • Multiple Bugfixes
  • RayTracer exchanged with vectorized version
  • Preliminary parameter pln.propDoseCalc.precision for using single precision in dose calculation (single precision dij storage in >=R2025a). Standard is still pln.propDoseCalc.precision = 'double', but this will be changed to 'single' in the next major release.
  • Preliminary switch pln.propDoseCalc.traceOnDoseGrid for performing rayTracing on dose grid in dose calculation. Standard is still false, but this might change in the next major release after some accuracy benchmarking.
  • Preliminary switch pln.propOpt.enableGPU for using GPU throughout optimization (only within function evaluations), and supplied some helper functions to copy matRad's data structures. Disabled by default.
  • Preliminary addition of pre-commit hooks to enforce style

Release Checklist

  • Adapted Changelog.md
  • All required mex files compiled
  • Third Party libraries / scripts up to date
  • Standalone(s) generated and tested
  • Wiki adaptedSphinx-build succeeds
  • Optional changes to README.md
  • Check license information
  • Version number changed in matRad_version

Copilot Summary:
This pull request introduces several improvements to code quality, consistency, and maintainability. The main changes include adding pre-commit hooks and code style enforcement, updating several example scripts for clarity and correctness, and making minor documentation and spelling corrections.

Code Quality and Tooling Improvements:

  • Added a .pre-commit-config.yaml file to enable pre-commit hooks for code formatting, YAML checks, spell checking, and integration with the MISS_HIT linter and metrics for MATLAB files.
  • Introduced a .miss_hit configuration file to enforce consistent code style, naming conventions, and complexity metrics for MATLAB code using the MISS_HIT tool.
  • Added a .codespellrc file to configure codespell and ignore specific false positives.

CI/CD Pipeline Enhancements:

  • Updated the GitHub Actions workflow (coverage-report.yml) to set continue-on-error: true for both Coveralls and Codecov upload steps, ensuring that coverage upload failures do not fail the entire workflow.

Example Script Updates:

  • Refactored multiple example scripts (matRad_example1_phantom.m, matRad_example2_photons.m, matRad_example3_photonsDAO.m, matRad_example4_photonsMC.m, matRad_example5_protons.m, matRad_example6_protonsNoise.m, matRad_example10_4DphotonRobust.m, matRad_example11_helium.m, matRad_example12_simpleParticleMonteCarlo.m, matRad_example14_spotRemoval.m, matRad_example16_photonMC_MLC.m, matRad_example17_biologicalModels.m, matRad_example18_FREDMC.m, matRad_example19_CT_sCT_DVH_difference_photons.m, matRad_example20_VHEE.m) to remove redundant calculation and assignment of numOfBeams and to simplify the assignment of isoCenter. Now, isoCenter is directly assigned using matRad_getIsoCenter, improving clarity and reducing errors. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18]

Documentation and Spelling Corrections:

  • Fixed typos and improved comments in matRad_example15_brachy.m (e.g., "frequantly" → "frequently", "eather" → "either", corrected method name casing, improved figure formatting, and other minor comment corrections). [1] [2] [3] [4] [5] [6] [7]

These changes collectively improve the maintainability, reliability, and clarity of the codebase.

wahln and others added 30 commits September 17, 2021 17:39
fix that optimization status window vanishes, in newer matlab version, and that DVH stats table is displayed incorrectly
…ves into structs and correctly showing robustness when the instance is stored in the cst
…to feature/single_precision_dosecalc

# Conflicts:
#	matRad/rayTracing/matRad_rayTracing.m
@codecov
Copy link
Copy Markdown

codecov Bot commented Mar 24, 2026

Codecov Report

❌ Patch coverage is 70.74602% with 349 lines in your changes missing coverage. Please review.
✅ Project coverage is 54.87%. Comparing base (162bde8) to head (2da1de6).
⚠️ Report is 144 commits behind head on master.

Files with missing lines Patch % Lines
...icomImporter/matRad_importDicomSteeringParticles.m 0.00% 135 Missing ⚠️
...Rad_ParticleFREDEngine/matRad_ParticleFREDEngine.m 74.88% 57 Missing ⚠️
...+DoseEngines/@matRad_ParticleFREDEngine/calcDose.m 73.58% 56 Missing ⚠️
...atRad/doseCalc/+DoseEngines/matRad_TopasMCEngine.m 70.64% 32 Missing ⚠️
...eCalc/+DoseEngines/matRad_ParticleMCsquareEngine.m 90.32% 27 Missing ⚠️
...@matRad_ParticleFREDEngine/writePlanDeliveryFile.m 82.35% 15 Missing ⚠️
.../@matRad_ParticleFREDEngine/readSimulationOutput.m 80.00% 6 Missing ⚠️
...alc/+DoseEngines/matRad_PencilBeamEngineAbstract.m 90.00% 4 Missing ⚠️
...ines/@matRad_ParticleFREDEngine/writeRegionsFile.m 81.25% 3 Missing ⚠️
...d/doseCalc/+DoseEngines/matRad_PhotonOmpMCEngine.m 25.00% 3 Missing ⚠️
... and 8 more
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #896      +/-   ##
==========================================
+ Coverage   53.88%   54.87%   +0.99%     
==========================================
  Files         308      320      +12     
  Lines       19954    20525     +571     
==========================================
+ Hits        10752    11263     +511     
- Misses       9202     9262      +60     

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

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 24, 2026

Test Results

    3 files  ±  0      3 suites  ±0   31m 3s ⏱️ - 13m 35s
  357 tests + 38    357 ✅ + 38  0 💤 ±0  0 ❌ ±0 
1 167 runs  +114  1 162 ✅ +114  5 💤 ±0  0 ❌ ±0 

Results for commit 2da1de6. ± Comparison against base commit 162bde8.

This pull request removes 8 and adds 46 tests. Note that renamed tests count towards both.
test_HongPB ‑ test_calcDoseHongPBVHEE_Focused
test_comparePlnStf ‑ test_wrongNumberOfAngles
test_interp1 ‑ test_matRad_interp1_errors
test_interp1 ‑ test_matRad_interp1_extrapolation
test_interp1 ‑ test_matRad_interp1_extrapolation_nearest
test_interp1 ‑ test_matrad_interp1_values
test_rayTracer ‑ test_2DCube
test_rayTracer ‑ test_siddeonRayTracer
test_FREDEngine ‑ test_errorScenarios
test_HongPB ‑ test_calcDoseHongPBVHEEfocused
test_HongPB ‑ test_doseCalcWithRashi
test_HongPB ‑ test_traceDoseGrid
test_MCsquareEngine ‑ test_MCsquareDoseCalcBasic
test_MCsquareEngine ‑ test_MCsquareRaShi
test_MCsquareEngine ‑ test_readOutput
test_TopasMCEngine ‑ test_TopasMCdoseCalc_multiAlphaBeta
test_VOIBox ‑ test_constructorCustomParams
test_VOIBox ‑ test_constructorDefaults
…

♻️ This comment has been updated with latest results.

wahln and others added 19 commits March 24, 2026 16:46
# Conflicts:
#	.miss_hit
#	matRad/doseCalc/+DoseEngines/@matRad_ParticleFREDEngine/calcDose.m
#	test/doseCalc/test_FREDEngine.m
…d into docs/wiki_conversion

# Conflicts:
#	docs/cite.rst
#	docs/conf.py
#	docs/modules.rst
# Conflicts:
#	matRad/matRad_version.m
@github-actions
Copy link
Copy Markdown

Code Coverage

Package Line Rate Health
coverage Package 1 55%
Summary 55% (11262 / 20525)

@wahln wahln merged commit 9bfc5af into master Mar 25, 2026
19 checks passed
@wahln wahln deleted the rc/v3.2.1 branch March 25, 2026 22:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants