You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Empty and missing value handling is not consistent. The inconsistency is characterized by special treatment of certain configuration types, particularly array and String, which produce somewhat bizarre effects when retrieving empty values compared to missing values. Special cases in general APIs lead to confusion and frustrating limitations.
Some value types, such as collections, arrays, and strings, have a "natural" empty representation. However some value types do not. In some cases (like primitive values), no such representation is possible, where in other cases, null is the only possible representation. There should be one value that can represent empty for any value type, whether it is a collection, simple object, or primitive type.
As a:
Application user/user of the configuration itself
API user (application developer)
SPI user (container or runtime developer)
Specification implementer
...I need to be able to:
Have a consistent experience handling values that are empty or missing that does not need to vary depending on the conversion type
Detect that a property is empty regardless of its type
Decode an empty value into the target type in a way that is appropriate for the use site
Not be concerned with whether a collection with a given element type can or cannot contain an empty value
...which enables me to:
Simplify my experience and apply patterns for empty values to any value type, and enable property clearing (#531).
The text was updated successfully, but these errors were encountered:
Description
Empty and missing value handling is not consistent. The inconsistency is characterized by special treatment of certain configuration types, particularly array and
String
, which produce somewhat bizarre effects when retrieving empty values compared to missing values. Special cases in general APIs lead to confusion and frustrating limitations.Some value types, such as collections, arrays, and strings, have a "natural" empty representation. However some value types do not. In some cases (like primitive values), no such representation is possible, where in other cases,
null
is the only possible representation. There should be one value that can representempty
for any value type, whether it is a collection, simple object, or primitive type.As a:
...I need to be able to:
...which enables me to:
Simplify my experience and apply patterns for empty values to any value type, and enable property clearing (#531).
The text was updated successfully, but these errors were encountered: