From 1114679c2019f1d2908ab0b20b2fee8999b986ff Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Fri, 18 Apr 2025 17:05:17 +0200 Subject: [PATCH] Remove activity score columns --- ...250418150259_remove_activity_from_cards.rb | 8 ++ db/schema.rb | 6 +- db/schema_cache.yml | 120 +++++------------- test/fixtures/cards.yml | 2 - 4 files changed, 42 insertions(+), 94 deletions(-) create mode 100644 db/migrate/20250418150259_remove_activity_from_cards.rb diff --git a/db/migrate/20250418150259_remove_activity_from_cards.rb b/db/migrate/20250418150259_remove_activity_from_cards.rb new file mode 100644 index 000000000..f8910ea9b --- /dev/null +++ b/db/migrate/20250418150259_remove_activity_from_cards.rb @@ -0,0 +1,8 @@ +class RemoveActivityFromCards < ActiveRecord::Migration[8.1] + def change + remove_index :cards, :activity_score_order + remove_column :cards, :activity_score_order + remove_column :cards, :activity_score_at + remove_column :cards, :activity_score + end +end diff --git a/db/schema.rb b/db/schema.rb index 06a8eb245..3a56a34ae 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[8.1].define(version: 2025_04_15_131804) do +ActiveRecord::Schema[8.1].define(version: 2025_04_18_150259) do create_table "accesses", force: :cascade do |t| t.integer "collection_id", null: false t.datetime "created_at", null: false @@ -108,9 +108,6 @@ ActiveRecord::Schema[8.1].define(version: 2025_04_15_131804) do end create_table "cards", force: :cascade do |t| - t.float "activity_score", default: 0.0, null: false - t.datetime "activity_score_at" - t.float "activity_score_order", default: 0.0, null: false t.integer "collection_id", null: false t.datetime "created_at", null: false t.integer "creator_id", null: false @@ -120,7 +117,6 @@ ActiveRecord::Schema[8.1].define(version: 2025_04_15_131804) do t.text "status", default: "creating", null: false t.string "title" t.datetime "updated_at", null: false - t.index ["activity_score_order"], name: "index_cards_on_activity_score_order" t.index ["collection_id"], name: "index_cards_on_collection_id" t.index ["last_active_at", "status"], name: "index_cards_on_last_active_at_and_status" t.index ["stage_id"], name: "index_cards_on_stage_id" diff --git a/db/schema_cache.yml b/db/schema_cache.yml index f662880fe..8152c393d 100644 --- a/db/schema_cache.yml +++ b/db/schema_cache.yml @@ -21,7 +21,7 @@ columns: default_function: collation: comment: - - &24 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column + - &22 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: collection_id cast_type: *1 @@ -80,7 +80,7 @@ columns: default_function: collation: comment: - - &30 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column + - &28 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: user_id cast_type: *1 @@ -374,47 +374,9 @@ columns: - *9 cards: - *5 - - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column - auto_increment: - name: activity_score - cast_type: &22 !ruby/object:ActiveModel::Type::Float - precision: - scale: - limit: - sql_type_metadata: &23 !ruby/object:ActiveRecord::ConnectionAdapters::SqlTypeMetadata - sql_type: float - type: :float - limit: - precision: - scale: - 'null': false - default: 0.0 - default_function: - collation: - comment: - - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column - auto_increment: - name: activity_score_at - cast_type: *3 - sql_type_metadata: *4 - 'null': true - default: - default_function: - collation: - comment: - - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column - auto_increment: - name: activity_score_order - cast_type: *22 - sql_type_metadata: *23 - 'null': false - default: 0.0 - default_function: - collation: - comment: - - *24 + - *22 - *6 - - &25 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column + - &23 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: creator_id cast_type: *1 @@ -427,12 +389,12 @@ columns: - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: due_on - cast_type: &26 !ruby/object:ActiveRecord::Type::Date + cast_type: &24 !ruby/object:ActiveRecord::Type::Date precision: scale: limit: timezone: - sql_type_metadata: &27 !ruby/object:ActiveRecord::ConnectionAdapters::SqlTypeMetadata + sql_type_metadata: &25 !ruby/object:ActiveRecord::ConnectionAdapters::SqlTypeMetadata sql_type: date type: :date limit: @@ -473,7 +435,7 @@ columns: default_function: collation: comment: - - &32 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column + - &30 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: title cast_type: *7 @@ -528,11 +490,11 @@ columns: - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: all_access - cast_type: &33 !ruby/object:ActiveModel::Type::Boolean + cast_type: &31 !ruby/object:ActiveModel::Type::Boolean precision: scale: limit: - sql_type_metadata: &34 !ruby/object:ActiveRecord::ConnectionAdapters::SqlTypeMetadata + sql_type_metadata: &32 !ruby/object:ActiveRecord::ConnectionAdapters::SqlTypeMetadata sql_type: boolean type: :boolean limit: @@ -544,7 +506,7 @@ columns: collation: comment: - *6 - - *25 + - *23 - *10 - *9 - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column @@ -558,15 +520,15 @@ columns: collation: comment: collections_filters: - - *24 + - *22 - *18 comments: - *5 - *6 - - *25 + - *23 - *9 creators_filters: - - *25 + - *23 - *18 event_summaries: - *5 @@ -586,12 +548,12 @@ columns: comment: - *21 - *6 - - *25 + - *23 - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: due_date - cast_type: *26 - sql_type_metadata: *27 + cast_type: *24 + sql_type_metadata: *25 'null': true default: default_function: @@ -600,11 +562,11 @@ columns: - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: particulars - cast_type: &28 !ruby/object:ActiveRecord::Type::Json + cast_type: &26 !ruby/object:ActiveRecord::Type::Json precision: scale: limit: - sql_type_metadata: &29 !ruby/object:ActiveRecord::ConnectionAdapters::SqlTypeMetadata + sql_type_metadata: &27 !ruby/object:ActiveRecord::ConnectionAdapters::SqlTypeMetadata sql_type: json type: :json limit: @@ -629,12 +591,12 @@ columns: filters: - *5 - *6 - - *25 + - *23 - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: fields - cast_type: *28 - sql_type_metadata: *29 + cast_type: *26 + sql_type_metadata: *27 'null': false default: "{}" default_function: @@ -665,7 +627,7 @@ columns: comment: filters_tags: - *18 - - &31 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column + - &29 !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: tag_id cast_type: *1 @@ -745,13 +707,13 @@ columns: collation: comment: - *9 - - *30 + - *28 pins: - *5 - *21 - *6 - *9 - - *30 + - *28 reactions: - *5 - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column @@ -831,25 +793,25 @@ columns: default_function: collation: comment: - - *30 + - *28 taggings: - *5 - *21 - *6 - - *31 + - *29 - *9 tags: - *5 - *6 - - *32 + - *30 - *9 users: - *5 - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: active - cast_type: *33 - sql_type_metadata: *34 + cast_type: *31 + sql_type_metadata: *32 'null': false default: true default_function: @@ -893,12 +855,12 @@ columns: - *21 - *6 - *9 - - *30 + - *28 - !ruby/object:ActiveRecord::ConnectionAdapters::SQLite3::Column auto_increment: name: watching - cast_type: *33 - sql_type_metadata: *34 + cast_type: *31 + sql_type_metadata: *32 'null': false default: true default_function: @@ -1350,22 +1312,6 @@ indexes: nulls_not_distinct: comment: valid: true - - !ruby/object:ActiveRecord::ConnectionAdapters::IndexDefinition - table: cards - name: index_cards_on_activity_score_order - unique: false - columns: - - activity_score_order - lengths: {} - orders: {} - opclasses: {} - where: - type: - using: - include: - nulls_not_distinct: - comment: - valid: true closure_reasons: [] closures: - !ruby/object:ActiveRecord::ConnectionAdapters::IndexDefinition @@ -1992,4 +1938,4 @@ indexes: comment: valid: true workflows: [] -version: 20250415131804 +version: 20250418150259 diff --git a/test/fixtures/cards.yml b/test/fixtures/cards.yml index f49179eb3..c8dc163a3 100644 --- a/test/fixtures/cards.yml +++ b/test/fixtures/cards.yml @@ -4,7 +4,6 @@ logo: title: The logo isn't big enough due_on: <%= 3.days.from_now %> created_at: <%= 1.week.ago %> - activity_score: 7 status: published last_active_at: <%= Time.current %> @@ -13,7 +12,6 @@ layout: creator: david title: Layout is broken created_at: <%= 1.week.ago %> - activity_score: 1 status: published last_active_at: <%= Time.current %>