-
Notifications
You must be signed in to change notification settings - Fork 18
Support python 3.11 #241
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 python 3.11 #241
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Judging by the CI log, it seems that moving wrapt
to _appmap
might not have been the best idea. What is the reason to move, how was it more difficult to upgrade when it was in appmap
? The commit message doesn't make it entirely clear.
Other than that and the comments, please add 3.11 to CI (and maybe move smoke test to that).
7910981
to
d525b84
Compare
@@ -0,0 +1 @@ | |||
../vendor/_appmap/wrapt No newline at end of file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is here to make development easier. It's exclude from the wheel when it gets built: https://github.com/getappmap/appmap-python/pull/241/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711R25
d525b84
to
1b05a08
Compare
@dividedmind this is ready for another look I made one fairly substantial change since you last looked: I removed the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thanks for the changes! (I think I liked submoduling more, but if vendoring is easier to work with, that's fine.)
Renaming wrapt to appmap.wrapt has made it prohibitively difficult to update it, and wasn't really necessary. Instead, just symlink it under _appmap and import it appropriately.
Use the vendoring package to install and patch v1.15.0 of wrapt.
3.11 changed some aspect of how finders are implemented, and broke our previous approach to wrapping find_spec. These changes make wrapping work again.
Move the implementation details of unittest integration into _appmap.unittest.
3.11 made updates to the implementation of unittest which broke our integration. These changes make it work again for all supported versions.
Update the test matrix to include 3.11.
23.1 was the current version when we first added packaging, which was why it was chosen. We don't really need anything except conformance to PEP 508, though. 19.0 was the last time packaging's changelog mentions that PEP, so that should be good enough.
0481d2d
to
affdbda
Compare
Please don't merge this, it needs a rebase
Fixes #236.