Skip to content

v0.0.2-alpha.5

Pre-release
Pre-release

Choose a tag to compare

@mobeenabdullah mobeenabdullah released this 15 May 09:15
· 283 commits to main since this release
490cdfa

Released all 12 packages at 0.0.2-alpha.5 in lockstep (nextly, create-nextly-app, and 10 @nextlyhq/* packages).

What's changed

@nextlyhq/adapter-drizzle

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

@nextlyhq/adapter-mysql

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

  • Updated dependencies [fc88dc2]:

    • @nextlyhq/adapter-drizzle@0.0.2-alpha.5

@nextlyhq/adapter-postgres

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

  • Updated dependencies [fc88dc2]:

    • @nextlyhq/adapter-drizzle@0.0.2-alpha.5

@nextlyhq/adapter-sqlite

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

  • Updated dependencies [fc88dc2]:

    • @nextlyhq/adapter-drizzle@0.0.2-alpha.5

@nextlyhq/admin

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

  • Updated dependencies [fc88dc2]:

    • @nextlyhq/ui@0.0.2-alpha.5

create-nextly-app

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

nextly

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

  • Updated dependencies [fc88dc2]:

    • @nextlyhq/adapter-drizzle@0.0.2-alpha.5
    • @nextlyhq/adapter-mysql@0.0.2-alpha.5
    • @nextlyhq/adapter-postgres@0.0.2-alpha.5
    • @nextlyhq/adapter-sqlite@0.0.2-alpha.5

@nextlyhq/plugin-form-builder

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

  • Updated dependencies [fc88dc2]:

    • @nextlyhq/admin@0.0.2-alpha.5
    • nextly@0.0.2-alpha.5
    • @nextlyhq/ui@0.0.2-alpha.5

@nextlyhq/storage-s3

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

@nextlyhq/storage-uploadthing

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

@nextlyhq/storage-vercel-blob

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.

@nextlyhq/ui

Patch Changes

  • #26 fc88dc2 Thanks @mobeenabdullah! - Collection mutation paths now resolve the physical table through collection.tableName, honoring dbName overrides instead of always deriving the name from the slug. The code-first boot sync detects when a collection's resolved tableName differs from the row in dynamic_collections, renames the physical table (Postgres/SQLite/MySQL quoted ALTER TABLE ... RENAME TO), writes the new name back, and invalidates the cached Drizzle schema in CollectionFileManager so the next request rebuilds against the renamed table — previously a dbName change left CRUD pointing at the stale table until a server restart. When both the old and new physical tables exist, the rename is skipped with a warn so the user can resolve the conflict manually. Component runtime-schema refresh after a UI-driven create/update/apply now flows through the DI SchemaRegistry (with a typed fallback to the adapter's tableResolver for non-DI paths) and surfaces failures as warnings instead of swallowing them in a silent try/catch — the prior behavior left comp_* queries selecting pre-rename column names until restart. Generated timestamp columns (createdAt, updatedAt) now emit withTimezone: false / plain TIMESTAMP for Postgres, aligning behavior across SQLite, MySQL, and Postgres.