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
There are currently a lot of connector specifications that hard-code things like (Optional) or * on the end of field names. Here are some (non-exhaustive) examples:
This example is especially confusing, as the hard-coded * doesn't even align with which fields are marked as required for this connector -- so is this field actually optional or required?
title: "Service Account Key JSON (Required for cloud, optional for open-source)"
It is less clear how this one should be handled. Ideally we would have separate connectors/specs for cloud and for OSS, with this marked properly as optional/required in both
Why is this bad
This is bad because it is an inconsistent and unreliable way to communicate to users which fields are optional and which are required. We already have a mechanism for doing this, which is to add a field to the required section of the spec schema, e.g. here:
This method of marking fields as required is what the UI uses to decide to add an Optional tag to the end of a field. So, when a field is not included in the required section, and it also has a string in the field name like (Optional), it leads to redundancy in the UI like this:
How
All source and destination connector specs should be audited for this issue, any such (Optional) or * text should be removed from field titles across all connector specs, and these connectors should be re-published so that they are updated in cloud.
The text was updated successfully, but these errors were encountered:
Sorry, I missed this earlier. Will your team be handling this for beta/GA connectors?
Adding @lazebnyi and @YuliiaNahoha as FYI -- this is something we need to take care of going forward.
What
There are currently a lot of connector specifications that hard-code things like
(Optional)
or*
on the end of field names. Here are some (non-exhaustive) examples:airbyte/airbyte-config/init/src/main/resources/seed/source_specs.yaml
Line 716 in bbb59d8
airbyte/airbyte-config/init/src/main/resources/seed/source_specs.yaml
Line 3400 in bbb59d8
airbyte/airbyte-config/init/src/main/resources/seed/source_specs.yaml
Line 783 in bbb59d8
airbyte/airbyte-config/init/src/main/resources/seed/source_specs.yaml
Line 685 in bbb59d8
*
doesn't even align with which fields are marked asrequired
for this connector -- so is this field actually optional or required?airbyte/airbyte-config/init/src/main/resources/seed/destination_specs.yaml
Line 457 in e30476e
Why is this bad
This is bad because it is an inconsistent and unreliable way to communicate to users which fields are optional and which are required. We already have a mechanism for doing this, which is to add a field to the
required
section of the spec schema, e.g. here:airbyte/airbyte-config/init/src/main/resources/seed/source_specs.yaml
Lines 3153 to 3156 in bbb59d8
This method of marking fields as required is what the UI uses to decide to add an
Optional
tag to the end of a field. So, when a field is not included in therequired
section, and it also has a string in the field name like(Optional)
, it leads to redundancy in the UI like this:How
All source and destination connector specs should be audited for this issue, any such
(Optional)
or*
text should be removed from field titles across all connector specs, and these connectors should be re-published so that they are updated in cloud.The text was updated successfully, but these errors were encountered: