Changeset

12775:1dd468c63a3d

mod_blocklist: Add option 'migrate_legacy_blocking' to disable migration from mod_privacy Tiny performance improvement for new users by skipping this check. Most servers should have gone trough the migration for all active users long ago. As a suitable first step of phasing out this code, we make it possible to disable it first. Later it can be disabled by default, before finally the code is deleted.
author Kim Alvefur <zash@zash.se>
date Mon, 17 Oct 2022 15:20:06 +0200
parents 12774:fc4adc32a537
children 12776:4715301a3504
files CHANGES plugins/mod_blocklist.lua
diffstat 2 files changed, 9 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/CHANGES	Mon Oct 17 15:13:04 2022 +0200
+++ b/CHANGES	Mon Oct 17 15:20:06 2022 +0200
@@ -33,6 +33,7 @@
 ## Changes
 
 - Support sub-second precision timestamps
+- mod_blocklist: New option 'migrate_legacy_blocking' to disable migration from mod_privacy
 
 ## Removed
 
--- a/plugins/mod_blocklist.lua	Mon Oct 17 15:13:04 2022 +0200
+++ b/plugins/mod_blocklist.lua	Mon Oct 17 15:20:06 2022 +0200
@@ -54,6 +54,7 @@
 end
 
 -- Migrates from the old mod_privacy storage
+-- TODO mod_privacy was removed in 0.10.0, this should be phased out
 local function migrate_privacy_list(username)
 	local legacy_data = module:open_store("privacy"):get(username);
 	if not legacy_data or not legacy_data.lists or not legacy_data.default then return; end
@@ -77,6 +78,13 @@
 	return migrated_data;
 end
 
+if not module:get_option_boolean("migrate_legacy_blocking", true) then
+	migrate_privacy_list = function (username)
+		module:log("debug", "Migrating from mod_privacy disabled, user '%s' will start with a fresh blocklist", username);
+		return nil;
+	end
+end
+
 local function get_blocklist(username)
 	local blocklist = cache2:get(username);
 	if not blocklist then