Skip to content

Conversation

tm91236
Copy link
Member

@tm91236 tm91236 commented Sep 16, 2025

PR Type

  • Refactoring (no functional changes)
  • Build related changes
  • CI related changes
  • Tests

Description

Drops support for python 3.9

How Has This Been Tested?

Existing tests pass as expected.

Does this PR introduce a breaking change?

Drops support for python 3.9

Checklist before requesting a review

  • I have made sure that my PR is not a duplicate.
  • My code follows the style guidelines of this project.
  • I have ensured my code is easy to understand, including docstrings and comments where necessary.
  • I have performed a self-review of my code.
  • I have made corresponding changes to the documentation.
  • My changes generate no new warnings.
  • New and existing unit tests pass locally with my changes.
  • Any dependent changes have been merged and published in downstream modules.
  • I have updated CHANGELOG.md, if appropriate.

Copy link
Contributor

Performance review

Commit bf580d1 - Merge a953ee8 into 7637bd3

Statistically significant changes

  • basic_rpc:
    • OLD: compilation 1.119 units ± 0.03089 units; execution 0.02146 units ± 0.0006256 units
    • NEW: compilation 1.126 units ± 0.08764 units; execution 0.04305 units ± 0.0009212 units
    • Significant increase in execution time (100.65%, p=2.893e-20)

Normalisation values for new data:
Compilation: 1 unit = 307.65 ms
Execution: 1 unit = 803.04 ms

By dropping support for Python 3.9, it is possible to replace the
`Union` and `Optional` type hints with the `|` operator. At the
same time, it is also possible to simplify some of the jaxtyped
type hints.

BREAKING CHANGES: Sequence support for `_atleast_2d_consistent`
has been dropped. The functionality was unused and significantly
complicated the type hints.
@tm91236 tm91236 force-pushed the chore/drop-python-3.9 branch from a953ee8 to 37ed967 Compare September 17, 2025 15:08
Copy link
Contributor

Performance review

Commit d19954b - Merge 37ed967 into 7637bd3

Statistically significant changes

  • basic_herding:
    • OLD: compilation 0.9736 units ± 0.06033 units; execution 0.1695 units ± 0.007192 units
    • NEW: compilation 1.013 units ± 0.04762 units; execution 0.08712 units ± 0.001803 units
    • Significant decrease in execution time (-48.60%, p=6.454e-12)
  • basic_rpc:
    • OLD: compilation 1.119 units ± 0.03089 units; execution 0.02146 units ± 0.0006256 units
    • NEW: compilation 1.125 units ± 0.02731 units; execution 0.01916 units ± 0.0003377 units
    • Significant decrease in execution time (-10.72%, p=7.862e-08)
  • basic_stein:
    • OLD: compilation 5.578 units ± 0.3345 units; execution 0.4053 units ± 0.01145 units
    • NEW: compilation 5.911 units ± 0.2881 units; execution 0.3043 units ± 0.01006 units
    • Significant decrease in execution time (-24.93%, p=6.005e-14)

Normalisation values for new data:
Compilation: 1 unit = 298.04 ms
Execution: 1 unit = 825.96 ms

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.

1 participant