- jan. 31, 2022
-
-
Claire a rédigé
* Fix followers synchronization mechanism not working when URI has empty path To my knowledge, there is no current implementation on the fediverse that can use bare domains (e.g., actor is at https://example.org instead of something like https://example.org/actor) that also plans to support the followers synchronization mechanism. However, Mastodon's current implementation would exclude such accounts from followers list. Also adds tests and rename them to reflect the proper method names. * Move url prefix regexp to its own constant
-
- nov. 26, 2021
-
-
Claire a rédigé
-
Claire a rédigé
* Fix error when suspending user with an already-existing canonical email block Fixes #17033 While attempting to create a `CanonicalEmailBlock` with an existing hash would raise an `ActiveRecord::RecordNotUnique` error, this being done within a transaction would cancel the whole transaction. For this reason, checking for uniqueness in Rails would query the database within the transaction and avoid invalidating the whole transaction for this reason. A race condition is still possible, where multiple accounts sharing a canonical email would be blocked in concurrent transactions, in which only one would succeed, but that is way less likely to happen that the current issue, and can always be retried after the first failure, unlike the current situation. * Add tests
-
- nov. 05, 2021
-
-
Claire a rédigé
-
Claire a rédigé
Broken since #15827
-
Claire a rédigé
* Add tests * Fix user email address being banned on self-deletion Fixes #16498
-
Claire a rédigé
* Change references to tootsuite/mastodon to mastodon/mastodon * Remove obsolete test fixture * Replace occurrences of tootsuite/mastodon with mastodon/mastodon in CHANGELOG And a few other places
-
Claire a rédigé
* Fix anonymous access to outbox not being cached by the reverse proxy Up until now, anonymous access to outbox was marked as public, but with a 0 duration for caching, which means remote proxies would only serve from cache when the server was completely overwhelmed. Changed that cache duration to one minute, so that repeated anonymous access to one account's outbox can be appropriately cached. Also added `Signature` to the `Vary` header in case a page is requested, so that authenticated fetches are never served from cache (which only contains public toots). * Remove Vary: Accept header from webfinger controller Indeed, we have stopped returning xrd, and only ever return jrd, so the Accept request header does not matter anymore. * Cache negative webfinger hits for 3 minutes
-
Claire a rédigé
* Add tests * Fix serialization of followers/following counts when user hides their network Fixes #16382 Signed-off-by:
Claire <claire.github-309c@sitedethib.com>
-
Claire a rédigé
Follow-up to #16510, forgot the controller exposing the actual followers…
-
Claire a rédigé
* Add tests * Fix some link previews being incorrectly generated from different prior links PR #12403 added a cache to avoid redundant queries when the OEmbed endpoint can be guessed from the URL. This caching mechanism is not perfectly correct as there is no guarantee that all pages from a given domain share the same OEmbed provider endpoint. This PR prevents the FetchOEmbedService from caching OEmbed endpoint that cannot be generalized by replacing a fully-qualified URL from the endpoint's parameters, greatly reducing the number of incorrect cached generalizations.
-
Claire a rédigé
* Add tests * Fix scheduled statuses decreasing statuses counts Fixes #16774
-
Claire a rédigé
* Add tests * Fix webauthn secure key authentication Fixes #16769
-
Claire a rédigé
Fixes #16699
-
Claire a rédigé
Fixes #16602
-
Claire a rédigé
* Add tests * Add security-related tests My first (unpublished) attempt at fixing the issues introduced (extremely hard-to-exploit) security vulnerabilities, addressing them in a test. * Fix authentication failures after going halfway through a sign-in attempt * Refactor `authenticate_with_sign_in_token` and `authenticate_with_two_factor` to make the two authentication steps more obvious
-
Claire a rédigé
* Add test * Fix crash when encountering invalid account fields
-
- mai 10, 2021
-
-
Claire a rédigé
-
- mai 07, 2021
-
-
Eugen Rochko a rédigé
-
Eugen Rochko a rédigé
If a status with a hashtag becomes very popular, it stands to reason that the hashtag should have a chance at trending Fix no stats being recorded for hashtags that are not allowed to trend, and stop ignoring bots Remove references to hashtags in profile directory from the code and the admin UI
-
Eugen Rochko a rédigé
-
- mai 06, 2021
-
-
Claire a rédigé
* Fix issues with POSIX::Spawn, Terrapin and Ruby 3.0 Also improve the Terrapin monkey-patch for the stderr/stdout issue. * Fix keyword argument handling throughout the codebase * Monkey-patch Paperclip to fix keyword arguments handling in validators * Change validation_extensions to please CodeClimate * Bump microformats from 4.2.1 to 4.3.1 * Allow Ruby 3.0 * Add Ruby 3.0 test target to CircleCI * Add test for admin dashboard warnings * Fix admin dashboard warnings on Ruby 3.0
-
- mai 03, 2021
-
-
Claire a rédigé
Clicking the confirmation link multiple times currently leads to entering account settings, which can be confusing. This commit changes that so that it redirects to the root path, so it behaves the same way as clicking only once in most cases.
-
- avr. 25, 2021
-
-
abcang a rédigé
-
- avr. 24, 2021
-
-
Eugen Rochko a rédigé
-
- avr. 23, 2021
-
-
Claire a rédigé
-
- avr. 21, 2021
-
-
Eugen Rochko a rédigé
-
Claire a rédigé
* Add tests * Ensure deleted statuses are marked as such * Save some redis memory by not storing URIs in delete_upon_arrival values * Avoid possible race condition when processing incoming Deletes * Avoid potential duplicate Delete forwards * Lower lock durations to reduce issues in case of hard crash of the Rails process * Check for `lock.aquired?` and improve comment * Refactor RedisLock usage in app/lib/activitypub * Fix using incorrect or non-existent sender for relaying Deletes
-
- avr. 17, 2021
-
-
Eugen Rochko a rédigé
Prevent new accounts from being created using the same underlying e-mail as a suspended account using extensions and period permutations. Stores e-mails as a SHA256 hash
-
- avr. 15, 2021
-
-
Eugen Rochko a rédigé
Fix app scopes not being validated
-
Eugen Rochko a rédigé
With possible values `all`, `followed`, `follower`, and `none`, control from whom notifications will generate a Web Push alert
-
- avr. 12, 2021
-
-
Eugen Rochko a rédigé
-
Eugen Rochko a rédigé
-
- avr. 11, 2021
-
-
Eugen Rochko a rédigé
-
- avr. 10, 2021
-
-
Eugen Rochko a rédigé
Fix #15506
-
- mars 26, 2021
-
-
Claire a rédigé
Raw SQL passed to `pluck` now has to be explicitly marked as SQL via Arel.sql, see https://github.com/rails/rails/pull/27947
-
- mars 24, 2021
-
-
Claire a rédigé
* Update devise-two-factor to unreleased fork for Rails 6 support Update tests to match new `rotp` version. * Update nsa gem to unreleased fork for Rails 6 support * Update rails to 6.1.3 and rails-i18n to 6.0 * Update to unreleased fork of pluck_each for Ruby 6 support * Run "rails app:update" * Add missing ActiveStorage config file * Use config.ssl_options instead of removed ApplicationController#force_ssl Disabled force_ssl-related tests as they do not seem to be easily testable anymore. * Fix nonce directives by removing Rails 5 specific monkey-patching * Fix fixture_file_upload deprecation warning * Fix yield-based test failing with Rails 6 * Use Rails 6's index_with when possible * Use ActiveRecord::Cache::Store#delete_multi from Rails 6 This will yield better performances when deleting an account * Disable Rails 6.1's automatic preload link headers Since Rails 6.1, ActionView adds preload links for javascript files in the Links header per default. In our case, that will bloat headers too much and potentially cause issues with reverse proxies. Furhermore, we don't need those links, as we already output them as HTML link tags. * Switch to Rails 6.0 default config * Switch to Rails 6.1 default config * Do not include autoload paths in the load path
-
Claire a rédigé
Fixes #5551
-
- mars 19, 2021
-
-
Claire a rédigé
* Bypass MX validation for explicitly allowed domains This spares some lookups and prevent issues in some edge cases with local domains. * Add tests * Fix test
-
Claire a rédigé
* Improve account counters handling * Use ActiveRecord::Base::sanitize_sql to pass values instead of interpolating them Keep using string interpolation for `key` as it is safe and using “ActiveRecord::Base::sanitize_sql_hash_for_assignment” would require stitching bits of SQL in a way that is not more easily checked for safety. * Add migration hook to catch PostgreSQL versions earlier than 9.5
-