This PR modifies the bindData function to preserve the pre v4.12.0 behavior for map[string]interface{} while supporting the new functionality:
Single values are stored as strings
Multiple values are stored as []string
This approach maintains compatibility with existing code that expects single string values, while allowing new code to take advantage of multiple values when present.
The change addresses the issue reported in https://github.com/labstack/echo/issues/2652, where the binding behavior for map[string]interface{} changed in v4.12.0, potentially breaking existing implementations.
Testing:
Updated existing tests to reflect the new behavior
Please review and let me know if any further changes are needed.
This PR modifies the bindData function to preserve the pre v4.12.0 behavior for map[string]interface{} while supporting the new functionality:
This approach maintains compatibility with existing code that expects single string values, while allowing new code to take advantage of multiple values when present.
The change addresses the issue reported in https://github.com/labstack/echo/issues/2652, where the binding behavior for map[string]interface{} changed in v4.12.0, potentially breaking existing implementations.
Testing:
Please review and let me know if any further changes are needed.