| route-pattern | /_view_fragments/voltron/pull_requests/show/:user_id/:repository/:id/pull_request_layout(.:format) |
| route-controller | voltron_pull_requests_fragments |
| route-action | pull_request_layout |
| fetch-nonce | v2:4b39488d-0358-e903-287f-bca5ab3b2f3e |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | 80C6:1711F0:A2988:E1435:698EF6C9 |
| html-safe-nonce | 656baa64fa89f7ac665e4528c07d9e916147751ea1acf5d72f278b463ea8c9b2 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI4MEM2OjE3MTFGMDpBMjk4ODpFMTQzNTo2OThFRjZDOSIsInZpc2l0b3JfaWQiOiI4MTIxNDQ2MzU1NzYxNTU5MjQxIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | a52cac527d47f755003adf791883b174992b498a7d3ddeea16cfa121eca0b3c9 |
| hovercard-subject-tag | pull_request:1279985662 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | ///voltron/pull_requests_fragments/pull_request_layout |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/voltron/pull_requests/show/python-validators/validators/245/pull_request_layout |
| twitter:image | https://opengraph.githubassets.com/7a403c2a9df947821edc3505f5b6c0d077bf577ce879b52e2fb9231ef5088aba/python-validators/validators/pull/245 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/7a403c2a9df947821edc3505f5b6c0d077bf577ce879b52e2fb9231ef5088aba/python-validators/validators/pull/245 |
| og:image:alt | url is now coupled with hostname module
adds documentation
shifts from pure regex to a combination validation
adds parameters with sane defaults
http://-.~_!$&'()*+,;=:@:80/::::::@examp... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | nandgator |
| hostname | github.com |
| expected-hostname | github.com |
| None | 7f7bf82d8907f81525d95af82e60354b419d083df9534c8631d06bb9c0bf07ac |
| turbo-cache-control | no-preview |
| go-import | github.com/python-validators/validators git https://github.com/python-validators/validators.git |
| octolytics-dimension-user_id | 113113270 |
| octolytics-dimension-user_login | python-validators |
| octolytics-dimension-repository_id | 13642984 |
| octolytics-dimension-repository_nwo | python-validators/validators |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 13642984 |
| octolytics-dimension-repository_network_root_nwo | python-validators/validators |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 29d97d94d5b31f96c01179273264722362f058e7 |
| ui-target | canary-1 |
| theme-color | #1e2327 |
| color-scheme | light dark |
| Skip to content | https://github.com/python-validators/validators/pull/245#start-of-content |
|
| https://github.com/ |
|
Sign in
| https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython-validators%2Fvalidators%2Fpull%2F245 |
| GitHub CopilotWrite better code with AI | https://github.com/features/copilot |
| GitHub SparkBuild and deploy intelligent apps | https://github.com/features/spark |
| GitHub ModelsManage and compare prompts | https://github.com/features/models |
| MCP RegistryNewIntegrate external tools | https://github.com/mcp |
| ActionsAutomate any workflow | https://github.com/features/actions |
| CodespacesInstant dev environments | https://github.com/features/codespaces |
| IssuesPlan and track work | https://github.com/features/issues |
| Code ReviewManage code changes | https://github.com/features/code-review |
| GitHub Advanced SecurityFind and fix vulnerabilities | https://github.com/security/advanced-security |
| Code securitySecure your code as you build | https://github.com/security/advanced-security/code-security |
| Secret protectionStop leaks before they start | https://github.com/security/advanced-security/secret-protection |
| Why GitHub | https://github.com/why-github |
| Documentation | https://docs.github.com |
| Blog | https://github.blog |
| Changelog | https://github.blog/changelog |
| Marketplace | https://github.com/marketplace |
| View all features | https://github.com/features |
| Enterprises | https://github.com/enterprise |
| Small and medium teams | https://github.com/team |
| Startups | https://github.com/enterprise/startups |
| Nonprofits | https://github.com/solutions/industry/nonprofits |
| App Modernization | https://github.com/solutions/use-case/app-modernization |
| DevSecOps | https://github.com/solutions/use-case/devsecops |
| DevOps | https://github.com/solutions/use-case/devops |
| CI/CD | https://github.com/solutions/use-case/ci-cd |
| View all use cases | https://github.com/solutions/use-case |
| Healthcare | https://github.com/solutions/industry/healthcare |
| Financial services | https://github.com/solutions/industry/financial-services |
| Manufacturing | https://github.com/solutions/industry/manufacturing |
| Government | https://github.com/solutions/industry/government |
| View all industries | https://github.com/solutions/industry |
| View all solutions | https://github.com/solutions |
| AI | https://github.com/resources/articles?topic=ai |
| Software Development | https://github.com/resources/articles?topic=software-development |
| DevOps | https://github.com/resources/articles?topic=devops |
| Security | https://github.com/resources/articles?topic=security |
| View all topics | https://github.com/resources/articles |
| Customer stories | https://github.com/customer-stories |
| Events & webinars | https://github.com/resources/events |
| Ebooks & reports | https://github.com/resources/whitepapers |
| Business insights | https://github.com/solutions/executive-insights |
| GitHub Skills | https://skills.github.com |
| Documentation | https://docs.github.com |
| Customer support | https://support.github.com |
| Community forum | https://github.com/orgs/community/discussions |
| Trust center | https://github.com/trust-center |
| Partners | https://github.com/partners |
| GitHub SponsorsFund open source developers | https://github.com/sponsors |
| Security Lab | https://securitylab.github.com |
| Maintainer Community | https://maintainers.github.com |
| Accelerator | https://github.com/accelerator |
| Archive Program | https://archiveprogram.github.com |
| Topics | https://github.com/topics |
| Trending | https://github.com/trending |
| Collections | https://github.com/collections |
| Enterprise platformAI-powered developer platform | https://github.com/enterprise |
| GitHub Advanced SecurityEnterprise-grade security features | https://github.com/security/advanced-security |
| Copilot for BusinessEnterprise-grade AI features | https://github.com/features/copilot/copilot-business |
| Premium SupportEnterprise-grade 24/7 support | https://github.com/premium-support |
| Pricing | https://github.com/pricing |
| Search syntax tips | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
| documentation | https://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-validators%2Fvalidators%2Fpull%2F245 |
|
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%2Fvoltron%2Fpull_requests_fragments%2Fpull_request_layout&source=header-repo&source_repo=python-validators%2Fvalidators |
| Reload | https://github.com/python-validators/validators/pull/245 |
| Reload | https://github.com/python-validators/validators/pull/245 |
| Reload | https://github.com/python-validators/validators/pull/245 |
|
python-validators
| https://github.com/python-validators |
| validators | https://github.com/python-validators/validators |
|
Notifications
| https://github.com/login?return_to=%2Fpython-validators%2Fvalidators |
|
Fork
169
| https://github.com/login?return_to=%2Fpython-validators%2Fvalidators |
|
Star
1.1k
| https://github.com/login?return_to=%2Fpython-validators%2Fvalidators |
|
Code
| https://github.com/python-validators/validators |
|
Issues
4
| https://github.com/python-validators/validators/issues |
|
Pull requests
3
| https://github.com/python-validators/validators/pulls |
|
Discussions
| https://github.com/python-validators/validators/discussions |
|
Actions
| https://github.com/python-validators/validators/actions |
|
Projects
0
| https://github.com/python-validators/validators/projects |
|
Wiki
| https://github.com/python-validators/validators/wiki |
|
Security
0
| https://github.com/python-validators/validators/security |
|
Insights
| https://github.com/python-validators/validators/pulse |
|
Code
| https://github.com/python-validators/validators |
|
Issues
| https://github.com/python-validators/validators/issues |
|
Pull requests
| https://github.com/python-validators/validators/pulls |
|
Discussions
| https://github.com/python-validators/validators/discussions |
|
Actions
| https://github.com/python-validators/validators/actions |
|
Projects
| https://github.com/python-validators/validators/projects |
|
Wiki
| https://github.com/python-validators/validators/wiki |
|
Security
| https://github.com/python-validators/validators/security |
|
Insights
| https://github.com/python-validators/validators/pulse |
| Sign up for GitHub
| https://github.com/signup?return_to=%2Fpython-validators%2Fvalidators%2Fissues%2Fnew%2Fchoose |
| terms of service | https://docs.github.com/terms |
| privacy statement | https://docs.github.com/privacy |
| Sign in | https://github.com/login?return_to=%2Fpython-validators%2Fvalidators%2Fissues%2Fnew%2Fchoose |
| Jump to bottom | https://github.com/python-validators/validators/pull/245#issue-comment-box |
| nandgator | https://github.com/nandgator |
| python-validators:master | https://github.com/python-validators/validators/tree/master |
| nandgator:workshop | https://github.com/nandgator/pyvalidators/tree/workshop |
|
maint: improves url module
| https://github.com/python-validators/validators/pull/245#top |
| nandgator | https://github.com/nandgator |
| python-validators:master | https://github.com/python-validators/validators/tree/master |
| nandgator:workshop | https://github.com/nandgator/pyvalidators/tree/workshop |
|
Conversation
0
| https://github.com/python-validators/validators/pull/245 |
|
Commits
1
| https://github.com/python-validators/validators/pull/245/commits |
|
Checks
0
| https://github.com/python-validators/validators/pull/245/checks |
|
Files changed
| https://github.com/python-validators/validators/pull/245/files |
| Please reload this page | https://github.com/python-validators/validators/pull/245 |
| https://github.co/hiddenchars |
| https://github.com/python-validators/validators/pull/{{ revealButtonHref }} |
|
| https://github.com/nandgator |
| nandgator | https://github.com/nandgator |
| Mar 17, 2023 | https://github.com/python-validators/validators/pull/245#issue-1629056947 |
| Url validator mishandles upper case and repeated hyphens. #27 | https://github.com/python-validators/validators/issues/27 |
| validator fails with url containing double hyphens for #41 | https://github.com/python-validators/validators/issues/41 |
| url validator fails on 1st and last IP address #49 | https://github.com/python-validators/validators/issues/49 |
| URL validation arbitrarily supports FTP, but not other protocols #55 | https://github.com/python-validators/validators/issues/55 |
| URL validation fails on Russian punycode TLD #63 | https://github.com/python-validators/validators/issues/63 |
| validators.url hang #65 | https://github.com/python-validators/validators/issues/65 |
| URLs with invalid characters in userinfo part are incorrectly validated #69 | https://github.com/python-validators/validators/issues/69 |
| validators.url fails any URL whose FQDN includes consecutive hyphens (e.g. IDNA A-labels) #78 | https://github.com/python-validators/validators/issues/78 |
| URL validator does not match ips ending with 0 #80 | https://github.com/python-validators/validators/issues/80 |
| URL validator fails with one digit port #84 | https://github.com/python-validators/validators/issues/84 |
| Valid URLs detected as invalid #87 | https://github.com/python-validators/validators/issues/87 |
| Underscores in URLs seem to break the validator #102 | https://github.com/python-validators/validators/issues/102 |
| Url validator accepting invalid unicode #105 | https://github.com/python-validators/validators/issues/105 |
| A valid url produces ValidationFailure #116 | https://github.com/python-validators/validators/issues/116 |
| URL validation fails for valid domain #135 | https://github.com/python-validators/validators/issues/135 |
| Url Validation #155 | https://github.com/python-validators/validators/issues/155 |
| Punycode URLs Fail Validation #178 | https://github.com/python-validators/validators/issues/178 |
| URLs Fail Validation #180 | https://github.com/python-validators/validators/issues/180 |
| Wrong behavior of URL validator for domain with 2 dashes #187 | https://github.com/python-validators/validators/issues/187 |
| There is a problem with verifying the Chinese URL #188 | https://github.com/python-validators/validators/issues/188 |
| URLs validation should use urlparse #189 | https://github.com/python-validators/validators/issues/189 |
| Add validation for public IP addresses #202 | https://github.com/python-validators/validators/issues/202 |
| Private ip addresses being validated with public=True #206 | https://github.com/python-validators/validators/issues/206 |
| .local TLD pass as public domains #208 | https://github.com/python-validators/validators/issues/208 |
| not working for some urls #213 | https://github.com/python-validators/validators/issues/213 |
| Fails validation on URLs that are not FQDNs #217 | https://github.com/python-validators/validators/issues/217 |
| None throws Exception in url #219 | https://github.com/python-validators/validators/issues/219 |
| Expand validators.url to allow FQDNs that have IDNA A-labels #79 | https://github.com/python-validators/validators/pull/79 |
| Fix invalid escape sequences #91 | https://github.com/python-validators/validators/pull/91 |
| New Validator: Git URL #211 | https://github.com/python-validators/validators/pull/211 |
| Feature: Added website validator to deal with 'Marketing' style urls… #214 | https://github.com/python-validators/validators/pull/214 |
| Fix ReDoS (GHSL-2021-110) #243 | https://github.com/python-validators/validators/pull/243 |
| Please reload this page | https://github.com/python-validators/validators/pull/245 |
|
| https://github.com/nandgator |
| maint: improves url module | https://github.com/python-validators/validators/pull/245/commits/c43826c0dab6d23162b0564c448a31469331b16e |
| c43826c | https://github.com/python-validators/validators/pull/245/commits/c43826c0dab6d23162b0564c448a31469331b16e |
| python-validators#27 | https://github.com/python-validators/validators/issues/27 |
| python-validators#41 | https://github.com/python-validators/validators/issues/41 |
| python-validators#49 | https://github.com/python-validators/validators/issues/49 |
| python-validators#55 | https://github.com/python-validators/validators/issues/55 |
| python-validators#63 | https://github.com/python-validators/validators/issues/63 |
| python-validators#65 | https://github.com/python-validators/validators/issues/65 |
| python-validators#69 | https://github.com/python-validators/validators/issues/69 |
| python-validators#78 | https://github.com/python-validators/validators/issues/78 |
| python-validators#80 | https://github.com/python-validators/validators/issues/80 |
| python-validators#84 | https://github.com/python-validators/validators/issues/84 |
| python-validators#87 | https://github.com/python-validators/validators/issues/87 |
| python-validators#102 | https://github.com/python-validators/validators/issues/102 |
| python-validators#105 | https://github.com/python-validators/validators/issues/105 |
| python-validators#116 | https://github.com/python-validators/validators/issues/116 |
| python-validators#135 | https://github.com/python-validators/validators/issues/135 |
| python-validators#155 | https://github.com/python-validators/validators/issues/155 |
| python-validators#178 | https://github.com/python-validators/validators/issues/178 |
| python-validators#180 | https://github.com/python-validators/validators/issues/180 |
| python-validators#187 | https://github.com/python-validators/validators/issues/187 |
| python-validators#188 | https://github.com/python-validators/validators/issues/188 |
| python-validators#189 | https://github.com/python-validators/validators/issues/189 |
| python-validators#202 | https://github.com/python-validators/validators/issues/202 |
| python-validators#206 | https://github.com/python-validators/validators/issues/206 |
| python-validators#208 | https://github.com/python-validators/validators/issues/208 |
| python-validators#213 | https://github.com/python-validators/validators/issues/213 |
| python-validators#217 | https://github.com/python-validators/validators/issues/217 |
| python-validators#219 | https://github.com/python-validators/validators/issues/219 |
| python-validators#79 | https://github.com/python-validators/validators/pull/79 |
| python-validators#91 | https://github.com/python-validators/validators/pull/91 |
| python-validators#211 | https://github.com/python-validators/validators/pull/211 |
| python-validators#214 | https://github.com/python-validators/validators/pull/214 |
| python-validators#243 | https://github.com/python-validators/validators/pull/243 |
| https://github.com/nandgator |
| nandgator | https://github.com/nandgator |
|
review
| https://github.com/python-validators/validators/issues?q=state%3Aopen%20label%3Areview |
|
maintenance
| https://github.com/python-validators/validators/issues?q=state%3Aopen%20label%3Amaintenance |
| Mar 17, 2023 | https://github.com/python-validators/validators/pull/245#event-8776631076 |
| https://github.com/nandgator |
| nandgator | https://github.com/nandgator |
| Mar 17, 2023 | https://github.com/python-validators/validators/pull/245#event-8776631473 |
| https://github.com/nandgator |
| nandgator | https://github.com/nandgator |
|
review
| https://github.com/python-validators/validators/issues?q=state%3Aopen%20label%3Areview |
| Mar 18, 2023 | https://github.com/python-validators/validators/pull/245#event-8784093517 |
| https://github.com/nandgator |
| nandgator | https://github.com/nandgator |
| 084d085 | https://github.com/python-validators/validators/commit/084d0850a8536b65415aff7ac1c641872af0e1b0 |
| Mar 18, 2023 | https://github.com/python-validators/validators/pull/245#event-8784093660 |
| https://github.com/nandgator |
| nandgator | https://github.com/nandgator |
|
Apr 20, 2023
| https://github.com/python-validators/validators/pull/245#ref-issue-1676811790 |
|
hanging on long domain with double dots inside
#269
| https://github.com/python-validators/validators/issues/269 |
| https://github.com/benhoyt |
| benhoyt | https://github.com/benhoyt |
|
Aug 14, 2023
| https://github.com/python-validators/validators/pull/245#ref-issue-1847444965 |
|
Why isn't http://localhost:PORT a valid URL?
#285
| https://github.com/python-validators/validators/issues/285 |
| https://github.com/rebeccacremona |
| rebeccacremona | https://github.com/rebeccacremona |
|
Dec 5, 2023
| https://github.com/python-validators/validators/pull/245#ref-pullrequest-2026775051 |
|
Update python-validators package for better URL validation.
harvard-lil/scoop-witness-api#6
| https://github.com/harvard-lil/scoop-witness-api/pull/6 |
| Sign up for free | https://github.com/join?source=comment-repo |
| Sign in to comment | https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython-validators%2Fvalidators%2Fpull%2F245 |
|
| https://github.com/nandgator |
|
nandgator
| https://github.com/nandgator |
|
maintenance
| https://github.com/python-validators/validators/issues?q=state%3Aopen%20label%3Amaintenance |
|
URL validation fails on Russian punycode TLD
| https://github.com/python-validators/validators/issues/63 |
|
URL validation arbitrarily supports FTP, but not other protocols
| https://github.com/python-validators/validators/issues/55 |
|
url validator fails on 1st and last IP address
| https://github.com/python-validators/validators/issues/49 |
|
validator fails with url containing double hyphens for
| https://github.com/python-validators/validators/issues/41 |
|
Url validator mishandles upper case and repeated hyphens.
| https://github.com/python-validators/validators/issues/27 |
|
validators.url hang
| https://github.com/python-validators/validators/issues/65 |
|
URLs with invalid characters in userinfo part are incorrectly validated
| https://github.com/python-validators/validators/issues/69 |
|
validators.url fails any URL whose FQDN includes consecutive hyphens (e.g. IDNA A-labels)
| https://github.com/python-validators/validators/issues/78 |
|
URL validator does not match ips ending with 0
| https://github.com/python-validators/validators/issues/80 |
|
URL validator fails with one digit port
| https://github.com/python-validators/validators/issues/84 |
| Please reload this page | https://github.com/python-validators/validators/pull/245 |
|
| https://github.com/nandgator |
|
| https://github.com |
| Terms | https://docs.github.com/site-policy/github-terms/github-terms-of-service |
| Privacy | https://docs.github.com/site-policy/privacy-policies/github-privacy-statement |
| Security | https://github.com/security |
| Status | https://www.githubstatus.com/ |
| Community | https://github.community/ |
| Docs | https://docs.github.com/ |
| Contact | https://support.github.com?tags=dotcom-footer |