From f0a68b3faebbbfc1e5d5bc7402815bcb68885e81 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 21 Oct 2026 02:20:27 +0000 Subject: [PATCH] chore: version packages --- .changeset/compose-mountpoint-ownership.md | 5 ----- .changeset/harness-oauth-binding.md | 5 ----- .changeset/local-auth-compose-entrypoint.md | 5 ----- .changeset/migrate-entra-id.md | 7 ------- .changeset/types-0-29.md | 5 ----- CHANGELOG.md | 15 +++++++++++++++ package.json | 2 +- 7 files changed, 16 insertions(+), 28 deletions(-) delete mode 100644 .changeset/compose-mountpoint-ownership.md delete mode 100644 .changeset/harness-oauth-binding.md delete mode 100644 .changeset/local-auth-compose-entrypoint.md delete mode 100644 .changeset/migrate-entra-id.md delete mode 100644 .changeset/types-0-29.md diff --git a/.changeset/compose-mountpoint-ownership.md b/.changeset/compose-mountpoint-ownership.md deleted file mode 100644 index 30b5a7e..0000000 --- a/.changeset/compose-mountpoint-ownership.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"seamless-cli": patch ---- - -`seamless init` now creates the directories the generated compose file keeps in a volume (`node_modules` under each bind-mounted source tree, and `.next` for the Next.js full-stack layout) before Docker does. On a Linux host Docker created them as root, so `npm install` on the host in `api/` or `web/` failed with `EACCES` until they were removed with sudo. A directory that already exists keeps its owner. diff --git a/.changeset/harness-oauth-binding.md b/.changeset/harness-oauth-binding.md deleted file mode 100644 index 6c733ee..0000000 --- a/.changeset/harness-oauth-binding.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"seamless-cli": patch ---- - -`seamless verify` now forwards the `binding` that `POST /oauth/:providerId/start` returns in the body of its OAuth callbacks, so the OAuth specs pass against an auth API that ties the callback to the browser that started the flow. Older API images ignore the extra field. diff --git a/.changeset/local-auth-compose-entrypoint.md b/.changeset/local-auth-compose-entrypoint.md deleted file mode 100644 index 0579111..0000000 --- a/.changeset/local-auth-compose-entrypoint.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"seamless-cli": patch ---- - -`seamless init --auth=local` now produces an auth service that starts. The generated compose bind-mounts `./auth` over `/app`, which hid the image's `chmod +x ./validateEnvs.sh` (the script is mode 644 in the clone) and left the entrypoint looking for a `dist/server.js` that `Dockerfile.dev` never builds. The auth service now runs the same command as the auth server's own `docker-compose.dev.yml`: sync dependencies, run migrations (creating the database on first boot), then watch the TypeScript sources. diff --git a/.changeset/migrate-entra-id.md b/.changeset/migrate-entra-id.md deleted file mode 100644 index c0ce6b6..0000000 --- a/.changeset/migrate-entra-id.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"seamless-cli": minor ---- - -New `seamless migrate entra-id` imports users straight from Microsoft Entra ID through Microsoft Graph, with the same dry run, batches and report as `migrate csv`. Each user's Entra object id becomes their `externalId`, so re-runs match people without a hand-edited export. It signs in as an app registration with app-only `User.Read.All` (and `GroupMember.Read.All` for groups), reading `ENTRA_TENANT_ID`, `ENTRA_CLIENT_ID` and `ENTRA_CLIENT_SECRET` from the environment only. `--group` imports one group's members, `--groups` maps groups to organizations and roles, disabled accounts and guests are skipped and reported, and `--allow-upn` uses the `userPrincipalName` for users with no mail. - -Migration reports gain a `skipped` count and status, for rows left out on purpose. Skipped rows do not make the command exit 1. diff --git a/.changeset/types-0-29.md b/.changeset/types-0-29.md deleted file mode 100644 index 6fa23ab..0000000 --- a/.changeset/types-0-29.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'seamless-cli': patch ---- - -Depend on `@seamless-auth/types` 0.29.0, which adds the OAuth state `binding` field. diff --git a/CHANGELOG.md b/CHANGELOG.md index 72d74f4..485791a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,20 @@ # seamless-cli +## 0.25.0 + +### Minor Changes + +- e768ec0: New `seamless migrate entra-id` imports users straight from Microsoft Entra ID through Microsoft Graph, with the same dry run, batches and report as `migrate csv`. Each user's Entra object id becomes their `externalId`, so re-runs match people without a hand-edited export. It signs in as an app registration with app-only `User.Read.All` (and `GroupMember.Read.All` for groups), reading `ENTRA_TENANT_ID`, `ENTRA_CLIENT_ID` and `ENTRA_CLIENT_SECRET` from the environment only. `--group` imports one group's members, `--groups` maps groups to organizations and roles, disabled accounts and guests are skipped and reported, and `--allow-upn` uses the `userPrincipalName` for users with no mail. + + Migration reports gain a `skipped` count and status, for rows left out on purpose. Skipped rows do not make the command exit 1. + +### Patch Changes + +- ce96113: `seamless init` now creates the directories the generated compose file keeps in a volume (`node_modules` under each bind-mounted source tree, and `.next` for the Next.js full-stack layout) before Docker does. On a Linux host Docker created them as root, so `npm install` on the host in `api/` or `web/` failed with `EACCES` until they were removed with sudo. A directory that already exists keeps its owner. +- 1ce71d7: `seamless verify` now forwards the `binding` that `POST /oauth/:providerId/start` returns in the body of its OAuth callbacks, so the OAuth specs pass against an auth API that ties the callback to the browser that started the flow. Older API images ignore the extra field. +- bce0a9b: `seamless init --auth=local` now produces an auth service that starts. The generated compose bind-mounts `./auth` over `/app`, which hid the image's `chmod +x ./validateEnvs.sh` (the script is mode 644 in the clone) and left the entrypoint looking for a `dist/server.js` that `Dockerfile.dev` never builds. The auth service now runs the same command as the auth server's own `docker-compose.dev.yml`: sync dependencies, run migrations (creating the database on first boot), then watch the TypeScript sources. +- 888a781: Depend on `@seamless-auth/types` 0.29.0, which adds the OAuth state `binding` field. + ## 0.24.0 ### Minor Changes diff --git a/package.json b/package.json index 75e7c0d..d97e84d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "seamless-cli", - "version": "0.24.0", + "version": "0.25.0", "description": "The CLI for Seamless Auth, open source passwordless auth", "keywords": [ "seamless-auth",