feat: support 1.38 flags
This commit is contained in:
22
deno.jsonc
22
deno.jsonc
@@ -1,15 +1,24 @@
|
|||||||
{
|
{
|
||||||
"tasks": {
|
"tasks": {
|
||||||
"make": "deno run --allow-env --allow-read --allow-write=.deno-make.json --allow-run=deno ./mod.ts $0"
|
"make": "deno run --allow-env --allow-read --allow-write=.deno-make.json --allow-run=deno ./mod.ts $0",
|
||||||
|
"test": "deno task make test",
|
||||||
|
"code": "deno task make code",
|
||||||
|
"ci": "deno task make ci"
|
||||||
},
|
},
|
||||||
"+tasks": {
|
"+tasks": {
|
||||||
"test": {
|
"test": {
|
||||||
"description": "🧪 Run tests and benchmarks. Print collected coverage",
|
"description": "🧪 Run tests and benchmarks. Print collected coverage",
|
||||||
"task": [
|
"task": [
|
||||||
|
// Setup test environment
|
||||||
|
"mkdir -p .coverage &&",
|
||||||
"rm -rf .coverage &&",
|
"rm -rf .coverage &&",
|
||||||
|
"(echo '' > tests/.env) &&",
|
||||||
|
"(echo '{}' > tests/.imports.json) &&",
|
||||||
|
// Run tests and print coverage
|
||||||
"deno test &&",
|
"deno test &&",
|
||||||
"deno coverage .coverage &&",
|
"deno coverage .coverage &&",
|
||||||
"rm -rf tests/.[!.]* tests/*.exe"
|
// Cleanup test environment
|
||||||
|
"rm -rf .coverage tests/.[!.]* tests/*.exe"
|
||||||
],
|
],
|
||||||
"deno": {
|
"deno": {
|
||||||
"test": {
|
"test": {
|
||||||
@@ -33,8 +42,15 @@
|
|||||||
"task": "deno lint && deno fmt"
|
"task": "deno lint && deno fmt"
|
||||||
},
|
},
|
||||||
"code:check": {
|
"code:check": {
|
||||||
"description": "🤖 Lint and check code fomatting",
|
"description": "🫧 Lint and check code fomatting",
|
||||||
"task": "deno lint && deno fmt --check"
|
"task": "deno lint && deno fmt --check"
|
||||||
|
},
|
||||||
|
"ci": {
|
||||||
|
"description": "🤖 CI checks",
|
||||||
|
"task": [
|
||||||
|
"deno task make code:check",
|
||||||
|
"deno task make test"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"fmt": {
|
"fmt": {
|
||||||
|
|||||||
12
mod.ts
12
mod.ts
@@ -8,7 +8,10 @@ import { bgBrightBlue, bold, gray, italic, underline, yellow } from "https://den
|
|||||||
|
|
||||||
/** Common flags */
|
/** Common flags */
|
||||||
const common = is.object({
|
const common = is.object({
|
||||||
unstable: is.boolean().optional().transform((v) => v ? "--unstable" : ""),
|
unstable: is.union([
|
||||||
|
is.boolean().transform((v) => v ? "--unstable" : ""),
|
||||||
|
is.array(is.string()).transform((v) => v.length ? v.map((w) => `--unstable-${w}`) : ""),
|
||||||
|
]).optional(),
|
||||||
quiet: is.boolean().optional().transform((v) => v ? "--quiet" : ""),
|
quiet: is.boolean().optional().transform((v) => v ? "--quiet" : ""),
|
||||||
config: is.union([
|
config: is.union([
|
||||||
is.boolean().transform((v) => v === false ? "--no-config" : ""),
|
is.boolean().transform((v) => v === false ? "--no-config" : ""),
|
||||||
@@ -26,6 +29,10 @@ const runnable = is.object({
|
|||||||
certificateErrors: is.boolean().optional().transform((v) =>
|
certificateErrors: is.boolean().optional().transform((v) =>
|
||||||
v === false ? "--unsafely-ignore-certificate-errors" : ""
|
v === false ? "--unsafely-ignore-certificate-errors" : ""
|
||||||
),
|
),
|
||||||
|
env: is.union([
|
||||||
|
is.boolean().transform((v) => v ? "--env" : ""),
|
||||||
|
is.string().min(1).transform((v) => `--env='${v}'`),
|
||||||
|
]).optional(),
|
||||||
})
|
})
|
||||||
|
|
||||||
/** Lock file flags */
|
/** Lock file flags */
|
||||||
@@ -234,6 +241,9 @@ const doc = common.pick({ unstable: true, quiet: true, importMap: true })
|
|||||||
modules: modules.doc,
|
modules: modules.doc,
|
||||||
private: is.boolean().optional().transform((v) => v ? "--private" : ""),
|
private: is.boolean().optional().transform((v) => v ? "--private" : ""),
|
||||||
json: is.boolean().optional().transform((v) => v ? "--json" : ""),
|
json: is.boolean().optional().transform((v) => v ? "--json" : ""),
|
||||||
|
html: is.boolean().optional().transform((v) => v ? "--html" : ""),
|
||||||
|
name: is.string().optional().transform((v) => v ? `--name='${v}'` : ""),
|
||||||
|
output: is.string().optional().transform((v) => v ? `--output='${v}'` : ""),
|
||||||
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
}).transform((v) => Object.values(v).filter(Boolean).join(" "))
|
||||||
|
|
||||||
const _eval = common.merge(
|
const _eval = common.merge(
|
||||||
|
|||||||
@@ -11,11 +11,23 @@
|
|||||||
"unstable": true,
|
"unstable": true,
|
||||||
"quiet": true,
|
"quiet": true,
|
||||||
"certificateErrors": false,
|
"certificateErrors": false,
|
||||||
"importMap": "imports.json",
|
"importMap": ".imports.json",
|
||||||
"cert": "/dev/null",
|
"cert": "/dev/null",
|
||||||
"location": "https://deno.test",
|
"location": "https://deno.test",
|
||||||
"seed": 0,
|
"seed": 0,
|
||||||
"v8Flags": ["--print-code"]
|
"v8Flags": ["--print-code"],
|
||||||
|
"env": true
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"env": ".env",
|
||||||
|
"unstable": ["kv", "bare-node-builtins"]
|
||||||
|
},
|
||||||
|
"bench": {
|
||||||
|
"env": false,
|
||||||
|
"unstable": []
|
||||||
|
},
|
||||||
|
"lint": {
|
||||||
|
"unstable": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -19,6 +19,20 @@
|
|||||||
"json": true
|
"json": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"flags:doc_alt": {
|
||||||
|
"task": [
|
||||||
|
"deno doc mod.ts;",
|
||||||
|
"rm -rf .docs"
|
||||||
|
],
|
||||||
|
"cwd": "tests",
|
||||||
|
"deno": {
|
||||||
|
"doc": {
|
||||||
|
"html": true,
|
||||||
|
"name": "test",
|
||||||
|
"output": ".docs"
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
{}
|
|
||||||
Reference in New Issue
Block a user