Conflicts:
- `package.json`:
Upstream removed a dependency that was textually close to a glitch-soc-only
dependency.
Removed the dependency as upstream did, while keeping the glitch-soc-only
dependency.
All notable changes to this project will be documented in this file.
## [4.1.2] - 2023-04-04
### Fixed
- Fix crash in `tootctl` commands making use of parallelization when Elasticsearch is enabled ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/24182), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/24377))
- Fix crash in `db:setup` when Elasticsearch is enabled ([rrgeorge](https://github.com/mastodon/mastodon/pull/24302))
- Fix user archive takeout when using OpenStack Swift or S3 providers with no ACL support ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/24200))
- Fix invalid/expired invites being processed on sign-up ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/24337))
### Security
- Update Ruby to 3.0.6 due to ReDoS vulnerabilities ([saizai](https://github.com/mastodon/mastodon/pull/24334))
- Fix unescaped user input in LDAP query ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/24379))
@ -89,8 +89,10 @@ class DirectTimeline extends React.PureComponent {
trackScroll={!pinned}
scrollKey={`direct_timeline-${columnId}`}
timelineId='direct'
bindToDocument={!multiColumn}
onLoadMore={this.handleLoadMore}
prepend={<divclassName='follow_requests-unlocked_explanation'><span><FormattedMessageid='compose_form.encryption_warning'defaultMessage='Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.'/><ahref='/terms'target='_blank'><FormattedMessageid='compose_form.direct_message_warning_learn_more'defaultMessage='Learn more'/></a></span></div>}
alwaysPrepend
emptyMessage={<FormattedMessageid='empty_column.direct'defaultMessage="You don't have any private mentions yet. When you send or receive one, it will show up here."/>}
@ -145,7 +145,7 @@ class Notification extends ImmutablePureComponent {
return(
<HotKeyshandlers={this.getHandlers()}>
<divclassName={classNames('notification notification-follow-request focusable',{unread})}tabIndex='0'aria-label={notificationForScreenReader(intl,intl.formatMessage({id:'notification.follow_request',defaultMessage:'{name} has requested to follow you'},{name:account.get('acct')}),notification.get('created_at'))}>
<divclassName={classNames('notification notification-follow-request focusable',{unread})}tabIndex={0}aria-label={notificationForScreenReader(intl,intl.formatMessage({id:'notification.follow_request',defaultMessage:'{name} has requested to follow you'},{name:account.get('acct')}),notification.get('created_at'))}>
"interaction_modal.other_server_instructions":"Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.",
"interaction_modal.preamble":"Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.",
"sign_in_banner.text":"Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.",
"account.browse_more_on_origin_server":"Více na původním profilu",
"account.cancel_follow_request":"Zrušit žádost o sledování",
"account.direct":"Privately mention @{name}",
"account.direct":"Soukromě zmínit @{name}",
"account.disable_notifications":"Přestat mě upozorňovat, když @{name} zveřejní příspěvek",
"account.domain_blocked":"Doména blokována",
"account.edit_profile":"Upravit profil",
@ -102,7 +102,7 @@
"column.blocks":"Blokovaní uživatelé",
"column.bookmarks":"Záložky",
"column.community":"Místní časová osa",
"column.direct":"Private mentions",
"column.direct":"Soukromé zmínky",
"column.directory":"Prozkoumat profily",
"column.domain_blocks":"Blokované domény",
"column.favourites":"Oblíbené",
@ -163,7 +163,7 @@
"confirmations.domain_block.confirm":"Blokovat celou doménu",
"confirmations.domain_block.message":"Opravdu chcete blokovat celou doménu {domain}? Ve většině případů stačí blokovat nebo skrýt pár konkrétních uživatelů, což také doporučujeme. Z této domény neuvidíte obsah v žádné veřejné časové ose ani v oznámeních. Vaši sledující z této domény budou odstraněni.",
"confirmations.edit.confirm":"Upravit",
"confirmations.edit.message":"Editing now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"confirmations.edit.message":"Editovat teď znamená přepsání zprávy, kterou právě tvoříte. Opravdu chcete pokračovat?",
"confirmations.logout.confirm":"Odhlásit se",
"confirmations.logout.message":"Opravdu se chcete odhlásit?",
"confirmations.discard_edit_media.message":"Tienes cambios sin guardar en la descripción o vista previa del archivo audiovisual, ¿descartarlos de todos modos?",
"confirmations.domain_block.message":"¿Seguro de que quieres bloquear al dominio {domain} entero? En general unos cuantos bloqueos y silenciados concretos es suficiente y preferible.",
"confirmations.edit.confirm":"Editar",
"confirmations.edit.message":"Editar ahora reemplazará el mensaje que está escribiendo. ¿Está seguro que quiere proceder?",
@ -522,16 +522,16 @@
"report_notification.categories.spam":"Spam",
"report_notification.categories.violation":"Infracción de regla",
"empty_column.follow_recommendations":"Tundub, et sinu jaoks ei ole võimalik soovitusi luua. Proovi kasutada otsingut, et leida tuttavaid inimesi, või sirvi populaarseid silte.",
"empty_column.follow_requests":"Pole hetkel ühtegi jälgimistaotlust. Kui saad mõne, näed neid siin.",
"empty_column.followed_tags":"Sa ei jälgi veel ühtegi märksõna. Kui jälgid, ilmuvad need siia.",
"empty_column.hashtag":"Seda sildi all ei ole ühtegi postitust.",
"empty_column.hashtag":"Selle sildi all ei ole ühtegi postitust.",
"empty_column.home":"Su koduajajoon on tühi. Jälgi rohkemaid inimesi, et seda täita {suggestions}",
"account.browse_more_on_origin_server":"مرور بیشتر روی نمایهٔ اصلی",
"account.cancel_follow_request":"رد کردن درخواست پیگیری",
"account.direct":"Privately mention @{name}",
"account.direct":"خصوصی از @{name} نام ببرید",
"account.disable_notifications":"آگاه کردن من هنگام فرستههای @{name} را متوقّف کن",
"account.domain_blocked":"دامنه مسدود شد",
"account.edit_profile":"ویرایش نمایه",
@ -102,7 +102,7 @@
"column.blocks":"کاربران مسدود شده",
"column.bookmarks":"نشانکها",
"column.community":"خط زمانی محلّی",
"column.direct":"Private mentions",
"column.direct":"خصوصی نام ببرید",
"column.directory":"مرور نمایهها",
"column.domain_blocks":"دامنههای مسدود شده",
"column.favourites":"پسندیدهها",
@ -163,7 +163,7 @@
"confirmations.domain_block.confirm":"مسدود کردن تمام دامنه",
"confirmations.domain_block.message":"آیا جدی جدی میخواهید تمام دامنهٔ {domain} را مسدود کنید؟ در بیشتر موارد مسدود کردن یا خموشاندن چند حساب خاص کافی است و توصیه میشود. پس از این کار شما هیچ محتوایی را از این دامنه در خط زمانی عمومی یا آگاهیهایتان نخواهید دید. پیگیرانتان از این دامنه هم برداشته خواهند شد.",
"confirmations.edit.confirm":"ویرایش",
"confirmations.edit.message":"Editing now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"confirmations.edit.message":"در صورت ویرایش، پیامی که در حال نوشتنش بودید از بین خواهد رفت. میخواهید ادامه دهید؟",
"confirmations.logout.confirm":"خروج از حساب",
"confirmations.logout.message":"مطمئنید میخواهید خارج شوید؟",
"confirmations.mute.confirm":"خموش",
@ -216,14 +216,14 @@
"empty_column.blocks":"هنوز کسی را مسدود نکردهاید.",
"empty_column.bookmarked_statuses":"هنوز هیچ فرستهٔ نشانهگذاری شدهای ندارید. هنگامی که فرستهای را نشانهگذاری کنید، اینجا نشان داده خواهد شد.",
"empty_column.community":"خط زمانی محلّی خالی است. چیزی بنویسید تا چرخش بچرخد!",
"empty_column.direct":"You don't have any private mentions yet. When you send or receive one, it will show up here.",
"empty_column.direct":"هنوز هیچ اشاره خصوصیای ندارید. هنگامی که چنین پیامی بگیرید یا بفرستید اینجا نشان داده خواهد شد.",
"empty_column.domain_blocks":"هنوز هیچ دامنهای مسدود نشده است.",
"empty_column.explore_statuses":"الآن چیزی پرطرفدار نیست. بعداً دوباره بررسی کنید!",
"empty_column.favourited_statuses":"شما هنوز هیچ فرستهای را نپسندیدهاید. هنگامی که فرستهای را بپسندید، اینجا نشان داده خواهد شد.",
"empty_column.favourites":"هنوز هیچ کسی این فرسته را نپسندیده است. هنگامی که کسی آن را بپسندد، اینجا نشان داده خواهد شد.",
"empty_column.follow_recommendations":"به نظر نمیتوان هیچ پیشنهادی برایتان ایجاد کرد. میتوانید برای یافتن افرادی که ممکن است بشناسید از جستوجو یا کاوش برچسبهای داغ استفاده کنید.",
"empty_column.follow_requests":"شما هنوز هیچ درخواست پیگیریای ندارید. هنگامی که چنین درخواستی بگیرید، اینجا نشان داده خواهد شد.",
"empty_column.followed_tags":"You have not followed any hashtags yet. When you do, they will show up here.",
"empty_column.followed_tags":"شما هیچ برچسبی را پینگرفتید. هنگامی که برچسبی را پیگیری کنید اینجا نمایان میشوند.",
"empty_column.hashtag":"هنوز هیچ چیزی در این برچسب نیست.",
"empty_column.home":"خط زمانی خانگیتان خالی است! برای پر کردنش، افراد بیشتری را پی بگیرید. {suggestions}",
"empty_column.home.suggestions":"چند پیشنهاد را ببینید",
@ -314,7 +314,7 @@
"keyboard_shortcuts.column":"برای تمرکز روی یک فرسته در یکی از ستونها",
"keyboard_shortcuts.compose":"تمرکز روی محیط نوشتن",
"keyboard_shortcuts.description":"توضیح",
"keyboard_shortcuts.direct":"to open direct messages column",
"keyboard_shortcuts.direct":"باز کردن ستون اشارههای خصوصی",
"keyboard_shortcuts.down":"پایین بردن در سیاهه",
"keyboard_shortcuts.enter":"گشودن فرسته",
"keyboard_shortcuts.favourite":"پسندیدن فرسته",
@ -376,7 +376,7 @@
"navigation_bar.bookmarks":"نشانکها",
"navigation_bar.community_timeline":"خط زمانی محلّی",
"search.quick_action.account_search":"نمایههای جور با {x}",
"search.quick_action.go_to_account":"برو به نمایه {x}",
"search.quick_action.go_to_hashtag":"برو به برچسب {x}",
"search.quick_action.open_url":"باز کردن پیوند در ماستودون",
"search.quick_action.status_search":"فرستههای جور با {x}",
"search.search_or_paste":"جستوجو یا جایگذاری نشانی",
"search_popout.quick_actions":"Quick actions",
"search_popout.recent":"Recent searches",
"search_results.accounts":"Profiles",
"search_popout.quick_actions":"کنشهای سریع",
"search_popout.recent":"جستوجوهای اخیر",
"search_results.accounts":"نمایهها",
"search_results.all":"همه",
"search_results.hashtags":"برچسبها",
"search_results.nothing_found":"چیزی برای این عبارت جستوجو یافت نشد",
@ -548,7 +548,7 @@
"server_banner.server_stats":"آمار کارساز:",
"sign_in_banner.create_account":"ایجاد حساب",
"sign_in_banner.sign_in":"ورود",
"sign_in_banner.text":"Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.",
"sign_in_banner.text":"برای پیگیری نمایهها یا برچسبها، پسندیدن، همرسانی و یا پاسخ به فرستهها وارد شوید. همچنین میتوانید این کارها را با حسابتان در کارسازی دیگر انجام دهید.",
"status.admin_account":"گشودن واسط مدیریت برای @{name}",
"status.admin_domain":"گشودن واسط مدیریت برای {domain}",
"status.admin_status":"گشودن این فرسته در واسط مدیریت",
@ -559,8 +559,8 @@
"status.copy":"رونوشت از پیوند فرسته",
"status.delete":"حذف",
"status.detailed_status":"نمایش کامل گفتگو",
"status.direct":"Privately mention @{name}",
"status.direct_indicator":"Private mention",
"status.direct":"خصوصی به @{name} اشاره کنید",
"status.direct_indicator":"اشاره خصوصی",
"status.edit":"ویرایش",
"status.edited":"ویرایش شده در {date}",
"status.edited_x_times":"{count, plural, one {{count} مرتبه} other {{count} مرتبه}} ویرایش شد",
"confirmations.discard_edit_media.message":"Sinulla on tallentamattomia muutoksia median kuvaukseen tai esikatseluun, hylätäänkö ne silti?",
"confirmations.domain_block.confirm":"Estä koko palvelu",
"confirmations.domain_block.confirm":"Estä koko verkkotunnus",
"confirmations.domain_block.message":"Haluatko aivan varmasti estää palvelun {domain} täysin? Useimmiten muutama kohdistettu esto tai mykistys on riittävä ja suositeltava toimenpide. Et näe kyseisen sisältöä kyseiseltä verkkoalueelta missään julkisissa aikajanoissa tai ilmoituksissa. Tälle verkkoalueelle kuuluvat seuraajasi poistetaan.",
"confirmations.edit.confirm":"Muokkaa",
"confirmations.edit.message":"Muokkaaminen nyt korvaa viestin, jota paraikaa työstät. Haluatko varmasti jatkaa?",
@ -168,13 +168,13 @@
"confirmations.logout.message":"Haluatko varmasti kirjautua ulos?",
"confirmations.mute.confirm":"Mykistä",
"confirmations.mute.explanation":"Tämä toiminto piilottaa heidän julkaisunsa sinulta – mukaan lukien ne, joissa heidät mainitaan – sallien heidän yhä nähdä julkaisusi ja seurata sinua.",
"confirmations.mute.message":"Haluatko varmasti mykistää käyttäjän {name}?",
"confirmations.mute.message":"Haluatko varmasti mykistää profiilin {name}?",
"confirmations.redraft.message":"Oletko varma että haluat poistaa tämän julkaisun ja tehdä siitä uuden luonnoksen? Suosikit ja tehostukset menetään, alkuperäisen julkaisusi vastaukset jäävät orvoiksi.",
"confirmations.reply.confirm":"Vastaa",
"confirmations.reply.message":"Jos vastaat nyt, vastaus korvaa tällä hetkellä työstämäsi viestin. Oletko varma, että haluat jatkaa?",