Release Notes > 5.40.5
Webiny 5.40.5 Changelog
See what's new in Webiny version 5.40.5.
Security - Folder Level Permissions
Ensuring Folders Cannot Be Deleted if They Contain Content (Including Inaccessible Content) (#4191)
We’ve done two improvements related to checking if a folder can be deleted.
Most importantly, upon deleting a folder, we now take into consideration the possibility that a folder might contain folders or content (e.g. files or CMS entries) to which the user does not have access. Because this was previously not the case, deletion of a folder would succeed in case it contained folders or content to which the user does not have access.
Also, previously, the deletion of a CMS entries folder would not succeed if a folder had CMS entries (which is the correct behaviour), but, at the same time, it would also incorrectly succeed if a folder had child folders. Deletion of a folder should be prevented in case a folder contains at least one content entry or one folder.
Deployments
Updated Pulumi Package Versions (#4216)
We’ve updated Pulumi packages to the latest available versions.
While the update wasn’t a must-have, we still decided to do it in hope it helps Windows users, who have been experiencing a weird Pulumi issue (like this one) upon deploying their project.
Webiny CLI
"New Extension" Scaffold - Direct Download of Existing Extensions (#4206)
With this release, we’ve done a couple of improvements to the New Extension scaffold, introduced with the 5.40.0 release.
The most important being, the scaffold can now also be used to download existing extensions from the internet.
For now, we’ll be using this feature mainly in our documentation, to provide users with an easy way to quickly download and set up the extension that is covered in an article. For example, as it can be already seen in the Change Logo article, users can now run the following command to download the admin-logo
extension:
Note that we will slowly be updating our documentation to include this feature in all articles that cover extensions.
webiny about
Command Now Showing Correct@pulumi/pulumi
Package Version (#4216)
By updating Pulumi package versions, we’ve also fixed an issue with the webiny about
command, which would incorrectly report the @pulumi/pulumi
package version.
Ported 5.39.9 Changes
With this release, we’ve ported the following changes from the 5.39.9 release. This was done to ensure that all the 5.39.9 improvements are also available to projects that are using the 5.40.x
version of Webiny.
Headless CMS
Added Model ID and Used Index Name When Logging Ignored ES Response Errors (#4186)
This improvement only applies to projects that use Amazon DynamoDB + Amazon OpenSearch database setup.
We’ve improved the logging of ignored ElasticSearch response errors by adding the model ID and the index name to the log message. This will make it easier to identify which model and index the error is related to.
Note that the errors we’re referring to here are errors that are, in most cases, not critical to the operation of the system, which is the reason they are ignored in the first place. These errors are ignored because they are usually related to the fact that a record is not yet indexed, which is expected behavior in some cases.
Data Migrations
Improved Disablement and Restoration of ElasticSearch Indexing Settings (#4187)
These improvements only apply to projects that use Amazon DynamoDB + Amazon OpenSearch database setup.
With this release, we’ve made a couple of improvements to the way ElasticSearch indexing settings are disabled and restored during data migrations. To provide context, when a data migration is run, we disable indexing on the index, perform the migration, and then restore the original settings. This is done to prevent indexing operations from happening during the migration, which speeds up the process and reduces the load on the database.
The changes are as follows.
First of all, when disabling indexing on an index, we no longer set the number_of_replicas
setting to zero. Instead, we now do not touch this setting at all. This is because setting it to zero can cause data loss in case a shard is lost, as explained here, and also here.
Secondly, we’ve addressed an index settings restoration issue, which would happen if a user manually stopped a data migration and then reran it. More specifically, if a migration was stopped manually and then rerun, the restoration step would incorrectly again set the “disable indexing” settings. This is because it would use the index settings that were retrieved at the beginning of the new run, which, because the previous run has been manually stopped, still contain refresh_interval: -1
. Ultimately, this setting would be applied when restoring index settings, effectively leaving the “indexing: disabled” setting still active.
5.39.6-001 Data Migration - Added Support forWEBINY_MIGRATION_FORCE_EXECUTE_5_39_6_001
Environment Variable (#4188)
With this release, we’ve added the ability to force the execution of the improved 5.39.6-001
data migration by setting the WEBINY_MIGRATION_FORCE_EXECUTE_5_39_6_001
environment variable to true
. This can be useful in cases where the migration has already been run, but you want to rerun it.
Note that this was already possible with all of the other data migrations, but the improved 5.39.6-001
data migration, that we released with the 5.39.6 release, did not support this feature. This has been fixed with this release.
For more technical information on the improved 5.39.6-001
data migration, please refer to the original pull request (#4154).