[bugfix] Allow subdomain to end with uppercase letter#197
Open
mhargrove wants to merge 1 commit intogo-ozzo:masterfrom
Open
[bugfix] Allow subdomain to end with uppercase letter#197mhargrove wants to merge 1 commit intogo-ozzo:masterfrom
mhargrove wants to merge 1 commit intogo-ozzo:masterfrom
Conversation
mhargrove
commented
Nov 27, 2024
| // Slightly modified: Removed 255 max length validation since Go regex does not | ||
| // support lookarounds. More info: https://stackoverflow.com/a/38935027 | ||
| reDomain = regexp.MustCompile(`^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-z0-9])?\.)+(?:[a-zA-Z]{1,63}| xn--[a-z0-9]{1,59})$`) | ||
| reDomain = regexp.MustCompile(`^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+(?:[a-zA-Z]{1,63}| xn--[a-z0-9]{1,59})$`) |
Author
There was a problem hiding this comment.
would we also want to add uppercase to the idn-label part, or should that be left as-is?
ex.
Suggested change
| reDomain = regexp.MustCompile(`^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+(?:[a-zA-Z]{1,63}| xn--[a-z0-9]{1,59})$`) | |
| reDomain = regexp.MustCompile(`^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+(?:[a-zA-Z]{1,63}| xn--[a-zA-Z0-9]{1,59})$`) |
reDomain to handle uppercase letters
reDomain to handle uppercase lettersreDomain to handle subdomain ending with uppercase letter
reDomain to handle subdomain ending with uppercase letter
adamdecaf
approved these changes
Nov 27, 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
reDomainregex currently returns ErrDomain errors foris.Domainon values that should be valid, ex.ABC.comregex for subdomain values currently allows lower & upper case alpha-num for beginning and optional middle chars, but won't match if value is longer than one char and ends with upper case, ex.
aBc.comis valid butabC.comreturnsErrDomainReference
from https://github.com/go-ozzo/ozzo-validation/blob/master/is/rules.go#L246-L249:
Solution
updated to include uppercase letters in relevant part of the
reDomainregex, which is in line with the stackoverflow answer already linked in the above referenced code comments