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

test on 3.11 #8196

Merged
merged 1 commit into from
Aug 29, 2022
Merged

test on 3.11 #8196

merged 1 commit into from
Aug 29, 2022

Conversation

skshetry
Copy link
Member

@skshetry skshetry commented Aug 28, 2022

  • We don't have aiohttp support yet, due to which we have to install without cythonized extension.
  • Similarly, there has been some changes in how dataclasses disallows some mutable arguments to be set as a class property, due to which hydra.conf fails to import in 3.11. See bpo-44674: Use unhashability as a proxy for mutability for default dataclass __init__ arguments. python/cpython#29867. For now, have patched the module and avoid importing as a pytest-plugin.
  • dvc-hdfs/pyarrow is not there yet, we'll usually see a release 2-3 months after official release. It is skipped in 3.11 in extras_requires.
  • --set-params will return a nice error message if hydra cannot be imported in 3.11. I decided to only patch that in tests.

Note, if you want to use dvc with 3.11, you can install it with:

AIOHTTP_NO_EXTENSIONS=1 pip install -e ".[dev]"

@skshetry skshetry requested a review from a team as a code owner August 28, 2022 17:39
@skshetry skshetry requested a review from rlamy August 28, 2022 17:39
@efiop efiop mentioned this pull request Aug 28, 2022
@skshetry skshetry force-pushed the 3.11 branch 3 times, most recently from 50aa1c6 to b62eea1 Compare August 29, 2022 08:05
def __getattr__(self, name):
return Module()

sys.modules["hydra.conf"] = Module()
Copy link
Member Author

Choose a reason for hiding this comment

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

Carbon copy to @daavoo since you are working in hydra.

Copy link
Member Author

Choose a reason for hiding this comment

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

Nothing breaks in the tests, or gets skipped AFAICT, so we are not using hydra.conf. It just gets imported transitively and breaks.

@skshetry skshetry requested review from efiop and daavoo and removed request for rlamy August 29, 2022 08:23
We don't have aiohttp support yet, due to which we have to install
without cythonized extension.

Similarly, there has been some changes in how dataclasses disallows some
mutable arguments to be set as a class property, due to which
`hydra.conf` fails to import in 3.11.

See python/cpython#29867. For now, I have
patched the module and avoid importing as a pytest-plugin.

dvc-hdfs/pyarrow is not there yet, we'll usually see a release 2-3
months after official reelase.

dvc-hdfs is skipped in 3.11 in extras_requires. `--set-params` will
return a nice error message if hydra cannot be imported in 3.11. I
decided to only patch that in tests.
@skshetry skshetry merged commit e5eec59 into iterative:main Aug 29, 2022
@skshetry skshetry deleted the 3.11 branch August 29, 2022 14:13
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