Skip to content

Commit 3553aa9

Browse files
fix(publish): error on missing name field (#27131)
This PR improves the error output on publish when the `name` filed is missing: ```json { "exports": "./mod.ts", "version": "0.0.1" } ``` Before: ```sh deno publish --dry-run error: You did not specify an entrypoint in file:///Users/marvinh/dev/test/deno-pkg-timers/deno.json. Add `exports` mapping in the configuration file, eg: { "name": "@scope/name", "version": "0.0.0", "exports": "<path_to_entrypoint>" } ``` After: ```sh deno publish --dry-run error: Missing 'name' field in 'file:///Users/marvinh/dev/test/deno-pkg-timers/deno.json'. ``` Fixes #27116
1 parent 12aea20 commit 3553aa9

File tree

5 files changed

+16
-4
lines changed

5 files changed

+16
-4
lines changed

cli/tools/registry/mod.rs

+3-4
Original file line numberDiff line numberDiff line change
@@ -97,11 +97,10 @@ pub async fn publish(
9797
match cli_options.start_dir.maybe_deno_json() {
9898
Some(deno_json) => {
9999
debug_assert!(!deno_json.is_package());
100+
if deno_json.json.name.is_none() {
101+
bail!("Missing 'name' field in '{}'.", deno_json.specifier);
102+
}
100103
error_missing_exports_field(deno_json)?;
101-
bail!(
102-
"Missing 'name' or 'exports' field in '{}'.",
103-
deno_json.specifier
104-
);
105104
}
106105
None => {
107106
bail!(
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"args": "publish --token 'sadfasdf'",
3+
"output": "publish.out",
4+
"exitCode": 1
5+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"version": "1.0.0",
3+
"exports": "./mod.ts"
4+
}
+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export function add(a: number, b: number): number {
2+
return a + b;
3+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
error: Missing 'name' field in 'file:///[WILDCARD]deno.json'.

0 commit comments

Comments
 (0)