How does a feature figure out, whether it's been updated?
- The "normal" state of the feature is the state of e.g. the fields involved. The relevant resource is asked: What is the state? E.g., for a field you'd look at field_config and field_config_instance and see how the field was configured.
- The "default" state of the feature is stored in the feature itself. There are functions that will return how things should be configured, e.g. a function implementing hook_field_default_fields.
- These 2 requests result in arrays. Bascially the 2 arrays are compared. If they're the same, you know that the feature and the database are in sync.
- If the feature and the database aren't in sync, it is decided where the problem lies. Other configurations are checked and compared in order to make the decision.
Created: 30 November, 2012 - Last changed: 30 November, 2012