diff --git a/.changeset/binary-no-dotenv-autoload.md b/.changeset/binary-no-dotenv-autoload.md deleted file mode 100644 index 92936ac7..00000000 --- a/.changeset/binary-no-dotenv-autoload.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@noormdev/cli': patch ---- - -Stop the `noorm` binary from loading `.env` in the working directory. Bun's loader expanded `$` and cut values at `#`, so a `NOORM_CONNECTION_PASSWORD` containing those characters reached the database as a different password and login failed. `NOORM_*` variables now come only from the process environment: export them in the shell or set them in CI. diff --git a/.changeset/connection-error-reasons.md b/.changeset/connection-error-reasons.md deleted file mode 100644 index cea2dbe2..00000000 --- a/.changeset/connection-error-reasons.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@noormdev/cli': patch -'@noormdev/sdk': patch ---- - -Say why a database connection failed: refused port, unknown host, timeout, rejected TLS certificate, disabled, locked, or expired account, missing grant, connection limit, missing password, and SQLite file or directory faults. Where the server withholds the reason (SQL Server 18456, PostgreSQL 28P01, MySQL 1045), the message says so and lists the usual causes. Exhausted retries report the server's last error. `connection:error` log entries carry `serverCode` and `serverMessage`. diff --git a/.changeset/mssql-unprivileged-logins.md b/.changeset/mssql-unprivileged-logins.md deleted file mode 100644 index c5f1d580..00000000 --- a/.changeset/mssql-unprivileged-logins.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@noormdev/cli': patch -'@noormdev/sdk': patch ---- - -Let MSSQL logins without server-level access connect. Connecting no longer detours through `master` to look the target up in `sys.databases`, so contained database users (the usual account on Azure SQL Database) and logins without `VIEW ANY DATABASE` can connect, and the config add/edit connection test passes for them. A database that is missing, or that the login cannot open, now fails with that reason instead of "Login failed". diff --git a/.changeset/slow-statement-watcher.md b/.changeset/slow-statement-watcher.md deleted file mode 100644 index b20d3cec..00000000 --- a/.changeset/slow-statement-watcher.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@noormdev/cli': minor -'@noormdev/sdk': minor ---- - -Show what a long-running SQL file is doing. After 10 seconds the runner asks the server about the file's session every 10 seconds, from a second pooled connection, and emits `file:progress`: elapsed time, the command's own progress (PostgreSQL `pg_stat_progress_*`, SQL Server `percent_complete`, MySQL stage counters), and the sessions it is waiting on. The TUI run and change screens render it under the running file, and the log records it. Build and exec runs in the TUI cancel on a second `Escape` within 2 seconds; PostgreSQL and MySQL stop the running statement on the server. diff --git a/.changeset/tui-explore-duplicate-keys.md b/.changeset/tui-explore-duplicate-keys.md deleted file mode 100644 index 2066d8d9..00000000 --- a/.changeset/tui-explore-duplicate-keys.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@noormdev/cli': patch -'@noormdev/sdk': patch ---- - -Stop TUI lists from leaving stale rows on screen when two rows share an identity: explore indexes and foreign keys whose names repeat across tables (SQL Server's `IX_UserId`, MySQL's `PRIMARY`), PostgreSQL function and procedure overloads, and settings rules with the same description. `listFunctions` and `listProcedures` now return a `signature` on PostgreSQL that tells overloads apart. diff --git a/.changeset/tui-typing-blocks-shortcuts.md b/.changeset/tui-typing-blocks-shortcuts.md deleted file mode 100644 index 94a03224..00000000 --- a/.changeset/tui-typing-blocks-shortcuts.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@noormdev/cli': patch ---- - -Stop global TUI shortcuts from firing while you type. A capital `L` or `Q` typed into a form field, search box, or the SQL editor used to open the log viewer or the SQL terminal, and `?`, `D`, and `F` could open help or toggle dry-run and force mode. While a text field is taking input, those keys now type their character. diff --git a/examples/llm-memory-db-mssql/CHANGELOG.md b/examples/llm-memory-db-mssql/CHANGELOG.md index b79bfab2..71485e30 100644 --- a/examples/llm-memory-db-mssql/CHANGELOG.md +++ b/examples/llm-memory-db-mssql/CHANGELOG.md @@ -1,5 +1,15 @@ # @noormdev/example-llm-memory-db-mssql +## 0.0.10 + +### Patch Changes + +- Updated dependencies [d8398bd] +- Updated dependencies [d8398bd] +- Updated dependencies [d9b9efd] +- Updated dependencies [d799b13] + - @noormdev/sdk@1.5.0 + ## 0.0.9 ### Patch Changes diff --git a/examples/llm-memory-db-mssql/package.json b/examples/llm-memory-db-mssql/package.json index f9aca103..97f73eec 100644 --- a/examples/llm-memory-db-mssql/package.json +++ b/examples/llm-memory-db-mssql/package.json @@ -1,6 +1,6 @@ { "name": "@noormdev/example-llm-memory-db-mssql", - "version": "0.0.9", + "version": "0.0.10", "private": true, "type": "module", "description": "LLM-memory schema + SDK example exercising NoORM against MSSQL with TVPs", diff --git a/examples/llm-memory-db-pg/CHANGELOG.md b/examples/llm-memory-db-pg/CHANGELOG.md index 13485c8f..fdf51886 100644 --- a/examples/llm-memory-db-pg/CHANGELOG.md +++ b/examples/llm-memory-db-pg/CHANGELOG.md @@ -1,5 +1,15 @@ # @noormdev/example-llm-memory-db-pg +## 0.0.10 + +### Patch Changes + +- Updated dependencies [d8398bd] +- Updated dependencies [d8398bd] +- Updated dependencies [d9b9efd] +- Updated dependencies [d799b13] + - @noormdev/sdk@1.5.0 + ## 0.0.9 ### Patch Changes diff --git a/examples/llm-memory-db-pg/package.json b/examples/llm-memory-db-pg/package.json index a4b9aca2..ee4afa3a 100644 --- a/examples/llm-memory-db-pg/package.json +++ b/examples/llm-memory-db-pg/package.json @@ -1,6 +1,6 @@ { "name": "@noormdev/example-llm-memory-db-pg", - "version": "0.0.9", + "version": "0.0.10", "private": true, "type": "module", "description": "Full-surface noorm example: LLM memory + task tracker schema, SDK, and tests against PostgreSQL", diff --git a/examples/todo-db/CHANGELOG.md b/examples/todo-db/CHANGELOG.md index cf32a5b1..9899ae75 100644 --- a/examples/todo-db/CHANGELOG.md +++ b/examples/todo-db/CHANGELOG.md @@ -1,5 +1,15 @@ # @noormdev/example-todo-db +## 0.0.10 + +### Patch Changes + +- Updated dependencies [d8398bd] +- Updated dependencies [d8398bd] +- Updated dependencies [d9b9efd] +- Updated dependencies [d799b13] + - @noormdev/sdk@1.5.0 + ## 0.0.9 ### Patch Changes diff --git a/examples/todo-db/package.json b/examples/todo-db/package.json index 6bc2bf1e..f963b3ac 100644 --- a/examples/todo-db/package.json +++ b/examples/todo-db/package.json @@ -1,6 +1,6 @@ { "name": "@noormdev/example-todo-db", - "version": "0.0.9", + "version": "0.0.10", "private": true, "type": "module", "description": "SDK integration tests exercising the todo-db example schema", diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 2c4ad017..5a4de9e0 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,19 @@ # @noormdev/cli +## 1.5.0 + +### Minor Changes + +- d9b9efd: Show what a long-running SQL file is doing. After 10 seconds the runner asks the server about the file's session every 10 seconds, from a second pooled connection, and emits `file:progress`: elapsed time, the command's own progress (PostgreSQL `pg_stat_progress_*`, SQL Server `percent_complete`, MySQL stage counters), and the sessions it is waiting on. The TUI run and change screens render it under the running file, and the log records it. Build and exec runs in the TUI cancel on a second `Escape` within 2 seconds; PostgreSQL and MySQL stop the running statement on the server. + +### Patch Changes + +- d8398bd: Stop the `noorm` binary from loading `.env` in the working directory. Bun's loader expanded `$` and cut values at `#`, so a `NOORM_CONNECTION_PASSWORD` containing those characters reached the database as a different password and login failed. `NOORM_*` variables now come only from the process environment: export them in the shell or set them in CI. +- d8398bd: Say why a database connection failed: refused port, unknown host, timeout, rejected TLS certificate, disabled, locked, or expired account, missing grant, connection limit, missing password, and SQLite file or directory faults. Where the server withholds the reason (SQL Server 18456, PostgreSQL 28P01, MySQL 1045), the message says so and lists the usual causes. Exhausted retries report the server's last error. `connection:error` log entries carry `serverCode` and `serverMessage`. +- d8398bd: Let MSSQL logins without server-level access connect. Connecting no longer detours through `master` to look the target up in `sys.databases`, so contained database users (the usual account on Azure SQL Database) and logins without `VIEW ANY DATABASE` can connect, and the config add/edit connection test passes for them. A database that is missing, or that the login cannot open, now fails with that reason instead of "Login failed". +- d799b13: Stop TUI lists from leaving stale rows on screen when two rows share an identity: explore indexes and foreign keys whose names repeat across tables (SQL Server's `IX_UserId`, MySQL's `PRIMARY`), PostgreSQL function and procedure overloads, and settings rules with the same description. `listFunctions` and `listProcedures` now return a `signature` on PostgreSQL that tells overloads apart. +- d8398bd: Stop global TUI shortcuts from firing while you type. A capital `L` or `Q` typed into a form field, search box, or the SQL editor used to open the log viewer or the SQL terminal, and `?`, `D`, and `F` could open help or toggle dry-run and force mode. While a text field is taking input, those keys now type their character. + ## 1.4.2 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index fedc75ed..bd7f791e 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@noormdev/cli", - "version": "1.4.2", + "version": "1.5.0", "description": "Database schema & changeset manager CLI", "type": "module", "bin": { diff --git a/packages/sdk/CHANGELOG.md b/packages/sdk/CHANGELOG.md index 4087d125..589a5db7 100644 --- a/packages/sdk/CHANGELOG.md +++ b/packages/sdk/CHANGELOG.md @@ -1,5 +1,17 @@ # @noormdev/sdk +## 1.5.0 + +### Minor Changes + +- d9b9efd: Show what a long-running SQL file is doing. After 10 seconds the runner asks the server about the file's session every 10 seconds, from a second pooled connection, and emits `file:progress`: elapsed time, the command's own progress (PostgreSQL `pg_stat_progress_*`, SQL Server `percent_complete`, MySQL stage counters), and the sessions it is waiting on. The TUI run and change screens render it under the running file, and the log records it. Build and exec runs in the TUI cancel on a second `Escape` within 2 seconds; PostgreSQL and MySQL stop the running statement on the server. + +### Patch Changes + +- d8398bd: Say why a database connection failed: refused port, unknown host, timeout, rejected TLS certificate, disabled, locked, or expired account, missing grant, connection limit, missing password, and SQLite file or directory faults. Where the server withholds the reason (SQL Server 18456, PostgreSQL 28P01, MySQL 1045), the message says so and lists the usual causes. Exhausted retries report the server's last error. `connection:error` log entries carry `serverCode` and `serverMessage`. +- d8398bd: Let MSSQL logins without server-level access connect. Connecting no longer detours through `master` to look the target up in `sys.databases`, so contained database users (the usual account on Azure SQL Database) and logins without `VIEW ANY DATABASE` can connect, and the config add/edit connection test passes for them. A database that is missing, or that the login cannot open, now fails with that reason instead of "Login failed". +- d799b13: Stop TUI lists from leaving stale rows on screen when two rows share an identity: explore indexes and foreign keys whose names repeat across tables (SQL Server's `IX_UserId`, MySQL's `PRIMARY`), PostgreSQL function and procedure overloads, and settings rules with the same description. `listFunctions` and `listProcedures` now return a `signature` on PostgreSQL that tells overloads apart. + ## 1.4.2 ### Patch Changes diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 5e17053c..3c9c1e98 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@noormdev/sdk", - "version": "1.4.2", + "version": "1.5.0", "description": "Database schema & changeset manager SDK", "type": "module", "main": "./dist/index.js",