Matt Jankowski
08fb9d300a
Spec coverage for settings/preferences/* controllers ( #24825 )
2023-05-04 05:44:27 +02:00
Matt Jankowski
668a19a2f3
Fix Performance/DeletePrefix cop ( #24796 )
2023-05-02 21:07:45 +02:00
Matt Jankowski
f1c1dd0118
Rename with_lock
to with_redis_lock
to avoid confusion with ActiveRecord's method ( #24741 )
2023-05-02 18:16:07 +02:00
Claire
9189e90ff2
Add fallback redirection when getting a webfinger query LOCAL_DOMAIN@LOCAL_DOMAIN
( #23600 )
...
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2023-05-02 17:42:42 +02:00
Claire
32a030dd74
Rewrite import feature ( #21054 )
2023-05-02 12:08:48 +02:00
Matt Jankowski
6e226f5a32
Fix Rails/ActionOrder cop ( #24692 )
2023-04-30 06:46:39 +02:00
Claire
faa336e3f7
Change logged-out WebUI HTML pages to be cached for a few seconds ( #24708 )
2023-04-28 10:27:26 +02:00
Claire
1c61869eed
Fix /api/v1/custom_emojis being cached even when unauthenticated API access is disallowed ( #24665 )
2023-04-28 10:01:38 +02:00
Claire
b0bf6216e6
Fix /api/v1/instance/domain_blocks being unconditionally cached ( #24662 )
2023-04-26 11:42:47 +02:00
Claire
62ab7506d6
Fix /actor needlessly reading session cookie and varying on Signature ( #24664 )
2023-04-26 11:42:26 +02:00
Claire
1419f90ef2
Fix some user-independent endpoints potentially reading session cookies ( #24650 )
2023-04-25 22:14:44 +02:00
Claire
276c39361b
Fix anonymous visitors getting a session cookie on first visit ( #24584 )
2023-04-25 16:51:38 +02:00
Eugen Rochko
6084461cd0
Change unauthenticated responses to be cached in REST API ( #24348 )
2023-04-25 15:41:34 +02:00
Claire
e9a79d46cd
Fix crash when SSO_ACCOUNT_SETTINGS is not defined ( #24628 )
2023-04-24 20:26:04 +02:00
Matt Jankowski
0a5f0a8b20
Remove instance variables from helper usage ( #24203 )
2023-04-23 22:35:54 +02:00
Claire
58a1b2e330
Fix caching logic with regards to Accept-Language, Cookie, and Signature ( #24604 )
2023-04-23 22:27:24 +02:00
Eugen Rochko
e98c86050a
Refactor Cache-Control
and Vary
definitions ( #24347 )
2023-04-19 16:07:29 +02:00
Robert R George
4db8230194
Add trend management to admin API ( #24257 )
2023-04-18 11:33:30 +02:00
Eugen Rochko
e5c0b16735
Add progress indicator to sign-up flow ( #24545 )
2023-04-16 07:01:24 +02:00
Matt Jankowski
d193bc8c5c
Remove unused methods in 2FA OTP Auth Controller ( #24220 )
2023-04-07 14:13:53 +02:00
Claire
9d08b81193
Fix user archive takeouts when using OpenStack Swift ( #24431 )
2023-04-05 19:31:49 +02:00
Claire
280fa3b2c0
Fix invalid/expired invites being processed on sign-up ( #24337 )
2023-03-31 21:42:28 +02:00
Eugen Rochko
a9b5598c97
Change user settings to be stored in a more optimal way ( #23630 )
...
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-03-30 14:44:00 +02:00
Claire
e084b5b82d
Fix user archive takeout when using OpenStack Swift or S3 providers with no ACL support ( #24200 )
2023-03-27 17:07:37 +02:00
Matt Jankowski
0663803348
Move link header setting to after_action ( #24251 )
2023-03-26 00:40:01 +01:00
Matt Jankowski
e633b26f4f
Add allow_other_host in redirects which may go outside app ( #24252 )
2023-03-26 00:38:32 +01:00
Claire
2626097869
Fix Rails cache namespace being overriden with v2
for cached statuses ( #24202 )
2023-03-22 15:47:44 +01:00
Matt Jankowski
7bef11630d
Remove references to non-existent actions ( #24183 )
2023-03-20 20:03:44 +01:00
Jean byroot Boussier
160f38f03d
Workaround the ActiveRecord / Marshal serialization bug on Ruby 3.2 ( #24142 )
...
Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
2023-03-17 14:37:30 +01:00
CSDUMMI
d75a1e5054
Link to the Identity provider's account settings from the account settings ( #24100 )
...
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-03-17 10:09:01 +01:00
Eugen Rochko
75e5a6e437
Change user backups to use expiring URLs for download when possible ( #24136 )
2023-03-16 22:46:52 +01:00
Christian Schmidt
bd047acc35
Replace Status#translatable?
with language matrix in separate endpoint ( #24037 )
2023-03-16 11:07:24 +01:00
Nick Schonning
25d36b6edd
Autofix Rubocop Style/RedundantArgument ( #23798 )
2023-03-16 10:34:00 +09:00
Claire
a232a1feb8
Fix misleading error code when receiving invalid WebAuthn credentials ( #23568 )
2023-03-15 04:15:20 +01:00
CSDUMMI
39c7236649
Redirect users to SLO at the IdP after logging them out of Mastodon. ( #24020 )
2023-03-15 03:52:40 +01:00
CSDUMMI
d258ec8e3b
Prefer the stored location as after_sign_in_path in Omniauth Callback Controller ( #24073 )
2023-03-13 00:06:27 +01:00
Claire
f8bb4d0d6b
Fix server error when failing to follow back followers from /relationships
( #23787 )
2023-03-03 20:36:18 +01:00
Claire
c2a046ded1
Fix “Remove all followers from the selected domains” being more destructive than it claims ( #23805 )
2023-03-03 20:25:15 +01:00
Nick Schonning
434770f580
Autofix Rubocop Rails/FindById ( #23762 )
2023-02-21 10:21:48 +09:00
Nick Schonning
717683d1c3
Autofix Rubocop remaining Layout rules ( #23679 )
2023-02-20 06:58:28 +01:00
Nick Schonning
aef0051fd0
Enable Rubocop HTTP status rules ( #23717 )
2023-02-20 11:16:40 +09:00
Nick Schonning
2177daeae9
Autofix Rubocop Style/RedundantBegin ( #23703 )
2023-02-19 07:09:40 +09:00
Nick Schonning
c38bd17657
Autofix Rubocop Style/TrailingCommaInArguments ( #23694 )
2023-02-18 12:39:58 +01:00
Nick Schonning
e2a3ebb271
Autofix Rubocop Style/IfUnlessModifier ( #23697 )
2023-02-18 12:37:47 +01:00
Nick Schonning
a6f77aa28a
Autofix Rubocop Lint/AmbiguousOperatorPrecedence ( #23681 )
2023-02-18 04:30:23 +01:00
Claire
d6930b3847
Add API parameter to safeguard unexpect mentions in new posts ( #18350 )
2023-02-13 16:36:29 +01:00
Claire
832595d1e7
Remove posts count and last posts from ActivityPub representation of hashtag collections ( #23460 )
2023-02-08 17:57:25 +01:00
Nick Schonning
f68bb52556
Apply Rubocop Style/NegatedIfElseCondition ( #23451 )
2023-02-08 07:07:36 +01:00
Nick Schonning
2e652aa81c
Apply Rubocop Performance/RedundantSplitRegexpArgument ( #23443 )
...
* Apply Rubocop Performance/RedundantSplitRegexpArgument
* Update app/controllers/concerns/signature_verification.rb
2023-02-08 02:25:20 +01:00
Claire
20a479ff7c
Change POST /settings/applications/:id
to regenerate token on scopes change ( #23359 )
...
Fixes #23096
2023-02-02 12:03:49 +01:00
Eugen Rochko
21780c0204
Change notifications per page from 15 to 40 in REST API ( #23348 )
2023-02-01 11:23:54 +01:00
Claire
68dcbcb7bf
Add more specific error messages to HTTP signature verification ( #21617 )
...
* Return specific error on failure to parse Date header
* Add error message when preferredUsername is not set
* Change error report to be JSON and include more details
* Change error report to differentiate unknown account and failed refresh
* Add tests
2023-01-18 16:47:56 +01:00
Claire
343e1fe8e9
Add confirmation screen when handling reports ( #22375 )
...
* Add confirmation screen on moderation actions
* Add flash notice when a report has been processed
* Refactor tests
* Add tests
2023-01-18 16:40:09 +01:00
Claire
4b92e59f4f
Add support for editing media description and focus point of already-posted statuses ( #20878 )
...
* Add backend support for editing media attachments of existing posts
* Allow editing media attachments of already-posted toots
* Add tests
2023-01-18 16:33:55 +01:00
Claire
b034dc42be
Fix /api/v1/admin/trends/tags using wrong serializer ( #18943 )
...
* Fix /api/v1/admin/trends/tags using wrong serializer
Fix regression from #18641
* Only use `REST::Admin::TagSerializer` when the user can `manage_taxonomies`
* Fix admin trending hashtag component to not link if `id` is unknown
2023-01-18 16:28:18 +01:00
Claire
fcc4c9b34a
Change domain block CSV parsing to be more robust and handle more lists ( #21470 )
...
* Change domain block CSV parsing to be more robust and handle more lists
* Add some tests
* Improve domain block import validation and reporting
2023-01-18 16:20:52 +01:00
Carl Schwan
f33e22ae4c
Allow changing hide_collections setting with the api ( #22790 )
...
* Allow changing hide_collections setting with the api
This is currently only possible with app/controllers/settings/profiles_controller.rb
and is the only difference in the allowed parameter between the two controllers
* Fix the lint issue
* Use normal indent
2023-01-13 16:40:21 +01:00
Claire
aefefc74c4
Change referrer-policy to no-referrer application-wide ( #23014 )
2023-01-10 05:18:43 +01:00
Claire
18d00055f4
Add dropdown menu item to open admin interface for remote domains ( #21895 )
...
* Allow /admin/instances/:domain to handle IDNs
* Add dropdown menu item to open admin interface for remote domains
2023-01-05 14:03:46 +01:00
Claire
42f9693d00
Fix PermalinkRedirector not applying to users with moved accounts ( #22497 )
...
Fixes #22262
2023-01-05 13:40:27 +01:00
Claire
8556a649d5
Fix changing domain block severity not undoing individual account effects ( #22135 )
...
* Fix changing domain block severity not undoing individual account effects
Fixes #22133
* Add tests
2022-12-15 17:45:02 +01:00
David Vega
1b5d207131
Fix single name variables on controller folder ( #20092 )
...
Co-authored-by: petrokoriakin1 <116151189+petrokoriakin1@users.noreply.github.com>
Co-authored-by: petrokoriakin1 <116151189+petrokoriakin1@users.noreply.github.com>
Co-authored-by: Effy Elden <effy@effy.space>
2022-12-15 17:11:58 +01:00
Claire
623d3d2e32
Change CSP directives on API to be tight and concise ( #20960 )
2022-12-15 16:40:32 +01:00
nametoolong
63b379c2d9
Fix N+1 queries from in NotificationsController ( #21202 )
...
Co-authored-by: Nonexistent <nx@example.org>
2022-12-15 16:18:20 +01:00
Effy Elden
441cac758f
Allow adding relays while secure mode & limited federation mode are enabled ( #22324 )
2022-12-15 15:56:05 +01:00
Francis Murillo
5fb1c3e934
Revoke all authorized applications on password reset ( #21325 )
...
* Clear sessions on password change
* Rename User::clear_sessions to revoke_access for a clearer meaning
* Add reset paassword controller test
* Use User.find instead of User.find_for_authentication for reset password test
* Use redirect and render for better test meaning in reset password
Co-authored-by: Effy Elden <effy@effy.space>
2022-12-15 15:47:06 +01:00
Francis Murillo
f6492a7c4d
Log admin approve and reject account ( #22088 )
...
* Log admin approve and reject account
* Add unit tests for approve and reject logging
2022-12-07 00:25:18 +01:00
Claire
69137f4a90
Fix irreversible and whole_word parameters handling in /api/v1/filters ( #21988 )
...
Fixes #21965
2022-12-07 00:10:53 +01:00
Claire
68d1df8bc3
Fix some performance issues with /admin/instances ( #21907 )
...
/admin/instances?availability=failing remains wholly unefficient
2022-12-01 10:32:10 +01:00
Claire
51a33ce77a
Fix not being able to follow more than one hashtag ( #21285 )
...
Fixes regression from #20860
2022-11-21 10:35:09 +01:00
Claire
48e136605a
Fix form-action CSP directive for external login ( #20962 )
2022-11-17 22:59:07 +01:00
Claire
4ae97a2e4c
Fix OAuth flow being broken by recent CSP change ( #20958 )
2022-11-17 21:31:52 +01:00
lenore gilbert
c373148b3d
Support for import/export of instance-level domain blocks/allows for 4.x w/ additional fixes ( #20597 )
...
* Allow import/export of instance-level domain blocks/allows (#1754 )
* Allow import/export of instance-level domain blocks/allows.
Fixes #15095
* Pacify circleci
* Address simple code review feedback
* Add headers to exported CSV
* Extract common import/export functionality to
AdminExportControllerConcern
* Add additional fields to instance-blocked domain export
* Address review feedback
* Split instance domain block/allow import/export into separate pages/controllers
* Address code review feedback
* Pacify DeepSource
* Work around Paperclip::HasAttachmentFile for Rails 6
* Fix deprecated API warning in export tests
* Remove after_commit workaround
(cherry picked from commit 94e98864e3
)
* Add confirmation page when importing blocked domains (#1773 )
* Move glitch-soc-specific strings to glitch-soc-specific locale files
* Add confirmation page when importing blocked domains
(cherry picked from commit b91196f4b7
)
* Fix authorization check in domain blocks controller
(cherry picked from commit 7527937758
)
* Fix error strings for domain blocks and email-domain blocks
Corrected issue with non-error message used for Mastodon:NotPermittedError in Domain Blocks
Corrected issue Domain Blocks using the Email Domain Blocks message on ActionContoller::ParameterMissing
Corrected issue with Email Domain Blocks using the not_permitted string from "custom emojii's"
* Ran i18n-tasks normalize to address test failure
* Removed unused admin.export_domain_blocks.not_permitted string
Removing unused string as indicated by Check i18n
* Fix tests
(cherry picked from commit 9094c2f52c
)
* Fix domain block export not exporting blocks with only media rejection
(cherry picked from commit 26ff48ee48
)
* Fix various issues with domain block import
- stop using Paperclip for processing domain allow/block imports
- stop leaving temporary files
- better error handling
- assume CSV files are UTF-8-encoded
(cherry picked from commit cad824d8f501b95377e4f0a957e5a00d517a1902)
Co-authored-by: Levi Bard <taktaktaktaktaktaktaktaktaktak@gmail.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2022-11-17 11:05:09 +01:00
Claire
cbb0153bd0
Fix invalid/empty RSS feed link on account pages ( #20772 )
...
Fixes #20770
2022-11-17 10:58:33 +01:00
trwnh
7fdeed5fbc
Make tag following idempotent ( #20860 )
2022-11-17 10:55:59 +01:00
Claire
00b2720ef0
Change automatic post deletion configuration to be accessible to redirected users ( #20774 )
...
Fixes #20550
2022-11-17 10:55:23 +01:00
trwnh
e1f819fd78
Fix pagination of followed tags ( #20861 )
...
* Fix missing pagination headers on followed tags
* Fix typo
2022-11-17 10:54:10 +01:00
Daniel Axtens
4d85c27d1a
Add 'private' to Cache-Control, match Rails expectations ( #20608 )
...
Several controlers set quite intricate Cache-Control headers in order to
hopefully not be cached by any intermediate proxies or local caches. Unfortunately,
these headers are processed by ActionDispatch::HTTP::Cache in a way that squashes
and discards any values set alongside no-store other than private:
8015c2c2cf/actionpack/lib/action_dispatch/http/cache.rb (L207-L209)
We want to preserve no-store on these responses, but we might as well remove
parts that are going to be dropped anyway. As many of the endpoints in these
controllers are private to a particular user, we should also add "private",
which will be preserved alongside no-store.
2022-11-16 04:56:30 +01:00
trwnh
b59ce0a60f
Move V2 Filter methods under /api/v2 prefix ( #20622 )
...
* Move V2 Filter methods under /api/v2 prefix
* move over the tests too
2022-11-14 08:34:07 +01:00
Eugen Rochko
b31afc6294
Fix error when passing unknown filter param in REST API ( #20626 )
...
Fix #19156
2022-11-14 08:06:06 +01:00
Eugen Rochko
167d86d21d
Fix role_ids
not accepting arrays in admin API ( #20625 )
...
Fix #19157
2022-11-14 06:56:15 +01:00
Claire
86f6631d28
Remove dead code and refactor status threading code ( #20357 )
...
* Remove dead code
* Remove unneeded/broken parameters and refactor descendant computation
2022-11-10 22:30:00 +01:00
Claire
1615c3eb6e
Change logged out /api/v1/statuses/:id/context logged out limits ( #20355 )
2022-11-10 21:06:08 +01:00
James Tucker
78a6b871fe
Improve performance by avoiding regex construction ( #20215 )
...
```ruby
10.times { p /#{FOO}/.object_id }
10.times { p FOO_RE.object_id }
```
2022-11-10 05:49:30 +01:00
Eugen Rochko
0cd0786aef
Revert filtering public timelines by locale by default ( #20294 )
2022-11-10 05:34:42 +01:00
trwnh
89e1974f30
Make account endorsements idempotent ( fix #19045 ) ( #20118 )
...
* Make account endorsements idempotent (fix #19045 )
* Accept suggestion to use exists? instead of find_by + nil check
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
* fix logic (unless, not if)
* switch to using `find_or_create_by!`
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-11-08 16:39:15 +01:00
trwnh
68d9dcd425
Fix uncaught 500 error on invalid replies_policy
( Fix #19097 ) ( #20126 )
2022-11-08 16:37:28 +01:00
Claire
1e1289b024
Fix crash when external auth provider has no display_name set ( #19962 )
...
Fixes #19913
2022-11-07 15:43:24 +01:00
Claire
4cb2323458
Fix crash in legacy filter creation controller ( #19878 )
2022-11-07 03:38:53 +01:00
Eugen Rochko
3a41fccc43
Change AUTHORIZED_FETCH
to not block unauthenticated REST API access ( #19803 )
...
New environment variable `DISALLOW_UNAUTHENTICATED_API_ACCESS`
2022-11-05 22:56:03 +01:00
Claire
c2170991c7
Fix reblogs being discarded after the reblogged status ( #19731 )
2022-11-04 16:31:44 +01:00
Claire
125322718b
Fix inaccurate admin log entry for re-sending confirmation e-mails ( #19674 )
...
Fixes #19593
2022-11-02 18:50:21 +01:00
Eugen Rochko
15bae3e0e4
Change post-processing to be deferred only for large media types ( #19617 )
2022-11-01 15:27:58 +01:00
Claire
bb1ef11c30
Change featured hashtag deletion to be done synchronously ( #19590 )
2022-10-31 16:31:44 +01:00
Eugen Rochko
26478f461c
Remove language filtering from hashtag timelines ( #19563 )
2022-10-30 21:29:23 +01:00
Claire
a529d6d93e
Fix invites ( #19560 )
...
Fixes #19507
Fix regression from #19296
2022-10-30 19:04:39 +01:00
Eugen Rochko
276b85bc91
Fix admin APIs returning deleted object instead of empty object upon delete ( #19479 )
...
Fix #19153
2022-10-30 02:43:57 +02:00
Eugen Rochko
5724da0780
Fix language not being saved when editing status ( #19543 )
...
Fix #19542
2022-10-30 02:43:27 +02:00
Eugen Rochko
3e18e05330
Fix uncaught error when invalid date is supplied to API ( #19480 )
...
Fix #19213
2022-10-27 14:30:52 +02:00
Eugen Rochko
f8ca3bb2a1
Add ability to view previous edits of a status in admin UI ( #19462 )
...
* Add ability to view previous edits of a status in admin UI
* Change moderator access to posts to be controlled by a separate policy
2022-10-26 13:42:29 +02:00