Details
Description
It's currently not possible to specify a 'repeated_param' that is required in the 4.x. function API. An example of when this is needed is the defined() function. It requires at least one argument but may take several. Without the possibility to specify that at least one parameter must be present, this must be encoded as a required parameter followed by a 0:M related parameter. This does not really matter from an implementation standpoint (you have to write two parameters instead of one), but it matters from a UX perspective if there is an error; a user should perceive this as "one or more" rather than "one parameter, then zero or more additional parameters".
The function API should add two new parameter declarations:
optional_repeated_param # alias for the current repeated_param
|
required_repeated_param # will set the minimum argument count to 1
|
risk: medium
probability: low (custom functions with optional repeated params)
severity: medium (work arounds exist, UX issue)
test layer: unit