I apparently released the Drupal configuration schema cheat sheet 7 years ago (wow!) to help people adopt the then new format to describe configuration structure. I keep getting questions and requests about it, so decided to make a major update to it now and bring it to the present day for Drupal 9.
Updates from 1.5 (April 2015) include:
- Double the pages, more extensive examples and pointers to core definitions
- Includes description of config ordering introduced with Drupal 9.3
- Documents how to pick schema keys for various use cases, such as config entities
- Documents where to put the schema files and when to use multiple
- Explains common string subtypes and recent additions to base scalar types
- Contains a whole section on translatability
- An entire new section to explain basics of mappings and sequences, the most common request
- Explains potential of string keyed sequences 4 or so times, so hope it goes through :)
- Suggests to use common mapping subtypes like mail and text_format
- Covers ignore and undefined
- Adds a whole new intro to dynamic typing to make the examples easier to understand
- Makes all dynamic examples contain all definitions instead of abbreviations for easier understanding
- Uses the same data to explain the [%parent] and [childkey] dynamic typing, to show the differences better
- Cites various common core extension points, such as third party settings on themes and config entities
- Explains advanced properties such as nullable lists
- Updates test base class names for Drupal 9
I regularly receive feedback about people using the cheat sheet, so I hope this will help make config schema somewhat easier to grok. Improvement suggestions still welcome!
Kudos to Rene Bakx for his most recent questions that tipped me over to update the sheet.