Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

resource/schema/planmodifier: New type-specific plan modifiers package #557

Merged
merged 3 commits into from Nov 29, 2022

Commits on Nov 29, 2022

  1. resource/schema/planmodifier: New type-specific plan modifiers package

    Reference: #132
    
    As part of upcoming effort to split schema functionality into the `datasource`, `provider`, and `resource` packages, there are some improvements that will land in the new implementations rather than breaking the existing `tfsdk` package schema functionality.
    
    One area which has caused developer burden is that "attribute" plan modifiers, currently implementations of the `tfsdk.AttributePlanModifier` interface,  receive generic `attr.Value` as the configuration, plan, and state values to perform modification logic. This means that implementors must currently handle validating and converting the value into the concrete type they expect.
    
    The upcoming split schemas handling will introduce separate attribute/block types that will enable to framework to strongly type validators and other future schema enhancements. This change prepares the exported interfaces and internal validation logic for those enhancements. Plan modifiers are only available for resources, so this package is explicitly placed under that structure to further reduce usage confusion.
    bflad committed Nov 29, 2022
    Copy the full SHA
    00e2251 View commit details
    Browse the repository at this point in the history
  2. Update CHANGELOG for #557

    bflad committed Nov 29, 2022
    Copy the full SHA
    f5ab529 View commit details
    Browse the repository at this point in the history
  3. Copy the full SHA
    5d6ba34 View commit details
    Browse the repository at this point in the history