opentofu/helper/schema
James Bardin cd3ac50ddb prevent sdk panics in 2 specific cases
Fix 2 specific panics in the sdk when reading nil or computed maps from
various configurations. The legacy sdk code is too dependent on undefined
behavior to attempt to find and fix the root cause at this point.

Since the code is essentially frozen for future development, these
changes are specifically targeted to only prevent panics from within
providers.  Because any code effected by these changes would have
panicked, there cannot be anything depending on the behavior, and these
should be safe to fix.
2019-06-25 14:24:32 -04:00
..
backend_test.go don't panic of the users aborts backend input 2019-03-01 18:45:06 -05:00
backend.go don't panic of the users aborts backend input 2019-03-01 18:45:06 -05:00
core_schema_test.go remove SkipCoreTypeCheck 2019-05-14 18:05:30 -04:00
core_schema.go remove SkipCoreTypeCheck 2019-05-14 18:05:30 -04:00
data_source_resource_shim.go Deprecated -> DeprecationMessage. 2018-06-20 11:21:46 -07:00
equal.go helper/schema: use interface for equality check 2015-01-16 09:32:15 -08:00
field_reader_config_test.go helper/schema: handle TypeMap elem consistently with other collection types 2018-03-14 14:50:41 -07:00
field_reader_config.go prevent sdk panics in 2 specific cases 2019-06-25 14:24:32 -04:00
field_reader_diff_test.go helper/schema: handle TypeMap elem consistently with other collection types 2018-03-14 14:50:41 -07:00
field_reader_diff.go prevent sdk panics in 2 specific cases 2019-06-25 14:24:32 -04:00
field_reader_map_test.go helper/schema: handle TypeMap elem consistently with other collection types 2018-03-14 14:50:41 -07:00
field_reader_map.go don't modify argument slices 2018-12-10 11:59:27 -05:00
field_reader_multi_test.go Revert "helper/schema: Make nested Set(s) in List(s) work" (#7436) 2016-06-30 10:48:52 -05:00
field_reader_multi.go helper/schema: full object test for addrToSchema 2015-01-09 17:43:44 -08:00
field_reader_test.go helper/schema: handle TypeMap elem consistently with other collection types 2018-03-14 14:50:41 -07:00
field_reader.go helper/resource: Ignore Removed attributes for ImportStateVerify 2019-04-16 11:14:49 -07:00
field_writer_map_test.go helper/schema: Prevent setSet() panic with typed nil 2019-04-01 20:10:32 -04:00
field_writer_map.go helper/schema: Prevent setSet() panic with typed nil 2019-04-01 20:10:32 -04:00
field_writer.go helper/schema: FieldWriter, replace Set 2015-01-10 11:44:26 -08:00
getsource_string.go stringer: Regenerate files with latest version 2019-05-13 15:34:27 +01:00
provider_test.go decode legacy timeouts 2019-01-30 16:10:17 -05:00
provider.go Copy TF version to helper/schema provider 2019-01-28 14:38:49 -05:00
provisioner_test.go Refactor the provisioner validation function (#15273) 2017-06-15 19:57:04 +02:00
provisioner.go create a SimpleDiff for the new provider shims 2018-10-16 19:14:11 -07:00
README.md helper/schema: README 2014-08-17 20:51:09 -07:00
resource_data_get_source.go helper/schema: diff with set going to 0 elements removes it from state 2015-02-17 11:38:56 -08:00
resource_data_test.go make sure id really gets set in SetId 2019-01-10 20:28:11 -05:00
resource_data.go helper/schema: Add deprecation to ResourceData.UnsafeSetFieldRaw 2019-02-13 22:12:10 -05:00
resource_diff_test.go helper/schema: Always propagate NewComputed for previously zero value primative type attributes 2018-12-04 22:48:30 -05:00
resource_diff.go grammatical updates to comments and docs (#20195) 2019-03-21 14:05:41 -07:00
resource_importer.go helper/schema: pass through import state func 2016-05-16 10:03:57 -07:00
resource_test.go helper/schema: Fix timeout parsing in ResourceTimeout.ConfigDecode 2018-11-05 12:42:12 +00:00
resource_timeout_test.go decode legacy timeouts 2019-01-30 16:10:17 -05:00
resource_timeout.go decode legacy timeouts 2019-01-30 16:10:17 -05:00
resource.go move timeout handling to grpc_provider 2019-06-19 22:48:15 -04:00
schema_test.go Revert "helper/schema: Schema.AsSingle flag" 2019-04-08 16:45:35 -04:00
schema.go filter unknowns from simple lists and maps in sdk 2019-05-28 09:58:07 -04:00
serialize_test.go Add test for TypeMap in a Schema 2016-06-09 16:00:33 -04:00
serialize.go core: Avoid crash on empty TypeSet blocks (#14305) 2017-05-09 20:45:53 +02:00
set_test.go helper/schema: More tests for Set.HashEqual 2017-08-15 21:56:01 -07:00
set.go don't allow computed set elems to be equal 2019-02-05 12:08:17 -05:00
shims_test.go delete unknown values from apply config altogether 2019-04-22 18:06:26 -04:00
shims.go remove SkipCoreTypeCheck 2019-05-14 18:05:30 -04:00
testing.go create a SimpleDiff for the new provider shims 2018-10-16 19:14:11 -07:00
valuetype_string.go stringer: Regenerate files with latest version 2019-05-13 15:34:27 +01:00
valuetype.go helper/schema: zero value of a set should be empty 2015-02-17 16:58:47 -08:00

Terraform Helper Lib: schema

The schema package provides a high-level interface for writing resource providers for Terraform.

If you're writing a resource provider, we recommend you use this package.

The interface exposed by this package is much friendlier than trying to write to the Terraform API directly. The core Terraform API is low-level and built for maximum flexibility and control, whereas this library is built as a framework around that to more easily write common providers.