.changes/v0.21.1.md
Node interface and ID scalar, enabling APIs to accept generic Dagger objects while preserving SDK compatibility through legacy FooID and loadFooFromID views for older clients.go.mod and go.sum files by @sipsma in https://github.com/dagger/dagger/pull/13244withRegistryAuth credentials are not incorrectly skipped and authenticated publishes keep working after anonymous pulls to the same registry by @marcosnils + @sipsma in https://github.com/dagger/dagger/pull/13255 https://github.com/dagger/dagger/pull/13256withDirectory and withFile operations preserve expected layer boundaries instead of being squashed into a few large layers by @sipsma in https://github.com/dagger/dagger/pull/13242RUN --mount=type=bind conversion when the bind source selector points to a regular file, improving compatibility with file and directory bind mounts by @sipsma in https://github.com/dagger/dagger/pull/13273missing shared result errors after cache persistence or engine restarts by @sipsma in https://github.com/dagger/dagger/pull/13243op:// 1Password secret reads by caching resolved 1Password secret values during a run, avoiding provider rate limits when the same secret is mounted or read multiple times by @matipan in https://github.com/dagger/dagger/pull/13249RemovePaths entries cannot remove files outside the selected export root through backslash or absolute-path interpretation by @marcosnils in https://github.com/dagger/dagger/pull/13222dagger --x-release for tagged releases so semver refs download release artifacts instead of looking in the main-build artifact namespace, and prevent local runner override environment from leaking into the re-executed CLI by @grouville in https://github.com/dagger/dagger/pull/13259