Age | Commit message (Collapse) | Author |
|
Port e12a5635da7de5a1c3b08b2ce420ee8a56ae4aff to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
|
|
Fix regression introduced by ab8d7c0680d7f75826277be4c8eea1ebd396be8a
|
|
Port ab8d7c0680d7f75826277be4c8eea1ebd396be8a to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
|
|
(#13489)
Fixes #13487
|
|
* Fix Poll fetchPoll action not being debounced.
* Fix unused import in the Poll component
|
|
(#13482)
|
|
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.
|
|
|
|
Conflicts:
- `package.json`:
No real conflict, upstream updated a dependency which is
textually adjacent to a glitch-soc-specific dependency.
Updated it.
- `yarn.lock`:
No real conflict, upstream updated a dependency which is
textually adjacent to a glitch-soc-specific dependency.
Updated it.
|
|
* 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]: https://github.com/heartcombo/devise/blob/406915cb781e38255a30ad2a0609e33952b9ec50/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
|
|
* 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>
|
|
blocks and mutes lists
Port ec31b1b75244c030bb4fb0ccabac7ff8b626db92 to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
Conflicts:
- `README.md`:
We have a different README than upstream, discarded upstream changes
and kept ours.
|
|
Co-authored-by: koyu <me@koyu.spac>
|
|
mutes lists (#13445)
* Fix following, followers and follow requests pagination
* Fix pagination of blocks and mutes
|
|
|
|
|
|
|
|
Fix #13403
|
|
Conflicts:
- `app/javascript/packs/public.js`:
Upstream modified code that we split between multiple files due
to glitch-soc's theming system.
Ported those changes.
|
|
* 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
|
|
|
|
* 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
|
|
* 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
|
|
|
|
Port d3ff06a3205130fa10ffc5d736e8206a9725b5df to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
Port f65568f1d400be2e101bd8b533a1b53807f5c757 to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
|
|
* Add explanation as to why unlocked accounts may have follow requests
* Change wording to avoid “silenced”
|
|
|
|
Port 37b3985bfac5ffdc8e452f92869dcdefb5c92594 to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
Port part of 1fb92037e432913902a5e5c8a5b673b036d84cb8 to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
enabling/disabling CW
Port cf1fa73347c9ca2b1c4f14521e990feba7509e2e to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
Port be2f1597cf6b010a7ea0ffdc45550f87a7ae9dad to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
Port front-end changes from 0d117c106aa72f78dd5cdd371849dd8ce3120198 to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|
|
Conflicts:
- `app/javascript/mastodon/features/compose/components/poll_form.js`:
Upstream bumped poll option character limit, but we already had
a higher one, kept ours.
- `app/validators/poll_validator.rb`:
Upstream bumped poll option character limit, but we already had
a higher one, kept ours.
- `config/initializers/content_security_policy.rb`:
Upstream added a rule, the way we compute ours is different, but
that added rule has been ported.
- `package.json`:
No real conflict, dependency update. Performed the same update.
- `yarn.lock`:
No real conflict, dependency update. Performed the same update.
|
|
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.
|
|
Fix #13083
|
|
Fix #13216
|
|
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
|
|
* 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
|
|
(#13348)
|
|
|
|
|
|
|
|
* 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
|
|
|
|
Port 858d0dd168b737a77506d6aa00f6ed582d0e33c6 to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
|