Takeshi Umeda
cb37bd63dc
Added account featured tags API ( #11817 )
2020-09-02 02:13:10 +02:00
Eugen Rochko
c6ad9aae69
Add featured hashtags as an ActivityPub collection ( #11595 )
2020-09-02 02:11:12 +02:00
ThibG
50d0c1e95f
Add configuration option to filter replies in lists ( #9205 )
...
* Add database support for list show-reply preferences
* Add backend support to read and update list-specific show_replies settings
* Add basic UI to set list replies setting
* Add specs for list replies policy
* Switch "cycling" reply policy link to a set of radio inputs
* Capitalize replies_policy strings
* Change radio button design to be consistent with that of the directory explorer
2020-09-01 13:31:28 +02:00
Eugen Rochko
a143764c4c
Change own direct-visibility statuses to be in the home feed again ( #14711 )
...
And remove highlighting in web UI
Full circle from #8940
2020-09-01 13:30:42 +02:00
dependabot[bot]
61b768572e
Bump rubocop from 0.86.0 to 0.88.0 ( #14412 )
...
* Bump rubocop from 0.86.0 to 0.88.0
Bumps [rubocop](https://github.com/rubocop-hq/rubocop ) from 0.86.0 to 0.88.0.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases )
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v0.86.0...v0.88.0 )
Signed-off-by: dependabot[bot] <support@github.com>
* Fix for latest RuboCop
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2020-09-01 03:04:00 +02:00
ThibG
6cb7f10134
Update Tesseract.js ( #14708 )
...
* [WiP] Update Tesseract.js
- Update Tesseract.js to 2.2.1
- Use versioned file names
- differentiate two progression states: preparing OCR and detecting picture
* Get rid of copy-webpack-plugin
2020-09-01 00:26:10 +02:00
ThibG
a3c9062153
Add border around 🐞 emoji ( #14712 )
2020-08-31 23:30:27 +02:00
ThibG
0fd309af0d
Add back “Home” link to the “Getting Started” column when the “Home” column isn't mounted ( #14707 )
...
* Add back "Home" link to "Getting started" when Home column isn't mounted
* Fix keys in getting_started
It should not matter much in practice as the list of items will only
change extremely rarely, but having a `key` that corresponds to the actual
item makes much more sense than having it be the index of the item within
the list.
2020-08-31 18:11:37 +02:00
Takeshi Umeda
74eb6f3a24
Fix limited follower id in fan-out-on-write service ( #14709 )
2020-08-31 18:11:27 +02:00
Akihiko Odaki
b096ad1c0f
Make Array-creation behavior of Paginable more predictable ( #14687 )
...
* Make Array-creation behavior of Paginable more predictable
Paginable.paginate_by_id usually returns ActiveRecord::Relation, but it
returns an Array if min_id option is present. The behavior caused problems
fixed with the following commits:
- 976938bf30
- 5a8fa3ad95
- 1c70d8189c
To prevent from recurring similar problems, this commit introduces two
changes:
- The scope now always returns an Array whether min_id option is present
or not.
- The scope is renamed to to_a_paginated_by_id to clarify it returns an
Array.
* Transform Paginable.to_a_paginated_by_id from a scope to a class method
https://api.rubyonrails.org/classes/ActiveRecord/Scoping/Named/ClassMethods.html#method-i-scope
> The method is intended to return an ActiveRecord::Relation object, which
> is composable with other scopes.
Paginable.to_a_paginated_by_id returns an Array and is not appropriate
as a scope.
2020-08-31 12:47:09 +02:00
Eugen Rochko
e8d1656bd6
Add support for dereferencing objects through bearcaps ( #14683 )
2020-08-30 12:34:20 +02:00
Eugen Rochko
d0fecf89d5
Fix inefficiencies in fan-out-on-write service ( #14682 )
2020-08-30 12:33:59 +02:00
Eugen Rochko
97762d28b6
Fix videos with near-60 fps being rejected ( #14684 )
...
Fix #14668
2020-08-30 01:54:30 +02:00
Akihiko Odaki
1c70d8189c
Introduce ApplicationController#cache_collection_paginated_by_id ( #14677 )
...
* Replace incorrect use of distinct with group
Some uses of ActiveRecord::QueryMethods#distinct pass field names but they
are incorrect for the current version of Rails.
ActiveRecord::QueryMethods#group provides the expected behavior and
benefits performance. See commit 6da24aad4cafdef8d8a2c92bac2002a5fc2fe9c8.
* Introduce ApplicationController#cache_collection_paginated_by_id
ApplicationController#cache_collection_paginated_by_id fuses
ApplicationController#cache_collection and Paginable.paginate_by_id.
An advantage of this method is that it prevents from modifying scope which
Paginable.paginate_by_id may provide.
ApplicationController#cache_collection always return an array and there
is no possibility of the scope modification. It is also clear for a
programmer, considering the implication of "cache".
This method can also emit more efficient queries by using
Cacheable.cache_ids before calling Paginable.paginate_by_id.
2020-08-28 12:31:56 +02:00
Akihiko Odaki
5a8fa3ad95
Eagerly load statuses with the main query in Api::V1::BookmarksController ( #14674 )
...
This is same with commit 976938bf30
except
that it was for Api::V1::FavouritesController while this is for
Api::V1::BookmarksController.
2020-08-28 12:30:23 +02:00
Akihiko Odaki
81666b26a6
Replace incorrect use of distinct with group ( #14675 )
...
Some uses of ActiveRecord::QueryMethods#distinct pass field names but they
are incorrect for the current version of Rails.
ActiveRecord::QueryMethods#group provides the expected behavior and
benefits performance. See commit 6da24aad4cafdef8d8a2c92bac2002a5fc2fe9c8.
2020-08-28 12:29:59 +02:00
Akihiko Odaki
976938bf30
Eagerly load statuses with the main query in Api::V1::FavouritesController ( #14673 )
...
The old implementation had two queries:
1. The query constructed in Api::V1::FavouritesController#results
2. The query constructed in #cached_favourites, which is merged with 1.
Both of them are issued againt PostgreSQL. The combination of the two
queries caused the following problems:
- The small window between the two queries involves race conditions.
- Minor performance inefficiency.
Moreover, the construction of query 2, which involves merging with query
1 has a bug. Query 1 is finalized with paginate_by_id, but paginate_by_id
returns an array when min_id parameter is specified. The behavior prevents
from merging the query, and in the real world, ActiveRecord simply ignores
the merge (!), which results in querying the entire scan of statuses and
favourites table.
This change fixes these issues by simply letting query 1 get all the works
done.
2020-08-28 09:27:33 +02:00
Akihiko Odaki
44df785077
Use Status.group instead of Status.distinct in HashQueryService ( #14662 )
...
DISTINCT clause removes duplicated records according to all the selected
attributes. In reality, it can remove duplicated records only looking at
statuses.id, but the clause confuses the query planner and yields
insufficient performance.
The behavior is also problematic if the scope produced by HashQueryService
is used to query columns without id (using pluck method, for example). The
scope is expected to contain unique statuses, but the uniquness will be
evaluated with some arbitrary columns other than id.
GROUP BY clause resolves those problem by explicitly specifying the
column to take into account for the record distinction.
A workaround for the problem of DISTINCT clause in
Api::V1::Timelines::TagController is no longer necessary and removed.
2020-08-25 13:39:35 +02:00
ThibG
d480442e58
Add support for latest HTTP Signatures spec draft ( #14556 )
...
* Add support for latest HTTP Signatures spec draft
https://www.ietf.org/id/draft-ietf-httpbis-message-signatures-00.html
- add support for the “hs2019” signature algorithm (assumed to be equivalent
to RSA-SHA256, since we do not have a mechanism to specify the algorithm
within the key metadata yet)
- add support for (created) and (expires) pseudo-headers and related
signature parameters, when using the hs2019 signature algorithm
- adjust default “headers” parameter while being backwards-compatible with
previous implementation
- change the acceptable time window logic from 12 hours surrounding the “date”
header to accepting signatures created up to 1 hour in the future and
expiring up to 1 hour in the past (but only allowing expiration dates up to
12 hours after the creation date)
This doesn't conform with the current draft, as it doesn't permit accounting
for clock skew.
This, however, should be addressed in a next version of the draft:
https://github.com/httpwg/http-extensions/pull/1235
* Add additional signature requirements
* Rewrite signature params parsing using Parslet
* Make apparent which signature algorithm Mastodon on verification failure
Mastodon uses RSASSA-PKCS1-v1_5, which is not recommended for new applications,
and new implementers may thus unknowingly use RSASSA-PSS.
* Add workaround for PeerTube's invalid signature header
The previous parser allowed incorrect Signature headers, such as
those produced by old versions of the `http-signature` node.js package,
and seemingly used by PeerTube.
This commit adds a workaround for that.
* Fix `signature_key_id` raising an exception
Previously, parsing failures would result in `signature_key_id` being nil,
but the parser changes made that result in an exception.
This commit changes the `signature_key_id` method to return `nil` in case
of parsing failures.
* Move extra HTTP signature helper methods to private methods
* Relax (request-target) requirement to (request-target) || digest
This lets requests from Plume work without lowering security significantly.
2020-08-24 18:21:07 +02:00
ThibG
46283b489e
Fix dereferencing remote statuses not using the correct account ( #14656 )
...
Follow-up to #14359
In the case of limited toots, the receiver may not be explicitly part of the
audience. If a specific user's inbox URI was specified, it makes sense to
dereference the toot from the corresponding user, instead of trying to find
someone in the explicit audience.
2020-08-24 16:56:21 +02:00
santiagorodriguez96
f142983484
Add WebAuthn as an alternative 2FA method ( #14466 )
...
* feat: add possibility of adding WebAuthn security keys to use as 2FA
This adds a basic UI for enabling WebAuthn 2FA. We did a little refactor
to the Settings page for editing the 2FA methods – now it will list the
methods that are available to the user (TOTP and WebAuthn) and from
there they'll be able to add or remove any of them.
Also, it's worth mentioning that for enabling WebAuthn it's required to
have TOTP enabled, so the first time that you go to the 2FA Settings
page, you'll be asked to set it up.
This work was inspired by the one donde by Github in their platform, and
despite it could be approached in different ways, we decided to go with
this one given that we feel that this gives a great UX.
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* feat: add request for WebAuthn as second factor at login if enabled
This commits adds the feature for using WebAuthn as a second factor for
login when enabled.
If users have WebAuthn enabled, now a page requesting for the use of a
WebAuthn credential for log in will appear, although a link redirecting
to the old page for logging in using a two-factor code will also be
present.
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* feat: add possibility of deleting WebAuthn Credentials
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* feat: disable WebAuthn when an Admin disables 2FA for a user
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* feat: remove ability to disable TOTP leaving only WebAuthn as 2FA
Following examples form other platforms like Github, we decided to make
Webauthn 2FA secondary to 2FA with TOTP, so that we removed the
possibility of removing TOTP authentication only, leaving users with
just WEbAuthn as 2FA. Instead, users will have to click on 'Disable 2FA'
in order to remove second factor auth.
The reason for WebAuthn being secondary to TOPT is that in that way,
users will still be able to log in using their code from their phone's
application if they don't have their security keys with them – or maybe
even lost them.
* We had to change a little the flow for setting up TOTP, given that now
it's possible to setting up again if you already had TOTP, in order to
let users modify their authenticator app – given that now it's not
possible for them to disable TOTP and set it up again with another
authenticator app.
So, basically, now instead of storing the new `otp_secret` in the
user, we store it in the session until the process of set up is
finished.
This was because, as it was before, when users clicked on 'Edit' in
the new two-factor methods lists page, but then went back without
finishing the flow, their `otp_secret` had been changed therefore
invalidating their previous authenticator app, making them unable to
log in again using TOTP.
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
* refactor: fix eslint errors
The PR build was failing given that linting returning some errors.
This commit attempts to fix them.
* refactor: normalize i18n translations
The build was failing given that i18n translations files were not
normalized.
This commits fixes that.
* refactor: avoid having the webauthn gem locked to a specific version
* refactor: use symbols for routes without '/'
* refactor: avoid sending webauthn disabled email when 2FA is disabled
When an admins disable 2FA for users, we were sending two mails
to them, one notifying that 2FA was disabled and the other to notify
that WebAuthn was disabled.
As the second one is redundant since the first email includes it, we can
remove it and send just one email to users.
* refactor: avoid creating new env variable for webauthn_origin config
* refactor: improve flash error messages for webauthn pages
Co-authored-by: Facundo Padula <facundo.padula@cedarcode.com>
2020-08-24 16:46:27 +02:00
Tdxdxoz
c950a85d9e
Fix: also use custom private boost icon for detailed status ( #14471 )
...
* use custom private boost icon for detail status
* only use className
2020-08-24 14:13:44 +02:00
ThibG
4468fce63c
Add support for inlined objects in activity audience ( #14514 )
...
* Add support for inlined objects in activity audience
* Add tests
2020-08-24 14:11:47 +02:00
Daigo 3 Dango
ec75a4f48b
Better manage subscriptionCounters ( #14608 )
...
Before this change:
- unsubscribe() was not called for a disconnection
- It seems that WebSocketClient calls connected() and reconnected().
subscriptionCounters were incremented twice for a single reconnection,
first from connected() and second from reconnected()
This might be a an additional change to
https://github.com/tootsuite/mastodon/pull/14579
to recover subscriptions after a reconnect.
2020-08-24 14:06:45 +02:00
proxy
a455c84892
reword "boost to original audience" as per #14596 ( #14598 )
2020-08-23 00:08:31 +02:00
Takeshi Umeda
58f40e0786
Fix click range discrepancies in gifv ( #14615 )
2020-08-23 00:08:12 +02:00
ThibG
b4d2063384
Fix scrolling issues when closing some dropdown menus ( #14606 )
2020-08-21 14:14:28 +02:00
ThibG
4e292c23d6
Fix not being able to unbookmark toots when blocked by their author ( #14604 )
...
* Fix not being able to unbookmark toots when blocked by their author
* Add tests
2020-08-19 19:02:06 +02:00
ThibG
9a6ec27a87
Fix client-side form validation not accepting handles with uppercase letters ( #14599 )
2020-08-19 19:00:47 +02:00
ThibG
191fc742e9
Fix hardcoded non-breaking space in public view ( #14568 )
2020-08-13 12:04:28 +02:00
ThibG
8baad22f68
Improve email address validation ( #14565 )
...
* Increase DNS timeout from 1 second to 5 seconds for MX check
1 seconds is rather short when using a recursive DNS resolver which
hasn't got a cached result already available. Use 5 seconds instead,
which is the timeout value we use for outgoing HTTP queries.
* Add more precise error messages for invalid e-mail addresses
2020-08-12 12:40:25 +02:00
ThibG
ef710bbff6
Add client-side validation in password change forms ( #14564 )
...
* Fix client-side username validation at registration
It used the Account::USERNAME_RE regexp which is for *remote* users,
local user validation is stricter. Also take into account max username length.
* Add client-side form validation for password change
* Add client-side form validation to dedicated registration form
Previous changes only applied to the /about page, not the dedicated form on
/auth
2020-08-12 12:11:15 +02:00
ThibG
22aba16386
Add HTML form validation for the registration form ( #14560 )
...
* Add HTML-level validation of username in sign-up form
* Make required fields with incorrect values more visible
* Enable HTML form validation for the registration form
* Mark agreement checkbox as required client-side
* Add minimum length to password
* Add client-side password confirmation validation
2020-08-11 23:09:13 +02:00
Eugen Rochko
3d32dacbcb
Add support for managing multiple stream subscriptions in a single connection ( #14524 )
2020-08-11 18:24:59 +02:00
niwatori24
65c9d28fa1
Cache result of SQL ( #14534 )
2020-08-09 15:23:42 +02:00
ThibG
09b322872a
Fix crash when failing to load emoji picker ( #14525 )
...
Fixes #14523
2020-08-08 17:57:56 +02:00
abcang
739ea05d30
Fix eslint error ( #14521 )
2020-08-07 10:40:33 +02:00
ThibG
ed22b53180
Fallback to previous, more approximative hashtag RE on older browsers ( #14513 )
...
Fixes #14511
2020-08-05 22:39:14 +02:00
ThibG
be88d4f851
Fix audio/video player not using CDN_HOST in media paths on public pages ( #14486 )
2020-08-02 19:03:10 +02:00
ThibG
62324e9870
Fix audio player on Safari ( #14485 )
2020-08-02 18:47:09 +02:00
ThibG
bc1d925629
Fix disabled boost icon being replaced by private boost icon on hover ( #14456 )
...
Fixes #14455
2020-08-02 11:21:28 +02:00
ThibG
1f34bd4ff7
Fix new audio player features not working on Safari ( #14465 )
...
Fixes #14462
2020-08-02 11:20:17 +02:00
ThibG
9a709d63c2
Fix wrong proptypes for onEditAccountNote ( #14481 )
...
Also add missing PropTypes to the correct component
Fixes #14478
2020-08-02 11:20:02 +02:00
kedama
a903875e3c
Fix the hashtag judgment of the compose form to be the same as the server side ( #14484 )
2020-08-02 11:19:43 +02:00
ThibG
d6f2d1d3f2
Fix handling of Reject Follow when a matching follow relationship exists ( #14479 )
...
* Add tests
* Fix handling of Reject Follow when a matching follow relationship exists
Regression from #12199
2020-08-01 18:20:37 +02:00
Takeshi Umeda
381ecf1d0b
Fix following restriction not working when exact match in account search ( #14394 )
2020-07-26 23:58:36 +02:00
Eugen Rochko
0d9599ee02
Fix unnecessary second connection to user stream from account timeline in web UI ( #14387 )
...
Fix regression from #14212
2020-07-24 14:55:14 +02:00
Eugen Rochko
73d228513c
New Crowdin updates ( #14335 )
...
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Latvian)
[ci skip]
* New translations simple_form.en.yml (Kazakh)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations simple_form.en.yml (Estonian)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Croatian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations doorkeeper.en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Croatian)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.yml (Bengali)
[ci skip]
* New translations simple_form.en.yml (Bengali)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.yml (Marathi)
[ci skip]
* New translations doorkeeper.en.yml (Marathi)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.yml (Croatian)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations en.yml (Taigi)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.yml (Ido)
[ci skip]
* New translations simple_form.en.yml (Ido)
[ci skip]
* New translations doorkeeper.en.yml (Ido)
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Latin))
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.yml (Silesian)
[ci skip]
* New translations en.json (Uyghur)
[ci skip]
* New translations en.yml (Uyghur)
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.yml (Sorani (Kurdish))
[ci skip]
* New translations simple_form.en.yml (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.yml (Malayalam)
[ci skip]
* New translations simple_form.en.yml (Malayalam)
[ci skip]
* New translations doorkeeper.en.yml (Malayalam)
[ci skip]
* New translations simple_form.en.yml (Breton)
[ci skip]
* New translations en.yml (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Breton)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.yml (Kannada)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations doorkeeper.en.yml (Occitan)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations simple_form.en.yml (Armenian)
[ci skip]
* New translations doorkeeper.en.yml (Armenian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations doorkeeper.en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations en.yml (Georgian)
[ci skip]
* New translations simple_form.en.yml (Hebrew)
[ci skip]
* New translations simple_form.en.yml (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Georgian)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations doorkeeper.en.yml (Korean)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.yml (Lithuanian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.yml (Macedonian)
[ci skip]
* New translations doorkeeper.en.yml (Hebrew)
[ci skip]
* New translations en.yml (Hebrew)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.yml (Sardinian)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Urdu (Pakistan))
[ci skip]
* New translations doorkeeper.en.yml (Swedish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations doorkeeper.en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Dutch)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations doorkeeper.en.yml (Polish)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Slovenian)
[ci skip]
* New translations doorkeeper.en.yml (Slovenian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.yml (Serbian (Cyrillic))
[ci skip]
* New translations simple_form.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations devise.en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
* Fix normalization
2020-07-24 12:46:46 +02:00
ThibG
b5302ae87c
Fix hover and normal colors for private boost icon being swapped ( #14386 )
2020-07-24 12:19:30 +02:00
ThibG
75ba08c2db
Add custom icon for private boosts ( #14380 )
2020-07-23 23:54:19 +02:00
Takeshi Umeda
652f872bf1
Fix duplicate notification and delivery of mentions ( #14378 )
2020-07-23 15:41:49 +02:00
ThibG
96a89bae14
Change disabled retweet icon ( #14373 )
...
* Change disabled retweet icon
* Hide fontawesome version of boost icon in both reduce-motion and no-reduce-motion
2020-07-22 22:48:51 +02:00
ThibG
e041b8b3f8
Fix not handling Undo on some activity types when they aren't inlined ( #14346 )
...
* Fix not handling Undo on some activity types when they aren't inlined
When receiving an Undo for a non-inlined activity, try looking it up in
database using the URI. The queries are ad-hoc because we don't have a global
index of object URIs, and not all activity types are stored in database with
an index on their URI.
Announces are just statuses, and have an index on URIs, so this check can
be done efficiently.
Accepts cannot be handled at all because we don't record their URI at any
point.
Follows don't have an index on URI, but they have an index on the issuing
account, which should make such queries largely manageable.
Likes don't have an index on URI, they have an index on the issuing account,
but the number of favs per account may be very high, so I decided not to
handle that.
Blocks don't have an index on URI, but they have an index on the issuing
account, which should make such queries largely manageable.
In all cases, if an Undo could not be handled properly, we call `delete_later!`
because that does not require us to know more than the URI of the undone
property.
* Add tests
* Make newer blocks overwrite older ones
Allows re-synchronizing block info by re-blocking and un-blocking again
when the original Undo Block has been lost.
2020-07-22 11:45:35 +02:00
ThibG
7792bab1cd
Fix RSS feeds not being cachable ( #14368 )
...
* Add tests for some cachable responses
This only covers responses that we should have managed to make cachable
so far. It's not the case of all responses that should be cachable in
the end.
* Fix RSS feeds not being cachable
2020-07-22 11:44:02 +02:00
ThibG
9c90f5347e
Dereference object URIs in Create and Update messages ( #14359 )
...
* Dereference object URIs in Create and Update messages
Fixes #14353
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
* Refactor, and perform origin check *before* attempting to fetch object
Co-authored-by: Fire Demon <firedemon@creature.cafe>
2020-07-22 11:43:17 +02:00
Takeshi Umeda
63aa1c1fb9
Changed retries and rescued in ActivityPub::ProcessingWorker ( #14355 )
...
* Changed the number of retries and rescued exceptions in ActivityPub::ProcessingWorker
* Remove RecordNotUnique from rescue
2020-07-20 11:26:12 +02:00
Takeshi Umeda
ac0805ad10
Fix to add RedisLock to handle Announce activity ( #14365 )
2020-07-20 11:25:26 +02:00
Takeshi Umeda
622dcbeb8c
Fix movie width and frame_rate returning nil ( #14357 )
...
* Fix movie width and frame_rate returning nil
* Add StreamValidationError and raise
* Fix code style
2020-07-19 22:28:27 +02:00
Takeshi Umeda
c294f6f897
Add thumbnail_remote_url in MediaAttachment REST response ( #14358 )
...
* Add thumbnail_remote_url in MediaAttachment REST response
* Change thumbnail_remote_url to preview_remote_url
2020-07-19 19:53:31 +02:00
Ariel
ac1a3386bd
Fix/14021 behaviour on add or remove toots ( #14212 )
...
* Add toot send by current user at local state after send a new toot
Related to #14021
* Decrement toot counter at profile when remove a toot
Related to #14021
* Remove semicolon at end of line
2020-07-19 17:04:02 +02:00
mayaeh
aa206d35ad
ran `yarn manage:translations` ( #14344 )
2020-07-18 19:01:16 +02:00
ThibG
825475a32a
Fix keyboard navigation in scrollable lists ( #14348 )
...
Fixes #14347
2020-07-18 18:55:36 +02:00
Sasha Sorokin
7b682ceb13
Fix following_counter plural to include "one" ( #14342 )
...
That should've worked just fine, but unfortunately, Crowdin wasn't able
to pick up on our non-existent "one" category, thus appending empty
translation block to people's translations. Empty block WILL BE used by
any ICU FormatMessage library, thus resulting in an empty translation
for "one" category, and that requires immediate fix.
This commit duplicates contents of the "other" plural category.
2020-07-17 07:08:23 +02:00
ThibG
a9e58aa8c6
Fix boosted toots from blocked account not being retroactively removed from TL ( #14339 )
...
* Fix boosted toots from blocked account not being retroactively removed from TL
Fixes #14301
* Add test for clear_from_timeline
2020-07-17 07:07:54 +02:00
ThibG
027491a518
Fix audio player controls color in mastodon-light theme ( #14338 )
...
Fixes #14337
The new audio player sets the background and foreground colors automatically
based on the thumbnail of the audio file, but the mastodon-light theme
overrides the controls' colors with a hardcoded color, which sometimes make
them unreadable.
2020-07-17 07:07:18 +02:00
Eugen Rochko
35bf60cae8
New Crowdin updates ( #14311 )
...
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* i18n-tasks normalize
2020-07-15 21:11:21 +02:00
ThibG
109ea6f860
Fix removing allowed domains being done synchronously ( #14302 )
...
* Fix removing allowed domains being done synchronously
* Add tests
2020-07-15 21:08:19 +02:00
ThibG
ddd69f3ae9
Fix error when closing a playing audio or video modal ( #14310 )
2020-07-15 21:07:53 +02:00
Eugen Rochko
4198eed696
New Crowdin updates ( #14285 )
...
* New translations en.json (Bulgarian)
[ci skip]
* New translations doorkeeper.en.yml (Romanian)
[ci skip]
* New translations simple_form.en.yml (Bulgarian)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.yml (Hebrew)
[ci skip]
* New translations simple_form.en.yml (Hebrew)
[ci skip]
* New translations doorkeeper.en.yml (Hebrew)
[ci skip]
* New translations doorkeeper.en.yml (Hungarian)
[ci skip]
* New translations doorkeeper.en.yml (Bulgarian)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations simple_form.en.yml (Danish)
[ci skip]
* New translations doorkeeper.en.yml (Danish)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Breton)
[ci skip]
* New translations doorkeeper.en.yml (Malayalam)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations simple_form.en.yml (Breton)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.yml (Kannada)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Malayalam)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.yml (Malayalam)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Telugu)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations doorkeeper.en.yml (Ido)
[ci skip]
* New translations doorkeeper.en.yml (Occitan)
[ci skip]
* New translations en.yml (Taigi)
[ci skip]
* New translations en.yml (Sorani (Kurdish))
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.yml (Uyghur)
[ci skip]
* New translations en.json (Uyghur)
[ci skip]
* New translations en.yml (Silesian)
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations simple_form.en.yml (Ido)
[ci skip]
* New translations en.yml (Ido)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Latin))
[ci skip]
* New translations simple_form.en.yml (Serbian (Latin))
[ci skip]
* New translations en.yml (Serbian (Latin))
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Bengali)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.yml (Sardinian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Bengali)
[ci skip]
* New translations en.yml (Malay)
[ci skip]
* New translations simple_form.en.yml (Kazakh)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.yml (Hindi)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.yml (Latvian)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations simple_form.en.yml (Estonian)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Kazakh)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations doorkeeper.en.yml (Croatian)
[ci skip]
* New translations simple_form.en.yml (Croatian)
[ci skip]
* New translations en.yml (Croatian)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations doorkeeper.en.yml (Marathi)
[ci skip]
* New translations en.yml (Marathi)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Malayalam)
[ci skip]
* New translations activerecord.en.yml (Malayalam)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations simple_form.en.yml (Armenian)
[ci skip]
* New translations simple_form.en.yml (Armenian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations activerecord.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations devise.en.yml (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-07-15 14:59:26 +02:00
ThibG
c9fbf47a23
Fix being unable to unboost when blocked by their author ( #14308 )
...
Fixes #14307
2020-07-15 14:43:19 +02:00
Takeshi Umeda
27c1146f37
Improve group processing ( #14279 )
...
* Fix the local group's followers collection
* Fix to accept followed relayed_through_account
* Add local delivery to the group's followers
* Fix code style
* Revert "Add local delivery to the group's followers"
This reverts commit 3237effc199772e4c4d30f19082cbc5633f56196.
2020-07-14 19:05:34 +02:00
abcang
aca93fa882
Fix rubocop warning ( #14288 )
...
* Fix rubocop warning
* use limit variable
* use ContextCreatingMethods option
2020-07-14 19:05:07 +02:00
ThibG
d93a24936c
Fix larger video files not being transcoded ( #14306 )
...
Since #14145 , the `set_type_and_extension` has been moved from
`before_post_process` to `before_file_post_process`, but while the former
runs before all validations performed by Paperclip, the latter is dependent
on the order validations and hooks are defined.
In our case, this meant video files could be checked against the generic 10MB
limit, causing validation failures, which, internally, make Paperclip skip
post-processing, and thus, transcoding of the video file.
The actual validation would then happen after the type is correctly set, so
the large file would pass validation, but without being transcoded first.
This commit moves the hook definition so that it is run before checking for
the file size.
2020-07-14 18:50:19 +02:00
Eugen Rochko
09caf7e22e
Change `tootctl search deploy` algorithm ( #14300 )
2020-07-14 18:10:35 +02:00
Eugen Rochko
bd73623069
Fix account domain block not properly unfollowing accounts from domain ( #14304 )
...
Fix #14303
2020-07-13 19:33:10 +02:00
ThibG
0be60c5d05
Fix removing a DomainAllow rule wiping known accounts in open federation mode ( #14298 )
...
Fixes #14296
2020-07-12 22:11:49 +02:00
han@highemelry
fbbc66f53e
Add a visibility icon to boost modal ( #14292 )
...
Related to tootsuite#14123.
Add visibility icon not only status/detailed-status but also modal window for boost.
2020-07-12 15:22:48 +02:00
Eugen Rochko
ece8405ebd
Fix audio and video items in account gallery in web UI ( #14282 )
...
* Fix audio and video items in account gallery in web UI
- Fix audio items not using thumbnails
- Fix video items not using custom thumbnails
- Fix video items autoplaying like GIFs
* Change audio and video items in account gallery to autoplay when opened in web UI
* Fix code style issue
2020-07-10 22:09:28 +02:00
Eugen Rochko
7d777e474a
New Crowdin updates ( #14197 )
...
* New translations devise.en.yml (Uyghur)
[ci skip]
* New translations doorkeeper.en.yml (Uyghur)
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.yml (Sorani (Kurdish))
[ci skip]
* New translations simple_form.en.yml (Sorani (Kurdish))
[ci skip]
* New translations activerecord.en.yml (Sorani (Kurdish))
[ci skip]
* New translations devise.en.yml (Sorani (Kurdish))
[ci skip]
* New translations doorkeeper.en.yml (Sorani (Kurdish))
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.json (Uyghur)
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.json (Uyghur)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Sorani (Kurdish))
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-07-10 20:57:21 +02:00
ThibG
e793d71486
Fix block/mute pagination in WebUI ( #14275 )
...
Fixes #14274
2020-07-10 18:04:18 +02:00
ThibG
c2f5593be0
Audio player visualization improvements ( #14281 )
...
* Fix audio player ticks position
* Split visualizer code into own file to comply with license
* Change top-left corner of visualizer always showing peaks, clean up code
2020-07-10 13:57:05 +02:00
Eugen Rochko
29916e7143
Add attribution notice to the audio player component ( #14280 )
...
The code for rendering a frequency graph around a circle has been adopted (with modifications) from a CodePen by Alex Permyakov
2020-07-10 12:25:44 +02:00
Sasha Sorokin
66f9bd08da
Improve safety of Blurhash component ( #14278 )
...
There was a missed empty hash check. As well as rendering is now wrapped
in try/catch block, so app won't crash if any Blurhash component fails
to render its contents as it's not that critical.
2020-07-09 22:32:36 +02:00
ThibG
bf40d331e6
Freeze scroll position when a dropdown menu is open in the TL ( #14271 )
...
* Freeze scroll position when a dropdown menu is open in the TL
* Apply this to direct TL as well
* Fix case when mouse leaves the menu
2020-07-09 15:09:19 +02:00
Sasha Sorokin
7418e0e613
Replace repetitive blurhash code with component ( #14267 )
...
This commit replaces all unnecessarily repeated code for decoding and
embedding blurhash canvases with separate component - <Blurhash>.
Under the hood Blurhash component will use effect dependent on its
props. This gives a few benefits: it will only be re-rendered whenever
the hash or width/height/dummy props update, and will not render if
canvas won't get to the final DOM, because then effect won't fire,
which prevents weird bugs like #14257 .
2020-07-09 13:01:30 +02:00
Eugen Rochko
7438f56da3
Fix videos on public pages not using custom thumbnails ( #14273 )
2020-07-09 12:53:16 +02:00
mayaeh
4639832293
remove unused word. ( #14250 )
...
ran `yarn manage:translations en`
2020-07-08 23:53:56 +02:00
ThibG
06f67cfca0
Fix new accent color not refreshing when changing thumbnail for audio uploads ( #14264 )
2020-07-08 14:54:47 +02:00
ThibG
5a6b0ce051
Fix WebUI crash on sensitive preview card with no preview thumbnail ( #14261 )
...
Follow-up on #14260 which only fixed half the call sites
2020-07-08 12:58:17 +02:00
ThibG
ad1b26b4bc
Fix WebUI crash on sensitive preview card with no preview thumbnail ( #14260 )
...
Fixes #14257
2020-07-08 09:22:23 +02:00
Eugen Rochko
0edde9d6c8
Fix media attachments enumeration ( #14254 )
...
* Fix media attachment enumeration
* Switch media_attachments id to snowflake ids
Co-authored-by: Thibaut Girka <thib@sitedethib.com>
2020-07-07 15:26:51 +02:00
Eugen Rochko
a79c5e5e63
Fix other sessions not being logged out on password change ( #14252 )
...
While OAuth tokens were immediately revoked, accessing the home
controller immediately generated new OAuth tokens and "revived"
the session due to a combination of using remember_me tokens and
overwriting the `authenticate_user!` method
2020-07-07 15:26:31 +02:00
Sasha Sorokin
fd3649742c
Fix account note border radius ( #14251 )
2020-07-07 13:46:21 +02:00
Eugen Rochko
825f73c3f9
Add ability to choose media thumbnail in web UI ( #14244 )
2020-07-07 12:14:19 +02:00
Eugen Rochko
a0c1bbf583
Change User-Agent of link preview fetching service to include "Bot" ( #14248 )
...
This forces Twitter to render OpenGraph tags in the response
2020-07-07 10:55:18 +02:00
ThibG
aa7142b9e2
Fix hashtag column options styling ( #14247 )
...
* Enable nonces for stylesheets
* Pass nonce to react-select
2020-07-07 01:33:38 +02:00
Eugen Rochko
b6b2d8b8a3
Change design of account notes in web UI ( #14208 )
...
* Change design of account notes in web UI
* Fix `for` -> `htmlFor`
2020-07-07 01:24:03 +02:00
Sasha Sorokin
55969e3bc2
Replace shortNumberFormat with <ShortNumber> ( #14061 )
...
This commit introduces new utility component - ShortNumber. It should
work almost the same way as original shortNumberFormat function,
though it also localizes units and accepts one more prop - renderer.
Renderer is a function that takes rendered short formatted number
and also ready-to-pluralize number to format display result accordingly.
Ready-to-pluralize number allows to correctly select plural for
compactly notated numbers, respecting thousands and other units.
Issue #12451 accurately describes the issue with using raw numbers
when replacing counter with short version. In short, it doesn't work
with languages such as Russian, that require different plurals,
according to the unit number was compacted to.
All previous usages of shortNumberFormat were replaced with new
function, and as it became unused, it was removed to avoid misleading.
2020-07-06 14:27:32 +02:00
mayaeh
e439151df3
Fix restored words from "toot" to "status" ( #14242 )
2020-07-06 12:17:33 +02:00
Eugen Rochko
8517a5fdb4
Add color extraction for audio thumbnails ( #14209 )
2020-07-05 18:28:25 +02:00
mayaeh
6f6e9d8214
Fix-up #13749 ( #14204 )
2020-07-03 13:26:35 +02:00
Eugen Rochko
6163518115
Fix audio modals not using blurhash and poster ( #14199 )
2020-07-02 16:27:35 +02:00
Eugen Rochko
21f1cbaf30
New Crowdin translations ( #13749 )
...
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations devise.en.yml (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Taigi)
[ci skip]
* New translations en.yml (Taigi)
[ci skip]
* New translations simple_form.en.yml (Taigi)
[ci skip]
* New translations activerecord.en.yml (Taigi)
[ci skip]
* New translations devise.en.yml (Taigi)
[ci skip]
* New translations doorkeeper.en.yml (Taigi)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Silesian)
[ci skip]
* New translations en.yml (Silesian)
[ci skip]
* New translations simple_form.en.yml (Silesian)
[ci skip]
* New translations activerecord.en.yml (Silesian)
[ci skip]
* New translations devise.en.yml (Silesian)
[ci skip]
* New translations doorkeeper.en.yml (Silesian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-07-02 00:45:15 +02:00
Takeshi Umeda
911c385f2f
Fix the conditions for incomplete remote content ( #14195 )
2020-07-01 23:38:44 +02:00
Eugen Rochko
ca238c879d
Change Redis#exists calls to Redis#exists? to avoid deprecation warning ( #14191 )
2020-07-01 19:05:21 +02:00
Ariel
eee8b314af
Fix cursor type in statuses ( #14185 )
2020-07-01 13:52:05 +02:00
ThibG
9e14647df8
Fix lock icon not being shown when locking account in profile settings ( #14190 )
2020-07-01 13:51:50 +02:00
ThibG
3e51b04d40
Change move handler to carry blocks over ( #14144 )
...
* Change move handler to carry blocks and mutes over
When user A blocks user B and B moves to a new account C, make A block C
accordingly.
Note that it only works if A's instance is aware of the Move, that is,
if B is on A's instance or has followers there.
* Also notify instances with known people blocking you when moving
* Add automatic account notes when blocking/muting an account that had no note
2020-07-01 13:51:15 +02:00
mayaeh
4b703d398a
follow-up #14149 ( #14192 )
...
ran `yarn manage:translations en`
2020-07-01 11:34:19 +02:00
Eugen Rochko
36e5fd547b
Fix remote files not using Content-Type header, streaming ( #14184 )
2020-06-30 23:58:02 +02:00
ThibG
3afc7977b1
Add user notes on accounts ( #14148 )
...
* Add UserNote model
* Add UI for user notes
* Put comment in relationships entity
* Add API to create user notes
* Copy user notes to new account when receiving a Move activity
* Address some of the review remarks
* Replace modal by inline edition
* Please CodeClimate
* Button design changes
* Change design again
* Cancel note edition when pressing Escape
* Fixes
* Tweak design again
* Move “Add note” item, and allow users to add notes to themselves
* Rename UserNote into AccountNote, rename “comment” Relationship attribute to “note”
2020-06-30 19:19:50 +02:00
Eugen Rochko
16a8db0958
Fix trying to write non-existent image remote URL attribute on preview cards ( #14181 )
...
Regression from #14145
2020-06-29 17:59:04 +02:00
Yamagishi Kazutoshi
72ff9a1d65
Replace to testing-library from enzyme ( #14152 )
2020-06-29 13:58:07 +02:00
trwnh
41acf83cdf
Fix padding on account header ( #14179 )
2020-06-29 13:57:44 +02:00
Eugen Rochko
a3ce01a102
Add customizable thumbnails for audio and video attachments ( #14145 )
...
- Change audio files to not be stripped of metadata
- Automatically extract cover art from audio if it exists
- Add `thumbnail` parameter to `POST /api/v1/media`, `POST /api/v2/media` and `PUT /api/v1/media/:id`
- Add `icon` to represent it in attachments in ActivityPub
- Fix `preview_url` containing URL of missing missing image when there is no thumbnail instead of null
- Fix duration of audio not being displayed on public pages until the file is loaded
2020-06-29 13:56:55 +02:00
ThibG
8b7066dc61
Fix read marker state not being udpated internally ( #14155 )
...
Fixes #14151
2020-06-28 20:55:32 +02:00
ThibG
c92278aa1c
Change sensitive preview cards to not blur text ( #14143 )
...
Also only require click-through for interactive embeds.
2020-06-26 14:31:13 +02:00
Mélanie Chauvel
2fca9d3715
Improve appearence consistency of settings pages ( #13938 )
...
* Fix header button changing header size in settings pages
* Make form buttons look more like a part of the form in settings pages
- Put buttons closer, using same distance as between inputs
- Make buton font size a bit smaller to blend a bit more
- Add the class button to button tags for consisent styling
2020-06-26 00:36:30 +02:00
Mélanie Chauvel
cb63e1e0d7
Improve wording of the “Add media” button tooltip ( #13954 )
...
- Remove (incomplete) list of supported formats
- List types of media (image, video, audio)
- Tell that several images could be uploaded using plural
2020-06-26 00:14:29 +02:00
Sasha Sorokin
8e9572112d
Fix Thai being skipped from language detection ( #13989 )
...
Thai does not separate words by spaces, so I figured out it should be
in 'reliable characters regexp' that denotes languages that do the same.
Related #13891 .
2020-06-25 22:45:01 +02:00
Takeshi Umeda
17c1443b23
Change to correct the role of the boost button ( #14132 )
2020-06-25 22:44:19 +02:00
Takeshi Umeda
1aed75c2d0
Add a visibility icon to status ( #14123 )
...
* Add a visibility icon to status
* Change to using the icon element
* Fix RTL
* Add a public globe
2020-06-25 22:43:59 +02:00
ThibG
907fe2996c
Fix design issues with sensitive preview cards ( #14126 )
...
* Fix design issues with sensitive preview cards
* Center “sensitive” label on preview image for interactive cards
* Add “button” role to sensitive preview card text
2020-06-25 22:42:01 +02:00
ThibG
528c103fc6
Fix avatar size in public page detailed status ( #14140 )
...
Regression from the inline-CSS changes
2020-06-25 22:41:12 +02:00
Eugen Rochko
12ac904a33
Fix various issues around OpenGraph representation of media ( #14133 )
...
- Fix audio attachments not being represented in OpenGraph tags
- Fix audio being represented as "1 image" in OpenGraph descriptions
- Fix video metadata being overwritten by paperclip-av-transcoder
- Fix embedded player not using Mastodon's UI
- Fix audio/video progress bars not moving smoothly
- Fix audio/video buffered bars not displaying correctly
2020-06-25 01:33:01 +02:00
Eugen Rochko
d0dc37eadb
Fix audio/video/images/cards not reacting to window resizes in web UI ( #14130 )
...
* Fix audio/video/images/cards not reacting to window resizes in web UI
* Update app/javascript/mastodon/features/audio/index.js
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2020-06-24 10:25:32 +02:00
ThibG
90445230cd
Fix very wide media attachments resulting in too thin a thumbnail ( #14127 )
...
Fixes #14094
2020-06-23 17:24:29 +02:00
ThibG
df13142cdd
Fix crash in MergeWorker ( #14129 )
...
Similarly to #12324 , the code is passing an Account object where an id
is expected.
2020-06-23 16:40:01 +02:00
ThibG
6c42b23382
never filter own posts from timeline ( #14128 )
...
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
Co-authored-by: ash lea <example@thisismyactual.email>
2020-06-23 16:01:34 +02:00
Eugen Rochko
ce34c13aff
Change volume control and download buttons in web UI ( #14122 )
...
* Fix audio download button not starting download in web UI
* Fix volume controls on audio and video players in web UI
* Remove download button from video player in web UI
2020-06-23 12:20:14 +02:00
ThibG
90477d7e4d
Fix audio player not working when media files are hosted on a different domain ( #14118 )
2020-06-22 19:24:16 +02:00
Eugen Rochko
563a77d0b4
Change design of audio players in web UI ( #14095 )
2020-06-21 02:27:19 +02:00
Takeshi Umeda
c0b52ac871
Fix modifier key to keep the EmojiPicker on macOS ( #14096 )
2020-06-20 13:30:40 +02:00
fuyu
88cbcb5804
Fix unnecessary gap under of video modal ( #14098 )
2020-06-20 13:30:27 +02:00
fuyu
ad1dfea4fa
Fix not working I18n on 2FA and Sign in token page ( #14087 )
2020-06-20 13:30:13 +02:00
ThibG
6a3e2b0fe5
Fix functional user requirements in whitelist mode ( #14093 )
...
Fixes #14092
2020-06-19 19:18:47 +02:00
ThibG
3f5fa64211
Fix initial audio volume not corresponding to what's displayed ( #14057 )
2020-06-15 16:43:30 +02:00
Eugen Rochko
32b7d341b7
Add hints about incomplete remote content to web UI ( #14031 )
2020-06-14 22:29:40 +02:00
fuyu
4a3af0386b
Fixed emoji detection problem to append border ( #14020 )
...
* Fixed emoji detection problem to append border
* Add tests
* Add missing semicolon
* Fixed wrong result when includes different variation selector
* Add missing semicolon
* Remove grapheme-splitter and Change emoji list to array from string
* Update comment
* Remove spaces
Co-authored-by: ThibG <thib@sitedethib.com>
2020-06-10 21:56:14 +02:00
ThibG
9c7220aa3a
Fix TL sometimes jumping when closing modals ( #14019 )
...
Fixes #14018
2020-06-10 13:57:13 +02:00
ThibG
ceac31f04b
Fix WebUI crash when processing accounts before page is loaded ( #14015 )
2020-06-09 20:53:20 +02:00
ThibG
56d1dafdc4
Add hotkey for toggling content warning composer field ( #13987 )
2020-06-09 10:32:32 +02:00
ThibG
a7400a4f97
Make domain block/silence/reject-media code more robust ( #13424 )
...
* Split media cleanup from reject-media domain blocks to its own service
* Slightly improve ClearDomainMediaService error handling
* Lower DomainClearMediaWorker to lowest-priority queue
* Do not catch ActiveRecord::RecordNotFound in domain block workers
* Fix DomainBlockWorker spec labels
* Add some specs
* Change domain blocks to immediately mark accounts as suspended
Rather than doing so sequentially, account after account, while cleaning
their data. This doesn't change much about the time the block takes to
complete, but it immediately prevents interaction with the blocked domain,
while up to now, it would only be guaranteed when the process ends.
2020-06-09 10:32:00 +02:00
Bei Li
0f43ab4830
Update “status” to “toot” for en.json ( #13877 )
2020-06-09 10:28:57 +02:00
ThibG
f55fe1a5ee
Improve rendering of emoji which do not contrast with background ( #13772 )
...
* Refactor list of emoji requiring added outlines so that it can be theme-specific
* Split inaccessible emoji to emoji requiring an outline and ones that can be inverted
* Drop the “silouhettes” from black emoji as they seem to have changed color
* Add inaccessible emojis list for the light theme
* Use bordered emoji variant instead of unreliable CSS
2020-06-09 10:28:23 +02:00
Mélanie Chauvel
a617a8394b
Improve wording and add titles on moderated servers section in /about/more ( #13930 )
2020-06-09 10:28:02 +02:00
Takeshi Umeda
8054496ea7
Fix performance of follow import ( #13836 )
2020-06-09 10:26:58 +02:00
Eugen Rochko
2dbf6bc5ad
Add e-mail-based sign in challenge for users with disabled 2FA ( #14013 )
2020-06-09 10:23:06 +02:00
Takeshi Umeda
654c13ecfb
Add limit parameter to rss ( #13743 )
2020-06-09 00:18:47 +02:00
Takeshi Umeda
3343de96a0
Add visibility parameter in share page ( #13023 )
...
* Add visibility parameter in share page
* Restrict to default privacy
2020-06-09 00:16:30 +02:00
Ben Lubar
da59204700
FIX: filters ignore media descriptions ( #13837 )
...
* FIX: filters ignore media descriptions
* remove parentheses to make codeclimate happy
* combine the text and run the regular expression only once.
https://github.com/tootsuite/mastodon/pull/13837#discussion_r431752581
* Fix use of “filter” instead of “compact”, fix coding style issues
Co-authored-by: Thibaut Girka <thib@sitedethib.com>
2020-06-09 00:11:42 +02:00
ThibG
eda9bb35f1
Hide sensitive preview cards with blurhash ( #13985 )
...
* Use preview card blurhash in WebUI
* Handle sensitive preview cards
2020-06-06 17:41:56 +02:00
ThibG
36f31b5cad
Add blurhash to preview cards ( #13984 )
...
Fixes #13001
2020-06-05 23:10:41 +02:00
ThibG
8b552d6f0c
Fix unpermitted operations on custom emojis leading to cryptic errors ( #13951 )
...
* Display appropriate error when performing unpermitted operation on custom emoji
Fixes #13897
* Remove links to custom emoji actions not performable by moderators
2020-06-05 15:23:27 +02:00
ThibG
e67a55ee49
Fix serialization of replies when some of them are URIs ( #13957 )
...
* Fix serialization of replies when some of them are URIs
Fixes #13956
* Add test
2020-06-04 19:03:31 +02:00
Eugen Rochko
9de5c70980
Fix wrong route helper in encrypted messages controller ( #13952 )
...
And add `created_at` to encrypted message serializer
2020-06-03 20:32:15 +02:00
Mélanie Chauvel
8579befd58
Put “Add new domain block” button on /admin/instances in header ( #13934 )
2020-06-03 20:19:14 +02:00
ThibG
8d57f6c4b4
Fix account redirect confirmation message talking about moved followers ( #13950 )
...
Fixes #13949
2020-06-03 20:18:19 +02:00
Takeshi Umeda
fe20381455
Fix activity not being signed ( #13948 )
2020-06-03 08:33:30 +02:00
Eugen Rochko
b864e78db8
Add E2EE API ( #13820 )
2020-06-02 19:24:53 +02:00
Yamagishi Kazutoshi
196bdd3dd7
Fix ref attr for react-textarea-autozsize ( #13936 )
2020-06-02 03:24:04 +02:00
ThibG
4255757678
Fix admin page crashing when trying to block an invalid domain name ( #13884 )
...
* Fix admin page crashing when trying to block an invalid domain name
Fixes #13880
* Fix trailing and leading spaces not being properly stripped for domain blocks
2020-06-01 03:47:20 +02:00
ThibG
0c7a21a38c
Fix unsent toot confirmation dialog not popping up in single column ( #13888 )
2020-05-31 20:38:56 +02:00
Christopher Choi
2b1a6e7597
Adjust flash alert contrast for better readability ( #13892 )
2020-05-31 20:35:18 +02:00
Brian C. Lindner
f8f195b8c2
Allow Ctrl-click to keep EmojiPicker window open ( #13896 )
2020-05-31 20:34:34 +02:00
ThibG
366942b60f
Fix timeline markers in Firefox (regression from #13887 ) ( #13889 )
...
Unfortunately, Firefox does not support the `keepalive` parameter
I used in the previous PR. However it supports the `navigator.sendBeacon`
API that allows that kind of things, but does not allow setting headers.
Therefore, this PR replaces it with a `sendBeacon` call that passes the
bearer token in the POST data.
Doorkeeper will then handle the auth token out of the box, as long as
it is passed as form data. Passing the query as JSON does not work.
2020-05-29 19:25:57 +02:00
ThibG
bf68cd3bf0
Fix timeline markers not working on Chrome ( #13887 )
...
* Periodically save timeline markers
This saves timeline markers immediately upon message arrival, but not more
than once every 5 minutes.
This does not change how the markers are saved on closing the window,
except that it avoids submitting them if there is no need for it.
* Use the Fetch API when possible instead of XHR on window unload
2020-05-29 16:14:16 +02:00
Mélanie Chauvel
006af53406
Change wording from “Hide media” to “Hide image/images” in Web UI ( #13834 )
2020-05-25 12:30:34 +02:00
Takeshi Umeda
e2694a18c7
Fix csv upload ( #13835 )
2020-05-24 09:15:23 +02:00
Takeshi Umeda
56abcac438
Fix searchable status without explicitly mentioning it ( #13829 )
2020-05-23 05:47:25 +02:00
Takeshi Umeda
8dd03cf8f2
Fix local streaming of hashtag timelines ( #13827 )
2020-05-23 05:46:29 +02:00
ThibG
bb3aff5c8c
Add support for `summary` field for media description ( #13763 )
2020-05-15 17:08:59 +02:00
ThibG
063940f489
Fix hashtag search performing account search as well ( #13758 )
2020-05-14 23:37:37 +02:00
ThibG
60bb6ac6f4
Fix webfinger returning wrong status code on malformed or missing param ( #13759 )
...
Fixes #13757
2020-05-14 23:28:06 +02:00
Eugen Rochko
bb9edd6321
Fix regression in sparkline style in web UI ( #13753 )
2020-05-14 09:01:23 +02:00
Eugen Rochko
b7b081bb51
New Crowdin translations ( #13398 )
...
* New translations simple_form.en.yml (French)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations activerecord.en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations devise.en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Danish)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations activerecord.en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Persian)
[ci skip]
* New translations activerecord.en.yml (Persian)
[ci skip]
* New translations devise.en.yml (Indonesian)
[ci skip]
* New translations activerecord.en.yml (Indonesian)
[ci skip]
* New translations devise.en.yml (Chinese Traditional)
[ci skip]
* New translations activerecord.en.yml (Chinese Traditional)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Ukrainian)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations activerecord.en.yml (Ukrainian)
[ci skip]
* New translations devise.en.yml (Turkish)
[ci skip]
* New translations activerecord.en.yml (Turkish)
[ci skip]
* New translations devise.en.yml (Swedish)
[ci skip]
* New translations activerecord.en.yml (Swedish)
[ci skip]
* New translations devise.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations activerecord.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations activerecord.en.yml (Tamil)
[ci skip]
* New translations activerecord.en.yml (Spanish, Argentina)
[ci skip]
* New translations activerecord.en.yml (Slovenian)
[ci skip]
* New translations activerecord.en.yml (Corsican)
[ci skip]
* New translations devise.en.yml (Occitan)
[ci skip]
* New translations devise.en.yml (Esperanto)
[ci skip]
* New translations activerecord.en.yml (Esperanto)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations devise.en.yml (Welsh)
[ci skip]
* New translations activerecord.en.yml (Welsh)
[ci skip]
* New translations devise.en.yml (Spanish, Argentina)
[ci skip]
* New translations devise.en.yml (Estonian)
[ci skip]
* New translations activerecord.en.yml (Estonian)
[ci skip]
* New translations devise.en.yml (Kazakh)
[ci skip]
* New translations activerecord.en.yml (Kazakh)
[ci skip]
* New translations devise.en.yml (Thai)
[ci skip]
* New translations activerecord.en.yml (Thai)
[ci skip]
* New translations devise.en.yml (Bengali)
[ci skip]
* New translations activerecord.en.yml (Bengali)
[ci skip]
* New translations devise.en.yml (Slovenian)
[ci skip]
* New translations activerecord.en.yml (Slovak)
[ci skip]
* New translations devise.en.yml (Czech)
[ci skip]
* New translations activerecord.en.yml (Greek)
[ci skip]
* New translations activerecord.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Danish)
[ci skip]
* New translations devise.en.yml (Danish)
[ci skip]
* New translations activerecord.en.yml (Danish)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations activerecord.en.yml (Czech)
[ci skip]
* New translations activerecord.en.yml (Basque)
[ci skip]
* New translations devise.en.yml (Catalan)
[ci skip]
* New translations activerecord.en.yml (Catalan)
[ci skip]
* New translations devise.en.yml (Arabic)
[ci skip]
* New translations activerecord.en.yml (Arabic)
[ci skip]
* New translations devise.en.yml (Spanish)
[ci skip]
* New translations activerecord.en.yml (Spanish)
[ci skip]
* New translations activerecord.en.yml (French)
[ci skip]
* New translations devise.en.yml (Greek)
[ci skip]
* New translations devise.en.yml (Basque)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations activerecord.en.yml (Dutch)
[ci skip]
* New translations activerecord.en.yml (Russian)
[ci skip]
* New translations activerecord.en.yml (Portuguese)
[ci skip]
* New translations devise.en.yml (Polish)
[ci skip]
* New translations activerecord.en.yml (Polish)
[ci skip]
* New translations devise.en.yml (Norwegian)
[ci skip]
* New translations activerecord.en.yml (Norwegian)
[ci skip]
* New translations devise.en.yml (Dutch)
[ci skip]
* New translations devise.en.yml (Korean)
[ci skip]
* New translations activerecord.en.yml (Finnish)
[ci skip]
* New translations activerecord.en.yml (Korean)
[ci skip]
* New translations devise.en.yml (Japanese)
[ci skip]
* New translations activerecord.en.yml (Japanese)
[ci skip]
* New translations devise.en.yml (Italian)
[ci skip]
* New translations activerecord.en.yml (Italian)
[ci skip]
* New translations devise.en.yml (Armenian)
[ci skip]
* New translations activerecord.en.yml (Armenian)
[ci skip]
* New translations devise.en.yml (Finnish)
[ci skip]
* New translations devise.en.yml (Corsican)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations devise.en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations devise.en.yml (Romanian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.yml (Sardinian)
[ci skip]
* New translations simple_form.en.yml (Sardinian)
[ci skip]
* New translations activerecord.en.yml (Sardinian)
[ci skip]
* New translations devise.en.yml (Sardinian)
[ci skip]
* New translations doorkeeper.en.yml (Sardinian)
[ci skip]
* New translations activerecord.en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations activerecord.en.yml (Sardinian)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations doorkeeper.en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations doorkeeper.en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations devise.en.yml (Arabic)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-05-13 22:35:20 +02:00
ThibG
9af0613629
Change “hide/show boosts from …” menu to be hidden when the account is muted ( #13748 )
...
Otherwise, it may mislead users into believing this setting is an
exception to the muting behavior.
Fixes #13744
2020-05-13 21:20:45 +02:00
ThibG
e93c08ab96
Fix some account avatars on public pages having incorrect size ( #13692 )
...
* Fix some account avatars on public pages having incorrect size
* Remove outdated and overridden width and height attributes
* Remove more hardcoded width/height attributes
2020-05-13 21:20:34 +02:00
Takeshi Umeda
15c0903772
Fix RedownloadMediaWorker ( #13741 )
2020-05-12 15:55:25 +02:00
ThibG
60dc5738cb
Fix first poll option not being focused when adding a poll ( #13740 )
...
Fixes #13698
2020-05-12 15:29:44 +02:00
Takeshi Umeda
25307798d7
Fix keybase config serializer ( #13742 )
2020-05-12 15:28:29 +02:00
dependabot-preview[bot]
e7e09d3b7b
Bump doorkeeper from 5.3.3 to 5.4.0 ( #13733 )
...
* Bump doorkeeper from 5.3.3 to 5.4.0
Bumps [doorkeeper](https://github.com/doorkeeper-gem/doorkeeper ) from 5.3.3 to 5.4.0.
- [Release notes](https://github.com/doorkeeper-gem/doorkeeper/releases )
- [Changelog](https://github.com/doorkeeper-gem/doorkeeper/blob/master/CHANGELOG.md )
- [Commits](https://github.com/doorkeeper-gem/doorkeeper/compare/v5.3.3...v5.4.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Fix tests
* Fix use of Doorkeeper::AccessToken.find_or_create_for
* Fix tests?
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Thibaut Girka <thib@sitedethib.com>
2020-05-12 15:25:33 +02:00
Takeshi Umeda
b040567ea0
Fix not publishing update of remote timeline ( #13745 )
...
* Fix not publishing update of remote timeline
* fix @ missing
* if/unless to if/else
2020-05-12 15:24:35 +02:00
ThibG
f48e191e8e
Fix sr locale being selected over sr-Latn ( #13693 )
...
* Fix sr locale being selected over sr-Latn
* Update tests
2020-05-11 01:09:21 +02:00
Eugen Rochko
3144f8dbbc
Refactor monkey-patching of Goldfinger ( #12561 )
2020-05-10 11:41:43 +02:00
taicv
f4007517a6
Add `vi` to available locales ( #13542 )
...
* Enable selecting Vietnamese language in Admin Dashboard
* Update settings_helper.rb
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2020-05-10 11:25:35 +02:00
Eugen Rochko
fc7cad8b2d
Add ability to remove identity proofs from account ( #13682 )
...
Fix #12613
2020-05-10 11:21:10 +02:00
Takeshi Umeda
861661100c
Add remote only to public timeline ( #13504 )
...
* Add remote only to public timeline
* Fix code style
2020-05-10 10:36:18 +02:00
Eugen Rochko
909c31a765
Fix error within error when limiting backtrace to 3 lines ( #13120 )
...
Fix #13086 , close #13113
2020-05-10 10:30:27 +02:00
ThibG
e9227d8c10
Remove confusing “You are already signed in.” flash message ( #13547 )
...
When attempting to access the log-in page while already logged in,
Devise's `require_no_authentication` kicks in and sets a flash
message “You are already signed in.”
In almost all cases, this also causes a redirect to /web, which
does not display or clear flash messages, thus leaving the message
to a potentially much later date, like for instance, accessing
/preferences several minutes after being redirected to /web.
2020-05-10 10:16:39 +02:00
ThibG
41536557be
Improve RSS entries for statuses ( #13592 )
...
* Improve RSS entries for statuses
- Render polls in both accounts and tags serializers
- Refactor RSS serializers
- Change title preview to include ellipsis when truncated
- Change title preview to show CW instead of toot text
- Add tests
* Remove title from OEmbed serialization
Twitter doesn't serialize title either, and tihs allows us to move the
title formatting code to the RSS serializers.
2020-05-10 09:50:54 +02:00
ThibG
b20d0db1eb
Remove 'unsafe-inline' from Content-Security-Policy style-src ( #13679 )
...
* Make sure wicg-inert doesn't rely on inline CSS
* Remove unsafe-inline from style-src
2020-05-08 21:22:57 +02:00
Eugen Rochko
86207f5421
Fix failing jest test ( #13681 )
2020-05-08 21:21:57 +02:00
ThibG
5479d33843
Fix own following/followers not showing muted users ( #13614 )
...
Fixes #13612
2020-05-08 20:36:34 +02:00
Taras Gogol
1a03de8592
Fix followings list order | Issue #13538 ( #13676 )
2020-05-08 20:17:16 +02:00
Eugen Rochko
e80d4479c7
Add more ActivityPub controller tests ( #13590 )
2020-05-03 22:19:24 +02:00
ThibG
20ffc12cda
Fix use of inline CSS in public pages ( #13576 )
...
Change `account_link_to` to use an image tag rather than some
inline CSS. Dropped the `size` parameter in the process, but it wasn't
used for anything except the default value of 36px.
Dropped CSS rules that were always overriden, and defaulted to 36px width
and height instead.
2020-05-03 22:04:18 +02:00
Yamagishi Kazutoshi
cf55546c41
Revert "improve status title ( #8596 )" ( #13591 )
...
This reverts commit dff05cd398
.
2020-05-03 18:48:13 +02:00
Eugen Rochko
0ca06d0ba9
Add more tests for ActivityPub controllers ( #13585 )
2020-05-03 16:30:36 +02:00
kaiyou
7a65e2f0db
Only check locally when deduplicating usernames ( #13581 )
...
When deduplicating account usernames for OAuthable users, the routine did check if any account was known with that username, including remote accounts. This caused some unnecessary deduplication, and usernames ending with unexpected trailing _1.
This fixes #13580
2020-04-30 14:39:05 +02:00
ThibG
a30829deee
Fix admin-facing uses of inline CSS ( #13575 )
...
* Move .back-button inline styles to CSS file
All occurrences of the back-button CSS class used the same inline
CSS rules, so moved them over to the CSS file
* Fix “Add new domain block” button using inline CSS
* Replace common pattern of inline-styled button boxes by a CSS class
In particular, switching from `float: left/right` to a flexbox with
`justify-content: space-between`. This implied changing the order of
a few HTML tags and adding an empty `div` in one case.
Also removed a `margin-bottom` rule that wasn't needed due to the
margins of surrounding elements.
* Move account admin view inline CSS to CSS file
2020-04-28 19:39:16 +02:00
ThibG
e88a05f707
Fix page incorrectly scrolling when bringing up dropdown menus ( #13574 )
...
Fixes #13573
For some reason (I suspect this may be related to focusing the item before it
got drown by the browser), Firefox scrolls to top when bringing up dropdown
menus with pre-selected items.
This commit uses the “preventScroll” option as, due to the placement behavior,
the menu should be visible anyway and not trigger scrolling.
2020-04-28 13:19:39 +02:00
ThibG
3b7373ed4c
Fix end-user-facing uses of inline CSS ( #13438 )
...
* Move some inline styles to CSS files
* Move default_account_display_name span to fix useless tags with duplicate id
* Change handling of public pages spoiler text from inline CSS to dataset attribute
* Use the `dir` HTML attribute instead of inline CSS
* Move status action bar inline CSS to CSS file
* Hide logo resources from CSS file, not inline CSS
Fixes #11601
* Move translation prompt styling from inline CSS to CSS file
* Move “invited by” styling on registration form from inline to CSS file
* Use the progress tag to display poll results in JS fallback
* Fix poll results JS-less fallback when the user has voted for an option
* Change account public page “moved” notice to use img tags instead of inline CSS
* Move OTP hint inline CSS to SCSS file
* Hide JS-less fallback vote progressbars from accessibility tools
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2020-04-28 10:16:55 +02:00
ThibG
df5867f072
Refactor/cleanup TIMELINE_DELETE-related code ( #13175 )
2020-04-28 09:53:42 +02:00
ThibG
f53bd1bef6
Fix messed up z-index when NoScript blocks media/previews ( #13449 )
...
Fixes #13444
2020-04-28 09:44:17 +02:00
ThibG
207c5ab2a3
Fix /public showing public instead of community timeline for logged-in users ( #13499 )
2020-04-28 09:43:45 +02:00
ThibG
09162ceb7c
Add `invites_enabled` to API ( #13501 )
2020-04-28 09:43:34 +02:00
Eugen Rochko
adfb22a9dd
Add separate cache directory for non-local uploads ( #12821 )
2020-04-26 23:29:08 +02:00
Eugen Rochko
96920a7b8e
Fix not being able to resolve public resources in development environment ( #13505 )
2020-04-25 22:01:08 +02:00
ThibG
cd3a0a17bc
Fix uninformative error message when uploading unsupported image files ( #13540 )
...
Attempting to upload image files that the browser is unable to load results
in “Oops! An unexpected error occurred.”
This commit changes the error handling so that an unprocessable image results
in the file being sent anyway, which might cover a few corner cases, and
provide a slightly better error message.
2020-04-25 12:27:29 +02:00
ThibG
3526163340
Fix expanded video player issues ( #13541 )
...
Fixes #13536
- Expanding a paused video doesn't autoplay anymore
- Default volume level for the expanded video inherited from the original video
Position/playing state/volume are carried over from the original video player
to the modal, but they're not reported back to the modal as it would require
deeper changes.
2020-04-25 12:16:05 +02:00
Takeshi Umeda
f365b9d6cd
Fix enable/disable relay failures ( #13535 )
2020-04-23 22:04:18 +02:00
Irie Aoi
cf1bf9dda9
Set max-width and max-height to gif video ( #13533 )
2020-04-23 15:49:33 +02:00
ThibG
69696c62b1
Fix and refactor keyboard navigation in dropdown menus ( #13528 )
...
Fixes #13527
- Fixes caught keyboard events being needlessly propagated
- Let up/down arrows wrap around like the tab key does
- Refactor common code
2020-04-21 15:13:26 +02:00
sternenseemann
674005c08e
Allow users to delete their header and avatar ( #13234 )
...
This is achieved by sending a DELETE request to
/settings/profile/pictures/{avatar,header} via a link that is part of
the upload form's hint of the respective picture.
2020-04-20 14:03:03 +02:00
D Anzorge
945c8e207e
Update Twemoji to 12.1.5 ( #13021 )
...
* Update Twemoji to 12.1.5
SVGs from Twemoji repo https://github.com/twitter/twemoji
* Update emoji_map.json to Unicode 12
2020-04-19 23:38:31 +02:00
Takeshi Umeda
f5606cdab4
Add local only to hashtag timeline ( #13502 )
2020-04-18 21:52:39 +02:00
ThibG
2444658e4b
Fix uploaded image orientation in some browsers ( #13493 )
...
Some browsers (at least recent Chrome versions) automatically take
image metadata into account when drawing images into a canvas.
There seem to be no way to prevent that behavior, and the only
way to detect it seems to compare with a known image.
See: https://github.com/w3c/csswg-drafts/issues/4666
Solution adapted from: 1e4df70782
2020-04-18 15:37:03 +02:00
ThibG
0f3317fbe2
Fix not being able to vote ( #13490 )
...
Fix regression introduced by 53f9f8a4ce
2020-04-17 21:54:25 +02:00
ThibG
a93fc74d31
Fix admin actions log crash when displaying updates of deleted announcements ( #13489 )
...
Fixes #13487
2020-04-17 19:54:58 +02:00
Gurgen Hayrapetyan
53f9f8a4ce
Fix Poll fetchPoll action not being debounced. ( #13485 )
...
* Fix Poll fetchPoll action not being debounced.
* Fix unused import in the Poll component
2020-04-16 20:16:20 +02:00
Takeshi Umeda
8eca96eb77
Fix DeliveryWorker not to call failure_tracker when inbox_url is unavailable ( #13482 )
2020-04-16 08:04:10 +02:00
ThibG
c162748a14
Fix confusing error when failing to add an alias to an unknown account ( #13480 )
...
Follow-up to #13452 , fixing broken `uri.nil?` test.
Also remove the separate check for `uri` presence, as that would result
in a “Please review 2 errors below” while only one would be listed.
2020-04-15 20:33:53 +02:00
Eugen Rochko
2d3219549b
Change delivery failure tracking to work with hostnames instead of URLs ( #13437 )
2020-04-15 20:33:24 +02:00
ThibG
add34dd132
Fix “Email changed” notification sometimes having wrong e-mail ( #13475 )
...
* Fix “Email changed” notification sometimes having wrong e-mail
Fixes #6778
The root of the issue is that `send_devise_notification` was called before
the changes were properly commited to the database, causing the mailer to
pick previous values if running too early.
Devise's documentation provides guidance on how to handle that[1][2], however,
I have found it to not be working, as the following happens, in that order:
- `send_devise_notification` is called for the `email_changed` notification.
In that case, `changed?` is false and `saved_changes?` is true, so
if we use the former, we have the same issue.
- the `after_commit` hook is called
- `send_devise_notification` is called for the `confirmation_instructions`
notification.
In that case, `changed?` is still false, and `saved_changes?` still true,
so if we use the latter, that second notification email is simply not
going to be sent (as we would be queuing the notification *after*
executing the after_commit hook).
This is because it may be called from either an `after_update` or
`after_commit` hook, the difference not being a call to `save` but the
transaction actually being committed to the database. This may arguably
be a bug in Devise, or Devise's notification.
The proposed workaround is inspired by Devise's documentation but checks
whether a transaction is open to make the call whether to immediately
send the notification or defer it to the `after_commit` hook.
[1]: https://www.rubydoc.info/github/plataformatec/devise/Devise%2FModels%2FAuthenticatable:send_devise_notification
[2]: 406915cb78/lib/devise/models/authenticatable.rb (L133-L194)
* Fix cases when sending notifications without changing the model
* Defer sending if and only if in transaction including current record
2020-04-15 16:13:44 +02:00
ThibG
dedac235bc
Fix account aliases page ( #13452 )
...
* Fix error not being displayed when adding an account alias, add error for self-references
Co-Authored-By: Mélanie Chauvel (ariasuni) <perso@hack-libre.org>
* Add “You have no aliases.” note in confusing empty aliases table
Co-Authored-By: Mélanie Chauvel (ariasuni) <perso@hack-libre.org>
Co-authored-by: Mélanie Chauvel (ariasuni) <perso@hack-libre.org>
2020-04-13 06:41:43 +02:00
Leonie
a1cc7b361c
Fix API footer link in Web UI ( #13441 )
...
Co-authored-by: koyu <me@koyu.spac>
2020-04-12 13:38:14 +02:00
ThibG
9d57af78d2
Fix WebUI pagination of following, followers, follow requests, blocks and mutes lists ( #13445 )
...
* Fix following, followers and follow requests pagination
* Fix pagination of blocks and mutes
2020-04-12 13:38:00 +02:00
ThibG
b746bda60e
Fix styling of polls in JS-less fallback on public pages ( #13436 )
2020-04-07 18:21:58 +02:00
Eugen Rochko
331bc98f25
Fix trying to delete already deleted file when post-processing ( #13406 )
...
Fix #13403
2020-04-06 14:11:22 +02:00
Eugen Rochko
7745695860
New Crowdin translations ( #13317 )
...
* New translations en.yml (Italian)
[ci skip]
* New translations doorkeeper.en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations devise.en.yml (Ido)
[ci skip]
* New translations doorkeeper.en.yml (Ido)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations activerecord.en.yml (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Georgian)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations en.yml (Hebrew)
[ci skip]
* New translations simple_form.en.yml (Hebrew)
[ci skip]
* New translations activerecord.en.yml (Hebrew)
[ci skip]
* New translations devise.en.yml (Hebrew)
[ci skip]
* New translations doorkeeper.en.yml (Hebrew)
[ci skip]
* New translations en.yml (Hindi)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations doorkeeper.en.yml (French)
[ci skip]
* New translations devise.en.yml (French)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations simple_form.en.yml (Estonian)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations activerecord.en.yml (Serbian (Latin))
[ci skip]
* New translations devise.en.yml (Serbian (Latin))
[ci skip]
* New translations devise.en.yml (Urdu (Pakistan))
[ci skip]
* New translations activerecord.en.yml (Vietnamese)
[ci skip]
* New translations devise.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations devise.en.yml (German)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations devise.en.yml (Galician)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations activerecord.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-04-05 14:56:18 +02:00
Eugen Rochko
50fa554899
Add rate limit for reporting ( #13390 )
2020-04-05 14:40:08 +02:00
ThibG
edce6fc98f
Fix “Show more” not switching to “Show less” on public pages ( #13174 )
...
* Fix “Show more” not switching to “Show less” on public pages
Fixes #13169
* Fix initial text of CW button on public pages when CW are unfolded by default
2020-04-05 14:02:22 +02:00
ThibG
ef48ffc127
Fix PostgreSQL load when linking in announcements ( #13250 )
...
* Fix PostgreSQL load when linking in announcements
Fixes #13245 by caching status lookups
Since statuses are supposed to be known already and we only
need their URLs and a few other things, caching them should
be fine.
Since it's only used by announcements so far, there won't
be much statuses to cache.
* Perform status lookup when saving announcements, not when rendering them
* Change EntityCache#status to fetch URLs instead of looking into the database
* Move announcement link lookup to publishing worker
* Address issues pointed out during review
2020-04-05 12:51:22 +02:00
ThibG
ffd6f3fa8a
Add explanation as to why unlocked accounts may have follow requests ( #13385 )
...
* Add explanation as to why unlocked accounts may have follow requests
* Change wording to avoid “silenced”
2020-04-04 19:02:10 +02:00
Eugen Rochko
6932e0e2af
Add ability to filter audit log in admin UI ( #13381 )
2020-04-03 13:06:34 +02:00
Sasha Sorokin
abbc0c6a87
Improve polls: option lengths & redesign ( #13257 )
...
This commit redesign the polls and increases characters limit for the
options from 25 to 50 characters, giving pollsters more freedom.
Summarizing, the redesign is making the polls more adaptive for upcoming
changes to the options characters limit: the bar, or a "chart", is now
displayed separately from the option itself; vote check mark is moved
next to the option text, making the percentages take less space. Option
lengths are taken into account and text is wrapped to multiple lines
if necessary to avoid overflow.
2020-04-02 17:10:55 +02:00
Eugen Rochko
11deb933f5
Fix returning results when searching for URL with non-zero offset ( #13377 )
...
Fix #13083
2020-04-02 03:39:37 +02:00
Eugen Rochko
c2fc9bca81
Fix pinning a column in web UI sometimes redirecting out of web UI ( #13376 )
...
Fix #13216
2020-04-02 03:12:10 +02:00
Eugen Rochko
b1c596e8f3
Fix background jobs not using locks like they are supposed to ( #13361 )
...
Also:
- Fix locks not being removed when jobs go to the dead job queue
- Add UI for managing locks to the Sidekiq dashboard
- Remove unused Sidekiq workers
Fix #13349
2020-03-31 21:59:03 +02:00
Mélanie Chauvel (ariasuni)
899ff914da
Improve toot clicking areas ( #13327 )
...
* Make the area to the left “Show Thread” also expand the toot in Web UI
* Clicking the left part of a conversation with the avatars now opens it in Web UI
2020-03-31 19:40:23 +02:00
ThibG
41ca3cdb37
Fix content warning being unnecessarily cleared when enabling/disabling CW ( #13348 )
2020-03-31 14:10:18 +02:00
Takeshi Umeda
1c2a286244
Fix ImportsController param to permit :mode ( #13347 )
2020-03-31 12:43:42 +02:00
Mélanie Chauvel (ariasuni)
5a211c478d
Fix wrong color for ellipsis in boost confirmation dialog in Web UI ( #13355 )
2020-03-31 12:39:50 +02:00
Takeshi Umeda
02b0321713
Fix incorrect deletion of local accounts imported by overwriting ( #13350 )
2020-03-30 20:32:34 +02:00
ThibG
1a993f9675
Fix 404 and 410 API errors being silently discarded in WebUI ( #13279 )
...
* Fix 404 and 410 API errors being silently discarded in WebUI
Fixes #13278
* Return more appropriate error when user replies to a deleted toot
* Please CodeClimate
* Fix 404/410 errors on fetching account timelines & identity proofs
* Refactor error handling
* Move error message string to statuses.errors
2020-03-28 17:59:45 +01:00
Eugen Rochko
1cb4645638
Change `tootctl media remove-orphans` to work for all classes ( #13316 )
...
Change `tootctl media lookup` to not use an interactive prompt
2020-03-26 01:56:41 +01:00
Eugen Rochko
ebb4869690
New Crowdin translations ( #13064 )
...
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations devise.en.yml (Icelandic)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Lithuanian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations activerecord.en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations activerecord.en.yml (Kabyle)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations devise.en.yml (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations doorkeeper.en.yml (Breton)
[ci skip]
* New translations simple_form.en.yml (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations devise.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-03-25 23:17:14 +01:00
ThibG
54da8c4337
Fix media not being marked sensitive when client sets a CW but no text ( #13277 )
...
Mastodon enforces the “sensitive” flag on media attachments whenever a toot
is posted with a Content Warning. However, it does so *after* potentially
converting the Content Warning to toot text (when there is no toot text),
which leads to inconsistent and surprising behavior for API clients.
This commit fixes this inconsistency.
2020-03-25 22:40:58 +01:00
ThibG
15c02a7160
Fix frontend crash when deleting announcements ( #13312 )
...
Refactor and fix #13283 , which only worked in some cases.
2020-03-25 22:39:55 +01:00
ThibG
421a3a8f08
Change poll option hover/active styling to be less confusing ( #13313 )
2020-03-25 22:39:18 +01:00
Takeshi Umeda
e1c65c565b
Fix bookmarks also searchable ( #13293 )
2020-03-22 02:40:03 +01:00
Shlee
056f97744a
Migrate Rails ujs as required for Rails 6 Upgrade. ( #13280 )
...
* Update yarn.lock
* Update package.json
* Update public.js
* Update admin.js
* Update log_out.js
* Update common.js
2020-03-21 03:14:50 +01:00
mayaeh
826ccfa973
Add link to bookmarks in web UI dropdown ( #13273 )
2020-03-21 03:14:28 +01:00
Jeong Arm
3b4e54f359
Make bookmarks also searchable ( #13271 )
2020-03-21 03:14:10 +01:00
Daniel Sockwell
577f74ad87
Fix frontend crash when deleting announcements ( #13283 )
...
This two-line change fixes a crash in the front end that occurred
under the following circumstances:
* A server had more than one announcement,
* A user was displaying the announcements, and
* An announcement was deleted (or unpublished, which amounts to
the same thing.)
As might be expected, the bug was caused by attempting to access a
notification using an index value outside the bounds of the existing
announcements. Specifically, in two places. First,
`_markAnnouncementAsRead` attempts to modify announcements based on
the current index. This is what caused the front end crash. Second,
when rendering the `Announcements` component, the code paginates the
announcements and displays the current one. This did not cause a
crash, but caused the front end to confusingly display a blank
announcement (in situations that would have caused a crash) with no
way for the user to navigate back to previous announcements.
This commit fixes both issues by adding a check to ensure that the
code never attempts to access an announcement with an index greater
than or equal to the number of announcements present.
2020-03-21 03:10:42 +01:00
ThibG
977b7ef6d0
Fix reported accounts not being whitelisted when resolving a spamcheck report ( #13289 )
2020-03-21 03:08:09 +01:00
ThibG
c3edb6c02a
Fix WebUI crash in single-column mode on prehistoric browsers ( #13267 )
...
Fixes #13266
2020-03-17 20:43:55 +01:00
ThibG
23b1a9ad55
Fix some timeouts when searching URLs by limiting some database queries ( #13253 )
...
Only look up private toots from database if the request failed because of 401,
403 or 404 errors, as those may indicate a private toot, rather than something
that isn't a toot or cannot be processed.
2020-03-12 23:06:43 +01:00
Eugen Rochko
9ced8b6dd5
Add option to include resolved DNS records when blacklisting e-mail domains in admin UI ( #13254 )
...
* Add shortcuts to blacklist a user's e-mail domain in admin UI
* Add option to blacklist resolved MX and IP records for e-mail domains
2020-03-12 22:35:20 +01:00
Eugen Rochko
da9d81c4ac
Add titles to warning presets in admin UI ( #13252 )
2020-03-12 17:57:59 +01:00
ThibG
2e3c24d1c8
Fix detailed view of direct messages displaying a 0 boost count ( #13244 )
...
The boost count is already removed from private toots,
do the same with direct messages.
2020-03-10 18:39:47 +01:00
ThibG
c5731b4dc7
Fix regression in “Edit media” modal in web UI ( #13243 )
2020-03-10 11:59:44 +01:00
ThibG
0701e09c85
Fix videos with unsupported colorspace not being transcoded ( #13242 )
2020-03-10 11:58:40 +01:00
ThibG
ccd8ceac47
Fix MP4 (H264 + AAC) video files being needlessly re-encoded ( #13239 )
2020-03-09 23:15:59 +01:00
mayaeh
4a87cebf48
Change the string "hidden" to "blocked" in WebUI ( #13221 )
...
* Change the string "hidden" to "blocked" in WebUI.
* update
2020-03-09 09:13:21 +01:00
Eugen Rochko
a0c60d09ff
Change video uploads to always be converted to H264/MP4 ( #13220 )
...
Even if the container format is the same (.mp4), the codec could
be different and not playable in web browsers
2020-03-09 02:20:18 +01:00
Eugen Rochko
0995464585
Change video uploads to enforce certain limits ( #13218 )
...
- Dimensions at most 1920x1200
- Frame rate at most 60
2020-03-09 02:19:07 +01:00
dependabot-preview[bot]
b4bc2817ba
Bump cld3 from 3.2.6 to 3.3.0 ( #13107 )
...
* Bump cld3 from 3.2.6 to 3.3.0
Bumps [cld3](https://github.com/akihikodaki/cld3-ruby ) from 3.2.6 to 3.3.0.
- [Release notes](https://github.com/akihikodaki/cld3-ruby/releases )
- [Commits](https://github.com/akihikodaki/cld3-ruby/compare/v3.2.6...v3.3.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Fix compatibility with cld3 3.3.0
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2020-03-09 00:12:52 +01:00
ThibG
cd7c22da32
Add federation support for the "hide network" preference ( #11673 )
...
* Change ActivityPub follower/following collections to not link first page
* Add support for hiding followers and following of remote users
* Switch to using a single `hide_collections` column
* Address code style remarks
2020-03-09 00:10:29 +01:00
Eugen Rochko
f459919552
Change local media attachments to perform heavy processing asynchronously ( #13210 )
...
Fix #9106
2020-03-08 23:56:18 +01:00
ThibG
852958d725
Fix public posts from silenced accounts not being changed to unlisted visibility ( #13096 )
2020-03-08 16:11:49 +01:00
ThibG
a67fd2fbe1
Add support for links to statuses in announcements to be opened in web UI ( #13212 )
...
* Add support for links to public statuses in announcements to be opened in WebUI
* Please CodeClimate
2020-03-08 16:10:48 +01:00
Mélanie Chauvel (ariasuni)
399fa48f8e
Change the tooltip "Toggle visibility" to "Hide media" in web UI ( #13199 )
2020-03-08 16:09:34 +01:00
guigeekz
eb525ef602
Add submit button to the top of preferences pages ( #13068 )
...
* Move submit button to the top of the edit page
* Duplicate save button on long form
* Fix click submit on profile spec
2020-03-08 16:04:03 +01:00
Bèr Kessels
b5d7ec71ef
Code style improvements in JavaScript ( #13159 )
...
* JS-linter: fix trailing comma's
* Configure eslinter to ignore this onchange error.
2020-03-08 16:02:36 +01:00
ThibG
cb93be3b88
Add ability to delete files uploaded for settings in admin UI ( #13192 )
...
* Allow deleting site uploads
* Refactor and move links into hints
* Fix i18n tests
* Fix HTML output of site_upload_delete_hint
2020-03-08 16:00:24 +01:00
Mélanie Chauvel (ariasuni)
263bedff9e
Change description of privacy levels to be more intuitive in web UI ( #13197 )
...
* Improve description of privacy levels in compose interface
* Change strings in defaultMessage and source as well as english
Co-authored-by: Thibaut Girka <thib@sitedethib.com>
2020-03-08 15:59:55 +01:00
ThibG
ef73f37f36
Fix error when searching for URLs that contain the mention syntax ( #13151 )
...
Fixes #13150
2020-03-08 15:42:20 +01:00
ThibG
49f5db61bc
Add sorting by username, creation and last activity in moderation view ( #13076 )
...
* Add ability to order accounts in moderation view
* Display last status date in “Most recent activity” for remote users
2020-03-08 15:39:13 +01:00
Mélanie Chauvel (ariasuni)
38a26d5314
Fix text area above/right of emoji picker being accidentally clickable in web UI ( #13148 )
2020-03-08 15:36:50 +01:00
Eugen Rochko
a4668d994b
Add specific rate limits for posting and following ( #13172 )
2020-03-08 15:17:39 +01:00
ThibG
1eae25af56
Fix too large announcements not being scrollable in web UI ( #13211 )
2020-03-06 15:20:14 +01:00
koyu
e899e0dc98
Change GIF label to be displayed even when autoplay is enabled in web UI ( #13209 )
2020-03-06 05:31:51 +01:00
Eugen Rochko
9619521459
Remove useless `respond_to` calls ( #13208 )
2020-03-06 01:29:38 +01:00
Eugen Rochko
03d2704430
Change the string "Hide everything from …" to "Block domain …" in web UI ( #13178 )
...
Blocking a domain is closer to blocking all its users than to a mute
action.
2020-03-05 23:20:49 +01:00
Eugen Rochko
df086209a2
Fix "tootctl media remove-orphans" crashing when encountering invalid media ( #13170 )
...
Fixes #13168
2020-03-05 15:56:01 +01:00
Eugen Rochko
635812f9ea
Add tooltips to audio/video player buttons ( #13203 )
2020-03-05 15:52:15 +01:00
ThibG
69aefeb7ee
Fix announcements with fully-qualified mention to local user crashing WebUI ( #13164 )
2020-02-28 13:49:45 +01:00
Eugen Rochko
e0db9f37f5
Fix leak of arbitrary statuses through unfavourite action in REST API ( #13161 )
2020-02-27 12:32:54 +01:00
ThibG
c004399975
Fix dismissing an announcement twice raising an obscure error ( #13124 )
2020-02-24 22:21:40 +01:00
ThibG
d7da2bba02
Fix misleading error when attempting to re-send a pending follow request ( #13133 )
...
Fixes #13131
2020-02-24 21:19:19 +01:00
ThibG
910383d992
Fix backups failing when files are missing from media attachments ( #13146 )
...
Fixes #13123
2020-02-24 21:18:26 +01:00
ThibG
257354863e
Fix duplicate accounts being created when fetching an account for its key only ( #13147 )
...
Fixes #13136
When a user's canonical acct domain is different from its id's domain
(WEB_DOMAIN ≠ LOCAL_DOMAIN), two webfinger queries are required to find the
canonical domain from the URI. However, we skip webfinger queries when
updating only the key of a remote user, which led to the creation of a
duplicate account, using the URI's domain instead of the canonical acct: one.
2020-02-24 21:15:53 +01:00
ThibG
13c00dc42c
Fix `/web` redirecting to `/web/web` in web UI ( #13128 )
...
Fixes #13127
2020-02-22 01:27:34 +01:00
ThibG
78c15db0fa
Fix previously OStatus-based accounts not being detected as ActivityPub ( #13129 )
2020-02-22 01:26:41 +01:00
ThibG
729fe5bfd6
Add source-mapped stacktrace to error message in web UI ( #13082 )
...
* Add source-mapped stack trace to copyable text in error boundary
* Add the error message to the copied report, not only the stack trace
2020-02-19 22:36:52 +01:00
ThibG
8e8d9b3727
Fix account JSON/RSS not being cacheable due to wrong mime type comparison ( #13116 )
...
`request.format` is not a symbol but a `Mime::Type`, so the condition actually
never matched, and a session was created even for those requests, preventing
caching.
2020-02-19 22:31:53 +01:00
ThibG
3cdaa34783
Fix old browsers crashing because of missing `finally` polyfill in web UI ( #13115 )
...
Fix #13015
2020-02-18 17:22:44 +01:00
ThibG
e2b6503921
Fix account's bio not being shown if there are no proofs/fields in admin UI ( #13075 )
2020-02-17 16:38:59 +01:00
ThibG
ddd9bad7f1
Fix sign-ups without checked user agreement being accepted through the web form ( #13088 )
...
* Fix user agreement not being verified
* Fix tests
* Fix up agreement field being dismissed
2020-02-16 12:56:53 +01:00
ThibG
d5a71bf924
Fix invite request input not being shown on sign-up error if left empty ( #13089 )
...
If the “Why do you want to join?” textarea is left empty and the entered params
do not validate, the textarea isn't shown again, unlike other fields.
This commit fixes that by populating an empty `UserInviteRequest` when needed.
2020-02-16 12:38:22 +01:00
Eugen Rochko
d85b330558
Fix unread indicator on announcements not being aligned with text in web UI ( #13052 )
2020-02-08 23:44:01 +01:00
Eugen Rochko
fb336bb684
New Crowdin translations ( #13036 )
...
* New translations en.json (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations doorkeeper.en.yml (Ido)
[ci skip]
* New translations en.yml (Croatian)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.yml (Malay)
[ci skip]
* New translations en.yml (Malayalam)
[ci skip]
* New translations simple_form.en.yml (Malayalam)
[ci skip]
* New translations doorkeeper.en.yml (Malayalam)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.yml (Marathi)
[ci skip]
* New translations doorkeeper.en.yml (Marathi)
[ci skip]
* New translations en.yml (Macedonian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations doorkeeper.en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Kazakh)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.yml (Kannada)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations doorkeeper.en.yml (Kazakh)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations doorkeeper.en.yml (Korean)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.yml (Latvian)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.yml (Lithuanian)
[ci skip]
* New translations simple_form.en.yml (Croatian)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations doorkeeper.en.yml (Italian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Bulgarian)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.yml (Bengali)
[ci skip]
* New translations simple_form.en.yml (Bengali)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.yml (Bulgarian)
[ci skip]
* New translations simple_form.en.yml (Bulgarian)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Danish)
[ci skip]
* New translations doorkeeper.en.yml (Spanish)
[ci skip]
* New translations doorkeeper.en.yml (Slovenian)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Latin))
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations simple_form.en.yml (Slovenian)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations doorkeeper.en.yml (Swedish)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Telugu)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations en.yml (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations doorkeeper.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.yml (Urdu (Pakistan))
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations simple_form.en.yml (Serbian (Latin))
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations simple_form.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations doorkeeper.en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations devise.en.yml (Polish)
[ci skip]
* New translations devise.en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations doorkeeper.en.yml (Polish)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Japanese)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-02-08 23:33:22 +01:00
Eugen Rochko
4cf2ddc5df
Fix rendering `<a>` without `href` when scheme unsupported ( #13040 )
...
- Disallow links with relative paths
- Disallow iframes with non-http protocols and relative paths
Close #13037
2020-02-08 21:22:38 +01:00
Eugen Rochko
f1317633b5
Fix unfiltered params error when generating ActivityPub tag pagination ( #13049 )
2020-02-08 17:29:40 +01:00
Eugen Rochko
bf4fb26b9d
Fix malformed HTML causing uncaught error ( #13042 )
...
Fix OEmbed preview API leaking existence of private statuses (see #12930 )
2020-02-07 15:24:22 +01:00
ThibG
2dae01ff25
Fix native share button not being displayed for unlisted toots ( #13045 )
2020-02-07 13:21:25 +01:00
Eugen Rochko
273aa806d3
Fix punycode being returned in some entities instead of unicode in REST API ( #13035 )
2020-02-03 21:16:37 +01:00
Eugen Rochko
d0fe0d348b
Fix remote convertible media attachments not being saved ( #13032 )
...
Because the file name was set after loading the file, Paperclip
was flagging the differing file extension as content type spoofing
Fix #12938
2020-02-03 18:45:56 +01:00
Eugen Rochko
9c2d10cd0c
Fix punycode being rendered instead of unicode in some places ( #13030 )
2020-02-03 18:44:54 +01:00
ThibG
f7deab10a5
Fix dates (without time) being rendered as datetimes in public pages ( #13034 )
2020-02-03 17:48:56 +01:00
Eugen Rochko
5c4b1db54a
Change signature verification to ignore signatures with invalid host ( #13033 )
...
Instead of returning a signature verification error, pretend there
was no signature (i.e., this does not allow access to resources that
need a valid signature), so public resources can still be fetched
Fix #13011
2020-02-03 17:48:23 +01:00
Eugen Rochko
0c14bb9c69
New Crowdin translations ( #12953 )
...
* New translations en.json (Romanian)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations doorkeeper.en.yml (Occitan)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Dutch)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations simple_form.en.yml (Estonian)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations devise.en.yml (Persian)
[ci skip]
* New translations devise.en.yml (Persian)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations devise.en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-02-03 15:52:20 +01:00
fuyu
b8db3b4cdf
Don't display toggle reveal button in video modal when full screen ( #13026 )
2020-02-03 12:26:00 +01:00
ThibG
99cf92a3cf
Change how unread announcements are handled ( #13020 )
...
* Change meaning of /api/v1/announcements/:id/dismiss to mark an announcement as read
* Change how unread announcements are counted in UI
* Add unread marker to announcements and mark announcements as unread as they are displayed
* Fixups
2020-02-03 01:53:09 +01:00
abcang
94bc823eb6
Search account domain in lowercase ( #13016 )
...
* Search account domain in lowercase
* fix rubocop error
* fix spec/models/account_spec.rb
2020-02-01 15:42:24 +01:00
Renato "Lond" Cerqueira
9e7b2242f7
Fix error when sending moderation notification ( #13014 )
...
Since the statuses helper is not loaded, the rtl helper cannot be found
and the email cannot be sent.
2020-02-01 15:42:12 +01:00
Sasha Sorokin
864c9a2141
Add "Show thread" button to public profiles ( #13000 )
...
This adds "Show thread" button to the status view which is used in
profiles. The logic to display the button is mimicking logic in
web app available at app/javascript/mastodon/components/status.js#L439.
* The little change in components CSS required to remove enforced
underline for all links on public pages on our button.
2020-01-29 17:35:54 +01:00
Eugen Rochko
7774ac36e5
Fix mascot being too large, and a code style issue ( #13002 )
2020-01-29 16:18:33 +01:00
Sasha Sorokin
d0cc024ce9
Add missing translations ( #12996 )
...
This commit adds missing translations for #12966 and #12954 .
2020-01-28 20:28:38 +01:00
Sasha Sorokin
cce0870311
Fix regressions caused by #12961 ( #12961 )
...
This commit attempts to fix most of regressions caused by #12961
pull request which added even spread of space between tabs.
The following fixes were done:
- Don't hide overflow in tabs
As tabs use ::after and ::before pseudo-elements to create arrow on
the bottom of selected tab, "overflow: hidden" will cause this arrow
to look split from the bottom container.
For the future we probably should use slider element instead, which
would align according to currently selected tab, instead of relying
on pseudo-elements. Such method would also allow smooth transitions.
- Disallow wrapping tab text on insufficient space
This would fix some unwanted behavior[1] when on insufficient width,
renderer might attempt wrapping text to not overtake others' space.
[1]: https://mastodon.social/@Gargron/103546083813829165
2020-01-28 02:21:18 +01:00
Eugen Rochko
6c643bed6a
Fix design of announcements in admin UI ( #12989 )
2020-01-28 02:21:00 +01:00
Eugen Rochko
5bc109eeb7
Change announcements to be collapsed on page load in web UI ( #12990 )
2020-01-28 02:20:47 +01:00
Eugen Rochko
87098751c4
Revert "Avoid using uppercase text-transform ( #12684 )" ( #12987 )
...
This reverts commit d0ab8d2d0f
.
2020-01-27 13:44:29 +01:00
Eugen Rochko
9fb8165712
Add publish/unpublish controls to announcements in admin UI ( #12967 )
2020-01-27 11:05:33 +01:00
Eugen Rochko
d67f2c1c25
Change number animations direction based on decrease or increase ( #12971 )
2020-01-27 11:04:11 +01:00
Eugen Rochko
1130c5167c
Add animations to announcement reactions ( #12970 )
2020-01-27 11:03:45 +01:00
ThibG
d9cdd58423
Change last_status_at to be a date, not datetime ( #12966 )
...
* Return last_status_at as date, not datetime
* Fix relative timestamp for dates when delay is inferior to 1 day
* Also fix public directory
* Fix error when last_status_at isn't set
2020-01-26 23:13:48 +01:00
Eugen Rochko
9d3bba9576
Fix expired announcements being re-published ( #12964 )
2020-01-26 22:43:18 +01:00
Eugen Rochko
3ae0b03603
Fix link colors in announcements ( #12965 )
2020-01-26 22:26:50 +01:00
Eugen Rochko
dd68e44cfa
Add streaming API updates for announcements being modified or deleted ( #12963 )
...
Change `all_day` to be a visual client-side cue only
Publish immediately if `scheduled_at` is in the past
Add `published_at` and `updated_at` to announcements JSON
2020-01-26 20:07:26 +01:00
ButterflyOfFire
4bacf6aa2f
Add kabyle language to Mastodon ( #12962 )
...
* Add kabyle language to settings_helper
* Adding kabyle language to application.rb
2020-01-26 14:42:35 +01:00
ThibG
8f37f20ff9
Fix status overflowing in report dialog ( #12959 )
...
Fixes #12942
2020-01-25 22:59:00 +01:00
ThibG
234f1be486
Fix “new items glow” being displayed above settings and announcements ( #12958 )
2020-01-25 19:40:36 +01:00
ThibG
1c85e84b4e
Fix spurious error and incorrect state change when adding a reaction twice ( #12957 )
...
* Fix spurious error and incorrect state change when adding a reaction twice
* Remove superfluous top border for announcements box
2020-01-25 18:19:24 +01:00
ThibG
ab01849287
Improve announcements design ( #12954 )
...
* Move announcements above scroll container; add button to temporarily hide them
* Remove interface for dismissing announcements
* Display number of unread announcements
* Count unread announcements accurately
* Fix size of announcement box not fitting the currently displayed announcement
* Fix announcement box background color to match button color
2020-01-25 16:35:33 +01:00
Eugen Rochko
c058ffd67b
Fix validations of reactions limit ( #12955 )
2020-01-25 16:00:29 +01:00
Eugen Rochko
7b1beaa6e7
New Crowdin translations ( #12936 )
...
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations doorkeeper.en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Telugu)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations doorkeeper.en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations en.yml (Kannada)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Swedish)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations en.json (Kannada)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Dutch)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations doorkeeper.en.yml (Italian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.yml (Hebrew)
[ci skip]
* New translations simple_form.en.yml (Hebrew)
[ci skip]
* New translations doorkeeper.en.yml (Hebrew)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.yml (Hindi)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations doorkeeper.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.json (Ido)
[ci skip]
* New translations en.yml (Ido)
[ci skip]
* New translations simple_form.en.yml (Ido)
[ci skip]
* New translations doorkeeper.en.yml (Ido)
[ci skip]
* New translations doorkeeper.en.yml (Indonesian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations simple_form.en.yml (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations doorkeeper.en.yml (French)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.yml (Georgian)
[ci skip]
* New translations simple_form.en.yml (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations activerecord.en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Kabyle)
[ci skip]
* New translations activerecord.en.yml (Spanish)
[ci skip]
* New translations devise.en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations devise.en.yml (Catalan)
[ci skip]
* New translations activerecord.en.yml (Catalan)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations doorkeeper.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations devise.en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-01-25 11:54:10 +01:00
Eugen Rochko
150c13c4e0
Add limit of 8 different reaction types per announcement ( #12950 )
2020-01-25 05:23:33 +01:00
Eugen Rochko
8ca6f2d3b2
Add number animations ( #12948 )
2020-01-25 05:23:05 +01:00
Eugen Rochko
fb1df3d5d5
Fix user disabling changing activity timestamps, fix nil error ( #12943 )
2020-01-25 05:22:35 +01:00
Eugen Rochko
b169901439
Change font size of announcements to be the same as statuses ( #12949 )
2020-01-25 12:20:06 +09:00
Sasha Sorokin
51f376aee3
Fix unlocalized dropdown button title ( #12947 )
...
In detailed status component, "More" action bar button wasn't
localized. This commit fixes it according to previously used code.
2020-01-24 22:37:04 +01:00
ThibG
bfc08eca51
Fix type error in announcement reaction update event payload ( #12946 )
2020-01-24 22:08:24 +01:00
Ben Lubar
6598ab989b
minor server-sent events fixes ( #12945 )
...
* Send output on the server-sent events stream immediately so the client sees that it was successfully opened even if it doesn't have any messages.
Fix transparent SSE streaming for the public:local and hashtag:local stream types.
* Tell caches to never store server-sent events.
2020-01-24 20:51:33 +01:00
Sasha Sorokin
8b1b901cc0
Evenly spread space between tabs ( #12944 )
...
This commit fixes uneven spread of space between the tabs in profiles
or notifications (filters). The problem was that links and buttons
shown as blocks had their width determined according to the content
inside of them, so if one tab has more text content than another, it
is going to take over others space, which is uneven and results in
incorrectly aligned (?) tabs display.
By specifying the size of 100% for each tab, parent container will be
forced to divide available space by the number of elements and evenly
give each child fixed space, "text-align: center" then doing its best
job to keep tabs text centered in that space. This relatively fixes
the problem, but will introduce another one - when the block has more
content that its width allows to have, in this scenario the text should
be wrapped or will be displayed over the other elements, but I see this
more as translators' problem. Still, for this case "overflow: hidden"
is added and any unfitting text will be cut out.
2020-01-24 20:50:49 +01:00
Eugen Rochko
eba5de6de2
New Crowdin translations ( #12933 )
...
* New translations doorkeeper.en.yml (Kazakh)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations doorkeeper.en.yml (Korean)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Latvian)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations simple_form.en.yml (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations doorkeeper.en.yml (French)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.yml (Georgian)
[ci skip]
* New translations simple_form.en.yml (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Georgian)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.yml (Hebrew)
[ci skip]
* New translations simple_form.en.yml (Hebrew)
[ci skip]
* New translations doorkeeper.en.yml (Hebrew)
[ci skip]
* New translations en.json (Hindi)
[ci skip]
* New translations en.yml (Hindi)
[ci skip]
* New translations en.json (Latvian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations doorkeeper.en.yml (Polish)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations en.yml (Serbian (Cyrillic))
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations simple_form.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.yml (Serbian (Latin))
[ci skip]
* New translations simple_form.en.yml (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Latin))
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations simple_form.en.yml (Slovenian)
[ci skip]
* New translations doorkeeper.en.yml (Slovenian)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Malayalam)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations en.yml (Lithuanian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.yml (Macedonian)
[ci skip]
* New translations en.json (Malay)
[ci skip]
* New translations en.yml (Malay)
[ci skip]
* New translations simple_form.en.yml (Malayalam)
[ci skip]
* New translations doorkeeper.en.yml (Occitan)
[ci skip]
* New translations doorkeeper.en.yml (Malayalam)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations en.yml (Marathi)
[ci skip]
* New translations doorkeeper.en.yml (Marathi)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations doorkeeper.en.yml (Italian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Dutch)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Danish)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (Bulgarian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.yml (Bulgarian)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.yml (Croatian)
[ci skip]
* New translations simple_form.en.yml (Croatian)
[ci skip]
* New translations doorkeeper.en.yml (Croatian)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations doorkeeper.en.yml (Czech)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations doorkeeper.en.yml (Danish)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Bulgarian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Arabic)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations simple_form.en.yml (Bengali)
[ci skip]
* New translations en.yml (Bengali)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Telugu)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations doorkeeper.en.yml (Tamil)
[ci skip]
* New translations en.yml (Urdu (Pakistan))
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations doorkeeper.en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations en.json (Tamil)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations doorkeeper.en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations doorkeeper.en.yml (Swedish)
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-01-24 00:23:30 +01:00
Eugen Rochko
669f1f5e7f
Fix OEmbed leaking information about existence of non-public statuses ( #12930 )
2020-01-24 00:20:51 +01:00
Eugen Rochko
e4aa4a1c28
Fix password change/reset not immediately invalidating other sessions ( #12928 )
...
While making browser requests in the other sessions after a password
change or reset does not allow you to be logged in and correctly
invalidates the session making the request, sessions have API tokens
associated with them, which can still be used until that session
is invalidated.
This is a security issue for accounts that were already compromised
some other way because it makes it harder to throw out the hijacker.
2020-01-24 00:20:38 +01:00
Eugen Rochko
36b1dd934d
Fix relationships page not showing results in admin UI ( #12934 )
...
Follow-up to #12927
2020-01-24 00:20:23 +01:00
Eugen Rochko
40dd82a857
Remove bad encoding middleware ( #12931 )
...
Revert #12741
2020-01-24 00:20:03 +01:00
Eugen Rochko
c1044bd29c
New Crowdin translations ( #12859 )
...
* New translations en.json (Arabic)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.yml (Bengali)
[ci skip]
* New translations simple_form.en.yml (Bengali)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Bulgarian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations simple_form.en.yml (Bulgarian)
[ci skip]
* New translations doorkeeper.en.yml (Bulgarian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Danish)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Arabic)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.yml (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Latin))
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations doorkeeper.en.yml (Swedish)
[ci skip]
* New translations simple_form.en.yml (Slovenian)
[ci skip]
* New translations doorkeeper.en.yml (Slovenian)
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations en.yml (Urdu (Pakistan))
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations doorkeeper.en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Telugu)
[ci skip]
* New translations simple_form.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Telugu)
[ci skip]
* New translations doorkeeper.en.yml (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations en.yml (Serbian (Cyrillic))
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations doorkeeper.en.yml (Polish)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Occitan)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (Hungarian)
[ci skip]
* New translations doorkeeper.en.yml (Indonesian)
[ci skip]
* New translations doorkeeper.en.yml (Korean)
[ci skip]
* New translations doorkeeper.en.yml (Swedish)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (French)
[ci skip]
* New translations doorkeeper.en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations doorkeeper.en.yml (Spanish)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Arabic)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations doorkeeper.en.yml (Czech)
[ci skip]
* New translations doorkeeper.en.yml (French)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kazakh)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations doorkeeper.en.yml (Italian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations devise.en.yml (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Lithuanian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations doorkeeper.en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-01-23 22:04:00 +01:00
Eugen Rochko
f95fd62bac
Add announcements ( #12662 )
...
* Add announcements
Fix #11006
* Add reactions to announcements
* Add admin UI for announcements
* Add unit tests
* Fix issues
- Add `with_dismissed` param to announcements API
- Fix end date not being formatted when time range is given
- Fix announcement delete causing reactions to send streaming updates
- Fix announcements container growing too wide and mascot too small
- Fix `all_day` being settable when no time range is given
- Change text "Update" to "Announcement"
* Fix scheduler unpublishing announcements before they are due
* Fix filter params not being passed to announcements filter
2020-01-23 22:00:13 +01:00
Eugen Rochko
930ba0630f
Fix media attachments without file being uploadable ( #12562 )
...
Fix #12554
2020-01-23 21:40:03 +01:00
ThibG
691b14aaf8
Add “account timeline” filter category ( #12918 )
...
* Add “account timeline” filter category
Previously, no filter category applied to account timelines.
* Rename “Account timelines” into “Profiles”
2020-01-23 21:32:00 +01:00
ThibG
25e7aa913c
Add support for magnet: URIs ( #12905 )
2020-01-23 21:27:26 +01:00
Eugen Rochko
67172aa4f9
Change followers page to relationships page in admin UI ( #12927 )
...
Allow browsing and filtering all relationships instead of just
followers, unify the codebase with the user-facing relationship
manager, add ability to see who the user invited
2020-01-23 20:33:20 +01:00
ThibG
5416a793c1
Fix unfollow confirmations in account directory ( #12922 )
...
Fixes #12921
2020-01-22 16:26:47 +01:00
ThibG
243c5118f1
Fix duplicate “description” meta tag on accounts public pages ( #12923 )
...
Fixes #12920
2020-01-22 16:26:23 +01:00
Ben Lubar
ad7f9fe438
Add transparent support for EventSource streaming. ( #12887 )
...
This activates if the streaming base URL does not start with "ws".
All currently-live streaming base URLs start with "wss://".
2020-01-21 18:57:21 +01:00
Eugen Rochko
9a9eb0f3d4
Fix not all of account's active IPs showing up in admin UI ( #12909 )
2020-01-20 18:00:54 +01:00
ThibG
4a6e4aa83e
Fix admin interface crashing when listing boosts with non-video media attachments ( #12907 )
...
Fix regression introduced by #12879
2020-01-20 17:39:14 +01:00
Eugen Rochko
ba3d2bd01d
Fix search by IP not using alternative browser sessions in admin UI ( #12904 )
2020-01-20 17:00:41 +01:00
ThibG
db2babe5b2
Fix “X new items” not showing up for slow mode on empty timelines ( #12875 )
2020-01-20 16:34:42 +01:00
Eugen Rochko
9ebfb23e87
Various fixes and improvements ( #12878 )
...
* Fix unused role routes being generated
* Remove unused JavaScript code
* Refactor filters code to be DRYer
* Fix `.count == 0` comparisons to `.empty?` in views
* Fix filters in views
2020-01-20 15:55:03 +01:00
Eugen Rochko
813bc119df
Add is to available locales ( #12882 )
...
Fix #12869
2020-01-18 23:22:35 +01:00
Eugen Rochko
e499b6ad7e
Change reported media attachments to always be hidden in admin UI ( #12879 )
...
Also:
- Fix Mastodon logo not showing up in status embeds
- Fix blurhash not being used in status embeds
- Fix blurhash not being used in admin UI
- Fix autoplay param not working correctly on status embeds
2020-01-18 19:50:43 +01:00
ThibG
4eaa481fae
Exempt staff members from spam check ( #12874 )
...
Consider admins and moderators as trusted, for the purpose of the
spam checker.
Fixes #12872
2020-01-17 07:50:30 +01:00
Eugen Rochko
61320da638
Fix access to OEmbed endpoint in secure mode ( #12864 )
2020-01-14 08:52:32 +01:00
Eugen Rochko
ddb8bd13ea
Fix file names being obfuscated on update when file didn't change ( #12857 )
...
Fix #12849
2020-01-13 12:54:33 +01:00
Eugen Rochko
f7ba3e01a4
New Crowdin translations ( #12830 )
...
* New translations en.yml (Telugu)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations simple_form.en.yml (Ukrainian)
[ci skip]
* New translations doorkeeper.en.yml (Ukrainian)
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.yml (Urdu (Pakistan))
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations simple_form.en.yml (Welsh)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations doorkeeper.en.yml (Occitan)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations doorkeeper.en.yml (Polish)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations doorkeeper.en.yml (Slovenian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations en.yml (Serbian (Cyrillic))
[ci skip]
* New translations simple_form.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Serbian (Latin))
[ci skip]
* New translations en.yml (Serbian (Latin))
[ci skip]
* New translations simple_form.en.yml (Serbian (Latin))
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Latin))
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations simple_form.en.yml (Slovenian)
[ci skip]
* New translations en.yml (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations en.json (Malayalam)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations simple_form.en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Kabyle)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Simplified)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Dutch)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Danish)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations en.yml (Croatian)
[ci skip]
* New translations simple_form.en.yml (Croatian)
[ci skip]
* New translations doorkeeper.en.yml (Croatian)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations doorkeeper.en.yml (Czech)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations doorkeeper.en.yml (Danish)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations simple_form.en.yml (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations en.json (Finnish)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations doorkeeper.en.yml (French)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Arabic)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations doorkeeper.en.yml (Asturian)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations simple_form.en.yml (Basque)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.yml (Bengali)
[ci skip]
* New translations simple_form.en.yml (Bengali)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations en.yml (Bulgarian)
[ci skip]
* New translations simple_form.en.yml (Bulgarian)
[ci skip]
* New translations doorkeeper.en.yml (Bulgarian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations en.json (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations activerecord.en.yml (Icelandic)
[ci skip]
* New translations devise.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations devise.en.yml (Estonian)
[ci skip]
* New translations en.json (Estonian)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations devise.en.yml (Catalan)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations devise.en.yml (Catalan)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* i18n-tasks normalize
* yarn manage:translations
2020-01-13 12:02:37 +01:00
ThibG
c297a1e7a7
Fix Ruby 2.7 support ( #12831 )
...
- update http gem to avoid errors
- update blurhash gem to avoid shared object loading error
- update goldfinger gem so the http gem could be updated
- update json gem to avoid warnings
2020-01-12 15:49:30 +01:00
Eugen Rochko
f8b7a9b68b
New Crowdin translations ( #12378 )
...
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Welsh)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations devise.en.yml (German)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations devise.en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.json (Welsh)
[ci skip]
* New translations en.yml (Welsh)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations activerecord.en.yml (Basque)
[ci skip]
* New translations devise.en.yml (Basque)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations activerecord.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations devise.en.yml (Tamil)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations activerecord.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations devise.en.yml (Galician)
[ci skip]
* New translations devise.en.yml (Galician)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations en.json (Asturian)
[ci skip]
* New translations en.yml (Asturian)
[ci skip]
* New translations simple_form.en.yml (Asturian)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations devise.en.yml (Galician)
[ci skip]
* New translations devise.en.yml (Galician)
[ci skip]
* New translations devise.en.yml (Galician)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations devise.en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations devise.en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations activerecord.en.yml (Catalan)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations devise.en.yml (Catalan)
[ci skip]
* New translations en.json (Basque)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations doorkeeper.en.yml (Korean)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations doorkeeper.en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations doorkeeper.en.yml (Indonesian)
[ci skip]
* New translations en.yml (Kazakh)
[ci skip]
* New translations doorkeeper.en.yml (Kazakh)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Tamil)
[ci skip]
* New translations doorkeeper.en.yml (Tamil)
[ci skip]
* New translations en.json (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Estonian)
[ci skip]
* New translations doorkeeper.en.yml (Estonian)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations doorkeeper.en.yml (Arabic)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations activerecord.en.yml (Icelandic)
[ci skip]
* New translations devise.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Swedish)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations doorkeeper.en.yml (Esperanto)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations doorkeeper.en.yml (Italian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations doorkeeper.en.yml (Czech)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations en.yml (Basque)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* i18n-tasks normalize
* New translations en.yml (Thai)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* yarn manage:translations
* New translations en.yml (Thai)
[ci skip]
2020-01-12 15:18:03 +01:00
ThibG
82262a6100
Fix invalid votes from the API being accepted ( #12601 )
...
* Fix invalid votes from the API being accepted
Fixes #12556
- Ensure `choice` is an integer instead of silently converting to 0
- Ensure `choice` corresponds to an actual choice of the poll
* Please CodeClimate
2020-01-12 14:17:03 +01:00
Sasha Sorokin
d0ab8d2d0f
Avoid using uppercase text-transform ( #12684 )
...
One user suggested that the loading indicator should not be written
ALL CAPS, at first it was thought this change is very minor, but then
a few other people asked agreed on the same thing - variant without
caps looks better. It may be related that it is harder to read or just
looks too "catchy". Moreover, I asked @rf@mastodonsocial.ru community
what they think of that and 82% of 22 people agreed on this change.
This commit removes all usage of text-transform: uppercase, where the
font size specified, it changes the value by one pixel larger, so we
still keeping the "designed" size of the labels but without using CAPS.
2020-01-12 14:16:46 +01:00
Sasha Sorokin
c43a59d5a8
Correct margins for heading actions ( #12797 )
...
This commit changes margins of the page heading header, actions in
order to fix displaying with low screen size and long enough header.
It is working by giving heading and action buttons margin from top
and then negating it in parent element. Whenever flex item wrap, the
"negated" margin will be applied again, providing us nice space
between header and action buttons.
This commit also adds a margin to header, so it does not clamp with
the heading actions and they wrap a little earlier (15px ahead). As
well as the left margin is not anymore applied to the first action.
2020-01-12 14:16:20 +01:00
ThibG
431bd6addc
Fix ruby 2.7 warnings about keyword parameters ( #12824 )
2020-01-11 21:38:02 +01:00
ThibG
96b43ad187
Remove dependency on OStatus2 gem ( #12822 )
2020-01-11 21:36:53 +01:00
ysksn
312c00ca35
Refactor StatusThreadingConcern ( #9626 )
...
* Remove #filter_from_context?
* Create scope Status.with_accounts
Retrieving AR objects should be
their model's scope
2020-01-11 19:55:33 +09:00
ThibG
b7927b397d
Add support for linking XMPP URIs in toots ( #12709 )
...
* Fix wrong grouping in Twitter valid_url regex
* Add support for xmpp URIs
Fixes #9776
The difficult part is autolinking, because Twitter-text's extractor does
some pretty ad-hoc stuff to find things that “look like” URLs, and XMPP
URIs do not really match the assumptions of that lib, so it doesn't sound
wise to try to shoehorn it into the existing regex.
This is why I used a specific regex (very close, although slightly more
permissive than the RFC), and a specific scan function (a simplified version
of the generalized one from Twitter).
* Remove leading “xmpp:” from auto-linked text
2020-01-11 02:15:25 +01:00
Daigo 3 Dango
18cd3a9cb3
Suppress backtrace when delivering toots ( #12798 )
...
This is to suppress irrelevant backtrace from errors raised when
delivering toots to remote servers. The errors are usually out of
control by the local server and backtraces don't provide much
information.
This is similar to https://github.com/tootsuite/mastodon/pull/5174
and shortens backtraces like below:
```
WARN: Mastodon::UnexpectedResponseError: https://example.com/inbox returned code 523
WARN: app/workers/activitypub/delivery_worker.rb:48:in `block (3 levels) in perform_request'
app/lib/request.rb:75:in `perform'
app/workers/activitypub/delivery_worker.rb:47:in `block (2 levels) in perform_request'
app/lib/request_pool.rb:53:in `use'
app/lib/request_pool.rb:108:in `block (2 levels) in with'
vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.4.1/lib/active_support/notifications.rb:170:in `instrument'
app/lib/request_pool.rb:107:in `block in with'
app/lib/connection_pool/shared_connection_pool.rb:21:in `block (2 levels) in with'
app/lib/connection_pool/shared_connection_pool.rb:20:in `handle_interrupt'
app/lib/connection_pool/shared_connection_pool.rb:20:in `block in with'
app/lib/connection_pool/shared_connection_pool.rb:16:in `handle_interrupt'
app/lib/connection_pool/shared_connection_pool.rb:16:in `with'
app/lib/request_pool.rb:106:in `with'
app/workers/activitypub/delivery_worker.rb:46:in `block in perform_request'
vendor/bundle/ruby/2.7.0/gems/stoplight-2.2.0/lib/stoplight/light/runnable.rb:51:in `run_code'
vendor/bundle/ruby/2.7.0/gems/stoplight-2.2.0/lib/stoplight/light/runnable.rb:42:in `run_yellow'
vendor/bundle/ruby/2.7.0/gems/stoplight-2.2.0/lib/stoplight/light/runnable.rb:24:in `run'
app/workers/activitypub/delivery_worker.rb:57:in `perform_request'
app/workers/activitypub/delivery_worker.rb:25:in `perform'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:192:in `execute_job'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:165:in `block (2 levels) in process'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:128:in `block in invoke'
vendor/bundle/ruby/2.7.0/gems/nsa-0.2.7/lib/nsa/collectors/sidekiq.rb:31:in `block in call'
vendor/bundle/ruby/2.7.0/gems/nsa-0.2.7/lib/nsa/statsd/publisher.rb:27:in `statsd_time'
vendor/bundle/ruby/2.7.0/gems/nsa-0.2.7/lib/nsa/collectors/sidekiq.rb:30:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:130:in `block in invoke'
app/lib/sidekiq_error_handler.rb:5:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:130:in `block in invoke'
vendor/bundle/ruby/2.7.0/gems/scout_apm-2.3.0.pre3/lib/scout_apm/background_job_integrations/sidekiq.rb:69:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:130:in `block in invoke'
vendor/bundle/ruby/2.7.0/gems/sidekiq-unique-jobs-6.0.18/lib/sidekiq_unique_jobs/server/middleware.rb:29:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:130:in `block in invoke'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:133:in `invoke'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:164:in `block in process'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:137:in `block (6 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:109:in `local'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:136:in `block (5 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/rails.rb:43:in `block in call'
vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.4.1/lib/active_support/execution_wrapper.rb:87:in `wrap'
vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.4.1/lib/active_support/reloader.rb:73:in `block in wrap'
vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.4.1/lib/active_support/execution_wrapper.rb:87:in `wrap'
vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.4.1/lib/active_support/reloader.rb:72:in `wrap'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/rails.rb:42:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:132:in `block (4 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:250:in `stats'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:127:in `block (3 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/job_logger.rb:8:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:126:in `block (2 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:74:in `global'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:125:in `block in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:48:in `with_context'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:42:in `with_job_hash_context'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:124:in `dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:163:in `process'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:83:in `process_one'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:71:in `run'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:16:in `watchdog'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:25:in `block in safe_thread'
```
```
WARN: Stoplight::Error::RedLight: https://example.com/inbox
WARN: vendor/bundle/ruby/2.7.0/gems/stoplight-2.2.0/lib/stoplight/light/runnable.rb:46:in `run_red'
vendor/bundle/ruby/2.7.0/gems/stoplight-2.2.0/lib/stoplight/light/runnable.rb:25:in `run'
app/workers/activitypub/delivery_worker.rb:57:in `perform_request'
app/workers/activitypub/delivery_worker.rb:25:in `perform'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:192:in `execute_job'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:165:in `block (2 levels) in process'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:128:in `block in invoke'
vendor/bundle/ruby/2.7.0/gems/nsa-0.2.7/lib/nsa/collectors/sidekiq.rb:31:in `block in call'
vendor/bundle/ruby/2.7.0/gems/nsa-0.2.7/lib/nsa/statsd/publisher.rb:27:in `statsd_time'
vendor/bundle/ruby/2.7.0/gems/nsa-0.2.7/lib/nsa/collectors/sidekiq.rb:30:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:130:in `block in invoke'
app/lib/sidekiq_error_handler.rb:5:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:130:in `block in invoke'
vendor/bundle/ruby/2.7.0/gems/scout_apm-2.3.0.pre3/lib/scout_apm/background_job_integrations/sidekiq.rb:69:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:130:in `block in invoke'
vendor/bundle/ruby/2.7.0/gems/sidekiq-unique-jobs-6.0.18/lib/sidekiq_unique_jobs/server/middleware.rb:29:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:130:in `block in invoke'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:133:in `invoke'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:164:in `block in process'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:137:in `block (6 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:109:in `local'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:136:in `block (5 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/rails.rb:43:in `block in call'
vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.4.1/lib/active_support/execution_wrapper.rb:87:in `wrap'
vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.4.1/lib/active_support/reloader.rb:73:in `block in wrap'
vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.4.1/lib/active_support/execution_wrapper.rb:87:in `wrap'
vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.4.1/lib/active_support/reloader.rb:72:in `wrap'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/rails.rb:42:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:132:in `block (4 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:250:in `stats'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:127:in `block (3 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/job_logger.rb:8:in `call'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:126:in `block (2 levels) in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:74:in `global'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:125:in `block in dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:48:in `with_context'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:42:in `with_job_hash_context'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:124:in `dispatch'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:163:in `process'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:83:in `process_one'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:71:in `run'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:16:in `watchdog'
vendor/bundle/ruby/2.7.0/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:25:in `block in safe_thread'
```
2020-01-11 02:15:03 +01:00
Sasha Sorokin
03f81f7118
Use heading actions and placeholders in settings ( #12801 )
...
This commit:
- Refactors centered text blocks currently used for placeholders
for empty tables and puts styles for it in separate class -
.centered-text, simply aliasing text-align: center. Which is
furtherly used in this commit.
- Improves applications settings page to use heading actions, moving
"New application" button there, and displaying placeholder "You
have no applications" in place of empty table.
- Improves custom emoji settings page to use heading action
for "Upload" button, making it more easily accessible without
need to scroll through all of the emojis.
- Improves email domain blocks settings page, moving "Add new" to the
heading actions and using placeholder "No e-mail domains currently
blacklisted" instead of showing empty table.
2020-01-11 02:14:45 +01:00
Eugen Rochko
1d5e283c06
Change audio/video playback to stop playback when out of view ( #12486 )
...
Change video player to not loop, since the audio player doesn't
Change playback and mute buttons to feel snappier
2020-01-11 02:02:21 +01:00
Alexander
dff05cd398
improve status title ( #8596 )
...
* improve shown status title, useful for atom/rss
* use single quotes to satisfy codeclimate
* fix tests, make message more pretty
* fix tests
* fix codestyle
* fix codestyle
* remove atom_serializer_spec
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2020-01-11 06:58:16 +09:00
Daigo 3 Dango
f994905ebb
Clarify keyword arguments with ** ( #12769 )
...
This change is to suppress the warning below on on ruby-2.7.0:
- warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
https://www.ruby-lang.org/en/news/2019/12/12/separation-of-positional-and-keyword-arguments-in-ruby-3-0/
2020-01-11 05:57:05 +09:00
Sasha Sorokin
fc0a089800
Rename page_heading_actions variable ( #12799 )
...
Current name - page_heading_actions is long and hard to remember,
this commit shortens it to just heading_actions, which is way more
easier to remember and write, it's logical too.
2020-01-10 01:10:17 +01:00
ThibG
057764b126
Use quality values in Accept field to explicitly prefer JSON over HTML ( #12806 )
2020-01-10 00:10:29 +01:00
ThibG
f52ef9b007
Allow blocking TLDs, and fix TLD blocks not being editable ( #12805 )
...
Fixes #12795
It was already possible to create domain blocks for TLDs, but those
weren't enforced, nor editable. This commit changes it so that they
are enforced and editable.
2020-01-08 22:42:05 +01:00
Sasha Sorokin
b5426b4e9a
Little improvements to filters settings page ( #12793 )
...
When you have many filters, it may be hard for you to reach the button
to create yet another one. This commit moves creation button to the
heading, leaving the page just for the list.
On the other hand, when there are no filters, page looks kind of
strange with the empty table. So text stating obvious fact that user
has no filters was added in this commit too.
Closes #11020
Closes #12790
2020-01-07 10:41:19 +01:00
ThibG
cfaeea1779
Fix reuse of detailed status components ( #12792 )
...
Fixes #12770
2020-01-06 18:22:17 +01:00
Eugen Rochko
413cb7e861
Fix base64-encoded file uploads not being possible ( #12748 )
...
Fix #3804 , Fix #5776
2020-01-04 01:54:07 +01:00
Eugen Rochko
e066de9a3c
Fix missing authentication call in filters controller ( #12746 )
2020-01-03 05:29:08 +01:00
Eugen Rochko
91422d35ed
Fix uncaught unknown format errors in host meta controller ( #12747 )
2020-01-03 05:28:56 +01:00
ThibG
683b263a43
Fix URL search not returning private toots user has access to ( #12742 )
2020-01-03 05:01:45 +01:00
Eugen Rochko
9a1f8c34b0
Fix cache digesting log noise on status embeds ( #12750 )
2020-01-03 05:00:17 +01:00
Matt Panaro
af4be412f5
Fix 12661 ( #12744 )
...
* Revert "persist last-intersected status update and restore when ScrollableList is restored"
This reverts commit 07e26142ef6a8e74bd2ac5e9b461a5a1699bd4c8.
accidentally merged spurious code in https://github.com/tootsuite/mastodon/pull/12661 . https://github.com/tootsuite/mastodon/pull/12735 removes the slowdown that this code was trying to solve; and other functionality successfully restores the view state of the list
* Revert "cache currently-viewing status id to avoid calling redux with identical value"
This reverts commit c93df2159fbd3888a5c48d8a8b8ae61dbbc54b89.
accidentally merged spurious code in https://github.com/tootsuite/mastodon/pull/12661 . https://github.com/tootsuite/mastodon/pull/12735 removes the slowdown that this code was trying to solve; and other functionality successfully restores the view state of the list
2020-01-02 22:46:42 +01:00
ThibG
4fcd1d59a9
Fix RefollowWorker not keeping show_reblogs setting ( #12707 )
...
* Fix RefollowWorker not keeping show_reblogs setting
* Fix RefollowWorker
2020-01-02 20:52:39 +01:00
Eugen Rochko
e8b07657c2
Fix uncaught query param encoding errors ( #12741 )
2020-01-02 17:14:58 +01:00
Sasha Sorokin
dd8d0c7d9d
Add translation project promotion link ( #12736 )
...
This commit adds promotional notice on appearance settings about
translation project if any other locale than English is used. It
allows users to learn and contribute translations to Mastodon.
Step ahead, in this commit one unusual string is added - link to a
guide. By default it refers to Crowdin project itself, but if any of
Mastodon localization teams established their own guide, they can
refer it. Or, if Crowdin supports localized domain for language, it
can also be put there (e.g. https://fr.crowdin.com/ ...).
2019-12-31 22:15:05 +01:00