All new code requires tests to ensure against regressions.
However, if your PR contains zero code changes, feel free to select the checkmark below to indicate so.
[X] Have you ran tests against this code?
[ ] This PR contains zero code changes.
Description of the Change
Previously the repository parameter validation was rather strict, using custom regex that would only accept a repository declared as owner/repo format. But since the parameter is taken directly from a user's package.jsonrepository key, there's many different formats this could exist as.
To ensure we support any valid format for a repository, I've moved this parameter away from the custom regex (there is still some custom regex to validate characters used and length limits, as those aren't present in the upstream module) to instead use parse-github-url and validate what that module says are the owner and repo from the provided URL.
Additionally, with this change I've ensured the publish endpoint can support any valid repository as well with the same module.
Requirements
Filling out the template is required.
All new code requires tests to ensure against regressions.
[X] Have you ran tests against this code?
[ ] This PR contains zero code changes.
Description of the Change
Previously the repository parameter validation was rather strict, using custom regex that would only accept a repository declared as
owner/repo
format. But since the parameter is taken directly from a user'spackage.json
repository
key, there's many different formats this could exist as.To ensure we support any valid format for a repository, I've moved this parameter away from the custom regex (there is still some custom regex to validate characters used and length limits, as those aren't present in the upstream module) to instead use
parse-github-url
and validate what that module says are theowner
andrepo
from the provided URL.Additionally, with this change I've ensured the publish endpoint can support any valid repository as well with the same module.