Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Python3.12 #1613

Merged
merged 8 commits into from
Jan 22, 2024
Merged

Support Python3.12 #1613

merged 8 commits into from
Jan 22, 2024

Conversation

Zeitsperre
Copy link
Collaborator

@Zeitsperre Zeitsperre commented Jan 22, 2024

Pull Request Checklist:

  • This PR addresses an already opened issue (for bug fixes / features)
    • This PR fixes #xyz
  • Tests for the changes have been added (for bug fixes / features)
    • (If applicable) Documentation has been added / updated (for bug fixes / features)
  • CHANGES.rst has been updated (with summary of main changes)
    • Link to issue (:issue:number) and pull request (:pull:number) has been added

What kind of change does this PR introduce?

  • Adds the numba release candidate repository to the environment.yml.
  • Stages changes to the main.yml workflows to test for dependency resolution.

Does this PR introduce a breaking change?

No.

Other information:

xclim running under Python3.12 with numba v0.59.0rc1 is testing without issues locally.

See: numba/numba#9197

@Zeitsperre Zeitsperre self-assigned this Jan 22, 2024
@github-actions github-actions bot added the CI Automation and Contiunous Integration label Jan 22, 2024
Copy link

Note
It appears that this Pull Request modifies the main.yml workflow.

On inspection, the XCLIM_TESTDATA_BRANCH environment variable is set to the most recent tag (v2023.12.14).

No further action is required.

@Zeitsperre Zeitsperre changed the title add numba anaconda repository Support Python3.12 Jan 22, 2024
@Zeitsperre Zeitsperre added the approved Approved for additional tests label Jan 22, 2024
@Zeitsperre Zeitsperre marked this pull request as ready for review January 22, 2024 18:00
@Zeitsperre Zeitsperre added this to the v0.48.0 milestone Jan 22, 2024
Copy link
Collaborator

@aulemahal aulemahal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool!

environment.yml Outdated Show resolved Hide resolved
environment.yml Outdated Show resolved Hide resolved
@Zeitsperre Zeitsperre merged commit ccf574c into master Jan 22, 2024
20 checks passed
@Zeitsperre Zeitsperre deleted the support-python312 branch January 22, 2024 20:31
Zeitsperre added a commit that referenced this pull request Jan 29, 2024
### What kind of change does this PR introduce?

* Drops Python3.8 references and marks Python3.9 as base requirement.
* Drops older `xarray` and `pandas` support.
* Updates documentation and CI for dropped Python3.8.
* Raises required versions of `scipy` and `numpy` (`1.9.0` and `1.20.0`,
respectively).
* Removes the `winter_storm` indice and indicator (deprecated in `xclim`
v0.46.0).
* Adopts the new syntax for frequency codes:
  - "A" is no more
  - Y -> YE, Q -> QE, M -> ME
  - H -> h, T -> min, S -> s, L -> ms, U -> us, N -> ns
* Addresses several `DeprecationWarning` and `RuntimeWarning` messages
related to `numpy`, `xarray`, and `pint`

### Does this PR introduce a breaking change?

**Yes**, Python3.8 is no longer supported and base dependency versions
have been augmented:
- `numpy>=1.20.0`
- `pandas>=2.2.0`
- `scipy>=1.9.0`
- `xarray>=2023.11.0`

### Other information:

~Python3.12 support is still not possible due to missing Python3.12
builds for `numba`. (This is being addressed in #1613)~ - This has been
addressed.

A Pull Request has been opened to address `DeprecationWarning`s stemming
from `numpy` calls in `eofs` (ajdawson/eofs#148;
`eofs` has been removed due to licensing-related issues (#1621))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Approved for additional tests CI Automation and Contiunous Integration
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants