The CSV import process for farmOS has been greatly improved over the last year. Thank you so much for building this!
One of the remaining missing pieces is expanding CSV import for taxonomy terms. Currently three base fields [name, description, parent] can be imported for any taxonomy term. The only taxonomy term that has bundle fields is Plant type [crop_family, maturity_days, harvest_days, companions, and transplant_days (via transplanting module)].
I am wondering what customizations would be needed to make these additional fields available for CSV import as well?
I agree we should add support for this. The main reason we didn’t add support in the first pass is because taxonomy terms don’t use a “bundle plugin manager” like assets and logs do. With assets and logs, bundle fields can be added by implementing hook_farm_entity_bundle_field_info() (as described here: Fields | farmOS). That is not possible with taxonomy terms. We considered enabling a bundle plugin manager on taxonomy terms, but ultimately decided against it (see Enable bundle plugins for taxonomy terms [#3190851] | Drupal.org). Therefore the only way to add fields to taxonomy terms currently is by declaring field instances as configuration entities (YML files in the module’s config/install directory, for example the plant_type fields: farmOS/modules/taxonomy/plant_type/config/install at add44e3c05cd7dd838431335f7c2cd9a9c889998 · farmOS/farmOS · GitHub).
So, perhaps we should consider adding some additional logic there that handles fields defined via configuration. This would add the existing plant_type term fields to the CSV importer, and it would also mean that any configuration fields added to asset/logs would also start working in the CSV importers too.