Commit Graph

1668 Commits

Author SHA1 Message Date
Matt Jankowski def6b686ff
Fix `Rails/WhereRange` cop (#30343) 2024-05-20 09:37:36 +00:00
Jeong Arm a627219b25
Fix moderation action logs (#30342) 2024-05-17 09:18:54 +00:00
Emelia Smith 5fd56512de
Improve Report Notes and Account Moderation Notes (#30288) 2024-05-15 13:38:36 +00:00
Claire d8c4284723
Ensure custom favicon is converted to PNG and ICO (#30208) 2024-05-07 18:15:17 +00:00
Claire 2fe1b8d169
Add API to get multiple accounts and statuses (#27871)
Co-authored-by: noellabo <noel.yoshiba@gmail.com>
2024-05-06 15:19:15 +00:00
Fawaz Farid bc24c4792d
Allow admins to configure instance favicon and logo (#30040) 2024-05-06 15:06:52 +00:00
Claire 30ef9fccf0
Fix hashtag matching pattern matching some link anchors (#30190) 2024-05-06 12:47:19 +00:00
Claire e5062b7135
Fix post deletion not being deferred when those are part of an account warning (#30163) 2024-05-06 09:52:34 +00:00
Râu Cao 9aa31be8d3
Fix local account search on LDAP login being case-sensitive (#30113)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-05-03 09:22:48 +00:00
Matt Jankowski 88882fbbee
Move Rails/HABTM cop out of todo (#30118) 2024-05-02 09:40:05 +00:00
Matt Jankowski 1e7d5d2957
Update `devise-two-factor` to version 5.0.0 (#28325)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-05-02 09:31:41 +00:00
Matt Jankowski 924af400da
Remove unused memoization in `CustomFilter#expires_in` method (#30117) 2024-04-29 12:49:31 +00:00
Matt Jankowski ac7f4d57bb
Use composable query in `Status.without_replies` scope (#30086) 2024-04-29 09:55:37 +00:00
Claire 95e9de5777
Prevent accidental serialization of `Account` and `User` records (#30079) 2024-04-29 09:45:58 +00:00
Matt Jankowski bbf1b603e0
Remove unused `Account.popular` scope (#30068) 2024-04-29 09:04:35 +00:00
Matt Jankowski 2123281f7c
Move `Account` limits to constants (#30087) 2024-04-29 09:02:47 +00:00
Matt Jankowski f0c9cbaf3b
Use `EXPIRATION_DURATIONS` constant in `CustomFilter` class (#30088) 2024-04-29 09:01:46 +00:00
Claire e845594878
Fix moderator account being exposed in account moderation notification (#30082) 2024-04-26 12:42:06 +00:00
Claire 4ef0b48b95
Add in-app notifications for moderation actions/warnings (#30065) 2024-04-25 17:26:05 +00:00
Matt Jankowski f4a53f3fb4
Extract constants for column size length validation limits (#30045) 2024-04-24 08:56:28 +00:00
Matt Jankowski 11e0049b08
Use enum-generated scopes/queries for `BulkImport` (#29975) 2024-04-18 10:13:35 +00:00
Matt Jankowski 650c548c31
Add `not_featured_by` scope to Tag (#28815) 2024-04-17 10:05:38 +00:00
Claire fc89ecc6ca
Change `/api/v1/announcements` to return regular `Status` entities (#26736) 2024-04-17 09:06:23 +00:00
Matt Jankowski 6fed108703
Use Rails `upsert` to generate update_count! query in Counters concern (#28738)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-04-17 08:16:51 +00:00
Matt Jankowski caad1e2628
Add scope `Status.distributable_visibility` (#29950) 2024-04-16 13:16:54 +00:00
Matt Jankowski 6b33d3f81b
Add `CustomFilter.unexpired` scope (#29896) 2024-04-16 09:29:34 +00:00
Matt Jankowski 3159c0a547
Add scope `Status.list_eligible_visibility` (#29951) 2024-04-16 09:17:03 +00:00
Matt Jankowski 13bbde2246
Use existing `DEFAULT_FIELDS_SIZE` constant to limit `Account#fields` (#29911) 2024-04-12 09:04:23 +00:00
Matt Jankowski 285f63c02e
Use composable query in `User.active` scope (#29775) 2024-04-08 13:53:49 +00:00
Claire babbf6017d
Remove caching in `cache_collection` (#29862) 2024-04-08 13:46:13 +00:00
Matt Jankowski c0fe8a9f13
Extract shared callback behaviour to `CustomFilterCache` concern (#29695) 2024-04-05 09:17:58 +00:00
Claire 38b9d31f63
Improve email address validation (#29838) 2024-04-05 07:48:45 +00:00
Matt Jankowski f56309f5f0
Add `by_latest_used` scope, move admin area recent IPs to partial (#29497) 2024-04-02 13:51:34 +00:00
Matt Jankowski b016f03637
Pull out constant from `AccountWarning.recent` scope (#29767) 2024-03-27 14:08:04 +00:00
Matt Jankowski 1d0a43f6a3
Use composable query in `Status.not_domain_blocked_by_account` scope (#29766) 2024-03-27 09:59:45 +00:00
Matt Jankowski 32938dadd7
Add `not_allowed` scope for `PreviewCardTrend` (#29599) 2024-03-26 13:21:20 +00:00
Matt Jankowski cf76380c91
Add `AccountStat.by_recent_status`, use in `Account` (#29704) 2024-03-26 13:12:09 +00:00
Emelia Smith eb926b7e60
Ensure case-insensitive fields are converted to lowercase in user imports (#29740) 2024-03-26 09:30:10 +00:00
Emelia Smith a3e8b78250
Ensure case-insensitive fields are converted to lowercase in Admin Imports (#29739) 2024-03-26 09:30:07 +00:00
Claire 37ca59815c
Remove setting for unfollow confirmation modal, and make it unconditional (#29373) 2024-03-22 16:24:04 +00:00
Claire 58376eedda
Remove obsolete `admin` and `moderator` columns from `users` table (#29718) 2024-03-22 16:22:36 +00:00
Claire d71d26a3c9
Reattribute notification-related records if possible when merging accounts (#29694) 2024-03-22 16:21:53 +00:00
Claire dfa43707eb
Change `AccountRelationshipSeveranceEvent` model to store lost followers and following counts separately (#29714) 2024-03-22 15:44:31 +00:00
Matt Jankowski 8c1d29df7e
Use `has_many through` instead of `delegate` for ARSE<>SR (#29672) 2024-03-22 14:43:35 +00:00
Matt Jankowski 77897cd24c
Use existing `SeveredRelationship.about_local_account` scope in more places (#29673) 2024-03-21 08:36:49 +00:00
Matt Jankowski cdd168f5d3
Update `enum` away from deprecated (#29678) 2024-03-21 08:32:35 +00:00
Claire f4d753aedf
Fix error in severed relationship event serializer (#29670) 2024-03-20 17:14:53 +00:00
Claire 98a2bb8be2
Fix issue with severed relationships notifications (#29668) 2024-03-20 17:02:09 +00:00
Claire 954b470fbc
Fix error when attempting to delete posts that triggered a notification request (#29666) 2024-03-20 16:48:24 +00:00
Claire d4449cc682
Fix account_relationship_severance_events unique indexes (#29665) 2024-03-20 16:08:34 +00:00
Claire 44bf7b8128
Add notifications of severed relationships (#27511) 2024-03-20 15:37:21 +00:00
Claire 8a1423a474
Allow unblocking email addresses from any matching account (#29305) 2024-03-20 14:38:00 +00:00
Matt Jankowski 62e266fbd6
Add `BrowserDetection` model concern (#29513) 2024-03-19 15:39:14 +00:00
Claire d5063072c3
Revert friends-of-friends follow recommendation query to using a CTE (#29619) 2024-03-18 12:57:21 +00:00
Matt Jankowski 838b0bdf2d
Remove unused `Account::Interactions#endorsed?` method (#29463) 2024-03-15 09:00:26 +00:00
Matt Jankowski 6c3e718b86
Remove setting of `sensitive` value (default false, not null) in Status model (#29589) 2024-03-14 13:56:59 +00:00
Matt Jankowski 14aa7f1e15
Use `Account.activitypub` generated scope (#28157) 2024-03-14 13:19:20 +00:00
Matt Jankowski 0bc17a3d48
Use enum-generated `public_visibility` scope on Status (#28156) 2024-03-14 09:31:57 +00:00
Matt Jankowski 19cbadfbd6
Use enum-generated scope for `IpBlock` in CLI (#28144) 2024-03-14 09:31:15 +00:00
Matt Jankowski c09b8a7164
Add `Account.without_internal` scope (#29559)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-03-13 14:11:23 +00:00
Claire b43eaa4517
Refactor notification filtering behavior definition (#29567) 2024-03-13 10:35:49 +00:00
Matt Jankowski 01b624c4a0
Use `normalizes` on `CustomFilter#context` value (#27602) 2024-03-13 08:50:21 +00:00
Matt Jankowski d4ed7e466c
Extract `by_domain_length` scope in `DomainNormalizable` concern (#29517) 2024-03-12 13:09:11 +00:00
Matt Jankowski 216cea1e27
Fix incorrect frequency value in `FriendsOfFriendsSource` data (#29550) 2024-03-12 08:38:32 +00:00
Eugen Rochko c10bbf5fe3
Add notification policies and notification requests in web UI (#29433) 2024-03-11 15:02:21 +00:00
Jeong Arm 4a6ddbc9c0
Normalize idna domain before account unblock domain (#29530) 2024-03-11 09:28:08 +00:00
Eugen Rochko 5b3a8737d6
Add hints for rules (#29539) 2024-03-11 08:57:07 +00:00
Eugen Rochko 50b17f7e10
Add notification policies and notification requests (#29366) 2024-03-07 14:53:37 +00:00
Claire ee8d0b9447
Fix follow suggestions potentially including silenced or blocked accounts (#29306) 2024-03-04 06:35:20 +00:00
HTeuMeuLeu 934cab7508
New welcome email (#28883)
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2024-03-01 12:16:53 +00:00
Matt Jankowski 3389c41b58
Move `nobody` position in `UserRole` magic number to constant (#29465) 2024-03-01 11:05:24 +00:00
Matt Jankowski 8429d07454
Add `RankedTrend` concern for trends classes (#29388) 2024-02-26 13:45:39 +00:00
Matt Jankowski 0ef44ee720
Move `AccountSuggestions::Source` subclasses default limit value to constant (#29282) 2024-02-20 09:21:49 +00:00
Matt Jankowski 785e2f9399
Add scope `providing_styles` to `UserRole` (#29286) 2024-02-20 09:18:05 +00:00
Matt Jankowski 245064bb98
Move "everyone" role and "instance actor" account magic number IDs to constants (#29260) 2024-02-19 11:09:43 +00:00
Wolfgang Fournès cfadb87077
Update enum syntax to use the new Rails 7.0 style (#29217) 2024-02-16 14:54:23 +00:00
Claire b31af34c97
Merge pull request from GHSA-vm39-j3vx-pch3
* Prevent different identities from a same SSO provider from accessing a same account

* Lock auth provider changes behind `ALLOW_UNSAFE_AUTH_PROVIDER_REATTACH=true`

* Rename methods to avoid confusion between OAuth and OmniAuth
2024-02-14 15:16:07 +01:00
Emelia Smith 68eaa804c9
Merge pull request from GHSA-7w3c-p9j8-mq3x
* Ensure destruction of OAuth Applications notifies streaming

Due to doorkeeper using a dependent: delete_all relationship, the destroy of an OAuth Application bypassed the existing AccessTokenExtension callbacks for announcing destructing of access tokens.

* Ensure password resets revoke access to Streaming API

* Improve performance of deleting OAuth tokens

---------

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-02-14 15:15:34 +01:00
Emelia Smith e8b66a0525
Ignore legacy moderator and admin columns on User model (#29188) 2024-02-13 17:14:49 +00:00
Claire 7ee93b7431
Change `source` attribute of `Suggestion` entity in `/api/v2/suggestions` back to a string (#29108) 2024-02-06 17:10:17 +00:00
Claire 66dda7c762
Fix already-invalid reports failing to resolve (#29027) 2024-02-06 09:35:27 +00:00
Matt Jankowski 86500e3312
Extract scenic view model common methods to concern (#28111) 2024-02-06 09:08:07 +00:00
Eugen Rochko fa0ba67753
Change materialized views to be refreshed concurrently to avoid locks (#29015) 2024-01-30 18:21:30 +00:00
Eugen Rochko c4af668e5c
Fix follow recommendations for less used languages (#29017) 2024-01-30 17:24:40 +00:00
Matt Jankowski 42ab855b23
Add specs for `Instance` model scopes and add `with_domain_follows` scope (#28767) 2024-01-25 15:28:27 +00:00
Matt Jankowski 6b6586f5d0
Add `CustomFilterKeyword#to_regex` method (#28893) 2024-01-25 13:00:34 +00:00
Matt Jankowski 38f7f8b909
Tidy up association declaration in `Instance` model (#28880) 2024-01-24 17:30:28 +00:00
Matt Jankowski 7a1f087659
Add `created_before` and `updated_before` scopes to `MediaAttachment` (#28869) 2024-01-24 10:32:54 +00:00
Matt Jankowski 9d413cbaf8
Fix `Rails/WhereExists` cop in app/models (#28863) 2024-01-24 09:57:49 +00:00
Matt Jankowski 599bc69503
Simplify `AccountSummary.filtered` query generation (#28868) 2024-01-24 09:57:32 +00:00
Eugen Rochko 5b1eb09d54
Add annual reports for accounts (#28693) 2024-01-24 09:38:10 +00:00
Matt Jankowski c0e8e457ab
Eager loading fixes for `api/` controllers (#28848) 2024-01-23 11:41:54 +00:00
Matt Jankowski b0207d7757
Add coverage for `Tag.recently_used` scope (#28850) 2024-01-23 09:10:11 +00:00
Matt Jankowski 18004bf227
Add `Account.matches_uri_prefix` scope and use in activitypub/followers_synchronizations controller (#28820) 2024-01-22 13:55:37 +00:00
Matt Jankowski 5fc4ae7c5f
Move privacy policy into markdown file (#28699) 2024-01-19 11:22:23 +00:00
Matt Jankowski 1480573c83
Add `Account.auditable` scope, fix N+1 in admin/action_logs#index (#28812) 2024-01-19 01:39:30 +00:00
Matt Jankowski f866413e72
Extract shared tagged statuses method in `FeaturedTag` (#28805) 2024-01-18 16:14:15 +00:00
Matt Jankowski d0b3bc23d7
Remove unused `matches_domain` scopes on Account, DomainAllow, DomainBlock (#28803) 2024-01-18 16:11:04 +00:00
Matt Jankowski 0b853678a4
Add coverage for `api/v1/peers/search` endpoint and extract controller query to Instance scope (#28796) 2024-01-18 15:57:10 +00:00
Matt Jankowski 9fb9ef418a
Fix `Rails/WhereExists` cop in User model (#28792) 2024-01-18 13:55:44 +00:00