Commit Graph
80 Commits
Author SHA1 Message Date
b145f1c85a docs: added documentation for jwt idp regarding callback uris (#11925)
# Which Problems Are Solved

The documentation did not reflect the difference between login v1 and v2
for configuring a JWT-idp

# How the Problems Are Solved

Added a warning in the docs which highlight that difference.

# Additional Changes

- Restructured the docs to reflect a more generic approach.
- Fixed indentation inside the `<Callout type="warning">` block so the
content renders as formatted text instead of a code block.
- Fixed inconsistent acronym casing in the use-case section: "jwt" →
"JWT" and "idp" → "IdP" to match the rest of the page and UI terms.

# Additional Context

- Closes: #11589

<!-- START COPILOT CODING AGENT TIPS -->
---

💡 You can make Copilot smarter by setting up custom instructions,
customizing its development environment and configuring Model Context
Protocol (MCP) servers. Learn more [Copilot coding agent
tips](https://gh.io/copilot-coding-agent-tips) in the docs.

---------

Co-authored-by: Copilot <[email protected]>
Co-authored-by: copilot-swe-agent[bot] <[email protected]>
2026-03-30 10:23:42 +02:00
SilvanandGitHub 4bc899d052 docs: Improve README for local development and standardize tab usage (#11865)
## Problem statement

- `<Tabs>` were not rendered in docs
- Missing steps in README for local dev

## How it was solved

- Enhance the README to better describe local development setup and
clean up formatting.
- Standardize the use of tabs across various components for consistency.

## Additional info

To not cause merge conflicts with
https://github.com/zitadel/zitadel/pull/11729 changes in
`/self-hosting/manage/configure/configure.mdx` were skipped
2026-03-23 14:39:07 +00:00
70adaff793 feat: add option to use x.509 certificate system-api-user tokens (#11876)
# Which Problems Are Solved

System API users currently authenticate using raw RSA public keys
configured via Path or KeyData. This approach doesn't integrate well
with Kubernetes tooling.

# How the Problems Are Solved

Allow for the `path`/`keyData` to be an X.509 certificate. 

The `NotBefore` and `NotAfter` fields of the certificate are beeing
respected when validating the JWT.

# Additional Changes

# Additional Context

- Closes #11442

---------

Co-authored-by: Livio Spring <[email protected]>
2026-03-23 13:32:27 +00:00
Livio SpringandGitHub 85ce8c153b chore: ignore pre-release tags for version docs build (#11900)
# Which Problems Are Solved

For switching v4.x releases to a corresponding maintenance branch, we
had to trick semantic release and create a `5.0.0-base` tag on main.
This now breaks the docs build, which tries to fetch all tags and build
a corresponding version.

# How the Problems Are Solved

- Ignore pre-released tags/releases for the moment.

# Additional Changes

None

# Additional Context

- requires backport to v4.x
2026-03-23 14:15:23 +01:00
Mridang AgarwallaandGitHub 471ed4a5d7 feat: add DSN/URL connection string support for PostgreSQL and Redis (#11729) 2026-03-20 15:21:15 +00:00
Fabienne BühlerandGitHub a592fd7293 docs: update naming on authorizations requests to role assignments (#11850)
# Which Problems Are Solved

API Requests in the docs, still had old naming

# How the Problems Are Solved

Updated Authorization Reuqest naming in docs with role assignments
2026-03-19 09:45:21 +01:00
Federico CoppedeandGitHub ae32508225 docs: postgresql 18 warning (#11871)
Added a callout to the Kubernetes deployment guide (`Deploy ZITADEL on
Kubernetes`) explicitly stating that PostgreSQL 18 is not currently
supported, ensuring users deploy with a compatible version (14-17).
2026-03-18 12:23:16 -07:00
Federico CoppedeandGitHub 80a20e9680 docs: added link to sidebar title for benchmarks (#11870)
This PR adds a link to the benchmarks title on the sidebar
2026-03-18 15:29:53 +00:00
3fdac54878 docs: simplify helm chart guide (#11781)
## Summary

Rewrites the Kubernetes quickstart (Stage 1) to match the simplicity of
the Docker Compose quickstart. With the new bundled chart, users deploy
the full stack — PostgreSQL, Traefik, ZITADEL API, ZITADEL Login — with
two copy-paste blocks and no prerequisites beyond a Kubernetes cluster.

## Before / After

**Before:**
- Requires a pre-installed ingress controller
- 4 manual steps: install PostgreSQL separately, create secrets, wire DB
config, install ZITADEL
- Users need to understand Helm dependency management

**After:**
```bash
mkdir zitadel-helm && cd zitadel-helm &&
curl -fsSLO https://raw.githubusercontent.com/zitadel/zitadel-charts/main/examples/0-quickstart/quickstart-values.yaml
```
```bash
helm repo add zitadel https://charts.zitadel.com &&
helm repo add bitnami https://charts.bitnami.com/bitnami &&
helm repo add traefik https://traefik.github.io/charts &&
helm repo update &&
helm upgrade --install zitadel zitadel/zitadel --values quickstart-values.yaml --wait
```

Same UX as the Docker Compose quickstart. Mirrors the GitLab chart
pattern.

## Changes to `kubernetes/index.mdx`

### Stage 1 — Quickstart (full rewrite)
- Prerequisites reduced to: a Kubernetes cluster (1.30+), kubectl, Helm
- k3d moved to an optional callout tip (no longer required)
- Install section: `mkdir` → `curl` → `helm upgrade --install --wait`
(two copy-paste blocks, same pattern as compose)
- `helm upgrade --install` instead of `helm install` — idempotent, safe
to re-run
- "Swap out components" table: shows how to replace PostgreSQL, Traefik,
or add Redis
- Callouts: masterkey warning, stack architecture diagram

### Stage 2+ (unchanged)
Production cluster setup, TLS, cert-manager, etc. are untouched.

## Related
- Chart changes PR:
[zitadel/zitadel-charts#560](https://github.com/zitadel/zitadel-charts/pull/560)

---------

Co-authored-by: Copilot <[email protected]>
2026-03-17 10:36:23 +00:00
279f592d80 docs: tweaking titles for better SEO appeal (#11852)
Just updating some title and descriptions for better SEO discovery

---------

Co-authored-by: Copilot Autofix powered by AI <[email protected]>
2026-03-16 20:03:11 -03:00
34e6a792d2 docs: text customization on Login V2 (#11849)
This PR updates the "Hosted Login UI" documentation to clarify how text
customization works for the new Hosted Login V2.

**Changes:**

1. Adds a warning callout to the "Customization options" section.
2. Clarifies that Login V2 interface texts currently cannot be modified
via the ZITADEL Console UI.
3. Provides the required workaround, directing users to use the Settings
V2 API to patch translation keys using the en.json locale file as a
reference.

---------

Co-authored-by: Copilot Autofix powered by AI <[email protected]>
2026-03-16 17:12:10 +01:00
Fabienne BühlerandGitHub 9a4530bf77 docs: Add note for updated terminology (#11802)
# Which Problems Are Solved

For existing customers it could be hard to understand the new aligned
terms we have defined, if they are already used to the "old term"

# How the Problems Are Solved

Adding notes at the top of docs pages to state clearliy new and old
terms.
2026-03-16 09:10:48 +00:00
Florian ForsterandGitHub 238d98bb30 fix: update OpenAPI generation to use workspace root and improve temp… (#11822)
# Which Problems Are Solved

- `@zitadel/docs:generate-proto-docs` could block while `npx` waited for
confirmation to install `@bufbuild/buf`.
- When the docs generation ran through `nx run-many --target generate`,
that interactive prompt was hidden, so the task appeared stuck without
visible output.

# How the Problems Are Solved

- Resolve Buf from the workspace root with `pnpm exec buf generate` so
the repo-pinned CLI is used non-interactively.
- Run the Buf command from the workspace context instead of the
temporary execution directory.
- Keep the existing generation arguments, template handling, and
excluded path handling intact.

# Additional Changes

- Remove the temporary directory setup that was only needed for the
previous `npx`-based invocation.
- Keep the existing `protoc-gen-connect-openapi` installation and PATH
wiring unchanged.

# Additional Context

- Follow-up for the docs generation issue discussed in Discord where
`@zitadel/docs:generate-proto-docs` prompted for `@bufbuild/buf`
installation and appeared blocked under `nx run-many --target generate`.
- Validated with `pnpm nx run @zitadel/docs:generate-proto-docs
--outputStyle=stream`.
- Validated with `pnpm nx run @zitadel/docs:generate
--outputStyle=stream`.
2026-03-12 14:47:33 +00:00
Vitor Bari BucciantiandGitHub e664d8d04e chore(deps): upgrade fumadocs (#11787)
# Which Problems Are Solved

Request builder in the API docs does not render oneOf variants:
https://github.com/fuma-nama/fumadocs/issues/3063


[Before](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.CreateUser):

<img width="1211" height="965" alt="Screenshot 2026-03-09 at 10 01 54"
src="https://github.com/user-attachments/assets/562d2e8f-99e0-438a-96fb-8b3c57d94c85"
/>

# How the Problems Are Solved

Fixed upstream:
https://github.com/fuma-nama/fumadocs/commit/440a7efaec4453692a287fe4f75b824c395adfb9


[After](https://docs-coodtipmk-zitadel.vercel.app/docs/reference/api/user/zitadel.user.v2.UserService.CreateUser):

<img width="1155" height="1003" alt="Screenshot 2026-03-09 at 10 02 40"
src="https://github.com/user-attachments/assets/f503330e-17f8-43ef-8f79-2d8a488794cf"
/>


# Additional Changes

n/a

# Additional Context

Relates to #11784
2026-03-12 15:12:05 +01:00
cbf05dbe16 fix(ui/auth): display correct Apple sign-in callback URL (#11439)
# Which Problems Are Solved

- Apple Sign-In uses a Form Post method to return the authorization
response, which ZITADEL handles at a specific endpoint ending in /form
for the login v1.
- The Console previously displayed the standard callback URL (without
`/form`), causing confusion and configuration errors..


# How the Problems Are Solved

- **Console**: Updated ProviderNextService to accept a suffix string . 
- **Console**: Updated ProviderAppleComponent to append the suffix to
the urls.


# Additional Changes
- Updated `docs/docs/guides/integrate/identity-providers/apple.mdx` to
explicitly state that the callback URL end with `/form`
- Updated `docs/docs/guides/integrate/login-ui/external-login.mdx` to
clarify the `/form` suffix requirement for Apple Sign-In in the hosted
login documentation.
# Additional Context
- fixes #11438

---------

Co-authored-by: Ramon <[email protected]>
Co-authored-by: Florian Forster <[email protected]>
2026-03-12 10:24:48 +00:00
Mridang AgarwallaandGitHub 7cdee1703f chore: standardised the eslint config structure accross the project (#11814) 2026-03-12 11:02:52 +01:00
4586708c06 chore: add terminology Markdown catalog for Copilot review (#11764)
## Problem

ZITADEL has inconsistent naming across docs, UI, and API
([#5888](https://github.com/zitadel/zitadel/issues/5888)). We want
contributors and Copilot code-review agents to flag discouraged terms
and suggest canonical replacements automatically.

## Solution

Add a **Markdown terminology catalog** that Copilot agents read
natively.

### What's added

- **`TERMINOLOGY.md`** (repo root) — full ~35-term canonical table from
issue #5888 with:
- Action legend: `keep` / `replace` / `remove` / `internal` / `proposed`
  - Scope legend: `UI` / `Docs` / `API` / `Everywhere`
  - "Search for (discouraged)" and "Replace with / enforce" columns
  - Governance section (how to add new terms, ownership)
- **`.github/instructions/terminology.instructions.md`** — Copilot
`applyTo`-scoped instruction that activates on every PR touching
docs/i18n/proto files and tells the agent:
  - Which files map to which scope
- Not to flag identifiers/field names in proto files (only
comments/descriptions)
  - To request catalog updates when new terms are introduced

### What's updated

- `.github/copilot-instructions.md` — points to `TERMINOLOGY.md`
- `apps/docs/AGENTS.md` — updated reference, removed dead
`check-terminology` Nx target entry
- `.github/pull_request_template.md` — checklist item updated
- `.github/workflows/ready_for_review.yml` — checklist item updated

### Why Markdown over JSON

| | Markdown | JSON |
|---|---|---|
| Copilot reads natively | yes | no (needs parsing context) |
| Mirrors AGENTS.md table style | yes | no |
| Human-readable without tooling | yes | no |
| Mirrors the #5888 issue format | yes | no |
| Requires schema / parser | no | yes |

### Why root over `.github/`

`.github/` is for GitHub-specific automation files. `TERMINOLOGY.md` is
a project-wide convention document — it belongs alongside
`CONTRIBUTING.md`, `CODE_OF_CONDUCT.md`, and `AGENTS.md` at the repo
root.

## How it works in practice

When a PR touches `apps/docs/content/**`, `console/src/assets/i18n/**`,
`apps/login/locales/**`, or `proto/**/*.proto`, Copilot code review
automatically loads `.github/instructions/terminology.instructions.md`
and cross-references `TERMINOLOGY.md` to flag discouraged terms.

Human reviewers see the terminology checklist in the auto-comment on PR
open.

## Checklist
- [x] `TERMINOLOGY.md` at repo root with all ~35 terms from #5888
- [x] Plain text action/scope values (no emojis)
- [x] Copilot instruction file scoped to correct file patterns
- [x] All stale `terminology-rules.json` references removed
- [x] No linter/CI step added (guidelines-only approach)

Relates to: #5888

---------

Co-authored-by: Copilot <[email protected]>
Co-authored-by: Fabienne Bühler <[email protected]>
2026-03-11 16:20:27 +00:00
574e23e834 fix: Separate Example Applications and SDKs/Integrations more clearly (#11569)
# Which Problems Are Solved

The distinction between Example Applications and SDKs has not been
clear. In the SDKs section a lot of Example applications where listed.
Also In the SDKs it was not really clear what the SDKs actually are.
Also some examples and skds are outdated and not well maintained
anymore.

# How the Problems Are Solved

- Moved all example app guides to the Example Applications Section
- Restructured SDKs Nav --> SDKs & Integrations: Frontend & Mobile,
Backend & API, Management API Clients
- Removed unnecessary / outdated guides
- Remove ids in framework.json for frameworks which shouldn't be
rendered in console

## Todos:
- Update SDKs Introduction page
- Add links to common oidc libs for most used frameworks

---------

Co-authored-by: Mridang Agarwalla <[email protected]>
2026-03-11 14:57:15 +01:00
247e278505 feat: delete metadata on SetUserMetadata api (#11776)
# Which Problems Are Solved

Currently, to delete metadata a key, callers must use a separate
[DeleteMetadata](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.DeleteUserMetadata)
API. This increases the complexity on client-side for operations where
metadata need to be synchronized.

# How the Problems Are Solved

Introduce the behavior to
[SetUserMetadata](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.SetUserMetadata):

When a metadata entry is passed with an empty value ("" / empty bytes):

- If the key exists → delete the key
- If the key does not exist → no-op (idempotent, no error)

# Additional Changes

- Updated [User Metadata
page](https://zitadel.com/docs/guides/manage/customize/user-metadata#manage-user-metadata-through-the-management-api)

# Additional Context

Similar behavior will be applied to
[UpdateUser](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.UpdateUser)
and
[SetOrganizationMetadata](https://zitadel.com/docs/reference/api/org/zitadel.org.v2.OrganizationService.SetOrganizationMetadata)

Breaking change? 
Currently, sending an empty value returns an error — no client should be
intentionally relying on that error as part of a working workflow. The
change goes from "rejected input" to "accepted input with defined
semantics."

In other words, it relaxes a restriction rather than tightening one.
Existing valid calls continue to work exactly as before. The only
scenario where it could be "breaking" is if someone explicitly depends
on the error response for empty values (e.g., using it as a validation
check), which would be unusual.

---------

Co-authored-by: Gayathri Vijayan <[email protected]>
Co-authored-by: Copilot <[email protected]>
2026-03-06 14:57:52 +01:00
Vitor Bari BucciantiandGitHub 3443507c20 chore(deps): bump protoc-gen-connect-openapi to v0.25.5 (#11784)
# Which Problems Are Solved

1. `oneOf` variant sub-schemas generated from proto `oneof` fields
missing `type: "object"`. This causes fumadocs to skip rendering the
properties within each variant. Example:
https://zitadel.com/docs/reference/api/internal_permission/zitadel.internal_permission.v2.InternalPermissionService.CreateAdministrator


[Before](https://zitadel.com/docs/reference/api/internal_permission/zitadel.internal_permission.v2.InternalPermissionService.CreateAdministrator):
<img width="977" height="823" alt="Screenshot 2026-03-06 at 09 56 38"
src="https://github.com/user-attachments/assets/54ddbbbb-f36b-4a2a-96af-13b3da41de3b"
/>


[After](https://docs-git-bump-protoc-gen-connect-openapi-version-zitadel.vercel.app/docs/reference/api/internal_permission/zitadel.internal_permission.v2.InternalPermissionService.CreateAdministrator):
<img width="964" height="1021" alt="Screenshot 2026-03-06 at 09 56 47"
src="https://github.com/user-attachments/assets/a461c4b5-44fe-487b-b4d2-8af47d407d3e"
/>


2. missing requestBody for messages with oneOf and path params. Example:
https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.UpdateUser


[Before](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.UpdateUser):
<img width="994" height="883" alt="Screenshot 2026-03-06 at 09 59 03"
src="https://github.com/user-attachments/assets/824f4154-3270-45d7-9af7-a28c7bdc7c44"
/>



[After](https://docs-git-bump-protoc-gen-connect-openapi-version-zitadel.vercel.app/docs/reference/api/user/zitadel.user.v2.UserService.UpdateUser):

<img width="978" height="1293" alt="Screenshot 2026-03-06 at 09 59 25"
src="https://github.com/user-attachments/assets/330c1204-ccce-402c-bccb-b27076198dcd"
/>

(https://github.com/fuma-nama/fumadocs/issues/3063 will also be updated
with improved `oneOf` visualization in this case.)

# How the Problems Are Solved

By fixing `protoc-gen-connect-openapi` to correctly generate the OpenAPI
docs.

# Additional Changes

n/a

# Additional Context

https://github.com/sudorandom/protoc-gen-connect-openapi/pull/233
https://github.com/sudorandom/protoc-gen-connect-openapi/pull/234
2026-03-06 12:57:35 +01:00
8ad1d28086 docs: improve API introduction page DX (#11749)
<!--
Please inform yourself about the contribution guidelines on submitting a
PR here:
https://github.com/zitadel/zitadel/blob/main/CONTRIBUTING.md#submit-a-pull-request-pr.
Take note of how PR/commit titles should be written and replace the
template texts in the sections below. Do not remove any of the sections.
-->

# Which Problems Are Solved

The `/apis/introduction` page did not give developers clear guidance on
which API version to use. v1 and v2 were presented as equal choices, the
v2 resource list was incomplete, the API path prefix block was
misleading, and several links used inconsistent relative paths.

- No clear recommendation to use v2 for new integrations
- v1 APIs not labelled as legacy
- "APIs v2" section only listed 3 of 15 available v2 services
- Path prefix block only listed 5 of 15 v2 gRPC service paths, with no
distinction between REST and gRPC/Connect access patterns
- `/ui/` path listed as a single entry — the Management Console
(`/ui/console/`) and hosted Login UI (`/ui/login/`) were not
distinguished
- Relative links (`../guides/...`, `./assets/assets`) inconsistent with
the rest of the page
- Auth disclaimer paragraph was confusing; "Custom" section heading was
unclear

# How the Problems Are Solved

- **v2-first framing**: Added a clear directive — "Use the v2 APIs for
all new integrations" — and renamed the old section to "Legacy v1 APIs"
- **Complete v2 resource list**: All 15 v2 services now listed with
one-line descriptions (User, Session, Org, Instance, Project,
Application, IDP, Group, Settings, Feature, Authorization, Action,
WebKey, OIDC, SAML)
- **Full path prefix list**: All 15 v2 gRPC service paths listed; split
into `# REST (HTTP/JSON transcoding): /v2/` and `# gRPC + Connect
protocol (binary or JSON via connectRPC):`
- **`/ui/` paths clarified**: Split into `/ui/console/` (Management
Console) and `/ui/login/` (Hosted Login UI) with inline comments
- **Fixed relative links**: `../guides/...` → `/guides/...`;
`./assets/assets` → `/apis/assets/assets`
- **Section copy improvements**: Auth disclaimer removed; "Custom"
renamed to "Session-based and custom login" with clear bullet list; v1
API card descriptions updated with v2 pointers; Assets card, System card
title fix
- **Client libraries section**: Replaced noisy "API definitions" section
with cleaner "Client libraries & schemas"

# Additional Context

All changes are in `apps/docs/content/apis/introduction.mdx`,
`apps/docs/content/apis/v2.mdx`, and
`apps/docs/content/apis/migration_v1_to_v2.mdx`.

Co-authored-by: Copilot <[email protected]>
2026-03-04 18:11:07 +00:00
Florian ForsterandGitHub 2763e93a61 docs: shorten page titles for SEO (#11750)
## What

Shorten the `title` frontmatter on 20 docs pages so that the rendered
`<title>` tag stays within the 70-character SEO limit.

The root layout appends ` | ZITADEL Docs` (15 chars) to every page
title, meaning the raw frontmatter `title` must be ≤ 55 characters. A
site scan flagged all 20 pages for the "Title too long" warning (titles
ranged from 71 to 92 characters in the final rendered tag).

## Why

Search engines may truncate or ignore `<title>` tags longer than 70
characters, hurting click-through rates and keyword relevance in search
results.

## How

Each title was rewritten to:
- Fit within 55 characters (leaving room for ` | ZITADEL Docs`)
- Front-load the primary search keyword (product name, protocol, or
feature)
- Include "ZITADEL" where users realistically search for `{feature}
ZITADEL`
- Avoid generic filler words ("Configure", "Set up", "Support for")

All 20 files already have a `sidebar_label` field that preserves the
original descriptive title for sidebar navigation — no navigation
changes result from this PR.

## Pages updated

| Page | Before (chars) | After (chars) |
|---|---|---|
| concepts/features/passkeys | 82 | 64 |
| guides/integrate/identity-providers/openldap | 72 | 58 |
| guides/solution-scenarios/b2b | 78 | 59 |
| guides/integrate/services/cloudflare-oidc | 86 | 54 |
| guides/integrate/login/hosted-login | 71 | 55 |
| guides/integrate/service-accounts/private-key-jwt | 76 | 56 |
| guides/integrate/service-accounts/client-credentials | 78 | 60 |
| guides/integrate/services/google-cloud | 92 | 57 |
| guides/solution-scenarios/saas | 88 | 65 |
| guides/migrate/sources/auth0 | 73 | 65 |
| guides/integrate/login-ui/oidc-standard | 81 | 55 |
| guides/integrate/login-ui/username-password | 73 | 59 |
| guides/integrate/login-ui/device-auth | 78 | 60 |
| guides/integrate/identity-providers/linkedin_oauth | 72 | 58 |
| guides/integrate/identity-providers/pingfederate-saml | 74 | 61 |
| guides/integrate/service-accounts/personal-access-token | 82 | 62 |
| legal/service-description/cloud-service-description | 76 | 61 |
| guides/integrate/login/login-users | 83 | 55 |
| guides/integrate/identity-providers/migrate | 74 | 65 |
| guides/manage/console/projects-overview | 71 | 62 |

All final `<title>` values are between 54 and 66 characters (well under
the 70-char limit).
2026-03-04 11:14:11 +00:00
Marco A.andGitHub bebee4c795 chore: naming consistency - Organization ID (#11733)
# Which Problems Are Solved

Renaming of:

  - Resource Owner
  - OrgID
  - OrganizationID
  - Organization Id

# How the Problems Are Solved

Find & Replace, evalue entries, is resource owner referring to an
organization ? If so, do change

# Additional Context

- Closes #11305
2026-03-03 10:24:44 +00:00
Florian ForsterandGitHub 92a628d892 feat(database): enhance PostgreSQL setup documentation and commands for non-admin access (#11631)
Users deploying ZITADEL against a managed PostgreSQL service (RDS, Cloud
SQL, Azure Database, etc.) often do not have superuser access and cannot
provide `Admin.*` credentials. The documented workaround — provisioning
the user and database manually and then running `start-from-setup` —
silently skips schema bootstrapping, causing `relation
"eventstore.events" does not exist` errors with no clear recovery path.

The root cause is that `zitadel init` conflates two steps that require
different privileges without exposing them separately:

- **Provisioning step** (`CREATE ROLE`, `CREATE DATABASE`, `GRANT`) —
requires superuser.
- **Schema bootstrapping step** (create
`eventstore`/`projections`/`system` schemas and base tables) — requires
only DB owner.

Users who handle the provisioning step externally have no supported way
to run schema bootstrapping alone.

## Changes

- **`cmd/initialise/verify_schema.go`** (renamed from
`verify_zitadel.go`): Rename `newZitadel()` → `newSchema()` (internal);
rename the `init zitadel` sub-command to `zitadel init schema`
(backwards-compatible alias kept) with a clear description that it
bootstraps the ZITADEL database schema without admin/superuser
privileges. Fix stale error log message to reference `init schema`.
- **`cmd/initialise/verify_schema_test.go`** (renamed from
`verify_zitadel_test.go`): Test file renamed to match source file.
- **`cmd/initialise/init.go`**: Update call site to `newSchema()`. Add
guidance in the `init` command's Long description about using `zitadel
init schema` for users without admin credentials.
- **`cmd/initialise/verify_database.go`**: Add a `pg_database` catalog
pre-check before attempting `CREATE DATABASE`, so `zitadel init` with
`ADMIN=service_user` no longer fails with `permission denied to create
database` when the database was already provisioned externally.
- **`cmd/initialise/verify_database_test.go`**: Add test cases covering
the new catalog-check skip path, the existing error-skip path, and the
error-propagation path when the `pg_database` query itself fails.
- **`apps/docs/content/self-hosting/manage/database/index.mdx`**: Inline
the `_postgres.mdx` partial (now only PostgreSQL is supported), add a
top-level callout, and add a **Managed PostgreSQL / No Admin Access**
section with explicit 3-step instructions and security guidance (strong
passwords, SSL, TLS). Additional improvements: add inline `# Use
'require' or 'verify-full' for production` comments on `Mode: disable`
lines in the YAML example; add clarifying comment to the redundant
`GRANT` in the SQL snippet; replace admonition syntax with proper
Fumadocs `<Callout>` components; add full database connection env vars
to the `start-from-setup` example.
- **`apps/docs/content/self-hosting/manage/updating_scaling.mdx`**:
Rewrite the init phase description to clearly distinguish the
provisioning and schema bootstrapping steps, and document `zitadel init
schema` as the path for manual provisioning. Replace admonition syntax
with proper Fumadocs `<Callout>` components.
- **`apps/docs/content/self-hosting/manage/database/_postgres.mdx`**:
Deleted (content merged into `index.mdx`).

## Problem

This relates to https://github.com/zitadel/zitadel/discussions/9363

I think we can improve our UX in cases where a user wants to use an
external DB and/or does not want to share too broad permissions with
zitadel

## Related problems

* https://github.com/zitadel/zitadel/issues/10432
* https://github.com/zitadel/zitadel/discussions/8583
* https://github.com/zitadel/zitadel/issues/7903
* https://github.com/zitadel/zitadel/issues/9718
* https://github.com/zitadel/zitadel/issues/8012
* https://github.com/zitadel/zitadel/issues/8558

## Related PRs

https://github.com/zitadel/zitadel/pull/11021
2026-03-03 07:05:32 +01:00
Livio SpringandGitHub 110a082fc2 fix: list all frameworks (#11716)
# Which Problems Are Solved

Not all frameworks were listed in the Management Console when creating
an application.

# How the Problems Are Solved

Aligned the list from the docs and console.

# Additional Changes

None

# Additional Context

requires backport to v4.x
2026-03-02 08:37:44 +01:00
Federico CoppedeandGitHub 7db9af486f docs: add guest user auth use case (#11715)
this PR adds a guest user auth doc to the use cases sidebar section
2026-02-27 15:57:09 +00:00
Federico CoppedeandGitHub 8d09630a0d docs: update feedback form (#11717)
This PR forces the user to enter a reason/explanation before submitting
a negative feedback. Negative feedback without an explanation is not
actionable.
2026-02-27 07:50:26 -08:00
Vitor Bari BucciantiandGitHub a3d0df1f4c docs: small fixes across docs (#11687)
# Which Problems Are Solved

This PR fixes a couple of minor issues in the docs:
- Duplicated sentences
- Obsolete names
- Wrong header hierarchy 

# How the Problems Are Solved

Solved by rewriting/fixing the mdx files.

# Additional Changes

none

# Additional Context

none
2026-02-27 11:44:35 +01:00
850adc0da4 docs(deps): update fumadocs to latest versions (#11692)
## Summary

Updates fumadocs packages to their latest versions:

| Package | Before | After |
|---------|--------|-------|
| `fumadocs-core` | 16.6.3 | 16.6.5 |
| `fumadocs-ui` | 16.6.3 | 16.6.5 |
| `fumadocs-mdx` | 14.2.7 | 14.2.8 |
| `fumadocs-openapi` | 10.3.6 | 10.3.11 |

See https://github.com/fuma-nama/fumadocs/releases for full changelogs.

Co-authored-by: Copilot <[email protected]>
Co-authored-by: Federico Coppede <[email protected]>
2026-02-26 06:21:56 +00:00
ed48fbfbcd docs: update custom domain guide for customer portal (#11691)
This PR fixes some issues on the custom domain guide for the customer
portal

---------

Co-authored-by: Copilot <[email protected]>
2026-02-25 21:59:22 +00:00
bac224c56d chore: improve docker compose template, tests and docs (#11593)
Replaces the single-file `docker-compose.yaml` quickstart with a
production-aware, Traefik-based compose pack in `deploy/compose/`. The
pack covers the full arc from a 2-minute localhost quickstart to a
hardened homelab or semi-production deployment.

### What's in the pack

**Stack**: Traefik (proxy) → ZITADEL API (Go `:8080`) + ZITADEL Login
(Next.js `:3000`) → PostgreSQL

All HTTP/gRPC routing is handled by Traefik via Docker labels — no
manual proxy config needed. The Login V2 UI is enabled by default. Login
URLs are derived automatically from `ZITADEL_DOMAIN`,
`ZITADEL_EXTERNALPORT`, and `ZITADEL_PUBLIC_SCHEME` — no separate URL
variables needed.

**Compose files**

| File | Purpose |
|------|---------|
| `docker-compose.yml` | Base stack — works standalone. Uses explicit
`name: zitadel` network for reliable Traefik service discovery. |
| `docker-compose.mode-letsencrypt.yml` | TLS overlay: ACME HTTP
challenge |
| `docker-compose.mode-external-tls.yml` | TLS overlay: upstream LB/CDN
terminates TLS. Uses `forwardedHeaders.trustedIPs` (configurable via
`TRAEFIK_TRUSTED_IPS`) instead of `insecure=true`. |
| `docker-compose.mode-local-tls.yml` | TLS overlay: self-signed certs
for LAN |
| `docker-compose.prodlike.yml` | Splits init / setup / start for
controlled upgrades |
| `docker-compose.test.yml` | CI overlay: swaps images to locally-built
`:local` tags |

**Optional profiles**: `cache` (Redis), `observability` (OpenTelemetry
Collector)

### Build infra

- New `@zitadel/api:pack` and `@zitadel/login:pack` Nx targets build
local Docker images (`zitadel/zitadel:local`,
`zitadel/zitadel-login:local`) for use in CI and local testing
- `apps/api/Dockerfile` now accepts a `BINARY` build arg so local and
release builds share the same image

### Testing

- New `@zitadel/compose` Nx project with targets: `test-config`
(validates all overlay combinations using `--quiet`), `test-run` (starts
full stack with local images), `test-e2e` (Playwright wiring + protocol
matrix tests through Traefik), `test-full` (end-to-end: build → start →
test → teardown), `stop`
- **`@zitadel/compose` is explicitly excluded from `nx affected` in CI
for now** — the full stack smoke test requires a Docker daemon and
significant resources. The intent is to add a dedicated
`compose_smoke_test` CI job in a follow-up. The targets can be run
locally with `pnpm nx run @zitadel/compose:test-full`.

### Documentation

- **`compose.mdx`**: Complete rewrite with a staged structure (Stage 1
Quickstart → Stage 2 Homelab → Stage 3 Beyond Compose). Documents TLS
modes, profiles, secrets hardening, ExternalDomain/Port/Secure
invariant, upgrades, and the path to Kubernetes
- **New `requirements.mdx`**: Lists supported PostgreSQL versions
(14–18), Redis (standalone), Docker Compose v2.x, and reverse proxy h2c
requirements
- **`reverse_proxy.mdx`**: Added intro covering h2c requirements, TLS
modes table, and Login UI routing split
- **`troubleshooting.mdx`**: New sections for container restarts on
upgrade, FIRSTINSTANCE env vars not taking effect, and diagnosing
unhealthy containers
- **`caddy/index.mdx`**: Known issue and workaround for the `TE:
trailers` header hang
- Removed the old
`apps/docs/content/self-hosting/deploy/docker-compose.yaml` embedded in
the docs

### Breaking change

The old `apps/docs/content/self-hosting/deploy/docker-compose.yaml` file
is deleted. The getting-started docs page
(`/self-hosting/deploy/compose`) now points to the new pack via a `curl
| tar` download command.

---

### Checklist

- [x] `deploy/compose/` smoke test passes end-to-end locally (`pnpm nx
run @zitadel/compose:test-full`)
- [x] Docs build passes (`pnpm nx run @zitadel/docs:build`)
- [ ] Follow-up issue created to add `compose_smoke_test` CI job

---------

Co-authored-by: Mridang Agarwalla <[email protected]>
2026-02-24 16:33:12 -08:00
dependabot[bot]andGitHub 87aae1b5fc chore(deps): bump the prod group across 1 directory with 16 updates (#11615) 2026-02-24 00:07:34 +00:00
6ce78152e9 docs: add cloud production checklist (#11671)
# Which Problems Are Solved

We do have a production checklist for self-hosters which lacks some
important things for our cloud customers.

# How the Problems Are Solved

Adding a production checklist specifically for cloud users

---------

Co-authored-by: Copilot <[email protected]>
Co-authored-by: Florian Forster <[email protected]>
2026-02-23 23:25:24 +00:00
40c7b38ca1 docs: saas use-case - update project settings description for clarity (#11665)
# Which Problems Are Solved

The Project Settings section of the
[/docs/guides/solution-scenarios/saas](https://zitadel.com/docs/guides/solution-scenarios/saas#project-settings)
page refers to a setting `PROJECT.ROLE.CHECK` that got renamed
([1](https://github.com/zitadel/zitadel/blob/00f7dbe875606486a183f88c77497db9576e7cf5/console/src/assets/i18n/en.json#L1209),
[2](https://github.com/zitadel/zitadel/blob/0f2a349ec145fc3efe0ec45db52d1f974fa180d2/console/src/assets/i18n/en.json#L2138),
[3](https://github.com/zitadel/zitadel/blob/7e11f7a03279655366ab47909fd8b20151abc215/console/src/assets/i18n/en.json#L2138)).
Also, the meaning of the setting was inverted on [93a4ed8

](https://github.com/zitadel/zitadel/commit/93a4ed8857a63b24db56d17626827c662beb7579#diff-c44c61daf06a171a97f8897c96f831a54e677759198a7f2bb65ec52473a20063R36)

before: "if you want to restrict access to users that have the correct
authorization for the project"
after: "if you want to restrict access to users that **do not** have the
correct access for the project"

<img width="669" height="168" alt="Screenshot 2026-02-23 at 10 59 54"
src="https://github.com/user-attachments/assets/91454f6d-cefb-4db0-b064-391779ea3bae"
/>

<img width="692" height="660" alt="Screenshot 2026-02-23 at 10 59 46"
src="https://github.com/user-attachments/assets/bba11870-c579-4fea-986b-0d960500cd77"
/>


# How the Problems Are Solved

Update documentation.

# Additional Changes

n/a

# Additional Context

n/a

---------

Co-authored-by: Copilot <[email protected]>
2026-02-23 15:13:10 +01:00
Mridang AgarwallaandGitHub 6150a61216 docs: added docs for the new dotnet example (#11541) 2026-02-23 07:55:18 +00:00
Florian ForsterandGitHub 2c260a1f10 docs: add description frontmatter to content pages for SEO (#11654) 2026-02-21 07:44:42 -08:00
1a2c2d3183 docs: update graphics to ensure naming is consistent (#11643)
# Which Problems Are Solved

Some graphics used in the docs are using the wrong naming for specific
terms

# How the Problems Are Solved

Replaced graphics with updated terms:
- Role Assignment instead of User Grant, Authorization
- Project Grant instead of Organization Grant

Co-authored-by: Livio Spring <[email protected]>
2026-02-20 11:39:07 +00:00
9b2507832a docs: update outdated screenshots (#11630)
# Which Problems Are Solved

Update outdated screenshots in the docs. 

# How the Problems Are Solved

By replacing the outdated ones with current screenshots

# Additional Changes
Replace the usage of "authorization" with "role assignments" in docs
where it was previously missed.

# Additional Context
- Follow-up for PR https://github.com/zitadel/zitadel/pull/11588
- there are some more docs to be updated, which will be done in a
following PR

---------

Co-authored-by: Copilot <[email protected]>
2026-02-20 12:33:49 +01:00
545e2665f3 docs: fix code block styling by migrating to native fumadocs-ui components (#11646)
# Which Problems Are Solved

- Docs code blocks that display imported files (YAML configs, Go
examples) render as unstyled plain text with no syntax highlighting,
unlike fenced code blocks which go through `rehypeCode`/Shiki

# How the Problems Are Solved

- Deleted `components/docusaurus/code-block.tsx` entirely — no custom
wrapper is needed anymore
- Replaced all usages with `DynamicCodeBlock` from
`fumadocs-ui/components/dynamic-codeblock` directly in MDX files; it
handles SSR pre-rendering through the same Shiki pipeline as all other
code blocks
- Raw file content (YAML, Go) is imported as strings via webpack's
existing `asset/source` rule already configured in `next.config.mjs` —
no new infrastructure required
- In `_proxy_guide_tls_mode.mdx`, the `Commands` JSX component was
refactored from concatenated JSX array children to a single template
literal string, which is what `DynamicCodeBlock` (and any string-based
highlighter) requires
- All changes applied to both non-versioned docs and versioned snapshots
(v4.10, v4.11)

# Additional Changes

None.

# Additional Context

- Affected MDX files: YAML config files under
`self-hosting/manage/configure/`, reverse-proxy guides,
`self-hosting/deploy/compose.mdx`, and the actions
`testing-request-signature.mdx` guide

<!-- START COPILOT ORIGINAL PROMPT -->



<details>

<summary>Original prompt</summary>

> 
> ----
> 
> *This section details on the original issue you should resolve*
> 
> <issue_title>code block style is weird</issue_title>
> <issue_description>### Preflight Checklist
> 
> - [x] I could not find a solution in the existing issues, docs, nor
discussions
> - [x] I have joined the [ZITADEL chat](https://zitadel.com/chat)
> 
> ### Describe the docs your are missing or that are wrong
> 
> This hurts my eyes:
> 
> <img width="867" height="525" alt="Image"
src="https://github.com/user-attachments/assets/b7b66d92-56e1-4e0a-8dba-3cab448930fe"
/>
> 
> ### Additional Context
> 
> _No response_</issue_description>
> 
> <agent_instructions>the user reported a weirdly styled code block in
the docs page where we used to display yaml files. Investigate the docs
and fix the styling</agent_instructions>
> 
> ## Comments on the Issue (you are @copilot in this section)
> 
> <comments>
> <comment_new><author>@fforootd</author><body>
> haha, ok that is certainly weird, let me look at
that.</body></comment_new>
> </comments>
> 


</details>



<!-- START COPILOT CODING AGENT SUFFIX -->

- Fixes zitadel/zitadel#11645

<!-- START COPILOT CODING AGENT TIPS -->

---------

Co-authored-by: copilot-swe-agent[bot] <[email protected]>
Co-authored-by: fforootd <[email protected]>
Co-authored-by: Florian Forster <[email protected]>
2026-02-20 06:46:32 +05:30
Florian ForsterandGitHub 9dd2773e80 chore(build): enhance proto caching and install binary plugins for improved performance, remove reliance on BSR (#11634) 2026-02-19 08:04:17 +00:00
369b468720 chore: consistent naming for object ids (#11604)
<!--
Please inform yourself about the contribution guidelines on submitting a
PR here:
https://github.com/zitadel/zitadel/blob/main/CONTRIBUTING.md#submit-a-pull-request-pr.
Take note of how PR/commit titles should be written and replace the
template texts in the sections below. Don't remove any of the sections.
It is important that the commit history clearly shows what is changed
and why.
Important: By submitting a contribution you agree to the terms from our
Licensing Policy as described here:
https://github.com/zitadel/zitadel/blob/main/LICENSING.md#community-contributions.
-->

# Which Problems Are Solved
As part of the consistent naming effort, this PR focuses on Resource
ID's.

# How the Problems Are Solved
Renamed generic Resource ID to matching Object + ID such as

- Organization ID
- User ID
- Application ID
- Identity Provider ID
- Instance ID
- Project ID

# Additional Changes
None

# Additional Context
- Closes #11306

---------

Co-authored-by: Livio Spring <[email protected]>
2026-02-19 06:21:01 +00:00
b23346f6ca chore: consistent naming for organization domain (#11356)
# Which Problems Are Solved

As part of the consistent naming effort, this PR focuses on
"Organization domain".

# How the Problems Are Solved

- All terms referring referring to Organization Domains where changed to
be Organization Domain

# Additional Changes

None

# Additional Context

- closes [#11283](https://github.com/zitadel/zitadel/issues/11283)

---------

Co-authored-by: Copilot <[email protected]>
2026-02-18 14:46:21 +00:00
Wim Van LaerandGitHub 699ed17918 chore: rename configuration to settings (#11568)
# Which Problems Are Solved

naming inconsistencies: Configuration <-> Settings

# How the Problems Are Solved


# Additional Changes


# Additional Context

- Closes #11282
2026-02-18 14:25:42 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>CopilotfforootdFlorian Forster
93c6099482 chore(deps-dev): bump the dev group across 1 directory with 13 updates (#11548)
Bumps the dev group with 13 updates in the /apps/docs directory:

| Package | From | To |
| --- | --- | --- |
| [@bufbuild/buf](https://github.com/bufbuild/buf) | `1.61.0` | `1.65.0`
|
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) |
`9.39.2` | `10.0.1` |
|
[@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss)
| `4.1.17` | `4.1.18` |
|
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)
| `22.19.7` | `25.2.3` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)
| `8.54.0` | `8.55.0` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)
| `8.54.0` | `8.55.0` |
| [eslint](https://github.com/eslint/eslint) | `8.57.1` | `10.0.0` |
| [glob](https://github.com/isaacs/node-glob) | `11.0.3` | `13.0.2` |
| [globals](https://github.com/sindresorhus/globals) | `17.2.0` |
`17.3.0` |
| [next-validate-link](https://github.com/fuma-nama/next-validate-link)
| `1.6.3` | `1.6.4` |
| [semver](https://github.com/npm/node-semver) | `7.7.3` | `7.7.4` |
|
[tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)
| `3.4.14` | `4.1.18` |
| [yaml-loader](https://github.com/eemeli/yaml-loader) | `0.8.1` |
`0.9.0` |


Updates `@bufbuild/buf` from 1.61.0 to 1.65.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/bufbuild/buf/releases"><code>@​bufbuild/buf</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v1.65.0</h2>
<ul>
<li>Add <code>buf registry policy
{commit,create,delete,info,label,settings}</code> commands to manage BSR
policies.</li>
<li>Add LSP deprecate code action to add the deprecated option on types
and symbols.</li>
<li>Fix import LSP document link to not include <code>import</code>
keyword.</li>
<li>Update <code>PROTOVALIDATE</code> lint rule to support checking
unenforceable <code>required</code> rules on
<code>repeated.items</code>, <code>map.keys</code> and
<code>map.values</code>.</li>
<li>Add <code>buf source edit deprecate</code> command to deprecate
types by setting the <code>deprecate = true</code> option.</li>
</ul>
<h2>v1.64.0</h2>
<ul>
<li>Fix LSP completion for options.</li>
<li>Add LSP document highlighting support.</li>
<li>Add LSP completion for fully-qualified type references.</li>
<li>Improve LSP semantic tokens implementation (for syntax
highlighting).</li>
<li>Add LSP organize imports code action to add missing imports, remove
unused imports, and sort imports alphabetically.</li>
<li>Add LSP document link support.</li>
<li>Add LSP folding range support.</li>
<li>Update <code>PROTOVALIDATE</code> lint rule to support checking
<code>cel_expression</code> fields for valid CEL.</li>
</ul>
<h2>v1.63.0</h2>
<ul>
<li>Update <code>PROTOVALIDATE</code> lint rule to support field mask
rules.</li>
<li>Add LSP completion for field numbers.</li>
</ul>
<h2>v1.62.1</h2>
<ul>
<li>Fix default behavior for <code>swift_prefix</code> to remain unset
when no override is provided in managed mode.</li>
</ul>
<h2>v1.62.0</h2>
<ul>
<li>Add <code>swift_prefix</code> to managed mode.</li>
<li>Add <code>textDocument/rename</code> and
<code>textDocument/prepareRename</code> support for <code>buf lsp
serve</code>.</li>
<li>Fix panic in LSP for empty option paths.</li>
<li>Fix support for multi-arch image manifests for <code>buf beta
registry plugin push</code>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/bufbuild/buf/blob/main/CHANGELOG.md"><code>@​bufbuild/buf</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>[v1.65.0] - 2026-02-03</h2>
<ul>
<li>Add <code>buf registry policy
{commit,create,delete,info,label,settings}</code> commands to manage BSR
policies.</li>
<li>Add LSP deprecate code action to add the deprecated option on types
and symbols.</li>
<li>Fix import LSP document link to not include <code>import</code>
keyword.</li>
<li>Update <code>PROTOVALIDATE</code> lint rule to support checking
unenforceable <code>required</code> rules on
<code>repeated.items</code>, <code>map.keys</code> and
<code>map.values</code>.</li>
<li>Add <code>buf source edit deprecate</code> command to deprecate
types by setting the <code>deprecate = true</code> option.</li>
</ul>
<h2>[v1.64.0] - 2026-01-19</h2>
<ul>
<li>Fix LSP completion for options.</li>
<li>Add LSP document highlighting support.</li>
<li>Add LSP completion for fully-qualified type references.</li>
<li>Improve LSP semantic tokens implementation (for syntax
highlighting).</li>
<li>Add LSP organize imports code action to add missing imports, remove
unused
imports, and sort imports alphabetically.</li>
<li>Add LSP document link support.</li>
<li>Add LSP folding range support.</li>
<li>Update <code>PROTOVALIDATE</code> lint rule to support checking
<code>cel_expression</code> fields for valid CEL.</li>
</ul>
<h2>[v1.63.0] - 2026-01-06</h2>
<ul>
<li>Update <code>PROTOVALIDATE</code> lint rule to support field mask
rules.</li>
<li>Add LSP completion for field numbers.</li>
</ul>
<h2>[v1.62.1] - 2025-12-29</h2>
<ul>
<li>Fix default behavior for <code>swift_prefix</code> to remain unset
when no override is provided in
managed mode.</li>
</ul>
<h2>[v1.62.0] - 2025-12-29</h2>
<ul>
<li>Add <code>swift_prefix</code> to managed mode.</li>
<li>Add <code>textDocument/rename</code> and
<code>textDocument/prepareRename</code> support for <code>buf lsp
serve</code>.</li>
<li>Fix panic in LSP for empty option paths.</li>
<li>Fix support for multi-arch image manifests for <code>buf beta
registry plugin push</code>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/bufbuild/buf/commit/5155f6174d9a74aa2668b0ba0ac26a84ed15ba7e"><code>5155f61</code></a>
Release v1.65.0 (<a
href="https://redirect.github.com/bufbuild/buf/issues/4316">#4316</a>)</li>
<li><a
href="https://github.com/bufbuild/buf/commit/772be42e9f75a76af4a9b265590fddc6f61cac96"><code>772be42</code></a>
Update alpine image (<a
href="https://redirect.github.com/bufbuild/buf/issues/4315">#4315</a>)</li>
<li><a
href="https://github.com/bufbuild/buf/commit/84520721570c729ace25fa5d69061ac7fcf478e3"><code>8452072</code></a>
Add buf source edit deprecate command (<a
href="https://redirect.github.com/bufbuild/buf/issues/4306">#4306</a>)</li>
<li><a
href="https://github.com/bufbuild/buf/commit/1596cdd76486c928ed4f985e30d7b766a4c6815c"><code>1596cdd</code></a>
Add tags to LSP diagnostics (<a
href="https://redirect.github.com/bufbuild/buf/issues/4311">#4311</a>)</li>
<li><a
href="https://github.com/bufbuild/buf/commit/7b0cdfd737db299bffbe1f79e61fa8cadb6382ba"><code>7b0cdfd</code></a>
Make upgrade (<a
href="https://redirect.github.com/bufbuild/buf/issues/4314">#4314</a>)</li>
<li><a
href="https://github.com/bufbuild/buf/commit/16e09a1373cc1b7cb4a641fe41c5509d0c40732c"><code>16e09a1</code></a>
Fix edge case in LSP symbol doc hover (<a
href="https://redirect.github.com/bufbuild/buf/issues/4310">#4310</a>)</li>
<li><a
href="https://github.com/bufbuild/buf/commit/08df2b35ef620d7ec4b09afb6e6c01ed56224b18"><code>08df2b3</code></a>
Update <code>PROTOVALIDATE</code> lint rule to check unenforceable
required rules (<a
href="https://redirect.github.com/bufbuild/buf/issues/4309">#4309</a>)</li>
<li><a
href="https://github.com/bufbuild/buf/commit/4899175426b22dc3344452ca9e5e407d2a94e262"><code>4899175</code></a>
Fix import LSP document link to not include <code>import</code> keyword
(<a
href="https://redirect.github.com/bufbuild/buf/issues/4308">#4308</a>)</li>
<li><a
href="https://github.com/bufbuild/buf/commit/15d712bc3de6ee522fa95a371b4db9d8f2ac6f2a"><code>15d712b</code></a>
Add LSP code action for deprecating symbols (<a
href="https://redirect.github.com/bufbuild/buf/issues/4299">#4299</a>)</li>
<li><a
href="https://github.com/bufbuild/buf/commit/2bdc2170adbc5fb9e24e4d36b85e8a2474aa6775"><code>2bdc217</code></a>
Separate deprecated types in protostat (<a
href="https://redirect.github.com/bufbuild/buf/issues/4307">#4307</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/bufbuild/buf/compare/v1.61.0...v1.65.0">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by [GitHub Actions](<a
href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a>
Actions), a new releaser for <code>@​bufbuild/buf</code> since your
current version.</p>
</details>
<br />

Updates `@eslint/js` from 9.39.2 to 10.0.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/eslint/releases"><code>@​eslint/js</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v10.0.0</h2>
<h2>Breaking Changes</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b"><code>f9e54f4</code></a>
feat!: estimate rule-tester failure location (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420">#20420</a>)
(ST-DDT)</li>
<li><a
href="https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f"><code>a176319</code></a>
feat!: replace <code>chalk</code> with <code>styleText</code> and add
<code>color</code> to <code>ResultsMeta</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227">#20227</a>)
(루밀LuMir)</li>
<li><a
href="https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84"><code>c7046e6</code></a>
feat!: enable JSX reference tracking (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152">#20152</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa"><code>fa31a60</code></a>
feat!: add <code>name</code> to configs (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015">#20015</a>)
(Kirk Waiblinger)</li>
<li><a
href="https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0"><code>3383e7e</code></a>
fix!: remove deprecated <code>SourceCode</code> methods (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137">#20137</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce"><code>501abd0</code></a>
feat!: update dependency minimatch to v10 (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246">#20246</a>)
(renovate[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e"><code>ca4d3b4</code></a>
fix!: stricter rule tester assertions for valid test cases (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125">#20125</a>)
(唯然)</li>
<li><a
href="https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b"><code>96512a6</code></a>
fix!: Remove deprecated rule context methods (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086">#20086</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90"><code>c69fdac</code></a>
feat!: remove eslintrc support (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037">#20037</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04"><code>208b5cc</code></a>
feat!: Use <code>ScopeManager#addGlobals()</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132">#20132</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14"><code>a2ee188</code></a>
fix!: add <code>uniqueItems: true</code> in
<code>no-invalid-regexp</code> option (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155">#20155</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab"><code>a89059d</code></a>
feat!: Program range span entire source text (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133">#20133</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53"><code>39a6424</code></a>
fix!: assert 'text' is a string across all RuleFixer methods (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082">#20082</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44"><code>f28fbf8</code></a>
fix!: Deprecate <code>&quot;always&quot;</code> and
<code>&quot;as-needed&quot;</code> options of the <code>radix</code>
rule (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223">#20223</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98"><code>aa3fb2b</code></a>
fix!: tighten <code>func-names</code> schema (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119">#20119</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756"><code>f6c0ed0</code></a>
feat!: report <code>eslint-env</code> comments as errors (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128">#20128</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db"><code>4bf739f</code></a>
fix!: remove deprecated <code>LintMessage#nodeType</code> and
<code>TestCaseError#type</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096">#20096</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247"><code>523c076</code></a>
feat!: drop support for jiti &lt; 2.2.0 (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016">#20016</a>)
(michael faith)</li>
<li><a
href="https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64"><code>454a292</code></a>
feat!: update <code>eslint:recommended</code> configuration (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210">#20210</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1"><code>4f880ee</code></a>
feat!: remove <code>v10_*</code> and inactive <code>unstable_*</code>
flags (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225">#20225</a>)
(sethamus)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f"><code>f18115c</code></a>
feat!: <code>no-shadow-restricted-names</code> report
<code>globalThis</code> by default (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027">#20027</a>)
(sethamus)</li>
<li><a
href="https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e"><code>c6358c3</code></a>
feat!: Require Node.js <code>^20.19.0 || ^22.13.0 || &gt;=24</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160">#20160</a>)
(Milos Djermanovic)</li>
</ul>
<h2>Features</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822"><code>bff9091</code></a>
feat: handle <code>Array.fromAsync</code> in
<code>array-callback-return</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457">#20457</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222"><code>290c594</code></a>
feat: add <code>self</code> to <code>no-implied-eval</code> rule (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468">#20468</a>)
(sethamus)</li>
<li><a
href="https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2"><code>43677de</code></a>
feat: fix handling of function and class expression names in
<code>no-shadow</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432">#20432</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f0cafe5f37e7765e9d8c2751b5f5d33107687009"><code>f0cafe5</code></a>
feat: rule tester add assertion option <code>requireData</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20409">#20409</a>)
(fnx)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f7ab6937e63bc618d326710858f5861a68f80616"><code>f7ab693</code></a>
feat: output RuleTester test case failure index (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19976">#19976</a>)
(ST-DDT)</li>
<li><a
href="https://github.com/eslint/eslint/commit/7cbcbf9c3c2008deee7d143ae35e668e8ffbccb3"><code>7cbcbf9</code></a>
feat: add <code>countThis</code> option to <code>max-params</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20236">#20236</a>)
(Gerkin)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f148a5eaa1e89dd80ade62f0a690186b00b9f6e1"><code>f148a5e</code></a>
feat: add error assertion options (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20247">#20247</a>)
(ST-DDT)</li>
<li><a
href="https://github.com/eslint/eslint/commit/09e66549ecada6dcb8c567a60faf044fce049188"><code>09e6654</code></a>
feat: update error loc of <code>require-yield</code> and
<code>no-useless-constructor</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20267">#20267</a>)
(Tanuj Kanti)</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/436b82f3c0a8cfa2fdc17d173e95ea11d5d3ee03"><code>436b82f</code></a>
fix: update eslint (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20473">#20473</a>)
(renovate[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/1d29d22fe302443cec2a11da0816397f94af97ec"><code>1d29d22</code></a>
fix: detect default <code>this</code> binding in
<code>Array.fromAsync</code> callbacks (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20456">#20456</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/727451eff55b35d853e0e443d0de58f4550762bf"><code>727451e</code></a>
fix: fix regression of global mode report range in <code>strict</code>
rule (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20462">#20462</a>)
(ntnyq)</li>
<li><a
href="https://github.com/eslint/eslint/commit/e80485fcd27196fa0b6f6b5c7ac8cf49ad4b079d"><code>e80485f</code></a>
fix: remove fake <code>FlatESLint</code> and <code>LegacyESLint</code>
exports (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20460">#20460</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/9eeff3bc13813a786b8a4c3815def97c0fb646ef"><code>9eeff3b</code></a>
fix: update esquery (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20423">#20423</a>)
(cryptnix)</li>
<li><a
href="https://github.com/eslint/eslint/commit/b34b93852d014ebbcf3538d892b55e0216cdf681"><code>b34b938</code></a>
fix: use <code>Error.prepareStackTrace</code> to estimate failing test
location (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20436">#20436</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/51aab5393b058f7cbed69041a9069b2bd106aabd"><code>51aab53</code></a>
fix: update eslint (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20443">#20443</a>)
(renovate[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/23490b266276792896a0b7b43c49a1ce87bf8568"><code>23490b2</code></a>
fix: handle space before colon in <code>RuleTester</code> location
estimation (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20433">#20433</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f244dbf2191267a4cafd08645243624baf3e8c83"><code>f244dbf</code></a>
fix: use <code>MessagePlaceholderData</code> type from
<code>@eslint/core</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20348">#20348</a>)
(루밀LuMir)</li>
<li><a
href="https://github.com/eslint/eslint/commit/d186f8c0747f14890e86a5a39708b052b391ddaf"><code>d186f8c</code></a>
fix: update eslint (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20427">#20427</a>)
(renovate[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/2332262deb4ef3188b210595896bb0ff552a7e66"><code>2332262</code></a>
fix: error location should not modify error message in RuleTester (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20421">#20421</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/ab99b21a6715dee1035d8f4e6d6841853eb5563f"><code>ab99b21</code></a>
fix: ensure <code>filename</code> is passed as third argument to
<code>verifyAndFix()</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20405">#20405</a>)
(루밀LuMir)</li>
<li><a
href="https://github.com/eslint/eslint/commit/8a60f3bc80ad96c65feeb29886342623c630199c"><code>8a60f3b</code></a>
fix: remove <code>ecmaVersion</code> and <code>sourceType</code> from
<code>ParserOptions</code> type (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20415">#20415</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/eafd727a060131f7fc79b2eb5698d8d27683c3a2"><code>eafd727</code></a>
fix: remove <code>TDZ</code> scope type (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20231">#20231</a>)
(jaymarvelz)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/eslint/eslint/commits/HEAD/packages/js">compare
view</a></li>
</ul>
</details>
<br />

Updates `@tailwindcss/postcss` from 4.1.17 to 4.1.18
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/releases"><code>@​tailwindcss/postcss</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v4.1.18</h2>
<h3>Fixed</h3>
<ul>
<li>Ensure validation of <code>source(…)</code> happens relative to the
file it is in (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19274">#19274</a>)</li>
<li>Include filename and line numbers in CSS parse errors (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19282">#19282</a>)</li>
<li>Skip comments in Ruby files when checking for class names (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19243">#19243</a>)</li>
<li>Skip over arbitrary property utilities with a top-level
<code>!</code> in the value (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19243">#19243</a>)</li>
<li>Support environment API in <code>@tailwindcss/vite</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/18970">#18970</a>)</li>
<li>Preserve case of theme keys from JS configs and plugins (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19337">#19337</a>)</li>
<li>Write source maps correctly on the CLI when using
<code>--watch</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19373">#19373</a>)</li>
<li>Handle special defaults (like <code>ringColor.DEFAULT</code>) in JS
configs (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19348">#19348</a>)</li>
<li>Improve backwards compatibility for <code>content</code> theme key
from JS configs (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19381">#19381</a>)</li>
<li>Upgrade: Handle <code>future</code> and <code>experimental</code>
config keys (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19344">#19344</a>)</li>
<li>Try to canonicalize any arbitrary utility to a bare value (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19379">#19379</a>)</li>
<li>Validate candidates similarly to Oxide (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19397">#19397</a>)</li>
<li>Canonicalization: combine <code>text-*</code> and
<code>leading-*</code> classes (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19396">#19396</a>)</li>
<li>Correctly handle duplicate CLI arguments (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19416">#19416</a>)</li>
<li>Don’t emit color-mix fallback rules inside <code>@keyframes</code>
(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19419">#19419</a>)</li>
<li>CLI: Don't hang when output is <code>/dev/stdout</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19421">#19421</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md"><code>@​tailwindcss/postcss</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>[4.1.18] - 2025-12-11</h2>
<h3>Fixed</h3>
<ul>
<li>Ensure validation of <code>source(…)</code> happens relative to the
file it is in (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19274">#19274</a>)</li>
<li>Include filename and line numbers in CSS parse errors (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19282">#19282</a>)</li>
<li>Skip comments in Ruby files when checking for class names (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19243">#19243</a>)</li>
<li>Skip over arbitrary property utilities with a top-level
<code>!</code> in the value (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19243">#19243</a>)</li>
<li>Support environment API in <code>@tailwindcss/vite</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/18970">#18970</a>)</li>
<li>Preserve case of theme keys from JS configs and plugins (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19337">#19337</a>)</li>
<li>Write source maps correctly on the CLI when using
<code>--watch</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19373">#19373</a>)</li>
<li>Handle special defaults (like <code>ringColor.DEFAULT</code>) in JS
configs (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19348">#19348</a>)</li>
<li>Improve backwards compatibility for <code>content</code> theme key
from JS configs (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19381">#19381</a>)</li>
<li>Upgrade: Handle <code>future</code> and <code>experimental</code>
config keys (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19344">#19344</a>)</li>
<li>Try to canonicalize any arbitrary utility to a bare value (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19379">#19379</a>)</li>
<li>Validate candidates similarly to Oxide (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19397">#19397</a>)</li>
<li>Canonicalization: combine <code>text-*</code> and
<code>leading-*</code> classes (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19396">#19396</a>)</li>
<li>Correctly handle duplicate CLI arguments (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19416">#19416</a>)</li>
<li>Don’t emit color-mix fallback rules inside <code>@keyframes</code>
(<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19419">#19419</a>)</li>
<li>CLI: Don't hang when output is <code>/dev/stdout</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19421">#19421</a>)</li>
</ul>
<h2>[3.4.19] - 2025-12-10</h2>
<h3>Fixed</h3>
<ul>
<li>Don’t break <code>sibling-*()</code> functions when used inside
<code>calc(…)</code> (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/19335">#19335</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/tailwindlabs/tailwindcss/commit/9b32f7cb2fd341e1f9ddbe40a4d61d2f272ae33f"><code>9b32f7c</code></a>
Release v4.1.18 (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19431">#19431</a>)</li>
<li><a
href="https://github.com/tailwindlabs/tailwindcss/commit/9c8cf8ac19dd5e742794d33e249b4f9c69b3fa5c"><code>9c8cf8a</code></a>
Fix formatting of path in README.md (<a
href="https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19407">#19407</a>)</li>
<li>See full diff in <a
href="https://github.com/tailwindlabs/tailwindcss/commits/v4.1.18/packages/@tailwindcss-postcss">compare
view</a></li>
</ul>
</details>
<br />

Updates `@types/node` from 22.19.7 to 25.2.3
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/eslint-plugin` from 8.54.0 to 8.55.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@​typescript-eslint/eslint-plugin</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v8.55.0</h2>
<h2>8.55.0 (2026-02-09)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>utils:</strong> deprecate defaultOptions in favor of
meta.defaultOptions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11992">#11992</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-unused-vars] remove trailing
newline when removing entire import (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11990">#11990</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-default-assignment]
require strictNullChecks (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11966">#11966</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12000">#12000</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-default-assignment]
report unnecessary defaults in ternary expressions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11984">#11984</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-default-assignment]
reduce param index to ts this handling (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11949">#11949</a>)</li>
<li><strong>typescript-estree:</strong> forbid invalid modifier in
object expression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11931">#11931</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Christian Rose <a
href="https://github.com/chrros95"><code>@​chrros95</code></a></li>
<li>fisker Cheung <a
href="https://github.com/fisker"><code>@​fisker</code></a></li>
<li>Josh Goldberg</li>
<li>Maria Solano <a
href="https://github.com/MariaSolOs"><code>@​MariaSolOs</code></a></li>
<li>Minyeong Kim <a
href="https://github.com/minyeong981"><code>@​minyeong981</code></a></li>
<li>SungHyun627 <a
href="https://github.com/SungHyun627"><code>@​SungHyun627</code></a></li>
<li>Yukihiro Hasegawa <a
href="https://github.com/y-hsgw"><code>@​y-hsgw</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md"><code>@​typescript-eslint/eslint-plugin</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>8.55.0 (2026-02-09)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>utils:</strong> deprecate defaultOptions in favor of
meta.defaultOptions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11992">#11992</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-useless-default-assignment]
reduce param index to ts this handling (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11949">#11949</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-default-assignment]
report unnecessary defaults in ternary expressions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11984">#11984</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-default-assignment]
require strictNullChecks (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11966">#11966</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12000">#12000</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unused-vars] remove trailing
newline when removing entire import (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11990">#11990</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Christian Rose <a
href="https://github.com/chrros95"><code>@​chrros95</code></a></li>
<li>Josh Goldberg</li>
<li>Maria Solano <a
href="https://github.com/MariaSolOs"><code>@​MariaSolOs</code></a></li>
<li>Minyeong Kim <a
href="https://github.com/minyeong981"><code>@​minyeong981</code></a></li>
<li>SungHyun627 <a
href="https://github.com/SungHyun627"><code>@​SungHyun627</code></a></li>
<li>Yukihiro Hasegawa <a
href="https://github.com/y-hsgw"><code>@​y-hsgw</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/fedfe8665afbabd5c7d3ee09d14f450d5ba0b10a"><code>fedfe86</code></a>
chore(release): publish 8.55.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/8a95834bb5fd818cc049390e4cb57196717a011f"><code>8a95834</code></a>
fix(eslint-plugin): [no-useless-default-assignment] reduce param index
to ts ...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/4ba1e72cd76f357044dca209978d87137c31e6c0"><code>4ba1e72</code></a>
fix(eslint-plugin): [no-useless-default-assignment] report unnecessary
defaul...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/a1f86179074a143fdb06445a28b1144427d33ec9"><code>a1f8617</code></a>
feat(utils): deprecate defaultOptions in favor of meta.defaultOptions
(<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11992">#11992</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/3f0ce54da520cdc58f1dd2e2c45073c92617e2c2"><code>3f0ce54</code></a>
fix(eslint-plugin): [no-useless-default-assignment] require
strictNullChecks ...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/3df0002e8663f170749cc4a9a054af377cf0c554"><code>3df0002</code></a>
fix(eslint-plugin): [no-unused-vars] remove trailing newline when
removing en...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/b931f8c706beafc289462824814dca158694cb48"><code>b931f8c</code></a>
chore: use workspace refs for workspace deps (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12018">#12018</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/1f17a7918cd507b11fd04ce75fe44a9c62bf9542"><code>1f17a79</code></a>
chore: migrate to pnpm (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11248">#11248</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.55.0/packages/eslint-plugin">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/parser` from 8.54.0 to 8.55.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@​typescript-eslint/parser</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v8.55.0</h2>
<h2>8.55.0 (2026-02-09)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>utils:</strong> deprecate defaultOptions in favor of
meta.defaultOptions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11992">#11992</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-unused-vars] remove trailing
newline when removing entire import (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11990">#11990</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-default-assignment]
require strictNullChecks (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11966">#11966</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12000">#12000</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-default-assignment]
report unnecessary defaults in ternary expressions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11984">#11984</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-default-assignment]
reduce param index to ts this handling (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11949">#11949</a>)</li>
<li><strong>typescript-estree:</strong> forbid invalid modifier in
object expression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11931">#11931</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Christian Rose <a
href="https://github.com/chrros95"><code>@​chrros95</code></a></li>
<li>fisker Cheung <a
href="https://github.com/fisker"><code>@​fisker</code></a></li>
<li>Josh Goldberg</li>
<li>Maria Solano <a
href="https://github.com/MariaSolOs"><code>@​MariaSolOs</code></a></li>
<li>Minyeong Kim <a
href="https://github.com/minyeong981"><code>@​minyeong981</code></a></li>
<li>SungHyun627 <a
href="https://github.com/SungHyun627"><code>@​SungHyun627</code></a></li>
<li>Yukihiro Hasegawa <a
href="https://github.com/y-hsgw"><code>@​y-hsgw</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md"><code>@​typescript-eslint/parser</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>8.55.0 (2026-02-09)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/fedfe8665afbabd5c7d3ee09d14f450d5ba0b10a"><code>fedfe86</code></a>
chore(release): publish 8.55.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/b931f8c706beafc289462824814dca158694cb48"><code>b931f8c</code></a>
chore: use workspace refs for workspace deps (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12018">#12018</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/1f17a7918cd507b11fd04ce75fe44a9c62bf9542"><code>1f17a79</code></a>
chore: migrate to pnpm (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/11248">#11248</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.55.0/packages/parser">compare
view</a></li>
</ul>
</details>
<br />

Updates `eslint` from 8.57.1 to 10.0.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/eslint/releases">eslint's
releases</a>.</em></p>
<blockquote>
<h2>v10.0.0</h2>
<h2>Breaking Changes</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b"><code>f9e54f4</code></a>
feat!: estimate rule-tester failure location (<a
href="https://redirect.github.com/eslint/eslint/issues/20420">#20420</a>)
(ST-DDT)</li>
<li><a
href="https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f"><code>a176319</code></a>
feat!: replace <code>chalk</code> with <code>styleText</code> and add
<code>color</code> to <code>ResultsMeta</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20227">#20227</a>)
(루밀LuMir)</li>
<li><a
href="https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84"><code>c7046e6</code></a>
feat!: enable JSX reference tracking (<a
href="https://redirect.github.com/eslint/eslint/issues/20152">#20152</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa"><code>fa31a60</code></a>
feat!: add <code>name</code> to configs (<a
href="https://redirect.github.com/eslint/eslint/issues/20015">#20015</a>)
(Kirk Waiblinger)</li>
<li><a
href="https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0"><code>3383e7e</code></a>
fix!: remove deprecated <code>SourceCode</code> methods (<a
href="https://redirect.github.com/eslint/eslint/issues/20137">#20137</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce"><code>501abd0</code></a>
feat!: update dependency minimatch to v10 (<a
href="https://redirect.github.com/eslint/eslint/issues/20246">#20246</a>)
(renovate[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e"><code>ca4d3b4</code></a>
fix!: stricter rule tester assertions for valid test cases (<a
href="https://redirect.github.com/eslint/eslint/issues/20125">#20125</a>)
(唯然)</li>
<li><a
href="https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b"><code>96512a6</code></a>
fix!: Remove deprecated rule context methods (<a
href="https://redirect.github.com/eslint/eslint/issues/20086">#20086</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90"><code>c69fdac</code></a>
feat!: remove eslintrc support (<a
href="https://redirect.github.com/eslint/eslint/issues/20037">#20037</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04"><code>208b5cc</code></a>
feat!: Use <code>ScopeManager#addGlobals()</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20132">#20132</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14"><code>a2ee188</code></a>
fix!: add <code>uniqueItems: true</code> in
<code>no-invalid-regexp</code> option (<a
href="https://redirect.github.com/eslint/eslint/issues/20155">#20155</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab"><code>a89059d</code></a>
feat!: Program range span entire source text (<a
href="https://redirect.github.com/eslint/eslint/issues/20133">#20133</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53"><code>39a6424</code></a>
fix!: assert 'text' is a string across all RuleFixer methods (<a
href="https://redirect.github.com/eslint/eslint/issues/20082">#20082</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44"><code>f28fbf8</code></a>
fix!: Deprecate <code>&quot;always&quot;</code> and
<code>&quot;as-needed&quot;</code> options of the <code>radix</code>
rule (<a
href="https://redirect.github.com/eslint/eslint/issues/20223">#20223</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98"><code>aa3fb2b</code></a>
fix!: tighten <code>func-names</code> schema (<a
href="https://redirect.github.com/eslint/eslint/issues/20119">#20119</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756"><code>f6c0ed0</code></a>
feat!: report <code>eslint-env</code> comments as errors (<a
href="https://redirect.github.com/eslint/eslint/issues/20128">#20128</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db"><code>4bf739f</code></a>
fix!: remove deprecated <code>LintMessage#nodeType</code> and
<code>TestCaseError#type</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20096">#20096</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247"><code>523c076</code></a>
feat!: drop support for jiti &lt; 2.2.0 (<a
href="https://redirect.github.com/eslint/eslint/issues/20016">#20016</a>)
(michael faith)</li>
<li><a
href="https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64"><code>454a292</code></a>
feat!: update <code>eslint:recommended</code> configuration (<a
href="https://redirect.github.com/eslint/eslint/issues/20210">#20210</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1"><code>4f880ee</code></a>
feat!: remove <code>v10_*</code> and inactive <code>unstable_*</code>
flags (<a
href="https://redirect.github.com/eslint/eslint/issues/20225">#20225</a>)
(sethamus)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f"><code>f18115c</code></a>
feat!: <code>no-shadow-restricted-names</code> report
<code>globalThis</code> by default (<a
href="https://redirect.github.com/eslint/eslint/issues/20027">#20027</a>)
(sethamus)</li>
<li><a
href="https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e"><code>c6358c3</code></a>
feat!: Require Node.js <code>^20.19.0 || ^22.13.0 || &gt;=24</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20160">#20160</a>)
(Milos Djermanovic)</li>
</ul>
<h2>Features</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822"><code>bff9091</code></a>
feat: handle <code>Array.fromAsync</code> in
<code>array-callback-return</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20457">#20457</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222"><code>290c594</code></a>
feat: add <code>self</code> to <code>no-implied-eval</code> rule (<a
href="https://redirect.github.com/eslint/eslint/issues/20468">#20468</a>)
(sethamus)</li>
<li><a
href="https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2"><code>43677de</code></a>
feat: fix handling of function and class expression names in
<code>no-shadow</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20432">#20432</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f0cafe5f37e7765e9d8c2751b5f5d33107687009"><code>f0cafe5</code></a>
feat: rule tester add assertion option <code>requireData</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20409">#20409</a>)
(fnx)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f7ab6937e63bc618d326710858f5861a68f80616"><code>f7ab693</code></a>
feat: output RuleTester test case failure index (<a
href="https://redirect.github.com/eslint/eslint/issues/19976">#19976</a>)
(ST-DDT)</li>
<li><a
href="https://github.com/eslint/eslint/commit/7cbcbf9c3c2008deee7d143ae35e668e8ffbccb3"><code>7cbcbf9</code></a>
feat: add <code>countThis</code> option to <code>max-params</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20236">#20236</a>)
(Gerkin)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f148a5eaa1e89dd80ade62f0a690186b00b9f6e1"><code>f148a5e</code></a>
feat: add error assertion options (<a
href="https://redirect.github.com/eslint/eslint/issues/20247">#20247</a>)
(ST-DDT)</li>
<li><a
href="https://github.com/eslint/eslint/commit/09e66549ecada6dcb8c567a60faf044fce049188"><code>09e6654</code></a>
feat: update error loc of <code>require-yield</code> and
<code>no-useless-constructor</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20267">#20267</a>)
(Tanuj Kanti)</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/436b82f3c0a8cfa2fdc17d173e95ea11d5d3ee03"><code>436b82f</code></a>
fix: update eslint (<a
href="https://redirect.github.com/eslint/eslint/issues/20473">#20473</a>)
(renovate[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/1d29d22fe302443cec2a11da0816397f94af97ec"><code>1d29d22</code></a>
fix: detect default <code>this</code> binding in
<code>Array.fromAsync</code> callbacks (<a
href="https://redirect.github.com/eslint/eslint/issues/20456">#20456</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/727451eff55b35d853e0e443d0de58f4550762bf"><code>727451e</code></a>
fix: fix regression of global mode report range in <code>strict</code>
rule (<a
href="https://redirect.github.com/eslint/eslint/issues/20462">#20462</a>)
(ntnyq)</li>
<li><a
href="https://github.com/eslint/eslint/commit/e80485fcd27196fa0b6f6b5c7ac8cf49ad4b079d"><code>e80485f</code></a>
fix: remove fake <code>FlatESLint</code> and <code>LegacyESLint</code>
exports (<a
href="https://redirect.github.com/eslint/eslint/issues/20460">#20460</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/9eeff3bc13813a786b8a4c3815def97c0fb646ef"><code>9eeff3b</code></a>
fix: update esquery (<a
href="https://redirect.github.com/eslint/eslint/issues/20423">#20423</a>)
(cryptnix)</li>
<li><a
href="https://github.com/eslint/eslint/commit/b34b93852d014ebbcf3538d892b55e0216cdf681"><code>b34b938</code></a>
fix: use <code>Error.prepareStackTrace</code> to estimate failing test
location (<a
href="https://redirect.github.com/eslint/eslint/issues/20436">#20436</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/51aab5393b058f7cbed69041a9069b2bd106aabd"><code>51aab53</code></a>
fix: update eslint (<a
href="https://redirect.github.com/eslint/eslint/issues/20443">#20443</a>)
(renovate[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/23490b266276792896a0b7b43c49a1ce87bf8568"><code>23490b2</code></a>
fix: handle space before colon in <code>RuleTester</code> location
estimation (<a
href="https://redirect.github.com/eslint/eslint/issues/20433">#20433</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f244dbf2191267a4cafd08645243624baf3e8c83"><code>f244dbf</code></a>
fix: use <code>MessagePlaceholderData</code> type from
<code>@eslint/core</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20348">#20348</a>)
(루밀LuMir)</li>
<li><a
href="https://github.com/eslint/eslint/commit/d186f8c0747f14890e86a5a39708b052b391ddaf"><code>d186f8c</code></a>
fix: update eslint (<a
href="https://redirect.github.com/eslint/eslint/issues/20427">#20427</a>)
(renovate[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/2332262deb4ef3188b210595896bb0ff552a7e66"><code>2332262</code></a>
fix: error location should not modify error message in RuleTester (<a
href="https://redirect.github.com/eslint/eslint/issues/20421">#20421</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/ab99b21a6715dee1035d8f4e6d6841853eb5563f"><code>ab99b21</code></a>
fix: ensure <code>filename</code> is passed as third argument to
<code>verifyAndFix()</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20405">#20405</a>)
(루밀LuMir)</li>
<li><a
href="https://github.com/eslint/eslint/commit/8a60f3bc80ad96c65feeb29886342623c630199c"><code>8a60f3b</code></a>
fix: remove <code>ecmaVersion</code> and <code>sourceType</code> from
<code>ParserOptions</code> type (<a
href="https://redirect.github.com/eslint/eslint/issues/20415">#20415</a>)
(Pixel998)</li>
<li><a
href="https://github.com/eslint/eslint/commit/eafd727a060131f7fc79b2eb5698d8d27683c3a2"><code>eafd727</code></a>
fix: remove <code>TDZ</code> scope type (<a
href="https://redirect.github.com/eslint/eslint/issues/20231">#20231</a>)
(jaymarvelz)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/4e6c4ac042e321da8fc29ce53ed03c86dcaa44a7"><code>4e6c4ac</code></a>
10.0.0</li>
<li><a
href="https://github.com/eslint/eslint/commit/ddd8a223000ac6a2182cc8eae35254806a3b0289"><code>ddd8a22</code></a>
Build: changelog update for 10.0.0</li>
<li><a
href="https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822"><code>bff9091</code></a>
feat: handle <code>Array.fromAsync</code> in
<code>array-callback-return</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20457">#20457</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/1ece282c2286b5dc187ece2a793dbd8798f20bd7"><code>1ece282</code></a>
chore: ignore <code>/docs/v9.x</code> in link checker (<a
href="https://redirect.github.com/eslint/eslint/issues/20452">#20452</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/034e1397446205e83eb341354605380195c88633"><code>034e139</code></a>
ci: add type integration test for
<code>@html-eslint/eslint-plugin</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20345">#20345</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56"><code>f3fbc2f</code></a>
chore: set <code>@eslint/js</code> version to 10.0.0 to skip releasing
it (<a
href="https://redirect.github.com/eslint/eslint/issues/20466">#20466</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/e978ddaab7e6a3c38b4a2afa721148a6ef38f29a"><code>e978dda</code></a>
docs: Update README</li>
<li><a
href="https://github.com/eslint/eslint/commit/4cecf8393ae9af18c4cfd50621115eb23b3d0cb6"><code>4cecf83</code></a>
docs: Update README</li>
<li><a
href="https://github.com/eslint/eslint/commit/c79f0ab2e2d242a93b08ff2f6a0712e2ef60b7b8"><code>c79f0ab</code></a>
docs: Update README</li>
<li><a
href="https://github.com/eslint/eslint/commit/afc06817bbd0625c7b0a46bdc81c38dab0c99441"><code>afc0681</code></a>
chore: remove scopeManager.addGlobals patch for typescript-eslint parser
(<a
href="https://redirect.github.com/eslint/eslint/issues/20">#20</a>...</li>
<li>Additional commits viewable in <a
href="https://github.com/eslint/eslint/compare/v8.57.1...v10.0.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `glob` from 11.0.3 to 13.0.2
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/isaacs/node-glob/blob/main/changelog.md">glob's
changelog</a>.</em></p>
<blockquote>
<h1>changeglob</h1>
<h2>13</h2>
<ul>
<li>Move the CLI program out to a separate package,
<code>glob-bin</code>.
Install that if you'd like to continue using glob from the
command line.</li>
</ul>
<h2>12</h2>
<ul>
<li>Remove the unsafe <code>--shell</code> option. The
<code>--shell</code> option is now
ONLY supported on known shells where the behavior can be
implemented safely.</li>
</ul>
<h2>11.1</h2>
<p><a
href="https://github.com/isaacs/node-glob/security/advisories/GHSA-5j98-mcp5-4vw2">GHSA-5j98-mcp5-4vw2</a></p>
<ul>
<li>Add the <code>--shell</code> option for the command line, with a
warning
that this is unsafe. (It will be removed in v12.)</li>
<li>Add the <code>--cmd-arg</code>/<code>-g</code> as a way to
<em>safely</em> add positional
arguments to the command provided to the CLI tool.</li>
<li>Detect commands with space or quote characters on known shells,
and pass positional arguments to them safely, avoiding
<code>shell:true</code> execution.</li>
</ul>
<h2>11.0</h2>
<ul>
<li>Drop support for node before v20</li>
</ul>
<h2>10.4</h2>
<ul>
<li>Add <code>includeChildMatches: false</code> option</li>
<li>Export the <code>Ignore</code> class</li>
</ul>
<h2>10.3</h2>
<ul>
<li>Add <code>--default -p</code> flag to provide a default pattern</li>
<li>exclude symbolic links to directories when <code>follow</code> and
<code>nodir</code>
are both set</li>
</ul>
<h2>10.2</h2>
<ul>
<li>Add glob cli</li>
</ul>
<h2>10.1</h2>
<ul>
<li>Return <code>'.'</code> instead of the empty string <code>''</code>
when the current
working directory is returned as a match.</li>
<li>Add <code>posix: true</code> option to return <code>/</code>
delimited paths, even on</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/isaacs/node-glob/commit/2135b0c3580caf6330e28dedb2d57cea75f15154"><code>2135b0c</code></a>
13.0.2</li>
<li><a
href="https://github.com/isaacs/node-glob/commit/52544940ddddead912084a436ac08604592c5a81"><code>5254494</code></a>
ship minified by default, update deps</li>
<li><a
href="https://github.com/isaacs/node-glob/commit/0a603fe1857105aedf4a1f80a75375fc3e4c0385"><code>0a603fe</code></a>
remove unused tshy config</li>
<li><a
href="https://github.com/isaacs/node-glob/commit/c759f03302b7b2ab76747cfe2cadf4a51b113082"><code>c759f03</code></a>
13.0.1</li>
<li><a
href="https://github.com/isaacs/node-glob/commit/8354a188e58d66e015f7ad50845260abba8bdd9e"><code>8354a18</code></a>
update deps</li>
<li><a
href="https://github.com/isaacs/node-glob/commit/ff6e0f541ac0fca999fc7803a2774cf1d94f4f47"><code>ff6e0f5</code></a>
ci: update action versions</li>
<li><a
href="https://github.com/isaacs/node-glob/commit/14692860a3d266cae5d0fcc119953a13351f6a10"><code>1469286</code></a>
update workflows and formatting/docs</li>
<li><a
href="https://github.com/isaacs/node-glob/commit/3bfb9604fabcd372fd13bbacef90339d10d1aa92"><code>3bfb960</code></a>
13.0.0</li>
<li><a
href="https://github.com/isaacs/node-glob/commit/db31a63edaffa88b6361199267f155112f49f4fe"><code>db31a63</code></a>
Split the CLI out from the main project</li>
<li><a
href="https://github.com/isaacs/node-glob/commit/54934586bc33b3f90fde6c13c1ca5b719801ee78"><code>5493458</code></a>
ci: remove node 20</li>
<li>Additional commits viewable in <a
href="https://github.com/isaacs/node-glob/compare/v11.0.3...v13.0.2">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~isaacs">isaacs</a>, a new releaser for glob
since your current version.</p>
</details>
<br />

Updates `globals` from 17.2.0 to 17.3.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sindresorhus/globals/releases">globals's
releases</a>.</em></p>
<blockquote>
<h2>v17.3.0</h2>
<ul>
<li>Update globals (2026-02-01) (<a
href="https://redirect.github.com/sindresorhus/globals/issues/336">#336</a>)
295fba9</li>
</ul>
<hr />
<p><a
href="https://github.com/sindresorhus/globals/compare/v17.2.0...v17.3.0">https://github.com/sindresorhus/globals/compare/v17.2.0...v17.3.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/sindresorhus/globals/commit/5edc6020698a76964b0fa17cb604f4484451143b"><code>5edc602</code></a>
17.3.0</li>
<li><a
href="https://github.com/sindresorhus/globals/commit/295fba929adf8b44f945688233778a57ff754368"><code>295fba9</code></a>
Update globals (2026-02-01) (<a
href="https://redirect.github.com/sindresorhus/globals/issues/336">#336</a>)</li>
<li>See full diff in <a
href="https://github.com/sindresorhus/globals/compare/v17.2.0...v17.3.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `next-validate-link` from 1.6.3 to 1.6.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/fuma-nama/next-validate-link/releases">next-validate-link's
releases</a>.</em></p>
<blockquote>
<h2>[email protected]</h2>
<h3>Patch Changes</h3>
<ul>
<li>e8b1df1: Improve error message format to support editor jumping</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/fuma-nama/next-validate-link/blob/dev/CHANGELOG.md">next-validate-link's
changelog</a>.</em></p>
<blockquote>
<h2>1.6.4</h2>
<h3>Patch Changes</h3>
<ul>
<li>e8b1df1: Improve error message format to support editor jumping</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/fuma-nama/next-validate-link/commit/875c724f5a3ef1498d9071e94851f98e9226492a"><code>875c724</code></a>
Merge pull request <a
href="https://redirect.github.com/fuma-nama/next-validate-link/issues/96">#96</a>
from fuma-nama/changeset-release/dev</li>
<li><a
href="https://github.com/fuma-nama/next-validate-link/commit/abb9795c43fc13cf8506413cfb35ea29168dacd7"><code>abb9795</code></a>
run lint</li>
<li><a
href="https://github.com/fuma-nama/next-validate-link/commit/e7cd386893492172d98c67a8b5dbac99fa4d814f"><code>e7cd386</code></a>
update example</li>
<li><a
href="https://github.com/fuma-nama/next-validate-link/commit/e8b1df10f58fb8bf1e4651fe931880859d201be1"><code>e8b1df1</code></a>
feat: Improve error message format to support editor jumping</li>
<li>See full diff in <a
href="https://github.com/fuma-nama/next-validate-link/compare/[email protected]@1.6.4">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by [GitHub Actions](<a
href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a>
Actions), a new releaser for next-validate-link since your current
version.</p>
</details>
<br />

Updates `semver` from 7.7.3 to 7.7.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/npm/node-semver/releases">semver's
releases</a>.</em></p>
<blockquote>
<h2>v7.7.4</h2>
<h2><a
href="https://github.com/npm/node-semver/compare/v7.7.3...v7.7.4">7.7.4</a>
(2026-01-16)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><a
href="https://github.com/npm/node-semver/commit/a29faa5f3309a01c8e5aeb965fb5c02c4c4e80e2"><code>a29faa5</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/835">#835</a>
cli: pass options to semver.valid() for loose version validation (<a
href="https://redirect.github.com/npm/node-semver/issues/835">#835</a>)
(<a
href="https://github.com/mldangelo"><code>@​mldangelo</code></a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li><a
href="https://github.com/npm/node-semver/commit/1d28d5e82de16163daf721a7c76fff93e0d333ab"><code>1d28d5e</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/836">#836</a>
fix typos and update -n CLI option documentation (<a
href="https://redirect.github.com/npm/node-semver/issues/836">#836</a>)
(<a
href="https://github.com/mldangelo"><code>@​mldangelo</code></a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li><a
href="https://github.com/npm/node-semver/commit/120968b76760cb0db85a72bde2adedd0e9628793"><code>120968b</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/840">#840</a>
<code>@npmcli/[email protected].0</code> (<a
href="https://redirect.github.com/npm/node-semver/issues/840">#840</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><a
href="https://github.com/npm/node-semver/commit/44d7130c60cedd3703048aa671bb1d659b79ab07"><code>44d7130</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/824">#824</a>
bump <code>@​npmcli/eslint-config</code> from 5.1.0 to 6.0.0 (<a
href="https://redirect.github.com/npm/node-semver/issues/824">#824</a>)
(<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
<li><a
href="https://github.com/npm/node-semver/commit/70735767b68a1775eb67ac816b183b4a422101f4"><code>7073576</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/820">#820</a>
reorder parameters in invalid-versions.js test (<a
href="https://redirect.github.com/npm/node-semver/issues/820">#820</a>)
(<a href="https://github.com/reggi"><code>@​reggi</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/5816d4cfd6d85169527a2bc22fbd5bf4c64f34e3"><code>5816d4c</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/829">#829</a>
bump <code>@​npmcli/template-oss</code> from 4.28.0 to 4.28.1 (<a
href="https://redirect.github.com/npm/node-semver/issues/829">#829</a>)
(<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot],
<a href="https://github.com/npm-cli-bot"><code>@​...

_Description has been truncated_

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: fforootd <[email protected]>
Co-authored-by: Florian Forster <[email protected]>
2026-02-17 16:37:20 -08:00
Florian ForsterandGitHub d17e954f26 docs: update fumadocs dependencies (#11594)
This PR upgrade Fuma docs and alings some code snippets since shiki
3.22.0 does no longer include defaults for `curl`.
2026-02-17 21:41:48 +01:00
93a4ed8857 chore: rename authorization to role assignment (#11588)
# Which Problems Are Solved

As part of the naming consistency initiative, the terms Authorization,
User grants, internal authorization and other similar terms that are
used in the context of assigning project roles to users are replaced by
Role Assignments in the UI, API docs, and documentation.

# How the Problems Are Solved

By replacing the following terms with Role Assignments in API docs,
Console UI, and guides.

- Authorization
- internal authorization
- external authorization
- User Grant
- Roles and Authorizations

By adding a note in the API docs to make it clear that Authorization
within the context of Authorization Service API refers to role
assignments, not to OAuth authorization as it is still used in the APIs.

By updating some screenshots in documentation / guides to show "Role
Assignments" instead of "Authorizations" in the UI.

# Additional Changes

N/A

# Additional Context

- Closes https://github.com/zitadel/zitadel/issues/11289

---------

Co-authored-by: Copilot <[email protected]>
2026-02-17 13:14:57 +01:00
Florian ForsterandGitHub db9ebbbb41 chore(agents): add agents files (#11497) 2026-02-16 20:45:53 -08:00
Florian ForsterandGitHub 728a5f0158 chore(docs): fix cutoff handling to address missing docs in release 4.11 (#11600)
Fixes failing pipelines, because in release 4.11 the app/docs folder is
missing due to a potential cherry pick issue from the next branch
2026-02-16 17:59:05 +00:00
59f1105b04 chore: rename login data to login details (#11127)
# Which Problems Are Solved

For username/email + password, "login data" seems like uncommon and
confusing terminology to me.
I also think "loginname" is that, maybe it should be written like "login
name" or "username", but I'm having oversight with that now because it
seems to be the way Zitadel calls it.

Here's what Gemini has to say:

> Login Credentials: This is the most widely accepted and formal term in
the tech and security industry. A "credential" is an item of information
that confirms an identity. The pair (username/email and password) is the
set of identifiers used to authenticate the user and grant access (i.e.,
log in).
>
> Login Details: This is also very common in general use and often used
interchangeably with "login credentials," especially in user-facing
contexts (e.g., "Please enter your login details"). It is slightly less
formal than "credentials."
>
> Login Data: While technically correct (as the information is data),
this term is less specific and is more commonly used when referring to a
larger collection of information, like a file containing many users'
credentials, or the data transmitted during the login process.

# How the Problems Are Solved

Renames all occurrences of login data or login credentials to login
details.

# Additional Changes

None.

# Additional Context

I believe this is an improvement but feel free to object.

Co-authored-by: Max Peintner <[email protected]>
Co-authored-by: Ramon <[email protected]>
2026-02-16 09:42:50 +00:00
b5d7518ad1 docs: remove old pages and make sure overview pages are used (#11592)
Summary
- refreshed multiple concept, guide, SDK example, policy, and
troubleshooting pages to match the latest structure
- synchronized `apps/docs/lib/sidebar-data.ts` and
`apps/docs/redirects.json` with the new layout so navigation and URL
rewrites stay consistent

---------

Co-authored-by: Copilot <[email protected]>
Co-authored-by: fcoppede <[email protected]>
2026-02-13 19:50:54 -03:00