about summary refs log tree commit diff
path: root/lib
diff options
context:
space:
mode:
authorClaire <claire.github-309c@sitedethib.com>2022-04-08 19:53:32 +0200
committerClaire <claire.github-309c@sitedethib.com>2022-04-08 19:53:32 +0200
commitff73d43b3596d50d071fd3e6ab6f49608b62c9d1 (patch)
treebf8dca3a3864b013b0e55476a21fb1ad0d97c41f /lib
parente0c39f9fad837b77373220515f078f2443ddf553 (diff)
parent68273a7c6d6c630b6c88764579580682e12eebce (diff)
Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `Gemfile.lock`:
  Not a real conflict, just an upstream dependency udpated
  textually too close to a glitch-soc-only dependency.
  Updated dependencies like upstream.
- `app/controllers/settings/preferences_controller.rb`:
  Upstream added settings where we had extra glitch-soc-specific settings.
  Added upstream's new settings.
- `app/models/user.rb`:
  Upstream added settings where we had extra glitch-soc-specific settings.
  Added upstream's new settings.
- `config/i18n-tasks.yml`:
  Not a real conflict, just a new upstream line too textually close to
  a glitch-soc-only line.
  Ported upstream's change.
Diffstat (limited to 'lib')
-rw-r--r--lib/action_dispatch/cookie_jar_extensions.rb25
-rw-r--r--lib/mastodon/migration_helpers.rb5
2 files changed, 4 insertions, 26 deletions
diff --git a/lib/action_dispatch/cookie_jar_extensions.rb b/lib/action_dispatch/cookie_jar_extensions.rb
deleted file mode 100644
index 1be9053ba..000000000
--- a/lib/action_dispatch/cookie_jar_extensions.rb
+++ /dev/null
@@ -1,25 +0,0 @@
-# frozen_string_literal: true
-
-module ActionDispatch
-  module CookieJarExtensions
-    private
-
-    # Monkey-patch ActionDispatch to serve secure cookies to Tor Hidden Service
-    # users. Otherwise, ActionDispatch would drop the cookie over HTTP.
-    def write_cookie?(*)
-      request.host.end_with?('.onion') || super
-    end
-  end
-end
-
-ActionDispatch::Cookies::CookieJar.prepend(ActionDispatch::CookieJarExtensions)
-
-module Rack
-  module SessionPersistedExtensions
-    def security_matches?(request, options)
-      request.host.end_with?('.onion') || super
-    end
-  end
-end
-
-Rack::Session::Abstract::Persisted.prepend(Rack::SessionPersistedExtensions)
diff --git a/lib/mastodon/migration_helpers.rb b/lib/mastodon/migration_helpers.rb
index e920ff88f..2ab8150ec 100644
--- a/lib/mastodon/migration_helpers.rb
+++ b/lib/mastodon/migration_helpers.rb
@@ -812,7 +812,10 @@ module Mastodon
     # removing the old one
     def update_index(table_name, index_name, columns, **index_options)
       if index_name_exists?(table_name, "#{index_name}_new") && index_name_exists?(table_name, index_name)
-        remove_index table_name, "#{index_name}_new"
+        remove_index table_name, name: "#{index_name}_new"
+      elsif index_name_exists?(table_name, "#{index_name}_new")
+        # Very unlikely case where the script has been interrupted during/after removal but before renaming
+        rename_index table_name, "#{index_name}_new", index_name
       end
 
       begin