Here's a typical update hook where we need to update the default config of a view provided by core:
function somemodule_update_1007() {
$data = array(
... 100s OF LINES OF CODE HERE ...
);
$config = config('some.config.file');
if ($config->isNew()) {
$config->setData($data);
$config->save();
}
}
I have always found this to be very annoying, because a) a dev has to convert the contents of the .json file to an array (to be used as the value of $data), and b) we are adding 100s of lines of code to .install files, which makes them unreadable.
Why are we not doing something like this instead?:
function somemodule_update_1007() {
$new_config_file = backdrop_get_path('module', 'somemodule') . '/config/some.config.file.json';
$data = json_decode(file_get_contents($new_config_file), TRUE);
$config = config('some.config.file');
if ($config->isNew()) {
$config->setData($data);
$config->save();
}
}
Recent comments
Thanks, the /tmp folder was the problem. I moved it elsewhere and then the updated worked. Thanks again!
Update 1.35.1 appears to install but hasn't
Probably not the reason, but worth to do a quick check: Sometimes the update cache interferes, so if something's odd with updates - some module (or core) claims to have updated, but then...
Update 1.35.1 appears to install but hasn't
Nope, not touched any permissions!
Update 1.35.1 appears to install but hasn't