{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":22072746,"defaultBranch":"main","name":"pex","ownerLogin":"pex-tool","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-07-21T17:06:12.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/159246247?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1717625196.0","currentOid":""},"activityList":{"items":[{"before":"36dd2374569b5f3fbef54918e6ba3bd1ff852b61","after":"1a02d5483cd41751e856043fce40676e474e2c27","ref":"refs/heads/main","pushedAt":"2024-06-05T22:05:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Delay import of ssl in `pex.fetcher`. (#2417)\n\nThis acts as an affordance for users of the gevent monkey patch system,\r\navoiding warnings about potential imports of `ssl` pre-monkey-patching.\r\n\r\nFixes #2415","shortMessageHtmlLink":"Delay import of ssl in pex.fetcher. (#2417)"}},{"before":"fbbcbe143f6aae3b7c7d96fd7db6db471591613c","after":"36dd2374569b5f3fbef54918e6ba3bd1ff852b61","ref":"refs/heads/main","pushedAt":"2024-05-13T00:58:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Un-pin hatchling. (#2408)\n\nAlthough hatchling fixed a few issues that broke Pex packaging, it has\r\nsince more strictly adhered to PEP-621 which breaks the existing project\r\nmetadata customization scheme. Update the scheme to conform to PEP-621\r\nstrictures. Also update the tox configuration to work with modern\r\nhatchling.\r\n\r\nPicks up from #2403 by @ofek","shortMessageHtmlLink":"Un-pin hatchling. (#2408)"}},{"before":"b61f401a326290cad0866eef0ecef171f6ae0aab","after":"fbbcbe143f6aae3b7c7d96fd7db6db471591613c","ref":"refs/heads/main","pushedAt":"2024-05-10T04:15:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Upgrade Python 3.13 to beta 1. (#2407)","shortMessageHtmlLink":"Upgrade Python 3.13 to beta 1. (#2407)"}},{"before":"41ad94440bfd8c257b4c1381e478a02109704482","after":"b61f401a326290cad0866eef0ecef171f6ae0aab","ref":"refs/heads/main","pushedAt":"2024-04-28T22:28:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Upgrade to PyPy 7.3.16 release. (#2399)\n\nSee the release announcement here:\r\n https://www.pypy.org/posts/2024/04/pypy-v7316-release.html\r\n\r\nAlso fix and simplify dtox volume mount permissions adjustment in the\r\nface of docker behavior changes. This new method should be robust to\r\nsubtle semantic shifts since it operates after a `docker build` and\r\nfully in `docker run` context taking its cue from the `CACHE_MODE=pull`\r\nmethod of doing this.","shortMessageHtmlLink":"Upgrade to PyPy 7.3.16 release. (#2399)"}},{"before":"fa0995b0a8f9afab11f8be50607a02ebb11f9596","after":"41ad94440bfd8c257b4c1381e478a02109704482","ref":"refs/heads/main","pushedAt":"2024-04-20T18:40:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Upgrade Python 3.13 to alpha 6. (#2398)\n\nAlso upgrade all other pythons to latest point releases.","shortMessageHtmlLink":"Upgrade Python 3.13 to alpha 6. (#2398)"}},{"before":"1921ba46ca378b537d6917f853b832d32eb80637","after":"fa0995b0a8f9afab11f8be50607a02ebb11f9596","ref":"refs/heads/main","pushedAt":"2024-04-12T13:36:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Fix lock downloads to use all lock info. (#2396)\n\nPreviously, the lock target systems and requires python configuration\r\nwere left out, which could lead to critical Pip runtime patches being\r\nleft off; causing downloads to fail when they should not.\r\n\r\nFixes #2395","shortMessageHtmlLink":"Fix lock downloads to use all lock info. (#2396)"}},{"before":"56ae935b89c90e2dd11a4c5f248328b23808db35","after":"1921ba46ca378b537d6917f853b832d32eb80637","ref":"refs/heads/main","pushedAt":"2024-03-28T20:19:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Prepare the 2.3.0 release. (#2387)","shortMessageHtmlLink":"Prepare the 2.3.0 release. (#2387)"}},{"before":"70b6d4780f037f9da21de3ae068d58b5342ca194","after":"56ae935b89c90e2dd11a4c5f248328b23808db35","ref":"refs/heads/main","pushedAt":"2024-03-28T20:16:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Implement pex3 lock sync. (#2373)\n\nIntroduce the high level `pex3 lock sync` command. This should generally\nsuffice for typical use cases and works as follows:\n\n+ On first use (where the specified `--lock` does not yet exist), it\n acts just like `pex3 lock create`.\n+ On subsequent uses it does a minimal synchronization of the lock based\n on the diff of the given current requirements against the requirements\n used to generate the specified `--lock`. This amounts to formulating a\n `pex3 lock update` command with the appropriate `-p`, `-R` and `-d`\n arguments.\n\nIn addition to creating and syncing a lock, it can also create and sync\na venv (--venv) based on the lock. Further, a command can be specified\nto run in the synchronized venv with arguments following the `--` option\nterminator.\n\nThis latter set of features allow Pex to act as a concise tool in `tox`\n/\n`nox` / `invoke` / `make` setups to implement a simple build system.\n\nFixes #2344\n\n---------\n\nCo-authored-by: Andreas Stenius ","shortMessageHtmlLink":"Implement pex3 lock sync. (#2373)"}},{"before":"2aeead33113647df73f7e2483296c20ca29683f2","after":"70b6d4780f037f9da21de3ae068d58b5342ca194","ref":"refs/heads/main","pushedAt":"2024-03-28T20:15:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Guard against mismatched `--requirements-pex`. (#2392)\n\nPex cannot yet handle turning installed wheel chroots back into wheel\nfiles (see #2299). As such, until that time, it must reject attempts\nto combine PEXes with different wheel packaging.\n\nClarifies #2391","shortMessageHtmlLink":"Guard against mismatched --requirements-pex. (#2392)"}},{"before":"51143e7f01027d639b2efc6c963ed60d54e60b66","after":"2aeead33113647df73f7e2483296c20ca29683f2","ref":"refs/heads/main","pushedAt":"2024-03-22T01:53:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Fix `pex --no-build --lock ...`. (#2390)\n\nSince #2346 which was released in Pex 2.1.161, using `--no-build` with a\r\n`--lock` would fail fast even if the lock itself was created with\r\n`--no-build`, which should be compatible.\r\n\r\nFixes #2389","shortMessageHtmlLink":"Fix pex --no-build --lock .... (#2390)"}},{"before":"ae6094d66d298eb0a6cd42caadba62fd9a7fe796","after":"51143e7f01027d639b2efc6c963ed60d54e60b66","ref":"refs/heads/main","pushedAt":"2024-03-17T02:58:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Fix leak of `cert` file in test. (#2385)\n\nThe mitmproxy fixes in #2384 led to the `test_rel_cert_path` test in\r\n`tests/integration/test_issue_1537.py` depositing the `cert` file in\r\nthe repo root.","shortMessageHtmlLink":"Fix leak of cert file in test. (#2385)"}},{"before":"892edff804329c74b0055d15afdc3657d3767b88","after":"ae6094d66d298eb0a6cd42caadba62fd9a7fe796","ref":"refs/heads/main","pushedAt":"2024-03-16T06:24:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Fix Pex to handle venvs with multiple site-packages dirs. (#2383)\n\nPreviously the Pex venv code would blow up when it encountered a venv\r\nwith multiple distinct site-packages directories. Although this was\r\nsafe, it was unhelpful for virtualenvs created by modern Virtualenv on\r\nRed Hat based distributions where there is a separation between\r\npurelib (`lib/pythonX.Y/site-packages`) and\r\nplatlib (`lib64/pythonX.Y/site-packages`). Interestingly this was not a\r\nproblem for Python stdlib `-mvenv` virtualenvs since those create the\r\n`lib64/` platlib directory as a symlink to the `lib/` purelib\r\ndirectory. It's unclear who is constructing venvs correctly here, but\r\ngiven the Virtualenv layout, its definitely correct to honor the\r\npurelib / platlib distinction when installing wheels in venvs. Pex now\r\ndoes this and tests are added to confirm.\r\n\r\nAlso fix up various existing tests that failed on ARM machines where\r\nthis problem was discovered.","shortMessageHtmlLink":"Fix Pex to handle venvs with multiple site-packages dirs. (#2383)"}},{"before":"6496c50548d7b07c0f6de89245ed68495eedcc5e","after":"892edff804329c74b0055d15afdc3657d3767b88","ref":"refs/heads/main","pushedAt":"2024-03-16T01:38:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Upgrade CPython 3.13 to the a5 release. (#2384)\n\nAlso cleanup now un-needed special handling of pypy2.7 that had been\ncarried forward from the pypy2.7-v7.3.12 release.","shortMessageHtmlLink":"Upgrade CPython 3.13 to the a5 release. (#2384)"}},{"before":"55b9451decb6ce3284dabae0d2da5a0f680a2d39","after":"6496c50548d7b07c0f6de89245ed68495eedcc5e","ref":"refs/heads/main","pushedAt":"2024-03-14T12:52:01.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Fix CI bitrot breaks. (#2382)\n\nTwo bitrot breaks are fixed:\n\n+ Fix typing errors due to updates in type stubs.\n A recent spate of type-stub updates express positional-only arguments\n (the `/` marker), which is not valid syntax for the MyPy\n `--python-version 2.7` checks.\n\n+ Work around pypa/pip#12156. \n It seems to be the case that PEP-658 metadata is backfilling which\n triggers bugs in the legacy resolver under Pip 23.2.","shortMessageHtmlLink":"Fix CI bitrot breaks. (#2382)"}},{"before":"bf58ade5f7b1dcd67aaca23bf535513881953c41","after":null,"ref":"refs/heads/vm","pushedAt":"2024-02-29T06:17:22.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"}},{"before":"2405ae49882c4884eb8c9cd9fe95c557b92787c8","after":null,"ref":"refs/heads/improve-resolver-caching","pushedAt":"2024-02-29T06:16:30.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"}},{"before":"c8e74806f7a485ac3dc00602f1d13616ea6c60ae","after":null,"ref":"refs/heads/hfuller/fix-1885","pushedAt":"2024-02-29T06:15:16.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"}},{"before":"2ed8ed92bf982726d339a95f1fe899cf793a20ee","after":null,"ref":"refs/heads/release_2.1.12","pushedAt":"2024-02-29T06:15:12.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"}},{"before":"1a12edf6967bb98593aa1e9a3879222d125e2309","after":null,"ref":"refs/heads/hrfuller/add-local-wheels-on-cli","pushedAt":"2024-02-29T06:15:10.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"}},{"before":"023f03e1c72822367a4e2990bf75faa2f40b4aa8","after":null,"ref":"refs/heads/hrfuller/venv-shebang-length","pushedAt":"2024-02-29T06:15:09.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"}},{"before":"a85a1acce0f8198b9bed04cebc5a1c316ce8f857","after":null,"ref":"refs/heads/release/prepare_2.1.105","pushedAt":"2024-02-29T06:15:02.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"}},{"before":"55b9451decb6ce3284dabae0d2da5a0f680a2d39","after":null,"ref":"refs/heads/release-docs/fix","pushedAt":"2024-02-29T06:14:32.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"}},{"before":"a09e83e10502fa2ad6ba4d310afd3ada5dca9077","after":"55b9451decb6ce3284dabae0d2da5a0f680a2d39","ref":"refs/heads/main","pushedAt":"2024-02-29T06:10:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Fix release-docs workflow.","shortMessageHtmlLink":"Fix release-docs workflow."}},{"before":null,"after":"55b9451decb6ce3284dabae0d2da5a0f680a2d39","ref":"refs/heads/release-docs/fix","pushedAt":"2024-02-29T06:09:24.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Fix release-docs workflow.","shortMessageHtmlLink":"Fix release-docs workflow."}},{"before":"7a69d5f903dded949c9e72f670fb161fcb3b9d84","after":"a09e83e10502fa2ad6ba4d310afd3ada5dca9077","ref":"refs/heads/main","pushedAt":"2024-02-29T05:07:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Handle `.tar.bz2` & `.tgz` sdists when locking. (#2380)\n\nMore generally, investigate what is out there (on PyPI) for sdists and\r\nexplicitly admit `.zip`, `.tar.gz`, `.tar.bz2` and `.tgz` as covering\r\n99.999% of all known cases.\r\n\r\nFixes #2379\r\n\r\n---------\r\n\r\nCo-authored-by: Huon Wilson ","shortMessageHtmlLink":"Handle .tar.bz2 & .tgz sdists when locking. (#2380)"}},{"before":"052c8df596b42812684a31fd43158d4d2bdab7f0","after":"7a69d5f903dded949c9e72f670fb161fcb3b9d84","ref":"refs/heads/main","pushedAt":"2024-02-22T19:25:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Upgrade to 3.13.0a4. (#2376)\n\nIt was released on February 15th:\n https://www.python.org/downloads/release/python-3130a4/","shortMessageHtmlLink":"Upgrade to 3.13.0a4. (#2376)"}},{"before":"40884ad3247c7368135a326b4b12bc6aa55b2e08","after":"052c8df596b42812684a31fd43158d4d2bdab7f0","ref":"refs/heads/main","pushedAt":"2024-02-18T20:33:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Upgrade actions. (#2374)\n\nThis eliminates node16 warnings / prepares for the spring when node16\r\ngoes away.","shortMessageHtmlLink":"Upgrade actions. (#2374)"}},{"before":"17def2e12665cd58a39f81f4662e2d7829b8de98","after":"40884ad3247c7368135a326b4b12bc6aa55b2e08","ref":"refs/heads/main","pushedAt":"2024-02-16T12:17:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Purge now unused RTD files. (#2372)\n\nBoth deployments and redirects are fully working so there is no longer\na need for the readthedocs.io support scaffolding.","shortMessageHtmlLink":"Purge now unused RTD files. (#2372)"}},{"before":"ca58b714fcd9c70df404fc9b9b6a99a0fd6fccd5","after":"17def2e12665cd58a39f81f4662e2d7829b8de98","ref":"refs/heads/main","pushedAt":"2024-02-16T01:44:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Fix release ordering of the doc site deploy. (#2369)\n\nThis keeps the workflow separate to allow for manual doc site deployment\r\nin PR forks and adds a gather step to the release that triggers that\r\nworkflow by dispatching an event at the tail of the release process.","shortMessageHtmlLink":"Fix release ordering of the doc site deploy. (#2369)"}},{"before":"79489d0a20650fa97ce1647d2e4d0f10eb381a1b","after":"ca58b714fcd9c70df404fc9b9b6a99a0fd6fccd5","ref":"refs/heads/main","pushedAt":"2024-02-16T01:43:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jsirois","name":"John Sirois","path":"/jsirois","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/157586?s=80&v=4"},"commit":{"message":"Trim embedded doc image assets. (#2368)\n\nRe-use the Pex icon png for the favicon and delete `pex.ico`. Browser\r\nsupport for png favicons is both wide and deep at this point and\r\nremoving the ~46KB `.ico` file trims ~20KB from the binary distributions\r\nwe release.\r\n\r\nAlso re-name pex-full* assets to pex-logo* to reflect their role and\r\ntidy up the SVG source, adding its license to the metadata. There is\r\nthe SVG source and then the logo and icon derived from it. This should\r\nbe a bit more clear now.","shortMessageHtmlLink":"Trim embedded doc image assets. (#2368)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEXZhpAQA","startCursor":null,"endCursor":null}},"title":"Activity ยท pex-tool/pex"}