## hashicorp/terraform — v1.17.0-alpha20260827…v1.17.0-beta1

_41 commits._

### Features
- **Add hypen to diags mentioning the providers-lock sub command (#39162)** (172716e)
- **Add mock_provider support for ephemeral resources (#38928)** (61ef933)
- **Add changelog** (e8ac580)
- **Add evaluation stage to policy entitlement (#39055)** (37e4b8c)
- **state_migrate: Enable machine-readable output via -json flag, add first integration tests (#39064)** (ef30bf2)

### Fixes
- **fix(apply): Return warnings when plan options passed to the apply command don't match the saved plan file (#38698)** (c571b6a)
- **fix(command): prevent state show panic for invalid address (#39087)** (a5d3bbd)
- **fix(cos backend): Optimize tag lock release issue (#39096)** (d4db619)
- **Merge pull request #39091 from hashicorp/jbardin/cbd-order-fix** (47ab962)
- **fix apply graph build order for CBD nodes** (b11b69e)
- **Merge pull request #39058 from hashicorp/sebasslash/fix-unknown-na-policy-statuses** (7f2c229)
- **fix: report query policy unknown and N/A statuses** (8aefeda)

### Backend
- **Prepare before 1.17.0-beta1 release (#39167)** (75f75e6)
- **Implement dynamic provider sources (#39153)** (0384722)
- **Remove BuildConfig and move remaining test around** (c6e8676)
- **Move Stacks BuildConfig usage into stackmodule package** (9ff64e2)
- **Merge pull request #39132 from hashicorp/jbardin/dependencies-deferred** (7b8c301)
- **more precise deferral checks** (dda7386)
- **Update change file for #38928 (#39136)** (103e1e0)
- **Use graph-based approach in `init --from-module`** (40bb837)
- **Remove NewModuleInstaller calls without initializer** (da62c88)
- **Merge pull request #39093 from hashicorp/jbardin/clean-cbd** (b3516d3)
- **plan: Update `-minimal-refresh` to force refresh when an identity schema is upgraded (#39103)** (e7a9de0)
- **Update `google.golang.org/grpc` (#39112)** (8569e5b)
- **deferred: Update apply expansion to ensure partial expansions are registered as unknown (#39086)** (7cb7869)
- **state_migrate: Update JSON log's human-readable description to specify whether backend/state store is being initialised. Refactor control flow. (#39077)** (8fd5705)
- **Delete changefile as part of backporting change (#39098)** (2882ac9)
- **Update CODEOWNERS for cos backend (#39099)** (fa27b96)
- **Move policy from experiments into main builds (#38996)** (c0a2efe)
- **simplify the ForcedCBDTransformer** (1953f72)
- **CHANGELOG** (1662678)
- **import: Deduplicate imports after resource expansion occurs (#39073)** (d052145)
- **command/views: Align remaining state migration related msg types (#39075)** (438068d)
- **command/views: Align const names for state migrate msg types (#39074)** (d9b07ef)
- **Cleanup after 1.17.0-alpha20260827 release** (fb19bf7)

### Tests
- **test: Remove unneeded init view tests (#39146)** (226a1e1)
- **test: order cleanup graph in reverse topological order of creation (#38247)** (a3a9220)

### Chore
- **chore: Bump google.golang.org/grpc to v1.83.2 (#39159)** (9edee03)
- **refactor: Rename JSON message type constants to use `Message` prefix in name (#39145)** (2795725)
- **refactor: Pull `state migrate` logic into helper functions (#39079)** (22768cc)
- **chore: update golang.org/x/crypto (#39125)** (b311ac4)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/hashicorp/terraform?utm_source=github-action)._