Skip to content

Conversation

apotterri
Copy link
Contributor

@apotterri apotterri commented May 18, 2023

Please don't merge this, it needs a rebase

Fixes #236.

@apotterri apotterri requested a review from dividedmind May 18, 2023 22:35
Copy link
Contributor

@dividedmind dividedmind left a 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).

@apotterri apotterri force-pushed the python-3.11_20230515 branch 3 times, most recently from 7910981 to d525b84 Compare May 22, 2023 21:07
@@ -0,0 +1 @@
../vendor/_appmap/wrapt No newline at end of file
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@apotterri apotterri force-pushed the python-3.11_20230515 branch from d525b84 to 1b05a08 Compare May 22, 2023 22:07
@apotterri
Copy link
Contributor Author

@dividedmind this is ready for another look

I made one fairly substantial change since you last looked: I removed the wrapt submodule, and replaced it by the use of the vendoring package. This seems to be a more widely-used approach to vendoring. One of its benefits is that it will allow us to easily vendor more packages, which we may need sooner rather than later: https://appmap-group.slack.com/archives/C03GM7D2QRH/p1684786853793949?thread_ts=1684779111.885699&cid=C03GM7D2QRH

@dustinbyrne dustinbyrne requested a review from dividedmind May 23, 2023 14:04
Copy link
Contributor

@dividedmind dividedmind left a 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.)

apotterri added 7 commits May 25, 2023 05:24
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.
@apotterri apotterri force-pushed the python-3.11_20230515 branch from 0481d2d to affdbda Compare May 25, 2023 09:24
@apotterri apotterri merged commit cdefb2d into master May 25, 2023
@apotterri apotterri deleted the python-3.11_20230515 branch November 4, 2023 10:55
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.

Python 3.11 not supported due to vendored wrapt

2 participants