René's URL Explorer Experiment


Title: GH-86275: Implementation of hypothesis stubs for property-based tests, with zoneinfo tests by pganssle · Pull Request #22863 · python/cpython · GitHub

Open Graph Title: GH-86275: Implementation of hypothesis stubs for property-based tests, with zoneinfo tests by pganssle · Pull Request #22863 · python/cpython

X Title: GH-86275: Implementation of hypothesis stubs for property-based tests, with zoneinfo tests by pganssle · Pull Request #22863 · python/cpython

Description: This PR adds the property tests for zoneinfo currently maintained at https://github.com/Zac-HD/stdlib-property-tests, along with a compatibility interface for hypothesis that gracefully degrades to simple parameterized tests. I haven't stubbed out the entire interface, but I have stubbed out a bit more than I am using as part of the zoneinfo tests right now (mostly the subset that I saw in use in the other stdlib-property-tests). We can scale down the stubbed interface if we want, and then have people add in the parts they need as it comes up. I don't think it's a good idea to proactively stub out the entire hypothesis interface, since those things would need maintenance over time. If we like this approach, I will also add in some tooling to run the tests with hypothesis, for use in a buildbot and/or optional PR job. CC: @Zac-HD, @cfbolz https://bugs.python.org/issue42109 Issue: gh-86275

Open Graph Description: This PR adds the property tests for zoneinfo currently maintained at https://github.com/Zac-HD/stdlib-property-tests, along with a compatibility interface for hypothesis that gracefully degrades to...

X Description: This PR adds the property tests for zoneinfo currently maintained at https://github.com/Zac-HD/stdlib-property-tests, along with a compatibility interface for hypothesis that gracefully degrades to...

Opengraph URL: https://github.com/python/cpython/pull/22863

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:02e3a916-153c-ba98-1fe9-f22b732005e7
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idCF80:1860A8:1711102:1FDC575:696A9B63
html-safe-nonce3e0b7af0d203d80c5a265b6e73ec8be2e381a987a3e4cf2b752f25b2dd813b2f
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDRjgwOjE4NjBBODoxNzExMTAyOjFGREM1NzU6Njk2QTlCNjMiLCJ2aXNpdG9yX2lkIjoiODUzOTcyNzQyMjUxMDc2Njk0NyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac9d4e53ed9f166a4491141c4070dced4e67fe2e2dd6b9335e4892493022c76ec3
hovercard-subject-tagpull_request:507740646
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/python/cpython/pull/22863/files
twitter:imagehttps://avatars.githubusercontent.com/u/1377457?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/1377457?s=400&v=4
og:image:altThis PR adds the property tests for zoneinfo currently maintained at https://github.com/Zac-HD/stdlib-property-tests, along with a compatibility interface for hypothesis that gracefully degrades to...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Nonec0d8175e41e0e55b9e984c935b24b808cabab919dd3174aa45dac3ef503ed1af
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/python/cpython git https://github.com/python/cpython.git
octolytics-dimension-user_id1525981
octolytics-dimension-user_loginpython
octolytics-dimension-repository_id81598961
octolytics-dimension-repository_nwopython/cpython
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id81598961
octolytics-dimension-repository_network_root_nwopython/cpython
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
release99aab454e5ddc8df30805fb76c114c3008a15842
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/22863/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F22863%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%2Fpython%2Fcpython%2Fpull%2F22863%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=python%2Fcpython
Reloadhttps://github.com/python/cpython/pull/22863/files
Reloadhttps://github.com/python/cpython/pull/22863/files
Reloadhttps://github.com/python/cpython/pull/22863/files
python https://github.com/python
cpythonhttps://github.com/python/cpython
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
Notifications https://github.com/login?return_to=%2Fpython%2Fcpython
Fork 33.9k https://github.com/login?return_to=%2Fpython%2Fcpython
Star 71.1k https://github.com/login?return_to=%2Fpython%2Fcpython
Code https://github.com/python/cpython
Issues 5k+ https://github.com/python/cpython/issues
Pull requests 2.1k https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects 31 https://github.com/python/cpython/projects
Security Uh oh! There was an error while loading. Please reload this page. https://github.com/python/cpython/security
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
Insights https://github.com/python/cpython/pulse
Code https://github.com/python/cpython
Issues https://github.com/python/cpython/issues
Pull requests https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects https://github.com/python/cpython/projects
Security https://github.com/python/cpython/security
Insights https://github.com/python/cpython/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
pgansslehttps://github.com/pganssle
python:mainhttps://github.com/python/cpython/tree/main
pganssle:hypothestubshttps://github.com/pganssle/cpython/tree/hypothestubs
Conversation 75 https://github.com/python/cpython/pull/22863
Commits 12 https://github.com/python/cpython/pull/22863/commits
Checks 0 https://github.com/python/cpython/pull/22863/checks
Files changed https://github.com/python/cpython/pull/22863/files
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
GH-86275: Implementation of hypothesis stubs for property-based tests, with zoneinfo tests https://github.com/python/cpython/pull/22863/files#top
Show all changes 12 commits https://github.com/python/cpython/pull/22863/files
36049cf Add stubs for hypothesis tests pganssle Apr 25, 2023 https://github.com/python/cpython/pull/22863/commits/36049cf891f06f1c40a3c92639e44c501b3687ed
9bb7f5c Add property tests for the zoneinfo module pganssle Apr 25, 2023 https://github.com/python/cpython/pull/22863/commits/9bb7f5c02c55c6b0e86b2ea44c45ff07e4de059e
840aea1 Add examples to zoneinfo hypothesis tests pganssle Apr 25, 2023 https://github.com/python/cpython/pull/22863/commits/840aea1ec172da225c5b9da16e5ae0f593449d90
87c6bdb Enable settings to operate as a decorator pganssle Apr 25, 2023 https://github.com/python/cpython/pull/22863/commits/87c6bdbe4c10897a6514e663037ee29eef4574c6
c97ec97 Add Phase enum pganssle Apr 25, 2023 https://github.com/python/cpython/pull/22863/commits/c97ec97eb56ade742eb1d186b54cc1c77d12ca0b
cd3ddd7 Make reprs more accurate pganssle Apr 25, 2023 https://github.com/python/cpython/pull/22863/commits/cd3ddd728848bf44ab4b3858ff1c8c8ff5daf92b
57a357b Hard-code ignoring hypothesis files in libregrtest pganssle Apr 27, 2023 https://github.com/python/cpython/pull/22863/commits/57a357b1510666cb4e27e4363ac6b4deaa4bbbc2
176cc6b Add news entry pganssle Apr 25, 2023 https://github.com/python/cpython/pull/22863/commits/176cc6b4d5fdb70eeb321c12823d51bb3c93ba95
fd4391c Add Azure Pipelines CI and PR jobs for hypothesis pganssle Apr 26, 2023 https://github.com/python/cpython/pull/22863/commits/fd4391c45c5afa6daa6f9f65eb6e9e51d735fb66
46cbf7d Add GHA job to run Hypothesis tests pganssle Apr 26, 2023 https://github.com/python/cpython/pull/22863/commits/46cbf7ddcbdc8102f2f3bc3bbbd9ca50915c9406
728f5e0 Use independent build stages for hypothesis GHA job pganssle Apr 30, 2023 https://github.com/python/cpython/pull/22863/commits/728f5e04e497b6c95c0c94c9ecf230bb0db1d436
a305d29 Revert "Add Azure Pipelines CI and PR jobs for hypothesis" pganssle May 3, 2023 https://github.com/python/cpython/pull/22863/commits/a305d29c8f0907d9a1de88e98b6f80e1e3949074
Clear filters https://github.com/python/cpython/pull/22863/files
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
build.yml https://github.com/python/cpython/pull/22863/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721
save_env.py https://github.com/python/cpython/pull/22863/files#diff-92cacf1f1009bb27d80a473598a35262d738775a20a07c7ffb0b391ff0d5ea1b
__init__.py https://github.com/python/cpython/pull/22863/files#diff-2bbf34783257739356b02680b22509f222c38adcc2f539ee8cfd4662df704ad6
_helpers.py https://github.com/python/cpython/pull/22863/files#diff-1f4432276ee40a90295758cd85513af1a98aac81f7ca2e4c40f1e9f1d04e354b
strategies.py https://github.com/python/cpython/pull/22863/files#diff-bdcceb9df0db7988646926672e39dda72ccfc2daf46e6499be65fa8690bf9cd7
hypothesis_helper.py https://github.com/python/cpython/pull/22863/files#diff-be3a14ee79a6873f3205a877bb2ad875c8c90c00762abefe5a2ec9d8be6a4bb6
__init__.py https://github.com/python/cpython/pull/22863/files#diff-ecf61220c35621e1538f61ef5e3786dd84a42277547cadd5c724af38856c15d5
test_zoneinfo_property.py https://github.com/python/cpython/pull/22863/files#diff-6b88bf92dc309c236a1f43f05fb0fbf60a1de6bf50c9f39c49f35e751c7f122a
2023-04-25-12-19-37.gh-issue-86275.-RoLIt.rst https://github.com/python/cpython/pull/22863/files#diff-fbe68daabac4444289c70e52818d321708a8c278a1d1b8de602b8e11d82070a1
https://github.com/python/cpython/blob/main/.github/CODEOWNERS#L66
.github/workflows/build.ymlhttps://github.com/python/cpython/pull/22863/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721
View file https://github.com/pganssle/cpython/blob/a305d29c8f0907d9a1de88e98b6f80e1e3949074/.github/workflows/build.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/22863/{{ revealButtonHref }}
https://github.com/python/cpython/pull/22863/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721
https://github.com/python/cpython/pull/22863/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721
https://github.com/python/cpython/pull/22863/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721
https://github.com/python/cpython/pull/22863/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
https://github.com/python/cpython/pull/22863/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721
Lib/test/libregrtest/save_env.pyhttps://github.com/python/cpython/pull/22863/files#diff-92cacf1f1009bb27d80a473598a35262d738775a20a07c7ffb0b391ff0d5ea1b
View file https://github.com/pganssle/cpython/blob/a305d29c8f0907d9a1de88e98b6f80e1e3949074/Lib/test/libregrtest/save_env.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/22863/{{ revealButtonHref }}
https://github.com/python/cpython/pull/22863/files#diff-92cacf1f1009bb27d80a473598a35262d738775a20a07c7ffb0b391ff0d5ea1b
https://github.com/python/cpython/pull/22863/files#diff-92cacf1f1009bb27d80a473598a35262d738775a20a07c7ffb0b391ff0d5ea1b
Lib/test/support/_hypothesis_stubs/__init__.pyhttps://github.com/python/cpython/pull/22863/files#diff-2bbf34783257739356b02680b22509f222c38adcc2f539ee8cfd4662df704ad6
View file https://github.com/pganssle/cpython/blob/a305d29c8f0907d9a1de88e98b6f80e1e3949074/Lib/test/support/_hypothesis_stubs/__init__.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/22863/{{ revealButtonHref }}
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
Please reload this pagehttps://github.com/python/cpython/pull/22863/files
Lib/test/support/_hypothesis_stubs/_helpers.pyhttps://github.com/python/cpython/pull/22863/files#diff-1f4432276ee40a90295758cd85513af1a98aac81f7ca2e4c40f1e9f1d04e354b
View file https://github.com/pganssle/cpython/blob/a305d29c8f0907d9a1de88e98b6f80e1e3949074/Lib/test/support/_hypothesis_stubs/_helpers.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/22863/{{ revealButtonHref }}
Lib/test/support/_hypothesis_stubs/strategies.pyhttps://github.com/python/cpython/pull/22863/files#diff-bdcceb9df0db7988646926672e39dda72ccfc2daf46e6499be65fa8690bf9cd7
View file https://github.com/pganssle/cpython/blob/a305d29c8f0907d9a1de88e98b6f80e1e3949074/Lib/test/support/_hypothesis_stubs/strategies.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/22863/{{ revealButtonHref }}
Lib/test/support/hypothesis_helper.pyhttps://github.com/python/cpython/pull/22863/files#diff-be3a14ee79a6873f3205a877bb2ad875c8c90c00762abefe5a2ec9d8be6a4bb6
View file https://github.com/pganssle/cpython/blob/a305d29c8f0907d9a1de88e98b6f80e1e3949074/Lib/test/support/hypothesis_helper.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/22863/{{ revealButtonHref }}
https://github.com/python/cpython/blob/main/.github/CODEOWNERS#L423
Lib/test/test_zoneinfo/__init__.pyhttps://github.com/python/cpython/pull/22863/files#diff-ecf61220c35621e1538f61ef5e3786dd84a42277547cadd5c724af38856c15d5
View file https://github.com/pganssle/cpython/blob/a305d29c8f0907d9a1de88e98b6f80e1e3949074/Lib/test/test_zoneinfo/__init__.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/22863/{{ revealButtonHref }}
Please reload this pagehttps://github.com/python/cpython/pull/22863/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.