René's URL Explorer Experiment


Title: gh-102450: Add ISO-8601 alternative for midnight to `fromisoformat()` calls. by TizzySaurus · Pull Request #105856 · python/cpython · GitHub

Open Graph Title: gh-102450: Add ISO-8601 alternative for midnight to `fromisoformat()` calls. by TizzySaurus · Pull Request #105856 · python/cpython

X Title: gh-102450: Add ISO-8601 alternative for midnight to `fromisoformat()` calls. by TizzySaurus · Pull Request #105856 · python/cpython

Description: Closes #102450. Closes #124257. I've updated _datetimemodule.c and _pydatetime.py such that calls to Python's datetime.time.fromisoformat and datetime.datetime.fromisoformat both allow providing the 24:00 ISO-8601 alternative to midnight, but the class constructors themselves do not (as per this comment from @pganssle). Screenshots of the C code working: I've also done the same tests for the _pydatetime module and everything appears to be working. Also updated the datetime tests accordingly, to ensure that datetime.time.fromisoformat("24:00:00.000000") is parsed as datetime.time(0, 0, 0, 0) etc. and the cases that should error (such as datetime.time.fromisoformat("24:30")) do indeed error. Issue: gh-102450

Open Graph Description: Closes #102450. Closes #124257. I've updated _datetimemodule.c and _pydatetime.py such that calls to Python's datetime.time.fromisoformat and datetime.datetime.fromisoformat both allow prov...

X Description: Closes #102450. Closes #124257. I've updated _datetimemodule.c and _pydatetime.py such that calls to Python's datetime.time.fromisoformat and datetime.datetime.fromisoformat both al...

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

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/commits/:range(.:format)
route-controllerpull_requests
route-actioncommits
fetch-noncev2:932468d1-27ee-6289-96a9-955c07334c2b
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idE7AE:175202:16BF433:1E51D9D:6996AF62
html-safe-noncecd5148bcdaa8891004c0fed507865b0b987c6bdcfa9d3598b1da14509e8783db
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFN0FFOjE3NTIwMjoxNkJGNDMzOjFFNTFEOUQ6Njk5NkFGNjIiLCJ2aXNpdG9yX2lkIjoiMTU5NTQ2ODU3NTcxMTYwNDU3OCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac231c317caf38ef3191d235f0e39ad8dc83ece446d09a69f31ecbf60ac782bfdd
hovercard-subject-tagpull_request:1395513438
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/commits
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
twitter:imagehttps://avatars.githubusercontent.com/u/47674925?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/47674925?s=400&v=4
og:image:altCloses #102450. Closes #124257. I've updated _datetimemodule.c and _pydatetime.py such that calls to Python's datetime.time.fromisoformat and datetime.datetime.fromisoformat both allow prov...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None5513290f8d09a9ed78de519ab8316ed23b2b0ddd5e91d2420df56691d00827e8
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
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releasef514dad261e3ac9cceca6fa432a562be2927d949
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F105856%2Fcommits%2Fd52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
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%2F105856%2Fcommits%2Fd52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
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%2Fcommits&source=header-repo&source_repo=python%2Fcpython
Reloadhttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
Reloadhttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
Reloadhttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
python https://github.com/python
cpythonhttps://github.com/python/cpython
Please reload this pagehttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
Notifications https://github.com/login?return_to=%2Fpython%2Fcpython
Fork 34.1k https://github.com/login?return_to=%2Fpython%2Fcpython
Star 71.6k 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 0 https://github.com/python/cpython/security
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
TizzySaurus:resolve-gh-102450https://github.com/TizzySaurus/cpython/tree/resolve-gh-102450
Conversation 14 https://github.com/python/cpython/pull/105856
Commits 19 https://github.com/python/cpython/pull/105856/commits
Checks 0 https://github.com/python/cpython/pull/105856/checks
Files changed https://github.com/python/cpython/pull/105856/files
Please reload this pagehttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
gh-102450: Add ISO-8601 alternative for midnight to fromisoformat() calls. https://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8#top
Show all changes 19 commits https://github.com/python/cpython/pull/105856/files
e57d1b6 Add NEWS.d entry TizzySaurus Jun 16, 2023 https://github.com/python/cpython/pull/105856/commits/e57d1b6321917ab5c6cb4380de20fd9a92bcf020
9613a38 Merge branch 'main' of personal.github.com:TizzySaurus/cpython TizzySaurus Mar 1, 2024 https://github.com/python/cpython/pull/105856/commits/9613a38d681553ef233f96abb4a81f707cc21e9d
aa67832 Merge remote-tracking branch 'upstream/main' TizzySaurus Sep 25, 2024 https://github.com/python/cpython/pull/105856/commits/aa67832bb52da459e0c7ed59308a12a9ae07cef3
d711daf Allow ISO-8601 24:00 alternative to midnight on datetime.time.fromiso… TizzySaurus Jun 16, 2023 https://github.com/python/cpython/pull/105856/commits/d711dafdb23d23ed248686b122a5b4a33c33b462
f32aa97 Allow ISO-8601 24:00 alternative to midnight on datetime.datetime.fro… TizzySaurus Jun 16, 2023 https://github.com/python/cpython/pull/105856/commits/f32aa970e7a738c3b4402ef0c5799bbdacd84408
d52bf41 Add NEWS.d entry TizzySaurus Jun 16, 2023 https://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
699dfcb Improve error message when hour is 24 and minute/second/microsecond i… TizzySaurus Jun 16, 2023 https://github.com/python/cpython/pull/105856/commits/699dfcb50f439b05cd01997a1b82aa6d37e3c45f
6e46433 Add tests for 24:00 fromisoformat TizzySaurus Jun 17, 2023 https://github.com/python/cpython/pull/105856/commits/6e46433245a346e223c6998642340d0d399df9fa
040da2c Remove duplicate call to days_in_month() by storing in variable TizzySaurus Jun 17, 2023 https://github.com/python/cpython/pull/105856/commits/040da2c341404eeadb050939db51c15b01ac57c6
4833d68 Add Python implementation TizzySaurus Jun 17, 2023 https://github.com/python/cpython/pull/105856/commits/4833d68082da51b62752eddffc1eeb9881c3c46f
c71764f Fix Lint TizzySaurus Jun 17, 2023 https://github.com/python/cpython/pull/105856/commits/c71764f4200ba8c62d5cffda67b82eb0615c7aaa
0b92a1c Fix differing error msg in datetime.fromisoformat implementations whe… TizzySaurus Jun 17, 2023 https://github.com/python/cpython/pull/105856/commits/0b92a1cf1739d21298da0766b373d656a478a0e8
c9db98b Fix using time components inside tzinfo in Python implementation TizzySaurus Jun 18, 2023 https://github.com/python/cpython/pull/105856/commits/c9db98ba1c33b7ab60b7fb71395a7e379819af11
004a5ff Don't parse tzinfo in C implementation when invalid iso midnight TizzySaurus Jun 18, 2023 https://github.com/python/cpython/pull/105856/commits/004a5fffa10c522f628a94125c18e827ef9faa99
f182e2e Remove duplicated variable in datetime test assertion line TizzySaurus Jun 18, 2023 https://github.com/python/cpython/pull/105856/commits/f182e2e2bd1f389e4f76ef14a4331bf0fb79da18
1b65671 Add self to acknowledgements TizzySaurus Sep 25, 2024 https://github.com/python/cpython/pull/105856/commits/1b65671e346d454915578c5e502891dc40a60a4d
ae85372 Remove duplicate NEWS entry TizzySaurus Sep 25, 2024 https://github.com/python/cpython/pull/105856/commits/ae85372add0f6e82a93ff28075820e007425ae38
9d02f82 Linting TizzySaurus Sep 25, 2024 https://github.com/python/cpython/pull/105856/commits/9d02f82532796ee52578ce7a29f5aa0e43be6585
2ccb2a2 Add missing test case for when wrapping the year makes it invalid (to… TizzySaurus Sep 25, 2024 https://github.com/python/cpython/pull/105856/commits/2ccb2a220c4e60d3fccbc2e3feab9796fd3b9d2e
Clear filters https://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
Please reload this pagehttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
Please reload this pagehttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
Prev https://github.com/python/cpython/pull/105856/commits/f32aa970e7a738c3b4402ef0c5799bbdacd84408
Next https://github.com/python/cpython/pull/105856/commits/699dfcb50f439b05cd01997a1b82aa6d37e3c45f
Please reload this pagehttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
https://github.com/TizzySaurus
TizzySaurushttps://github.com/python/cpython/commits?author=TizzySaurus
Misc/NEWS.d/next/Library/2023-06-16-14-52-00.gh-issue-102450.MfeR6A.rsthttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8#diff-24478123ba11f8a4ba79317d021aa005d2d28bb55d4ac4505e2cf7d84b991baa
View file https://github.com/TizzySaurus/cpython/blob/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8/Misc/NEWS.d/next/Library/2023-06-16-14-52-00.gh-issue-102450.MfeR6A.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/105856/commits/{{ revealButtonHref }}
Please reload this pagehttps://github.com/python/cpython/pull/105856/commits/d52bf410ce63f84e3d74b11a1c5f1c93e0194ea8
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.