2.23.0 (2026-11-05)
❗ Migration guide: v2.22.x -> v2.23.0
🎉 What's new:
- Rework the preview
snowflake_alertresource andsnowflake_alertsdata source. (8f65b6e, 14901f6, d483e2d) - Rework the preview
snowflake_piperesource andsnowflake_pipesdata source. (fac23fe, f4d2b74, 4edc13d, e51c6c5) - Rework the preview
snowflake_shareresource andsnowflake_sharesdata source. (475f89b, db133ae, d2f036c, e053edd, 4ec7382, af475d5), references #1279 - Add new preview resources and data sources:
snowflake_postgres_mirrorresource andsnowflake_postgres_mirrorsdata source for Postgres data mirrors. Table, schema, refresh interval, and warehouse changes apply in place. (de9476b, ee8eef1, 331a02f), references #5229snowflake_replication_groupandsnowflake_replication_group_secondaryresources and thesnowflake_replication_groupsdata source. An external change ofis_primaryrecreates the group. (24d3369, dfcddcc, ee5e077)snowflake_projection_policyresource andsnowflake_projection_policiesdata source. (9b336bc, e198540)snowflake_code_bundleresource andsnowflake_code_bundlesdata source. (075f22a, 07e2597, fb9975c)snowflake_backup_policyresource andsnowflake_backup_policiesdata source. The schedule is a block with one ofhours,minutes, orusing_cron. (869cd6d, 320ce12)
snowflake_warehousesendsWAREHOUSE_TYPE = STANDARDwhenwarehouse_typeis omitted, including when the field is removed from an existing warehouse, so the type staysSTANDARDwhen Snowflake changes the default toADAPTIVE. (3731455)- Add the
token_file_pathprovider field. The driver re-reads that file on every new connection for OAuth, programmatic access token, and OIDC workload identity authentication. (fed96f3), references #5364 - Add
version_triggertosnowflake_openflow_connectorso a changed connector bundle loads in place. (f1c808d) - Accept
AWS_S3TABLESandAWS_PRIVATE_S3TABLESasrest_config.catalog_api_typeonsnowflake_catalog_integration_iceberg_rest. (00c6cd6), references #5344 - Enable the
USER_ENABLE_DEFAULT_WORKLOAD_IDENTITYexperiment by default onsnowflake_service_userandsnowflake_legacy_service_user. Opt out withexperimental_features_disabled. (72d15ea), references #3942 - Add
require_role_restriction_for_person_usersandblocked_roles_listto thepat_policyblock ofsnowflake_authentication_policy. (7f5c6a5) - Add the opt-in
IMPORT_PERMISSIVE_MODEexperiment. Enforcing mode stays the default, andIMPORT_BOOLEAN_DEFAULTis opt-in again. Supported on authentication policies, backup policies, backup sets, catalog integrations, compute pools, external volumes, pipes, Postgres mirrors, shares, and warehouses. - Add
DATA_CONNECTIVITY_PROXY_EGRESSas amodeonsnowflake_network_rule. (1bf87ae), references #5363 - Add
token_accessor.min_tls_versionto set the minimum TLS version for the refresh-token HTTP client. (8947efc) - Add the opt-in
WRITE_ONLY_ATTRIBUTESexperiment, with write-onlyrsa_public_key_woandrsa_public_key_2_woand their version counters onsnowflake_user,snowflake_service_user, andsnowflake_legacy_service_user. Requires Terraform 1.11 or later. (9c643b8, 50a48ce)
🔧 Misc:
- Deprecate
snowflake_notebookandsnowflake_notebooks. Snowflake is disabling new Legacy Notebooks; use the preview code bundle resource and data source. (2d5de5c) - Reject empty identifiers on
snowflake_alert.warehouse, warehouseresource_monitor,snowflake_compute_pool.for_application, and replication grouperror_integrationandprimarybefore the request is sent. (5a547a2) - Promote Openflow resources and data sources to stable:
snowflake_openflow_connector,snowflake_openflow_deployment_byoc,snowflake_openflow_deployment_snowflake_managed,snowflake_openflow_runtime, and the matching data sources. Remove them frompreview_features_enabled. (cca1a89) - Include the resource name and id in import errors. (0312883)
🐛 Bug fixes:
- Quote Openflow deployment
event_tablewith Snowflake identifier rules, so a lowercaseSHOW PARAMETERSvalue matches a quoted configuration. (a065bff) - Destroying
snowflake_object_parameterrunsUNSETwhen the Snowflake default is an empty string. (4836d90) - Read hybrid and iceberg table parameters with
SHOW PARAMETERS IN TABLE. (4836d90) - Detect external changes to
client_policy,mfa_policy,pat_policy, andworkload_identity_policyonsnowflake_authentication_policy. (74cb1dd) - After
snowflake_grant_ownershipresumes a pipe, unsetPIPE_EXECUTION_PAUSEDwhen the pipe inherited that parameter before the transfer. (d388019) - Removing
allow_writesfromsnowflake_external_volumesetsALLOW_WRITES = TRUE, the Snowflake default. (866396c) - Setting a Snowflake default explicitly plans no update for adaptive warehouse query settings,
snowflake_external_volume.allow_writes, andcatalog_namespaceon REST and AWS Glue Iceberg tables. (79c8eae) - Save configured
snowflake_resource_monitorvalues in state when they already match Snowflake. (512906c) - Save configured catalog integration and adaptive and interactive warehouse values in state when they already match Snowflake. (01305b4)
- Convert a warehouse to
ADAPTIVEwithALTER WAREHOUSEdirectly, without suspending it. (bcee107), references #5342 - Resolve task graph roots from task-relations metadata so quoted predecessor names stay intact. (c5b3382)
- Cap
expire_rotated_token_after_hoursat the remaining lifetime when rotating a programmatic access token. (397e591) - Read SNS topic ARNs in every AWS partition into
snowflake_pipe.aws_sns_topic_arn. (2a1401f) - Manage
external_oauth_scope_delimiteronly forCUSTOMexternal OAuth integrations. Other types leave it unset and omit it from SQL. (4a32747), references #5322
📦 Library updates:
Direct dependency changes (root go.mod)
| Package | Old | New | Notes |
|---|---|---|---|
hashicorp/terraform-json
| v0.28.0 | v0.29.0 | |
hashicorp/go-uuid
| v1.0.4 | — | |
golang.org/x/crypto
| v0.57.0 | v0.58.0 | |
golang.org/x/sync
| v0.23.0 | v0.24.0 | |
golang.org/x/sys
| v0.48.0 | v0.49.0 | |
golang.org/x/text
| v0.42.0 | v0.43.0 | |
golang.org/x/tools
| v0.51.0 | v0.52.0 |