Loosen validation to fix error with empty objects
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 42/100
Direzione di ricerca
Inizia riproducendo il caso Drupal sdc_display con uno schema il cui valore di properties è un oggetto YAML vuoto. Ispeziona FormGeneratorDrupal intorno alla riga 52 e JsonFormValidator intorno alla riga 27, quindi verifica che la struttura properties vuota venga accettata senza interrompere il comportamento di validazione esistente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
When using this library with the Drupal sdc_display module, it chokes on YAML structures like:
props:
type: object
properties: {}
where it's not able to recognise the value of properties as valid. This is for two reasons:
- The value gets deserialised as an empty array, which fails strict validation
- Even if validation with type cast is enabled, it still fails because
(bool) $data->propertiesis false (seeJsonFormValidator, line 27)
Steps to reproduce
See issue for Single Directory Components: Display.
Package Versions
- Drupal Core 10.2.6
- Single Directory Components: Display 1.0.0-beta5
- e0ipso/schema-forms 2.5.1
- justinrainbow/json-schema 5.2.13
Proposed resolution
- Use
Constraint::CHECK_MODE_TYPE_CASTinFormGeneratorDrupal, line 52. - Remove
(bool) $data->propertiesfromJsonFormValidator, line 27.
I'm well aware that this might not be the correct solution and might have implications I can't see right now. Please advise.
- Lingua principale
- PHP
- Stelle
- 11
- Fork
- 5
- Merge medio
- 3g 5h
- PR unite (30g)
- 6
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di e0ipso/schema-forms-php
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 55/100
e0ipso/schema-forms-php#37 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 30/100
e0ipso/schema-forms-php#29 ·
Tutte le issue di e0ipso/schema-forms-php
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
verbb/formie#3033 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[Type] Bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Awaiting Triage enhancement / feature request
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
macOS
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
beyondcode/herd-community#1774 ·