hashicorp / terraform-plugin-framework

A next-generation framework for building Terraform providers.

Home Page:https://developer.hashicorp.com/terraform/plugin/framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Consider using fuzzing to evaluate behaviour of equivalency checks in `reflect` package

bendbennett opened this issue · comments

Module version

v1.6.1

Use-cases

A bug relating to the handling of floating point values within the reflect package in terraform-plugin-framework was discovered as described in Convert to number error when storing a value in float64 during execution of provider-defined function. The bug was a consequence of the way in which equivalency of floating point values was being determined, coupled with the fact that the logic containing the bug within the reflect package was evaluated during the execution of provider-defined functions, which are a newly exposed feature.

Attempted Solutions

N/A

Proposal

It might be worth considering the introduction of fuzzing to explore whether execution of logic within the reflect package with a range of different values for varying types exposes any further bugs relating to equivalency checks, or related issues.

References