With the entity field API we've got a new underlying API for entity fields, which field API implements as well. In this issue we'll keep track of ongoing re-factorings to make both APIs work well together and removing unnecessary duplications. This is a meta-issue to keep track of step 4 of #1346214: [meta] Unified Entity Field API.
Issues / tasks:
- #1969728: Implement Field API "field types" as TypedData Plugins (and base them on entity field item classes ?)
- #1497374: Switch from Field-based storage to Entity-based storage
- #1950632: Create a FieldDefinitionInterface and use it for formatters and widgets
- #1994140: Unify entity field access and Field API access
- #2050801: Unify handling of default values between base and configurable fields
Terminology:
- Entity field -> everything on an entity (node title, node body, node tags, ..)
- Configurable field -> a field API field (also see #1798140: Agree upon terminology for configurable fields).
Comments
Comment #1
fagoalex, berdir and yched and me had a hang-out discussing this quite a bit. Here's the google doc we used to write down some notes: https://docs.google.com/document/d/1nXwKtFYfKLrCLy4pkxzoxfYteSkIIUF1QI0w...
I try to shortly summarize it here:
Field types as plugins
Improve formatters and widgets to make them usable with all fields
That way, an entity field that wants to make use of a field formatter or widget would just have to make sure it has the necessary settings in place also. Formatters and widgets still explicitly state which field types they support.
Move field storage to entity storage
See #1497374-37: Switch from Field-based storage to Entity-based storage
Comment #2
fagoComment #2.0
fagoUpdated issue summary.
Comment #3
effulgentsia CreditAttribution: effulgentsia commentedThanks. I opened #1950632: Create a FieldDefinitionInterface and use it for formatters and widgets and added it to the summary.
Comment #4
Wim LeersThanks for this issue and #1950632: Create a FieldDefinitionInterface and use it for formatters and widgets. That really helps in getting a clear handle on this :)
Comment #5
yched CreditAttribution: yched commentedOpened #1969728: Implement Field API "field types" as TypedData Plugins, and added it to the issue summary.
Comment #5.0
yched CreditAttribution: yched commentedOpened issue for formatter/widget changes, and added it to summary
Comment #5.1
yched CreditAttribution: yched commentedAdded issue link
Comment #6
effulgentsia CreditAttribution: effulgentsia commentedOpened #1994140: Unify entity field access and Field API access and added it to the issue summary.
Comment #7
yched CreditAttribution: yched commentedAdded #2050801: Unify handling of default values between base and configurable fields (patch, NR) to the summary
Comment #7.0
yched CreditAttribution: yched commentedUpdated issue summary.
Comment #8
yched CreditAttribution: yched commentedClosed #2019601: Rename config Field / FieldInstance structures ?, and opened #2051923: Rename \Drupal\Core\Entity\Field\Field, related subclasses and interfaces to *FieldItemList to try to solve naming issues once and for all...
Comment #9
yched CreditAttribution: yched commentedOpened #2052135: Determine how to deal with field types used in base fields in core entities
Comment #10
BerdirCleanup up the meta issues, will move the two remaining issues to the parent meta issue (which is also a child meta of another meta :))
Comment #11.0
(not verified) CreditAttribution: commentedadded 2050801