Skip to content

Commit

Permalink
Improve --typechecked help text (#544)
Browse files Browse the repository at this point in the history
* Improve `--typechecked` help text
* Default fauna local --typechecked to true but only when --database is set

---------

Co-authored-by: E. Cooper <[email protected]>
  • Loading branch information
jrodewig and ecooper authored Dec 18, 2024
1 parent 5c01868 commit 604edc2
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 4 deletions.
2 changes: 1 addition & 1 deletion src/commands/database/create.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ function buildCreateCommand(yargs) {
typechecked: {
type: "boolean",
description:
"Enable typechecking for the database. Defaults to the typechecking setting of the parent database.",
"Enable typechecking for the database. Use --no-typechecked to disable. Defaults to enabled for top-level databases. Inherits the parent database's setting for child databases.",
},
protected: {
type: "boolean",
Expand Down
16 changes: 13 additions & 3 deletions src/commands/local.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,15 @@ async function createDatabase(argv) {
color,
}),
);

// In the docker container, typechecked will be false by default if not set.
// We need to set it to true if it's not set. We can't do it in the options,
// because we don't want to validate it unless --database is set.
let typechecked = argv.typechecked;
if (argv.database && argv.typechecked === undefined) {
typechecked = true;
}

try {
const db = await runQuery({
secret: "secret",
Expand All @@ -78,7 +87,7 @@ async function createDatabase(argv) {
let name = ${argv.database}
let database = Database.byName(name)
let protected = ${argv.protected ?? null}
let typechecked = ${argv.typechecked ?? null}
let typechecked = ${typechecked}
let priority = ${argv.priority ?? null}
if (database == null) {
Database.create({
Expand Down Expand Up @@ -167,8 +176,9 @@ function buildLocalCommand(yargs) {
},
typechecked: {
describe:
"Enable typechecking for the database. Valid only if --database is set.",
"Enable typechecking for the database. Use --no-typechecked to disable. Defaults to enabled. Valid only if --database is set.",
type: "boolean",
default: undefined,
},
protected: {
describe:
Expand Down Expand Up @@ -196,7 +206,7 @@ function buildLocalCommand(yargs) {
"--interval must be greater than or equal to 0.",
);
}
if (argv.typechecked && !argv.database) {
if (argv.typechecked !== undefined && !argv.database) {
throw new ValidationError(
"--typechecked can only be set if --database is set.",
);
Expand Down

0 comments on commit 604edc2

Please sign in to comment.