summaryrefslogtreecommitdiff
path: root/db/migrate
diff options
context:
space:
mode:
authorerdgeist <erdgeist@erdgeist.org>2026-06-24 16:16:57 +0200
committererdgeist <erdgeist@erdgeist.org>2026-06-24 16:16:57 +0200
commit61dc69cc5d8089ed9f96bc65dc64de6e075f70cf (patch)
tree2a25126657acc65a010d1f11a2a2208f38bf41a1 /db/migrate
parente0a7e0fec760ba12c8067a37e10c96f1f05876e2 (diff)
Upgrade acts-as-taggable-on to 3.5, add Rails 3.2 config fixes
- Bump acts-as-taggable-on from 2.4.1 to 3.5.0 - Fake engine migrations for pre-existing schema - Set serve_static_assets in development - Fix request.fullpath in authenticated_system (request_uri removed in Rails 3.x) - Fix Paperclip path format to match existing file layout
Diffstat (limited to 'db/migrate')
-rw-r--r--db/migrate/20260624035149_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb31
-rw-r--r--db/migrate/20260624035150_add_missing_unique_indices.acts_as_taggable_on_engine.rb20
-rw-r--r--db/migrate/20260624035151_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb15
-rw-r--r--db/migrate/20260624035152_add_missing_taggable_index.acts_as_taggable_on_engine.rb10
-rw-r--r--db/migrate/20260624035153_change_collation_for_tag_names.acts_as_taggable_on_engine.rb10
5 files changed, 86 insertions, 0 deletions
diff --git a/db/migrate/20260624035149_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb b/db/migrate/20260624035149_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb
new file mode 100644
index 0000000..6bbd559
--- /dev/null
+++ b/db/migrate/20260624035149_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb
@@ -0,0 +1,31 @@
1# This migration comes from acts_as_taggable_on_engine (originally 1)
2class ActsAsTaggableOnMigration < ActiveRecord::Migration
3 def self.up
4 create_table :tags do |t|
5 t.string :name
6 end
7
8 create_table :taggings do |t|
9 t.references :tag
10
11 # You should make sure that the column created is
12 # long enough to store the required class names.
13 t.references :taggable, polymorphic: true
14 t.references :tagger, polymorphic: true
15
16 # Limit is created to prevent MySQL error on index
17 # length for MyISAM table type: http://bit.ly/vgW2Ql
18 t.string :context, limit: 128
19
20 t.datetime :created_at
21 end
22
23 add_index :taggings, :tag_id
24 add_index :taggings, [:taggable_id, :taggable_type, :context]
25 end
26
27 def self.down
28 drop_table :taggings
29 drop_table :tags
30 end
31end
diff --git a/db/migrate/20260624035150_add_missing_unique_indices.acts_as_taggable_on_engine.rb b/db/migrate/20260624035150_add_missing_unique_indices.acts_as_taggable_on_engine.rb
new file mode 100644
index 0000000..4ca676f
--- /dev/null
+++ b/db/migrate/20260624035150_add_missing_unique_indices.acts_as_taggable_on_engine.rb
@@ -0,0 +1,20 @@
1# This migration comes from acts_as_taggable_on_engine (originally 2)
2class AddMissingUniqueIndices < ActiveRecord::Migration
3 def self.up
4 add_index :tags, :name, unique: true
5
6 remove_index :taggings, :tag_id
7 remove_index :taggings, [:taggable_id, :taggable_type, :context]
8 add_index :taggings,
9 [:tag_id, :taggable_id, :taggable_type, :context, :tagger_id, :tagger_type],
10 unique: true, name: 'taggings_idx'
11 end
12
13 def self.down
14 remove_index :tags, :name
15
16 remove_index :taggings, name: 'taggings_idx'
17 add_index :taggings, :tag_id
18 add_index :taggings, [:taggable_id, :taggable_type, :context]
19 end
20end
diff --git a/db/migrate/20260624035151_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb b/db/migrate/20260624035151_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb
new file mode 100644
index 0000000..8edb508
--- /dev/null
+++ b/db/migrate/20260624035151_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb
@@ -0,0 +1,15 @@
1# This migration comes from acts_as_taggable_on_engine (originally 3)
2class AddTaggingsCounterCacheToTags < ActiveRecord::Migration
3 def self.up
4 add_column :tags, :taggings_count, :integer, default: 0
5
6 ActsAsTaggableOn::Tag.reset_column_information
7 ActsAsTaggableOn::Tag.find_each do |tag|
8 ActsAsTaggableOn::Tag.reset_counters(tag.id, :taggings)
9 end
10 end
11
12 def self.down
13 remove_column :tags, :taggings_count
14 end
15end
diff --git a/db/migrate/20260624035152_add_missing_taggable_index.acts_as_taggable_on_engine.rb b/db/migrate/20260624035152_add_missing_taggable_index.acts_as_taggable_on_engine.rb
new file mode 100644
index 0000000..71f2d7f
--- /dev/null
+++ b/db/migrate/20260624035152_add_missing_taggable_index.acts_as_taggable_on_engine.rb
@@ -0,0 +1,10 @@
1# This migration comes from acts_as_taggable_on_engine (originally 4)
2class AddMissingTaggableIndex < ActiveRecord::Migration
3 def self.up
4 add_index :taggings, [:taggable_id, :taggable_type, :context]
5 end
6
7 def self.down
8 remove_index :taggings, [:taggable_id, :taggable_type, :context]
9 end
10end
diff --git a/db/migrate/20260624035153_change_collation_for_tag_names.acts_as_taggable_on_engine.rb b/db/migrate/20260624035153_change_collation_for_tag_names.acts_as_taggable_on_engine.rb
new file mode 100644
index 0000000..bfb06bc
--- /dev/null
+++ b/db/migrate/20260624035153_change_collation_for_tag_names.acts_as_taggable_on_engine.rb
@@ -0,0 +1,10 @@
1# This migration comes from acts_as_taggable_on_engine (originally 5)
2# This migration is added to circumvent issue #623 and have special characters
3# work properly
4class ChangeCollationForTagNames < ActiveRecord::Migration
5 def up
6 if ActsAsTaggableOn::Utils.using_mysql?
7 execute("ALTER TABLE tags MODIFY name varchar(255) CHARACTER SET utf8 COLLATE utf8_bin;")
8 end
9 end
10end