From 393e85164980b945ad9bdfda8e906e128f5700a3 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 12 Dec 2023 13:00:23 +0100 Subject: [PATCH 1/7] Change Rails' cache format to 7.0 (#27393) --- config/application.rb | 7 ------- 1 file changed, 7 deletions(-) diff --git a/config/application.rb b/config/application.rb index b6426516ee..990a89383e 100644 --- a/config/application.rb +++ b/config/application.rb @@ -63,13 +63,6 @@ module Mastodon # Initialize configuration defaults for originally generated Rails version. config.load_defaults 7.0 - # TODO: Release a version which uses the 7.0 defaults as specified above, - # but preserves the 6.1 cache format as set below. In a subsequent change, - # remove this line setting to 6.1 cache format, and then release another version. - # https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#new-activesupport-cache-serialization-format - # https://github.com/mastodon/mastodon/pull/24241#discussion_r1162890242 - config.active_support.cache_format_version = 6.1 - # Please, add to the `ignore` list any other `lib` subdirectories that do # not contain `.rb` files, or that should not be reloaded or eager loaded. # Common ones are `templates`, `generators`, or `middleware`, for example. From f37c93f3d76bcc83f20b83cfc121ff5a08d43706 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 12 Dec 2023 13:01:08 +0100 Subject: [PATCH 2/7] Change cookie rotator to use SHA1 digest for new cookies (#27392) --- config/initializers/cookie_rotator.rb | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/config/initializers/cookie_rotator.rb b/config/initializers/cookie_rotator.rb index b829b1a90b..ccc2c6b21f 100644 --- a/config/initializers/cookie_rotator.rb +++ b/config/initializers/cookie_rotator.rb @@ -1,9 +1,6 @@ # frozen_string_literal: true -# TODO: Remove after 4.2.0 -Rails.application.configure do - config.active_support.key_generator_hash_digest_class = OpenSSL::Digest::SHA1 -end +# TODO: remove this file some time after 4.3.0 Rails.application.config.after_initialize do Rails.application.config.action_dispatch.cookies_rotations.tap do |cookies| @@ -12,9 +9,8 @@ Rails.application.config.after_initialize do secret_key_base = Rails.application.secret_key_base - # TODO: Switch to SHA1 after 4.2.0 key_generator = ActiveSupport::KeyGenerator.new( - secret_key_base, iterations: 1000, hash_digest_class: OpenSSL::Digest::SHA256 + secret_key_base, iterations: 1000, hash_digest_class: OpenSSL::Digest::SHA1 ) key_len = ActiveSupport::MessageEncryptor.key_len From db3220ff77b828870fcb21e0b50a12da0e19b2e6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Dec 2023 15:18:30 +0100 Subject: [PATCH 3/7] Update dependency rubocop to v1.59.0 (#28320) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Gemfile.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 405c31ae1a..378102437a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -381,7 +381,7 @@ GEM rdoc reline (>= 0.3.8) jmespath (1.6.2) - json (2.7.0) + json (2.7.1) json-canonicalization (1.0.0) json-jwt (1.15.3) activesupport (>= 4.2) @@ -622,7 +622,7 @@ GEM redis (>= 4) redlock (1.3.2) redis (>= 3.0.0, < 6.0) - regexp_parser (2.8.2) + regexp_parser (2.8.3) reline (0.4.1) io-console (~> 0.5) request_store (1.5.1) @@ -662,7 +662,7 @@ GEM rspec-mocks (~> 3.0) sidekiq (>= 5, < 8) rspec-support (3.12.1) - rubocop (1.58.0) + rubocop (1.59.0) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) From 3f1ec16377c11d2d7a48ccc735ed87d6619f6275 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 12 Dec 2023 15:31:37 +0100 Subject: [PATCH 4/7] Fix empty column explainer getting cropped under certain conditions (#28337) --- app/javascript/styles/mastodon/components.scss | 5 ----- 1 file changed, 5 deletions(-) diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index 2106b529d6..462dd82ac0 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -4398,11 +4398,6 @@ a.status-card { align-items: center; justify-content: center; - @supports (display: grid) { - // hack to fix Chrome <57 - contain: strict; - } - & > span { max-width: 500px; } From dcc24db793dc926823439b81839be1a3bc8e29d3 Mon Sep 17 00:00:00 2001 From: Claire Date: Wed, 13 Dec 2023 08:47:32 +0100 Subject: [PATCH 5/7] Fix N+1s because of association preloaders not actually getting called (#28339) --- app/lib/inline_renderer.rb | 4 ++-- app/models/announcement.rb | 4 ++-- app/models/concerns/account/search.rb | 4 ++-- app/models/notification.rb | 2 +- app/serializers/initial_state_serializer.rb | 4 ++-- app/services/account_search_service.rb | 2 +- app/services/batched_remove_status_service.rb | 4 ++-- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/lib/inline_renderer.rb b/app/lib/inline_renderer.rb index eda3da2c29..0aebb13fce 100644 --- a/app/lib/inline_renderer.rb +++ b/app/lib/inline_renderer.rb @@ -37,13 +37,13 @@ class InlineRenderer private def preload_associations_for_status - ActiveRecord::Associations::Preloader.new(records: @object, associations: { + ActiveRecord::Associations::Preloader.new(records: [@object], associations: { active_mentions: :account, reblog: { active_mentions: :account, }, - }) + }).call end def current_user diff --git a/app/models/announcement.rb b/app/models/announcement.rb index c5d6dd62e1..2cd7c1d5ed 100644 --- a/app/models/announcement.rb +++ b/app/models/announcement.rb @@ -78,9 +78,9 @@ class Announcement < ApplicationRecord else scope.select("name, custom_emoji_id, count(*) as count, exists(select 1 from announcement_reactions r where r.account_id = #{account.id} and r.announcement_id = announcement_reactions.announcement_id and r.name = announcement_reactions.name) as me") end - end + end.to_a - ActiveRecord::Associations::Preloader.new(records: records, associations: :custom_emoji) + ActiveRecord::Associations::Preloader.new(records: records, associations: :custom_emoji).call records end diff --git a/app/models/concerns/account/search.rb b/app/models/concerns/account/search.rb index b02b9bd461..40d87aaaa1 100644 --- a/app/models/concerns/account/search.rb +++ b/app/models/concerns/account/search.rb @@ -124,7 +124,7 @@ module Account::Search tsquery = generate_query_for_search(terms) find_by_sql([BASIC_SEARCH_SQL, { limit: limit, offset: offset, tsquery: tsquery }]).tap do |records| - ActiveRecord::Associations::Preloader.new(records: records, associations: :account_stat) + ActiveRecord::Associations::Preloader.new(records: records, associations: [:account_stat, { user: :role }]).call end end @@ -133,7 +133,7 @@ module Account::Search sql_template = following ? ADVANCED_SEARCH_WITH_FOLLOWING : ADVANCED_SEARCH_WITHOUT_FOLLOWING find_by_sql([sql_template, { id: account.id, limit: limit, offset: offset, tsquery: tsquery }]).tap do |records| - ActiveRecord::Associations::Preloader.new(records: records, associations: :account_stat) + ActiveRecord::Associations::Preloader.new(records: records, associations: [:account_stat, { user: :role }]).call end end diff --git a/app/models/notification.rb b/app/models/notification.rb index 60f834a633..54212d675f 100644 --- a/app/models/notification.rb +++ b/app/models/notification.rb @@ -111,7 +111,7 @@ class Notification < ApplicationRecord # Instead of using the usual `includes`, manually preload each type. # If polymorphic associations are loaded with the usual `includes`, other types of associations will be loaded more. - ActiveRecord::Associations::Preloader.new(records: grouped_notifications, associations: associations) + ActiveRecord::Associations::Preloader.new(records: grouped_notifications, associations: associations).call end unique_target_statuses = notifications.filter_map(&:target_status).uniq diff --git a/app/serializers/initial_state_serializer.rb b/app/serializers/initial_state_serializer.rb index a8af45990f..f606836ba4 100644 --- a/app/serializers/initial_state_serializer.rb +++ b/app/serializers/initial_state_serializer.rb @@ -86,8 +86,8 @@ class InitialStateSerializer < ActiveModel::Serializer ActiveRecord::Associations::Preloader.new( records: [object.current_account, object.admin, object.owner, object.disabled_account, object.moved_to_account].compact, - associations: [:account_stat, :user, { moved_to_account: [:account_stat, :user] }] - ) + associations: [:account_stat, { user: :role, moved_to_account: [:account_stat, { user: :role }] }] + ).call store[object.current_account.id.to_s] = serialized_account(object.current_account) if object.current_account store[object.admin.id.to_s] = serialized_account(object.admin) if object.admin diff --git a/app/services/account_search_service.rb b/app/services/account_search_service.rb index b437ff4759..7b85b09d8f 100644 --- a/app/services/account_search_service.rb +++ b/app/services/account_search_service.rb @@ -218,7 +218,7 @@ class AccountSearchService < BaseService records = query_builder.build.limit(limit_for_non_exact_results).offset(offset).objects.compact - ActiveRecord::Associations::Preloader.new(records: records, associations: :account_stat) + ActiveRecord::Associations::Preloader.new(records: records, associations: [:account_stat, { user: :role }]).call records rescue Faraday::ConnectionFailed, Parslet::ParseFailed diff --git a/app/services/batched_remove_status_service.rb b/app/services/batched_remove_status_service.rb index c54cc1d350..de4ee16e91 100644 --- a/app/services/batched_remove_status_service.rb +++ b/app/services/batched_remove_status_service.rb @@ -11,7 +11,7 @@ class BatchedRemoveStatusService < BaseService ActiveRecord::Associations::Preloader.new( records: statuses, associations: options[:skip_side_effects] ? :reblogs : [:account, :tags, reblogs: :account] - ) + ).call statuses_and_reblogs = statuses.flat_map { |status| [status] + status.reblogs } @@ -23,7 +23,7 @@ class BatchedRemoveStatusService < BaseService ActiveRecord::Associations::Preloader.new( records: statuses_with_account_conversations, associations: [mentions: :account] - ) + ).call statuses_with_account_conversations.each(&:unlink_from_conversations!) From aae4b5644f0fb02ce811f8f9a13d0965621d05a2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 13 Dec 2023 10:52:33 +0100 Subject: [PATCH 6/7] Update dependency haml_lint to v0.52.0 (#28345) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Gemfile.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 378102437a..07b1a4bbe3 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -326,7 +326,7 @@ GEM ruby-progressbar (~> 1.4) globalid (1.2.1) activesupport (>= 6.1) - haml (6.2.0) + haml (6.3.0) temple (>= 0.8.2) thor tilt @@ -335,7 +335,7 @@ GEM activesupport (>= 5.1) haml (>= 4.0.6) railties (>= 5.1) - haml_lint (0.51.0) + haml_lint (0.52.0) haml (>= 4.0) parallel (~> 1.10) rainbow From b2f915b31ae884e3893e93a99da4e2b8d7e9ef7b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 13 Dec 2023 10:52:37 +0100 Subject: [PATCH 7/7] New Crowdin Translations (automated) (#28344) Co-authored-by: GitHub Actions --- app/javascript/mastodon/locales/et.json | 1 + app/javascript/mastodon/locales/ja.json | 23 ++++++++++---------- app/javascript/mastodon/locales/ne.json | 29 ++++++++++++++++++++++++- config/locales/et.yml | 29 +++++++++++++++++++++++++ config/locales/ja.yml | 2 +- 5 files changed, 71 insertions(+), 13 deletions(-) diff --git a/app/javascript/mastodon/locales/et.json b/app/javascript/mastodon/locales/et.json index a67aa6feed..a41aa02f80 100644 --- a/app/javascript/mastodon/locales/et.json +++ b/app/javascript/mastodon/locales/et.json @@ -606,6 +606,7 @@ "search.quick_action.status_search": "Sobivad postitused {x}", "search.search_or_paste": "Otsi või kleebi URL", "search_popout.full_text_search_disabled_message": "Pole saadaval kohas {domain}.", + "search_popout.full_text_search_logged_out_message": "Saadaval vaid kui sisse logitud.", "search_popout.language_code": "Keele ISO-kood", "search_popout.options": "Otsimisvalikud", "search_popout.quick_actions": "Kiirtegevused", diff --git a/app/javascript/mastodon/locales/ja.json b/app/javascript/mastodon/locales/ja.json index 3cb0565d0e..5ad9d6dc94 100644 --- a/app/javascript/mastodon/locales/ja.json +++ b/app/javascript/mastodon/locales/ja.json @@ -21,7 +21,7 @@ "account.blocked": "ブロック済み", "account.browse_more_on_origin_server": "リモートで表示", "account.cancel_follow_request": "フォローリクエストの取り消し", - "account.copy": "プロフィールのリンクをコピーして下さい", + "account.copy": "プロフィールへのリンクをコピー", "account.direct": "@{name}さんに非公開でメンション", "account.disable_notifications": "@{name}さんの投稿時の通知を停止", "account.domain_blocked": "ドメインブロック中", @@ -192,7 +192,7 @@ "conversation.mark_as_read": "既読にする", "conversation.open": "会話を表示", "conversation.with": "{names}", - "copy_icon_button.copied": "クリップボードにコピーされた", + "copy_icon_button.copied": "コピーしました", "copypaste.copied": "コピーしました", "copypaste.copy_to_clipboard": "クリップボードにコピー", "directory.federated": "既知の連合より", @@ -392,7 +392,7 @@ "lists.search": "フォローしている人の中から検索", "lists.subheading": "あなたのリスト", "load_pending": "{count}件の新着", - "loading_indicator.label": "", + "loading_indicator.label": "読み込み中…", "media_gallery.toggle_visible": "{number, plural, one {画像を閉じる} other {画像を閉じる}}", "moved_to_account_banner.text": "あなたのアカウント『{disabledAccount}』は『{movedToAccount}』に移動したため現在無効になっています。", "mute_modal.duration": "ミュートする期間", @@ -481,17 +481,17 @@ "onboarding.follows.empty": "表示できる結果はありません。検索やエクスプローラーを使ったり、ほかのアカウントをフォローしたり、後でもう一度試しください。", "onboarding.follows.lead": "ホームタイムラインはMastodonの軸足となる場所です。たくさんのユーザーをフォローすることで、ホームタイムラインはよりにぎやかでおもしろいものになります。手はじめに、おすすめのアカウントから何人かフォローしてみましょう:", "onboarding.follows.title": "ホームタイムラインを埋める", - "onboarding.profile.discoverable": "自分のプロフィールが発見できないようにする", - "onboarding.profile.discoverable_hint": "マストドンの見つけやすくする機能が個人情報を利用することに承諾すると、あなたの投稿が検索結果やトレンドに表示されることがあります。また、あなたのプロフィールがあなたと似た興味関心を持つ人に提案されることがあります。", + "onboarding.profile.discoverable": "自分のプロフィールが見つけられるようにする", + "onboarding.profile.discoverable_hint": "Mastodonの「見つける」機能にオプトインすると、あなたの投稿が検索結果やトレンドに表示されることがあります。また、あなたに似た関心を持つ人にプロフィールがおすすめされることがあります。", "onboarding.profile.display_name": "表示名", - "onboarding.profile.display_name_hint": "あなたのフルネーム、または楽しい名前…", - "onboarding.profile.lead": "このことは後でいつでも設定から完了させることが出来ますし、設定では更に多くのカスタマイズが利用可能になっています。", + "onboarding.profile.display_name_hint": "フルネーム、あるいは面白い名前など", + "onboarding.profile.lead": "あとでいつでも修正できますし、設定画面にはこれ以外のカスタマイズ項目もあります。", "onboarding.profile.note": "自己紹介", - "onboarding.profile.note_hint": "@を使用して他の人々にメンションをすることができます。また#でハッシュタグが使用できます", - "onboarding.profile.save_and_continue": "保存してから続行して下さい", + "onboarding.profile.note_hint": "ほかの人に @言及 したり、#ハッシュタグ を付けたりできます", + "onboarding.profile.save_and_continue": "保存して続ける", "onboarding.profile.title": "プロフィールの設定", - "onboarding.profile.upload_avatar": "プロフィール画像をアップロードしてください", - "onboarding.profile.upload_header": "プロフィールのヘッダー画像をアップロードして下さい", + "onboarding.profile.upload_avatar": "プロフィール画像をアップロード", + "onboarding.profile.upload_header": "プロフィールのヘッダー画像をアップロード", "onboarding.share.lead": "新しいMastodonのアカウントをみんなに紹介しましょう。", "onboarding.share.message": "「{username}」で #Mastodon はじめました! {url}", "onboarding.share.next_steps": "次のステップに進む:", @@ -606,6 +606,7 @@ "search.quick_action.status_search": "{x}に該当する投稿", "search.search_or_paste": "検索またはURLを入力", "search_popout.full_text_search_disabled_message": "{domain}では利用できません。", + "search_popout.full_text_search_logged_out_message": "ログイン時のみ利用できます。", "search_popout.language_code": "ISO言語コード", "search_popout.options": "検索オプション", "search_popout.quick_actions": "クイック操作", diff --git a/app/javascript/mastodon/locales/ne.json b/app/javascript/mastodon/locales/ne.json index 95f8e703c9..229d4f4718 100644 --- a/app/javascript/mastodon/locales/ne.json +++ b/app/javascript/mastodon/locales/ne.json @@ -49,5 +49,32 @@ "admin.dashboard.retention.average": "औसत", "admin.dashboard.retention.cohort_size": "नयाँ प्रयोगकर्ताहरू", "alert.rate_limited.message": "कृपया {retry_time, time, medium} पछि पुन: प्रयास गर्नुहोस्।", - "alert.unexpected.message": "एउटा अनपेक्षित त्रुटि भयो।" + "alert.unexpected.message": "एउटा अनपेक्षित त्रुटि भयो।", + "bundle_column_error.retry": "पुन: प्रयास गर्नुहोस्", + "bundle_modal_error.close": "बन्द गर्नुहोस्", + "bundle_modal_error.message": "यो कम्पोनेन्ट लोड गर्दा केही गडबड भयो।", + "bundle_modal_error.retry": "Try again", + "closed_registrations.other_server_instructions": "Mastodon विकेन्द्रीकृत भएकोले, तपाइँ अर्को सर्भरमा खाता खोल्न सक्नुहुन्छ र पनि यो सर्भरसँग अन्तरक्रिया गर्न सक्नुहुन्छ।", + "closed_registrations_modal.description": "हाल {domain} मा खाता सिर्जना गर्न सम्भव छैन, तर कृपया ध्यान राख्नुहोस् कि तपाईंले Mastodon प्रयोग गर्नको लागि {domain} मा नै खाता खोल्न आवश्यक छैन।", + "closed_registrations_modal.find_another_server": "अर्को सर्भर खोज्नुहोस्", + "closed_registrations_modal.title": "Mastodon मा साइन अप गर्दै", + "column.blocks": "ब्लक गरिएको प्रयोगकर्ताहरु", + "column.directory": "प्रोफाइल ब्राउज गर्नुहोस्", + "column.domain_blocks": "ब्लक गरिएको डोमेन", + "column.follow_requests": "फलो अनुरोधहरू", + "column.lists": "सूचीहरू", + "column.notifications": "सूचनाहरू", + "column_header.hide_settings": "सेटिङ्हरू लुकाउनुहोस्", + "column_subheading.settings": "सेटिङहरू", + "compose.language.change": "भाषा परिवर्तन गर्नुहोस्", + "compose.language.search": "भाषाहरू खोज्नुहोस्...", + "compose_form.direct_message_warning_learn_more": "थप जान्नुहोस्", + "compose_form.poll.add_option": "विकल्प थप्नुहोस्", + "compose_form.poll.remove_option": "यो विकल्प हटाउनुहोस्", + "compose_form.publish_form": "नयाँ पोस्ट", + "compose_form.save_changes": "परिवर्तनहरू सेभ गर्नुहोस", + "compose_form.sensitive.hide": "{count, plural, one {संवेदनशील मिडियाको रूपमा चिन्ह लगाउनुहोस्} other {संवेदनशील मिडियाहरूको रूपमा चिन्ह लगाउनुहोस्}}", + "compose_form.sensitive.marked": "{count, plural, one {मिडियालाई संवेदनशील रूपमा चिन्ह लगाइएको छ} other {मिडियाहरूलाई संवेदनशील रूपमा चिन्ह लगाइएको छ}}", + "compose_form.sensitive.unmarked": "{count, plural, one {मिडियालाई संवेदनशील रूपमा चिन्ह लगाइएको छैन} other {मिडियाहरूलाई संवेदनशील रूपमा चिन्ह लगाइएको छैन}}", + "compose_form.spoiler_placeholder": "यहाँ आफ्नो चेतावनी लेख्नुहोस्" } diff --git a/config/locales/et.yml b/config/locales/et.yml index fb0fdc3a3e..2d48edc295 100644 --- a/config/locales/et.yml +++ b/config/locales/et.yml @@ -534,6 +534,7 @@ et: total_reported: Nende kohta teateid total_storage: Lisatud meedia totals_time_period_hint_html: Allpool kuvatud summad sisaldavad andmed kogu aja kohta. + unknown_instance: Hetkel pole selle domeeni jaoks siin serveris kirjet. invites: deactivate_all: Peata kõik filter: @@ -610,6 +611,7 @@ et: created_at: Teavitatud delete_and_resolve: Kustuta postitused forwarded: Edastatud + forwarded_replies_explanation: See aruanne pärineb kaugkasutajalt ja käsitleb kaugsisu. See on edastatud sulle, sest raporteeritud sisu on vastus ühele sinu kasutajale. forwarded_to: Edastatud %{domain} domeeni mark_as_resolved: Märgi lahendatuks mark_as_sensitive: Märgi kui tundlik sisu @@ -832,6 +834,20 @@ et: system_checks: database_schema_check: message_html: On ootel andmebaasi migreerimisi. Rakenduse ootuspäraseks toimimiseks palun käivita need + elasticsearch_health_red: + message_html: Elasticsearch klaster on ebaterve (punane staatus), otsingufunktsioonid ei ole saadaval + elasticsearch_health_yellow: + message_html: Elasticsearch klaster on ebaterve (kollane staatus), võiksid uurida põhjust + elasticsearch_index_mismatch: + message_html: Elasticsearchi indeksite kaardistused on vananenud. Palun käivita tootctl search deploy --only=%{value} + elasticsearch_preset: + action: Vaata dokumentatsiooni + message_html: Elasticsearchi klastris on rohkem kui üks sõlme, kuid Mastodon ei ole nende kasutamiseks konfigureeritud. + elasticsearch_preset_single_node: + action: Vaata dokumentatsiooni + message_html: Elasticsearchi klastris on ainult üks sõlm ES_PRESET peaks olema seatud väärtusele single_node_cluster. + elasticsearch_reset_chewy: + message_html: Elasticsearchi süsteemiindeks on seadistuse muutumise tõttu vananenud. Palun käivita tootctl search deploy --reset-chewy selle uuendamiseks. elasticsearch_running_check: message_html: Elasticsearch ei vasta. Kontrolli, kas see töötab või keela täistekstiotsing elasticsearch_version_check: @@ -1024,6 +1040,14 @@ et: hint_html: Üks asi veel! Me peame veenduma, et oled inimene (et me saaksime spämmi väljaspoole jätta!). Lahenda allpool olev CAPTCHA ja klõpsa "Jätka". title: Turvalisuse kontroll confirmations: + awaiting_review: E-posti aadress on kinnitatud! %{domain} töötajad vaatavad praegu registreeringut läbi. Saad e-kirja, kui nad kiidavad konto heaks! + awaiting_review_title: Su registreeringut vaadatakse läbi + clicking_this_link: klõpsates seda linki + login_link: logi sisse + proceed_to_login_html: Saad nüüd jätkata valikuga %{login_link}. + redirect_to_app_html: Sind oleks pidanud suunatama rakendusse %{app_name}. Kui seda ei juhtunud, proovi %{clicking_this_link} või naase käsitsi rakendusse. + registration_complete: Sinu registreering domeenil %{domain} on nüüd valmis! + welcome_title: Tere tulemast, %{name}! wrong_email_hint: Kui see e-postiaadress pole korrektne, saad seda kontosätetes muuta. delete_account: Konto kustutamine delete_account_html: Kui soovid oma konto kustutada, siis jätka siit. Pead kustutamise eraldi kinnitama. @@ -1085,6 +1109,7 @@ et: functional: Konto on täies mahus kasutatav. pending: Taotlus ootab ülevaatamist meie personali poolt. See võib võtta mõne aja. Kui taotlus on vastu võetud, saadetakse sulle e-kiri. redirecting_to: See konto pole aktiivne, sest on suunatud aadressile %{acct}. + self_destruct: Kuna %{domain} on sulgemisel, saad oma kontole vaid piiratud ligipääsu. view_strikes: Vaata enda eelnevaid juhtumeid too_fast: Vorm esitatud liiga kiirelt, proovi uuesti. use_security_key: Kasuta turvavõtit @@ -1342,6 +1367,7 @@ et: '86400': 1 päev expires_in_prompt: Mitte kunagi generate: Loo + invalid: See kutse pole kehtiv invited_by: 'Sind kutsus:' max_uses: one: 1 kasutus @@ -1554,6 +1580,9 @@ et: over_daily_limit: Lubatud ajastatud postituste arv %{limit} päevas on tänaseks ületatud over_total_limit: Oled jõudnud ajastatud postituste lubatud maksimumarvuni %{limit} too_soon: Ajastatud kuupäev peab olema tukevikus + self_destruct: + lead_html: Kahjuks suletakse %{domain} lõplikult. Kui sul oli seal konto, ei saa sa seda enam kasutada, kuid siiski võid taotleda oma andmete varukoopiat. + title: See server suletakse sessions: activity: Viimane aktiivsus browser: Veebilehitseja diff --git a/config/locales/ja.yml b/config/locales/ja.yml index f7a2c28179..8682f37eec 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -599,7 +599,7 @@ ja: created_at: 通報日時 delete_and_resolve: 投稿を削除 forwarded: 転送済み - forwarded_replies_explanation: この報告はリモートユーザーからのものであり、またリモートコンテンツに関するものです。報告されたコンテンツがあなたのユーザーの内の一人に対するリプライの中にあるため、あなたに転送されました。 + forwarded_replies_explanation: これはリモートユーザーによる、リモートコンテンツについての報告です。問題のコンテンツはあなたのサーバー利用者への返信なので、こちらにも転送されて来ました。 forwarded_to: "%{domain}に転送されました" mark_as_resolved: 解決済みとしてマーク mark_as_sensitive: 閲覧注意にする