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

Providing compatibility with Python 3.10 #771

Merged
merged 7 commits into from
Mar 21, 2023
Merged

Conversation

forman
Copy link
Member

@forman forman commented Dec 9, 2022

Majority of issues come from outdated moto. Now, with current moto >=4, we run into aio-libs/aiobotocore#755 with no obvious solution.

Closes #583

Checklist:

  • Add unit tests and/or doctests in docstrings
  • Changes documented in CHANGES.md (will add after merge, so we don't need CI once more)
  • AppVeyor CI passes
  • Test coverage remains or increases (target 100%)

@forman forman self-assigned this Mar 15, 2023
@forman forman marked this pull request as ready for review March 15, 2023 12:45
Copy link
Contributor

@TonioF TonioF left a comment

Choose a reason for hiding this comment

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

Copy link
Member

@pont-us pont-us left a comment

Choose a reason for hiding this comment

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

Approved, with one optional suggestion.

@@ -4,7 +4,7 @@ channels:
- defaults
dependencies:
# Python
- python >=3.8,<3.10
- python >=3.8
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
- python >=3.8
- python >=3.8,<3.11

Currently, creating an xcube environment with the one-sided >=3.8 limit installs Python 3.10, I assume because something in the dependencies is currently requiring python <3.11. That dependency will one day suddenly start supporting Python 3.11 and new xcube environments will start getting Python 3.11 by default with no changes on our side. That seems dangerous, so I suggest including the upper limit, but I leave the decision to you.

Copy link
Contributor

Choose a reason for hiding this comment

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

something in the dependencies is currently requiring python <3.11

It would be interesting to know what that something is.

Copy link
Member

Choose a reason for hiding this comment

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

It would be interesting to know what that something is.

Agreed -- I considered investigating, but decided against it since explorations of conda dependency structures can get quite time-consuming.

Copy link
Member Author

Choose a reason for hiding this comment

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

So you know, Python 3.11 is not working?

Copy link
Member Author

Choose a reason for hiding this comment

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

If not, we stay with python >=3.8 and fix any issues with 3.11 when they occur.

Copy link
Member

Choose a reason for hiding this comment

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

I don't know that Python 3.11 is not working, but I also don't know how to test that it will work. So if you want to take the chance we can leave it without the upper limit :)

@forman
Copy link
Member Author

forman commented Mar 21, 2023

Looks good. Do these changes change anything about this:

I don't know. But we should find out after merging.

@forman forman merged commit 7924c76 into master Mar 21, 2023
@forman forman deleted the forman-583-py310_compat branch March 27, 2023 07:59
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.

xcube is not compatible with Python 3.10
4 participants