Around the 31st of October 2024, I noticed on a customer’s instance that the character set allowed in connector functions’ input / output names had suddenly been severely restricted and limited to alphanumeric, spaces, underscores and dashes. Later, more characters were allowed again, notably letter characters of any language (with accents etc.).
That’s a progress to me, but I often find myself limited by not having access at all to characters as simple as (
, )
, [
, ]
, <
, >
, '
, "
or :
. It seems all punctuation characters (no matter the language / writing system) are now forbidden.
I’m aware that this is sometimes a matter of personal preference. But I find the ASCII ones useful to:
- specify units:
Weight (kg)
,Speed [m/s]
… - specify datetime formatting required by third party systems:
Production (YYYY-MM-dd HH:mm:ss)
- specify general syntax required by third party systems:
Serial (<batch>.<year>.<month>)
- give some information about the value:
Location ('FR', 'DE' or 'IT')
,URL (prefixed with "https://")
I find the decision Tulip took surprising since this removes some freedom from users and enforcing this will not spare Tulip from having to deal with names already containing invalid characters in existing data (unless some escaping transparent to the final user occurred behind the scenes). What is the rationale behind this decision?
I think it would be nice to have some of these characters back. If not possible, having the ability to define and display a description for an input/output (especially when using the Run Connector Function
action) might do the trick.
The root of the problem being that as an app editor, some users with no/little technical background or with a lack of understanding of systems interacting with Tulip might not know that some bugs can sometimes be caused by not adhering to a specific convention, e.g. on legacy systems. Putting some information in the name of the inputs/outputs is a simple way to remind the person of this if needed.