Schema (or/and possibly the defaults in LeafletSettingsElementsTrait)

Created on 25 February 2023, almost 2 years ago
Updated 24 March 2023, almost 2 years ago

Problem/Motivation

Tests fail on schema for form field configuration using leaflet widget.

Steps to reproduce

This is an example of configuration exported
https://git.drupalcode.org/issue/geo_entity-3344453/-/blob/3344453-switc...

Running the test in that geo_entity_address submodule

1) Drupal\Tests\geo_entity_address\Functional\AddressFormsTest::testCrud                                                                                                                                            
Drupal\Core\Config\Schema\SchemaIncompleteException: Schema errors for core.entity_form_display.geo_entity.address.inline with the following errors: core.entity_form_display.geo_entity.address.inline:content.loca
tion.settings.geometry_validation missing schema, core.entity_form_display.geo_entity.address.inline:content.location.settings.multiple_map missing schema, core.entity_form_display.geo_entity.address.inline:conte
nt.location.settings.leaflet_map missing schema, core.entity_form_display.geo_entity.address.inline:content.location.settings.height missing schema, core.entity_form_display.geo_entity.address.inline:content.loca
tion.settings.height_unit missing schema, core.entity_form_display.geo_entity.address.inline:content.location.settings.hide_empty_map missing schema, core.entity_form_display.geo_entity.address.inline:content.loc
ation.settings.disable_wheel missing schema, core.entity_form_display.geo_entity.address.inline:content.location.settings.gesture_handling missing schema, core.entity_form_display.geo_entity.address.inline:conten
t.location.settings.popup missing schema, core.entity_form_display.geo_entity.address.inline:content.location.settings.popup_content missing schema, core.entity_form_display.geo_entity.address.inline:content.loca
tion.settings.leaflet_popup missing schema, core.entity_form_display.geo_entity.address.inline:content.location.settings.leaflet_tooltip missing schema, core.entity_form_display.geo_entity.address.inline:content.
location.settings.map_position missing schema, core.entity_form_display.geo_entity.address.inline:content.location.settings.weight missing schema, core.entity_form_display.geo_entity.address.inline:content.locati
on.settings.icon missing schema, core.entity_form_display.geo_entity.address.inline:content.location.settings.leaflet_markercluster missing schema, core.entity_form_display.geo_entity.address.inline:content.locat
ion.settings.feature_properties missing schema  

I'll post a branch with all the schema items added, it was almost a cut & paste from field.formatter.settings.leaflet_formatter_default into field.widget.settings.leaflet_widget_default.

But while I was cutting and pasting my way through the fields in that entity_form_display configuration I started to questioning why some of the fields were there. Once I got to leaflet_popup I was wondering if I'd actually seen this in anything I could configure for the widget. Then at weight: null I was truly intrigued https://git.drupalcode.org/issue/geo_entity-3344453/-/blob/3344453-switc...

My assumption, without digging further, what is going on here is configuration that is or isn't actually used from LeafletSettingsElementsTrait?

Proposed resolution

Either add all the configuration schema for what is exported by the configuration item; or possibly thin it out a bit for stuff that's not actually used (if that's the case)?

Remaining tasks

Decide which is the best course forwards...

🐛 Bug report
Status

Fixed

Version

10.0

Component

Code

Created by

🇳🇱Netherlands ekes

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Production build 0.71.5 2024