aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2026-05-15 18:51:42 -0400
committerRalph Amissah <ralph.amissah@gmail.com>2026-05-16 11:57:30 -0400
commitd9eb4ea08e509515f594b9bfcbf1c422d04c7e0c (patch)
tree7224b19c9921bc2267ded22cadbc14b7c475ed67
parenteditors syntax highlighting ... (diff)
sqlite: stop on missing/unwritable sqlite-db-path
- fatal error on missing/unwritable --sqlite-db-path (assisted by Claude-Code)
-rw-r--r--org/out_sqlite.org28
-rw-r--r--src/sisudoc/io_out/sqlite.d28
2 files changed, 48 insertions, 8 deletions
diff --git a/org/out_sqlite.org b/org/out_sqlite.org
index a268b56..9a4c63b 100644
--- a/org/out_sqlite.org
+++ b/org/out_sqlite.org
@@ -87,7 +87,12 @@ template SQLiteHubBuildTablesAndPopulate() {
} else {
try {
pth_sqlite.base.mkdirRecurse;
- } catch (FileException ex) { }
+ } catch (FileException ex) {
+ stderr.writeln("FATAL: cannot create --sqlite-db-path directory: ", pth_sqlite.base);
+ stderr.writeln(" (", ex.msg, ")");
+ import core.runtime;
+ core.runtime.Runtime.terminate();
+ }
}
template SQLiteDbStatementComposite() {
void SQLiteDbStatementComposite(Db,D)(
@@ -144,7 +149,12 @@ template SQLiteHubDiscreteBuildTablesAndPopulate() {
} else {
try {
pth_sqlite.base.mkdirRecurse;
- } catch (FileException ex) { }
+ } catch (FileException ex) {
+ stderr.writeln("FATAL: cannot create --sqlite-db-path directory: ", pth_sqlite.base);
+ stderr.writeln(" (", ex.msg, ")");
+ import core.runtime;
+ core.runtime.Runtime.terminate();
+ }
}
auto db = Database(pth_sqlite.sqlite_file(doc.matters.src.filename));
template SQLiteDiscreteDbStatementComposite() {
@@ -449,7 +459,12 @@ if (opt_action.sqlite_db_create) {
} else {
try {
pth_sqlite.base.mkdirRecurse;
- } catch (FileException ex) { }
+ } catch (FileException ex) {
+ stderr.writeln("FATAL: cannot create --sqlite-db-path directory: ", pth_sqlite.base);
+ stderr.writeln(" (", ex.msg, ")");
+ import core.runtime;
+ core.runtime.Runtime.terminate();
+ }
}
auto db = Database(pth_sqlite.sqlite_file);
{
@@ -512,7 +527,12 @@ if ((doc.matters.opt.action.sqlite_db_create)) {
} else {
try {
pth_sqlite.base.mkdirRecurse;
- } catch (FileException ex) { }
+ } catch (FileException ex) {
+ stderr.writeln("FATAL: cannot create --sqlite-db-path directory: ", pth_sqlite.base);
+ stderr.writeln(" (", ex.msg, ")");
+ import core.runtime;
+ core.runtime.Runtime.terminate();
+ }
}
_db_statement ~= SQLiteTablesReCreate!()();
SQLiteDbRun!()(db, _db_statement, doc.matters.opt.action, "TABLE RE-CREATE");
diff --git a/src/sisudoc/io_out/sqlite.d b/src/sisudoc/io_out/sqlite.d
index b5c0f47..4ce5e0d 100644
--- a/src/sisudoc/io_out/sqlite.d
+++ b/src/sisudoc/io_out/sqlite.d
@@ -71,7 +71,12 @@ template SQLiteHubBuildTablesAndPopulate() {
} else {
try {
pth_sqlite.base.mkdirRecurse;
- } catch (FileException ex) { }
+ } catch (FileException ex) {
+ stderr.writeln("FATAL: cannot create --sqlite-db-path directory: ", pth_sqlite.base);
+ stderr.writeln(" (", ex.msg, ")");
+ import core.runtime;
+ core.runtime.Runtime.terminate();
+ }
}
template SQLiteDbStatementComposite() {
void SQLiteDbStatementComposite(Db,D)(
@@ -85,7 +90,12 @@ template SQLiteHubBuildTablesAndPopulate() {
} else {
try {
pth_sqlite.base.mkdirRecurse;
- } catch (FileException ex) { }
+ } catch (FileException ex) {
+ stderr.writeln("FATAL: cannot create --sqlite-db-path directory: ", pth_sqlite.base);
+ stderr.writeln(" (", ex.msg, ")");
+ import core.runtime;
+ core.runtime.Runtime.terminate();
+ }
}
_db_statement ~= SQLiteTablesReCreate!()();
SQLiteDbRun!()(db, _db_statement, doc.matters.opt.action, "TABLE RE-CREATE");
@@ -154,7 +164,12 @@ template SQLiteHubDiscreteBuildTablesAndPopulate() {
} else {
try {
pth_sqlite.base.mkdirRecurse;
- } catch (FileException ex) { }
+ } catch (FileException ex) {
+ stderr.writeln("FATAL: cannot create --sqlite-db-path directory: ", pth_sqlite.base);
+ stderr.writeln(" (", ex.msg, ")");
+ import core.runtime;
+ core.runtime.Runtime.terminate();
+ }
}
auto db = Database(pth_sqlite.sqlite_file(doc.matters.src.filename));
template SQLiteDiscreteDbStatementComposite() {
@@ -1671,7 +1686,12 @@ template SQLiteTablesCreate() {
} else {
try {
pth_sqlite.base.mkdirRecurse;
- } catch (FileException ex) { }
+ } catch (FileException ex) {
+ stderr.writeln("FATAL: cannot create --sqlite-db-path directory: ", pth_sqlite.base);
+ stderr.writeln(" (", ex.msg, ")");
+ import core.runtime;
+ core.runtime.Runtime.terminate();
+ }
}
auto db = Database(pth_sqlite.sqlite_file);
{