From 31aebefadf7853a4e7767ea1552720f52e06bb7a Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Mon, 22 Sep 2014 19:32:58 -0400 Subject: Migrations will be replaced with Alchemy. We don't need the raw SQL schema stuff any more. We don't need the Version table any more. --- src/mailman/database/schema/mm_20121015000000.py | 95 ------------------------ 1 file changed, 95 deletions(-) delete mode 100644 src/mailman/database/schema/mm_20121015000000.py (limited to 'src/mailman/database/schema/mm_20121015000000.py') diff --git a/src/mailman/database/schema/mm_20121015000000.py b/src/mailman/database/schema/mm_20121015000000.py deleted file mode 100644 index 84510ff57..000000000 --- a/src/mailman/database/schema/mm_20121015000000.py +++ /dev/null @@ -1,95 +0,0 @@ -# Copyright (C) 2012-2014 by the Free Software Foundation, Inc. -# -# This file is part of GNU Mailman. -# -# GNU Mailman is free software: you can redistribute it and/or modify it under -# the terms of the GNU General Public License as published by the Free -# Software Foundation, either version 3 of the License, or (at your option) -# any later version. -# -# GNU Mailman is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. -# -# You should have received a copy of the GNU General Public License along with -# GNU Mailman. If not, see . - -"""3.0b2 -> 3.0b3 schema migrations. - -Renamed: - * bans.mailing_list -> bans.list_id - -Removed: - * mailinglist.new_member_options - * mailinglist.send_remindersn -""" - -from __future__ import absolute_import, print_function, unicode_literals - -__metaclass__ = type -__all__ = [ - 'upgrade', - ] - - -from mailman.database.schema.helpers import make_listid, pivot - - -VERSION = '20121015000000' - - - -def upgrade(database, store, version, module_path): - if database.TAG == 'sqlite': - upgrade_sqlite(database, store, version, module_path) - else: - upgrade_postgres(database, store, version, module_path) - - - -def upgrade_sqlite(database, store, version, module_path): - database.load_schema( - store, version, 'sqlite_{}_01.sql'.format(version), module_path) - results = store.execute(""" - SELECT id, mailing_list - FROM ban; - """) - for id, mailing_list in results: - # Skip global bans since there's nothing to update. - if mailing_list is None: - continue - store.execute(""" - UPDATE ban_backup SET list_id = '{}' - WHERE id = {}; - """.format(make_listid(mailing_list), id)) - # Pivot the bans backup table to the real thing. - pivot(store, 'ban') - pivot(store, 'mailinglist') - - - -def upgrade_postgres(database, store, version, module_path): - # Get the old values from the ban table. - results = store.execute('SELECT id, mailing_list FROM ban;') - store.execute('ALTER TABLE ban ADD COLUMN list_id TEXT;') - for id, mailing_list in results: - # Skip global bans since there's nothing to update. - if mailing_list is None: - continue - store.execute(""" - UPDATE ban SET list_id = '{0}' - WHERE id = {1}; - """.format(make_listid(mailing_list), id)) - store.execute('ALTER TABLE ban DROP COLUMN mailing_list;') - store.execute('ALTER TABLE mailinglist DROP COLUMN new_member_options;') - store.execute('ALTER TABLE mailinglist DROP COLUMN send_reminders;') - store.execute('ALTER TABLE mailinglist DROP COLUMN subscribe_policy;') - store.execute('ALTER TABLE mailinglist DROP COLUMN unsubscribe_policy;') - store.execute( - 'ALTER TABLE mailinglist DROP COLUMN subscribe_auto_approval;') - store.execute('ALTER TABLE mailinglist DROP COLUMN private_roster;') - store.execute( - 'ALTER TABLE mailinglist DROP COLUMN admin_member_chunksize;') - # Record the migration in the version table. - database.load_schema(store, version, None, module_path) -- cgit v1.2.3-70-g09d2