René's URL Explorer Experiment


Title: Fix various version-related CI breakages by EliahKagan · Pull Request #1987 · gitpython-developers/GitPython · GitHub

Open Graph Title: Fix various version-related CI breakages by EliahKagan · Pull Request #1987 · gitpython-developers/GitPython

X Title: Fix various version-related CI breakages by EliahKagan · Pull Request #1987 · gitpython-developers/GitPython

Description: This applies the fixes to GitPython that correspond to gitpython-developers/smmap#58, as well as other fixes which were along the lines of the prediction in e51bf80#commitcomment-150862474. Taken together, this fixes CI for GitPython. The Cygwin and Alpine Linux failures were due to not using a virtual environment. In Cygwin, I had deliberately not done that, since we're not doing it the other non-container workflows, and I wanted the Cygwin workflow to be similar, with the hope that its job might even one day become a matrix job in pythonpackage.yml. But there had already been signs, accumulating over time, that this was not the way to go, such as the extra step to make sure there would be a pip command in the global environment. Ultimately, what not using a venv broke was pytest-cov, which didn't have a dependency it needed, even after all dependencies appeared to install okay. Using a venv fixed that automatically. In Alpine Linux, I was deliberately using a virtual environment, since python in Alpine Linux discourages using pip to install packages in the global environment managed by the system, which by default is automatically rejected, and which would not necessarily work well even if forced to happen. However, at some point, the virtual environment stopped actually being activated. This causes that error, which had previously only occurred in this workflow while it was originally being developled, to return. I am not clear on specifically why this happened, but I think it is due to the interaction between: The environment variables that are documented to be set when a venv is activated. Subtle distinctions between activating a venv in the usual way and setting those variables (maybe). How setting variables for steps via GITHUB_ENV composes with sudo passthrough. Of those, the third is the most significant: sudo is being used as the shell for most steps in this job, in order to run code as a non-root user (since some tests do not work when run as root and are not, if I recall correctly, intended to). But it was not configured to pass through variables related to Python virtual environments. I'm not sure what changed, exactly, but in hindsight I don't think I could ever have proved that it was supposed to work as I intended, when implemented the way I had. The fix here is slightly ugly in that it explicitly activates the venv in each of the steps that are supposed to use it, but I believe this is more simple and robust than alternatives I considered. As for the other, unrelated Alpine problem in WSL, where the image didn't downloading, upgrading the setup-wsl action fixed it. (To do this, I cherry-picked a commit from the Dependabot PR that had proposed it.) See commit messages for full details on each of the changes themselves.

Open Graph Description: This applies the fixes to GitPython that correspond to gitpython-developers/smmap#58, as well as other fixes which were along the lines of the prediction in e51bf80#commitcomment-150862474. Taken t...

X Description: This applies the fixes to GitPython that correspond to gitpython-developers/smmap#58, as well as other fixes which were along the lines of the prediction in e51bf80#commitcomment-150862474. Taken t...

Opengraph URL: https://github.com/gitpython-developers/GitPython/pull/1987

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:e12fab2d-0ae0-3de6-577e-f9373b118c3e
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idB9C8:23B3F8:B0471B:F7671E:6968ED67
html-safe-nonce768c39cc8bb727d0d3b35ae77ed5c55bdb1ed998cfdaa86f28c1bac8cc37d7da
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCOUM4OjIzQjNGODpCMDQ3MUI6Rjc2NzFFOjY5NjhFRDY3IiwidmlzaXRvcl9pZCI6IjkzNTQ0NTg3NTk5NzA3NjgzOSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmacf33410cf49fe5ff7b233c282fc5a4372cb17cb1d4c5931dfd223d5d50922b10e
hovercard-subject-tagpull_request:2257775349
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/gitpython-developers/GitPython/pull/1987/files
twitter:imagehttps://avatars.githubusercontent.com/u/1771172?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/1771172?s=400&v=4
og:image:altThis applies the fixes to GitPython that correspond to gitpython-developers/smmap#58, as well as other fixes which were along the lines of the prediction in e51bf80#commitcomment-150862474. Taken t...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None51dad138a86b7be4249ddf653c758a9e2621d74f432542c93532a31064797ca5
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/gitpython-developers/GitPython git https://github.com/gitpython-developers/GitPython.git
octolytics-dimension-user_id503709
octolytics-dimension-user_logingitpython-developers
octolytics-dimension-repository_id1126087
octolytics-dimension-repository_nwogitpython-developers/GitPython
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1126087
octolytics-dimension-repository_network_root_nwogitpython-developers/GitPython
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releaseaba32f111c4c7d50bd0c1ac012cd08cdc17512e0
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/gitpython-developers/GitPython/pull/1987/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgitpython-developers%2FGitPython%2Fpull%2F1987%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgitpython-developers%2FGitPython%2Fpull%2F1987%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=gitpython-developers%2FGitPython
Reloadhttps://github.com/gitpython-developers/GitPython/pull/1987/files
Reloadhttps://github.com/gitpython-developers/GitPython/pull/1987/files
Reloadhttps://github.com/gitpython-developers/GitPython/pull/1987/files
gitpython-developers https://github.com/gitpython-developers
GitPythonhttps://github.com/gitpython-developers/GitPython
Please reload this pagehttps://github.com/gitpython-developers/GitPython/pull/1987/files
Notifications https://github.com/login?return_to=%2Fgitpython-developers%2FGitPython
Fork 964 https://github.com/login?return_to=%2Fgitpython-developers%2FGitPython
Star 5k https://github.com/login?return_to=%2Fgitpython-developers%2FGitPython
Code https://github.com/gitpython-developers/GitPython
Issues 169 https://github.com/gitpython-developers/GitPython/issues
Pull requests 8 https://github.com/gitpython-developers/GitPython/pulls
Discussions https://github.com/gitpython-developers/GitPython/discussions
Actions https://github.com/gitpython-developers/GitPython/actions
Security Uh oh! There was an error while loading. Please reload this page. https://github.com/gitpython-developers/GitPython/security
Please reload this pagehttps://github.com/gitpython-developers/GitPython/pull/1987/files
Insights https://github.com/gitpython-developers/GitPython/pulse
Code https://github.com/gitpython-developers/GitPython
Issues https://github.com/gitpython-developers/GitPython/issues
Pull requests https://github.com/gitpython-developers/GitPython/pulls
Discussions https://github.com/gitpython-developers/GitPython/discussions
Actions https://github.com/gitpython-developers/GitPython/actions
Security https://github.com/gitpython-developers/GitPython/security
Insights https://github.com/gitpython-developers/GitPython/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fgitpython-developers%2FGitPython%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fgitpython-developers%2FGitPython%2Fissues%2Fnew%2Fchoose
Byronhttps://github.com/Byron
gitpython-developers:mainhttps://github.com/gitpython-developers/GitPython/tree/main
EliahKagan:versionshttps://github.com/EliahKagan/GitPython/tree/versions
Conversation 2 https://github.com/gitpython-developers/GitPython/pull/1987
Commits 7 https://github.com/gitpython-developers/GitPython/pull/1987/commits
Checks 22 https://github.com/gitpython-developers/GitPython/pull/1987/checks
Files changed https://github.com/gitpython-developers/GitPython/pull/1987/files
Please reload this pagehttps://github.com/gitpython-developers/GitPython/pull/1987/files
Fix various version-related CI breakages https://github.com/gitpython-developers/GitPython/pull/1987/files#top
Show all changes 7 commits https://github.com/gitpython-developers/GitPython/pull/1987/files
9429be6 Special-case Python 3.7 for OSes we can install it on EliahKagan Jan 2, 2025 https://github.com/gitpython-developers/GitPython/pull/1987/commits/9429be69c85442e744ef697bd79bad3fb4236e0a
affab8e Bump Vampire/setup-wsl from 3.1.1 to 4.0.0 dependabot[bot] Dec 9, 2024 https://github.com/gitpython-developers/GitPython/pull/1987/commits/affab8eda6a716363bc36c703de305676afc4ae3
01e40a7 Do everything in the venv in the Alpine test EliahKagan Jan 2, 2025 https://github.com/gitpython-developers/GitPython/pull/1987/commits/01e40a7b06c4ba3d0cf937ba0974949392446b51
0300de9 Instrument `handle_process_output` test EliahKagan Jan 2, 2025 https://github.com/gitpython-developers/GitPython/pull/1987/commits/0300de986ef78a4e7a5562638592f5e91bfd8fa7
a0f8425 Slightly simplify and clarify instrumented code EliahKagan Jan 2, 2025 https://github.com/gitpython-developers/GitPython/pull/1987/commits/a0f8425c94992bdf3fdde9cbf7c3c7f9dc12e52c
4aad37a Improve environment isolation in Cygwin and Alpine Linux on CI EliahKagan Jan 2, 2025 https://github.com/gitpython-developers/GitPython/pull/1987/commits/4aad37a303ca51a594700976b04e17f0f835d61d
39cd608 Put back explicit venv activation in Alpine Linux EliahKagan Jan 2, 2025 https://github.com/gitpython-developers/GitPython/pull/1987/commits/39cd608b762256663b862224bcb46bdb2fc18817
Clear filters https://github.com/gitpython-developers/GitPython/pull/1987/files
Please reload this pagehttps://github.com/gitpython-developers/GitPython/pull/1987/files
Please reload this pagehttps://github.com/gitpython-developers/GitPython/pull/1987/files
alpine-test.yml https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-efd10bfc61f6e81e7ddbeefd3bdeeca82753c13039eef6bd293827199b7f0f4f
cygwin-test.yml https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-cf2326c301e0abbc3891bf5c0f476cf05faa2c2ddf165185fe6bffb10bd5aea5
pythonpackage.yml https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-ee68bef8369ed7bc5460a288e72d62152784762ef66851e07bf134c4075a08f0
test_git.py https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-84c4b72d5c62026240fad69041a453efc37f7336a89035b69672cce0e8beaca1
.github/workflows/alpine-test.ymlhttps://github.com/gitpython-developers/GitPython/pull/1987/files#diff-efd10bfc61f6e81e7ddbeefd3bdeeca82753c13039eef6bd293827199b7f0f4f
View file https://github.com/EliahKagan/GitPython/blob/39cd608b762256663b862224bcb46bdb2fc18817/.github/workflows/alpine-test.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/gitpython-developers/GitPython/pull/1987/{{ revealButtonHref }}
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-efd10bfc61f6e81e7ddbeefd3bdeeca82753c13039eef6bd293827199b7f0f4f
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-efd10bfc61f6e81e7ddbeefd3bdeeca82753c13039eef6bd293827199b7f0f4f
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-efd10bfc61f6e81e7ddbeefd3bdeeca82753c13039eef6bd293827199b7f0f4f
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-efd10bfc61f6e81e7ddbeefd3bdeeca82753c13039eef6bd293827199b7f0f4f
.github/workflows/cygwin-test.ymlhttps://github.com/gitpython-developers/GitPython/pull/1987/files#diff-cf2326c301e0abbc3891bf5c0f476cf05faa2c2ddf165185fe6bffb10bd5aea5
View file https://github.com/EliahKagan/GitPython/blob/39cd608b762256663b862224bcb46bdb2fc18817/.github/workflows/cygwin-test.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/gitpython-developers/GitPython/pull/1987/{{ revealButtonHref }}
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-cf2326c301e0abbc3891bf5c0f476cf05faa2c2ddf165185fe6bffb10bd5aea5
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-cf2326c301e0abbc3891bf5c0f476cf05faa2c2ddf165185fe6bffb10bd5aea5
.github/workflows/pythonpackage.ymlhttps://github.com/gitpython-developers/GitPython/pull/1987/files#diff-ee68bef8369ed7bc5460a288e72d62152784762ef66851e07bf134c4075a08f0
View file https://github.com/EliahKagan/GitPython/blob/39cd608b762256663b862224bcb46bdb2fc18817/.github/workflows/pythonpackage.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/gitpython-developers/GitPython/pull/1987/{{ revealButtonHref }}
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-ee68bef8369ed7bc5460a288e72d62152784762ef66851e07bf134c4075a08f0
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-ee68bef8369ed7bc5460a288e72d62152784762ef66851e07bf134c4075a08f0
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-ee68bef8369ed7bc5460a288e72d62152784762ef66851e07bf134c4075a08f0
test/test_git.pyhttps://github.com/gitpython-developers/GitPython/pull/1987/files#diff-84c4b72d5c62026240fad69041a453efc37f7336a89035b69672cce0e8beaca1
View file https://github.com/EliahKagan/GitPython/blob/39cd608b762256663b862224bcb46bdb2fc18817/test/test_git.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/gitpython-developers/GitPython/pull/1987/{{ revealButtonHref }}
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-84c4b72d5c62026240fad69041a453efc37f7336a89035b69672cce0e8beaca1
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-84c4b72d5c62026240fad69041a453efc37f7336a89035b69672cce0e8beaca1
https://github.com/gitpython-developers/GitPython/pull/1987/files#diff-84c4b72d5c62026240fad69041a453efc37f7336a89035b69672cce0e8beaca1
Please reload this pagehttps://github.com/gitpython-developers/GitPython/pull/1987/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.