Merge commit '95d65c971c' into kb_migration

This commit is contained in:
KMY 2023-07-08 11:26:19 +09:00
commit 7fa5cbc649
12 changed files with 54 additions and 21 deletions

View file

@ -49,8 +49,10 @@ jobs:
images: |
tootsuite/mastodon
ghcr.io/mastodon/mastodon
# Only tag with latest when ran against the latest stable branch
# This needs to be updated after each minor version release
flavor: |
latest=auto
latest=${{ startsWith(github.ref, 'refs/tags/v4.1.') && 'auto' || 'false' }}
tags: |
type=edge,branch=main
type=pep440,pattern={{raw}}

View file

@ -2,6 +2,14 @@
All notable changes to this project will be documented in this file.
## [4.1.4] - 2023-07-07
### Fixed
- Fix branding:generate_app_icons failing because of disallowed ICO coder ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/25794))
- Fix crash in admin interface when viewing a remote user with verified links ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/25796))
- Fix processing of media files with unusual names ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/25788))
## [4.1.3] - 2023-07-06
### Added
@ -29,7 +37,7 @@ All notable changes to this project will be documented in this file.
- Fix multiple inefficiencies in automatic post cleanup worker ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/24607), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/24785), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/24840))
- Fix performance of streaming by parsing message JSON once ([ThisIsMissEm](https://github.com/mastodon/mastodon/pull/25278), [ThisIsMissEm](https://github.com/mastodon/mastodon/pull/25361))
- Fix CSP headers when `S3_ALIAS_HOST` includes a path component ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/25273))
- Fix `tootctl accounts approve --number N` not aproving N earliest registrations ([danielmbrasil](https://github.com/mastodon/mastodon/pull/24605))
- Fix `tootctl accounts approve --number N` not approving N earliest registrations ([danielmbrasil](https://github.com/mastodon/mastodon/pull/24605))
- Fix reports not being closed when performing batch suspensions ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/24988))
- Fix being able to vote on your own polls ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/25015))
- Fix race condition when reblogging a status ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/25016))

View file

@ -19,15 +19,26 @@ class Api::V1::Statuses::ReferredByStatusesController < Api::BaseController
end
def cached_references
cache_collection(results, Status)
results
end
def results
@results ||= Status.where(id: @status.referenced_by_status_objects.select(:status_id), visibility: [:public, :public_unlisted, :unlisted, :login]).paginate_by_max_id(
return @results if @results
account = current_user&.account
statuses = Status.where(id: @status.referenced_by_status_objects.select(:status_id))
account_ids = statuses.map(&:account_id).uniq
domains = statuses.filter_map(&:account_domain).uniq
relations = account&.relations_map(account_ids, domains) || {}
statuses = cache_collection_paginated_by_id(
statuses,
Status,
limit_param(DEFAULT_STATUSES_LIMIT),
params[:max_id],
params[:since_id]
params_slice(:max_id, :since_id, :min_id)
)
@results = statuses.filter { |status| !StatusFilter.new(status, account, relations).filtered? }
end
def insert_pagination_headers

View file

@ -14,6 +14,7 @@
"about.powered_by": "Decentralized social media powered by {mastodon}",
"about.rules": "Server rules",
"account.account_note_header": "Note",
"account.add_or_remove_from_antenna": "Add or Remove from antennas",
"account.add_or_remove_from_list": "Add or Remove from lists",
"account.badges.bot": "Automated",
"account.badges.group": "Group",
@ -599,8 +600,8 @@
"searchability.private.short": "Reactionners",
"searchability.public.long": "Anyone can find",
"searchability.public.short": "Public",
"searchability.unlisted.long": "Your followers can find",
"searchability.unlisted.short": "Followers",
"searchability.unlisted.long": "Your followers and reactionners can find",
"searchability.unlisted.short": "Followers and reactionners",
"search_popout.quick_actions": "Quick actions",
"search_popout.recent": "Recent searches",
"search_results.accounts": "Profiles",
@ -636,6 +637,8 @@
"status.edited": "Edited {date}",
"status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
"status.embed": "Embed",
"status.emoji_reaction": "Stamp",
"status.emoji_reaction.pick": "Pick stamp",
"status.expiration.add": "Set status expired time",
"status.favourite": "Favourite",
"status.filter": "Filter this post",
@ -658,6 +661,7 @@
"status.reblogged_by": "{name} boosted",
"status.reblogs.empty": "No one has boosted this post yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.reference": "Reference",
"status.remove_bookmark": "Remove bookmark",
"status.replied_to": "Replied to {name}",
"status.reply": "Reply",

View file

@ -14,6 +14,7 @@
"about.powered_by": "{mastodon}による分散型ソーシャルメディア",
"about.rules": "サーバーのルール",
"account.account_note_header": "メモ",
"account.add_or_remove_from_antenna": "アンテナから追加または外す",
"account.add_or_remove_from_list": "リストから追加または外す",
"account.badges.bot": "Bot",
"account.badges.group": "Group",
@ -583,12 +584,12 @@
"searchability.change": "検索許可範囲を変更",
"searchability.direct.long": "この投稿はあなたしか検索できません",
"searchability.direct.short": "自分のみ",
"searchability.private.long": "この投稿にリアクションした人だけが検索できます",
"searchability.private.short": "リアクションした人のみ",
"searchability.private.long": "この投稿に反応した人だけが検索できます",
"searchability.private.short": "反応者のみ",
"searchability.public.long": "この投稿は誰でも検索できます",
"searchability.public.short": "全て",
"searchability.unlisted.long": "この投稿はあなたのフォロワーしか検索できません",
"searchability.unlisted.short": "フォロワーのみ",
"searchability.unlisted.long": "この投稿はあなたのフォロワーと反応者だけが検索できます",
"searchability.unlisted.short": "フォロワーと反応者",
"search_popout.quick_actions": "クイック操作",
"search_popout.recent": "最近の検索",
"search_results.accounts": "ユーザー",
@ -625,6 +626,7 @@
"status.edited_x_times": "{count}回編集",
"status.embed": "埋め込み",
"status.emoji_reaction": "スタンプ",
"status.emoji_reaction.pick": "スタンプを押す",
"status.expiration.add": "時限投稿を設定",
"status.favourite": "お気に入り",
"status.filter": "この投稿をフィルターする",
@ -647,6 +649,7 @@
"status.reblogged_by": "{name}さんがブースト",
"status.reblogs.empty": "まだ誰もブーストしていません。ブーストされるとここに表示されます。",
"status.redraft": "削除して下書きに戻す",
"status.reference": "参照",
"status.remove_bookmark": "ブックマークを削除",
"status.replied_to": "{name}さんへの返信",
"status.reply": "返信",

View file

@ -65,7 +65,7 @@ class TextFormatter
suffix = url[prefix.length + 30..-1]
cutoff = url[prefix.length..-1].length > 30
<<~HTML.squish
<<~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>
HTML
rescue Addressable::URI::InvalidURIError, IDN::Idna::IdnaError

View file

@ -5,6 +5,7 @@ class ResolveURLService < BaseService
include Authorization
USERNAME_STATUS_RE = %r{/@(?<username>#{Account::USERNAME_RE})/(?<status_id>[0-9]+)\Z}
REMOTE_USERNAME_STATUS_RE = %r{/@(?<username>#{Account::USERNAME_RE}@#{Account::USERNAME_RE})/(?<status_id>[0-9]+)\Z}
def call(url, on_behalf_of: nil)
@url = url

View file

@ -12,6 +12,10 @@
%h4= t('edit_profile.basic_information')
= f.simple_fields_for :settings, current_user.settings do |ff|
.fields-group
= ff.input :bio_markdown, input_html: { name: 'account[bio_markdown]' }, wrapper: :with_label, kmyblue: true, label: I18n.t('simple_form.labels.defaults.setting_bio_markdown')
.fields-row
.fields-row__column.fields-row__column-6
.fields-group

View file

@ -1737,8 +1737,8 @@ en:
direct_long: Reacter of this post can find
limited: Self only
limited_long: Nobody can find, but you can
private: Followers only
private_long: Your followers can find
private: Followers and reactionners
private_long: Your followers and reactionners can find
public: Public
public_long: Anyone can find
show_more: Show more

View file

@ -1639,12 +1639,12 @@ ja:
other: "%{count}票"
vote: 投票
searchabilities:
direct: リアクションした人
direct_long: この投稿にリアクションした人しか検索できません
direct: 反応者
direct_long: この投稿に反応した人しか検索できません
limited: 自分のみ
limited_long: この投稿はあなたしか検索できません
private: フォロワーのみ
private_long: この投稿はフォロワーのみが検索できます
private: フォロワーと反応者
private_long: この投稿はフォロワーと反応者のみが検索できます
public: 全て
public_long: この投稿は誰でも検索できます
show_more: もっと見る

View file

@ -13,7 +13,7 @@ module Mastodon
end
def patch
3
4
end
def flags

View file

@ -40,7 +40,7 @@ namespace :branding do
output_dest = Rails.root.join('app', 'javascript', 'icons')
rsvg_convert = Terrapin::CommandLine.new('rsvg-convert', '-w :size -h :size --keep-aspect-ratio :input -o :output')
convert = Terrapin::CommandLine.new('convert', ':input :output')
convert = Terrapin::CommandLine.new('convert', ':input :output', environment: { 'MAGICK_CONFIGURE_PATH' => nil })
favicon_sizes = [16, 32, 48]
apple_icon_sizes = [57, 60, 72, 76, 114, 120, 144, 152, 167, 180, 1024]