Repository navigation
fix(create-void): require lowercase project names - #513
Merged
Merged
Conversation
There was a problem hiding this comment.
Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.
An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing. Review the Copilot code review billing settings.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
🚀 Deploying Preview to Cloudflare 🚀Preview URL: https://fix-create-void-lowercase-project-name-void-cloud.voidzero-docs.workers.dev (commit 5962676)This URL reflects your latest Preview deploymentPreview Deployments by commit
|
Signed-off-by: Christoph Nakazawa <christoph.pojer@gmail.com>
cpojer
added a commit
that referenced
this pull request
Oct 22, 2026
The lowercase check added in #513 still accepts names such as `my_app`, `my.app`, `my app`, paths, and names longer than a workers.dev DNS label. The scaffolder writes the supplied name directly into package.json, so these inputs should receive actionable validation before files are created or dependencies installed. Extend the validator already shared by the interactive prompt and positional CLI argument to require lowercase ASCII letters, digits, and dashes, with an alphanumeric first/last character and a maximum of 63 characters. Preserve lowercase diagnostics and the interactive default. Add regression coverage for invalid characters, paths, Unicode/control characters, dash boundaries, single-character names, and the 63/64-character boundary; document the accepted project-name format. Cloudflare references: - [Worker name configuration](https://developers.cloudflare.com/workers/wrangler/configuration/#inheritable-keys): alphanumeric characters and dashes; underscores are explicitly disallowed. - [workers.dev limitations](https://developers.cloudflare.com/workers/configuration/routing/workers-dev/#limitations): at most 63 characters, with no leading/trailing dash. Workers without workers.dev can have names up to 255 characters; the scaffolder intentionally uses the workers.dev-compatible limit. Cloudflare itself permits uppercase; this change preserves Void's existing lowercase policy. This narrows scaffold inputs: paths (including `.`) and scoped names are rejected because the input is also used as the package name. Existing project deployment naming and the separately validated Void platform slug remain unchanged. Validation: five dependency-free Node test groups against the production validator/parser passed, covering valid/invalid input tables, boundaries, defaults, and existing argument forwarding. The repository Vite+ tests, affected-test checks, typecheck, and full suite could not run because `vp` is unavailable and the shell proxy is unreachable, preventing dependency installation. --------- Signed-off-by: Christoph Nakazawa <christoph.pojer@gmail.com> Co-authored-by: Christoph Nakazawa <christoph.pojer@gmail.com>
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.
create-void MyAppand the interactive project-name prompt currently accept uppercase names, allowing projects to reach deployment before encountering an invalid slug error.Validate both inputs with a shared validator and report
Project name must be lowercasebefore creating files or installing dependencies. Preserve the prompt default and blank-name validation. Add regression coverage for uppercase/mixed-case names and valid lowercase inputs, and document the requirement in the scaffolder README.Validation: direct Node assertions against the production validator and argument parser passed, including existing option-forwarding behavior. Vite+ regression tests, affected-test selection, typechecking, and the full suite could not run:
vpis unavailable and the environment's shell network proxy is unreachable, preventing dependency installation.