Description of the need
When .htaccess, robots.txt, or settings.php have been updated in a release, we should update them when safe/possible
Proposed solution
We could store a hash of the previous version of the file in state. When doing an update, check the hash in state to see if the contents of the file has been changed. If not, we can overwrite it (assuming Backdrop has permissions to write to files outside of core) and update the hash with the hash of the new file.
Alternatives that have been considered
- https://github.com/backdrop/backdrop-issues/issues/5911 (but I think we should do both)
Draft of feature description for Press Release (1 paragraph at most)
Backdrop core can now automatically update files outside the core directory -- assuming they have not been previously modified and that Backdrop has permission to write to those files.
Recent comments
@yorkshirepudding, In the end I fixed it by deleting the config/active folder contents, copying the config/staging/ files into config/active, importing the database again and clearing the caches...
Importing the staged config throws an error: another field with the same name already exists
Thanks, I have to go out now, I will try later on and report back
Importing the staged config throws an error: another field with the same name already exists
Hi Francis. Yes, what config do you have in staging for it? You might have configs like: field.field.field_video_embed field.instance.node.page....
Importing the staged config throws an error: another field with the same name already exists