Merge commit '82e477b184b5666fff7fb55933dce22ca2925db8' into glitch-soc/merge-upstream
Conflicts: - `db/migrate/20180831171112_create_bookmarks.rb`: Upstream ran a lint fix on this file, but this file is different in glitch-soc because the feature was added much earlier. Ran the lint fix on our own version of the file.main
commit
9ae60f8738
|
@ -1,73 +1,23 @@
|
||||||
# This configuration was generated by
|
# This configuration was generated by
|
||||||
# `haml-lint --auto-gen-config`
|
# `haml-lint --auto-gen-config`
|
||||||
# on 2023-03-15 00:55:01 -0400 using Haml-Lint version 0.45.0.
|
# on 2023-07-11 23:58:05 +0200 using Haml-Lint version 0.48.0.
|
||||||
# The point is for the user to remove these configuration records
|
# The point is for the user to remove these configuration records
|
||||||
# one by one as the lints are removed from the code base.
|
# one by one as the lints are removed from the code base.
|
||||||
# Note that changes in the inspected code, or installation of new
|
# Note that changes in the inspected code, or installation of new
|
||||||
# versions of Haml-Lint, may require this file to be generated again.
|
# versions of Haml-Lint, may require this file to be generated again.
|
||||||
|
|
||||||
linters:
|
linters:
|
||||||
# Offense count: 63
|
# Offense count: 94
|
||||||
RuboCop:
|
RuboCop:
|
||||||
exclude:
|
enabled: false
|
||||||
- 'app/views/accounts/_og.html.haml'
|
|
||||||
- 'app/views/admin/account_warnings/_account_warning.html.haml'
|
|
||||||
- 'app/views/admin/accounts/index.html.haml'
|
|
||||||
- 'app/views/admin/accounts/show.html.haml'
|
|
||||||
- 'app/views/admin/announcements/edit.html.haml'
|
|
||||||
- 'app/views/admin/announcements/new.html.haml'
|
|
||||||
- 'app/views/admin/disputes/appeals/_appeal.html.haml'
|
|
||||||
- 'app/views/admin/domain_blocks/edit.html.haml'
|
|
||||||
- 'app/views/admin/domain_blocks/new.html.haml'
|
|
||||||
- 'app/views/admin/ip_blocks/new.html.haml'
|
|
||||||
- 'app/views/admin/reports/actions/preview.html.haml'
|
|
||||||
- 'app/views/admin/reports/index.html.haml'
|
|
||||||
- 'app/views/admin/reports/show.html.haml'
|
|
||||||
- 'app/views/admin/roles/_form.html.haml'
|
|
||||||
- 'app/views/admin/settings/about/show.html.haml'
|
|
||||||
- 'app/views/admin/settings/appearance/show.html.haml'
|
|
||||||
- 'app/views/admin/settings/registrations/show.html.haml'
|
|
||||||
- 'app/views/admin/statuses/show.html.haml'
|
|
||||||
- 'app/views/auth/registrations/new.html.haml'
|
|
||||||
- 'app/views/disputes/strikes/show.html.haml'
|
|
||||||
- 'app/views/filters/_filter_fields.html.haml'
|
|
||||||
- 'app/views/invites/_form.html.haml'
|
|
||||||
- 'app/views/layouts/application.html.haml'
|
|
||||||
- 'app/views/layouts/error.html.haml'
|
|
||||||
- 'app/views/notification_mailer/_status.html.haml'
|
|
||||||
- 'app/views/settings/applications/_fields.html.haml'
|
|
||||||
- 'app/views/settings/imports/show.html.haml'
|
|
||||||
- 'app/views/settings/preferences/appearance/show.html.haml'
|
|
||||||
- 'app/views/settings/preferences/other/show.html.haml'
|
|
||||||
- 'app/views/statuses/_detailed_status.html.haml'
|
|
||||||
- 'app/views/statuses/_poll.html.haml'
|
|
||||||
- 'app/views/statuses/show.html.haml'
|
|
||||||
- 'app/views/statuses_cleanup/show.html.haml'
|
|
||||||
- 'app/views/user_mailer/warning.html.haml'
|
|
||||||
|
|
||||||
# Offense count: 913
|
# Offense count: 960
|
||||||
LineLength:
|
LineLength:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
# Offense count: 22
|
# Offense count: 22
|
||||||
UnnecessaryStringOutput:
|
UnnecessaryStringOutput:
|
||||||
exclude:
|
enabled: false
|
||||||
- 'app/views/accounts/show.html.haml'
|
|
||||||
- 'app/views/admin/custom_emojis/_custom_emoji.html.haml'
|
|
||||||
- 'app/views/admin/relays/_relay.html.haml'
|
|
||||||
- 'app/views/admin/rules/_rule.html.haml'
|
|
||||||
- 'app/views/admin/statuses/index.html.haml'
|
|
||||||
- 'app/views/auth/registrations/_sessions.html.haml'
|
|
||||||
- 'app/views/disputes/strikes/show.html.haml'
|
|
||||||
- 'app/views/notification_mailer/_status.html.haml'
|
|
||||||
- 'app/views/settings/two_factor_authentication_methods/index.html.haml'
|
|
||||||
- 'app/views/statuses/_detailed_status.html.haml'
|
|
||||||
- 'app/views/statuses/_poll.html.haml'
|
|
||||||
- 'app/views/statuses/_simple_status.html.haml'
|
|
||||||
- 'app/views/user_mailer/suspicious_sign_in.html.haml'
|
|
||||||
- 'app/views/user_mailer/webauthn_credential_added.html.haml'
|
|
||||||
- 'app/views/user_mailer/webauthn_credential_deleted.html.haml'
|
|
||||||
- 'app/views/user_mailer/welcome.html.haml'
|
|
||||||
|
|
||||||
# Offense count: 3
|
# Offense count: 3
|
||||||
ViewLength:
|
ViewLength:
|
||||||
|
|
|
@ -24,7 +24,6 @@ AllCops:
|
||||||
Exclude:
|
Exclude:
|
||||||
- db/schema.rb
|
- db/schema.rb
|
||||||
- 'bin/*'
|
- 'bin/*'
|
||||||
- 'Rakefile'
|
|
||||||
- 'node_modules/**/*'
|
- 'node_modules/**/*'
|
||||||
- 'Vagrantfile'
|
- 'Vagrantfile'
|
||||||
- 'vendor/**/*'
|
- 'vendor/**/*'
|
||||||
|
@ -192,6 +191,11 @@ Style/RedundantBegin:
|
||||||
Style/RescueStandardError:
|
Style/RescueStandardError:
|
||||||
EnforcedStyle: implicit
|
EnforcedStyle: implicit
|
||||||
|
|
||||||
|
# Reason: Simplify some spec layouts
|
||||||
|
# https://docs.rubocop.org/rubocop/cops_style.html#stylesemicolon
|
||||||
|
Style/Semicolon:
|
||||||
|
AllowAsExpressionSeparator: true
|
||||||
|
|
||||||
# Reason: Originally disabled for CodeClimate, and no config consensus has been found
|
# Reason: Originally disabled for CodeClimate, and no config consensus has been found
|
||||||
# https://docs.rubocop.org/rubocop/cops_style.html#stylesymbolarray
|
# https://docs.rubocop.org/rubocop/cops_style.html#stylesymbolarray
|
||||||
Style/SymbolArray:
|
Style/SymbolArray:
|
||||||
|
|
|
@ -48,15 +48,6 @@ Layout/SpaceInLambdaLiteral:
|
||||||
- 'config/environments/production.rb'
|
- 'config/environments/production.rb'
|
||||||
- 'config/initializers/content_security_policy.rb'
|
- 'config/initializers/content_security_policy.rb'
|
||||||
|
|
||||||
# This cop supports safe autocorrection (--autocorrect).
|
|
||||||
# Configuration parameters: AllowedMethods, AllowedPatterns.
|
|
||||||
Lint/AmbiguousBlockAssociation:
|
|
||||||
Exclude:
|
|
||||||
- 'spec/controllers/settings/two_factor_authentication/confirmations_controller_spec.rb'
|
|
||||||
- 'spec/controllers/settings/two_factor_authentication/otp_authentication_controller_spec.rb'
|
|
||||||
- 'spec/services/activitypub/process_status_update_service_spec.rb'
|
|
||||||
- 'spec/services/post_status_service_spec.rb'
|
|
||||||
|
|
||||||
# Configuration parameters: AllowComments, AllowEmptyLambdas.
|
# Configuration parameters: AllowComments, AllowEmptyLambdas.
|
||||||
Lint/EmptyBlock:
|
Lint/EmptyBlock:
|
||||||
Exclude:
|
Exclude:
|
||||||
|
@ -106,11 +97,6 @@ Lint/OrAssignmentToConstant:
|
||||||
Exclude:
|
Exclude:
|
||||||
- 'lib/sanitize_ext/sanitize_config.rb'
|
- 'lib/sanitize_ext/sanitize_config.rb'
|
||||||
|
|
||||||
# This cop supports safe autocorrection (--autocorrect).
|
|
||||||
Lint/SendWithMixinArgument:
|
|
||||||
Exclude:
|
|
||||||
- 'config/application.rb'
|
|
||||||
|
|
||||||
# This cop supports safe autocorrection (--autocorrect).
|
# This cop supports safe autocorrection (--autocorrect).
|
||||||
# Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
|
# Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
|
||||||
Lint/UnusedBlockArgument:
|
Lint/UnusedBlockArgument:
|
||||||
|
@ -167,10 +153,6 @@ Metrics/CyclomaticComplexity:
|
||||||
Metrics/PerceivedComplexity:
|
Metrics/PerceivedComplexity:
|
||||||
Max: 27
|
Max: 27
|
||||||
|
|
||||||
Naming/AccessorMethodName:
|
|
||||||
Exclude:
|
|
||||||
- 'app/controllers/auth/sessions_controller.rb'
|
|
||||||
|
|
||||||
# Configuration parameters: ExpectMatchingDefinition, CheckDefinitionPathHierarchy, CheckDefinitionPathHierarchyRoots, Regex, IgnoreExecutableScripts, AllowedAcronyms.
|
# Configuration parameters: ExpectMatchingDefinition, CheckDefinitionPathHierarchy, CheckDefinitionPathHierarchyRoots, Regex, IgnoreExecutableScripts, AllowedAcronyms.
|
||||||
# CheckDefinitionPathHierarchyRoots: lib, spec, test, src
|
# CheckDefinitionPathHierarchyRoots: lib, spec, test, src
|
||||||
# AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
|
# AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
|
||||||
|
@ -178,19 +160,6 @@ Naming/FileName:
|
||||||
Exclude:
|
Exclude:
|
||||||
- 'config/locales/sr-Latn.rb'
|
- 'config/locales/sr-Latn.rb'
|
||||||
|
|
||||||
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
||||||
# Configuration parameters: EnforcedStyleForLeadingUnderscores.
|
|
||||||
# SupportedStylesForLeadingUnderscores: disallowed, required, optional
|
|
||||||
Naming/MemoizedInstanceVariableName:
|
|
||||||
Exclude:
|
|
||||||
- 'app/controllers/api/v1/bookmarks_controller.rb'
|
|
||||||
- 'app/controllers/api/v1/favourites_controller.rb'
|
|
||||||
- 'app/controllers/concerns/rate_limit_headers.rb'
|
|
||||||
- 'app/lib/activitypub/activity.rb'
|
|
||||||
- 'app/services/resolve_url_service.rb'
|
|
||||||
- 'app/services/search_service.rb'
|
|
||||||
- 'config/initializers/rack_attack.rb'
|
|
||||||
|
|
||||||
# Configuration parameters: EnforcedStyle, CheckMethodNames, CheckSymbols, AllowedIdentifiers, AllowedPatterns.
|
# Configuration parameters: EnforcedStyle, CheckMethodNames, CheckSymbols, AllowedIdentifiers, AllowedPatterns.
|
||||||
# SupportedStyles: snake_case, normalcase, non_integer
|
# SupportedStyles: snake_case, normalcase, non_integer
|
||||||
# AllowedIdentifiers: capture3, iso8601, rfc1123_date, rfc822, rfc2822, rfc3339, x86_64
|
# AllowedIdentifiers: capture3, iso8601, rfc1123_date, rfc822, rfc2822, rfc3339, x86_64
|
||||||
|
@ -400,45 +369,6 @@ RSpec/PendingWithoutReason:
|
||||||
Exclude:
|
Exclude:
|
||||||
- 'spec/models/account_spec.rb'
|
- 'spec/models/account_spec.rb'
|
||||||
|
|
||||||
RSpec/StubbedMock:
|
|
||||||
Exclude:
|
|
||||||
- 'spec/controllers/api/base_controller_spec.rb'
|
|
||||||
- 'spec/controllers/api/v1/media_controller_spec.rb'
|
|
||||||
- 'spec/controllers/auth/registrations_controller_spec.rb'
|
|
||||||
- 'spec/helpers/application_helper_spec.rb'
|
|
||||||
- 'spec/lib/status_filter_spec.rb'
|
|
||||||
- 'spec/lib/status_finder_spec.rb'
|
|
||||||
- 'spec/lib/webfinger_resource_spec.rb'
|
|
||||||
- 'spec/services/activitypub/process_collection_service_spec.rb'
|
|
||||||
|
|
||||||
RSpec/SubjectDeclaration:
|
|
||||||
Exclude:
|
|
||||||
- 'spec/controllers/admin/domain_blocks_controller_spec.rb'
|
|
||||||
- 'spec/models/account_migration_spec.rb'
|
|
||||||
- 'spec/models/account_spec.rb'
|
|
||||||
- 'spec/models/relationship_filter_spec.rb'
|
|
||||||
- 'spec/models/user_role_spec.rb'
|
|
||||||
- 'spec/policies/account_moderation_note_policy_spec.rb'
|
|
||||||
- 'spec/policies/account_policy_spec.rb'
|
|
||||||
- 'spec/policies/backup_policy_spec.rb'
|
|
||||||
- 'spec/policies/custom_emoji_policy_spec.rb'
|
|
||||||
- 'spec/policies/domain_block_policy_spec.rb'
|
|
||||||
- 'spec/policies/email_domain_block_policy_spec.rb'
|
|
||||||
- 'spec/policies/instance_policy_spec.rb'
|
|
||||||
- 'spec/policies/invite_policy_spec.rb'
|
|
||||||
- 'spec/policies/relay_policy_spec.rb'
|
|
||||||
- 'spec/policies/report_note_policy_spec.rb'
|
|
||||||
- 'spec/policies/report_policy_spec.rb'
|
|
||||||
- 'spec/policies/settings_policy_spec.rb'
|
|
||||||
- 'spec/policies/tag_policy_spec.rb'
|
|
||||||
- 'spec/policies/user_policy_spec.rb'
|
|
||||||
- 'spec/services/activitypub/process_account_service_spec.rb'
|
|
||||||
|
|
||||||
RSpec/SubjectStub:
|
|
||||||
Exclude:
|
|
||||||
- 'spec/services/unallow_domain_service_spec.rb'
|
|
||||||
- 'spec/validators/blacklisted_email_validator_spec.rb'
|
|
||||||
|
|
||||||
# This cop supports unsafe autocorrection (--autocorrect-all).
|
# This cop supports unsafe autocorrection (--autocorrect-all).
|
||||||
Rails/ApplicationController:
|
Rails/ApplicationController:
|
||||||
Exclude:
|
Exclude:
|
||||||
|
@ -779,405 +709,6 @@ Style/FormatStringToken:
|
||||||
- 'config/initializers/devise.rb'
|
- 'config/initializers/devise.rb'
|
||||||
- 'lib/paperclip/color_extractor.rb'
|
- 'lib/paperclip/color_extractor.rb'
|
||||||
|
|
||||||
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
||||||
# Configuration parameters: EnforcedStyle.
|
|
||||||
# SupportedStyles: always, always_true, never
|
|
||||||
Style/FrozenStringLiteralComment:
|
|
||||||
Exclude:
|
|
||||||
- 'app/views/accounts/show.rss.ruby'
|
|
||||||
- 'app/views/tags/show.rss.ruby'
|
|
||||||
- 'app/views/well_known/host_meta/show.xml.ruby'
|
|
||||||
- 'config/application.rb'
|
|
||||||
- 'config/boot.rb'
|
|
||||||
- 'config/environment.rb'
|
|
||||||
- 'config/environments/development.rb'
|
|
||||||
- 'config/environments/production.rb'
|
|
||||||
- 'config/environments/test.rb'
|
|
||||||
- 'config/initializers/0_post_deployment_migrations.rb'
|
|
||||||
- 'config/initializers/active_model_serializers.rb'
|
|
||||||
- 'config/initializers/application_controller_renderer.rb'
|
|
||||||
- 'config/initializers/assets.rb'
|
|
||||||
- 'config/initializers/backtrace_silencers.rb'
|
|
||||||
- 'config/initializers/cache_logging.rb'
|
|
||||||
- 'config/initializers/chewy.rb'
|
|
||||||
- 'config/initializers/content_security_policy.rb'
|
|
||||||
- 'config/initializers/cookies_serializer.rb'
|
|
||||||
- 'config/initializers/cors.rb'
|
|
||||||
- 'config/initializers/devise.rb'
|
|
||||||
- 'config/initializers/doorkeeper.rb'
|
|
||||||
- 'config/initializers/fast_blank.rb'
|
|
||||||
- 'config/initializers/ffmpeg.rb'
|
|
||||||
- 'config/initializers/filter_parameter_logging.rb'
|
|
||||||
- 'config/initializers/http_client_proxy.rb'
|
|
||||||
- 'config/initializers/httplog.rb'
|
|
||||||
- 'config/initializers/inflections.rb'
|
|
||||||
- 'config/initializers/mail_delivery_job.rb'
|
|
||||||
- 'config/initializers/mime_types.rb'
|
|
||||||
- 'config/initializers/oj.rb'
|
|
||||||
- 'config/initializers/omniauth.rb'
|
|
||||||
- 'config/initializers/open_uri_redirection.rb'
|
|
||||||
- 'config/initializers/permissions_policy.rb'
|
|
||||||
- 'config/initializers/pghero.rb'
|
|
||||||
- 'config/initializers/preload_link_headers.rb'
|
|
||||||
- 'config/initializers/premailer_rails.rb'
|
|
||||||
- 'config/initializers/rack_attack_logging.rb'
|
|
||||||
- 'config/initializers/redis.rb'
|
|
||||||
- 'config/initializers/session_store.rb'
|
|
||||||
- 'config/initializers/simple_form.rb'
|
|
||||||
- 'config/initializers/stoplight.rb'
|
|
||||||
- 'config/initializers/trusted_proxies.rb'
|
|
||||||
- 'config/initializers/twitter_regex.rb'
|
|
||||||
- 'config/initializers/webauthn.rb'
|
|
||||||
- 'config/initializers/wrap_parameters.rb'
|
|
||||||
- 'config/locales/sr-Latn.rb'
|
|
||||||
- 'config/locales/sr.rb'
|
|
||||||
- 'config/puma.rb'
|
|
||||||
- 'db/migrate/20160220174730_create_accounts.rb'
|
|
||||||
- 'db/migrate/20160220211917_create_statuses.rb'
|
|
||||||
- 'db/migrate/20160221003140_create_users.rb'
|
|
||||||
- 'db/migrate/20160221003621_create_follows.rb'
|
|
||||||
- 'db/migrate/20160222122600_create_stream_entries.rb'
|
|
||||||
- 'db/migrate/20160222143943_add_profile_fields_to_accounts.rb'
|
|
||||||
- 'db/migrate/20160223162837_add_metadata_to_statuses.rb'
|
|
||||||
- 'db/migrate/20160223164502_make_uris_nullable_in_statuses.rb'
|
|
||||||
- 'db/migrate/20160223165723_add_url_to_statuses.rb'
|
|
||||||
- 'db/migrate/20160223165855_add_url_to_accounts.rb'
|
|
||||||
- 'db/migrate/20160223171800_create_favourites.rb'
|
|
||||||
- 'db/migrate/20160224223247_create_mentions.rb'
|
|
||||||
- 'db/migrate/20160227230233_add_attachment_avatar_to_accounts.rb'
|
|
||||||
- 'db/migrate/20160305115639_add_devise_to_users.rb'
|
|
||||||
- 'db/migrate/20160306172223_create_doorkeeper_tables.rb'
|
|
||||||
- 'db/migrate/20160312193225_add_attachment_header_to_accounts.rb'
|
|
||||||
- 'db/migrate/20160314164231_add_owner_to_application.rb'
|
|
||||||
- 'db/migrate/20160316103650_add_missing_indices.rb'
|
|
||||||
- 'db/migrate/20160322193748_add_avatar_remote_url_to_accounts.rb'
|
|
||||||
- 'db/migrate/20160325130944_add_admin_to_users.rb'
|
|
||||||
- 'db/migrate/20160826155805_add_superapp_to_oauth_applications.rb'
|
|
||||||
- 'db/migrate/20160905150353_create_media_attachments.rb'
|
|
||||||
- 'db/migrate/20160919221059_add_subscription_expires_at_to_accounts.rb'
|
|
||||||
- 'db/migrate/20160920003904_remove_verify_token_from_accounts.rb'
|
|
||||||
- 'db/migrate/20160926213048_remove_owner_from_application.rb'
|
|
||||||
- 'db/migrate/20161003142332_add_confirmable_to_users.rb'
|
|
||||||
- 'db/migrate/20161003145426_create_blocks.rb'
|
|
||||||
- 'db/migrate/20161006213403_rails_settings_migration.rb'
|
|
||||||
- 'db/migrate/20161009120834_create_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20161027172456_add_silenced_to_accounts.rb'
|
|
||||||
- 'db/migrate/20161104173623_create_tags.rb'
|
|
||||||
- 'db/migrate/20161105130633_create_statuses_tags_join_table.rb'
|
|
||||||
- 'db/migrate/20161116162355_add_locale_to_users.rb'
|
|
||||||
- 'db/migrate/20161119211120_create_notifications.rb'
|
|
||||||
- 'db/migrate/20161122163057_remove_unneeded_indexes.rb'
|
|
||||||
- 'db/migrate/20161123093447_add_sensitive_to_statuses.rb'
|
|
||||||
- 'db/migrate/20161128103007_create_subscriptions.rb'
|
|
||||||
- 'db/migrate/20161130142058_add_last_successful_delivery_at_to_subscriptions.rb'
|
|
||||||
- 'db/migrate/20161130185319_add_visibility_to_statuses.rb'
|
|
||||||
- 'db/migrate/20161202132159_add_in_reply_to_account_id_to_statuses.rb'
|
|
||||||
- 'db/migrate/20161203164520_add_from_account_id_to_notifications.rb'
|
|
||||||
- 'db/migrate/20161205214545_add_suspended_to_accounts.rb'
|
|
||||||
- 'db/migrate/20161221152630_add_hidden_to_stream_entries.rb'
|
|
||||||
- 'db/migrate/20161222201034_add_locked_to_accounts.rb'
|
|
||||||
- 'db/migrate/20161222204147_create_follow_requests.rb'
|
|
||||||
- 'db/migrate/20170105224407_add_shortcode_to_media_attachments.rb'
|
|
||||||
- 'db/migrate/20170109120109_create_web_settings.rb'
|
|
||||||
- 'db/migrate/20170112154826_migrate_settings.rb'
|
|
||||||
- 'db/migrate/20170114194937_add_application_to_statuses.rb'
|
|
||||||
- 'db/migrate/20170114203041_add_website_to_oauth_application.rb'
|
|
||||||
- 'db/migrate/20170119214911_create_preview_cards.rb'
|
|
||||||
- 'db/migrate/20170123162658_add_severity_to_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20170123203248_add_reject_media_to_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20170125145934_add_spoiler_text_to_statuses.rb'
|
|
||||||
- 'db/migrate/20170127165745_add_devise_two_factor_to_users.rb'
|
|
||||||
- 'db/migrate/20170205175257_remove_devices.rb'
|
|
||||||
- 'db/migrate/20170209184350_add_reply_to_statuses.rb'
|
|
||||||
- 'db/migrate/20170214110202_create_reports.rb'
|
|
||||||
- 'db/migrate/20170217012631_add_reblog_of_id_foreign_key_to_statuses.rb'
|
|
||||||
- 'db/migrate/20170301222600_create_mutes.rb'
|
|
||||||
- 'db/migrate/20170303212857_add_last_emailed_at_to_users.rb'
|
|
||||||
- 'db/migrate/20170304202101_add_type_to_media_attachments.rb'
|
|
||||||
- 'db/migrate/20170317193015_add_search_index_to_accounts.rb'
|
|
||||||
- 'db/migrate/20170318214217_add_header_remote_url_to_accounts.rb'
|
|
||||||
- 'db/migrate/20170322021028_add_lowercase_index_to_accounts.rb'
|
|
||||||
- 'db/migrate/20170322143850_change_primary_key_to_bigint_on_statuses.rb'
|
|
||||||
- 'db/migrate/20170322162804_add_search_index_to_tags.rb'
|
|
||||||
- 'db/migrate/20170330021336_add_counter_caches.rb'
|
|
||||||
- 'db/migrate/20170330163835_create_imports.rb'
|
|
||||||
- 'db/migrate/20170330164118_add_attachment_data_to_imports.rb'
|
|
||||||
- 'db/migrate/20170403172249_add_action_taken_by_account_id_to_reports.rb'
|
|
||||||
- 'db/migrate/20170405112956_add_index_on_mentions_status_id.rb'
|
|
||||||
- 'db/migrate/20170406215816_add_notifications_and_favourites_indices.rb'
|
|
||||||
- 'db/migrate/20170409170753_add_last_webfingered_at_to_accounts.rb'
|
|
||||||
- 'db/migrate/20170414080609_add_devise_two_factor_backupable_to_users.rb'
|
|
||||||
- 'db/migrate/20170414132105_add_language_to_statuses.rb'
|
|
||||||
- 'db/migrate/20170418160728_add_indexes_to_reports_for_accounts.rb'
|
|
||||||
- 'db/migrate/20170423005413_add_allowed_languages_to_user.rb'
|
|
||||||
- 'db/migrate/20170424003227_create_account_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20170424112722_add_status_id_index_to_statuses_tags.rb'
|
|
||||||
- 'db/migrate/20170425131920_add_media_attachment_meta.rb'
|
|
||||||
- 'db/migrate/20170425202925_add_oembed_to_preview_cards.rb'
|
|
||||||
- 'db/migrate/20170427011934_re_add_owner_to_application.rb'
|
|
||||||
- 'db/migrate/20170506235850_create_conversations.rb'
|
|
||||||
- 'db/migrate/20170507000211_add_conversation_id_to_statuses.rb'
|
|
||||||
- 'db/migrate/20170507141759_optimize_index_subscriptions.rb'
|
|
||||||
- 'db/migrate/20170508230434_create_conversation_mutes.rb'
|
|
||||||
- 'db/migrate/20170516072309_add_index_accounts_on_uri.rb'
|
|
||||||
- 'db/migrate/20170520145338_change_language_filter_to_opt_out.rb'
|
|
||||||
- 'db/migrate/20170601210557_add_index_on_media_attachments_account_id.rb'
|
|
||||||
- 'db/migrate/20170604144747_add_foreign_keys_for_accounts.rb'
|
|
||||||
- 'db/migrate/20170606113804_change_tag_search_index_to_btree.rb'
|
|
||||||
- 'db/migrate/20170609145826_remove_default_language_from_statuses.rb'
|
|
||||||
- 'db/migrate/20170610000000_add_statuses_index_on_account_id_id.rb'
|
|
||||||
- 'db/migrate/20170623152212_create_session_activations.rb'
|
|
||||||
- 'db/migrate/20170624134742_add_description_to_session_activations.rb'
|
|
||||||
- 'db/migrate/20170625140443_add_access_token_id_to_session_activations.rb'
|
|
||||||
- 'db/migrate/20170711225116_fix_null_booleans.rb'
|
|
||||||
- 'db/migrate/20170713112503_make_tag_search_case_insensitive.rb'
|
|
||||||
- 'db/migrate/20170713175513_create_web_push_subscriptions.rb'
|
|
||||||
- 'db/migrate/20170713190709_add_web_push_subscription_to_session_activations.rb'
|
|
||||||
- 'db/migrate/20170714184731_add_domain_to_subscriptions.rb'
|
|
||||||
- 'db/migrate/20170716191202_add_hide_notifications_to_mute.rb'
|
|
||||||
- 'db/migrate/20170718211102_add_activitypub_to_accounts.rb'
|
|
||||||
- 'db/migrate/20170720000000_add_index_favourites_on_account_id_and_id.rb'
|
|
||||||
- 'db/migrate/20170823162448_create_status_pins.rb'
|
|
||||||
- 'db/migrate/20170824103029_add_timestamps_to_status_pins.rb'
|
|
||||||
- 'db/migrate/20170829215220_remove_status_pins_account_index.rb'
|
|
||||||
- 'db/migrate/20170901141119_truncate_preview_cards.rb'
|
|
||||||
- 'db/migrate/20170901142658_create_join_table_preview_cards_statuses.rb'
|
|
||||||
- 'db/migrate/20170905044538_add_index_id_account_id_activity_type_on_notifications.rb'
|
|
||||||
- 'db/migrate/20170905165803_add_local_to_statuses.rb'
|
|
||||||
- 'db/migrate/20170913000752_create_site_uploads.rb'
|
|
||||||
- 'db/migrate/20170917153509_create_custom_emojis.rb'
|
|
||||||
- 'db/migrate/20170918125918_ids_to_bigints.rb'
|
|
||||||
- 'db/migrate/20170920024819_status_ids_to_timestamp_ids.rb'
|
|
||||||
- 'db/migrate/20170920032311_fix_reblogs_in_feeds.rb'
|
|
||||||
- 'db/migrate/20170924022025_ids_to_bigints2.rb'
|
|
||||||
- 'db/migrate/20170927215609_add_description_to_media_attachments.rb'
|
|
||||||
- 'db/migrate/20170928082043_create_email_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20171005102658_create_account_moderation_notes.rb'
|
|
||||||
- 'db/migrate/20171005171936_add_disabled_to_custom_emojis.rb'
|
|
||||||
- 'db/migrate/20171006142024_add_uri_to_custom_emojis.rb'
|
|
||||||
- 'db/migrate/20171010023049_add_foreign_key_to_account_moderation_notes.rb'
|
|
||||||
- 'db/migrate/20171010025614_change_accounts_nonnullable_in_account_moderation_notes.rb'
|
|
||||||
- 'db/migrate/20171020084748_add_visible_in_picker_to_custom_emoji.rb'
|
|
||||||
- 'db/migrate/20171028221157_add_reblogs_to_follows.rb'
|
|
||||||
- 'db/migrate/20171107143332_add_memorial_to_accounts.rb'
|
|
||||||
- 'db/migrate/20171107143624_add_disabled_to_users.rb'
|
|
||||||
- 'db/migrate/20171109012327_add_moderator_to_accounts.rb'
|
|
||||||
- 'db/migrate/20171114080328_add_index_domain_to_email_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20171114231651_create_lists.rb'
|
|
||||||
- 'db/migrate/20171116161857_create_list_accounts.rb'
|
|
||||||
- 'db/migrate/20171118012443_add_moved_to_account_id_to_accounts.rb'
|
|
||||||
- 'db/migrate/20171119172437_create_admin_action_logs.rb'
|
|
||||||
- 'db/migrate/20171122120436_add_index_account_and_reblog_of_id_to_statuses.rb'
|
|
||||||
- 'db/migrate/20171125024930_create_invites.rb'
|
|
||||||
- 'db/migrate/20171125031751_add_invite_id_to_users.rb'
|
|
||||||
- 'db/migrate/20171125185353_add_index_reblog_of_id_and_account_to_statuses.rb'
|
|
||||||
- 'db/migrate/20171125190735_remove_old_reblog_index_on_statuses.rb'
|
|
||||||
- 'db/migrate/20171129172043_add_index_on_stream_entries.rb'
|
|
||||||
- 'db/migrate/20171130000000_add_embed_url_to_preview_cards.rb'
|
|
||||||
- 'db/migrate/20171201000000_change_account_id_nonnullable_in_lists.rb'
|
|
||||||
- 'db/migrate/20171212195226_remove_duplicate_indexes_in_lists.rb'
|
|
||||||
- 'db/migrate/20171226094803_more_faster_index_on_notifications.rb'
|
|
||||||
- 'db/migrate/20180106000232_add_index_on_statuses_for_api_v1_accounts_account_id_statuses.rb'
|
|
||||||
- 'db/migrate/20180109143959_add_remember_token_to_users.rb'
|
|
||||||
- 'db/migrate/20180204034416_create_identities.rb'
|
|
||||||
- 'db/migrate/20180206000000_change_user_id_nonnullable.rb'
|
|
||||||
- 'db/migrate/20180211015820_create_backups.rb'
|
|
||||||
- 'db/migrate/20180304013859_add_featured_collection_url_to_accounts.rb'
|
|
||||||
- 'db/migrate/20180310000000_change_columns_in_notifications_nonnullable.rb'
|
|
||||||
- 'db/migrate/20180402031200_add_assigned_account_id_to_reports.rb'
|
|
||||||
- 'db/migrate/20180402040909_create_report_notes.rb'
|
|
||||||
- 'db/migrate/20180410204633_add_fields_to_accounts.rb'
|
|
||||||
- 'db/migrate/20180416210259_add_uri_to_relationships.rb'
|
|
||||||
- 'db/migrate/20180506221944_add_actor_type_to_accounts.rb'
|
|
||||||
- 'db/migrate/20180510214435_add_access_token_id_to_web_push_subscriptions.rb'
|
|
||||||
- 'db/migrate/20180510230049_migrate_web_push_subscriptions.rb'
|
|
||||||
- 'db/migrate/20180528141303_fix_accounts_unique_index.rb'
|
|
||||||
- 'db/migrate/20180608213548_reject_following_blocked_users.rb'
|
|
||||||
- 'db/migrate/20180609104432_migrate_web_push_subscriptions2.rb'
|
|
||||||
- 'db/migrate/20180615122121_add_autofollow_to_invites.rb'
|
|
||||||
- 'db/migrate/20180616192031_add_chosen_languages_to_users.rb'
|
|
||||||
- 'db/migrate/20180617162849_remove_unused_indexes.rb'
|
|
||||||
- 'db/migrate/20180628181026_create_custom_filters.rb'
|
|
||||||
- 'db/migrate/20180707154237_add_whole_word_to_custom_filter.rb'
|
|
||||||
- 'db/migrate/20180711152640_create_relays.rb'
|
|
||||||
- 'db/migrate/20180808175627_create_account_pins.rb'
|
|
||||||
- 'db/migrate/20180812123222_change_relays_enabled.rb'
|
|
||||||
- 'db/migrate/20180812162710_create_status_stats.rb'
|
|
||||||
- 'db/migrate/20180812173710_copy_status_stats.rb'
|
|
||||||
- 'db/migrate/20180814171349_add_confidential_to_doorkeeper_application.rb'
|
|
||||||
- 'db/migrate/20180831171112_create_bookmarks.rb'
|
|
||||||
- 'db/migrate/20180929222014_create_account_conversations.rb'
|
|
||||||
- 'db/migrate/20181007025445_create_pghero_space_stats.rb'
|
|
||||||
- 'db/migrate/20181010141500_add_silent_to_mentions.rb'
|
|
||||||
- 'db/migrate/20181017170937_add_reject_reports_to_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20181018205649_add_unread_to_account_conversations.rb'
|
|
||||||
- 'db/migrate/20181024224956_migrate_account_conversations.rb'
|
|
||||||
- 'db/migrate/20181026034033_remove_faux_remote_account_duplicates.rb'
|
|
||||||
- 'db/migrate/20181116165755_create_account_stats.rb'
|
|
||||||
- 'db/migrate/20181116173541_copy_account_stats.rb'
|
|
||||||
- 'db/migrate/20181127130500_identity_id_to_bigint.rb'
|
|
||||||
- 'db/migrate/20181127165847_add_show_replies_to_lists.rb'
|
|
||||||
- 'db/migrate/20181203003808_create_accounts_tags_join_table.rb'
|
|
||||||
- 'db/migrate/20181203021853_add_discoverable_to_accounts.rb'
|
|
||||||
- 'db/migrate/20181204193439_add_last_status_at_to_account_stats.rb'
|
|
||||||
- 'db/migrate/20181204215309_create_account_tag_stats.rb'
|
|
||||||
- 'db/migrate/20181207011115_downcase_custom_emoji_domains.rb'
|
|
||||||
- 'db/migrate/20181213184704_create_account_warnings.rb'
|
|
||||||
- 'db/migrate/20181213185533_create_account_warning_presets.rb'
|
|
||||||
- 'db/migrate/20181219235220_add_created_by_application_id_to_users.rb'
|
|
||||||
- 'db/migrate/20181226021420_add_also_known_as_to_accounts.rb'
|
|
||||||
- 'db/migrate/20190103124649_create_scheduled_statuses.rb'
|
|
||||||
- 'db/migrate/20190103124754_add_scheduled_status_id_to_media_attachments.rb'
|
|
||||||
- 'db/migrate/20190117114553_create_tombstones.rb'
|
|
||||||
- 'db/migrate/20190201012802_add_overwrite_to_imports.rb'
|
|
||||||
- 'db/migrate/20190203180359_create_featured_tags.rb'
|
|
||||||
- 'db/migrate/20190225031541_create_polls.rb'
|
|
||||||
- 'db/migrate/20190225031625_create_poll_votes.rb'
|
|
||||||
- 'db/migrate/20190226003449_add_poll_id_to_statuses.rb'
|
|
||||||
- 'db/migrate/20190304152020_add_uri_to_poll_votes.rb'
|
|
||||||
- 'db/migrate/20190306145741_add_lock_version_to_polls.rb'
|
|
||||||
- 'db/migrate/20190307234537_add_approved_to_users.rb'
|
|
||||||
- 'db/migrate/20190314181829_migrate_open_registrations_setting.rb'
|
|
||||||
- 'db/migrate/20190316190352_create_account_identity_proofs.rb'
|
|
||||||
- 'db/migrate/20190317135723_add_uri_to_reports.rb'
|
|
||||||
- 'db/migrate/20190403141604_add_comment_to_invites.rb'
|
|
||||||
- 'db/migrate/20190409054914_create_user_invite_requests.rb'
|
|
||||||
- 'db/migrate/20190420025523_add_blurhash_to_media_attachments.rb'
|
|
||||||
- 'db/migrate/20190509164208_add_by_moderator_to_tombstone.rb'
|
|
||||||
- 'db/migrate/20190511134027_add_silenced_at_suspended_at_to_accounts.rb'
|
|
||||||
- 'db/migrate/20190529143559_preserve_old_layout_for_existing_users.rb'
|
|
||||||
- 'db/migrate/20190627222225_create_custom_emoji_categories.rb'
|
|
||||||
- 'db/migrate/20190627222826_add_category_id_to_custom_emojis.rb'
|
|
||||||
- 'db/migrate/20190701022101_add_trust_level_to_accounts.rb'
|
|
||||||
- 'db/migrate/20190705002136_create_domain_allows.rb'
|
|
||||||
- 'db/migrate/20190715164535_add_instance_actor.rb'
|
|
||||||
- 'db/migrate/20190726175042_add_case_insensitive_index_to_tags.rb'
|
|
||||||
- 'db/migrate/20190729185330_add_score_to_tags.rb'
|
|
||||||
- 'db/migrate/20190805123746_add_capabilities_to_tags.rb'
|
|
||||||
- 'db/migrate/20190807135426_add_comments_to_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20190815225426_add_last_status_at_to_tags.rb'
|
|
||||||
- 'db/migrate/20190819134503_add_deleted_at_to_statuses.rb'
|
|
||||||
- 'db/migrate/20190820003045_update_statuses_index.rb'
|
|
||||||
- 'db/migrate/20190823221802_add_local_index_to_statuses.rb'
|
|
||||||
- 'db/migrate/20190901035623_add_max_score_to_tags.rb'
|
|
||||||
- 'db/migrate/20190904222339_create_markers.rb'
|
|
||||||
- 'db/migrate/20190914202517_create_account_migrations.rb'
|
|
||||||
- 'db/migrate/20190915194355_create_account_aliases.rb'
|
|
||||||
- 'db/migrate/20190927232842_add_voters_count_to_polls.rb'
|
|
||||||
- 'db/migrate/20191001213028_add_lock_version_to_account_stats.rb'
|
|
||||||
- 'db/migrate/20191007013357_update_pt_locales.rb'
|
|
||||||
- 'db/migrate/20191031163205_change_list_account_follow_nullable.rb'
|
|
||||||
- 'db/migrate/20191212003415_increase_backup_size.rb'
|
|
||||||
- 'db/migrate/20191212163405_add_hide_collections_to_accounts.rb'
|
|
||||||
- 'db/migrate/20191218153258_create_announcements.rb'
|
|
||||||
- 'db/migrate/20200113125135_create_announcement_mutes.rb'
|
|
||||||
- 'db/migrate/20200114113335_create_announcement_reactions.rb'
|
|
||||||
- 'db/migrate/20200119112504_add_public_index_to_statuses.rb'
|
|
||||||
- 'db/migrate/20200126203551_add_published_at_to_announcements.rb'
|
|
||||||
- 'db/migrate/20200306035625_add_processing_to_media_attachments.rb'
|
|
||||||
- 'db/migrate/20200309150742_add_forwarded_to_reports.rb'
|
|
||||||
- 'db/migrate/20200312144258_add_title_to_account_warning_presets.rb'
|
|
||||||
- 'db/migrate/20200312162302_add_status_ids_to_announcements.rb'
|
|
||||||
- 'db/migrate/20200312185443_add_parent_id_to_email_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20200317021758_add_expires_at_to_mutes.rb'
|
|
||||||
- 'db/migrate/20200407201300_create_unavailable_domains.rb'
|
|
||||||
- 'db/migrate/20200407202420_migrate_unavailable_inboxes.rb'
|
|
||||||
- 'db/migrate/20200417125749_add_storage_schema_version.rb'
|
|
||||||
- 'db/migrate/20200508212852_reset_unique_jobs_locks.rb'
|
|
||||||
- 'db/migrate/20200510110808_reset_web_app_secret.rb'
|
|
||||||
- 'db/migrate/20200510181721_remove_duplicated_indexes_pghero.rb'
|
|
||||||
- 'db/migrate/20200516180352_create_devices.rb'
|
|
||||||
- 'db/migrate/20200516183822_create_one_time_keys.rb'
|
|
||||||
- 'db/migrate/20200518083523_create_encrypted_messages.rb'
|
|
||||||
- 'db/migrate/20200521180606_encrypted_message_ids_to_timestamp_ids.rb'
|
|
||||||
- 'db/migrate/20200529214050_add_devices_url_to_accounts.rb'
|
|
||||||
- 'db/migrate/20200601222558_create_system_keys.rb'
|
|
||||||
- 'db/migrate/20200605155027_add_blurhash_to_preview_cards.rb'
|
|
||||||
- 'db/migrate/20200608113046_add_sign_in_token_to_users.rb'
|
|
||||||
- 'db/migrate/20200614002136_add_sensitized_to_accounts.rb'
|
|
||||||
- 'db/migrate/20200620164023_add_fixed_lowercase_index_to_accounts.rb'
|
|
||||||
- 'db/migrate/20200622213645_media_attachment_ids_to_timestamp_ids.rb'
|
|
||||||
- 'db/migrate/20200627125810_add_thumbnail_columns_to_media_attachments.rb'
|
|
||||||
- 'db/migrate/20200628133322_create_account_notes.rb'
|
|
||||||
- 'db/migrate/20200630190240_create_webauthn_credentials.rb'
|
|
||||||
- 'db/migrate/20200630190544_add_webauthn_id_to_users.rb'
|
|
||||||
- 'db/migrate/20200908193330_create_account_deletion_requests.rb'
|
|
||||||
- 'db/migrate/20200917192924_add_notify_to_follows.rb'
|
|
||||||
- 'db/migrate/20200917193034_add_type_to_notifications.rb'
|
|
||||||
- 'db/migrate/20200917222316_add_index_notifications_on_type.rb'
|
|
||||||
- 'db/migrate/20201008202037_create_ip_blocks.rb'
|
|
||||||
- 'db/migrate/20201008220312_add_sign_up_ip_to_users.rb'
|
|
||||||
- 'db/migrate/20201017233919_add_suspension_origin_to_accounts.rb'
|
|
||||||
- 'db/migrate/20201206004238_create_instances.rb'
|
|
||||||
- 'db/migrate/20201218054746_add_obfuscate_to_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20210221045109_create_rules.rb'
|
|
||||||
- 'db/migrate/20210306164523_account_ids_to_timestamp_ids.rb'
|
|
||||||
- 'db/migrate/20210322164601_create_account_summaries.rb'
|
|
||||||
- 'db/migrate/20210323114347_create_follow_recommendations.rb'
|
|
||||||
- 'db/migrate/20210324171613_create_follow_recommendation_suppressions.rb'
|
|
||||||
- 'db/migrate/20210416200740_create_canonical_email_blocks.rb'
|
|
||||||
- 'db/migrate/20210421121431_add_case_insensitive_btree_index_to_tags.rb'
|
|
||||||
- 'db/migrate/20210425135952_add_index_on_media_attachments_account_id_status_id.rb'
|
|
||||||
- 'db/migrate/20210505174616_update_follow_recommendations_to_version_2.rb'
|
|
||||||
- 'db/migrate/20210609202149_create_login_activities.rb'
|
|
||||||
- 'db/migrate/20210616214526_create_user_ips.rb'
|
|
||||||
- 'db/migrate/20210621221010_add_skip_sign_in_token_to_users.rb'
|
|
||||||
- 'db/migrate/20210630000137_fix_canonical_email_blocks_foreign_key.rb'
|
|
||||||
- 'db/migrate/20210722120340_create_account_statuses_cleanup_policies.rb'
|
|
||||||
- 'db/migrate/20210904215403_add_edited_at_to_statuses.rb'
|
|
||||||
- 'db/migrate/20210908220918_create_status_edits.rb'
|
|
||||||
- 'db/migrate/20211031031021_create_preview_card_providers.rb'
|
|
||||||
- 'db/migrate/20211112011713_add_language_to_preview_cards.rb'
|
|
||||||
- 'db/migrate/20211115032527_add_trendable_to_preview_cards.rb'
|
|
||||||
- 'db/migrate/20211123212714_add_link_type_to_preview_cards.rb'
|
|
||||||
- 'db/migrate/20211213040746_update_account_summaries_to_version_2.rb'
|
|
||||||
- 'db/migrate/20211231080958_add_category_to_reports.rb'
|
|
||||||
- 'db/migrate/20220105163928_remove_mentions_status_id_index.rb'
|
|
||||||
- 'db/migrate/20220115125126_add_report_id_to_account_warnings.rb'
|
|
||||||
- 'db/migrate/20220115125341_fix_account_warning_actions.rb'
|
|
||||||
- 'db/migrate/20220116202951_add_deleted_at_index_on_statuses.rb'
|
|
||||||
- 'db/migrate/20220124141035_create_appeals.rb'
|
|
||||||
- 'db/migrate/20220202200743_add_trendable_to_accounts.rb'
|
|
||||||
- 'db/migrate/20220202200926_add_trendable_to_statuses.rb'
|
|
||||||
- 'db/migrate/20220210153119_add_overruled_at_to_account_warnings.rb'
|
|
||||||
- 'db/migrate/20220224010024_add_ips_to_email_domain_blocks.rb'
|
|
||||||
- 'db/migrate/20220227041951_add_last_used_at_to_oauth_access_tokens.rb'
|
|
||||||
- 'db/migrate/20220302232632_add_ordered_media_attachment_ids_to_statuses.rb'
|
|
||||||
- 'db/migrate/20220303000827_add_ordered_media_attachment_ids_to_status_edits.rb'
|
|
||||||
- 'db/migrate/20220304195405_migrate_hide_network_preference.rb'
|
|
||||||
- 'db/migrate/20220307094650_fix_featured_tags_constraints.rb'
|
|
||||||
- 'db/migrate/20220309213005_fix_reblog_deleted_at.rb'
|
|
||||||
- 'db/migrate/20220316233212_update_kurdish_locales.rb'
|
|
||||||
- 'db/migrate/20220428112511_add_index_statuses_on_account_id.rb'
|
|
||||||
- 'db/migrate/20220428112727_add_index_statuses_pins_on_status_id.rb'
|
|
||||||
- 'db/migrate/20220428114454_add_index_reports_on_assigned_account_id.rb'
|
|
||||||
- 'db/migrate/20220428114902_add_index_reports_on_action_taken_by_account_id.rb'
|
|
||||||
- 'db/migrate/20220606044941_create_webhooks.rb'
|
|
||||||
- 'db/migrate/20220611210335_create_user_roles.rb'
|
|
||||||
- 'db/migrate/20220611212541_add_role_id_to_users.rb'
|
|
||||||
- 'db/migrate/20220710102457_add_display_name_to_tags.rb'
|
|
||||||
- 'db/migrate/20220714171049_create_tag_follows.rb'
|
|
||||||
- 'db/migrate/20220824164433_add_human_identifier_to_admin_action_logs.rb'
|
|
||||||
- 'db/migrate/20220824233535_create_status_trends.rb'
|
|
||||||
- 'db/migrate/20220827195229_change_canonical_email_blocks_nullable.rb'
|
|
||||||
- 'db/migrate/20220829192633_add_languages_to_follows.rb'
|
|
||||||
- 'db/migrate/20220829192658_add_languages_to_follow_requests.rb'
|
|
||||||
- 'db/migrate/20221006061337_create_preview_card_trends.rb'
|
|
||||||
- 'db/migrate/20221012181003_add_blurhash_to_site_uploads.rb'
|
|
||||||
- 'db/migrate/20221021055441_add_index_featured_tags_on_account_id_and_tag_id.rb'
|
|
||||||
- 'db/migrate/20221025171544_add_index_ip_blocks_on_ip.rb'
|
|
||||||
- 'db/migrate/20221104133904_add_name_to_featured_tags.rb'
|
|
||||||
- 'db/post_migrate/20190519130537_remove_boosts_widening_audience.rb'
|
|
||||||
- 'db/post_migrate/20210308133107_remove_subscription_expires_at_from_accounts.rb'
|
|
||||||
- 'db/post_migrate/20220118183123_remove_rememberable_from_users.rb'
|
|
||||||
- 'db/seeds/01_web_app.rb'
|
|
||||||
- 'db/seeds/02_instance_actor.rb'
|
|
||||||
- 'db/seeds/03_roles.rb'
|
|
||||||
- 'db/seeds/04_admin.rb'
|
|
||||||
- 'lib/rails/engine_extensions.rb'
|
|
||||||
- 'lib/tasks/branding.rake'
|
|
||||||
- 'spec/fabricators_spec.rb'
|
|
||||||
|
|
||||||
# This cop supports unsafe autocorrection (--autocorrect-all).
|
# This cop supports unsafe autocorrection (--autocorrect-all).
|
||||||
Style/GlobalStdStream:
|
Style/GlobalStdStream:
|
||||||
Exclude:
|
Exclude:
|
||||||
|
@ -1339,13 +870,6 @@ Style/SafeNavigation:
|
||||||
- 'app/models/concerns/account_finder_concern.rb'
|
- 'app/models/concerns/account_finder_concern.rb'
|
||||||
- 'app/models/status.rb'
|
- 'app/models/status.rb'
|
||||||
|
|
||||||
# This cop supports safe autocorrection (--autocorrect).
|
|
||||||
# Configuration parameters: AllowAsExpressionSeparator.
|
|
||||||
Style/Semicolon:
|
|
||||||
Exclude:
|
|
||||||
- 'spec/services/activitypub/process_status_update_service_spec.rb'
|
|
||||||
- 'spec/validators/blacklisted_email_validator_spec.rb'
|
|
||||||
|
|
||||||
# This cop supports safe autocorrection (--autocorrect).
|
# This cop supports safe autocorrection (--autocorrect).
|
||||||
# Configuration parameters: EnforcedStyle.
|
# Configuration parameters: EnforcedStyle.
|
||||||
# SupportedStyles: only_raise, only_fail, semantic
|
# SupportedStyles: only_raise, only_fail, semantic
|
||||||
|
@ -1359,21 +883,6 @@ Style/SingleArgumentDig:
|
||||||
Exclude:
|
Exclude:
|
||||||
- 'lib/webpacker/manifest_extensions.rb'
|
- 'lib/webpacker/manifest_extensions.rb'
|
||||||
|
|
||||||
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
||||||
Style/SlicingWithRange:
|
|
||||||
Exclude:
|
|
||||||
- 'app/lib/emoji_formatter.rb'
|
|
||||||
- 'app/lib/text_formatter.rb'
|
|
||||||
- 'app/models/account_alias.rb'
|
|
||||||
- 'app/models/domain_block.rb'
|
|
||||||
- 'app/models/email_domain_block.rb'
|
|
||||||
- 'app/models/preview_card_provider.rb'
|
|
||||||
- 'app/validators/status_length_validator.rb'
|
|
||||||
- 'db/migrate/20190726175042_add_case_insensitive_index_to_tags.rb'
|
|
||||||
- 'lib/active_record/batches.rb'
|
|
||||||
- 'lib/mastodon/premailer_webpack_strategy.rb'
|
|
||||||
- 'lib/tasks/repo.rake'
|
|
||||||
|
|
||||||
# This cop supports safe autocorrection (--autocorrect).
|
# This cop supports safe autocorrection (--autocorrect).
|
||||||
# Configuration parameters: EnforcedStyle.
|
# Configuration parameters: EnforcedStyle.
|
||||||
# SupportedStyles: require_parentheses, require_no_parentheses
|
# SupportedStyles: require_parentheses, require_no_parentheses
|
||||||
|
|
|
@ -146,7 +146,7 @@ GEM
|
||||||
sshkit (>= 1.9.0)
|
sshkit (>= 1.9.0)
|
||||||
capistrano-bundler (2.1.0)
|
capistrano-bundler (2.1.0)
|
||||||
capistrano (~> 3.1)
|
capistrano (~> 3.1)
|
||||||
capistrano-rails (1.6.2)
|
capistrano-rails (1.6.3)
|
||||||
capistrano (~> 3.1)
|
capistrano (~> 3.1)
|
||||||
capistrano-bundler (>= 1.1, < 3)
|
capistrano-bundler (>= 1.1, < 3)
|
||||||
capistrano-rbenv (2.2.0)
|
capistrano-rbenv (2.2.0)
|
||||||
|
@ -291,11 +291,11 @@ GEM
|
||||||
activesupport (>= 5.1)
|
activesupport (>= 5.1)
|
||||||
haml (>= 4.0.6)
|
haml (>= 4.0.6)
|
||||||
railties (>= 5.1)
|
railties (>= 5.1)
|
||||||
haml_lint (0.45.0)
|
haml_lint (0.48.0)
|
||||||
haml (>= 4.0, < 6.2)
|
haml (>= 4.0, < 6.2)
|
||||||
parallel (~> 1.10)
|
parallel (~> 1.10)
|
||||||
rainbow
|
rainbow
|
||||||
rubocop (>= 0.50.0)
|
rubocop (>= 1.0)
|
||||||
sysexits (~> 1.1)
|
sysexits (~> 1.1)
|
||||||
hashdiff (1.0.1)
|
hashdiff (1.0.1)
|
||||||
hashie (5.0.0)
|
hashie (5.0.0)
|
||||||
|
@ -668,7 +668,7 @@ GEM
|
||||||
actionpack (>= 5.2)
|
actionpack (>= 5.2)
|
||||||
activesupport (>= 5.2)
|
activesupport (>= 5.2)
|
||||||
sprockets (>= 3.0.0)
|
sprockets (>= 3.0.0)
|
||||||
sshkit (1.21.4)
|
sshkit (1.21.5)
|
||||||
net-scp (>= 1.1.2)
|
net-scp (>= 1.1.2)
|
||||||
net-ssh (>= 2.8.0)
|
net-ssh (>= 2.8.0)
|
||||||
stackprof (0.2.25)
|
stackprof (0.2.25)
|
||||||
|
|
4
Rakefile
4
Rakefile
|
@ -1,6 +1,8 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Add your own tasks in files placed in lib/tasks ending in .rake,
|
# Add your own tasks in files placed in lib/tasks ending in .rake,
|
||||||
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
|
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
|
||||||
|
|
||||||
require File.expand_path('../config/application', __FILE__)
|
require File.expand_path('config/application', __dir__)
|
||||||
|
|
||||||
Rails.application.load_tasks
|
Rails.application.load_tasks
|
||||||
|
|
|
@ -21,7 +21,7 @@ class Api::V1::BookmarksController < Api::BaseController
|
||||||
end
|
end
|
||||||
|
|
||||||
def results
|
def results
|
||||||
@_results ||= account_bookmarks.joins(:status).eager_load(:status).to_a_paginated_by_id(
|
@results ||= account_bookmarks.joins(:status).eager_load(:status).to_a_paginated_by_id(
|
||||||
limit_param(DEFAULT_STATUSES_LIMIT),
|
limit_param(DEFAULT_STATUSES_LIMIT),
|
||||||
params_slice(:max_id, :since_id, :min_id)
|
params_slice(:max_id, :since_id, :min_id)
|
||||||
)
|
)
|
||||||
|
|
|
@ -21,7 +21,7 @@ class Api::V1::FavouritesController < Api::BaseController
|
||||||
end
|
end
|
||||||
|
|
||||||
def results
|
def results
|
||||||
@_results ||= account_favourites.joins(:status).eager_load(:status).to_a_paginated_by_id(
|
@results ||= account_favourites.joins(:status).eager_load(:status).to_a_paginated_by_id(
|
||||||
limit_param(DEFAULT_STATUSES_LIMIT),
|
limit_param(DEFAULT_STATUSES_LIMIT),
|
||||||
params_slice(:max_id, :since_id, :min_id)
|
params_slice(:max_id, :since_id, :min_id)
|
||||||
)
|
)
|
||||||
|
|
|
@ -129,7 +129,7 @@ class Auth::SessionsController < Devise::SessionsController
|
||||||
redirect_to new_user_session_path, alert: I18n.t('devise.failure.timeout')
|
redirect_to new_user_session_path, alert: I18n.t('devise.failure.timeout')
|
||||||
end
|
end
|
||||||
|
|
||||||
def set_attempt_session(user)
|
def register_attempt_in_session(user)
|
||||||
session[:attempt_user_id] = user.id
|
session[:attempt_user_id] = user.id
|
||||||
session[:attempt_user_updated_at] = user.updated_at.to_s
|
session[:attempt_user_updated_at] = user.updated_at.to_s
|
||||||
end
|
end
|
||||||
|
|
|
@ -61,7 +61,7 @@ module RateLimitHeaders
|
||||||
end
|
end
|
||||||
|
|
||||||
def request_time
|
def request_time
|
||||||
@_request_time ||= Time.now.utc
|
@request_time ||= Time.now.utc
|
||||||
end
|
end
|
||||||
|
|
||||||
def reset_period_offset
|
def reset_period_offset
|
||||||
|
|
|
@ -75,7 +75,7 @@ module TwoFactorAuthenticationConcern
|
||||||
end
|
end
|
||||||
|
|
||||||
def prompt_for_two_factor(user)
|
def prompt_for_two_factor(user)
|
||||||
set_attempt_session(user)
|
register_attempt_in_session(user)
|
||||||
|
|
||||||
use_pack 'auth'
|
use_pack 'auth'
|
||||||
|
|
||||||
|
|
|
@ -541,7 +541,7 @@ ul.rules-list {
|
||||||
padding-top: 0;
|
padding-top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) {
|
@media only screen and (device-width >= 768px) and (device-width <= 1024px) and (orientation: landscape) {
|
||||||
body {
|
body {
|
||||||
min-height: 1024px !important;
|
min-height: 1024px !important;
|
||||||
}
|
}
|
||||||
|
|
|
@ -143,11 +143,11 @@ class ActivityPub::Activity
|
||||||
end
|
end
|
||||||
|
|
||||||
def follow_request_from_object
|
def follow_request_from_object
|
||||||
@follow_request ||= FollowRequest.find_by(target_account: @account, uri: object_uri) unless object_uri.nil?
|
@follow_request_from_object ||= FollowRequest.find_by(target_account: @account, uri: object_uri) unless object_uri.nil?
|
||||||
end
|
end
|
||||||
|
|
||||||
def follow_from_object
|
def follow_from_object
|
||||||
@follow ||= ::Follow.find_by(target_account: @account, uri: object_uri) unless object_uri.nil?
|
@follow_from_object ||= ::Follow.find_by(target_account: @account, uri: object_uri) unless object_uri.nil?
|
||||||
end
|
end
|
||||||
|
|
||||||
def fetch_remote_original_status
|
def fetch_remote_original_status
|
||||||
|
|
|
@ -53,7 +53,7 @@ class EmojiFormatter
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
result << Nokogiri::XML::Text.new(text[last_index..-1], tree.document)
|
result << Nokogiri::XML::Text.new(text[last_index..], tree.document)
|
||||||
node.replace(result)
|
node.replace(result)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -57,8 +57,8 @@ class TextFormatter
|
||||||
|
|
||||||
prefix = url.match(URL_PREFIX_REGEX).to_s
|
prefix = url.match(URL_PREFIX_REGEX).to_s
|
||||||
display_url = url[prefix.length, 30]
|
display_url = url[prefix.length, 30]
|
||||||
suffix = url[prefix.length + 30..-1]
|
suffix = url[prefix.length + 30..]
|
||||||
cutoff = url[prefix.length..-1].length > 30
|
cutoff = url[prefix.length..].length > 30
|
||||||
|
|
||||||
<<~HTML.squish.html_safe # rubocop:disable Rails/OutputSafety
|
<<~HTML.squish.html_safe # rubocop:disable Rails/OutputSafety
|
||||||
<a href="#{h(url)}" target="_blank" rel="#{rel.join(' ')}" translate="no"><span class="invisible">#{h(prefix)}</span><span class="#{cutoff ? 'ellipsis' : ''}">#{h(display_url)}</span><span class="invisible">#{h(suffix)}</span></a>
|
<a href="#{h(url)}" target="_blank" rel="#{rel.join(' ')}" translate="no"><span class="invisible">#{h(prefix)}</span><span class="#{cutoff ? 'ellipsis' : ''}">#{h(display_url)}</span><span class="invisible">#{h(suffix)}</span></a>
|
||||||
|
@ -84,7 +84,7 @@ class TextFormatter
|
||||||
indices.last
|
indices.last
|
||||||
end
|
end
|
||||||
|
|
||||||
result << h(text[last_index..-1])
|
result << h(text[last_index..])
|
||||||
|
|
||||||
result
|
result
|
||||||
end
|
end
|
||||||
|
|
|
@ -25,7 +25,7 @@ class AccountAlias < ApplicationRecord
|
||||||
|
|
||||||
def acct=(val)
|
def acct=(val)
|
||||||
val = val.to_s.strip
|
val = val.to_s.strip
|
||||||
super(val.start_with?('@') ? val[1..-1] : val)
|
super(val.start_with?('@') ? val[1..] : val)
|
||||||
end
|
end
|
||||||
|
|
||||||
def pretty_acct
|
def pretty_acct
|
||||||
|
|
|
@ -69,7 +69,7 @@ class DomainBlock < ApplicationRecord
|
||||||
|
|
||||||
uri = Addressable::URI.new.tap { |u| u.host = domain.strip.delete('/') }
|
uri = Addressable::URI.new.tap { |u| u.host = domain.strip.delete('/') }
|
||||||
segments = uri.normalized_host.split('.')
|
segments = uri.normalized_host.split('.')
|
||||||
variants = segments.map.with_index { |_, i| segments[i..-1].join('.') }
|
variants = segments.map.with_index { |_, i| segments[i..].join('.') }
|
||||||
|
|
||||||
where(domain: variants).order(Arel.sql('char_length(domain) desc')).first
|
where(domain: variants).order(Arel.sql('char_length(domain) desc')).first
|
||||||
rescue Addressable::URI::InvalidURIError, IDN::Idna::IdnaError
|
rescue Addressable::URI::InvalidURIError, IDN::Idna::IdnaError
|
||||||
|
|
|
@ -64,7 +64,7 @@ class EmailDomainBlock < ApplicationRecord
|
||||||
|
|
||||||
segments = uri.normalized_host.split('.')
|
segments = uri.normalized_host.split('.')
|
||||||
|
|
||||||
segments.map.with_index { |_, i| segments[i..-1].join('.') }
|
segments.map.with_index { |_, i| segments[i..].join('.') }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -54,6 +54,6 @@ class PreviewCardProvider < ApplicationRecord
|
||||||
|
|
||||||
def self.matching_domain(domain)
|
def self.matching_domain(domain)
|
||||||
segments = domain.split('.')
|
segments = domain.split('.')
|
||||||
where(domain: segments.map.with_index { |_, i| segments[i..-1].join('.') }).order(Arel.sql('char_length(domain) desc')).first
|
where(domain: segments.map.with_index { |_, i| segments[i..].join('.') }).order(Arel.sql('char_length(domain) desc')).first
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -68,12 +68,10 @@ class Trends::Query
|
||||||
alias to_a to_ary
|
alias to_a to_ary
|
||||||
|
|
||||||
def to_arel
|
def to_arel
|
||||||
tmp_ids = ids
|
if ids_for_key.empty?
|
||||||
|
|
||||||
if tmp_ids.empty?
|
|
||||||
klass.none
|
klass.none
|
||||||
else
|
else
|
||||||
scope = klass.joins("join unnest(array[#{tmp_ids.join(',')}]) with ordinality as x (id, ordering) on #{klass.table_name}.id = x.id").reorder('x.ordering')
|
scope = klass.joins(sanitized_join_sql).reorder('x.ordering')
|
||||||
scope = scope.offset(@offset) if @offset.present?
|
scope = scope.offset(@offset) if @offset.present?
|
||||||
scope = scope.limit(@limit) if @limit.present?
|
scope = scope.limit(@limit) if @limit.present?
|
||||||
scope
|
scope
|
||||||
|
@ -95,8 +93,22 @@ class Trends::Query
|
||||||
self
|
self
|
||||||
end
|
end
|
||||||
|
|
||||||
def ids
|
def ids_for_key
|
||||||
redis.zrevrange(key, 0, -1).map(&:to_i)
|
@ids_for_key ||= redis.zrevrange(key, 0, -1).map(&:to_i)
|
||||||
|
end
|
||||||
|
|
||||||
|
def sanitized_join_sql
|
||||||
|
ActiveRecord::Base.sanitize_sql_array(join_sql_array)
|
||||||
|
end
|
||||||
|
|
||||||
|
def join_sql_array
|
||||||
|
[join_sql_query, ids_for_key]
|
||||||
|
end
|
||||||
|
|
||||||
|
def join_sql_query
|
||||||
|
<<~SQL.squish
|
||||||
|
JOIN unnest(array[?]) WITH ordinality AS x (id, ordering) ON #{klass.table_name}.id = x.id
|
||||||
|
SQL
|
||||||
end
|
end
|
||||||
|
|
||||||
def perform_queries
|
def perform_queries
|
||||||
|
|
|
@ -63,7 +63,7 @@ class ResolveURLService < BaseService
|
||||||
end
|
end
|
||||||
|
|
||||||
def fetch_resource_service
|
def fetch_resource_service
|
||||||
@_fetch_resource_service ||= FetchResourceService.new
|
@fetch_resource_service ||= FetchResourceService.new
|
||||||
end
|
end
|
||||||
|
|
||||||
def resource_url
|
def resource_url
|
||||||
|
|
|
@ -82,7 +82,7 @@ class SearchService < BaseService
|
||||||
end
|
end
|
||||||
|
|
||||||
def url_resource
|
def url_resource
|
||||||
@_url_resource ||= ResolveURLService.new.call(@query, on_behalf_of: @account)
|
@url_resource ||= ResolveURLService.new.call(@query, on_behalf_of: @account)
|
||||||
end
|
end
|
||||||
|
|
||||||
def url_resource_symbol
|
def url_resource_symbol
|
||||||
|
|
|
@ -53,7 +53,7 @@ class StatusLengthValidator < ActiveModel::Validator
|
||||||
entity[:indices].last
|
entity[:indices].last
|
||||||
end
|
end
|
||||||
|
|
||||||
result << str[last_index..-1]
|
result << str[last_index..]
|
||||||
result
|
result
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
RSS::Builder.build do |doc|
|
RSS::Builder.build do |doc|
|
||||||
doc.title(display_name(@account))
|
doc.title(display_name(@account))
|
||||||
doc.description(I18n.t('rss.descriptions.account', acct: @account.local_username_and_domain))
|
doc.description(I18n.t('rss.descriptions.account', acct: @account.local_username_and_domain))
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
RSS::Builder.build do |doc|
|
RSS::Builder.build do |doc|
|
||||||
doc.title("##{@tag.display_name}")
|
doc.title("##{@tag.display_name}")
|
||||||
doc.description(I18n.t('rss.descriptions.tag', hashtag: @tag.display_name))
|
doc.description(I18n.t('rss.descriptions.tag', hashtag: @tag.display_name))
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
doc = Ox::Document.new(version: '1.0')
|
doc = Ox::Document.new(version: '1.0')
|
||||||
|
|
||||||
doc << Ox::Element.new('XRD').tap do |xrd|
|
doc << Ox::Element.new('XRD').tap do |xrd|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
require_relative 'boot'
|
require_relative 'boot'
|
||||||
|
|
||||||
require 'rails'
|
require 'rails'
|
||||||
|
@ -194,10 +196,10 @@ module Mastodon
|
||||||
config.to_prepare do
|
config.to_prepare do
|
||||||
Doorkeeper::AuthorizationsController.layout 'modal'
|
Doorkeeper::AuthorizationsController.layout 'modal'
|
||||||
Doorkeeper::AuthorizedApplicationsController.layout 'admin'
|
Doorkeeper::AuthorizedApplicationsController.layout 'admin'
|
||||||
Doorkeeper::Application.send :include, ApplicationExtension
|
Doorkeeper::Application.include ApplicationExtension
|
||||||
Doorkeeper::AccessToken.send :include, AccessTokenExtension
|
Doorkeeper::AccessToken.include AccessTokenExtension
|
||||||
Devise::FailureApp.send :include, AbstractController::Callbacks
|
Devise::FailureApp.include AbstractController::Callbacks
|
||||||
Devise::FailureApp.send :include, Localized
|
Devise::FailureApp.include Localized
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
unless ENV.key?('RAILS_ENV')
|
unless ENV.key?('RAILS_ENV')
|
||||||
STDERR.puts 'ERROR: Missing RAILS_ENV environment variable, please set it to "production", "development", or "test".'
|
STDERR.puts 'ERROR: Missing RAILS_ENV environment variable, please set it to "production", "development", or "test".'
|
||||||
exit 1
|
exit 1
|
||||||
|
|
|
@ -23,29 +23,6 @@
|
||||||
],
|
],
|
||||||
"note": ""
|
"note": ""
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"warning_type": "SQL Injection",
|
|
||||||
"warning_code": 0,
|
|
||||||
"fingerprint": "30dfe36e87fe1b8f239df9a33d576e44a9863f73b680198d4713be6540ae61d3",
|
|
||||||
"check_name": "SQL",
|
|
||||||
"message": "Possible SQL injection",
|
|
||||||
"file": "app/models/trends/query.rb",
|
|
||||||
"line": 76,
|
|
||||||
"link": "https://brakemanscanner.org/docs/warning_types/sql_injection/",
|
|
||||||
"code": "klass.joins(\"join unnest(array[#{ids.join(\",\")}]) with ordinality as x (id, ordering) on #{klass.table_name}.id = x.id\")",
|
|
||||||
"render_path": null,
|
|
||||||
"location": {
|
|
||||||
"type": "method",
|
|
||||||
"class": "Trends::Query",
|
|
||||||
"method": "to_arel"
|
|
||||||
},
|
|
||||||
"user_input": "ids.join(\",\")",
|
|
||||||
"confidence": "Weak",
|
|
||||||
"cwe_id": [
|
|
||||||
89
|
|
||||||
],
|
|
||||||
"note": ""
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"warning_type": "Cross-Site Scripting",
|
"warning_type": "Cross-Site Scripting",
|
||||||
"warning_code": 2,
|
"warning_code": 2,
|
||||||
|
@ -79,29 +56,6 @@
|
||||||
],
|
],
|
||||||
"note": ""
|
"note": ""
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"warning_type": "SQL Injection",
|
|
||||||
"warning_code": 0,
|
|
||||||
"fingerprint": "75fcd147b7611763ab6915faf8c5b0709e612b460f27c05c72d8b9bd0a6a77f8",
|
|
||||||
"check_name": "SQL",
|
|
||||||
"message": "Possible SQL injection",
|
|
||||||
"file": "lib/mastodon/snowflake.rb",
|
|
||||||
"line": 87,
|
|
||||||
"link": "https://brakemanscanner.org/docs/warning_types/sql_injection/",
|
|
||||||
"code": "connection.execute(\"CREATE OR REPLACE FUNCTION timestamp_id(table_name text)\\nRETURNS bigint AS\\n$$\\n DECLARE\\n time_part bigint;\\n sequence_base bigint;\\n tail bigint;\\n BEGIN\\n time_part := (\\n -- Get the time in milliseconds\\n ((date_part('epoch', now()) * 1000))::bigint\\n -- And shift it over two bytes\\n << 16);\\n\\n sequence_base := (\\n 'x' ||\\n -- Take the first two bytes (four hex characters)\\n substr(\\n -- Of the MD5 hash of the data we documented\\n md5(table_name || '#{SecureRandom.hex(16)}' || time_part::text),\\n 1, 4\\n )\\n -- And turn it into a bigint\\n )::bit(16)::bigint;\\n\\n -- Finally, add our sequence number to our base, and chop\\n -- it to the last two bytes\\n tail := (\\n (sequence_base + nextval(table_name || '_id_seq'))\\n & 65535);\\n\\n -- Return the time part and the sequence part. OR appears\\n -- faster here than addition, but they're equivalent:\\n -- time_part has no trailing two bytes, and tail is only\\n -- the last two bytes.\\n RETURN time_part | tail;\\n END\\n$$ LANGUAGE plpgsql VOLATILE;\\n\")",
|
|
||||||
"render_path": null,
|
|
||||||
"location": {
|
|
||||||
"type": "method",
|
|
||||||
"class": "Mastodon::Snowflake",
|
|
||||||
"method": "define_timestamp_id"
|
|
||||||
},
|
|
||||||
"user_input": "SecureRandom.hex(16)",
|
|
||||||
"confidence": "Medium",
|
|
||||||
"cwe_id": [
|
|
||||||
89
|
|
||||||
],
|
|
||||||
"note": ""
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"warning_type": "Denial of Service",
|
"warning_type": "Denial of Service",
|
||||||
"warning_code": 76,
|
"warning_code": 76,
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Load the Rails application.
|
# Load the Rails application.
|
||||||
require_relative 'application'
|
require_relative 'application'
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
Rails.application.configure do
|
Rails.application.configure do
|
||||||
# Settings specified here will take precedence over those in config/application.rb.
|
# Settings specified here will take precedence over those in config/application.rb.
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
Rails.application.configure do
|
Rails.application.configure do
|
||||||
# Settings specified here will take precedence over those in config/application.rb.
|
# Settings specified here will take precedence over those in config/application.rb.
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
Rails.application.configure do
|
Rails.application.configure do
|
||||||
# Settings specified here will take precedence over those in config/application.rb.
|
# Settings specified here will take precedence over those in config/application.rb.
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Post deployment migrations are included by default. This file must be loaded
|
# Post deployment migrations are included by default. This file must be loaded
|
||||||
# before other initializers as Rails may otherwise memoize a list of migrations
|
# before other initializers as Rails may otherwise memoize a list of migrations
|
||||||
# excluding the post deployment migrations.
|
# excluding the post deployment migrations.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
ActiveModelSerializers.config.tap do |config|
|
ActiveModelSerializers.config.tap do |config|
|
||||||
config.default_includes = '**'
|
config.default_includes = '**'
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
# ActiveSupport::Reloader.to_prepare do
|
# ActiveSupport::Reloader.to_prepare do
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
# Version of your assets, change this if you want to expire all your assets.
|
# Version of your assets, change this if you want to expire all your assets.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
# You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
|
# You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Log cache errors with Rail's logger
|
# Log cache errors with Rail's logger
|
||||||
# This used to be the default in old Rails versions: https://github.com/rails/rails/commit/7fcf8590e788cef8b64cc266f75931c418902ca9#diff-f0748f0be8a653eea13369ebb1cadabcad71ede7cfaf20282447e64329817befL86
|
# This used to be the default in old Rails versions: https://github.com/rails/rails/commit/7fcf8590e788cef8b64cc266f75931c418902ca9#diff-f0748f0be8a653eea13369ebb1cadabcad71ede7cfaf20282447e64329817befL86
|
||||||
Rails.cache.logger = Rails.logger
|
Rails.cache.logger = Rails.logger
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
enabled = ENV['ES_ENABLED'] == 'true'
|
enabled = ENV['ES_ENABLED'] == 'true'
|
||||||
host = ENV.fetch('ES_HOST') { 'localhost' }
|
host = ENV.fetch('ES_HOST') { 'localhost' }
|
||||||
port = ENV.fetch('ES_PORT') { 9200 }
|
port = ENV.fetch('ES_PORT') { 9200 }
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Define an application-wide content security policy
|
# Define an application-wide content security policy
|
||||||
# For further information see the following documentation
|
# For further information see the following documentation
|
||||||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy
|
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
# Specify a serializer for the signed and encrypted cookie jars.
|
# Specify a serializer for the signed and encrypted cookie jars.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
# Avoid CORS issues when API is called from the frontend app.
|
# Avoid CORS issues when API is called from the frontend app.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
require 'devise/strategies/authenticatable'
|
require 'devise/strategies/authenticatable'
|
||||||
|
|
||||||
Warden::Manager.after_set_user except: :fetch do |user, warden|
|
Warden::Manager.after_set_user except: :fetch do |user, warden|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
Doorkeeper.configure do
|
Doorkeeper.configure do
|
||||||
# Change the ORM that doorkeeper will use (needs plugins)
|
# Change the ORM that doorkeeper will use (needs plugins)
|
||||||
orm :active_record
|
orm :active_record
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
if String.method_defined?(:blank_as?)
|
if String.method_defined?(:blank_as?)
|
||||||
class String
|
class String
|
||||||
alias blank? blank_as?
|
alias blank? blank_as?
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
if ENV['FFMPEG_BINARY'].present?
|
if ENV['FFMPEG_BINARY'].present?
|
||||||
FFMPEG.ffmpeg_binary = ENV['FFMPEG_BINARY']
|
FFMPEG.ffmpeg_binary = ENV['FFMPEG_BINARY']
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
# Configure sensitive parameters which will be filtered from the log file.
|
# Configure sensitive parameters which will be filtered from the log file.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
Rails.application.configure do
|
Rails.application.configure do
|
||||||
config.x.http_client_proxy = {}
|
config.x.http_client_proxy = {}
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
HttpLog.configure do |config|
|
HttpLog.configure do |config|
|
||||||
config.logger = Rails.logger
|
config.logger = Rails.logger
|
||||||
config.color = { color: :yellow }
|
config.color = { color: :yellow }
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
# Add new inflection rules using the following format. Inflections
|
# Add new inflection rules using the following format. Inflections
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
ActionMailer::MailDeliveryJob.class_eval do
|
ActionMailer::MailDeliveryJob.class_eval do
|
||||||
discard_on ActiveJob::DeserializationError
|
discard_on ActiveJob::DeserializationError
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
Mime::Type.register 'application/json', :json, %w(text/x-json application/jsonrequest application/jrd+json application/activity+json application/ld+json)
|
Mime::Type.register 'application/json', :json, %w(text/x-json application/jsonrequest application/jrd+json application/activity+json application/ld+json)
|
||||||
|
|
|
@ -1 +1,3 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
Oj.default_options = { mode: :compat, time_format: :ruby, use_to_json: true }
|
Oj.default_options = { mode: :compat, time_format: :ruby, use_to_json: true }
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
Rails.application.config.middleware.use OmniAuth::Builder do
|
Rails.application.config.middleware.use OmniAuth::Builder do
|
||||||
# Vanilla omniauth strategies
|
# Vanilla omniauth strategies
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
require 'open-uri'
|
require 'open-uri'
|
||||||
|
|
||||||
module OpenURI
|
module OpenURI
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
# Define an application-wide HTTP permissions policy. For further
|
# Define an application-wide HTTP permissions policy. For further
|
||||||
# information see https://developers.google.com/web/updates/2018/06/feature-policy
|
# information see https://developers.google.com/web/updates/2018/06/feature-policy
|
||||||
#
|
#
|
||||||
|
|
|
@ -1 +1,3 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
PgHero.show_migrations = Rails.env.development?
|
PgHero.show_migrations = Rails.env.development?
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Since Rails 6.1, ActionView adds preload links for javascript files
|
# Since Rails 6.1, ActionView adds preload links for javascript files
|
||||||
# in the Links header per default.
|
# in the Links header per default.
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
require_relative '../../lib/mastodon/premailer_webpack_strategy'
|
require_relative '../../lib/mastodon/premailer_webpack_strategy'
|
||||||
|
|
||||||
Premailer::Rails.config.merge!(remove_ids: true,
|
Premailer::Rails.config.merge!(remove_ids: true,
|
||||||
|
|
|
@ -5,9 +5,9 @@ require 'doorkeeper/grape/authorization_decorator'
|
||||||
class Rack::Attack
|
class Rack::Attack
|
||||||
class Request
|
class Request
|
||||||
def authenticated_token
|
def authenticated_token
|
||||||
return @token if defined?(@token)
|
return @authenticated_token if defined?(@authenticated_token)
|
||||||
|
|
||||||
@token = Doorkeeper::OAuth::Token.authenticate(
|
@authenticated_token = Doorkeeper::OAuth::Token.authenticate(
|
||||||
Doorkeeper::Grape::AuthorizationDecorator.new(self),
|
Doorkeeper::Grape::AuthorizationDecorator.new(self),
|
||||||
*Doorkeeper.configuration.access_token_methods
|
*Doorkeeper.configuration.access_token_methods
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
ActiveSupport::Notifications.subscribe(/rack_attack/) do |_name, _start, _finish, _request_id, payload|
|
ActiveSupport::Notifications.subscribe(/rack_attack/) do |_name, _start, _finish, _request_id, payload|
|
||||||
req = payload[:request]
|
req = payload[:request]
|
||||||
|
|
||||||
|
|
|
@ -1 +1,3 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
Redis.sadd_returns_boolean = false
|
Redis.sadd_returns_boolean = false
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
Rails.application.config.session_store :cookie_store,
|
Rails.application.config.session_store :cookie_store,
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Use this setup block to configure all options available in SimpleForm.
|
# Use this setup block to configure all options available in SimpleForm.
|
||||||
|
|
||||||
module AppendComponent
|
module AppendComponent
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
require 'stoplight'
|
require 'stoplight'
|
||||||
|
|
||||||
Rails.application.reloader.to_prepare do
|
Rails.application.reloader.to_prepare do
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
module Rack
|
module Rack
|
||||||
class Request
|
class Request
|
||||||
def trusted_proxy?(ip)
|
def trusted_proxy?(ip)
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
module Twitter::TwitterText
|
module Twitter::TwitterText
|
||||||
class Configuration
|
class Configuration
|
||||||
def emoji_parsing_enabled
|
def emoji_parsing_enabled
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
WebAuthn.configure do |config|
|
WebAuthn.configure do |config|
|
||||||
# This value needs to match `window.location.origin` evaluated by
|
# This value needs to match `window.location.origin` evaluated by
|
||||||
# the User Agent during registration and authentication ceremonies.
|
# the User Agent during registration and authentication ceremonies.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
# This file contains settings for ActionController::ParamsWrapper which
|
# This file contains settings for ActionController::ParamsWrapper which
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
require 'rails_i18n/common_pluralizations/romanian'
|
require 'rails_i18n/common_pluralizations/romanian'
|
||||||
|
|
||||||
::RailsI18n::Pluralization::Romanian.with_locale(:'sr-Latn')
|
::RailsI18n::Pluralization::Romanian.with_locale(:'sr-Latn')
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
require 'rails_i18n/common_pluralizations/romanian'
|
require 'rails_i18n/common_pluralizations/romanian'
|
||||||
|
|
||||||
::RailsI18n::Pluralization::Romanian.with_locale(:sr)
|
::RailsI18n::Pluralization::Romanian.with_locale(:sr)
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
persistent_timeout ENV.fetch('PERSISTENT_TIMEOUT') { 20 }.to_i
|
persistent_timeout ENV.fetch('PERSISTENT_TIMEOUT') { 20 }.to_i
|
||||||
|
|
||||||
max_threads_count = ENV.fetch('MAX_THREADS') { 5 }.to_i
|
max_threads_count = ENV.fetch('MAX_THREADS') { 5 }.to_i
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateAccounts < ActiveRecord::Migration[4.2]
|
class CreateAccounts < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
create_table :accounts do |t|
|
create_table :accounts do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateStatuses < ActiveRecord::Migration[4.2]
|
class CreateStatuses < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
create_table :statuses do |t|
|
create_table :statuses do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateUsers < ActiveRecord::Migration[4.2]
|
class CreateUsers < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
create_table :users do |t|
|
create_table :users do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateFollows < ActiveRecord::Migration[4.2]
|
class CreateFollows < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
create_table :follows do |t|
|
create_table :follows do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateStreamEntries < ActiveRecord::Migration[4.2]
|
class CreateStreamEntries < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
create_table :stream_entries do |t|
|
create_table :stream_entries do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddProfileFieldsToAccounts < ActiveRecord::Migration[4.2]
|
class AddProfileFieldsToAccounts < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
add_column :accounts, :note, :text, null: false, default: ''
|
add_column :accounts, :note, :text, null: false, default: ''
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddMetadataToStatuses < ActiveRecord::Migration[4.2]
|
class AddMetadataToStatuses < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
add_column :statuses, :in_reply_to_id, :integer, null: true
|
add_column :statuses, :in_reply_to_id, :integer, null: true
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class MakeUrisNullableInStatuses < ActiveRecord::Migration[4.2]
|
class MakeUrisNullableInStatuses < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
change_column :statuses, :uri, :string, null: true, default: nil
|
change_column :statuses, :uri, :string, null: true, default: nil
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddURLToStatuses < ActiveRecord::Migration[4.2]
|
class AddURLToStatuses < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
add_column :statuses, :url, :string, null: true, default: nil
|
add_column :statuses, :url, :string, null: true, default: nil
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddURLToAccounts < ActiveRecord::Migration[4.2]
|
class AddURLToAccounts < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
add_column :accounts, :url, :string, null: true, default: nil
|
add_column :accounts, :url, :string, null: true, default: nil
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateFavourites < ActiveRecord::Migration[4.2]
|
class CreateFavourites < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
create_table :favourites do |t|
|
create_table :favourites do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateMentions < ActiveRecord::Migration[4.2]
|
class CreateMentions < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
create_table :mentions do |t|
|
create_table :mentions do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddAttachmentAvatarToAccounts < ActiveRecord::Migration[4.2]
|
class AddAttachmentAvatarToAccounts < ActiveRecord::Migration[4.2]
|
||||||
def self.up
|
def self.up
|
||||||
change_table :accounts do |t|
|
change_table :accounts do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddDeviseToUsers < ActiveRecord::Migration[4.2]
|
class AddDeviseToUsers < ActiveRecord::Migration[4.2]
|
||||||
def self.up
|
def self.up
|
||||||
change_table(:users) do |t|
|
change_table(:users) do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateDoorkeeperTables < ActiveRecord::Migration[4.2]
|
class CreateDoorkeeperTables < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
create_table :oauth_applications do |t|
|
create_table :oauth_applications do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddAttachmentHeaderToAccounts < ActiveRecord::Migration[4.2]
|
class AddAttachmentHeaderToAccounts < ActiveRecord::Migration[4.2]
|
||||||
def self.up
|
def self.up
|
||||||
change_table :accounts do |t|
|
change_table :accounts do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddOwnerToApplication < ActiveRecord::Migration[4.2]
|
class AddOwnerToApplication < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
add_column :oauth_applications, :owner_id, :integer, null: true
|
add_column :oauth_applications, :owner_id, :integer, null: true
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddMissingIndices < ActiveRecord::Migration[4.2]
|
class AddMissingIndices < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
add_index :users, :account_id
|
add_index :users, :account_id
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddAvatarRemoteURLToAccounts < ActiveRecord::Migration[4.2]
|
class AddAvatarRemoteURLToAccounts < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
add_column :accounts, :avatar_remote_url, :string, null: true, default: nil
|
add_column :accounts, :avatar_remote_url, :string, null: true, default: nil
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddAdminToUsers < ActiveRecord::Migration[4.2]
|
class AddAdminToUsers < ActiveRecord::Migration[4.2]
|
||||||
def change
|
def change
|
||||||
add_column :users, :admin, :boolean, default: false
|
add_column :users, :admin, :boolean, default: false
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddSuperappToOauthApplications < ActiveRecord::Migration[5.0]
|
class AddSuperappToOauthApplications < ActiveRecord::Migration[5.0]
|
||||||
def change
|
def change
|
||||||
add_column :oauth_applications, :superapp, :boolean, default: false, null: false
|
add_column :oauth_applications, :superapp, :boolean, default: false, null: false
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateMediaAttachments < ActiveRecord::Migration[5.0]
|
class CreateMediaAttachments < ActiveRecord::Migration[5.0]
|
||||||
def change
|
def change
|
||||||
create_table :media_attachments do |t|
|
create_table :media_attachments do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddSubscriptionExpiresAtToAccounts < ActiveRecord::Migration[5.0]
|
class AddSubscriptionExpiresAtToAccounts < ActiveRecord::Migration[5.0]
|
||||||
def change
|
def change
|
||||||
add_column :accounts, :subscription_expires_at, :datetime, null: true, default: nil
|
add_column :accounts, :subscription_expires_at, :datetime, null: true, default: nil
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class RemoveVerifyTokenFromAccounts < ActiveRecord::Migration[5.0]
|
class RemoveVerifyTokenFromAccounts < ActiveRecord::Migration[5.0]
|
||||||
def change
|
def change
|
||||||
remove_column :accounts, :verify_token, :string, null: false, default: ''
|
remove_column :accounts, :verify_token, :string, null: false, default: ''
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class RemoveOwnerFromApplication < ActiveRecord::Migration[5.0]
|
class RemoveOwnerFromApplication < ActiveRecord::Migration[5.0]
|
||||||
def change
|
def change
|
||||||
remove_index :oauth_applications, [:owner_id, :owner_type]
|
remove_index :oauth_applications, [:owner_id, :owner_type]
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class AddConfirmableToUsers < ActiveRecord::Migration[5.0]
|
class AddConfirmableToUsers < ActiveRecord::Migration[5.0]
|
||||||
def change
|
def change
|
||||||
add_column :users, :confirmation_token, :string
|
add_column :users, :confirmation_token, :string
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
class CreateBlocks < ActiveRecord::Migration[5.0]
|
class CreateBlocks < ActiveRecord::Migration[5.0]
|
||||||
def change
|
def change
|
||||||
create_table :blocks do |t|
|
create_table :blocks do |t|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
MIGRATION_BASE_CLASS = if ActiveRecord::VERSION::MAJOR >= 5
|
MIGRATION_BASE_CLASS = if ActiveRecord::VERSION::MAJOR >= 5
|
||||||
ActiveRecord::Migration[5.0]
|
ActiveRecord::Migration[5.0]
|
||||||
else
|
else
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue