Compare commits

...

1500 commits

Author SHA1 Message Date
Jeremy Kescher
6c28810b39
[Glitch+Emoji reactions] Use modern React context for for identity for emoji reaction code 2024-05-20 21:50:13 -05:00
Essem
48b9837ad8
Fix building on systems with ICU 75
See brianmario/charlock_holmes#172
2024-05-20 21:36:49 -05:00
Essem
9b0c46ebf2
Merge remote-tracking branch 'upstream/main' 2024-05-20 21:35:02 -05:00
Claire
e853355f24
Merge pull request #2714 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 0a2110b9af
2024-05-20 20:23:13 +02:00
Claire
20fdf8e22c Merge commit '0a2110b9af52005798251dc9d245a66dd5dd20fa' into glitch-soc/merge-upstream 2024-05-20 17:47:48 +02:00
Claire
7b3eef4cb1
Merge pull request #2713 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to de4815afda
2024-05-20 17:27:55 +02:00
Matt Jankowski
0a2110b9af
Add coverage for custom filters (#30347) 2024-05-20 15:00:09 +00:00
Claire
00cf8d3748
Change older Paperclip database migrations for consistency (#30204) 2024-05-20 14:59:27 +00:00
Claire
2bcbeed951
Add some error handling to OTP secret migration (#30344) 2024-05-20 14:59:23 +00:00
Renaud Chaput
ca5955ed76 [Glitch] Use a modern React context for identity in the app
Port a178ba7cd5 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-20 12:53:52 +02:00
Claire
e46321e63d Merge commit 'de4815afda0809bf999519aabda1cd14c67278da' into glitch-soc/merge-upstream 2024-05-20 12:17:36 +02:00
Claire
de4815afda
Add more tests for self-destruct mode (#30374) 2024-05-20 10:06:51 +00:00
Matt Jankowski
def6b686ff
Fix Rails/WhereRange cop (#30343) 2024-05-20 09:37:36 +00:00
Matt Jankowski
70608f824e
Add coverage for AdminMailer#auto_close_registrations (#30349) 2024-05-20 08:03:39 +00:00
Renaud Chaput
9658d3e580
Use the job class as span name for Sidekiq root spans (#30353) 2024-05-20 08:01:04 +00:00
renovate[bot]
0ce22859a5
fix(deps): update dependency @rails/ujs to v7.1.3 (#30356)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-20 07:56:28 +00:00
github-actions[bot]
8b75d18371
New Crowdin Translations (automated) (#30358)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-20 07:41:38 +00:00
renovate[bot]
814d00cf4b
chore(deps): update dependency @formatjs/cli to v6.2.12 (#30370)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-20 07:40:37 +00:00
renovate[bot]
778bd96a52
chore(deps): update dependency @types/lodash to v4.17.4 (#30371)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-20 07:40:20 +00:00
Renaud Chaput
990a0c19a9
Fix a warning when running JS Tests because of FakeIdentityContext using deprecated context API (#30368) 2024-05-20 07:29:27 +00:00
Nick Schonning
0f07e1cd4c
Fix yarn.lock diff (#30366) 2024-05-19 19:37:49 +00:00
renovate[bot]
0a343b9a91
fix(deps): update react monorepo to v18.3.1 (#30074)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-19 17:15:06 +00:00
Renaud Chaput
a178ba7cd5
Use a modern React context for identity in the app (#30098) 2024-05-19 17:07:32 +00:00
Joshua Byrd
6282b6da77
Fix og:image requests when html in a web page is over 1.megabyte (#30362) 2024-05-19 16:30:05 +00:00
Claire
93a617236e
Merge pull request #2712 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 12472e7f40
2024-05-17 18:05:32 +02:00
Emelia Smith
2da2a1dae9
Support multiple redirect_uris when creating OAuth 2.0 Applications (#29192) 2024-05-17 13:46:12 +00:00
Claire
57fb2cf948 Merge commit '12472e7f407c42bcff6ee204b9f1887b5824734f' into glitch-soc/merge-upstream 2024-05-17 12:33:41 +02:00
Claire
9668ac5acd
Merge pull request #2711 from ClearlyClaire/glitch-soc/merge-upstream
Port upstream changes up to b2388be71e
2024-05-17 12:32:59 +02:00
Claire
12472e7f40
Add emphasis on ActiveRecord Encryption configuration values being secret (#30340) 2024-05-17 09:28:40 +00:00
Jeong Arm
a627219b25
Fix moderation action logs (#30342) 2024-05-17 09:18:54 +00:00
github-actions[bot]
bff7769f5f
New Crowdin Translations (automated) (#30336)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-17 08:41:35 +00:00
Matt Jankowski
a6d12299f2
Remove duplicate method def ApplicationHelper#instance_presenter (#30331) 2024-05-17 08:29:13 +00:00
renovate[bot]
fc166d07f0
chore(deps): update dependency rails to v7.1.3.3 (#30334)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-17 08:28:22 +00:00
renovate[bot]
3286ad5226
chore(deps): update dependency selenium-webdriver to v4.21.1 (#30335)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-17 08:28:01 +00:00
renovate[bot]
f7f5b9dadd
fix(deps): update dependency @rails/ujs to v7.1.3-3 (#30337)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-17 08:27:45 +00:00
renovate[bot]
226d7a7bad
fix(deps): update dependency sass to v1.77.2 (#30338)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-17 08:27:03 +00:00
Claire
87b5cfc60e
Merge pull request #2710 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to b2388be71e
2024-05-16 21:30:31 +02:00
Claire
7b078b46a2 [Glitch] Fix Web UI trying to save user settings when logged out
Port 66906a1bc1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-16 19:34:50 +02:00
David Lapshin
061464a563 [Glitch] Fix incorrect element selector from #30221
Port 94493cff92 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-16 19:34:17 +02:00
Claire
2810231180 Merge commit 'b2388be71eb0031ef9e47c492b1c038231cd8bc0' into glitch-soc/merge-upstream
Conflicts:
- `app/controllers/activitypub/collections_controller.rb`:
  Upstream renamed a helper method everywhere.
  There was one glitch-soc line involving changes because of the local-only post
  feature.
  Ported upstream's change.
2024-05-16 19:30:10 +02:00
renovate[bot]
b2388be71e
chore(deps): update dependency selenium-webdriver to v4.21.0 (#30325)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-16 13:45:17 +00:00
Claire
66906a1bc1
Fix Web UI trying to save user settings when logged out (#30324) 2024-05-16 13:01:01 +00:00
Matt Jankowski
1b6eb2c7f0
Enable YJIT when available (#30310) 2024-05-16 09:56:48 +00:00
Renaud Chaput
283a891e92
Allow to customise the OTEL service name prefix (#30322) 2024-05-16 09:28:10 +00:00
Matt Jankowski
65e82211cd
Rename cache_* methods to preload_* in controller concern (#30209) 2024-05-16 08:03:46 +00:00
Emelia Smith
f0d6dc4519
Fix: Mark redirect uris field in Development > Application form as required (#30311) 2024-05-16 07:59:46 +00:00
renovate[bot]
356bbbaa7f
fix(deps): update dependency @reduxjs/toolkit to v2.2.5 (#30320)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-16 07:57:19 +00:00
github-actions[bot]
cdb042ae86
New Crowdin Translations (automated) (#30319)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-16 07:50:19 +00:00
Matt Jankowski
c9ee1437c0
Use ruby language constants to build version string in software version dimension (#30309) 2024-05-16 07:43:35 +00:00
renovate[bot]
60b423b3f7
chore(deps): update dependency rspec-sidekiq to v5 (#30314)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-16 07:43:31 +00:00
David Lapshin
94493cff92
Fix incorrect element selector from #30221 (#30307) 2024-05-16 07:33:29 +00:00
Matt Jankowski
ca560c1095
Disable Style/RedundantFetchBlock cop (#30207) 2024-05-15 13:57:13 +00:00
renovate[bot]
d5d3a0fc57
fix(deps): update dependency pino to v9.1.0 (#30283)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-15 13:38:51 +00:00
Emelia Smith
5fd56512de
Improve Report Notes and Account Moderation Notes (#30288) 2024-05-15 13:38:36 +00:00
Claire
c2ca3d152f
Fix off-by-one in tootctl media commands (#30306) 2024-05-15 13:11:13 +00:00
renovate[bot]
4e085dff52
chore(deps): update dependency aws-sdk-s3 to v1.151.0 (#30287)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-15 13:05:05 +00:00
Claire
19ed3d9441
Merge pull request #2709 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 1bf661cddb
2024-05-15 12:10:10 +02:00
Jason Punyon
85c625d319
Fix repetitive database queries from #30040 (#30259) 2024-05-15 09:38:16 +00:00
Matt Jankowski
6beead3867
Move simplecov config into rails_helper (#30302) 2024-05-15 09:33:36 +00:00
github-actions[bot]
aad5e841b5
New Crowdin Translations (automated) (#30290)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-15 08:53:57 +00:00
renovate[bot]
78a8263f73
fix(deps): update dependency postcss-preset-env to v9.5.13 (#30286)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-15 08:34:58 +00:00
renovate[bot]
7f7eba8753
chore(deps): update dependency letter_opener_web to v3 (#30296)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-15 08:34:50 +00:00
Renaud Chaput
40639510f8
Retain unconfirmed users longer (1 week) (#30285) 2024-05-15 08:27:34 +00:00
renovate[bot]
44e855db78
chore(deps): update dependency nokogiri to v1.16.5 [security] (#30289)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-15 08:26:22 +00:00
renovate[bot]
508e93eb64
chore(deps): update dependency fog-openstack to v1.1.1 (#30295)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-15 08:25:50 +00:00
renovate[bot]
38a330f963
fix(deps): update dependency core-js to v3.37.1 (#30293)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-15 08:25:34 +00:00
Essem
4f37b4873f
Merge remote-tracking branch 'upstream/main' 2024-05-14 21:20:27 -05:00
Renaud Chaput
47ce5f4ca9 [Glitch] Fix missing prop warning for <Account>
Port 1bf661cddb to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-14 20:53:40 +02:00
David Lapshin
160823716a [Glitch] Add active animation to header settings button
Port cb93c1edf0 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-14 20:53:01 +02:00
Claire
666760f450 Merge commit '1bf661cddbc614d4076e9d9e855575fc29e976c0' into glitch-soc/merge-upstream
Conflicts:
- `package.json`:
  Upstream fixed a command we have modified in glitch-soc.
  Updated as upstream did.
2024-05-14 20:47:14 +02:00
Renaud Chaput
1bf661cddb
Fix missing prop warning for <Account> (#30291) 2024-05-14 18:15:42 +00:00
Claire
b5b84fad65
Fix OpenSearch compatibility issue (#30278) 2024-05-14 17:54:28 +00:00
github-actions[bot]
3a7aec2807
New Crowdin Translations (automated) (#30254)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-13 11:30:41 +00:00
Nick Schonning
13fb54920b
Enable Style/IfUnlessModifier RuboCop (#30260) 2024-05-13 09:54:15 +00:00
Nick Schonning
9ec7c1f892
Fix i18n:extract flags (#30261) 2024-05-13 09:42:47 +00:00
renovate[bot]
6e1b8b33f5
Update opentelemetry-ruby (non-major) (#30262)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-13 09:42:08 +00:00
Jeen Broekstra
b429c9b8a7
fix(bin/dev): makes conditional for launching overmind POSIX-compliant (#30271) 2024-05-13 09:40:14 +00:00
renovate[bot]
c66fdb3dff
Update dependency immutable to v4.3.6 (#30276)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-13 09:39:06 +00:00
David Lapshin
cb93c1edf0
Add active animation to header settings button (#30221) 2024-05-13 09:19:42 +00:00
renovate[bot]
f66c9faca0
Update dependency sass to v1.77.1 (#30252)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-13 09:11:55 +00:00
renovate[bot]
123108b1cc
Update dependency postcss-preset-env to v9.5.12 (#30256)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-13 09:11:39 +00:00
renovate[bot]
5e7d88a85d
Update dependency glob to v10.3.15 (#30263)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-13 09:10:53 +00:00
renovate[bot]
471728d6dd
Update DefinitelyTyped types (non-major) (#30272)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-13 09:10:26 +00:00
renovate[bot]
ab4efa3bf8
Update dependency @testing-library/react to v15.0.7 (#30273)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-13 09:10:09 +00:00
renovate[bot]
807cf354fc
Update dependency eslint-plugin-jsdoc to v48.2.4 (#30274)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-13 09:09:39 +00:00
Claire
5ed6622a00
Merge pull request #2706 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 1959365c2f
2024-05-12 21:35:25 +02:00
Chee Aun
f65a6d50f1 [Glitch] Fix typo
Port c36a8786c1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-11 22:44:41 +02:00
Claire
f35ba6963d Merge commit '1959365c2f410aa82874c5c05ab92c4eca4c4055' into glitch-soc/merge-upstream 2024-05-11 22:10:56 +02:00
Claire
1959365c2f
Add missing on_delete: :cascade on notification_policies (#30251) 2024-05-10 20:00:25 +00:00
renovate[bot]
346530732c
Update dependency utf-8-validate to v6.0.4 (#30248)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 19:19:47 +00:00
renovate[bot]
9920f41c0f
Update opentelemetry-ruby (non-major) (#30249)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 19:18:53 +00:00
Renaud Chaput
d09b02efb6
Group Ruby OTEL packages in Renovate PRs (#30242) 2024-05-10 16:33:10 +00:00
renovate[bot]
482d1087c5
Update dependency opentelemetry-instrumentation-faraday to v0.24.3 (#30237)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 14:19:41 +00:00
renovate[bot]
af71f236a2
Update dependency opentelemetry-instrumentation-excon to v0.22.2 (#30236)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 13:16:05 +00:00
renovate[bot]
d933e6b6ae
Update dependency opentelemetry-instrumentation-concurrent_ruby to v0.21.3 (#30235)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 13:16:02 +00:00
renovate[bot]
ded11eca4f
Update dependency pundit to v2.3.2 (#30222)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 13:15:54 +00:00
Renaud Chaput
68b9fe824d
Add OpenTelemetry instrumentation (#30130)
Co-authored-by: Juliano Costa <juliano.costa@datadoghq.com>
Co-authored-by: Robb Kidd <robbkidd@honeycomb.io>
2024-05-10 12:40:20 +00:00
Matt Jankowski
0d397db5dd
Consolidate system specs into single directory, use rspec tags for configuration (#30206) 2024-05-10 12:36:09 +00:00
Joshua Young
164b09bfcc
Update README.md setup steps (#30063) 2024-05-10 12:34:32 +00:00
Matt Jankowski
e20f2e7300
Update i18n to version 1.14.5 (#30198) 2024-05-10 12:34:20 +00:00
renovate[bot]
f3f63107f2
Update dependency @reduxjs/toolkit to v2.2.4 (#30223)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 09:59:15 +00:00
Matt Jankowski
fa43a6c835
Use more accurate redirect_uri in oauth spec (#30212) 2024-05-10 09:43:59 +00:00
Matt Jankowski
040aaf3a48
Use default: ... assignment for Devise config, fixes Style/ClassVars cop (#30214) 2024-05-10 09:42:01 +00:00
github-actions[bot]
c9557bdd3b
New Crowdin Translations (automated) (#30215)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-10 09:34:48 +00:00
renovate[bot]
3a5a1b2e58
Update dependency node to 20.13 (#30211)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 09:25:07 +00:00
renovate[bot]
1aa3976f28
Update dependency pino-http to v10.1.0 (#30199)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 09:23:45 +00:00
renovate[bot]
0a4a93038f
Update Yarn to v4.2.2 (#30220)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 09:22:47 +00:00
Chee Aun
c36a8786c1
Fix typo (#30224) 2024-05-10 09:19:27 +00:00
renovate[bot]
6ccee2600b
Update dependency rubocop to v1.63.5 (#30225)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 09:19:06 +00:00
renovate[bot]
6819bcc4b6
Update dependency glob to v10.3.14 (#30230)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-10 09:18:52 +00:00
Renaud Chaput
5a3062f723
Pass the CodeCov token from the secret to the action (#30219) 2024-05-10 08:00:02 +00:00
Essem
012698f97a
Fix video sizing in edit media modal 2024-05-09 23:35:20 -05:00
Essem
ac041ceefa
Remove custom favicon/app icons
Upstream now includes a way to change them from the admin UI.
2024-05-08 14:12:58 -05:00
Essem
f26fba7473
Merge remote-tracking branch 'upstream/main' 2024-05-08 13:58:54 -05:00
Claire
3286daa807
Merge pull request #2704 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to d8c4284723
2024-05-07 21:10:52 +02:00
Claire
21c904b0f6 Merge commit 'd8c428472356abd70aaf1f514b99114464ee7f61' into glitch-soc/merge-upstream 2024-05-07 20:30:17 +02:00
Claire
d8c4284723
Ensure custom favicon is converted to PNG and ICO (#30208) 2024-05-07 18:15:17 +00:00
renovate[bot]
c9ccba7045
Update dependency sass to v1.77.0 (#30200)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-07 12:43:11 +00:00
Claire
f7dadc9f0b Merge commit '5cd13ee4f19c112ea855063c2495e2874746f23a' into glitch-soc/merge-upstream 2024-05-07 12:13:02 +02:00
renovate[bot]
5cd13ee4f1
Update dependency aws-sdk-s3 to v1.149.1 (#30196)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-07 09:39:20 +00:00
renovate[bot]
8540004f7b
Update dependency dotenv to v3.1.2 (#30197)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-07 09:39:04 +00:00
github-actions[bot]
ed556db395
New Crowdin Translations (automated) (#30201)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-07 09:36:16 +00:00
Claire
96fb6e491f
Revert "Migrate paperclip _file_size columns to bigint (#29263)" (#30203) 2024-05-07 08:46:05 +00:00
Claire
996292cd55
Fix db:encryption:init requiring ActiveRecord encryption variables to be set (#30202) 2024-05-07 08:41:53 +00:00
Essem
b636ca2099
Merge remote-tracking branch 'upstream/main' 2024-05-06 22:12:42 -05:00
renovate[bot]
6167894547
Update dependency pino-http to v10 (#30191)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-06 17:14:46 +00:00
Claire
016d194274 Merge commit '2fe1b8d1695d8faa452a69872fde94ccc4611576' into glitch-soc/merge-upstream
Conflicts:
- `app/helpers/application_helper.rb`:
  Not a real conflict, upstream added helpers right next to glitch-soc only
  helpers.
  Added upstream's helpers.
- `spec/models/status_spec.rb`:
  Not a real conflict, upstream added specs right next to glitch-soc only
  specs.
  Added upstream's tests.
2024-05-06 17:53:51 +02: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
Matt Jankowski
b152f936c1
Migrate paperclip _file_size columns to bigint (#29263)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-05-06 15:05:12 +00:00
Fawaz Farid
05126d106f
Redirect back after site upload deletion (#30141) 2024-05-06 13:31:39 +00:00
Emelia Smith
116f01ec7d
Implement RFC 8414 for OAuth 2.0 server metadata (#29191) 2024-05-06 13:17:56 +00:00
Claire
30ef9fccf0
Fix hashtag matching pattern matching some link anchors (#30190) 2024-05-06 12:47:19 +00:00
Claire
8e4fea77e3
Fix race condition in POST /api/v1/push/subscription (#30166) 2024-05-06 12:41:14 +00:00
Matt Jankowski
dbaa4ed891
Use chewy which relaxes ES version reqs (#30157) 2024-05-06 11:50:45 +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
renovate[bot]
4f0d18168c
Update DefinitelyTyped types (non-major) (#30184)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-06 08:46:43 +00:00
renovate[bot]
00c34070ae
Update eslint (non-major) (#30186)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-06 08:46:22 +00:00
renovate[bot]
86f17e4b32
Update devDependencies (non-major) (#30185)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-06 08:46:17 +00:00
github-actions[bot]
9be2c02e52
New Crowdin Translations (automated) (#30169)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-06 08:36:29 +00:00
renovate[bot]
a96b828023
Update dependency postcss-preset-env to v9.5.11 (#30171)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-06 08:26:33 +00:00
renovate[bot]
d544b83f91
Update formatjs monorepo (#30175)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-06 08:26:28 +00:00
renovate[bot]
e4841ca82b
Update dependency irb to v1.13.1 (#30177)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-06 08:26:12 +00:00
Claire
e9cca1cc09
Merge pull request #2701 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to b7902225d6
2024-05-05 18:32:37 +02:00
Tim Rogers
2f73e486b7
Switched HTMLEntities to the expanded flavor which supports a larger … (#30173) 2024-05-05 02:24:10 +00:00
Renaud Chaput
c59f6ef5b8 [Glitch] Convert entrypoints/two_factor_authentication to Typescript
Port 9e260014c7 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 16:30:24 +02:00
mogaminsk
b6ada33ad4 [Glitch] Fix word breaking in filtered notifications badge
Port 616e2f2666 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 16:30:05 +02:00
Claire
3789d9f825 Merge commit 'b7902225d698a107df2cf8b4ca221caad38fa464' into glitch-soc/merge-upstream
Conflicts:
- `spec/validators/status_length_validator_spec.rb`:
  Upstream refactored tests to stub `StatusLengthValidator::MAX_CHARS`
  while glitch-soc had custom code to read from `MAX_TOOT_CHARS`.
  Switched to using upstream's implementation of the tests.
2024-05-04 16:28:30 +02:00
Claire
4b82dc84f5 [Glitch] Change width breakpoint for mobile placement behavior
Port 26e10aa203 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 16:16:22 +02:00
Claire
6662d604c1 [Glitch] Add loading indicator and empty result message to advanced interface search
Port 7d3fe2b4c3 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 16:15:54 +02:00
Renaud Chaput
e62595c966 [Glitch] Remove usage of deprecated defaultTypes on React functional components
Port b9b4db483c to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 16:15:16 +02:00
Claire
f09f5b35f2 Merge commit 'd97d31cce664281d868e4c661451687a301c97c8' into glitch-soc/merge-upstream
Conflicts:
- `app/models/account.rb`:
  Upstream refactored this file a bit, moving validation limits to constants.
  We already had a similar change, although with different constant names.
  Updated to match upstream's code.

The following files were also modified accordingly:
- `app/views/settings/profiles/show.html.haml`
- `spec/requests/api/v1/accounts/credentials_spec.rb`
2024-05-04 16:12:51 +02:00
Renaud Chaput
494d28bb56 [Glitch] Convert entrypoints/sign_up to Typescript
Port 4527e012da to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 15:51:58 +02:00
Renaud Chaput
fe7db7905f [Glitch] Convert easy entrypoints files to Typescript
Port 36909065b5 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 15:49:30 +02:00
David Beck
defd1e4024 [Glitch] Remove home marker updates
Port 4f4b77920e to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 15:42:33 +02:00
Claire
a76980a229 Merge commit 'f0c9cbaf3b079700b8179222d409c644dfd8ff66' into glitch-soc/merge-upstream 2024-05-04 15:40:07 +02:00
Renaud Chaput
552e09d57f [Glitch] Fix marker thunks to not ignore eslint directives for the whole file
Port 65093c619f to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 15:30:18 +02:00
Claire
a4ce53df27 [Glitch] Change moderation warning notification icon
Port de4a7bf531 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 15:29:51 +02:00
Claire
aac59a34ed [Glitch] Add in-app notifications for moderation actions/warnings
Port 4ef0b48b95 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 15:29:29 +02:00
Eugen Rochko
8dbcf8a287 [Glitch] Change design of people tab on explore in web UI
Port 0ec061aa8f to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 15:28:17 +02:00
Claire
d6f9c97ae4 Merge commit '7201f99cf83a74331febd1624ca9aaace68af5e6' into glitch-soc/merge-upstream 2024-05-04 15:24:22 +02:00
Eugen Rochko
333905b2d5 [Glitch] Change mute options to be in dropdown on muted users list in web UI
Port 74012831f6 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-04 15:15:00 +02:00
Claire
bac4026d80 Merge commit '85fdbd0ad53837c9209acf3fb45811d5bae41cd9' into glitch-soc/merge-upstream 2024-05-04 15:10:54 +02:00
Claire
bceb45adda Merge commit '3f6887557b23d363e7f8f18518db4447739d64bb' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/entrypoints/common.js`:
  Upstream moved everything from `app/javascript/packs` to
  `app/javascript/entrypoints` while this file was a glitch-soc
  addition. Moved it like the rest.
- `tsconfig.json`:
  Conflict due to glitch-soc's flavor.
  Updated like upstream.

Also moved and updated the following files accordingly:
- `app/javascript/flavours/vanilla/theme.yml`
- `app/javascript/flavours/glitch/theme.yml`
- everything in `app/javascript/flavours/glitch/packs`
2024-05-04 14:59:00 +02:00
Matt Jankowski
b7902225d6
Use built-in github annotation output for stylelint (#30165) 2024-05-03 14:56:48 +00:00
Claire
33368e3e79
Change ActiveRecordEncryption variable to be more explicit (#30151) 2024-05-03 09:26:24 +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
github-actions[bot]
d5444a2c6c
New Crowdin Translations (automated) (#30160)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-03 09:15:06 +00:00
renovate[bot]
9380805fc1
Update dependency rubocop-rspec to v2.29.2 (#30158)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-03 08:48:09 +00:00
Essem
a7b905d573
Merge remote-tracking branch 'upstream/main' 2024-05-02 23:31:54 -05:00
renovate[bot]
4b2054ee57
Update Yarn to v4.2.1 (#30153)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-02 21:22:26 +00:00
Claire
253ead3aa7
Fix not being able to block a subdomain of an already-blocked domain through the API (#30119) 2024-05-02 20:56:21 +00:00
Renaud Chaput
9e260014c7
Convert entrypoints/two_factor_authentication to Typescript (#30105) 2024-05-02 12:02:13 +00:00
Claire
e7b09486ed
Merge pull request #2699 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to a2399046ca
2024-05-02 12:55:04 +02:00
mogaminsk
616e2f2666
Fix word breaking in filtered notifications badge (#30114) 2024-05-02 09:40:18 +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
github-actions[bot]
309f352e6a
New Crowdin Translations (automated) (#30140)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-05-02 08:57:30 +00:00
Matt Jankowski
2447497a4c
Status length validation spec updates (#30132) 2024-05-02 08:31:06 +00:00
renovate[bot]
d97d31cce6
Update dependency irb to v1.13.0 (#30143)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-02 08:28:13 +00:00
renovate[bot]
ac1d830e6c
Update dependency aws-sdk-s3 to v1.149.0 (#30136)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-02 08:27:47 +00:00
renovate[bot]
474e5ffaae
Update dependency dotenv to v3.1.1 (#30133)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-02 08:15:49 +00:00
renovate[bot]
62992ba54a
Update dependency sass to v1.76.0 (#30138)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-02 08:14:45 +00:00
renovate[bot]
a9dd68b90a
Update dependency react-redux to v9.1.2 (#30146)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-02 08:00:43 +00:00
Claire
b039e62194 Merge commit 'a2399046ca600d492b492b8dae88011de687bece' into glitch-soc/merge-upstream 2024-05-01 19:49:59 +02:00
Claire
eeefb7cdbc Merge commit 'a15139bc02d279b9ef85e95990f41e3e88838d20' into glitch-soc/merge-upstream 2024-05-01 19:42:34 +02:00
Claire
6204d13a2e Merge commit 'ec71c02c4b028c3541742f023729aeb295a51559' into glitch-soc/merge-upstream
Conflicts:
- `Gemfile`:
  There was an extra newline in glitch-soc for some reason.
  Removed it.
2024-05-01 19:38:34 +02:00
Claire
360590ecd8 Merge commit 'a3902997440c71f161e392f1ad6c5cdcf6aba95d' into glitch-soc/merge-upstream
Conflicts:
- `app/controllers/accounts_controller.rb`:
  Conflict due to glitch-soc's local-only posting feature.
  Refactored as upstream did but kept local changes.
- `app/lib/account_statuses_filter.rb`:
  Conflict due to glitch-soc's local-only posting feature.
  Refactored as upstream did but kept local changes.
2024-05-01 19:30:41 +02:00
Claire
df933836ca [Glitch] Fix incorrect label for filtered notifications badge
Port 66ee0d4a1f to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 19:18:06 +02:00
Claire
62b3f284db [Glitch] Fix unfollow button being out of frame on small screens on old browsers
Port 4117c8f6b8 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 19:17:28 +02:00
Claire
946bd2e7e1 Merge commit '0622107449e72d35b22afeeba2f0ba983e914803' into glitch-soc/merge-upstream 2024-05-01 19:16:48 +02:00
renovate[bot]
ac5113d524 [Glitch] Update eslint (non-major)
Port 37d984b8bf to glitch-soc

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 19:04:59 +02:00
Claire
e76ddf79bc [Glitch] Add / keyboard shortcut to focus the search field
Port c386c36866 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 18:57:39 +02:00
Claire
6f342a6d4c Merge commit '34e826f373d20f6230d1ef0aa03ad41a3bdf5998' into glitch-soc/merge-upstream
Conflicts:
- `app/helpers/theme_helper.rb`:
  Conflict caused by our different theme systems.
  Ported upstream's changes.
- `app/models/account.rb`:
  Upstream basically made a change we already made.
  Moved constant declaration to match upstream.
2024-05-01 18:56:48 +02:00
Renaud Chaput
2d43547934 [Glitch] Fix webpack warnings due to unhandled extensions (LICENCE and README.md)
Port 730e2127e1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 18:43:37 +02:00
Claire
9ce82a35cb Merge commit '20b1e55f24a87868d661fc7b033bbbbd48b1a918' into glitch-soc/merge-upstream 2024-05-01 18:42:26 +02:00
Claire
555e33a392 Merge commit 'b61ae28f8d4b6f269f50a05c3e65ec7f2c846d32' into glitch-soc/merge-upstream
Conflicts:
- `app/helpers/application_helper.rb`:
  Conflict because of our different theming systems.
  Updated accordingly, along with `app/helpers/theme_helper.rb`
  and `app/helpers/theme_helper_spec.rb`.
2024-05-01 18:38:55 +02:00
Michael Stanclift
3739dda2f6 [Glitch] Add purple border to active compose field search inputs
Port 1c87cb8019 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 17:31:39 +02:00
Claire
0fb469e2f3 Merge commit '52ab8a59c6e77b6409a7d4d81b15751732b3af91' into glitch-soc/merge-upstream 2024-05-01 17:30:52 +02:00
nicolas
41c43168fb [Glitch] Makes the star icon rotate around its actual centre axis
Port c6da3ee828 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 17:27:59 +02:00
Michael Stanclift
b21322b406 [Glitch] Fix blue border on emoji/language search in Safari & Chrome
Port e284417349 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 17:27:29 +02:00
Michael Stanclift
4543bb9384 [Glitch] Fix language and emoji search field background colors on light theme
Port 5d67247061 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 17:27:10 +02:00
Claire
3503fe1865 Merge commit '4045c069f8f91200d0e7c64a8097e425aee71041' into glitch-soc/merge-upstream 2024-05-01 17:26:21 +02:00
Claire
46cc9141c9 [Glitch] Fix contrast in notification request badge
Port 0b9d4103cb to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 17:23:07 +02:00
Claire
15f6d2d038 Merge commit 'd27eb181f6ab419d1745a1fe9b94094be17a618f' into glitch-soc/merge-upstream
Conflicts:
- `spec/requests/api/v2/instance_spec.rb`:
  Conflict due to glitch-soc having a different default site name.
  Updated the tests as upstream did, keeping glitch-soc's default name.
2024-05-01 17:22:02 +02:00
Renaud Chaput
87b9b23025 [Glitch] Use integers and not numbers in notification policy API counters
Port b4d991adaa to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 17:12:57 +02:00
Renaud Chaput
c316852a65 [Glitch] Add API types for status and related objects
Port e47a3d00fe to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 17:12:16 +02:00
Renaud Chaput
297c8c37b1 [Glitch] Fix Redux Middleware types
Port 07635228e2 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 17:08:44 +02:00
Michael Stanclift
0f756eaed2 [Glitch] Fix search box color on light theme
Port fa9574086d to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 17:08:05 +02:00
Claire
2c386d4cfe Merge commit 'c70c39cad03824c64564fa7d241e6bf01acbab76' into glitch-soc/merge-upstream 2024-05-01 17:06:49 +02:00
Claire
d52263e0e3 Merge commit '143d9553fa0187b9950a802cdedaea5c8cd12f75' into glitch-soc/merge-upstream
Conflicts:
- `yarn.lock`:
  Upstream updated dependencies textually close to a glitch-soc-only dependency.
  Updated the dependencies as well.
2024-05-01 17:04:33 +02:00
Michael Stanclift
3b1c8d56b2 [Glitch] Fix light theme header on mobile
Port 90eb4a5d01 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 16:49:21 +02:00
Michael Stanclift
1783820acd [Glitch] Fix background tint in single column light theme
Port 430da03160 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 16:48:55 +02:00
Renaud Chaput
375bd52d97 [Glitch] Handle createAppAsyncThunk rejected actions in the errors middleware
Port 69e5771881 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 16:48:27 +02:00
Claire
7f404fd635 Merge commit '90eb4a5d01f1f1e8a76e7dc814eae992a9c1ee16' into glitch-soc/merge-upstream 2024-05-01 16:47:25 +02:00
Renaud Chaput
b3d5567bd0 [Glitch] Remove global boosts state and convert boosts modal to Typescript
Port 67442f9039 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 16:42:20 +02:00
Claire
0f90e624c5 Merge commit '672c9f5f05bde788877ae0dcdb6668366c4c8941' into glitch-soc/merge-upstream
Conflicts:
- `app/helpers/application_helper.rb`:
  Conflict due to our theming system being different.
  Ported upstream's changes.
2024-05-01 16:10:45 +02:00
Claire
bc370938ef [Glitch] Fix logo pushing header buttons out of view on certain conditions in mobile layout
Port 4f068d4fcc to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 15:56:38 +02:00
Renaud Chaput
cc720cd38f [Glitch] Fix <RelativeTimestamp> types
Port 961bb84e4c to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 15:56:37 +02:00
Renaud Chaput
0ab212f6a9 [Glitch] Fix props for <Button>
Port d088964761 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 15:56:37 +02:00
Renaud Chaput
02f9ce9ce3 [Glitch] Fix PropTypes for some record objects
Port f2fd1da23f to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 15:56:37 +02:00
Claire
5cb4adbf4e [Glitch] Fix language picker and privacy picker not having a backdrop filter
Port c913e2f3e5 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 15:56:37 +02:00
Renaud Chaput
555f45f249 [Glitch] Fix notifications marker fetch
Port b9982ce578 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 15:56:37 +02:00
Renaud Chaput
371c5e59eb [Glitch] Rewrite PIP state in Typescript
Port 9fbe8d3a0c to glitch-soc

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 15:56:37 +02:00
Renaud Chaput
059e10e546 [Glitch] Rewrite markers reducer in Typescript
Port 27d014a7fa to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 14:55:03 +02:00
Claire
3f61981f5d Merge commit '8a498f4e65ecf27cc2c992d02b47f890dafef20b' into glitch-soc/merge-upstream 2024-05-01 14:50:16 +02:00
Claire
03af271d3d [Glitch] Fix column borders disappearing in advanced interface on low width viewports
Port b2d841ce9a to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 14:32:29 +02:00
Claire
7b46517c38 Merge commit 'd49343ed11b3c08c4e81ecd70e17e01bd30154a6' into glitch-soc/merge-upstream 2024-05-01 14:31:14 +02:00
Renaud Chaput
d63c0a2879 [Glitch] Support "system" theme setting (light/dark theme depending on user system preference)
Port 02ea161506 to glitch-soc

Co-authored-by: Nishiki Liu <hello@nshki.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-05-01 14:25:51 +02:00
Claire
a6147a831f Merge commit '02ea16150647ac3baf0bb8a89203ccc7200b4a2f' into glitch-soc/merge-upstream
Conflicts:
- `app/lib/themes.rb`
- `app/views/layouts/application.html.haml`
- `app/views/layouts/embedded.html.haml`
- `app/views/layouts/error.html.haml`
- `config/settings.yml`

All these conflicts are because glitch-soc and upstream have different theming
systems and upstream changed a few things to have dynamic theme selection based
on system settings.

Conflicts were solved to take that into account, and `current_theme` has been
changed in the process to return a tuple of `[flavour, skin]` to be used in
the `theme_style_tags` helper.
2024-05-01 14:25:47 +02:00
Claire
3024212403
Merge pull request #2698 from ClearlyClaire/glitch-soc/refactor/index-application
Rename `app/javascript/flavours/glitch/styles/index.scss` to `application.scss`
2024-05-01 13:09:43 +02:00
Claire
26e10aa203
Change width breakpoint for mobile placement behavior (#30131) 2024-04-30 23:39:28 +00:00
Claire
d6048d3a6c Add compatibility app/javascript/flavours/glitch/styles/index.scss 2024-04-30 21:27:04 +02:00
Claire
8a34c42341 Rename app/javascript/flavours/glitch/styles/index.scss to application.scss
This is just to reduce differences with upstream.
2024-04-30 21:03:04 +02:00
Claire
6f74ede26b
Merge pull request #2697 from ClearlyClaire/glitch-soc/refactor/revamp-theming-system
Simplify glitch-soc's theming system
2024-04-30 20:41:38 +02:00
Matt Jankowski
75470f1256
Use implicit dotenv load (#30121) 2024-04-30 13:00:39 +00:00
renovate[bot]
f3ea90b89e
Update workbox monorepo to v7.1.0 (#30047)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-30 09:12:25 +00:00
github-actions[bot]
56821ed879
New Crowdin Translations (automated) (#30128)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-30 09:05:53 +00:00
Shlee
40d7a553d2
Minor phrasing on tootcli statuses remove (#30122) 2024-04-30 08:51:39 +00:00
renovate[bot]
f5376c477d
Update babel monorepo to v7.24.5 (#30124)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-30 08:50:42 +00:00
Emelia Smith
81f0002e76
Fix missing destory audit logs for Domain Allows (#30125) 2024-04-30 08:48:02 +00:00
Shlee
b8f0a50435
docker-compose.yml version is obsolete (#30120) 2024-04-29 17:31:14 +00:00
renovate[bot]
f5d6362e90
Update dependency ws to v8.17.0 (#30097)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-29 15:48:34 +00:00
Matt Jankowski
924af400da
Remove unused memoization in CustomFilter#expires_in method (#30117) 2024-04-29 12:49:31 +00:00
Matt Jankowski
f1a4b4e228
Disable Style/SignalException cop (#30064) 2024-04-29 12:32:06 +00:00
Claire
7d3fe2b4c3
Add loading indicator and empty result message to advanced interface search (#30085) 2024-04-29 09:55:41 +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
e336466894
Use shared form partial for admin/rules views (#30067) 2024-04-29 09:33:27 +00:00
Matt Jankowski
a9816f051d
Use shared form partial for admin/warning_presets views (#30069) 2024-04-29 09:33:06 +00:00
Renaud Chaput
b9b4db483c
Remove usage of deprecated defaultTypes on React functional components (#30099) 2024-04-29 09:29:59 +00:00
Matt Jankowski
2739d8d5a4
Use shorter render call in admin/webhooks view (#30071) 2024-04-29 09:10:23 +00:00
Matt Jankowski
bbf1b603e0
Remove unused Account.popular scope (#30068) 2024-04-29 09:04:35 +00:00
renovate[bot]
6931cf5727
Update dependency aws-sdk-s3 to v1.148.0 (#30076)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-29 09:03:27 +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
Renaud Chaput
4527e012da
Convert entrypoints/sign_up to Typescript (#30106) 2024-04-29 08:23:05 +00:00
github-actions[bot]
9be7efedf0
New Crowdin Translations (automated) (#30092)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-29 08:15:43 +00:00
renovate[bot]
00aec2f33a
Update peter-evans/create-pull-request action to v6.0.5 (#30112)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-29 08:10:20 +00:00
renovate[bot]
0efa9854a1
Update libretranslate/libretranslate Docker tag to v1.5.7 (#30111)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-29 08:10:04 +00:00
renovate[bot]
23223369e0
Update eslint (non-major) (#30110)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-29 08:09:50 +00:00
renovate[bot]
c0584a6f4f
Update devDependencies (non-major) (#30109)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-29 08:09:27 +00:00
renovate[bot]
31f3dd57e0
Update dependency rubocop to v1.63.4 (#30096)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-29 08:08:58 +00:00
renovate[bot]
d8a4cea41b
Update dependency haml_lint to v0.58.0 (#30094)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-29 08:08:43 +00:00
Renaud Chaput
36909065b5
Convert easy entrypoints files to Typescript (#30102) 2024-04-29 08:02:41 +00:00
David Beck
4f4b77920e
Remove home marker updates (#22721) 2024-04-29 07:55:58 +00:00
Matt Jankowski
7201f99cf8
Change default ruby version to 3.3.1 (#28013) 2024-04-29 07:41:59 +00:00
Claire
e0a3662d7b Drop hardcoded reliance on vanilla flavor 2024-04-28 22:38:11 +02:00
Claire
7208edbd37 Replace use_pack, layouts/theme and @theme by new helpers
Packs are now loaded from views, just like upstream, and are
identified by their filenames. The definition of `theme.yml` has
changed as such:
- `pack_directory` is now required
- `pack` is now unused
- `signed_in_preload` has been introduced
2024-04-28 15:45:42 +02:00
Claire
c3e12a4dfa Change how theme style packs are loaded
Load the `common` style pack, and then charge the style pack for the current
skin, independent from any selected JS pack.
2024-04-28 15:45:41 +02:00
Claire
93cdc66e64 Make common inheritence unconditional and simplify theming code 2024-04-28 15:06:48 +02:00
Claire
dee57982f1 Rename “home” pack to “application” 2024-04-28 15:06:41 +02:00
Claire
9a8be8cf49 Remove theme fallback mechanism
Remove the `fallback` property and do not fallback to using another flavour
when a pack is not available in the selected flavour.

Flavours should define all packs, and should they wish to piggy-back on
another one, they can import that other one's pack explicitly instead.
2024-04-28 15:05:16 +02:00
Claire
62bc36416f Get rid of app/javascript/core
Have all flavors implement everything they need instead.
2024-04-28 15:04:52 +02:00
Renaud Chaput
65093c619f
Fix marker thunks to not ignore eslint directives for the whole file (#30089) 2024-04-26 17:11:27 +00:00
Claire
de4a7bf531
Change moderation warning notification icon (#30081) 2024-04-26 15:33:15 +00:00
renovate[bot]
0cf6cf457d
Update dependency selenium-webdriver to v4.20.1 (#30060)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-26 15:32:48 +00:00
renovate[bot]
17e0a31fe3
Update dependency cssnano to v7 (#30061)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-26 15:32:38 +00:00
Michael Stanclift
bb8c6346fb
Reword and rearrange Content Retention page (#27733) 2024-04-26 15:17:41 +00:00
Matt Jankowski
b67b61b963
Ignore dotenv *.local files (#29932) 2024-04-26 14:50:39 +00:00
renovate[bot]
ac82f34f7d
Update dependency pino to v9 (#30057)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-26 14:49:54 +00:00
Claire
91ca90e25b
Fix Idempotency-Key ignored when scheduling a post (#30084) 2024-04-26 13:19:02 +00:00
Claire
e845594878
Fix moderator account being exposed in account moderation notification (#30082) 2024-04-26 12:42:06 +00:00
github-actions[bot]
5201882a23
New Crowdin Translations (automated) (#30077)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-26 10:05:18 +00:00
Essem
122be8305f
Merge remote-tracking branch 'upstream/main' 2024-04-25 12:59:20 -05:00
Claire
4ef0b48b95
Add in-app notifications for moderation actions/warnings (#30065) 2024-04-25 17:26:05 +00:00
Eugen Rochko
0ec061aa8f
Change design of people tab on explore in web UI (#30059) 2024-04-25 16:25:33 +00:00
github-actions[bot]
85fdbd0ad5
New Crowdin Translations (automated) (#30062)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-25 08:50:54 +00:00
Claire
113c931cda
Fix follow request notifications not being displayed (#2695) 2024-04-24 17:00:48 +02:00
Claire
b79df709a8
Merge pull request #2693 from glitch-soc/i18n/crowdin/translations
New Crowdin Translations (automated)
2024-04-24 17:00:31 +02:00
Matt Jankowski
d9eee9bf9a
Remove column defaults for status_pins timestamp columns (#29261) 2024-04-24 14:56:54 +00:00
Claire
0e071edccc Fix bogus translation files 2024-04-24 12:36:32 +02:00
Tim Rogers
b128474625
Fixed rendering of excess whitespace in status card titles (#30017) 2024-04-24 09:09:21 +00:00
Matt Jankowski
f4a53f3fb4
Extract constants for column size length validation limits (#30045) 2024-04-24 08:56:28 +00:00
github-actions[bot]
ebcf9840f4
New Crowdin Translations (automated) (#30050)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-24 08:45:24 +00:00
Eugen Rochko
74012831f6
Change mute options to be in dropdown on muted users list in web UI (#30049) 2024-04-24 08:45:12 +00:00
Matt Jankowski
b903e6909e
Disable Style/HashAsLastArrayItem cop (#30041) 2024-04-24 08:32:18 +00:00
Renaud Chaput
0e585b9a52
Update to Ruby 3.2.4 (#30036) 2024-04-24 08:21:05 +00:00
Matt Jankowski
3f6887557b
Move JS source from packs to entrypoints (#30037) 2024-04-23 16:45:12 +00:00
Matt Jankowski
32ead51e5a
Add material design icons to admin/settings views (#27780)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-04-23 16:43:49 +00:00
Claire
a2399046ca
Fix string interpolation for software updates admin mailer (#30035) 2024-04-23 12:54:52 +00:00
Emelia Smith
049b159beb
Add read:me OAuth 2.0 scope, allowing more limited access to user data (#29087) 2024-04-23 11:47:00 +00:00
github-actions[bot]
d754b15afb
New Crowdin Translations (automated) (#30034)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-23 09:07:05 +00:00
renovate[bot]
91c7406b59
Update dependency postcss-preset-env to v9.5.9 (#30029)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-23 08:41:50 +00:00
renovate[bot]
1471c0d4e0
Update dependency rubocop to v1.63.3 (#30031)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-23 08:41:33 +00:00
renovate[bot]
483fabf48a
Update dependency http to '~> 5.2.0' (#30027)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-04-22 14:02:47 +00:00
Claire
2ef098d01c
Revert "Rely on dotenv autoload instead of explicit call (#30007)" (#30028) 2024-04-22 14:02:24 +00:00
Matt Jankowski
33e829763d
Use shared form partial for admin/domain_blocks views (#29609) 2024-04-22 12:22:16 +00:00
Matt Jankowski
ffbbf74c50
Limit http gem version to 5.1.x series (#30010) 2024-04-22 09:01:36 +00:00
Matt Jankowski
56b095edeb
Update Gemfile.lock ruby and bundler versions (#30011) 2024-04-22 09:01:24 +00:00
Tim Rogers
1ca6ff8ca5
Fixed crash when supplying FFMPEG_BINARY environment variable (#30022) 2024-04-22 09:00:24 +00:00
Tim Rogers
75163d9daf
Fixed rendering error on /start when not logged in (#30023) 2024-04-22 08:53:08 +00:00
github-actions[bot]
3655fb6a22
New Crowdin Translations (automated) (#30014)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-22 08:42:35 +00:00
Matt Jankowski
18737aad49
Rely on dotenv autoload instead of explicit call (#30007) 2024-04-22 08:31:20 +00:00
Matt Jankowski
a15139bc02
Fix intermittent order based failure in UpdateStatusService spec (#30008) 2024-04-22 08:30:38 +00:00
renovate[bot]
24e67c4394
Update dependency postcss-preset-env to v9.5.8 (#30018)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-22 08:24:08 +00:00
renovate[bot]
3e21af3e4a
Update dependency @types/react to v18.2.79 (#30024)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-22 08:14:09 +00:00
renovate[bot]
88f946890d
Update peter-evans/create-pull-request action to v6.0.4 (#30025)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-22 08:13:28 +00:00
renovate[bot]
223936c2e8
Update eslint (non-major) to v7.7.0 (#30026)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-22 08:13:04 +00:00
Matt Jankowski
2ec9bff36e
Fix Rubocop Rails/UniqueValidationWithoutIndex cop (#27461)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-04-22 08:04:05 +00:00
GitHub Actions
c61130af33 New Crowdin translations 2024-04-22 04:27:38 +00:00
Matt Jankowski
35b517c207
Remove remnants of capistrano (#30009) 2024-04-19 20:53:01 +00:00
Matt Jankowski
369b2ef0ed
Fix Style/TrailingCommaInHashLiteral cop (#30004) 2024-04-19 20:52:01 +00:00
Matt Jankowski
c7384adc00
Fix Style/TrailingCommaInArguments cop (#30003) 2024-04-19 20:37:18 +00:00
Matt Jankowski
b6f04aed35
Silence warning about requiring rubocop-rspec_rails (#30002) 2024-04-19 20:35:00 +00:00
Matt Jankowski
933189887b
Fix Style/StringLiterals cop (#30005) 2024-04-19 20:33:00 +00:00
Matt Jankowski
8d47ba893a
Fix Style/PercentLiteralDelimiters cop (#30006) 2024-04-19 20:32:26 +00:00
renovate[bot]
d24462c81a
Update dependency test-prof to v1.3.3 (#30000)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-19 19:46:13 +00:00
Matt Jankowski
fa5e154ee3
Indirect deps gem version bumps (#29998) 2024-04-19 19:45:41 +00:00
Matt Jankowski
f5d341382e
Add any_args to have_enqueued_sidekiq_job call (quiets deprecation) (#29999) 2024-04-19 19:44:59 +00:00
Matt Jankowski
f386eb6c63
Replace deprecated dotenv-rails gem with dotenv gem (#29173) 2024-04-19 14:25:14 +00:00
github-actions[bot]
ec71c02c4b
New Crowdin Translations (automated) (#29994)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-19 13:57:43 +00:00
Matt Jankowski
4837bfcc6a
Use shared form partial for admin/announcements views (#29608) 2024-04-19 13:57:32 +00:00
renovate[bot]
e5d5bd7ff1
Update dependency postcss-preset-env to v9.5.6 (#29983)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-18 16:24:55 +00:00
Matt Jankowski
75f9c652e2
Fix Bundler/OrderedGems cop (#28400) 2024-04-18 16:24:22 +00:00
github-actions[bot]
443186ff40
New Crowdin Translations (automated) (#29980)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-18 11:18:39 +00:00
Matt Jankowski
11e0049b08
Use enum-generated scopes/queries for BulkImport (#29975) 2024-04-18 10:13:35 +00:00
renovate[bot]
630572323f
Update dependency ioredis to v5.4.1 (#29977)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-17 21:52:26 +00:00
renovate[bot]
1ad119941f
Update dependency rspec-sidekiq to v4.2.0 (#29964)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-17 11:14:09 +00:00
Claire
8bece467f8
Change have_enqueued_sidekiq_job usage to always make argument expectations explicit (#29974) 2024-04-17 11:13:52 +00:00
Matt Jankowski
013671f29f
Rename JS testing section in GH Actions config (#29931) 2024-04-17 10:23:07 +00:00
Matt Jankowski
650c548c31
Add not_featured_by scope to Tag (#28815) 2024-04-17 10:05:38 +00:00
Matt Jankowski
1d3ecd3fba
Add API::Pagination concern (#28826) 2024-04-17 09:22:45 +00:00
Matt Jankowski
828299e71c
Enable AR Encryption (#29831) 2024-04-17 09:19:02 +00:00
renovate[bot]
a390299744
Update dependency ioredis to v5.4.0 (#29969)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-17 09:08:19 +00:00
renovate[bot]
ee8f999a7b
Update dependency core-js to v3.37.0 (#29968)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-17 09:08:08 +00:00
github-actions[bot]
c35042b7eb
New Crowdin Translations (automated) (#29972)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-17 09:07:13 +00:00
Claire
fc89ecc6ca
Change /api/v1/announcements to return regular Status entities (#26736) 2024-04-17 09:06:23 +00:00
Matt Jankowski
9ae2594726
Add reusable duplicate ID finder methods in maintenance CLI (#28910) 2024-04-17 09:00:08 +00:00
renovate[bot]
03abff3b30
Update dependency aws-sdk-s3 to v1.147.0 (#29967)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-17 08:30:58 +00:00
Matt Jankowski
9ce2db4136
Combine double subject runs and DRY up change check in bulk import service spec (#29402) 2024-04-17 08:23:25 +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
Claire
5915bd7f45
Fix development environment admin account not being auto-approved (#29958) 2024-04-16 17:30:32 +00:00
Matt Jankowski
caad1e2628
Add scope Status.distributable_visibility (#29950) 2024-04-16 13:16:54 +00:00
renovate[bot]
0622107449
Update dependency @testing-library/react to v15 (#29893)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-16 09:44:02 +00:00
Matt Jankowski
6b33d3f81b
Add CustomFilter.unexpired scope (#29896) 2024-04-16 09:29:34 +00:00
Claire
66ee0d4a1f
Fix incorrect label for filtered notifications badge (#29922) 2024-04-16 09:25:23 +00:00
Matt Jankowski
3159c0a547
Add scope Status.list_eligible_visibility (#29951) 2024-04-16 09:17:03 +00:00
renovate[bot]
e6927db2fe
Update dependency rubocop to v1.63.2 (#29959)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-16 08:58:04 +00:00
renovate[bot]
6ee1b034b6
Update dependency prom-client to v15.1.2 (#29957)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-16 08:45:20 +00:00
github-actions[bot]
285d4123b5
New Crowdin Translations (automated) (#29955)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-16 08:36:21 +00:00
Matt Jankowski
7fed4a9740
Pull out repeated setup to shared setup in statusus/show view spec (#29927) 2024-04-15 15:24:31 +00:00
Claire
4117c8f6b8
Fix unfollow button being out of frame on small screens on old browsers (#29923) 2024-04-15 11:56:48 +00:00
Matt Jankowski
1549e6a9dc
Drop support for Ruby 3.0 (reaching EOL) (#29702) 2024-04-15 10:19:23 +00:00
github-actions[bot]
4e78cb9988
New Crowdin Translations (automated) (#29939)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-15 09:29:39 +00:00
Matt Jankowski
0d9ad96d3f
Rename PremailerWebpackStrategy -> PremailerBundledAssetStrategy (#29934) 2024-04-15 09:16:59 +00:00
Matt Jankowski
bf5d948237
Fix Style/SingleArgumentDig cop in webpacker/manifest_extensions (#29929) 2024-04-15 09:15:32 +00:00
Renaud Chaput
67dd1763bb
Fix PostCSS config (#29926) 2024-04-15 09:06:06 +00:00
Renaud Chaput
ee4ea83a87
Remove image_pack_tag usage (#29925) 2024-04-15 09:05:19 +00:00
renovate[bot]
34e826f373
Update dependency typescript to v5.4.5 (#29945)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-15 07:28:29 +00:00
renovate[bot]
1906330d13
Update dependency react-redux to v9.1.1 (#29943)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-15 07:27:56 +00:00
renovate[bot]
80edd7a317
Update DefinitelyTyped types (non-major) (#29944)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-15 07:27:33 +00:00
renovate[bot]
e3dd60cce1
Update peter-evans/create-pull-request action to v6.0.3 (#29946)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-15 07:26:57 +00:00
renovate[bot]
86c53e175d
Update dependency @testing-library/react to v14.3.1 (#29947)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-15 07:26:41 +00:00
renovate[bot]
c4d6e10115
Update dependency rubocop to v1.63.1 (#29878)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-12 10:57:37 +00:00
renovate[bot]
67a37c7279
Update dependency sass to v1.75.0 (#29919)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-12 10:56:49 +00:00
Matt Jankowski
61d108f415
Extract header_tags method in statuses/show view spec (#29907) 2024-04-12 09:50:46 +00:00
renovate[bot]
8986e3b088
Update dependency webpack-bundle-analyzer to v4.10.2 (#29909)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-12 09:48:13 +00:00
Claire
c386c36866
Add / keyboard shortcut to focus the search field (#29921) 2024-04-12 09:42:12 +00:00
renovate[bot]
3f821e0d5e
Update dependency postcss-preset-env to v9.5.5 (#29912)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-12 09:41:44 +00:00
Matt Jankowski
da6b9238f5
Expand coverage for admin/metrics/measure/* classes (#29914) 2024-04-12 09:38:24 +00:00
Matt Jankowski
ec5a0e0f5e
Expand coverage for admin/metrics/dimension/* classes (#29913) 2024-04-12 09:18:35 +00:00
Matt Jankowski
13bbde2246
Use existing DEFAULT_FIELDS_SIZE constant to limit Account#fields (#29911) 2024-04-12 09:04:23 +00:00
github-actions[bot]
5992df0762
New Crowdin Translations (automated) (#29920)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-12 08:19:48 +00:00
Matt Jankowski
449f99e168
Fix repeated concat output buffer duplicating layout markup (#29918) 2024-04-11 23:37:07 +00:00
github-actions[bot]
20b1e55f24
New Crowdin Translations (automated) (#29903)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-11 10:30:31 +00:00
renovate[bot]
4826c1da8a
Update dependency devise to v4.9.4 (#29890)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-11 09:00:15 +00:00
Matt Jankowski
576554b19b
Use fabrication sequence in domain values (#29895) 2024-04-11 08:59:01 +00:00
renovate[bot]
96bdeeed0e
Update dependency nokogiri to v1.16.4 (#29900)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-11 08:50:34 +00:00
Essem
ce98ee9b00
Merge remote-tracking branch 'upstream/main' 2024-04-10 17:36:38 -05:00
Claire
c8e5e13c89
Merge pull request #2691 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 0cea7a623b
2024-04-10 20:51:51 +02:00
github-actions[bot]
db5a5636d9
New Crowdin Translations (automated) (#29888)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-10 13:03:40 +00:00
Matt Jankowski
4565015615
Fix Style/MapIntoArray cop in cli progress helper (#29884) 2024-04-10 12:46:43 +00:00
Matt Jankowski
b57ee5cf5b
Fix Style/MapIntoArray cop in context helper (#29885) 2024-04-10 12:46:39 +00:00
Matt Jankowski
4948a063d2
Use tt extension for form scaffold template (#29676) 2024-04-10 09:20:21 +00:00
renovate[bot]
b8dca8d22a
Update dependency typescript to v5.4.4 (#29875)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-08 14:08:32 +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
Claire
f3430eebbb
Fix hashtag string interpolation in welcome email (#29879) 2024-04-08 13:45:25 +00:00
github-actions[bot]
13faf26315
New Crowdin Translations (automated) (#29859)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-08 13:44:54 +00:00
Renaud Chaput
730e2127e1
Fix webpack warnings due to unhandled extensions (LICENCE and README.md) (#29869) 2024-04-08 08:17:51 +00:00
renovate[bot]
a1277a9b2b
Update eslint (non-major) (#29877)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-08 08:17:23 +00:00
renovate[bot]
2441fe6fd4
Update dependency stylelint-config-standard-scss to v13.1.0 (#29876)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-08 08:16:57 +00:00
renovate[bot]
b06510d579
Update DefinitelyTyped types (non-major) (#29874)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-08 08:16:36 +00:00
renovate[bot]
499b184fcd
Update dependency pino to v8.20.0 (#29865)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-08 08:16:20 +00:00
renovate[bot]
79bbb2023d
Update dependency react-intl to v6.6.5 (#29864)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-08 08:15:46 +00:00
Eugen Rochko
91531e9586 [Glitch] Add ability to reorder uploaded media before posting in web UI
Port 8e7e86ee35 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 22:34:03 +02:00
Eugen Rochko
fc533cfad3 [Glitch] Fix background and icon on notification requests in web UI
Port 0cea7a623b to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 21:51:51 +02:00
Eugen Rochko
b55bbfa2b3 [Glitch] Change design of notification about lost connections in web UI
Port 29f9dc742e to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 21:49:57 +02:00
Eugen Rochko
1ae08ae257 [Glitch] Change out-of-band hashtags design in web UI
Port dd061291b1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 21:48:52 +02:00
Claire
0e76b919b5 Merge commit '0cea7a623be470c51d7a162265f44f5a3e149275' into glitch-soc/merge-upstream 2024-04-06 21:48:35 +02:00
Claire
a844a6a577 [Glitch] Change AccountRelationshipSeveranceEvent model to store lost followers and following counts separately
Port dfa43707eb to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 21:39:04 +02:00
Claire
c3a128f31e Remove strings already defined upstream 2024-04-06 21:25:04 +02:00
Claire
afaad0755f [Glitch] Remove setting for unfollow confirmation modal, and make it unconditional
Port 37ca59815c to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 21:17:45 +02:00
Claire
1d1c3a808a Merge commit '6c381f20b1d52c96525cbd5c41b0c972c3394a48' into glitch-soc/merge-upstream
Conflicts:
- `app/models/user_settings.rb`:
  Upstream removed a setting textually adjacent to a glitch-soc-only setting.
  Removed the setting glitch-soc removed.
2024-04-06 21:01:40 +02:00
Claire
f635cde756 [Glitch] Change new modals to allow vertical scrolling
Port de6c9e0fcd to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 20:43:43 +02:00
Claire
0f8b33238f [Glitch] Change icon of severed relationships notifications
Port 387c78ddf9 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 20:39:07 +02:00
Renaud Chaput
576c085ea0 [Glitch] Add the role ID to the badge component
Port ec1e770fea to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 20:35:29 +02:00
Claire
777984faeb Merge commit '119c7aa0df1e1d26bdee1701250d23a7af9e9136' into glitch-soc/merge-upstream 2024-04-06 20:34:07 +02:00
Claire
f14b6f3d99 [Glitch] Fix duplicate translation string for severed relationships
Port 885d0faf83 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 20:31:09 +02:00
Essem
06953f83d9
Merge remote-tracking branch 'upstream/main' 2024-04-06 13:20:25 -05:00
Claire
903dc53522 Merge commit '05eda8d19330a9c27c0cf07de19a87edff269057' into glitch-soc/merge-upstream 2024-04-06 20:01:25 +02:00
Eugen Rochko
375af259a2 [Glitch] Change back button to always appear in advanced web UI
Port be52633ee4 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 19:55:13 +02:00
Claire
67842ffb22 Merge commit '01464074c91f9b7a720928fc4ee912be3d8002d2' into glitch-soc/merge-upstream 2024-04-06 19:54:11 +02:00
Claire
0f966209ca [Glitch] Add notifications of severed relationships
Port 44bf7b8128 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 19:38:57 +02:00
Claire
f2b23aa5f3 Merge commit '954b470fbce3fbe4b9b42992b03425fa24d6a2ad' into glitch-soc/merge-upstream
Conflicts:
- `config/navigation.rb`:
  Upstream added a navigation item while glitch-soc had an additional one.
  Ported upstream changes.
2024-04-06 19:35:21 +02:00
Claire
9451997fa8
Refactor notifications code to reduce differences with upstream (#2692)
* Merge back `Follow` notification component

* Merge back part of `FollowRequestContainer` notification container

* Reduce differences with upstream in the `mention` case

* Reduce differences with upstream in the `favourite` case

* Reduce differences with upstream in the `reblog` case

* Reduce differences with upstream in the `status` case

* Reduce differences with upstream in the `update` case

* Reduce differences with upstream in the `poll` case

* Merge back `AdminSignup` notification component

* Merge back `AdminReport` notification container
2024-04-06 19:34:30 +02:00
github-actions[bot]
8a64406d34
New Crowdin Translations (automated) (#2668)
* New Crowdin translations

* Fix bogus translation files

---------

Co-authored-by: GitHub Actions <noreply@github.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-04-06 18:18:06 +02:00
Claire
e73cf356d2
Move OAuth flow tests from feature tests to system tests (#29837) 2024-04-05 16:52:05 +00:00
Matt Jankowski
b61ae28f8d
Separate methods for theme style and meta color tags (#29802) 2024-04-05 09:52:43 +00:00
ache
52ab8a59c6
Forward 3035 port (#29710) 2024-04-05 09:19:43 +00:00
Matt Jankowski
c0fe8a9f13
Extract shared callback behaviour to CustomFilterCache concern (#29695) 2024-04-05 09:17:58 +00:00
renovate[bot]
285a87a77f
Update dependency scenic to v1.8.0 (#29794)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-05 09:04:10 +00:00
Matt Jankowski
59da591d13
Improve spec for dimension/languages admin metric (#29842) 2024-04-05 08:54:11 +00:00
Renaud Chaput
6ac90d4c5d
Add tests for our number formatting function (#29852) 2024-04-05 08:06:31 +00:00
Renaud Chaput
906a399634
Fix wrong extension for a test file (#29853) 2024-04-05 07:57:44 +00:00
renovate[bot]
c7378218ba
Update dependency rubocop-rspec to v2.29.1 (#29858)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-05 07:57:20 +00:00
Claire
38b9d31f63
Improve email address validation (#29838) 2024-04-05 07:48:45 +00:00
Claire
1f11aa5f04
Add stub for trending tags in user mailer spec (#29850) 2024-04-05 07:48:07 +00:00
Matt Jankowski
601834d746
Use partial collection render for welcome mailer features (#29843) 2024-04-04 16:13:10 +00:00
Matt Jankowski
191bf5876e
Add coverage for sanitize failure path in api/web/embeds spec (#29851) 2024-04-04 16:07:16 +00:00
Michael Stanclift
1c87cb8019
Add purple border to active compose field search inputs (#29839) 2024-04-04 11:51:06 +00:00
Matt Jankowski
966d7f5bf9
Add missing snowflake range correction (#29841) 2024-04-04 11:33:17 +00:00
Jeong Arm
4045c069f8
Use public_visibility (#29847) 2024-04-04 07:31:30 +00:00
renovate[bot]
91d3b3fb25
Update dependency sass to v1.74.1 (#29846)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-04 07:25:30 +00:00
renovate[bot]
58dfc12af2
Update babel monorepo to v7.24.4 (#29840)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-04 07:23:53 +00:00
nicolas
c6da3ee828
Makes the star icon rotate around its actual centre axis (#29844) 2024-04-03 21:10:02 +00:00
Matt Jankowski
cde3206478
Simplify feature loop in welcome mailer (#29760) 2024-04-03 20:10:59 +00:00
renovate[bot]
37d984b8bf
Update eslint (non-major) (#29820)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2024-04-03 18:05:39 +00:00
Michael Stanclift
e284417349
Fix blue border on emoji/language search in Safari & Chrome (#29832) 2024-04-03 15:19:10 +00:00
Michael Stanclift
5d67247061
Fix language and emoji search field background colors on light theme (#29828) 2024-04-03 14:22:50 +00:00
github-actions[bot]
56d13069cd
New Crowdin Translations (automated) (#29836)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-03 09:04:29 +00:00
renovate[bot]
4233ee1f59
Update dependency pg to v8.11.5 (#29833)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 21:33:43 +00:00
renovate[bot]
54c7d1ad14
Update dependency pg-connection-string to v2.6.4 (#29814)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 21:22:22 +00:00
Matt Jankowski
a7b637768e
Regenerate rubocop todo with version 1.62.1 (#29830) 2024-04-02 19:56:54 +00:00
renovate[bot]
88c3664889
Update dependency rubocop-performance to v1.21.0 (#29804)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 17:00:07 +00:00
Matt Jankowski
d27eb181f6
Reduce LineLength from 320 to 300 (#29636) 2024-04-02 15:50:57 +00:00
renovate[bot]
f8b03c3925
Update dependency faker to v3.3.1 (#29829)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 15:48:27 +00:00
Matt Jankowski
edde54e991
Update stoplight to version 4.1.0 (#28366) 2024-04-02 15:47:40 +00:00
Matt Jankowski
921c4c1273
Match comment style of FeedManager list/tags checks (#29639)
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2024-04-02 14:07:31 +00:00
Claire
0b9d4103cb
Fix contrast in notification request badge (#29826) 2024-04-02 14:05:46 +00:00
Matt Jankowski
f87959ab50
Fix RSpec/LetSetup cop in api/v1/timelines/public spec (#28972) 2024-04-02 14:05:02 +00:00
Claire
54119570e6
Remove dependency on posix-spawn (#18559) 2024-04-02 14:02:07 +00:00
Matt Jankowski
34489591ec
Add max_pinned_statuses to instances serializer and api response (#29441) 2024-04-02 13:54:11 +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
renovate[bot]
c70c39cad0
Update docker/dockerfile Docker tag to v1.7 (#27993)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 13:47:15 +00:00
renovate[bot]
b0692d994f
Update dependency letter_opener to v1.10.0 (#29189)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 13:31:03 +00:00
renovate[bot]
695dded7ed
Update dependency aws-sdk-s3 to v1.146.1 (#28961)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 13:29:46 +00:00
renovate[bot]
f6e24bbd79
Update dependency postcss-preset-env to v9.5.4 (#29825)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 12:13:43 +00:00
Renaud Chaput
b4d991adaa
Use integers and not numbers in notification policy API counters (#29810) 2024-04-02 10:06:26 +00:00
renovate[bot]
d05f62391d
Update dependency public_suffix to v5.0.5 (#29824)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 10:04:32 +00:00
Renaud Chaput
e47a3d00fe
Add API types for status and related objects (#29792) 2024-04-02 10:03:33 +00:00
Renaud Chaput
07635228e2
Fix Redux Middleware types (#29800) 2024-04-02 09:56:03 +00:00
Matt Jankowski
a3fe82e359
Rename cop RSpec/Rails/HttpStatus to RSpecRails/HttpStatus (#29806) 2024-04-02 09:34:44 +00:00
github-actions[bot]
c717747603
New Crowdin Translations (automated) (#29812)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-04-02 09:26:06 +00:00
Michael Stanclift
fa9574086d
Fix search box color on light theme (#29808) 2024-04-02 09:15:31 +00:00
renovate[bot]
143d9553fa
Update dependency fastimage to v2.3.1 (#29822)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 09:15:24 +00:00
renovate[bot]
a4158be4d7
Update devDependencies (non-major) (#29819)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 08:59:52 +00:00
renovate[bot]
2f7a2d4df7
Update DefinitelyTyped types (non-major) (#29818)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 08:59:26 +00:00
renovate[bot]
b58666e12e
Update dependency @reduxjs/toolkit to v2.2.3 (#29817)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 08:59:05 +00:00
renovate[bot]
9611023380
Update dependency postcss-preset-env to v9.5.3 (#29816)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 08:58:00 +00:00
renovate[bot]
173adb04e2
Update dependency pg to v8.11.4 (#29813)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 08:57:14 +00:00
renovate[bot]
589e34d00c
Update dependency selenium-webdriver to v4.19.0 (#29776)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-04-02 08:53:44 +00:00
Michael Stanclift
90eb4a5d01
Fix light theme header on mobile (#29809) 2024-03-29 21:03:30 +00:00
Michael Stanclift
430da03160
Fix background tint in single column light theme (#29803) 2024-03-29 17:16:51 +00:00
Renaud Chaput
69e5771881
Handle createAppAsyncThunk rejected actions in the errors middleware (#29791) 2024-03-29 13:57:39 +00:00
github-actions[bot]
f96648d41c
New Crowdin Translations (automated) (#29796)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-29 13:35:50 +00:00
Renaud Chaput
672c9f5f05
Change the theme-color value automatically when using a built-in theme (#29795) 2024-03-29 13:32:07 +00:00
renovate[bot]
671167f6da
Update dependency glob to v10.3.12 (#29790)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-29 13:31:13 +00:00
renovate[bot]
cd9d11dda6
Update dependency debug to v1.9.2 (#29799)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-29 13:30:52 +00:00
Renaud Chaput
67442f9039
Remove global boosts state and convert boosts modal to Typescript (#29774) 2024-03-28 15:33:15 +00:00
github-actions[bot]
8a498f4e65
New Crowdin Translations (automated) (#29785)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-28 14:48:09 +00:00
Claire
4f068d4fcc
Fix logo pushing header buttons out of view on certain conditions in mobile layout (#29787) 2024-03-28 14:00:57 +00:00
Matt Jankowski
e85f24174e
Simplify checklist step loop in welcome mailer (#29761) 2024-03-28 10:56:33 +00:00
renovate[bot]
d44e7a8578
Update dependency node to 20.12 (#29765)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-28 10:54:16 +00:00
Renaud Chaput
961bb84e4c
Fix <RelativeTimestamp> types (#29781) 2024-03-28 10:07:01 +00:00
Renaud Chaput
d088964761
Fix props for <Button> (#29780) 2024-03-28 10:06:25 +00:00
Renaud Chaput
f2fd1da23f
Fix PropTypes for some record objects (#29786) 2024-03-28 10:05:16 +00:00
github-actions[bot]
1025fff6b9
New Crowdin Translations (automated) (#29772)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-27 21:19:03 +00:00
Claire
c913e2f3e5
Fix language picker and privacy picker not having a backdrop filter (#29779) 2024-03-27 16:32:00 +00:00
Renaud Chaput
b9982ce578
Fix notifications marker fetch (#29777) 2024-03-27 15:49:02 +00:00
Renaud Chaput
9fbe8d3a0c
Rewrite PIP state in Typescript (#27645)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-03-27 15:19:33 +00:00
Matt Jankowski
b016f03637
Pull out constant from AccountWarning.recent scope (#29767) 2024-03-27 14:08:04 +00:00
Renaud Chaput
27d014a7fa
Rewrite markers reducer in Typescript (#27644) 2024-03-27 12:47:09 +00:00
renovate[bot]
d49343ed11
Update dependency react-intl to v6.6.4 (#29771)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-27 09:59:54 +00:00
renovate[bot]
86f999c1f2
Update dependency json-schema to v4.3.0 (#29769)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-27 09:59:50 +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
renovate[bot]
c5692d2f2f
Update dependency prom-client to v15.1.1 (#29764)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-27 09:59:42 +00:00
Essem
a2ffb4fbac
Hack to make the sidebar background visible 2024-03-26 20:07:54 -05:00
Claire
b2d841ce9a
Fix column borders disappearing in advanced interface on low width viewports (#29763) 2024-03-26 23:14:11 +00:00
Matt Jankowski
c4feba4347
Use existing MascotHelper#instance_presenter instead of local var in welcome email template (#29759) 2024-03-26 15:58:48 +00:00
Claire
de740dfb9c
Use upsert_all and insert_all to reduce back-and-forth in costly migrations (#29752) 2024-03-26 15:57:08 +00:00
Claire
9c24f2d6b1
Undo notification permissions on individual and domain blocks (#29570) 2024-03-26 14:46:38 +00:00
Claire
7508472d84
Fix admin interface repeating rule title instead of showing hint text (#29758) 2024-03-26 14:46:05 +00:00
Claire
cfea9cc172
Add list of pending releases directly in mail notifications for version updates (#29436) 2024-03-26 14:45:19 +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
renovate[bot]
b34c089591
Update dependency csv to v3.3.0 (#29715)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-26 13:09:35 +00:00
github-actions[bot]
b3d970bdb8
New Crowdin Translations (automated) (#29756)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-26 09:49:19 +00:00
Matt Jankowski
c3e3c60069
Remove extraneous Lint/UselessAccessModifier config (#29749) 2024-03-26 09:33:07 +00:00
Matt Jankowski
5e6a600b64
Bundler version update and misc gem version bumps (#29717) 2024-03-26 09:31:24 +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
renovate[bot]
06fc2b3fde
Update dependency faker to v3.3.0 (#29755)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-26 09:29:38 +00:00
renovate[bot]
572a8ef7f9
Update dependency rubocop-rails to v2.24.1 (#29745)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-26 09:27:41 +00:00
renovate[bot]
3002a1e89b
Update dependency express to v4.19.2 (#29750)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-26 09:27:23 +00:00
renovate[bot]
36bc57de95
Update dependency cssnano to v6.1.2 (#29754)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-26 09:27:05 +00:00
Renaud Chaput
02ea161506
Support "system" theme setting (light/dark theme depending on user system preference) (#29748)
Co-authored-by: Nishiki Liu <hello@nshki.com>
2024-03-26 09:25:49 +00:00
Essem
1a1ff228b3
Update to mastomodern 1.10.5 2024-03-25 23:35:10 -05:00
Eugen Rochko
0cea7a623b
Fix background and icon on notification requests in web UI (#29706) 2024-03-25 13:39:06 +00:00
Eugen Rochko
29f9dc742e
Change design of notification about lost connections in web UI (#29731) 2024-03-25 13:27:38 +00:00
Eugen Rochko
dd061291b1
Change out-of-band hashtags design in web UI (#29732) 2024-03-25 12:45:00 +00:00
renovate[bot]
766c1fea20
Update devDependencies (non-major) (#29746)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-25 12:14:46 +00:00
renovate[bot]
55e2c827bd
Update DefinitelyTyped types (non-major) (#29743)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-25 11:09:05 +00:00
renovate[bot]
45f8364cd1
Update dependency typescript to v5.4.3 (#29744)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-25 11:09:00 +00:00
renovate[bot]
bbf36836b6
Update formatjs monorepo (#29733)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-25 11:07:47 +00:00
github-actions[bot]
799e3be9bd
New Crowdin Translations (automated) (#29726)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-25 11:07:38 +00:00
Eugen Rochko
8e7e86ee35
Add ability to reorder uploaded media before posting in web UI (#28456) 2024-03-25 10:29:55 +00:00
Renaud Chaput
6c381f20b1
Restore advanced filter bar setting (#29737) 2024-03-24 14:17:06 +00:00
Claire
81a04ac25c
Improve specs for severed relationships (#29688) 2024-03-22 16:25:36 +00:00
Claire
37ca59815c
Remove setting for unfollow confirmation modal, and make it unconditional (#29373) 2024-03-22 16:24:04 +00:00
renovate[bot]
119c7aa0df
Update dependency rails-i18n to v7.0.9 (#29564)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-22 16:22:52 +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
de6c9e0fcd
Change new modals to allow vertical scrolling (#29644) 2024-03-22 16:21:50 +00:00
Claire
387c78ddf9
Change icon of severed relationships notifications (#29712) 2024-03-22 15:45:04 +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
34f293475e
Fix results/query in api/v1/featured_tags/suggestions (#29597) 2024-03-22 15:08:27 +00:00
github-actions[bot]
5db5fa879b
New Crowdin Translations (automated) (#29708)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-22 14:50:03 +00:00
Matt Jankowski
8c1d29df7e
Use has_many through instead of delegate for ARSE<>SR (#29672) 2024-03-22 14:43:35 +00:00
Renaud Chaput
ec1e770fea
Add the role ID to the badge component (#29707) 2024-03-22 11:59:35 +00:00
Claire
05eda8d193
Remove severed relationship notifications for single account suspensions (#29700) 2024-03-21 21:53:24 +00:00
Claire
70a8fcf07d
Fix notification policy migration not preserving filter_private_mentions correctly (#29699) 2024-03-21 21:52:29 +00:00
Matt Jankowski
142c018cfa
Add ruby 3.3 to CI test matrix (#29705) 2024-03-21 21:48:41 +00:00
renovate[bot]
ec6d016da1
Update dependency ox to v2.14.18 (#29701)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 18:09:45 +00:00
renovate[bot]
7f5e930bd2
Update dependency strong_migrations to v1.8.0 (#29556)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 18:09:26 +00:00
renovate[bot]
f5444c8fe4
Update dependency rspec-rails to v6.1.2 (#29691)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 18:06:32 +00:00
renovate[bot]
05abefe989
Update RuboCop (non-major) to v1.62.1 (#29692)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 17:39:27 +00:00
Claire
814a48517f
Add some more tests for notification policies (#29698) 2024-03-21 16:46:38 +00:00
Matt Jankowski
a59f5694fe
Add empty line after magic frozen string comment (#29696) 2024-03-21 14:12:50 +00:00
Claire
75f34b80a8
Clean up notification requests when deleting accounts (#29693) 2024-03-21 14:12:26 +00:00
renovate[bot]
1df00d4e76
Update dependency pino-pretty to v11 (#29662)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 10:46:14 +00:00
renovate[bot]
2ec3fcaffe
Update dependency rack to v2.2.9 (#29685)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 10:43:37 +00:00
renovate[bot]
a506b09de0
Update dependency @reduxjs/toolkit to v2.2.2 (#29681)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 10:41:47 +00:00
renovate[bot]
1feb228275
Update dependency express to v4.19.1 (#29663)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 10:40:38 +00:00
Nick Schonning
d13cdced1e
Add Renovate grouped updates for RSpec and RuboCop (#29621) 2024-03-21 10:35:12 +00:00
Claire
885d0faf83
Fix duplicate translation string for severed relationships (#29689) 2024-03-21 10:06:21 +00:00
github-actions[bot]
c007dd5dd2
New Crowdin Translations (automated) (#29687)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-21 09:57:45 +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
718ee72c80
Use db_table_exists? method in new cli/maintenance area (#29677) 2024-03-21 08:32:40 +00:00
Matt Jankowski
cdd168f5d3
Update enum away from deprecated (#29678) 2024-03-21 08:32:35 +00:00
renovate[bot]
01464074c9
Update dependency autoprefixer to v10.4.19 (#29682)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 08:32:31 +00:00
renovate[bot]
3f363c61bc
Update dependency postcss to v8.4.38 (#29684)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 08:32:25 +00:00
Claire
7434c9c276
Fix the relationships controller spec, since it requires an extra model now (#29671) 2024-03-21 08:28:37 +00:00
Matt Jankowski
39bac24cb7
Remove reference to deleted haml lint todo file (#29675) 2024-03-20 22:12:11 +00:00
Matt Jankowski
62722238c9
Lock i18n gem to version 1.14.1 (#29674) 2024-03-20 22:10:50 +00:00
Essem
aaf54c6395
Merge remote-tracking branch 'upstream/main' 2024-03-20 16:41:33 -05:00
Claire
3341db939c
Merge pull request #2686 from ClearlyClaire/glitch-soc/cherry-pick
Fix error when attempting to delete posts that triggered a notification request (#29666)
2024-03-20 20:13:24 +01:00
Claire
821fc53583 Fix error when attempting to delete posts that triggered a notification request (#29666) 2024-03-20 19:53:20 +01:00
Claire
58a606e0ab
Merge pull request #2685 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 8a1423a474
2024-03-20 19:43:22 +01:00
Claire
49089817b0 [Glitch] Fix “Explore” icon in navigation bar not being filled when selected
Port 3211e960ac to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-20 18:33:00 +01:00
Claire
c0aade79b0 Merge commit '8a1423a47425dd67615e94bdfd13d64b53676da4' into glitch-soc/merge-upstream 2024-03-20 18:31:09 +01:00
Eugen Rochko
be52633ee4
Change back button to always appear in advanced web UI (#29669) 2024-03-20 17:21:03 +00:00
Claire
f4d753aedf
Fix error in severed relationship event serializer (#29670) 2024-03-20 17:14:53 +00:00
Claire
8cac5d8f78
Merge pull request #2684 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 50fd94f481
2024-03-20 18:03:06 +01: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
renovate[bot]
99c9db5f67
Update babel monorepo to v7.24.3 (#29660)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-20 15:48:24 +00:00
renovate[bot]
27a6fa7b0e
Update dependency cssnano to v6.1.1 (#29661)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-20 15:44:36 +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
0a33be39c1
Reduce LineLength for react_admin_component helpers (#29650) 2024-03-20 13:45:34 +00:00
Claire
3211e960ac
Fix “Explore” icon in navigation bar not being filled when selected (#29649) 2024-03-20 13:31:31 +00:00
Claire
df777776f1 [Glitch] Fix blockquote color in reply indicator
Port 50fd94f481 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-20 12:32:37 +01:00
Claire
5e039b96c3 [Glitch] Fix emoji picker placement on limited-height viewports
Port 94f7ae192b to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-20 12:31:45 +01:00
Claire
72baa1e5c3 [Glitch] Fix emoji picker dropdown background and borders
Port e36e7ea243 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-20 12:31:12 +01:00
Claire
100cb46608 [Glitch] Fix icon and styling in browser notifications banner
Port a583317df6 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-20 12:30:45 +01:00
Claire
eb3aed9545 Merge commit '50fd94f481cf23a81662140afe99df2fbf1149be' into glitch-soc/merge-upstream
Conflicts:
- `yarn.lock`:
  Upstream touched a dependency that is on an adjacent line to a
  glitch-soc-only dependency in that file.
  Updated as upstream did.
2024-03-20 12:27:52 +01:00
Claire
d6f5702d66
Merge pull request #2683 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to ffc5be4820
2024-03-20 12:20:34 +01:00
Claire
50fd94f481
Fix blockquote color in reply indicator (#29659) 2024-03-20 11:20:23 +00:00
Claire
a68dd889fe
Add back support for old browsers (#29654) 2024-03-20 11:07:10 +00:00
Claire
94f7ae192b
Fix emoji picker placement on limited-height viewports (#29651) 2024-03-20 11:07:02 +00:00
Claire
e36e7ea243
Fix emoji picker dropdown background and borders (#29653) 2024-03-20 11:06:50 +00:00
Claire
a583317df6
Fix icon and styling in browser notifications banner (#29658) 2024-03-20 11:06:44 +00:00
github-actions[bot]
6c0b1a41a1
New Crowdin Translations (automated) (#29657)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-20 08:39:42 +00:00
renovate[bot]
5f1380415f
Update dependency postcss to v8.4.37 (#29656)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-20 08:19:08 +00:00
Claire
d0dfcc9f3a Fix build issue with glitch-soc's theming system 2024-03-19 19:58:04 +01:00
Claire
da2bb672ce [Glitch] Change filtered icon from “archive” to “inventory 2”
Port ffc5be4820 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-19 19:35:17 +01:00
Claire
8b3bd12def [Glitch] Slightly increase font weight of favorite/boost numbers in detailed statuses
Port bd06963c16 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-19 19:35:17 +01:00
Claire
885a4c73cb [Glitch] Add badge on account card in report moderation interface when account is already suspended
Port cf08a438e7 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-19 19:35:17 +01:00
Jeong Arm
ccf2f2cb75 [Glitch] Fix mute for 30 days
Port 39839baec3 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-19 19:24:51 +01:00
Claire
d959501ef1 [Glitch] Fix extra separator besides favourite count on private posts
Port 726e7ad024 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-19 19:24:34 +01:00
Claire
876aa35350 Merge commit 'ffc5be4820ed7bad4656489f096230dd7965140b' into glitch-soc/merge-upstream
Conflicts:
- `package.json`:
  Upstream updated a dependency that is on an adjacent line to a
  glitch-soc-only dependency in that file.
  Updated as upstream did.
- `yarn.lock`:
  Upstream updated a dependency that is on an adjacent line to a
  glitch-soc-only dependency in that file.
  Updated as upstream did.
2024-03-19 19:21:12 +01:00
Matt Jankowski
4c84891453
Pull out full li element into admin/status_edits/status_edit partial (#29499) 2024-03-19 16:11:10 +00:00
Claire
ffc5be4820
Change filtered icon from “archive” to “inventory 2” (#29652) 2024-03-19 15:39:26 +00:00
Matt Jankowski
62e266fbd6
Add BrowserDetection model concern (#29513) 2024-03-19 15:39:14 +00:00
Matt Jankowski
d7ab5655ef
Replace render_symbol method with inline_svg_tag usage (#29647) 2024-03-19 14:17:18 +00:00
Claire
bc6f9befde
Change “Notifications” settings page to “E-mail notifications” (#29646) 2024-03-19 13:40:16 +00:00
Claire
bd06963c16
Slightly increase font weight of favorite/boost numbers in detailed statuses (#29648) 2024-03-19 13:39:30 +00:00
renovate[bot]
42cdd0c095
Update babel monorepo to v7.24.1 (#29645)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-19 13:00:39 +00:00
renovate[bot]
caee5e4d6a
Update dependency core-js to v3.36.1 (#29642)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-19 09:11:38 +00:00
Matt Jankowski
6c68c3c0ce
Introduce inline_svg gem, minimal usage, prep for material design icons (#29612) 2024-03-19 09:03:15 +00:00
github-actions[bot]
4e61bce4e9
New Crowdin Translations (automated) (#29641)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-19 08:36:52 +00:00
Matt Jankowski
72e1162eb3
Flatten olm section of context helper extension map (#29638) 2024-03-19 08:22:46 +00:00
Claire
cf08a438e7
Add badge on account card in report moderation interface when account is already suspended (#29592) 2024-03-19 08:20:53 +00:00
Jeong Arm
39839baec3
Fix mute for 30 days (#29640) 2024-03-19 08:18:14 +00:00
renovate[bot]
4ce714adea
Update dependency irb to v1.12.0 (#29519)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 14:09:18 +00:00
Matt Jankowski
6d2986017e
Remove unused active_nav_class helper method (#29617) 2024-03-18 13:24:59 +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
b5115850bb
Move repeated insert_pagination_headers method to api base class (#29606) 2024-03-18 10:11:53 +00:00
renovate[bot]
58ce0002cd
Update dependency typescript to v5.4.2 (#29632)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 10:00:29 +00:00
renovate[bot]
7f17162242
Update dependency cssnano to v6.1.0 (#29514)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 10:00:13 +00:00
renovate[bot]
0dd1c772a8
Update dependency cocoon-js-vanilla to v1.5.1 (#29461)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 09:59:45 +00:00
renovate[bot]
6ebb971aad
Update dependency async-mutex to ^0.5.0 (#29552)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 09:59:31 +00:00
Claire
9142805ca8
Remove deprecated @types/… packages (#29633) 2024-03-18 09:58:28 +00:00
renovate[bot]
a732ef21b0
Update dependency json-schema to v4.2.0 (#29604)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 09:37:33 +00:00
renovate[bot]
1164c7005e
Update dependency http-link-header to v1.1.3 (#29625)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 09:33:54 +00:00
Matt Jankowski
f279ff3bd6
Update rspec-* gems (#29616) 2024-03-18 09:19:38 +00:00
renovate[bot]
307efe41c6
Update dependency axios to v1.6.8 (#29613)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 09:15:03 +00:00
Matt Jankowski
92855948a0
Remove unused show_landing_strip? helper method (#29618) 2024-03-18 08:55:54 +00:00
Matt Jankowski
ecdbf15ebe
Remove unused link_to_older and link_to_newer helper methods (#29620) 2024-03-18 08:54:46 +00:00
renovate[bot]
97a229d5f4
Update dependency nokogiri to v1.16.3 (#29622)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 08:53:29 +00:00
renovate[bot]
a0fcac9652
Update dependency postcss to v8.4.36 (#29628)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 08:49:34 +00:00
renovate[bot]
2f653174b1
Update libretranslate/libretranslate Docker tag to v1.5.6 (#29629)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 08:49:18 +00:00
renovate[bot]
cf7d412367
Update peter-evans/create-pull-request action to v6.0.2 (#29630)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 08:48:37 +00:00
renovate[bot]
5d3d525d0e
Update DefinitelyTyped types (non-major) (#29631)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 08:48:13 +00:00
github-actions[bot]
04817e965a
New Crowdin Translations (automated) (#29623)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-18 08:47:48 +00:00
Essem
2d07a29632
Merge remote-tracking branch 'upstream/main' 2024-03-17 00:13:58 -05:00
Claire
ada2ac411a
Merge pull request #2681 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to d702a03a0c
2024-03-16 22:34:16 +01:00
Claire
82c2af0356
Fix user_mailer.welcome.hashtags_recent_count not having plural form (#29607) 2024-03-16 16:38:20 +00:00
Claire
726e7ad024
Fix extra separator besides favourite count on private posts (#29605) 2024-03-16 01:11:59 +00:00
Claire
c511e52d1e [Glitch] Add “Learn more” on block modal to inform of federation caveats
Port d702a03a0c to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-15 22:58:16 +01:00
Eugen Rochko
80fda17868 [Glitch] Change mute, block and domain block confirmations in web UI
Port ec19d0a14b to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-15 22:58:01 +01:00
Claire
3beba00c4e [Glitch] Change Explore icon to compass in advanced interface
Port be7a68b095 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-15 22:50:15 +01:00
Claire
b8f476256e Merge commit 'd702a03a0c35fc631a0fa456532946e6751cbbfd' into glitch-soc/merge-upstream 2024-03-15 22:48:04 +01:00
Renaud Chaput
7fe848b161 [Glitch] Convert packs/public.jsx to Typescript
Port c76ae7a5c0 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-15 22:43:36 +01:00
Claire
1b06e4e1b7 Merge commit 'c76ae7a5c0d247264afa896f081db9d1fd278711' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/packs/public.jsx`:
  In glitch-soc, this file was split across the following files:
  - `app/javascript/packs/public.jsx`
  - `app/javascript/core/embed.js`
  - `app/javascript/core/settings.js`
  Update all those files accordingly, as well as the related `theme.yml` files.
2024-03-15 22:37:55 +01:00
Claire
6ee7a64465
Reduce differences with upstream in “public” pack (#2680)
* Reduce differences with upstream

* Further reduce pack differences with upstream
2024-03-15 22:21:57 +01:00
Claire
2cdac2bc38
Merge pull request #2679 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 407287573c
2024-03-15 21:38:07 +01:00
Claire
d702a03a0c
Add “Learn more” on block modal to inform of federation caveats (#29614) 2024-03-15 19:09:21 +00:00
Eugen Rochko
a32f992182 [Glitch] Add domain information to profiles in web UI
Port 407287573c to glitch-soc

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-15 18:51:41 +01:00
Claire
2c622497c2 Merge commit '407287573c9c602c5490224c43639b39edf7d48a' into glitch-soc/merge-upstream 2024-03-15 18:48:39 +01:00
Eugen Rochko
ec19d0a14b
Change mute, block and domain block confirmations in web UI (#29576) 2024-03-15 17:36:41 +00:00
Claire
ed1af46108
Merge pull request #2677 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes
2024-03-15 18:23:54 +01:00
Claire
be7a68b095
Change Explore icon to compass in advanced interface (#29610) 2024-03-15 16:06:48 +00:00
Matt Jankowski
4f4132f1a1
Add diagnostic message for failure during CLI search deploy (#29462) 2024-03-15 14:26:23 +00:00
Renaud Chaput
c76ae7a5c0
Convert packs/public.jsx to Typescript (#29501) 2024-03-15 13:16:45 +00:00
Eugen Rochko
407287573c
Add domain information to profiles in web UI (#29602)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-03-15 13:08:38 +00:00
Claire
2d4ff8f6ed Merge commit 'f445d33fd6aa492df319f4cc4efbd255d7a84f0e' into glitch-soc/merge-upstream
Conflicts:
- `app/views/admin/custom_emojis/new.html.haml`:
  Upstream split some `simple_form` arguments across multiple lines.
  One of the arguments in glitch-soc was different.
  Split as upstream's did, keeping our different limit argument.
- `app/views/admin/settings/appearance/show.html.haml`:
  Upstream split some `simple_form` arguments across multiple lines.
  Glitch-soc had a different field because of the different theming
  system.
  Kept glitch-soc's definition of that form field.
2024-03-15 12:43:59 +01:00
renovate[bot]
52200b6bbf
Update dependency sass to v1.72.0 (#29586)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-15 11:41:55 +00:00
Claire
2e49bc97b0 Merge commit '7720c684c5bf54e73e8815defe15473777d1c201' into glitch-soc/merge-upstream 2024-03-15 12:20:32 +01:00
Matt Jankowski
f445d33fd6
Fix haml-lint LineLength cops in app/views/admin (#28680) 2024-03-15 11:19:00 +00:00
Matt Jankowski
7720c684c5
Move common module inclusion in sub classes to ActivityPub::BaseController (#29560) 2024-03-15 10:40:21 +00:00
Matt Jankowski
2e91a9bd34
Add include_pagination_headers matcher to check Link header in api specs (#29596) 2024-03-15 10:17:45 +00:00
github-actions[bot]
6865fda593
New Crowdin Translations (automated) (#29603)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-15 10:02:10 +00:00
Matt Jankowski
e75b55a6d7
Extract target account on list method in bulk import row service spec (#29601) 2024-03-15 09:31:25 +00:00
Matt Jankowski
838b0bdf2d
Remove unused Account::Interactions#endorsed? method (#29463) 2024-03-15 09:00:26 +00:00
Essem
b2660e4670
Use a consumer for identity 2024-03-14 20:51:15 -05:00
Essem
fd1f0891d9
Merge remote-tracking branch 'upstream/main' 2024-03-14 20:36:26 -05:00
Matt Jankowski
d39d625561
Use inclusive range in ActivityTracker#get (#29413) 2024-03-14 21:21:01 +00:00
Claire
b834f41ec1
Merge pull request #2676 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to df6086d402
2024-03-14 21:39:48 +01:00
Eugen Rochko
000a900d3b [Glitch] Fix back button appearing in column header unexpectedly in web UI
Port 30483d618f to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-14 17:43:38 +01:00
Claire
84c7b272e1 [Glitch] Fix accounts not getting imported into redux store for some filtered notification types
Port 95a5713ff7 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-14 17:43:38 +01:00
Eugen Rochko
4b2a935c4a [Glitch] Change design of metadata underneath posts in web UI
Port 4991198b70 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-14 17:43:38 +01:00
Eugen Rochko
042d17ddf1 [Glitch] Fix wrong background color on search results in web UI
Port 1e1d97a787 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-14 17:30:46 +01:00
mogaminsk
88f477749c [Glitch] Use sender's username to column title in notification request if it's display_name is not set
Port 3156d04ec1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-14 17:29:38 +01:00
Claire
e91ede5be6 Merge commit 'df6086d4027910fb160d531b4fe7ffdec26b0cd7' into glitch-soc/merge-upstream 2024-03-14 17:27:16 +01:00
Claire
31b93a5441
Merge pull request #2674 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 24319836de
2024-03-14 17:25:25 +01:00
Matt Jankowski
df6086d402
Extract file size sql calc from media storage cli (#29577) 2024-03-14 15:22:52 +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
974c7672e5
Extract shared behavior methods in oauth feature spec (#28360) 2024-03-14 13:42:59 +00:00
Matt Jankowski
14aa7f1e15
Use Account.activitypub generated scope (#28157) 2024-03-14 13:19:20 +00:00
Matt Jankowski
049d9171eb
Use with_options for shared option in accounts#show routing block (#28914) 2024-03-14 10:03:38 +00:00
Eugen Rochko
30483d618f
Fix back button appearing in column header unexpectedly in web UI (#29551) 2024-03-14 10:01:55 +00:00
Claire
95a5713ff7
Fix accounts not getting imported into redux store for some filtered notification types (#29588) 2024-03-14 09:34:36 +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
681a89f684
Readability clean up in ImportVacuum spec (#28955) 2024-03-14 09:24:00 +00:00
Matt Jankowski
79e7590578
Clean up activitypub module route scope near instance actor (#29579) 2024-03-14 09:18:46 +00:00
Matt Jankowski
65e8349980
Clean up activitypub module route scope near collections/boxes (#29580) 2024-03-14 09:18:41 +00:00
Matt Jankowski
18ffd4d925
Add module instances route scope in api routes (#29581) 2024-03-14 09:18:36 +00:00
Matt Jankowski
01ecc80118
Add module accounts route scope in api routes (#29582) 2024-03-14 09:18:31 +00:00
Eugen Rochko
4991198b70
Change design of metadata underneath posts in web UI (#29585) 2024-03-14 09:18:24 +00:00
Matt Jankowski
f9100743ec
Add Api::ErrorHandling concern for api/base controller (#29574) 2024-03-14 09:09:47 +00:00
Eugen Rochko
1e1d97a787
Fix wrong background color on search results in web UI (#29584) 2024-03-14 09:07:29 +00:00
github-actions[bot]
5aea35de13
New Crowdin Translations (automated) (#29587)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-14 09:00:42 +00:00
Matt Jankowski
42875fee52
Add coverage for bad args/options in CLI::Domains#purge (#29578) 2024-03-14 08:58:53 +00:00
mogaminsk
3156d04ec1
Use sender's username to column title in notification request if it's display_name is not set (#29575) 2024-03-14 08:58:44 +00:00
Claire
369e728536 Fix collapsed posts background color 2024-03-13 20:17:58 +01:00
Claire
e7b49181af [Glitch] Hide media by default in notification requests
Port a32a126cac to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-13 20:15:23 +01:00
Claire
65ca37bbaa Merge commit 'a32a126cac42c73236236b5a9bd660765b9c58ee' into glitch-soc/merge-upstream
Conflicts:
- `spec/lib/sanitize/config_spec.rb`:
  Conflict due to glitch-soc having factored the file differently.
  Ported upstream's changes.
2024-03-13 20:14:18 +01:00
Renaud Chaput
663dd49a85 [Glitch] Fix navigation panel icons missing classes
Port acf3f410ae to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-13 20:13:35 +01:00
Erik Uden
e1b64151a2 [Glitch] Fix toggle button color for light (and dark/default) theme
Port 268856d5d9 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-13 20:13:35 +01:00
Claire
48134bcd10 Merge commit 'acf3f410aef3cfb9e8f5f73042526de9b2f96d13' into glitch-soc/merge-upstream 2024-03-13 20:13:29 +01:00
Claire
08b10cce52 Merge commit 'b43eaa4517107326c7e73b949cec759f841b4a30' into glitch-soc/merge-upstream
Conflicts:
- `spec/controllers/api/v1/accounts/credentials_controller_spec.rb`
  Conflict due to glitch-soc's different note length handling.
  Ported the changes in `spec/requests/api/v1/accounts/credentials_spec.rb` instead.
2024-03-13 20:12:58 +01:00
Matt Jankowski
00d72866a3 [Glitch] Use vanilla JS to get Rails CSRF values
Port 00d94f3ffa to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-13 19:17:59 +01:00
Claire
06881a8669 Merge commit '2c0441acd7f943a9873b650cf75d33c73d545acf' into glitch-soc/merge-upstream 2024-03-13 19:16:47 +01:00
Eugen Rochko
8c0673037a [Glitch] Change background color in web UI
Port 5b60d4b696

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-13 19:05:05 +01:00
Claire
c6dbb33944 Merge commit 'd4ed7e466c41f19e5f9352700c76e7ffc4d28119' into glitch-soc/merge-upstream 2024-03-13 18:58:47 +01:00
Renaud Chaput
435c46b316 [Glitch] Fix i18n typo
Port af4e44e30a to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-13 18:58:00 +01:00
Claire
27ffc09847 Merge commit 'af4e44e30a6a2701102a7d573e47e9db42025821' into glitch-soc/merge-upstream 2024-03-13 18:56:40 +01:00
Eugen Rochko
b36e96ec90 [Glitch] Change action button to be last on profiles in web UI
Port 19efa1b9f1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-13 18:40:00 +01:00
Eugen Rochko
13c9524436 [Glitch] Add notification policies and notification requests in web UI
Port c10bbf5fe3 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-13 18:38:46 +01:00
Claire
a32a126cac
Hide media by default in notification requests (#29572) 2024-03-13 16:47:48 +00:00
Matt Jankowski
71e5f0f48c
Add coverage for suspended instance actor scenario (#29571) 2024-03-13 15:43:40 +00:00
Matt Jankowski
6262ceeb70
Fix RSpec/DescribedClass cop (#29472) 2024-03-13 15:42:39 +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
Renaud Chaput
acf3f410ae
Fix navigation panel icons missing classes (#29569) 2024-03-13 12:54:50 +00:00
github-actions[bot]
171948b910
New Crowdin Translations (automated) (#29563)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-13 12:42:44 +00:00
Erik Uden
268856d5d9
Fix toggle button color for light (and dark/default) theme (#29553) 2024-03-13 11:45:20 +00:00
Claire
b43eaa4517
Refactor notification filtering behavior definition (#29567) 2024-03-13 10:35:49 +00:00
Claire
27fd084cb5
Exempt some notification types from notification filtering (#29565) 2024-03-13 10:17:55 +00:00
Matt Jankowski
46e902f1f3
Merge api/v1/accounts/credentials controller spec into existing request spec (#29006) 2024-03-13 09:22:43 +00:00
Matt Jankowski
2c0441acd7
Use rails built-in tag methods in TextFormatter.shortened_link (#28976) 2024-03-13 09:19:54 +00:00
Matt Jankowski
7e6eb64f1e
Use full snowflake range in admin/metrics classes (#29416) 2024-03-13 08:56:37 +00:00
Matt Jankowski
9754967d5f
Move pagination_max_id and pagination_since_id into api/base controller (#28844) 2024-03-13 08:51:44 +00:00
Matt Jankowski
01b624c4a0
Use normalizes on CustomFilter#context value (#27602) 2024-03-13 08:50:21 +00:00
Matt Jankowski
71eecbfa1f
Move api/v2/filters/* to request spec (#28956) 2024-03-13 08:47:09 +00:00
Matt Jankowski
8349b45d60
Accept extra args that we wont verify in ap/activity/add_spec (#29005) 2024-03-13 08:46:11 +00:00
Matt Jankowski
469028b6d3
Remove unneeded type: :service from spec/services files (#29304) 2024-03-13 08:39:26 +00:00
Matt Jankowski
3eaac3af73
Use before_all block to setup requests/cache_spec data (#29437) 2024-03-13 08:38:57 +00:00
Matt Jankowski
19f0590795
Add basic coverage for TagSearchService class (#29319) 2024-03-13 08:33:03 +00:00
Matt Jankowski
96013cd576
Reduce RSpec/ExampleLength in CSP request spec (#29104) 2024-03-13 08:22:32 +00:00
Matt Jankowski
00d94f3ffa
Use vanilla JS to get Rails CSRF values (#29403) 2024-03-12 17:10:37 +00:00
Matt Jankowski
d4ed7e466c
Extract by_domain_length scope in DomainNormalizable concern (#29517) 2024-03-12 13:09:11 +00:00
Eugen Rochko
5b60d4b696
Change background color in web UI (#29522) 2024-03-12 09:51:30 +00:00
Renaud Chaput
af4e44e30a
Fix i18n typo (#29557) 2024-03-12 09:42:51 +00:00
cuithon
0ba9f58e17
chore: fix some typos (#29555)
Signed-off-by: cuithon <dscs@outlook.com>
2024-03-12 09:40:29 +00:00
github-actions[bot]
dc36b961aa
New Crowdin Translations (automated) (#29554)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-12 09:03:51 +00:00
Matt Jankowski
216cea1e27
Fix incorrect frequency value in FriendsOfFriendsSource data (#29550) 2024-03-12 08:38:32 +00:00
Eugen Rochko
3631ddbfc9 [Glitch] Change icons in navigation panel to be filled when active in web UI
Port 16c856729b

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-11 18:09:07 +01:00
Renaud Chaput
6440651976 [Glitch] Use the server setting to get the max number of poll options in UI
Port b9722dfe2b to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-11 17:38:07 +01:00
Eugen Rochko
efbc8cba17 [Glitch] Change dropdown menu icon to not be replaced by close icon when open in web UI
Port 2347ea813e to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-11 17:36:07 +01:00
Eugen Rochko
777510a696 [Glitch] Add hints for rules
Port 5b3a8737d6 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-11 17:34:02 +01:00
Claire
a5127d0ef8 Merge commit '24319836de6046fb2985ec1a24c30ad7d47584d7' into glitch-soc/merge-upstream
Conflicts:
- `config/routes/api.rb`:
  glitch-soc has an extra `:destroy` action on notifications for historical reasons.
  Kept it for now, while otherwise updating as upstream did.
2024-03-11 17:29:07 +01:00
Matt Jankowski
24319836de
Convert request-based setup into factory setup in push/subscriptions request spec (#29489) 2024-03-11 15:46:25 +00:00
Matt Jankowski
a38e424185
Use unchanging github links in docs/comments (#29545) 2024-03-11 15:14:55 +00:00
Eugen Rochko
c10bbf5fe3
Add notification policies and notification requests in web UI (#29433) 2024-03-11 15:02:21 +00:00
Eugen Rochko
19efa1b9f1
Change action button to be last on profiles in web UI (#29533) 2024-03-11 14:33:48 +00:00
Eugen Rochko
16c856729b
Change icons in navigation panel to be filled when active in web UI (#29537) 2024-03-11 13:35:23 +00:00
Jeong Arm
4a6ddbc9c0
Normalize idna domain before account unblock domain (#29530) 2024-03-11 09:28:08 +00:00
Matt Jankowski
a7284690fc
Add coverage for admin/metrics base classes, simplify subclass generation (#29527) 2024-03-11 09:16:19 +00:00
Renaud Chaput
b9722dfe2b
Use the server setting to get the max number of poll options in UI (#29490) 2024-03-11 09:13:35 +00:00
renovate[bot]
6984f94044
Update dependency autoprefixer to v10.4.18 (#29475)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-11 09:05:07 +00:00
Eugen Rochko
2347ea813e
Change dropdown menu icon to not be replaced by close icon when open in web UI (#29532) 2024-03-11 08:57:23 +00:00
Eugen Rochko
5b3a8737d6
Add hints for rules (#29539) 2024-03-11 08:57:07 +00:00
Matt Jankowski
98ef38e34e
Ensure unique values in fabricators (#29515) 2024-03-11 08:53:24 +00:00
renovate[bot]
6f8ec6d7f8
Update dependency test-prof to v1.3.2 (#29528)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-11 08:50:54 +00:00
renovate[bot]
7b89d6842e
Update DefinitelyTyped types (non-major) (#29543)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-11 08:49:07 +00:00
renovate[bot]
df3798a6fa
Update dependency eslint-plugin-jsdoc to v48.2.1 (#29544)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-11 08:49:04 +00:00
github-actions[bot]
f85168b189
New Crowdin Translations (automated) (#29467)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-03-11 07:37:04 +00:00
gunchleoc
81400b02b1
Add nds locale to posting languages (#27434) 2024-03-10 10:25:13 +00:00
Essem
32308b6536
Merge remote-tracking branch 'upstream/main' 2024-03-09 18:22:55 -06:00
Claire
bb3ad2b2a9
Merge pull request #2669 from ClearlyClaire/glitch-soc/reduce-upstream-differences
Reduce code differences with upstream
2024-03-08 23:10:02 +01:00
Claire
46152a19a6 Convert logo.jsx to Typescript 2024-03-08 12:46:49 +01:00
Sunny Ripert
2b4e9fbc71 [Glitch] Add form element on focal point modal
Port 8515bc7962 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-08 12:43:59 +01:00
Claire
98cf4b7ba0 Reduce code differences with upstream 2024-03-08 12:42:03 +01:00
neetshin
6996b96fab [Glitch] Make columns-area unscrollable when modal opened
Port 2091ae92be to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-08 11:50:23 +01:00
Claire
a79bd2cd11 Make some CSS differences with upstream more explicit 2024-03-08 11:47:34 +01:00
Claire
d09ab957d4 Remove duplicate captcha_enabled key in app/models/form/admin_settings.rb 2024-03-08 11:38:01 +01:00
Claire
e95f2c2b68
Add a glitch-soc local setting to make the post publish toast optional (#2666) 2024-03-08 11:35:18 +01:00
Eugen Rochko
e85a2aa18d
Fix interaction settings migration error when encountering no settings (#29529) 2024-03-08 09:10:07 +00:00
github-actions[bot]
d002458c7b
New Crowdin Translations (automated) (#2661)
* New Crowdin translations

* Fix bogus translations

---------

Co-authored-by: GitHub Actions <noreply@github.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-03-07 22:39:48 +01:00
Claire
f407505f75
Merge pull request #2667 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 653ce43abe
2024-03-07 19:04:33 +01:00
renovate[bot]
e8605a69d2
Update omniauth packages (#25306)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2024-03-07 18:02:24 +00:00
renovate[bot]
509528e2dc
Update dependency pg to v1.5.6 (#29477)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-07 17:33:54 +00:00
Eugen Rochko
50b17f7e10
Add notification policies and notification requests (#29366) 2024-03-07 14:53:37 +00:00
Mashiro
1fc6edfa84 [Glitch] Fix unhandled nullable attachments limitation counter
Port b8bd94ca8e to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-03-07 13:01:21 +01:00
Claire
442a5cb66c Merge commit '653ce43abe0a928d944a15c433d2c8324f9b5e2a' into glitch-soc/merge-upstream 2024-03-07 12:59:51 +01:00
Claire
3f239facff
Update flavor screenshots (#2664) 2024-03-07 12:59:00 +01:00
Renaud Chaput
653ce43abe
Update json-jwt gem to fix CVE-2023-51774 (#29520) 2024-03-07 11:11:14 +00:00
gunchleoc
c01f4cebed
Add Mohawk to posting languages (#27115) 2024-03-07 11:04:31 +00:00
gunchleoc
995e15c24a
Add Jawi Malay to posting languages (#29098) 2024-03-07 11:03:41 +00:00
Claire
8c9341a67b
Further reduce pointless CSS differences with upstream (#2665) 2024-03-06 22:13:23 +01:00
Claire
a11151d58f
Update our README and include upstream's (#2663) 2024-03-06 22:12:57 +01:00
Mashiro
b8bd94ca8e
Fix unhandled nullable attachments limitation counter (#29183) 2024-03-06 12:53:54 +00:00
Claire
8f4cc711c2
Merge pull request #2662 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to f89512fbed
2024-03-05 20:56:08 +01:00
Claire
45e56db8e4 Merge commit 'f89512fbedb547f66a72eefdff047768fb505eb6' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Upstream updated its README, we have a completely different one.
  Kept our version.
2024-03-05 16:25:50 +01:00
renovate[bot]
f89512fbed
Update dependency rack-cors to v2.0.2 [SECURITY] (#29507)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-05 15:09:52 +01:00
renovate[bot]
7265d47342
Update peter-evans/create-pull-request action to v6.0.1 (#29503)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-05 09:42:49 +00:00
renovate[bot]
4c138ee4eb
Update DefinitelyTyped types (non-major) (#29502)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-05 09:42:26 +00:00
renovate[bot]
cb0f3ecc28
Update eslint (non-major) (#29505)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-05 09:41:31 +00:00
renovate[bot]
0f7f257139
Update Yarn to v4.1.1 (#29508)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-05 09:39:12 +00:00
Essem
4fb9a34830
Merge remote-tracking branch 'upstream/main' 2024-03-04 22:55:35 -06:00
Claire
74998b0636
Merge pull request #2657 from glitch-soc/i18n/crowdin/translations
New Crowdin Translations (automated)
2024-03-04 16:27:34 +01:00
Claire
a7d9c5e374 Fix bogus translations 2024-03-04 11:27:37 +01:00
Claire
ee8d0b9447
Fix follow suggestions potentially including silenced or blocked accounts (#29306) 2024-03-04 06:35:20 +00:00
GitHub Actions
1b418a3550 New Crowdin translations 2024-03-04 04:57:12 +00:00
Claire
96c6cafc34
Merge pull request #2660 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 18945f62e0
2024-03-03 16:11:28 +01:00
renovate[bot]
68600893d2
Update babel monorepo to v7.24.0 (#29434)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-02 18:33:33 +00:00
Matt Jankowski
64b8ba36bb
Add bin/dev script to launch foreman (#28242) 2024-03-02 18:31:43 +00:00
Dave MacLeod
b6b94c971f
Add Interlingue to available_locales (#28630) 2024-03-01 17:51:22 +00:00
gunchleoc
1d5de8b26a
Add Vai to posting languages (#27136) 2024-03-01 17:41:49 +00:00
gunchleoc
5ab944af95
Rename Panjabi to Punjabi (#27117) 2024-03-01 17:40:48 +00:00
Helge
8d22599318
Add Pennsylvania Dutch to languages dropdown (#26634) 2024-03-01 17:36:00 +00:00
Krzysztof Piwowar
b4af3639e8
Add Kashubian to languages dropdown (#26024) 2024-03-01 17:35:35 +00:00
Claire
159e500749 Merge commit '18945f62e07617ac44b7a25a61799b0959fe67f7' into glitch-soc/merge-upstream 2024-03-01 18:34:48 +01:00
Claire
c7fc7d0c2a
Merge pull request #2659 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 3389c41b58
2024-03-01 18:34:00 +01:00
Matt Jankowski
18945f62e0
Convert more API specs from controller->request style (#29004) 2024-03-01 16:24:45 +00:00
Daniel M Brasil
a25014de8f
Improve IpBlock model test coverage (#29460) 2024-03-01 16:17:40 +00:00
Claire
1d721b21e1
Add attribution to Tabler.io icons used in the new mailer designs (#29470) 2024-03-01 14:51:01 +00:00
HTeuMeuLeu
934cab7508
New welcome email (#28883)
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2024-03-01 12:16:53 +00:00
Claire
f01605c665 Merge commit '3389c41b5899c1da479bfc08e84588184e09902d' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/packs/admin.tsx`:
  Changes applied to `app/javascript/core/admin.ts` instead.
2024-03-01 13:02:59 +01:00
Matt Jankowski
3389c41b58
Move nobody position in UserRole magic number to constant (#29465) 2024-03-01 11:05:24 +00:00
Claire
ec953bf378
Fix regression in handling select elements in packs/admin.tsx (#29469) 2024-03-01 10:16:35 +00:00
Matt Jankowski
b9940eb977
Disable codecov comments on PRs (#29464) 2024-02-29 23:25:04 +00:00
Essem
9a4b0c8365
mastomodern 1.10.3 2024-02-29 16:43:39 -06:00
Essem
c609845d47
Merge remote-tracking branch 'upstream/main' 2024-02-29 16:35:17 -06:00
Claire
71f673b3e6
Merge pull request #2656 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 958a810553
2024-02-29 20:38:25 +01:00
Claire
f6654e0842 Merge commit '958a810553aac6b6cf21d9d107a47b6f68b2a401' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/packs/admin.jsx`:
  This file was split between `app/javascript/core/admin.js`,
  `app/javascript/pack/admin.jsx`, and
  `app/javascript/flavours/glitch/packs/admin.jsx`.
  Ported upstream's change, splitting the new file to
  `app/javascript/core/admin.ts`, `app/javascript/packs/admin.tsx`,
  and `app/javascript/flavours/glitch/packs/admin.tsx`
2024-02-29 19:02:31 +01:00
Claire
a04b384482 [Glitch] Fix regression with search bar icon position
Port edd6aa70e1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-29 18:30:24 +01:00
Claire
bbfcd71118 [Glitch] Fix preview card player getting embedded when clicking on the external link button
Port f24c62a5c8 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-29 18:29:57 +01:00
Renaud Chaput
5b97fdf84c [Glitch] Fix full date display not respecting the locale 12/24h format
Port 4185f3792c to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-29 18:29:11 +01:00
Claire
4d7e7cc562 Merge commit '6dfe318f34d69066dc0f453a228fdfc6af84b62e' into glitch-soc/merge-upstream 2024-02-29 18:24:47 +01:00
Claire
8dbdd7571f
Merge pull request #2655 from TheEssem/fix/open-in
Use upstream's openURL function for search
2024-02-29 18:23:56 +01:00
Claire
fd2e46847a
Merge pull request #2610 from glitch-soc/i18n/crowdin/translations
New Crowdin Translations (automated)
2024-02-29 18:20:01 +01:00
Renaud Chaput
958a810553
Convert packs/admin.jsx to Typescript (#29425) 2024-02-29 15:21:03 +00:00
renovate[bot]
6dfe318f34
Update dependency express to v4.18.3 (#29458)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-29 15:20:39 +00:00
Matt Jankowski
eb1b8f69de
Allow pagination Link headers on API accounts/statuses when pinned true (#29442) 2024-02-29 14:21:56 +00:00
Claire
edd6aa70e1
Fix regression with search bar icon position (#29456) 2024-02-29 13:54:06 +00:00
Claire
f24c62a5c8
Fix preview card player getting embedded when clicking on the external link button (#29457) 2024-02-29 13:54:02 +00:00
Matt Jankowski
6675bf574a
Extract parsed_uri_query_values helper in ap/replies controller spec (#29410) 2024-02-29 13:47:38 +00:00
Claire
1c4f36422d Fix bogus translation files 2024-02-29 12:51:22 +01:00
Matt Jankowski
e1fcb02867
Align TagServersMeasure to use WITH query style similar to others (#29435) 2024-02-29 11:00:58 +00:00
Matt Jankowski
14c65180df
Use sequence in software_update fabricator to allow multiple (#29438) 2024-02-29 10:51:11 +00:00
Renaud Chaput
4185f3792c
Fix full date display not respecting the locale 12/24h format (#29448) 2024-02-29 09:40:13 +00:00
github-actions[bot]
cdf5098166
New Crowdin Translations (automated) (#29452)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-29 09:38:33 +00:00
Essem
9242c536d2
Use openURL function from upstream 2024-02-28 23:41:18 -06:00
Essem
cdb366cbc6
Use openURL function from upstream 2024-02-28 23:40:02 -06:00
Essem
ea51af8eca
Add Tenor GIF picker
Co-authored-by: koyu <me@koyu.space>
2024-02-28 23:10:57 -06:00
Essem
54a3fc3ac5
Merge remote-tracking branch 'upstream/main' 2024-02-28 22:36:41 -06:00
GitHub Actions
ab195bcee1 New Crowdin translations 2024-02-29 04:27:18 +00:00
Claire
0d55610f96
Merge pull request #2653 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 7f84bbfd92
2024-02-28 21:15:34 +01:00
Jeong Arm
4004801ee8 [Glitch] Show comments in the admin/instances page
Port deffb8ecb6 to glitch-soc

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-28 20:38:17 +01:00
Roni Laukkarinen
c844817c78 [Glitch] Fix the regression with the search icon position
Port edfc53856f to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-28 20:37:48 +01:00
Claire
ccdf56085d Merge commit '7f84bbfd92377689f84121ec45c5b9d809d94cde' into glitch-soc/merge-upstream 2024-02-28 20:37:38 +01:00
renovate[bot]
9324fbe984 [Glitch] Update devDependencies (non-major)
Port dc4427dc9b to glitch-soc

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-28 20:30:58 +01:00
Claire
21e7a53ca5 Merge commit '3b3144740805c1b404934c0f196d6cddc14dac0b' into glitch-soc/merge-upstream
Conflicts:
- `package.json`:
  Conflict due to lines adjacent to the glitch-soc-modified `i18n:extract` one
  were changed, but otherwise no real conflict.
  Ported upstream's changes and kept glitch-soc's `i18n:extract`.
- `tsconfig.json`:
  Upstream's dependencies changed the code style rules for json formatting, and
  we had local changes.
  Kept our changes, but with upstream's formatting/
- `yarn.lock`:
  A dependency textually adjacent to a glitch-soc-only one got changed.
  Applied upstream's change, keeping the glitch-soc-only dependency.
2024-02-28 20:27:28 +01:00
Renaud Chaput
0ff9800989 [Glitch] Use modern ES syntax rather than .call
Port 899eac1a92 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-28 20:11:26 +01:00
Claire
c2f0ea415e Merge commit '899eac1a92c802c334606a49d538ef37bd47c91a' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/packs/admin.jsx`:
  Changes split in `app/javascript/core/admin.js` and `app/javascript/flavours/glitch/packs/admin.jsx`.
2024-02-28 20:10:01 +01:00
github-actions[bot]
7f84bbfd92
New Crowdin Translations (automated) (#29430)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-28 12:14:42 +00:00
Jeong Arm
deffb8ecb6
Show comments in the admin/instances page (#29240)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-02-28 12:07:06 +00:00
Roni Laukkarinen
edfc53856f
Fix the regression with the search icon position (#29417) 2024-02-28 12:01:18 +00:00
Claire
c19787f3f4
Add doodle feature back (#2652) 2024-02-27 21:27:51 +01:00
Claire
a25c900a08
Merge pull request #2650 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 6f7615ba86
2024-02-27 20:36:13 +01:00
Claire
e8155319c7 Take advantage of upstream's refactor and reduce code duplication 2024-02-27 19:28:13 +01:00
Claire
916d78373d [Glitch] Change behavior of privacy dropdown to only change value on validation
Port 90573c3abb to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-27 19:24:34 +01:00
Evan Paterakis
1b219e709b [Glitch] Fix filters title and keywords overflow
Port 213c87ae59 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-27 19:24:03 +01:00
Claire
a482932649 Merge commit '6f7615ba86afda56e1d661442286a1d68467a525' into glitch-soc/merge-upstream
Conflicts:
- `app/controllers/application_controller.rb`:
  Not a real conflict, upstream fixed a bug in a line adjacent to code
  modified by glitch-soc.
  Ported upstream's change.
2024-02-27 19:20:57 +01:00
Matt Jankowski
8f3c91fc3c
Add change block expectation to admin/invites#deactivate_all spec (#29412) 2024-02-27 16:25:58 +00:00
Matt Jankowski
ea8e7f3e9d
Align TagServersMeasure query style with other classes (#29414) 2024-02-27 16:25:12 +00:00
Renaud Chaput
3b31447408
Rework Prettier invocation (#28851) 2024-02-27 16:09:27 +00:00
renovate[bot]
dc4427dc9b
Update devDependencies (non-major) (#29089)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2024-02-27 16:07:43 +00:00
Renaud Chaput
899eac1a92
Use modern ES syntax rather than .call (#29368) 2024-02-27 15:42:05 +00:00
Claire
6f7615ba86
Add basic end-to-end test for admin moderation interface (#29424) 2024-02-27 15:18:06 +00:00
Renaud Chaput
036f5a05e3
Convert the streaming server to ESM (#29389)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-02-27 14:59:20 +00:00
github-actions[bot]
bc4c5ed918
New Crowdin Translations (automated) (#29423)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-27 14:53:53 +00:00
Matt Jankowski
76d256138e
Wrap media attachment size calculation in COALESCE (#29415) 2024-02-27 11:52:37 +00:00
Matt Jankowski
9e78129e6e
Use "cacheable response" shared example in more places (#29419) 2024-02-27 11:50:21 +00:00
renovate[bot]
54e3a82f1d
Update dependency thor to v1.3.1 (#29421)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-27 11:48:42 +00:00
Claire
90573c3abb
Change behavior of privacy dropdown to only change value on validation (#29406) 2024-02-27 11:41:19 +00:00
Matt Jankowski
9fa7338b6e
Use github reporter on haml-lint runs on CI (#29375) 2024-02-27 10:48:38 +00:00
Evan Paterakis
213c87ae59
Fix filters title and keywords overflow (#29396) 2024-02-27 10:46:58 +00:00
zunda
a30cdfd4d4
Specify 410 for code when responding as json while self-destruction (#29420) 2024-02-26 22:43:07 +00:00
Essem
1aff1b9f4c
Merge remote-tracking branch 'upstream/main' 2024-02-26 14:51:36 -06:00
Claire
e1cb7c9b23
Merge pull request #2649 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 8156113d58
2024-02-26 20:23:28 +01:00
Matt Jankowski
8a80ad7fc4 [Glitch] Remove unused media-spoiler-* JS/CSS
Port c7555271a6 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-26 17:54:58 +01:00
Roni Laukkarinen
20bc633b0c [Glitch] Change new explore compass icon CSS class to explore
Port 10fdd88288 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-26 17:54:58 +01:00
Roni Laukkarinen
3fc4859279 [Glitch] Fix search icon position on mobile
Port 1cb74eeec0 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-26 17:54:58 +01:00
Roni Laukkarinen
658911c268 [Glitch] Improve alt text form accessibility with long texts
Port bbf6cb66f6 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-26 17:54:58 +01:00
Eugen Rochko
f6903d9ab0 [Glitch] Change explore icon from hashtag to compass in web UI
Port b8b2f20b16 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-26 17:54:58 +01:00
Claire
67ca8bb56a Merge commit '8156113d58db851d00f8052e66459e6dafb71e82' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/packs/admin.jsx`:
  Change applied to `app/javascript/core/admin.js` instead.
2024-02-26 17:43:16 +01:00
Matt Jankowski
8156113d58
Use response_vary_headers method in requests/cache_spec (#29411) 2024-02-26 16:27:07 +00:00
Damien Mathieu
1540f42522
Better tests for auth/registrations#update (#29303) 2024-02-26 16:09:56 +00:00
Wolfgang Fournès
d51c3ac087
Add a missing spec to SessionsController#webauthn_options (#29277) 2024-02-26 16:09:40 +00:00
Matt Jankowski
c7555271a6
Remove unused media-spoiler-* JS/CSS (#29407) 2024-02-26 15:30:58 +00:00
Roni Laukkarinen
10fdd88288
Change new explore compass icon CSS class to explore (#29395) 2024-02-26 15:28:38 +00:00
Matt Jankowski
8429d07454
Add RankedTrend concern for trends classes (#29388) 2024-02-26 13:45:39 +00:00
github-actions[bot]
98e3dc2578
New Crowdin Translations (automated) (#29382)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-26 13:03:06 +00:00
renovate[bot]
b829d261ba
Update DefinitelyTyped types (non-major) (#29404)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-26 12:52:03 +00:00
renovate[bot]
e57d321097
Update dependency httplog to v1.6.3 (#29399)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-26 12:51:37 +00:00
Jason Punyon
1ad3cffaea
Missed a .to_date (#29390) 2024-02-26 12:42:09 +00:00
renovate[bot]
8fd8b30c24
Update dependency cssnano to v6.0.5 (#29385)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-26 12:41:34 +00:00
Claire
502e3f8c19
Merge pull request #2648 from TheEssem/fix/thread-typo
Fix "threaded more" typo
2024-02-26 12:07:02 +01:00
Roni Laukkarinen
1cb74eeec0
Fix search icon position on mobile (#29384) 2024-02-26 00:57:48 +00:00
Roni Laukkarinen
bbf6cb66f6
Improve alt text form accessibility with long texts (#27095) 2024-02-26 00:57:13 +00:00
Essem
a5308ac5b6
Update to mastomodern 1.10.2 2024-02-25 18:56:49 -06:00
Essem
fa2bbbfd9d
Fix "threaded more" typo 2024-02-25 17:10:25 -06:00
Essem
521d4147a4
Fix "threaded more" typo 2024-02-25 17:09:45 -06:00
Essem
681a52f632
Fix i18n 2024-02-25 15:27:31 -06:00
Essem
db52ab33f0
Fix reaction picker dropdown appearance 2024-02-25 14:10:32 -06:00
Essem
2d5d3cd4db
Merge fixes 2024-02-25 14:10:08 -06:00
Essem
b19fce9530
Allow posting media alongside polls 2024-02-25 14:09:47 -06:00
Essem
fd6bd9c87b
Merge remote-tracking branch 'upstream/main' 2024-02-25 12:15:38 -06:00
Claire
78c92c0a01
Merge pull request #2647 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to cfa71a4d16
2024-02-24 17:51:00 +01:00
Claire
3ffb81e04f [Glitch] Add end-to-end test for OCR in media uploads
Port ca8fbda5d0 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 16:13:13 +01:00
Claire
ad0be125f5 [Glitch] Fix pixel alignment for some composer icons
Port 25ffe0af45 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 15:53:42 +01:00
Claire
2dc244784c Merge commit 'cfa71a4d16e71b04a42dda564ed8e188bd1badd9' into glitch-soc/merge-upstream 2024-02-24 15:43:15 +01:00
Claire
1ad91dece8 Merge commit '9d8dfeb5fbbc274482489a3ac9f22dd736da156c' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/packs/admin.jsx`:
  Changes applied to `app/javascript/core/admin.js` instead.
2024-02-24 15:35:56 +01:00
Claire
7901dc9e24 Merge commit '491dd9764244c8adf37861f00d916c96bdbfdaf8' into glitch-soc/merge-upstream
Conflicts:
- `app/workers/scheduler/auto_close_registrations_scheduler.rb`:
  Changes were already cherry-picked and updated further in glitch-soc.
  Kept glitch-soc's version.
2024-02-24 15:33:36 +01:00
Claire
d2cfc6e5e2 Merge commit '08342ad40c1b92caf873282190efe8533a7d6e2e' into glitch-soc/merge-upstream 2024-02-24 15:02:28 +01:00
Hinaloe
ba67ea3d12 [Glitch] Fix sensitive flag not being removed when removing CW in new compose form
Port c645490d55 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:53:49 +01:00
Eugen Rochko
200e11ae88 [Glitch] Change follow suggestions design in web UI
Port 63f4ea055a to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:53:09 +01:00
Claire
26924a0c7d [Glitch] Change source attribute of Suggestion entity in /api/v2/suggestions back to a string
Port 7ee93b7431 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:52:44 +01:00
Nicolas Hoffmann
e45f40d203 [Glitch] Fix modal container bounds
Port 476a043fc5 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:49:35 +01:00
Claire
9f0ff2bedf [Glitch] Clean up some unused CSS definitions
Port 67ec192d7d to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:49:03 +01:00
Claire
ef3d15554b Merge commit 'c645490d553124d800d30488595f7d2d9d61584d' into glitch-soc/merge-upstream
Conflicts:
- `Gemfile.lock`:
  Changes were already cherry-picked and updated further in glitch-soc.
  Kept glitch-soc's version.
- `README.md`:
  Upstream updated its README, we have a completely different one.
  Kept glitch-soc's README.
- `app/models/account.rb`:
  Not a real conflict, upstream updated some lines textually adjacent
  to glitch-soc-specific lines.
  Ported upstream's changes.
2024-02-24 14:46:14 +01:00
Claire
3c36e1be68 [Glitch] Fix report reason selector in moderation interface not unselecting rules when changing category
Port 9ce914cc89 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:36:55 +01:00
y.takahashi
3894674200 [Glitch] Fix 'focus the compose textarea' shortcut is not working
Port 3c315a68af to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:35:52 +01:00
Eugen Rochko
cce3f3d6da [Glitch] Change onboarding prompt to follow suggestions carousel in web UI
Port 9cdc60ecc6 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:35:08 +01:00
Claire
ab2f0daa10 Merge commit 'aaa58d4807377e04649499ebee91757b16b9a007' into glitch-soc/merge-upstream
Conflicts:
- `.github/workflows/build-security.yml`:
  Changes were already cherry-picked and adapted in glitch-soc.
  Kept glitch-soc's version.
- `Gemfile.lock`:
  Changes were already cherry-picked and updated further in glitch-soc.
  Kept glitch-soc's version.
- `lib/mastodon/version.rb`:
  Changes were already cherry-picked and updated further in glitch-soc.
  Kept glitch-soc's version.
2024-02-24 14:27:43 +01:00
Yamagishi Kazutoshi
b4cca47f5f [Glitch] Remove unused l18n messages
Port b3075a9993 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:19:26 +01:00
Claire
5b9ddfcfcc Merge commit 'fa0ba677538588086d83c97c0ea56f9cd1556590' into glitch-soc/merge-upstream 2024-02-24 14:18:16 +01:00
J H
4d6844eb2f [Glitch] Fixed the toggle emoji dropdown bug
Port 1467f1e1e1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 14:15:59 +01:00
Claire
dfd74f0dae Merge commit '1467f1e1e1c18dc4b310862ff1f719165a24cfb6' into glitch-soc/merge-upstream 2024-02-24 14:15:49 +01:00
Claire
73de36318e Move api/v1/timelines/direct to request spec 2024-02-24 14:10:05 +01:00
Claire
9903e6beab Merge commit '0b0ca6f3b85c9d08e4642e49d743f8d060632293' into glitch-soc/merge-upstream
Conflicts:
- `spec/controllers/api/v1/timelines/direct_controller_spec.rb`:
  `spec/controllers/api/v1/timelines` has been renamed, but we had an extra
  spec here for a glitch-soc-only endpoint.
  Kept glitch-soc's file unchanged (will port to a request spec later).
2024-02-24 14:05:26 +01:00
Claire
c297d999ba Merge commit '87ad398ddc78f2da5746774960690661e8e57335' into glitch-soc/merge-upstream 2024-02-24 14:02:01 +01:00
Claire
47b5105e5d Remove max_toot_chars from initial-state
This is still in `/api/v1/instance` for compatibility with other clients
2024-02-24 13:58:00 +01:00
Claire
6da69967d0 [Glitch] Change compose form to use server-provided post character limit
Port 805dba7f8d to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-24 13:56:12 +01:00
Claire
20615a516d Merge commit '805dba7f8d2a2d5f910ec1396247b36417170345' into glitch-soc/merge-upstream 2024-02-24 13:53:59 +01:00
Claire
25ac55ecd8
Merge pull request #2644 from ClearlyClaire/glitch-soc/merge-dreaded-upstream-composer-change
Merge and port upstream's composer change
2024-02-24 13:46:26 +01:00
Paolo Melchiorre
aca691726b
Fix #21492 Add missing WebP hint in avatar/header localizations (#22395) 2024-02-23 22:10:46 +00:00
Claire
6901930c8d Add back confirmation modal for missing media description 2024-02-23 23:04:32 +01:00
Claire
138286147f Fix emoji being inserted in incorrect places 2024-02-23 21:45:48 +01:00
Claire
6eede9d84b Add notification badge feature back 2024-02-23 21:05:34 +01:00
Claire
9ab030bb13 Add thread mode button 2024-02-23 21:05:34 +01:00
Claire
e333453343 Use Warning icon for CWs in app settings 2024-02-23 21:05:34 +01:00
Claire
e62cd93650 Fix composer offering to edit federation settings for an existing post 2024-02-23 21:05:34 +01:00
Claire
23dc650596 Restore preselect on reply option 2024-02-23 21:05:34 +01:00
Claire
84d05ca221 Reimplement glitchy elephant friend 2024-02-23 21:05:33 +01:00
Claire
3564a15553 Refactor composer dropdowns 2024-02-23 21:05:33 +01:00
Claire
0e77c45624 Add local-only option back as a federation setting dropdown 2024-02-23 21:05:33 +01:00
Claire
47deb680d5 Add Content-Type dropdown back 2024-02-23 21:05:33 +01:00
Claire
118bb5bc81 Add secondary post button back 2024-02-23 21:05:33 +01:00
Claire
61559a42a9 Restore glitch-soc's permalink behavior for reply indicator 2024-02-23 20:57:20 +01:00
Claire
179437ed0e Restore access to glitch-soc app settings 2024-02-23 20:57:20 +01:00
Claire
056f9bf3c2 Add back “spoilers always on” feature 2024-02-23 20:57:18 +01:00
Claire
cfa71a4d16
Fix admin account created by mastodon:setup not being auto-approved (#29379) 2024-02-23 19:04:57 +00:00
Claire
25ffe0af45
Fix pixel alignment for some composer icons (#29372) 2024-02-23 15:32:13 +00:00
github-actions[bot]
bba4118ddd
New Crowdin Translations (automated) (#29369)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-23 15:21:02 +00:00
Matt Jankowski
b0064ddda7
Add basic coverage for MoveService class (#29301) 2024-02-23 09:59:29 +00:00
renovate[bot]
baa23738a8
Update dependency webmock to v3.22.0 (#29313)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-23 09:57:26 +00:00
Claire
380f4fc95c Reimplement sensitive checkbox 2024-02-22 23:49:06 +01:00
Claire
5fd50756b4 Restore glitch-soc's support of custom poll limits 2024-02-22 23:06:12 +01:00
Eugen Rochko
9c10aaa4d5 [Glitch] Change design of compose form in web UI
Port 6936e5aa69 to glitch-soc

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-22 23:06:12 +01:00
Matt Jankowski
45f71e3954
Update @rails/ujs to version 7.1.3-2 (#29359) 2024-02-22 21:35:14 +00:00
renovate[bot]
82e2370f5f
Update dependency cssnano to v6.0.4 (#29367)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 21:34:08 +00:00
Claire
9d8dfeb5fb
Fix processing of Link objects in Image objects (#29335) 2024-02-22 22:27:24 +01:00
Matt Jankowski
a6ed148769
Use heredoc on the HTML blocks in verify link spec (#29365) 2024-02-22 21:26:48 +00:00
Claire
7586d4348f Switch glitch-soc to upstream's old composer 2024-02-22 22:10:17 +01:00
Claire
10a0d76bf0 Merge commit '6936e5aa693ccc4aabd26ef18a65fbb8132f6f74' into glitch-soc/merge-upstream-composer
Conflicts:
- `app/javascript/mastodon/features/compose/components/compose_form.jsx`:
  Upstream completely redesigned this, and glitch-soc had different handling for
  the character limit.
  Ported upstream's change to the new version.
- `app/javascript/mastodon/features/compose/components/poll_form.jsx`:
  Upstream completely redesigned this, and glitch-soc had different limits for
  option length and number of options.
  Ported glitch-soc's changes to the new version.

Additional change:
- `app/javascript/styles/components.scss`:
  Change how the new image is looked up.
2024-02-22 20:58:41 +01:00
Claire
f25414014a Fix link verifications when page size exceeds 1MB (#29358) 2024-02-22 20:45:40 +01:00
Claire
b0822ae9cd Fix auto-close email being sent to users with devops permissions instead of settings permissions (#29355) 2024-02-22 20:45:40 +01:00
Claire
d23f445527 Automatically switch from open to approved registrations in absence of moderators (#29318) 2024-02-22 20:45:40 +01:00
Wojciech Maj
d908ed8e86 Remove unused dependencies (#29289) 2024-02-22 20:45:40 +01:00
renovate[bot]
3dae23816b Update dependency haml_lint to v0.57.0 (#29181)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 20:45:40 +01:00
renovate[bot]
d10848946c Update dependency rails to v7.1.3.2 (#29342)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 20:45:40 +01:00
renovate[bot]
fec49022ed Update dependency selenium-webdriver to v4.18.1 (#29287)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 20:45:40 +01:00
renovate[bot]
840ce1e0cb Update dependency webmock to v3.21.2 (#29290)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 20:45:40 +01:00
renovate[bot]
7cd5866ddc Update dependency doorkeeper to v5.6.9 (#29196)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 20:45:40 +01:00
Claire
fff378177e
Further reduce differences with upstream (mainly private mention styling) (#2641)
* Use upstream's CSS for private mentions styling

* Further reduce differences with upstream
2024-02-22 18:45:54 +01:00
Claire
5152dd869e
Fix link verifications when page size exceeds 1MB (#29358) 2024-02-22 17:31:50 +00:00
Claire
a9496882fc
Fix auto-close email being sent to users with devops permissions instead of settings permissions (#29355) 2024-02-22 14:52:14 +00:00
Claire
b71904816a
Change registrations to be disabled by default for new servers (#29280) 2024-02-22 13:28:19 +00:00
Emelia Smith
491dd97642
Streaming: refactor to custom Error classes (#28632)
Co-authored-by: Renaud Chaput <renchap@gmail.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-02-22 13:20:20 +00:00
renovate[bot]
ebe2086087
Update dependency haml_lint to v0.57.0 (#29181)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 11:26:48 +00:00
Matt Jankowski
e9b0f0c314
Add basic coverage for RemoveDomainsFromFollowersService class (#29327) 2024-02-22 10:53:38 +00:00
Matt Jankowski
7c7dfe7de3
Add basic coverage for RemoveFeaturedTagService class (#29328) 2024-02-22 10:51:04 +00:00
Matt Jankowski
6342ddd698
Add basic coverage for UnfavouriteService class (#29329) 2024-02-22 10:48:42 +00:00
Matt Jankowski
f70905f127
Add basic coverage for UnmuteService class (#29330) 2024-02-22 10:48:09 +00:00
Matt Jankowski
a69fe534e3
Add basic coverage for WebhookService class (#29331) 2024-02-22 10:46:20 +00:00
Matt Jankowski
d1602c017d
Add basic coverage for ApproveAppealService class (#29333) 2024-02-22 10:40:07 +00:00
Matt Jankowski
ab2ef63a03
Add basic coverage for VoteService class (#29334) 2024-02-22 10:39:18 +00:00
renovate[bot]
fa1c3a0915
Update dependency rack to v2.2.8.1 (#29341)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 10:37:54 +00:00
renovate[bot]
96d5c44db2
Update dependency rails to v7.1.3.2 (#29342)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 10:37:52 +00:00
github-actions[bot]
449fcf1ae7
New Crowdin Translations (automated) (#29343)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-22 10:37:48 +00:00
renovate[bot]
53a4648db1
Update dependency pino to v8.19.0 (#29253)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 09:03:13 +00:00
Matt Jankowski
006aa4e35a
Update husky and remove deprecated features (#29338) 2024-02-22 09:02:15 +00:00
Essem
42e86de3b0
Update to mastomodern 1.10.1 2024-02-21 18:03:43 -06:00
renovate[bot]
c63567a214
Update typescript-eslint monorepo to v7 (major) (#29179)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-21 22:06:17 +00:00
renovate[bot]
638861b2a3
Update dependency http-link-header to v1.1.2 (#29340)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-21 21:31:09 +00:00
renovate[bot]
aed60df80e
Update dependency sass to v1.71.1 (#29238)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-21 21:29:41 +00:00
renovate[bot]
bcc0860100
Update dependency core-js to v3.36.0 (#29197)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-21 21:28:53 +00:00
renovate[bot]
df4ed60331
Update dependency dotenv to v16.4.5 (#29190)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-21 21:28:10 +00:00
renovate[bot]
38d0292281
Update dependency @reduxjs/toolkit to v2.2.1 (#29178)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-21 21:27:28 +00:00
renovate[bot]
d48d824d9a
Update DefinitelyTyped types (non-major) (#29165)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-21 21:27:00 +00:00
Matt Jankowski
581f14e56f
Update yarn to version 4.1.0 (#29339) 2024-02-21 21:18:01 +00:00
Claire
604c93332f
Fix pillbar button colors (#2639) 2024-02-21 19:30:54 +01:00
Claire
2751acb6cd
Automatically switch from open to approved registrations in absence of moderators (#29318) 2024-02-21 17:45:06 +00:00
Matt Jankowski
08342ad40c
Add basic coverage for AfterUnallowDomainService class (#29324) 2024-02-21 17:13:11 +00:00
Matt Jankowski
8f61e32569
Add basic coverage for AppealService class (#29322) 2024-02-21 17:12:31 +00:00
Matt Jankowski
b73932461f
Add basic coverage for CreateFeaturedTagService class (#29321) 2024-02-21 16:58:19 +00:00
Matt Jankowski
5f19e7e799
Add basic coverage for ProcessHashtagsService class (#29320) 2024-02-21 16:57:45 +00:00
Claire
154a3119fb
Further reduce CSS differences with upstream (#2638) 2024-02-21 17:50:41 +01:00
Matt Jankowski
1f648fdf1a
Remove erroneous service type on TagFeed model spec (#29302) 2024-02-21 11:25:33 +00:00
github-actions[bot]
fd2b6c29c6
New Crowdin Translations (automated) (#29311)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-21 11:24:44 +00:00
Essem
271096cee6
Profile fields style hotfix
Not exactly correct, but it should at least work for now.
2024-02-20 20:49:33 -06:00
Essem
3e93d6b90a
Fix status prepend messages in modern theme 2024-02-20 20:24:40 -06:00
Essem
15050d51c0
Merge remote-tracking branch 'upstream/main' 2024-02-20 19:05:36 -06:00
Claire
bf6e57b420
Further reduce CSS and markup differences with upstream (#2637)
* Reduce differences in `MovedNote` markup and styling

* Remove unused setting toggle meta text support

* Fix various CSS discrepancies with upstream

* Further reduce differences with upstream
2024-02-20 23:06:17 +01:00
Emelia Smith
4ad7fadb82
Fix logging error in streaming server (#2636)
Logger changed upstream causing `log.silly` to error and crash the server for local only statuses
2024-02-20 20:19:58 +01:00
Claire
5f50b634cf
Further reduce CSS and markup differences with upstream (#2635)
* Further reduce CSS differences with upstream

* Reduce differences in markup and CSS with upstream

* Redo collapsible post notifications

* Reduce CSS differences further

* Reduce differences with upstream regarding `.status` and `.status__wrapper`

* Further reduce differences with upstream

* Reduce differences with upstream in DisplayName
2024-02-20 18:49:59 +01:00
Wojciech Maj
36fd47ac57
Remove unused dependencies (#29289) 2024-02-20 10:10:58 +00:00
Matt Jankowski
937dad1ee6
Extract ES query and filter hashes into private methods in TagSearchService (#29288) 2024-02-20 10:08:32 +00:00
github-actions[bot]
9a2b9d1484
New Crowdin Translations (automated) (#29298)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-20 09:23:40 +00:00
Matt Jankowski
0ef44ee720
Move AccountSuggestions::Source subclasses default limit value to constant (#29282) 2024-02-20 09:21:49 +00:00
renovate[bot]
e1cee84e58
Update dependency cocoon-js-vanilla to v1.4.0 (#29293)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-20 09:19:41 +00:00
Claire
bde4df6be6
Remove CSS definitions for some unused classes (#29279) 2024-02-20 09:18:44 +00:00
Matt Jankowski
785e2f9399
Add scope providing_styles to UserRole (#29286) 2024-02-20 09:18:05 +00:00
renovate[bot]
5d9d0d174a
Update dependency selenium-webdriver to v4.18.1 (#29287)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-20 09:17:41 +00:00
renovate[bot]
6e4c1e172b
Update dependency webmock to v3.21.2 (#29290)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-20 09:11:22 +00:00
Eugen Rochko
b8b2f20b16
Change explore icon from hashtag to compass in web UI (#29294) 2024-02-20 09:10:44 +00:00
Claire
0a2b95c4f5
Adopt upstream's design for preview cards (#2634)
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
Co-authored-by: Christian Schmidt <github@chsc.dk>
2024-02-19 22:47:01 +01:00
Claire
89ea492d70
Further reduce CSS changes with upstream (#2632) 2024-02-19 19:54:51 +01:00
Matt Jankowski
64f9939e39
Use capture_emails helper to improve email assertions in specs (#29245) 2024-02-19 15:57:47 +00:00
Wolfgang Fournès
86627ea2e4
Add a missing thread example to the statuses spec (#29278) 2024-02-19 13:35:58 +00:00
Matt Jankowski
72b0c9e20b
Re-enable fixed Style/Semicolon cop (#29212) 2024-02-19 13:35:13 +00:00
Hinaloe
c645490d55
Fix sensitive flag not being removed when removing CW in new compose form (#29248) 2024-02-19 13:31:16 +00:00
github-actions[bot]
ad16362efe
New Crowdin Translations (automated) (#29255)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-19 13:25:45 +00:00
renovate[bot]
fe6c055f35
Update dependency eslint-plugin-jsdoc to v48.1.0 (#29275)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-19 11:10:03 +00:00
Eugen Rochko
63f4ea055a
Change follow suggestions design in web UI (#29272) 2024-02-19 11:09:58 +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
Essem
97e6e2e421
Merge remote-tracking branch 'upstream/main' 2024-02-18 21:17:02 -06:00
Claire
bbecf1c56b
Further reduce differences with upstream (#2631)
* Further reduce CSS diffs with upstream

* Remove superfluous “Sensitive content” label in media galleries and clean up dead code
2024-02-18 22:30:20 +01:00
Claire
034be5ad50
Further reduce CSS differences with upstream (#2630) 2024-02-18 20:45:36 +01:00
Claire
9a11b077f7
Reduce CSS and markup differences with upstream (#2629) 2024-02-18 19:12:23 +01:00
Danko Aleksejevs
e078ede097
Remove status content from mobile actions modal (#2615) 2024-02-18 19:10:58 +01:00
Essem
e9e0b1bf2f
Fix newline split 2024-02-18 12:10:02 -06:00
Essem
06bfae71d2
Remove duplicate "others" settings page 2024-02-18 11:51:19 -06:00
丈槍由紀
4574958a98
Fix blurhash for GlitchSoc 2024-02-18 11:45:00 -06:00
noellabo
3a483775bb
Add reject blurhash to Admin setting 2024-02-18 11:44:57 -06:00
noellabo
66ce3f9a5e
Add reject pattern to Admin setting 2024-02-18 11:44:54 -06:00
Essem
bcc8f0c032
Merge remote-tracking branch 'upstream/main' 2024-02-18 11:44:06 -06:00
Emelia Smith
de18f3069c
Enable rejection of Create Activities if the status includes unusable hashtags 2024-02-17 22:44:00 -06:00
Claire
8a10feb8dc [Glitch] Fix Web UI not displaying appropriate explanation when a user hides their follows/followers
Port 9b06c0f24a to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-17 20:15:25 +01:00
Claire
d86b642dc6
Fix dead and misapplied CSS (#2627) 2024-02-17 18:52:59 +01:00
Claire
41c85e3b6d
Change list title input design to fit upstream (#2626)
* Change settings input field design to match upstream's

* Fix light theme discrepancies

* Restore regexp inputs as glitch-soc-specific styles
2024-02-17 18:52:37 +01:00
Essem
c866e48f69
Fix indent in other settings page 2024-02-17 09:57:05 -06:00
丈槍由紀
d0a44917a0
Add Reject Pattern to Other Page on GlitchSoc 2024-02-17 09:40:03 -06:00
noellabo
45279418c5
Add reject pattern to Admin setting (Ported to Glitch Soc)
# Conflicts:
#	app/views/admin/settings/shared/_links.html.haml
#	config/routes/admin.rb
2024-02-17 09:39:59 -06:00
Essem
ac25c657e1
Merge remote-tracking branch 'upstream/main' 2024-02-17 09:38:57 -06:00
Claire
5c0a64a975
Merge pull request #2625 from ClearlyClaire/glitch-soc/ports/copy-button-on-profile
Add prominent share/copy button on profiles in web UI
2024-02-17 09:39:46 +01:00
Claire
50d9cd66d3 [Glitch] Use container queries to hide profile share button
Port c94bedf4e6 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-16 18:18:17 +01:00
Eugen Rochko
ce3978246b [Glitch] Add prominent share/copy button on profiles in web UI
Port 87696ea26e to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-02-16 18:17:55 +01:00
Claire
c0279385d7
Adopt upstream's design for account profiles (#2622)
* Mostly adopt upstream's design for account profiles

* Reduce some margins
2024-02-16 17:57:43 +01:00
Claire
96ddf1d482
Fix flaky end-to-end OCR test (#29244) 2024-02-16 16:57:23 +00:00
Essem
2867791776
Merge remote-tracking branch 'upstream/main' 2024-02-16 09:38:10 -06: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
Matt Jankowski
1d9d14b8de
Use abort instead of warn(); exit in boot.rb env check (#29209) 2024-02-16 14:29:24 +00:00
Matt Jankowski
1946e171e6
Reduce round trips in admin/disputes/appeals spec (#29234) 2024-02-16 13:46:28 +00:00
Matt Jankowski
3454fcbd71
Reduce round trips in auth/sessions spec (#29233) 2024-02-16 13:38:49 +00:00
Matt Jankowski
a316c0e38d
Reduce round trips in disputes/appeals spec (#29232) 2024-02-16 13:01:15 +00:00
Matt Jankowski
117b507df5
Extract subject from User#mark_email_as_confirmed! spec (#29231) 2024-02-16 13:01:04 +00:00
Matt Jankowski
1690fb39e6
Reduce RSpec/MultipleExpectations in instance_actors_controller spec (#29229) 2024-02-16 13:00:11 +00:00
Matt Jankowski
bba488c189
Reduce RSpec/MultipleExpectations in media_attachment spec (#29228) 2024-02-16 13:00:09 +00:00
renovate[bot]
e140d05a6a
Update dependency doorkeeper to v5.6.9 (#29196)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-16 12:59:51 +00:00
Claire
d7d477047e Bump version to v4.3.0-alpha.3 (#29241) 2024-02-16 12:17:15 +01:00
Claire
6c1b6194f7 Merge pull request from GHSA-jhrq-qvrm-qr36
* Fix insufficient Content-Type checking of fetched ActivityStreams objects

* Allow JSON-LD documents with multiple profiles
2024-02-16 12:17:15 +01:00
Claire
5f21a1f5a3
Bump version to v4.3.0-alpha.3 (#29241) 2024-02-16 11:06:47 +00:00
Claire
9fee5e8526
Merge pull request from GHSA-jhrq-qvrm-qr36
* Fix insufficient Content-Type checking of fetched ActivityStreams objects

* Allow JSON-LD documents with multiple profiles
2024-02-16 11:56:12 +01:00
renovate[bot]
63080e10a9 Update dependency pg to v1.5.5 (#29230)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-16 10:06:25 +01:00
renovate[bot]
a8ee6fdd62
Update dependency pg to v1.5.5 (#29230)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-16 08:12:10 +00:00
Matt Jankowski
a9f9b0097b
Reduce RSpec/MultipleExpectations in captcha feature spec (#29226) 2024-02-16 07:52:57 +00:00
Matt Jankowski
4b7f04e3ea
Reduce RSpec/MultipleExpectations in post_status_service spec (#29225) 2024-02-16 07:52:29 +00:00
github-actions[bot]
1c93d625c6
New Crowdin Translations (automated) (#29195)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-16 07:51:13 +00:00
Matt Jankowski
ed4939296a
Reduce RSpec/MultipleExpectations in ap/activity/create spec (#29224) 2024-02-16 07:43:00 +00:00
Matt Jankowski
1df2ffc3ee
Use subject in blacklist email validator spec (#29211) 2024-02-16 07:42:03 +00:00
Matt Jankowski
fc4f823464
Avoid local block var assignment in ap/process_status_update_service spec (#29210) 2024-02-16 07:41:25 +00:00
Claire
e7ca82762d Fix user creation failure handling in OAuth paths (#29207) 2024-02-14 23:12:59 +01:00
Claire
d4d0565b0f
Fix user creation failure handling in OAuth paths (#29207) 2024-02-14 21:49:45 +00:00
Matt Jankowski
844aa59bdf
Doc update about ruby version 3.0+ (#29202) 2024-02-14 16:44:27 +00:00
Essem
c16136bfd9
Merge remote-tracking branch 'upstream/main' 2024-02-14 09:55:13 -06:00
Claire
486e4bc7d3 Fix OmniAuth tests (#29201) 2024-02-14 16:07:28 +01:00
Claire
bbbbf00084
Fix OmniAuth tests (#29201) 2024-02-14 14:57:49 +00:00
Claire
40439399c6 Bump version to v4.3.0-alpha.2 (#29200) 2024-02-14 15:26:18 +01:00
Claire
53b73ed6a2 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:25:15 +01:00
Emelia Smith
436419cc2f 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:25:15 +01:00
Claire
8e8e0f104f
Bump version to v4.3.0-alpha.2 (#29200) 2024-02-14 14:20:02 +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
Claire
3c3ef8b9d3 Add sidekiq_unique_jobs:delete_all_locks task and disable sidekiq-unique-jobs UI by default (#29199) 2024-02-14 13:42:15 +01:00
Claire
554e2a019e
Add sidekiq_unique_jobs:delete_all_locks task and disable sidekiq-unique-jobs UI by default (#29199) 2024-02-14 12:12:13 +00:00
Essem
76f1b63b71
Merge remote-tracking branch 'upstream/main' 2024-02-13 20:40:03 -06:00
Emelia Smith
eae436c5a8 Disable administrative doorkeeper routes (#29187) 2024-02-13 20:03:00 +01:00
Emelia Smith
b83076647e Ignore legacy moderator and admin columns on User model (#29188) 2024-02-13 20:03:00 +01:00
renovate[bot]
7100106f3f Update dependency sidekiq-unique-jobs to v7.1.33 (#29175)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-13 20:03:00 +01:00
renovate[bot]
04da8f887b Update dependency pghero to v3.4.1 (#29144)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-13 20:03:00 +01:00
renovate[bot]
d9d0a6ef33 Update dependency irb to v1.11.2 (#29135)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-13 20:03:00 +01:00
renovate[bot]
93b365bfc0 Update dependency webmock to v3.20.0 (#29120)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-13 20:03:00 +01:00
Emelia Smith
46142cdbdd
Disable administrative doorkeeper routes (#29187) 2024-02-13 18:11:47 +00:00
Emelia Smith
e8b66a0525
Ignore legacy moderator and admin columns on User model (#29188) 2024-02-13 17:14:49 +00:00
Nicolas Hoffmann
476a043fc5
Fix modal container bounds (#29185) 2024-02-13 12:58:21 +00:00
Claire
e3c4e90646
Fix new list button being blank (#2616) 2024-02-13 12:48:01 +01:00
github-actions[bot]
5de1ce23c3
New Crowdin Translations (automated) (#29182)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-13 09:08:55 +00:00
renovate[bot]
e25d9dfb25
Update dependency dotenv to v16.4.3 (#29174)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-13 08:02:55 +00:00
renovate[bot]
b244e5cb81
Update dependency sidekiq-unique-jobs to v7.1.33 (#29175)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-13 07:56:46 +00:00
Claire
084d051e6c
Merge pull request #2608 from ClearlyClaire/glitch-soc/refactor/monolithic-components-css
Merge SCSS in a single `components.scss` file
2024-02-12 22:18:55 +01:00
renovate[bot]
819ede190e
Update dependency dotenv to v16.4.2 (#29157)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-12 10:39:31 +00:00
renovate[bot]
cf0d6bef8b
Update eslint (non-major) (#29166)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-12 10:21:17 +00:00
renovate[bot]
58918844a9
Update peter-evans/create-pull-request action to v6 (#29167)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-12 10:20:54 +00:00
github-actions[bot]
6482948547
New Crowdin Translations (automated) (#29156)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-12 09:59:05 +00:00
Claire
8125dae5a8
Rename ES_CA_CERT to ES_CA_FILE for consistency (#29147) 2024-02-12 09:54:06 +00:00
Claire
c249c10f74 Fix account suggestion size inconsistency with upstream 2024-02-11 21:55:36 +01:00
Essem
170b07d56b
Hydrate reactions on streaming API 2024-02-09 21:00:59 -06:00
github-actions[bot]
c07028b2fa
New Crowdin Translations (automated) (#29152)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-09 09:55:30 +00:00
Claire
d391e01b59 Revert notification bar color for now 2024-02-08 21:12:57 +01:00
Claire
ca8fbda5d0
Add end-to-end test for OCR in media uploads (#29148) 2024-02-08 19:13:44 +00:00
Claire
3f89cec3c9 Further reduce differences with upstream 2024-02-08 19:52:03 +01:00
Claire
f6f62002c7 Remove leftovers from glitch-soc's layout option 2024-02-08 19:21:35 +01:00
Claire
189b70cd6a Merge SCSS in a single components.scss file 2024-02-08 18:50:38 +01:00
Matt Jankowski
a9e91eb955
Add common stub setup for resolv dns in email mx validator spec (#29140) 2024-02-08 14:26:45 +00:00
Claire
67ec192d7d
Clean up some unused CSS definitions (#29146) 2024-02-08 11:40:22 +00:00
renovate[bot]
d4db1c497b
Update dependency pghero to v3.4.1 (#29144)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-08 10:03:39 +00:00
renovate[bot]
13840d685c
Update dependency irb to v1.11.2 (#29135)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-08 10:03:30 +00:00
Matt Jankowski
15437e4ad9
Add context and before to lengthy tag manager spec examples (#29129) 2024-02-08 10:03:04 +00:00
Matt Jankowski
5271131658
Extract helper method for repeated form fill in admin/domain_blocks feature spec (#29128) 2024-02-08 10:02:53 +00:00
renovate[bot]
52986f35b8
Update dependency postcss to v8.4.35 (#29136)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-08 09:49:24 +00:00
github-actions[bot]
2a362d62a8
New Crowdin Translations (automated) (#29145)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-08 09:43:02 +00:00
Essem
b51d0750c6
Purge status reactions on account delete 2024-02-07 17:14:16 -06:00
Claire
eff447a455
Rewrite signature verification using regexps and StringScanner (#29133) 2024-02-07 17:24:42 +00:00
Matt Jankowski
79b4b94f3a
Configure CountAsOne value for RSpec/ExampleLength cop (#29115) 2024-02-07 14:54:40 +00:00
Matt Jankowski
95da28d201
Add common ThreadingHelper module for specs (#29116) 2024-02-07 14:53:29 +00:00
renovate[bot]
dbafec88e5
Update dependency @reduxjs/toolkit to v2.1.0 (#28879)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-07 14:10:38 +00:00
Matt Jankowski
b2133fee5f
Update artifact preservation to use save_path value (#29035) 2024-02-07 13:37:10 +00:00
Claire
7efc33b909
Move HTTP Signature parsing code to its own class (#28932) 2024-02-07 13:35:37 +00:00
github-actions[bot]
17052714a2
New Crowdin Translations (automated) (#29121)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-07 12:38:37 +00:00
Claire
2912829411
Add support for specifying custom CA cert for Elasticsearch (#29122) 2024-02-07 12:09:43 +00:00
Claire
eeabf9af72
Fix compatibility with Redis <6.2 (#29123) 2024-02-07 11:52:38 +00:00
Matt Jankowski
da50217b88
Combine repeated requests in admin/accounts controller spec (#29119) 2024-02-07 10:59:32 +00:00
renovate[bot]
492e25da06
Update dependency webmock to v3.20.0 (#29120)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-07 10:56:52 +00:00
Essem
9e06c87265
Merge remote-tracking branch 'upstream/main' 2024-02-06 16:56:05 -06:00
Claire
8c76a208ed
Merge pull request #2607 from ClearlyClaire/glitch-soc/cherry-pick-upstream
Cherry-pick upstream changes
2024-02-06 21:56:01 +01:00
Claire
aaa58d4807
Fix tagging of manual security nightly builds (#29061) 2024-02-06 20:48:11 +00:00
Eugen Rochko
65eb943b9d Fix confirmation e-mails when signing up through an app (#29064) 2024-02-06 21:00:33 +01:00
Claire
19f1ffe287 Fix self-destruct schedule not actually replacing initial schedule (#29049) 2024-02-06 21:00:09 +01:00
renovate[bot]
5ea36a3606 Update dependency brakeman to v6.1.2 (#29062)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 20:59:51 +01:00
renovate[bot]
b27cad27c2 Update dependency bootsnap to '~> 1.18.0' (#29019)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 20:59:51 +01:00
renovate[bot]
63f1f1465a Update dependency tzinfo-data to v1.2024.1 (#29052)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 20:59:51 +01:00
Matt Jankowski
4cd00c0dd9 Update nsa gem to version 0.3.0 (#29065) 2024-02-06 20:59:51 +01:00
renovate[bot]
c6f7e3a1fb Update dependency haml_lint to v0.56.0 (#29082)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 20:59:51 +01:00
renovate[bot]
93aa783aa1 Update dependency nokogiri to v1.16.2 [SECURITY] (#29106)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 20:59:51 +01:00
renovate[bot]
868333c86f Update dependency capybara to v3.40.0 (#28966)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 20:59:51 +01:00
renovate[bot]
ac49514bd6 Update dependency chewy to v7.5.1 (#29018)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 20:59:51 +01:00
github-actions[bot]
a2611d782c
New Crowdin Translations (automated) (#2588)
* New Crowdin translations

* Fix bogus translation files

---------

Co-authored-by: GitHub Actions <noreply@github.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-02-06 20:45:07 +01:00
JS Moore
541cbdd963
Add env variable support for number of followable hashtags in feed column (#2500)
* Add env variable support for number of followable hashtags in feed column.

* Add a note about performance concerns for higher values.

See discussion in https://github.com/glitch-soc/mastodon/pull/2500

* Update .devcontainer/docker-compose.yml

---------

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-02-06 20:23:36 +01:00
Essem
08e511cecb
Fix doodle modal icons (#2597) 2024-02-06 20:22:42 +01:00
github-actions[bot]
90ccf7beb2
New Crowdin Translations (automated) (#28965)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-02-06 18:47:44 +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
Matt Jankowski
1e0b0a3486
Use SQL heredoc on long statement lines in migrations (#29112) 2024-02-06 16:42:25 +00:00
Claire
64300e0fe3
Fix self-destruct schedule not actually replacing initial schedule (#29049) 2024-02-06 15:32:09 +00:00
Matt Jankowski
2f19ddd1fa
Move status serializer error handling to private method (#29031) 2024-02-06 14:54:26 +00:00
Matt Jankowski
0df86d77fd
Reduce RSpec/ExampleLength in PostStatusService spec example (#29105) 2024-02-06 14:36:04 +00:00
Matt Jankowski
93a5b3f9df
Move status serializer chooser to private method (#29030) 2024-02-06 13:33:42 +00:00
renovate[bot]
cf42eba0f9
Update dependency brakeman to v6.1.2 (#29062)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 13:31:54 +00:00
Matt Jankowski
69e61fff38
Move direct serializer usage out of admin view partial (#29028) 2024-02-06 13:18:37 +00:00
Matt Jankowski
2d6ab44556
Reduce request/response round-trips in ap/collections controller spec (#29102) 2024-02-06 13:10:00 +00:00
Matt Jankowski
978fdc71ca
Reduce expectation count in example from ProcessAccountService spec (#29100) 2024-02-06 13:04:02 +00:00
Matt Jankowski
0877f6fda4
Remove redundant return in IntentsController (#29099) 2024-02-06 12:56:22 +00:00
renovate[bot]
e8cc98977d
Update dependency bootsnap to '~> 1.18.0' (#29019)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 12:52:28 +00:00
Matt Jankowski
577520b637
Replace deprecated Sidekiq::Testing block style (#29097) 2024-02-06 12:49:48 +00:00
Matt Jankowski
df7acdcee5
Update markers API spec for error case (#29096) 2024-02-06 12:47:04 +00:00
Emelia Smith
4fb7f611de
Return domain block digests from admin domain blocks API (#29092) 2024-02-06 12:38:14 +00:00
Matt Jankowski
dedefdc303
Move length value mapping to constant in ids to bigints migration (#29048) 2024-02-06 11:40:24 +00:00
Matt Jankowski
4cf07ed78c
Add missing action logging to api/v1/admin/reports#update (#29044) 2024-02-06 11:34:11 +00:00
renovate[bot]
a31427a629
Update dependency pino to v8.18.0 (#29043)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 11:33:06 +00:00
Matt Jankowski
0bec5c0755
Remove migration base class switcher from RailsSettingsMigration (#29047) 2024-02-06 09:56:24 +00:00
renovate[bot]
62028b1b1b
Update libretranslate/libretranslate Docker tag to v1.5.5 (#29090)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 09:38:32 +00:00
renovate[bot]
90f4b8d53a
Update dependency postcss to v8.4.34 (#29103)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 09:37:03 +00:00
Claire
9ce914cc89
Fix report reason selector in moderation interface not unselecting rules when changing category (#29026) 2024-02-06 09:35:36 +00:00
Claire
66dda7c762
Fix already-invalid reports failing to resolve (#29027) 2024-02-06 09:35:27 +00:00
Matt Jankowski
779d987fbc
Update codedoc/codecov-action to v4 (#29036) 2024-02-06 09:34:28 +00:00
renovate[bot]
a2d8aa1583
Update dependency tzinfo-data to v1.2024.1 (#29052)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 09:33:41 +00:00
Matt Jankowski
5ca45403e2
Update nsa gem to version 0.3.0 (#29065) 2024-02-06 09:33:11 +00:00
renovate[bot]
586b4faf61
Update dependency haml_lint to v0.56.0 (#29082)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 09:24:44 +00:00
renovate[bot]
916aeb574d
Update DefinitelyTyped types (non-major) (#29088)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 09:23:55 +00:00
renovate[bot]
f00ba02653
Update dependency nokogiri to v1.16.2 [SECURITY] (#29106)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-06 09:20:23 +00:00
Matt Jankowski
86500e3312
Extract scenic view model common methods to concern (#28111) 2024-02-06 09:08:07 +00:00
Eugen Rochko
1666b19559
Fix confirmation e-mails when signing up through an app (#29064) 2024-02-02 15:51:26 +00:00
y.takahashi
3c315a68af
Fix 'focus the compose textarea' shortcut is not working (#29059) 2024-02-02 06:33:53 +00:00
Essem
227b5e57a3
Merge remote-tracking branch 'upstream/main' 2024-02-01 13:33:09 -06:00
Claire
5bc39b3196 Fix build-security docker tags 2024-02-01 20:30:35 +01:00
Claire
c3936cbbe3 Temporary hack to correctly tag the security docker image… 2024-02-01 18:40:40 +01:00
Essem
bb14e271d8
Merge remote-tracking branch 'upstream/main' 2024-02-01 11:15:22 -06:00
Aaron Brady
970320d73c
Restore -streaming suffix for security builds (#2602) 2024-02-01 17:20:08 +01:00
Essem
b1b5ab92a4
Merge remote-tracking branch 'upstream/main' 2024-02-01 09:33:51 -06:00
Claire
63d7a30503 Fix build-security workflow for glitch-soc 2024-02-01 16:09:51 +01:00
Claire
ff58ec0103 Merge pull request from GHSA-3fjr-858r-92rw
* Fix insufficient origin validation

* Bump version to 4.3.0-alpha.1
2024-02-01 15:57:08 +01:00
Claire
1726085db5
Merge pull request from GHSA-3fjr-858r-92rw
* Fix insufficient origin validation

* Bump version to 4.3.0-alpha.1
2024-02-01 15:56:46 +01:00
Eugen Rochko
9cdc60ecc6
Change onboarding prompt to follow suggestions carousel in web UI (#28878) 2024-02-01 13:37:04 +00:00
Claire
3866597e24
Merge pull request #2601 from ClearlyClaire/glitch-soc/fixes/security-builds-latest
Fix security builds not being tagged latest
2024-02-01 11:48:45 +01:00
Claire
a7b16003e1 Fix security builds not being marked latest 2024-02-01 11:31:29 +01:00
Claire
626ff320cf
Merge pull request #2600 from ClearlyClaire/glitch-soc/fixes/failures
Configure selenium to use Chrome version 120 (#29038)
2024-02-01 11:30:34 +01:00
Matt Jankowski
f4416e6b3a Configure selenium to use Chrome version 120 (#29038) 2024-02-01 11:15:23 +01:00
Claire
7bb5f6efbc
Merge pull request #2599 from ClearlyClaire/glitch-soc/build-action
Add github action workflow for manual security builds
2024-02-01 11:14:40 +01:00
Claire
883f589653 Fix missing workflow_dispatch trigger for build-security (#29041) 2024-02-01 10:58:10 +01:00
Claire
7316a08380
Fix missing workflow_dispatch trigger for build-security (#29041) 2024-02-01 09:52:01 +00:00
Matt Jankowski
8b7b0ee598
Configure selenium to use Chrome version 120 (#29038) 2024-02-01 09:46:31 +00:00
Claire
85bdd145dc Adapt workflow to glitch-soc 2024-02-01 10:40:04 +01:00
Claire
a48447a6b2 Add github action workflow for manual security builds (#29040) 2024-02-01 10:39:23 +01:00
Claire
812a131423
Add github action workflow for manual security builds (#29040) 2024-02-01 09:33:12 +00:00
Matt Jankowski
dd934ebb07
Update actions/cache to v4 (updates node 16->20) (#29025) 2024-01-31 16:55:50 +00:00
renovate[bot]
738dba0cf7
Update dependency capybara to v3.40.0 (#28966)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-31 12:55:15 +00:00
Matt Jankowski
022d2a3793
Make factory gems available in test+development envs (#28969) 2024-01-31 12:52:51 +00:00
Essem
12a9338db8
Merge remote-tracking branch 'upstream/main' 2024-01-30 19:05:54 -06:00
Essem
ab40fa1efb
Fix doodle modal icons 2024-01-30 19:00:21 -06:00
Claire
8b87673f5e
Remove obsolete locale file (#2596) 2024-01-30 23:21:35 +01:00
Claire
3ede233146
Fix crash in private mention conversations in glitch-soc flavor (#2595) 2024-01-30 22:42:22 +01: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
renovate[bot]
0c0d077276
Update dependency chewy to v7.5.1 (#29018)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-30 15:40:43 +00:00
renovate[bot]
0bc526a967
Update eslint (non-major) (#29001)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-30 15:39:59 +00:00
renovate[bot]
8c08e5cdb2
Update devDependencies (non-major) (#29000)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-30 15:39:34 +00:00
Matt Jankowski
ce0d134147
Add redirect_with_vary to AllowedMethods for Style/FormatStringToken cop (#28973) 2024-01-30 15:39:01 +00:00
Matt Jankowski
86fbde7b46
Fix Style/NumericLiterals cop in ProfileStories support module (#28971) 2024-01-30 15:38:33 +00:00
Yamagishi Kazutoshi
b3075a9993
Remove unused l18n messages (#28964) 2024-01-30 15:34:07 +00:00
Matt Jankowski
f91acba70a
Combine repeated requests in account controller concern spec (#28957) 2024-01-30 15:32:20 +00:00
renovate[bot]
9d3830344f
Update dependency immutable to v4.3.5 (#28933)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-30 15:30:39 +00:00
Matt Jankowski
adcd693b71
Use existing MediaAttachment.remote scope in media CLI (#28912) 2024-01-30 15:29:42 +00:00
J H
1467f1e1e1
Fixed the toggle emoji dropdown bug (#29012) 2024-01-30 13:38:49 +00:00
Essem
7c2d13dcfb
Fix rubocop lint issue 2024-01-28 14:51:10 -06:00
Essem
acae7d57e4
Fix JS linting issues 2024-01-28 13:52:08 -06:00
Essem
7940b067b9
Remove space between emojis in usernames 2024-01-28 13:35:35 -06:00
Essem
a71cd0c7ab
Merge remote-tracking branch 'upstream/main' 2024-01-28 12:53:56 -06:00
Claire
80308d384a
[Glitch] Refactor conversations components in web UI (#2589)
Port 3205a654ca to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2024-01-28 14:53:08 +01:00
Claire
a4e7cc2d94
Merge pull request #2590 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to bf153b384b
2024-01-28 14:47:35 +01:00
Essem
3add1ded91
Merge remote-tracking branch 'upstream/main' 2024-01-27 15:31:24 -06:00
Claire
bf153b384b Merge commit '42ab855b2339c5cea3229c856ab539f883736b12' into glitch-soc/merge-upstream
Conflicts:
- `app/controllers/auth/confirmations_controller.rb`:
  Upstream refactored, changing lines textually close of glitch-soc-only lines
  pertaining to the theming system.
  Resolved the conflict.
- `app/controllers/auth/passwords_controller.rb`:
  Upstream refactored, changing lines textually close of glitch-soc-only lines
  pertaining to the theming system.
  Resolved the conflict.
- `app/controllers/settings/two_factor_authentication/webauthn_credentials_controller.rb`:
  Upstream refactored, changing lines textually close of glitch-soc-only lines
  pertaining to the theming system.
  Resolved the conflict.
2024-01-27 19:06:41 +01:00
Claire
420ca90071
Merge pull request #2585 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 3205a654ca
2024-01-27 18:35:29 +01:00
Essem
dd7de07232
Merge remote-tracking branch 'upstream/main' 2024-01-26 21:57:28 -06:00
Claire
dd7a66949a Fix CSS loading in redirect controller 2024-01-26 21:04:02 +01:00
Claire
54ece5040d [Glitch] Use active variants for boost icons and increase icon size
Port 5a838ceaa9 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-26 20:53:53 +01:00
Eugen Rochko
e5f50478b5 [Glitch] Add confirmation when redirecting logged-out requests to permalink
Port SCSS changes from b19ae521b7 to glitch-soc

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-26 20:51:08 +01:00
Claire
5fa2821853 Merge commit '3205a654caf903002c2db872f802a3332201678b' into glitch-soc/merge-upstream 2024-01-26 20:47:20 +01:00
github-actions[bot]
ae9c675930
New Crowdin Translations (automated) (#2564)
* New Crowdin translations

* Fix bogus translation files

---------

Co-authored-by: GitHub Actions <noreply@github.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-01-26 19:45:04 +01:00
Claire
108fb33478
Merge pull request #2584 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 7a1f087659
2024-01-26 18:47:09 +01:00
Matt Jankowski
ff8937aa2c
Move api/v1/statuses/* to request spec (#28954) 2024-01-26 17:45:54 +00:00
Matt Jankowski
44f6d285af
Combine repeated subject in ap fetch remote actor service spec (#28953) 2024-01-26 17:44:12 +00:00
Matt Jankowski
239244e2ed
Combine repeated subject in ap fetch remote account service spec (#28952) 2024-01-26 17:43:08 +00:00
Matt Jankowski
5119fbc9b7
Move api/v1/admin/trends/links/preview_card_providers to request spec (#28951) 2024-01-26 17:41:39 +00:00
Matt Jankowski
b6baab447d
Move api/v2/admin/accounts to request spec (#28950) 2024-01-26 17:41:13 +00:00
Matt Jankowski
7adcc0aae3
Move api/v1/trends/* to request specs (#28949) 2024-01-26 17:40:39 +00:00
Matt Jankowski
0b0ca6f3b8
Move api/v1/timelines/list to request spec (#28948) 2024-01-26 17:40:15 +00:00
renovate[bot]
87ad398ddc
Update formatjs monorepo (#28925)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-26 16:49:16 +00:00
renovate[bot]
f4a12adfb7
Update dependency axios to v1.6.7 (#28917)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-26 16:49:09 +00:00
renovate[bot]
160c8f4923
Update babel monorepo to v7.23.9 (#28916)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-26 16:49:03 +00:00
Matt Jankowski
e519f113e8
Combine repeated subject in cacheable response shared example (#28945) 2024-01-26 16:37:05 +00:00
Matt Jankowski
d791bca11b
Combine double subject in well_known/webfinger shared example (#28944) 2024-01-26 16:36:21 +00:00
Matt Jankowski
09a3493fca
Combine double subject in api/v1/media shared example (#28943) 2024-01-26 16:35:49 +00:00
Matt Jankowski
5fbdb2055b
Combine repeated subject in cli/accounts spec shared example (#28942) 2024-01-26 16:35:19 +00:00
Matt Jankowski
1a30a517d6
Combine repeated subjects in link details extractor spec (#28941) 2024-01-26 16:31:07 +00:00
Matt Jankowski
685eaa04d4
Combine double subject in admin/statuses controller shared example (#28940) 2024-01-26 16:30:30 +00:00
Matt Jankowski
beb74fd71c
Combine double subjects in instance actors controller shared example (#28939) 2024-01-26 16:28:50 +00:00
Matt Jankowski
beaef4b672
Combine double subjects in application controller shared example (#28938) 2024-01-26 16:23:12 +00:00
Matt Jankowski
6d35a77c92
Combine repeated subjects in models/user spec (#28937) 2024-01-26 16:22:44 +00:00
Matt Jankowski
2f8656334d
Combine double subjects in admin/accounts controller spec (#28936) 2024-01-26 16:21:31 +00:00
Matt Jankowski
9cc1817bb4
Fix intmermittent failure in api/v1/accounts/statuses controller spec (#28931) 2024-01-26 14:10:26 +00:00
Claire
805dba7f8d
Change compose form to use server-provided post character limit (#28928) 2024-01-26 14:09:45 +00:00
github-actions[bot]
45287049ab
New Crowdin Translations (automated) (#28923)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-01-26 09:15:55 +00:00
Matt Jankowski
0e0a94f483
Handle CLI failure exit status at the top-level script (#28322) 2024-01-26 08:53:44 +00:00
Claire
70de52c297 Merge commit '7a1f087659204e9d0cbba2de37e45b1921cefe20' into glitch-soc/merge-upstream 2024-01-25 19:51:19 +01:00
Claire
adde803656
Merge pull request #2583 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 01ce9df880
2024-01-25 19:50:12 +01:00
Emelia Smith
881e8c113c
Refactor: fix streaming postgresql and redis typing issues (#28747) 2024-01-25 16:46:02 +00:00
Eugen Rochko
6936e5aa69
Change design of compose form in web UI (#28119)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-01-25 15:41:31 +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
4cdf62e576
Extract rebuild_index method in maintenance CLI (#28911) 2024-01-25 15:26:51 +00:00
Matt Jankowski
0b38946c87
Update paperclip and climate_control gems (#28379) 2024-01-25 15:18:15 +00:00
Matt Jankowski
17ea22671d
Fix Style/GuardClause cop in app/controllers (#28420) 2024-01-25 15:13:41 +00:00
Eugen Rochko
3205a654ca
Refactor conversations components in web UI (#28833)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-01-25 14:34:26 +00:00
Matt Jankowski
274a48a9f4
Extract helper methods for db connection and table existence check in CLI::Maintenance task (#28281) 2024-01-25 13:49:33 +00:00
Matt Jankowski
2866106ec1
Reduce factory creation in spec/models/account_statuses_cleanup_policy (#28361) 2024-01-25 13:37:25 +00:00
Matt Jankowski
c8f59d2ca4
Fix Style/TernaryParentheses cop (#28387) 2024-01-25 13:28:49 +00:00
Matt Jankowski
ca7053f19c
Consolidate db test prep steps to rake task (#28886) 2024-01-25 13:10:39 +00:00
github-actions[bot]
59d2ea0d82
New Crowdin Translations (automated) (#28899)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-01-25 13:00:44 +00:00
Matt Jankowski
6b6586f5d0
Add CustomFilterKeyword#to_regex method (#28893) 2024-01-25 13:00:34 +00:00
renovate[bot]
a69506a434
fix(deps): update dependency dotenv to v16.4.1 (#28889)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-25 12:37:23 +00:00
Matt Jankowski
7c9c6c7f80
Fix remaining Rails/WhereExists cop violations, regenerate todo (#28892) 2024-01-25 12:37:07 +00:00
renovate[bot]
1a565e4bea
fix(deps): update dependency axios to v1.6.6 (#28895)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-25 12:36:20 +00:00
renovate[bot]
d158f7e622
chore(deps): update dependency rspec-rails to v6.1.1 (#28905)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-25 12:33:56 +00:00
Claire
087415d0fe
Add tests for processing statuses using bearcap URIs (#28904) 2024-01-25 11:13:36 +00:00
Claire
0471a78055
Add tests for redirect confirmations (#28903) 2024-01-25 11:13:33 +00:00
Claire
c50274a0ac
Fix redirect confirmation for accounts (#28902) 2024-01-25 10:44:25 +00:00
KMY(雪あすか)
9a8293f58d
Fix process of receiving posts with bearcaps is not working (#26527) 2024-01-25 10:37:09 +00:00
Essem
69e4361a1d
Merge remote-tracking branch 'upstream/main' 2024-01-24 21:09:39 -06:00
Essem
b875f804c0
Refactor status reactions query
This was done to announcement reactions in 1b0cb3b54d. Might as well do it here too.
2024-01-24 17:50:58 -06:00
Eugen Rochko
22e419f95e [Glitch] Fix search form re-rendering spuriously in web UI
Port 01ce9df880 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-24 20:53:15 +01:00
Claire
22cfab0ebf Merge commit '01ce9df88008cee705b7e02a4581802afa07c3df' into glitch-soc/merge-upstream
Conflicts:
- `tsconfig.json`:
  Upstream made style fixes, while glitch-soc had extra options.
  Ported upstream's style fixes.
2024-01-24 20:42:53 +01:00
Matt Jankowski
38f7f8b909
Tidy up association declaration in Instance model (#28880) 2024-01-24 17:30:28 +00:00
renovate[bot]
9c5be13980
chore(deps): update dependency chewy to v7.5.0 (#28730)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-24 16:51:47 +00:00
renovate[bot]
7019af431d
fix(deps): update dependency dotenv to v16.4.0 (#28872)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-24 16:51:36 +00:00
renovate[bot]
559bbf0aa6
chore(deps): update artifact actions (major) to v4 (major) (#28415)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-24 16:51:18 +00:00
renovate[bot]
ea5397c373
chore(deps): update dependency selenium-webdriver to v4.17.0 (#28858)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-24 14:55:06 +00:00
renovate[bot]
64993d3f77
chore(deps): update dependency haml_lint to v0.55.0 (#28856)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-24 13:37:37 +00:00
Claire
5a838ceaa9
Use active variants for boost icons and increase icon size (#27924) 2024-01-24 12:37:43 +00:00
Matt Jankowski
1290fede65
Fix Rails/WhereExists cop in app/lib (#28862) 2024-01-24 11:51:09 +00:00
renovate[bot]
41c2af2270
chore(deps): update dependency rubocop to v1.60.1 (#28731)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-24 11:50:41 +00:00
Claire
634acd07c4
Merge pull request #2580 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to e2d9635074
2024-01-24 12:11:05 +01:00
Eugen Rochko
b19ae521b7
Add confirmation when redirecting logged-out requests to permalink (#27792)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-01-24 10:49:19 +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
a11a2fb052
Add error classes to api/base errors coverage (#28864) 2024-01-24 10:31:31 +00:00
github-actions[bot]
a34d27c18f
New Crowdin Translations (automated) (#28875)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-01-24 10:06:56 +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
Eugen Rochko
01ce9df880
Fix search form re-rendering spuriously in web UI (#28876) 2024-01-24 07:03:30 +00:00
Essem
e211e4e0ce
Simplify reactions API controller 2024-01-23 22:59:42 -06:00
renovate[bot]
61a0ec69fc
chore(deps): update devdependencies (non-major) (#28840)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2024-01-23 11:44:50 +00:00
Matt Jankowski
c0e8e457ab
Eager loading fixes for api/ controllers (#28848) 2024-01-23 11:41:54 +00:00
Matt Jankowski
ceade78182
Fix Rails/WhereExists cop in app/services (#28853) 2024-01-23 11:41:34 +00:00
github-actions[bot]
78ee1453f9
New Crowdin Translations (automated) (#28857)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-01-23 10:11:37 +00:00
Matt Jankowski
d03fe2bdee
N+1 fixes for CLI maintenance command (#28847) 2024-01-23 09:31:59 +00:00
Matt Jankowski
b0207d7757
Add coverage for Tag.recently_used scope (#28850) 2024-01-23 09:10:11 +00:00
Matt Jankowski
defe5f4076
Fix Rails/WhereExists cop in lib/tasks (#28852) 2024-01-23 09:07:22 +00:00
Matt Jankowski
67f54c4e75
Fix Rails/WhereExists cop in app/validators (#28854) 2024-01-23 09:06:53 +00:00
Eugen Rochko
72bae7e170 [Glitch] Fix duplicate and missing keys in search popout component in web UI
Port 9f8e3cca9a to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-22 19:21:02 +01:00
Claire
102eff7c05 Merge commit 'e2d9635074ad33cc8144adc434bcd90faae9c424' into glitch-soc/merge-upstream 2024-01-22 19:19:40 +01:00
renovate[bot]
1d381c1664 [Glitch] Update dependency react-redux to v9.1.0
Port 163db814c2 to glitch-soc

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-22 19:15:02 +01:00
Claire
0700eb58bc Merge commit '163db814c2b3cf544b78e427e7f7bbd99b94a025' into glitch-soc/merge-upstream 2024-01-22 19:12:05 +01:00
Claire
3cac826382 Merge commit '1335083bedd1dd563cfa9c54e69abc189ba3ec7b' into glitch-soc/merge-upstream
Conflicts:
- `streaming/index.js`:
  Upstream significantly refactored that file, while one modified
  function had a different signature because of support for local-only
  posts.
  Ported upstream's change and kept the local-only support.
- `yarn.lock`:
  Upstream added new dependencies, one of which was textually close to
  a glitch-soc-only dependency.
  Updated accordingly.
2024-01-22 19:01:35 +01:00
Claire
e2d9635074
Add notification email on invalid second authenticator (#28822) 2024-01-22 13:55:43 +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
7ecf7f5403
Move controller->request specs for api/v1/statuses/* (#28818) 2024-01-22 11:58:54 +00:00
Matt Jankowski
5efb00ddb8
Use ruby version 3.2.3 (#28817) 2024-01-22 11:55:51 +00:00
github-actions[bot]
76e383ea1e
New Crowdin Translations (automated) (#28827)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-01-22 11:52:26 +00:00
Andy Piper
9620b21259
docs: update FEDERATION.md to more closely follow FEP conventions. (#28838) 2024-01-22 11:11:47 +00:00
renovate[bot]
e078d0048c
Update dependency @types/react to v18.2.48 (#28839)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-22 11:08:22 +00:00
renovate[bot]
a83aeccac9
Update dependency dotenv to v16.3.2 (#28824)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-22 11:08:06 +00:00
renovate[bot]
9ff9849381
Update dependency core-js to v3.35.1 (#28831)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-22 11:07:44 +00:00
renovate[bot]
62001b5a31
Update dependency jsdom to v24 (#28836)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-22 11:04:28 +00:00
Emelia Smith
3fbf01918f
Streaming: Move more methods to the utils from the main file (#28825) 2024-01-22 10:02:26 +00:00
Eugen Rochko
9f8e3cca9a
Fix duplicate and missing keys in search popout component in web UI (#28834) 2024-01-21 07:44:46 +00:00
Essem
54fb7c54c4
Merge remote-tracking branch 'upstream/main' 2024-01-19 14:59:02 -06:00
Claire
93957daa50
Fix error when processing remote files with unusually long names (#28823) 2024-01-19 18:52:59 +00:00
Claire
cf2a2ed71c
Fix processing of compacted single-item JSON-LD collections (#28816) 2024-01-19 12:43:10 +00:00
Claire
3593ee2e36
Add rate-limit of TOTP authentication attempts at controller level (#28801) 2024-01-19 12:19:49 +00:00
Matt Jankowski
5fc4ae7c5f
Move privacy policy into markdown file (#28699) 2024-01-19 11:22:23 +00:00
Matt Jankowski
6a5d70e146
Update pre_migration_check postgres version requirement (#28800) 2024-01-19 11:20:20 +00:00
Claire
915cd36ac1
Merge pull request #2579 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to f866413e72
2024-01-19 12:09:01 +01:00
github-actions[bot]
9cd17020bc
New Crowdin Translations (automated) (#28798)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-01-19 09:41:57 +00:00
renovate[bot]
163db814c2
Update dependency react-redux to v9.1.0 (#28717)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2024-01-19 09:41:03 +00:00
Matt Jankowski
4ec7d7d989
Fix Rails/WhereExists cop in REST::TagSerializer model (#28790) 2024-01-19 09:35:58 +00:00
Matt Jankowski
329911b0a3
Migrate controller->request spec for api/v1/follow* (#28811) 2024-01-19 09:32:41 +00:00
HTeuMeuLeu
86cc88c216
Fix banner image not showing in follow emails (#28814) 2024-01-19 09:23:59 +00:00
renovate[bot]
6a1c998722
Update dependency kt-paperclip to v7.2.2 (#28813)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-19 09:21:07 +00:00
renovate[bot]
6dc97321a3
Update dependency intl-messageformat to v10.5.10 (#28809)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-19 09:20:16 +00:00
Matt Jankowski
fd64817fbe
Fix Rails/WhereExists cop in app/lib/status_cache_hydrator (#28808) 2024-01-19 09:19:48 +00:00
Jonathan de Jong
de09176ab9
Retry 401 errors on replies fetching (#28788)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-01-19 09:18:21 +00:00
Essem
b6ec4af6f3
Update reaction emails
Reaction icon made by @t3rminus@calamity.world
2024-01-18 21:38:39 -06: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
Essem
adfa7877c3
Merge remote-tracking branch 'upstream/main' 2024-01-18 18:15:06 -06:00
Claire
528a8fa495 Merge commit 'f866413e724c2e7f8329fbc6e96f56f0b186c62a' into glitch-soc/merge-upstream 2024-01-18 22:16:16 +01:00
Claire
07b6777c99
Fix styling issue in account fields (#2578) 2024-01-18 20:27:47 +01:00
Claire
d80d8f6bb9
Merge pull request #2577 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 127503eb2c
2024-01-18 20:27:31 +01:00
renovate[bot]
5ae3bae586
Update dependency sass to v1.70.0 (#28799)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-18 18:43:03 +00:00
renovate[bot]
244182ad63
Update dependency rdf-normalize to v0.7.0 (#26769)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-18 18:42:07 +00:00
Emelia Smith
1335083bed
Streaming: replace npmlog with pino & pino-http (#27828) 2024-01-18 18:40:25 +00:00
Matt Jankowski
f866413e72
Extract shared tagged statuses method in FeaturedTag (#28805) 2024-01-18 16:14:15 +00:00
Matt Jankowski
f0b93ab02f
Use AR database_version in PG version checks in migrations (#28804) 2024-01-18 16:11:50 +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
2115bc52e4
Order by sql in CLI::Maintenance task (#28289) 2024-01-18 14:53:29 +00:00
Matt Jankowski
9fb9ef418a
Fix Rails/WhereExists cop in User model (#28792) 2024-01-18 13:55:44 +00:00
Matt Jankowski
81e4e65610
Update links to upstream migration helpers, remove unused methods (#28781) 2024-01-18 12:29:54 +00:00
Matt Jankowski
aaa6f2e930
Group common class_name options in associations (#28779) 2024-01-18 12:29:41 +00:00
Matt Jankowski
da31792ac7
Fix Rails/WhereExists cop in FeaturedTag model (#28791) 2024-01-18 12:22:12 +00:00
Matt Jankowski
3d82040b26
Reduced repeated setup in UnallowDomainService spec (#28785) 2024-01-18 10:11:10 +00:00
Matt Jankowski
6c5a2d51bc
Reduced repeated setup in PurgeDomainService spec (#28786) 2024-01-18 10:07:49 +00:00
Matt Jankowski
07e10e3747
Combine assertions about same setup in Account#suspend! spec (#28787) 2024-01-18 09:36:59 +00:00
Matt Jankowski
89c9a4502d
Fix Rails/WhereExists cop in account/interactions concern (#28789) 2024-01-18 09:36:16 +00:00
renovate[bot]
4c23297c04
Update dependency autoprefixer to v10.4.17 (#28794)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-18 09:33:21 +00:00
renovate[bot]
83a90f20d7
Update dependency async-mutex to v0.4.1 (#28797)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-18 09:31:59 +00:00
Essem
d983bae9d2
Revert variant selector normalization
Probably worth tackling later, but for now it's not worth worrying about; some other implementations (e.g. Misskey's) look to have the same behavior anyways.
2024-01-17 18:04:36 -06:00
Santiago Kozak
036e25f19d [Glitch] Improve display of lock icon in account headers
Port 30b193b856 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-17 18:37:04 +01:00
Claire
0207c4b055 [Glitch] Change media “ALT” label to a specific class
Port e817fe4c35 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-17 18:36:09 +01:00
Claire
e8294925e6 [Glitch] Fix various icon alignment issues
Port baab58c80b to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-17 18:34:57 +01:00
Claire
c59fb65ddc Merge commit '127503eb2cdd67126974bee304dde0f183300b84' into glitch-soc/merge-upstream
Conflicts:
- `app/helpers/accounts_helper.rb`:
  Conflict due to glitch-soc's option to hide followers count.
  Ported upstream changes.

Additional changes:
- `app/views/application/mailer/_account.html.haml`:
  Ported glitch-soc's option to hide followers count.
- `app/views/settings/flavours/show.html.haml`:
  Ported the `frontend_asset_url` helper change to glitch-soc.
2024-01-17 18:32:15 +01:00
renovate[bot]
d56e9fb873 [Glitch] Update devDependencies (non-major)
Port 4e277f83dc to glitch-soc

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-17 18:12:00 +01:00
Claire
8485bedddc Merge commit '4e277f83dc740b3a842c7fd8ed167c3c76fcabf8' into glitch-soc/merge-upstream 2024-01-17 18:09:15 +01:00
Matt Jankowski
127503eb2c
Fix Rails/RakeEnvironment cop (#28782) 2024-01-17 16:33:17 +00:00
Santiago Kozak
30b193b856
Improve display of lock icon in account headers (#28780) 2024-01-17 16:32:30 +00:00
Matt Jankowski
09f76c5c8d
Regenerate rubocop todo, removes last Layout/LineLength violation (#28778) 2024-01-17 15:42:13 +00:00
Claire
e817fe4c35
Change media “ALT” label to a specific class (#28777) 2024-01-17 15:32:56 +00:00
HTeuMeuLeu
1a3859d8e2
Update follow and follow_request emails (#28755)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-01-17 14:37:04 +00:00
Matt Jankowski
6fab50ba9e
Use bundler version 2.5.4 (#28765) 2024-01-17 14:35:55 +00:00
github-actions[bot]
1ab42ad12b
New Crowdin Translations (automated) (#28749)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-01-17 14:23:14 +00:00
Matt Jankowski
9a475ea8b3
Finish up the CLI spec area pattern adoption for CLI::Accounts#refresh specs (#28764) 2024-01-17 13:38:37 +00:00
Renaud Chaput
cb5ac15923
Use a helper to avoid using media/ asset prefixes (#28756) 2024-01-17 12:19:51 +00:00
Claire
baab58c80b
Fix various icon alignment issues (#28775) 2024-01-17 10:42:47 +00:00
Matt Jankowski
c523a9601b
Rename local webpack* var in development env CSP config (#28766) 2024-01-17 09:22:16 +00:00
Matt Jankowski
1b0cb3b54d
Announcement reactions query spec improvement and refactor (#28768) 2024-01-17 09:18:13 +00:00
renovate[bot]
afb5e6cf46
Update dependency rails to v7.1.3 (#28772)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-17 09:11:22 +00:00
renovate[bot]
259874f2ac
Update dependency @rails/ujs to v7.1.3 (#28771)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-17 09:11:18 +00:00
Matt Jankowski
0ce081fe49
Remove monkey patch in favor of supported Devise config value (#28760) 2024-01-17 09:08:17 +00:00
renovate[bot]
8cc322a0e1
Update dependency concurrent-ruby to v1.2.3 (#28754)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-17 09:06:38 +00:00
Essem
d96fd9f28f
Merge remote-tracking branch 'upstream/main' 2024-01-16 13:04:33 -06:00
renovate[bot]
bd538598c2
Update formatjs monorepo (#28751)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-16 18:34:53 +00:00
renovate[bot]
4e277f83dc
Update devDependencies (non-major) (#28728)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2024-01-16 18:34:22 +00:00
renovate[bot]
e85e2929aa
Update eslint (non-major) (#28729)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-16 17:53:32 +00:00
Jeong Arm
411efdc2d3
Fix getting started misc column on dev env (#2575)
* Fix getting started misc column on dev

---------

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-01-16 17:40:03 +01:00
Claire
1fa9da1f39
Merge pull request #2573 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 01b6c83c36
2024-01-16 17:18:26 +01:00
Renaud Chaput
5b67389bba [Glitch] Add a new @/ alias for the root frontend directory and use it where possible
Port 01b6c83c36 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-16 12:21:13 +01:00
Claire
e4d07c7bcc Merge commit '01b6c83c369061c2175d50dfb3ae1db502862664' into glitch-soc/merge-upstream 2024-01-16 12:04:11 +01:00
Renaud Chaput
01b6c83c36
Add a new @/ alias for the root frontend directory and use it where possible (#28753) 2024-01-16 10:27:26 +00:00
Jeong Arm
f0abba67db
Ignore RecordNotUnique errors in LinkCrawlWorker (#28748) 2024-01-16 08:35:54 +00:00
renovate[bot]
f09035cc3f
Update dependency stackprof to v0.2.26 (#28743)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-16 08:32:40 +00:00
Claire
dee561604b Merge commit 'b4c332104a8b3748f619de250f77c0acc8e80628' into glitch-soc/merge-upstream 2024-01-15 22:37:21 +01:00
Matt Jankowski
b4c332104a
Use top-level warn in JS errors check (#28745) 2024-01-15 21:26:11 +00:00
Claire
01df34b9db Remove bypass and use use glitch-soc's theming system for inert.css 2024-01-15 22:16:26 +01:00
Claire
34c9f77b3e Merge commit '7f471e70c0e1cc106747634d20f173a68a9272d7' into glitch-soc/merge-upstream
Conflicts:
- `app/views/layouts/mailer.html.haml`:
  Conflict caused by glitch-soc's theming system.
  Used glitch-soc's path for the mailer pack.
2024-01-15 21:30:00 +01:00
Claire
6e4d5b4736 Fix some icon-related styling issues 2024-01-15 21:05:54 +01:00
Claire
4fcb372776 Fix Ruby linting issue 2024-01-15 20:57:55 +01:00
Claire
278597c161 Merge commit '98b5f85f10a3af50a54fcd79e09fc9fd88f774fa' into glitch-soc/merge-upstream 2024-01-15 20:53:16 +01:00
Claire
a1920425ca [Glitch] Switch from 48px weight 600 material symbol icons to 24px weight 400 icons
Port 6bbcd9348e to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-15 20:53:08 +01:00
Claire
2f521bc84a Merge commit 'a2f02a07758c32f0dcc6388b4f30ca5a84e762f3' into glitch-soc/merge-upstream 2024-01-15 20:27:41 +01:00
Renaud Chaput
8cad0a4d6b [Glitch] Change icon SVG imports to use a default import
Port 608f66f978 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-15 20:20:38 +01:00
Claire
464051c2d2 Merge commit '1070804a1a6121170f7bba923789d73b978e6fe7' into glitch-soc/merge-upstream 2024-01-15 20:06:31 +01:00
Claire
60298af3c4 Merge commit 'c6684aa1e392f2dd86af4362b4259809549abaad' into glitch-soc/merge-upstream
Conflicts:
- `app/views/layouts/application.html.haml`:
  Upstream changed how the `inert.css` file is included.
  The conflict is caused by glitch-soc's theming system.
  Ported the upstream change.

Additional changes:
- `config/webpack/shared.js`: bypass glitch-soc's theming
  system for `inert` pack.
2024-01-15 20:01:36 +01:00
Claire
1323dfac80 Merge commit 'a90696011e563e62100cba56e2d52f6babbaff00' into glitch-soc/merge-upstream 2024-01-15 19:19:04 +01:00
HTeuMeuLeu
7f471e70c0
Update new email templates (#28416)
Co-authored-by: Matt Jankowski <matt@jankowski.online>
2024-01-15 18:18:59 +00:00
Claire
98b5f85f10
Rename and refactor User#confirm! to User#mark_email_as_confirmed! (#28735) 2024-01-15 18:04:58 +00:00
Claire
e621c1c44c
Fix registrations not checking MX records for email domain blocks requiring approval (#28608) 2024-01-15 17:10:57 +00:00
Matt Jankowski
a2f02a0775
Disable Rails/SkipsModelValidations cop (#28712) 2024-01-15 13:46:47 +00:00
Claire
82d28ac956
Merge pull request #2567 from ClearlyClaire/glitch-soc/ports/convert-utils-hashtags-typescript
Convert utils and hashtags to Typescript
2024-01-15 12:41:22 +01:00
renovate[bot]
b5afbe0a61
Update dependency bootsnap to v1.17.1 (#28713)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-15 11:17:25 +00:00
Claire
50188ad211
[Glitch] Use helpers to check environment in frontend (#2571)
Port 277e6968f5 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2024-01-15 12:16:05 +01:00
renovate[bot]
367be82a29
Update libretranslate/libretranslate Docker tag to v1.5.4 (#28727)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-15 11:09:28 +00:00
Claire
8cb4825c8b
Fix sign-up restrictions based on email addresses not being enforced (#28732) 2024-01-15 11:06:48 +00:00
renovate[bot]
8013d6c56d
Update dependency faker to v3.2.3 (#28720)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-15 11:06:28 +00:00
github-actions[bot]
1012ffac9e
New Crowdin Translations (automated) (#28721)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-01-15 11:06:25 +00:00
Claire
e81c5c0a51
Ignore the devise-two-factor advisory as we have rate limits in place (#28733) 2024-01-15 10:45:48 +00:00
Emelia Smith
58830be943
Streaming: Rework websocket server initialisation & authentication code (#28631) 2024-01-15 10:36:30 +00:00
Matt Jankowski
e72676e83a
Improve api/v1/markers#create performance against simultaneous requests (#28718) 2024-01-15 09:47:25 +00:00
Essem
dd7d7cb80a
Fix embed GIF icons 2024-01-14 17:22:38 -06:00
Essem
16839a6398
Update to mastomodern 1.9.1 2024-01-14 16:40:51 -06:00
Essem
2a6cc053f9
Move reaction normalization to API controller 2024-01-14 15:59:27 -06:00
Essem
e499c3f8b9
Merge remote-tracking branch 'upstream/main' 2024-01-14 15:44:01 -06:00
Essem
ac71680dcb
Merge remote-tracking branch 'upstream/main' 2024-01-14 15:41:16 -06:00
Josh Goldberg ✨
f8941c41a5 [Glitch] Converted hashtag.jsx to TypeScript
Port 3a7f10c3f1 to glitch-soc

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
Co-authored-by: Renaud Chaput <renchap@gmail.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 19:22:39 +01:00
Josh Goldberg ✨
695dcc6ca8 [Glitch] Converted app/javascript/flavours/glitch/utils/ folder to TypeScript
Port 1142f4c79e to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 19:22:39 +01:00
Claire
52c023a305 Convert Permalink to Typescript 2024-01-14 19:22:39 +01:00
Claire
16499bc097 Rewrite Permalink as functional component 2024-01-14 19:22:39 +01:00
Claire
545c0041a0
Merge pull request #2570 from ClearlyClaire/glitch-soc/ports/onboarding-profile-setup
Add profile setup to onboarding in web UI
2024-01-14 19:21:39 +01:00
Claire
0213ae6b37 Extract glitch-soc-only i18n string 2024-01-14 16:32:08 +01:00
Eugen Rochko
6772bf611e [Glitch] Fix wrong color on active icons with counters in web UI
Port 728eb6a153 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 16:32:08 +01:00
Eugen Rochko
cc363629be [Glitch] Fix focus and hover styles in web UI
Port cfd50f30bb to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 16:32:08 +01:00
Trevor Wolf
7565a328d0 [Glitch] change column link to add a better keyboard focus indicator
Port 6308dca76a to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 16:32:08 +01:00
Trevor Wolf
c1e28c8913 [Glitch] change focus ui for keyboard only input
Port 59478a1b46 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 16:32:08 +01:00
Eugen Rochko
a7bad8f45c [Glitch] Fix profile setup showing default avatar in web UI
Port 01f0a6ca4f to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 16:32:08 +01:00
Eugen Rochko
b534532eaf [Glitch] Change to single opt-in during profile setup in onboarding in web UI
Port 0e9801443f to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 16:32:08 +01:00
Eugen Rochko
bacb9134cc [Glitch] Add profile setup to onboarding in web UI
Port d67bd44ca1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 16:32:08 +01:00
Claire
3425b99a9a
Merge pull request #2569 from ClearlyClaire/glitch-soc/ports/column-changes
Port upstream's column refactor of column and column header code
2024-01-14 16:31:46 +01:00
Renaud Chaput
2653651bfa [Glitch] Simplify column headers
Port 13d310e64d to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 14:31:49 +01:00
Renaud Chaput
ca17c2d35a [Glitch] Use a context to propagate column-related Props, and remove forceUpdate usage
Port 537442853f to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-14 14:31:49 +01:00
Claire
04f786abd0
Merge pull request #2568 from ClearlyClaire/glitch-soc/ports/dreaded-icon-change-please-save-me
Port upstream's icon changes
2024-01-14 14:31:16 +01:00
Claire
e2c7c370dc Fix size of glitch-soc status info icons 2024-01-14 00:09:28 +01:00
Claire
e2ba5f6e35 Fix glitch-soc high color privacy icons 2024-01-14 00:04:09 +01:00
Claire
e227e959f7 Fix glitch-soc textarea icons 2024-01-13 23:53:23 +01:00
Claire
6333900006 Fix glitch-soc CW media icons 2024-01-13 23:48:37 +01:00
Claire
46128f25b6 Fix glitch-soc status media icons 2024-01-13 23:35:53 +01:00
Santiago Kozak
731f01adb1 [Glitch] Fix reply icon display in picture-in-picture footer
Port 1cba91d6d1 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-13 23:19:01 +01:00
Renaud Chaput
dd56900fac [Glitch] Fixes dropdown target without a buttonRef (edit history)
Port 7b1d390734 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-13 23:19:01 +01:00
Eugen Rochko
a8c59c2506 [Glitch] Add icons for private and disabled boost in web UI
Port 7e3c10dec6 to glitch-soc

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-13 23:19:01 +01:00
zunda
b2a6386b7d [Glitch] Adjust transform origin for favorite star
Port e4e752c26e to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-13 23:19:01 +01:00
Eugen Rochko
6230d50f3f [Glitch] Fix various icon styles in web UI
Port fa7e64df1d to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-13 23:19:01 +01:00
Renaud Chaput
b67d977e20 [Glitch] Add missing ban icons
Port a4e6fe36cb to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-13 23:19:01 +01:00
Renaud Chaput
9b32a37b6f [Glitch] Fix missing icon props
Port f08ca3f042 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-13 23:19:01 +01:00
Eugen Rochko
d54414866c [Glitch] Change icons in web UI
Port 134de736dc to glitch-soc

Co-authored-by: Renaud Chaput <renchap@gmail.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2024-01-13 23:19:01 +01:00
Matt Jankowski
cc3ff66246
Use rubygems released version of omniauth-cas gem (#28719) 2024-01-12 22:39:23 +00:00
Claire
6bbcd9348e
Switch from 48px weight 600 material symbol icons to 24px weight 400 icons (#28064) 2024-01-12 20:16:48 +00:00
Claire
1070804a1a
Fix RedownloadMediaWorker not being called on transient S3 failure (#28714) 2024-01-12 17:00:17 +00:00
MitarashiDango
2c05b8a60d
Fix Undo Announce activity is not sent, when not followed by the reblogged post author (#18482)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-01-12 15:58:28 +00:00
Matt Jankowski
28fdf93362
Disable Rails/LexicallyScopedActionFilter for inherited auth controllers (#28711) 2024-01-12 13:10:14 +00:00
Matt Jankowski
a90c134850
Move followable by logic to suggestion class (#28710) 2024-01-12 13:09:33 +00:00
Renaud Chaput
608f66f978
Change icon SVG imports to use a default import (#28709) 2024-01-12 10:31:24 +00:00
Renaud Chaput
c6684aa1e3
Use the assets pipeline to load inert.css (#28701) 2024-01-12 09:32:45 +00:00
Matt Jankowski
a90696011e
Add coverage/bugfix for invalid appeal submission (#28703) 2024-01-12 09:21:00 +00:00
Matt Jankowski
7801db7ba4
Spec coverage for custom css endpoint (#28706) 2024-01-12 09:19:25 +00:00
github-actions[bot]
b86083f0dc
New Crowdin Translations (automated) (#28708)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-01-12 09:17:10 +00:00
Matt Jankowski
df9e220364
Add JS console errors check (#28682) 2024-01-12 09:12:31 +00:00
2402 changed files with 70470 additions and 46688 deletions

View file

@ -1,7 +1,9 @@
[production]
defaults
not IE 11
> 0.2%
ios >= 15.6
not dead
not OperaMini all
[development]
supports es6-module

6
.bundler-audit.yml Normal file
View file

@ -0,0 +1,6 @@
---
ignore:
# devise-two-factor advisory about brute-forcing TOTP
# We have rate-limits on authentication endpoints in place (including second
# factor verification) since Mastodon v3.2.0
- CVE-2024-0227

View file

@ -70,7 +70,7 @@ services:
hard: -1
libretranslate:
image: libretranslate/libretranslate:v1.5.3
image: libretranslate/libretranslate:v1.5.7
restart: unless-stopped
volumes:
- lt-data:/home/libretranslate/.local

4
.env.development Normal file
View file

@ -0,0 +1,4 @@
# Required by ActiveRecord encryption feature
ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY=fkSxKD2bF396kdQbrP1EJ7WbU7ZgNokR
ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT=r0hvVmzBVsjxC7AMlwhOzmtc36ZCOS1E
ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY=PhdFyyfy5xJ7WVd2lWBpcPScRQHzRTNr

View file

@ -251,6 +251,11 @@ SMTP_FROM_ADDRESS=notifications@example.com
# Maximum allowed character count
MAX_TOOT_CHARS=500
# Maximum allowed hashtags to follow in a feed column
# Note that setting this value higher may cause significant
# database load
MAX_FEED_HASHTAGS=4
# Maximum number of pinned posts
MAX_PINNED_TOOTS=5

View file

@ -3,3 +3,9 @@ NODE_ENV=production
# Federation
LOCAL_DOMAIN=cb6e6126.ngrok.io
LOCAL_HTTPS=true
# Secret values required by ActiveRecord encryption feature
# Use `bin/rails db:encryption:init` to generate fresh secrets
ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY=test_determinist_key_DO_NOT_USE_IN_PRODUCTION
ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT=test_salt_DO_NOT_USE_IN_PRODUCTION
ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY=test_primary_key_DO_NOT_USE_IN_PRODUCTION

View file

@ -123,7 +123,7 @@ module.exports = defineConfig({
'react/react-in-jsx-scope': 'off', // not needed with new JSX transform
'react/self-closing-comp': 'error',
// recommended values found in https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/src/index.js
// recommended values found in https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/v6.8.0/src/index.js#L46
'jsx-a11y/accessible-emoji': 'warn',
'jsx-a11y/click-events-have-key-events': 'off',
'jsx-a11y/label-has-associated-control': 'off',
@ -165,7 +165,7 @@ module.exports = defineConfig({
// },
// ],
'jsx-a11y/no-noninteractive-tabindex': 'off',
'jsx-a11y/no-onchange': 'warn',
'jsx-a11y/no-onchange': 'off',
// recommended is full 'error'
'jsx-a11y/no-static-element-interactions': [
'warn',
@ -176,7 +176,7 @@ module.exports = defineConfig({
},
],
// See https://github.com/import-js/eslint-plugin-import/blob/main/config/recommended.js
// See https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/config/recommended.js
'import/extensions': [
'error',
'always',
@ -355,7 +355,6 @@ module.exports = defineConfig({
'plugin:import/typescript',
'plugin:promise/recommended',
'plugin:jsdoc/recommended-typescript',
'plugin:prettier/recommended',
],
parserOptions: {
@ -364,6 +363,9 @@ module.exports = defineConfig({
},
rules: {
// Disable formatting rules that have been enabled in the base config
'indent': 'off',
'import/consistent-type-specifier-style': ['error', 'prefer-top-level'],
'@typescript-eslint/consistent-type-definitions': ['warn', 'interface'],
@ -378,6 +380,7 @@ module.exports = defineConfig({
"message": "Use typed hooks `useAppDispatch` and `useAppSelector` instead."
}
],
"@typescript-eslint/restrict-template-expressions": ['warn', { allowNumber: true }],
'jsdoc/require-jsdoc': 'off',
// Those rules set stricter rules for TS files

View file

@ -23,7 +23,7 @@ runs:
shell: bash
run: echo "dir=$(yarn config get cacheFolder)" >> $GITHUB_OUTPUT
- uses: actions/cache@v3
- uses: actions/cache@v4
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}

4
.github/codecov.yml vendored
View file

@ -1,3 +1,4 @@
comment: false # Do not leave PR comments
coverage:
status:
project:
@ -8,6 +9,3 @@ coverage:
default:
# Github status check is not blocking
informational: true
comment:
# Only write a comment in PR if there are changes
require_changes: true

View file

@ -125,6 +125,29 @@
],
groupName: null, // We dont want them to belong to any group
},
{
// Group all RuboCop packages with `rubocop` in the same PR
matchManagers: ['bundler'],
matchPackageNames: ['rubocop'],
matchPackagePrefixes: ['rubocop-'],
matchUpdateTypes: ['patch', 'minor'],
groupName: 'RuboCop (non-major)',
},
{
// Group all RSpec packages with `rspec` in the same PR
matchManagers: ['bundler'],
matchPackageNames: ['rspec'],
matchPackagePrefixes: ['rspec-'],
matchUpdateTypes: ['patch', 'minor'],
groupName: 'RSpec (non-major)',
},
{
// Group all opentelemetry-ruby packages in the same PR
matchManagers: ['bundler'],
matchPackagePrefixes: ['opentelemetry-'],
matchUpdateTypes: ['patch', 'minor'],
groupName: 'opentelemetry-ruby (non-major)',
},
// Add labels depending on package manager
{ matchManagers: ['npm', 'nvm'], addLabels: ['javascript'] },
{ matchManagers: ['bundler', 'ruby-version'], addLabels: ['ruby'] },

View file

@ -1,21 +0,0 @@
{
"problemMatcher": [
{
"owner": "stylelint",
"pattern": [
{
"regexp": "^([^\\s].*)$",
"file": 1
},
{
"regexp": "^\\s+((\\d+):(\\d+))?\\s+(✖|×)\\s+(.*)\\s{2,}(.*)$",
"line": 2,
"column": 3,
"message": 5,
"code": 6,
"loop": true
}
]
}
]
}

61
.github/workflows/build-security.yml vendored Normal file
View file

@ -0,0 +1,61 @@
name: Build security nightly container image
on:
workflow_dispatch:
permissions:
contents: read
packages: write
jobs:
compute-suffix:
runs-on: ubuntu-latest
steps:
- id: version_vars
env:
TZ: Etc/UTC
run: |
echo mastodon_version_prerelease=nightly.$(date --date='next day' +'%Y-%m-%d')-security>> $GITHUB_OUTPUT
outputs:
prerelease: ${{ steps.version_vars.outputs.mastodon_version_prerelease }}
build-image:
needs: compute-suffix
uses: ./.github/workflows/build-container-image.yml
with:
file_to_build: Dockerfile
platforms: linux/amd64,linux/arm64
use_native_arm64_builder: false
cache: false
push_to_images: |
ghcr.io/${{ github.repository_owner }}/mastodon
version_prerelease: ${{ needs.compute-suffix.outputs.prerelease }}
labels: |
org.opencontainers.image.description=Nightly build image used for testing purposes
flavor: |
latest=true
tags: |
type=raw,value=edge
type=raw,value=nightly
type=raw,value=${{ needs.compute-suffix.outputs.prerelease }}
secrets: inherit
build-image-streaming:
needs: compute-suffix
uses: ./.github/workflows/build-container-image.yml
with:
file_to_build: streaming/Dockerfile
platforms: linux/amd64,linux/arm64
use_native_arm64_builder: false
cache: false
push_to_images: |
ghcr.io/${{ github.repository_owner }}/mastodon-streaming
version_prerelease: ${{ needs.compute-suffix.outputs.prerelease }}
labels: |
org.opencontainers.image.description=Nightly build image used for testing purposes
flavor: |
latest=true
tags: |
type=raw,value=edge
type=raw,value=nightly
type=raw,value=${{ needs.compute-suffix.outputs.prerelease }}
secrets: inherit

View file

@ -53,7 +53,7 @@ jobs:
# Create or update the pull request
- name: Create Pull Request
uses: peter-evans/create-pull-request@v5.0.2
uses: peter-evans/create-pull-request@v6.0.5
with:
commit-message: 'New Crowdin translations'
title: 'New Crowdin Translations (automated)'

18
.github/workflows/format-check.yml vendored Normal file
View file

@ -0,0 +1,18 @@
name: Check formatting
on:
push:
pull_request:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v4
- name: Set up Javascript environment
uses: ./.github/actions/setup-javascript
- name: Check formatting with Prettier
run: yarn format:check

View file

@ -38,9 +38,5 @@ jobs:
- name: Set up Javascript environment
uses: ./.github/actions/setup-javascript
- uses: xt0rted/stylelint-problem-matcher@v1
- run: echo "::add-matcher::.github/stylelint-matcher.json"
- name: Stylelint
run: yarn lint:sass
run: yarn lint:css -f github

View file

@ -36,4 +36,4 @@ jobs:
- name: Run haml-lint
run: |
echo "::add-matcher::.github/workflows/haml-lint-problem-matcher.json"
bundle exec haml-lint
bundle exec haml-lint --reporter github

View file

@ -1,38 +0,0 @@
name: JSON Linting
on:
push:
branches-ignore:
- 'dependabot/**'
- 'renovate/**'
paths:
- 'package.json'
- 'yarn.lock'
- '.nvmrc'
- '.prettier*'
- '**/*.json'
- '.github/workflows/lint-json.yml'
- '!app/javascript/mastodon/locales/*.json'
pull_request:
paths:
- 'package.json'
- 'yarn.lock'
- '.nvmrc'
- '.prettier*'
- '**/*.json'
- '.github/workflows/lint-json.yml'
- '!app/javascript/mastodon/locales/*.json'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v4
- name: Set up Javascript environment
uses: ./.github/actions/setup-javascript
- name: Prettier
run: yarn lint:json

View file

@ -1,38 +0,0 @@
name: Markdown Linting
on:
push:
branches-ignore:
- 'dependabot/**'
- 'renovate/**'
paths:
- '.github/workflows/lint-md.yml'
- '.nvmrc'
- '.prettier*'
- '**/*.md'
- '!AUTHORS.md'
- 'package.json'
- 'yarn.lock'
pull_request:
paths:
- '.github/workflows/lint-md.yml'
- '.nvmrc'
- '.prettier*'
- '**/*.md'
- '!AUTHORS.md'
- 'package.json'
- 'yarn.lock'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v4
- name: Set up Javascript environment
uses: ./.github/actions/setup-javascript
- name: Prettier
run: yarn lint:md

View file

@ -1,40 +0,0 @@
name: YML Linting
on:
push:
branches-ignore:
- 'dependabot/**'
- 'renovate/**'
paths:
- 'package.json'
- 'yarn.lock'
- '.nvmrc'
- '.prettier*'
- '**/*.yaml'
- '**/*.yml'
- '.github/workflows/lint-yml.yml'
- '!config/locales/*.yml'
pull_request:
paths:
- 'package.json'
- 'yarn.lock'
- '.nvmrc'
- '.prettier*'
- '**/*.yaml'
- '**/*.yml'
- '.github/workflows/lint-yml.yml'
- '!config/locales/*.yml'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v4
- name: Set up Javascript environment
uses: ./.github/actions/setup-javascript
- name: Prettier
run: yarn lint:yml

View file

@ -38,5 +38,5 @@ jobs:
- name: Set up Javascript environment
uses: ./.github/actions/setup-javascript
- name: Jest testing
- name: JavaScript testing
run: yarn jest --reporters github-actions summary

View file

@ -78,23 +78,8 @@ jobs:
- name: Create database
run: './bin/rails db:create'
- name: Run migrations up to v2.0.0
run: './bin/rails db:migrate VERSION=20171010025614'
- name: Populate database with test data
run: './bin/rails tests:migrations:populate_v2'
- name: Run migrations up to v2.4.0
run: './bin/rails db:migrate VERSION=20180514140000'
- name: Populate database with test data
run: './bin/rails tests:migrations:populate_v2_4'
- name: Run migrations up to v2.4.3
run: './bin/rails db:migrate VERSION=20180707154237'
- name: Populate database with test data
run: './bin/rails tests:migrations:populate_v2_4_3'
- name: Run historical migrations with data population
run: './bin/rails tests:migrations:prepare_database'
- name: Run all remaining migrations
run: './bin/rails db:migrate'

View file

@ -45,6 +45,7 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis:7-alpine
options: >-
@ -77,28 +78,11 @@ jobs:
- name: Create database
run: './bin/rails db:create'
- name: Run migrations up to v2.0.0
run: './bin/rails db:migrate VERSION=20171010025614'
- name: Populate database with test data
run: './bin/rails tests:migrations:populate_v2'
- name: Run pre-deployment migrations up to v2.4.0
run: './bin/rails db:migrate VERSION=20180514140000'
- name: Run historical migrations with data population
run: './bin/rails tests:migrations:prepare_database'
env:
SKIP_POST_DEPLOYMENT_MIGRATIONS: true
- name: Populate database with test data
run: './bin/rails tests:migrations:populate_v2_4'
- name: Run migrations up to v2.4.3
run: './bin/rails db:migrate VERSION=20180707154237'
env:
SKIP_POST_DEPLOYMENT_MIGRATIONS: true
- name: Populate database with test data
run: './bin/rails tests:migrations:populate_v2_4_3'
- name: Run all remaining pre-deployment migrations
run: './bin/rails db:migrate'
env:

View file

@ -28,6 +28,9 @@ jobs:
env:
RAILS_ENV: ${{ matrix.mode }}
BUNDLE_WITH: ${{ matrix.mode }}
ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY: precompile_placeholder
ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT: precompile_placeholder
ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY: precompile_placeholder
OTP_SECRET: precompile_placeholder
SECRET_KEY_BASE: precompile_placeholder
@ -52,7 +55,7 @@ jobs:
run: |
tar --exclude={"*.br","*.gz"} -zcf artifacts.tar.gz public/assets public/packs*
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: matrix.mode == 'test'
with:
path: |-
@ -111,13 +114,13 @@ jobs:
fail-fast: false
matrix:
ruby-version:
- '3.0'
- '3.1'
- '3.2'
- '.ruby-version'
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
path: './'
name: ${{ github.sha }}
@ -139,9 +142,11 @@ jobs:
- name: Upload coverage reports to Codecov
if: matrix.ruby-version == '.ruby-version'
uses: codecov/codecov-action@v3
uses: codecov/codecov-action@v4
with:
files: coverage/lcov/mastodon.lcov
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
test-e2e:
name: End to End testing
@ -181,19 +186,21 @@ jobs:
DISABLE_SIMPLECOV: true
RAILS_ENV: test
BUNDLE_WITH: test
LOCAL_DOMAIN: localhost:3000
LOCAL_HTTPS: false
strategy:
fail-fast: false
matrix:
ruby-version:
- '3.0'
- '3.1'
- '3.2'
- '.ruby-version'
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
path: './public'
name: ${{ github.sha }}
@ -210,21 +217,21 @@ jobs:
- name: Load database schema
run: './bin/rails db:create db:schema:load db:seed'
- run: bundle exec rake spec:system
- run: bin/rspec spec/system --tag streaming --tag js
- name: Archive logs
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
if: failure()
with:
name: e2e-logs-${{ matrix.ruby-version }}
path: log/
- name: Archive test screenshots
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
if: failure()
with:
name: e2e-screenshots
path: tmp/screenshots/
path: tmp/capybara/
test-search:
name: Elastic Search integration testing
@ -257,8 +264,8 @@ jobs:
ports:
- 6379:6379
search:
image: ${{ matrix.search-image }}
elasticsearch:
image: ${{ contains(matrix.search-image, 'elasticsearch') && matrix.search-image || '' }}
env:
discovery.type: single-node
xpack.security.enabled: false
@ -270,6 +277,20 @@ jobs:
ports:
- 9200:9200
opensearch:
image: ${{ contains(matrix.search-image, 'opensearch') && matrix.search-image || '' }}
env:
discovery.type: single-node
DISABLE_INSTALL_DEMO_CONFIG: true
DISABLE_SECURITY_PLUGIN: true
options: >-
--health-cmd "curl http://localhost:9200/_cluster/health"
--health-interval 10s
--health-timeout 5s
--health-retries 10
ports:
- 9200:9200
env:
DB_HOST: localhost
DB_USER: postgres
@ -285,19 +306,21 @@ jobs:
fail-fast: false
matrix:
ruby-version:
- '3.0'
- '3.1'
- '3.2'
- '.ruby-version'
search-image:
- docker.elastic.co/elasticsearch/elasticsearch:7.17.13
include:
- ruby-version: '.ruby-version'
search-image: docker.elastic.co/elasticsearch/elasticsearch:8.10.2
- ruby-version: '.ruby-version'
search-image: opensearchproject/opensearch:2
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
path: './public'
name: ${{ github.sha }}
@ -317,15 +340,15 @@ jobs:
- run: bin/rspec --tag search
- name: Archive logs
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
if: failure()
with:
name: test-search-logs-${{ matrix.ruby-version }}
path: log/
- name: Archive test screenshots
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
if: failure()
with:
name: test-search-screenshots
path: tmp/screenshots/
path: tmp/capybara/

4
.gitignore vendored
View file

@ -24,7 +24,6 @@
/public/packs-test
.env
.env.production
.env.development
/node_modules/
/build/
@ -69,3 +68,6 @@ yarn-debug.log
# Ignore Docker option files
docker-compose.override.yml
# Ignore dotenv .local files
.env*.local

View file

@ -1,8 +1,5 @@
inherits_from: .haml-lint_todo.yml
exclude:
- 'vendor/**/*'
- lib/templates/haml/scaffold/_form.html.haml
require:
- ./lib/linter/haml_middle_dot.rb
@ -13,4 +10,6 @@ linters:
MiddleDot:
enabled: true
LineLength:
max: 320
max: 300
ViewLength:
max: 200 # Override default value of 100 inherited from rubocop

View file

@ -1,13 +0,0 @@
# This configuration was generated by
# `haml-lint --auto-gen-config`
# on 2024-01-09 11:30:07 -0500 using Haml-Lint version 0.53.0.
# The point is for the user to remove these configuration records
# one by one as the lints are removed from the code base.
# Note that changes in the inspected code, or installation of new
# versions of Haml-Lint, may require this file to be generated again.
linters:
# Offense count: 1
LineLength:
exclude:
- 'app/views/admin/roles/_form.html.haml'

View file

@ -1,4 +1 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
yarn lint-staged

2
.nvmrc
View file

@ -1 +1 @@
20.11
20.13

View file

@ -54,6 +54,13 @@
# Ignore Docker option files
docker-compose.override.yml
# Ignore public
/public/assets
/public/emoji
/public/packs
/public/packs-test
/public/system
# Ignore emoji map file
/app/javascript/mastodon/features/emoji/emoji_map.json
@ -74,6 +81,7 @@ app/javascript/styles/mastodon/reset.scss
# Ignore the generated AUTHORS.md
AUTHORS.md
# Process a few selected JS files
!lint-staged.config.js
# Ignore glitch-soc emoji map file

View file

@ -9,12 +9,13 @@ inherit_mode:
require:
- rubocop-rails
- rubocop-rspec
- rubocop-rspec_rails
- rubocop-performance
- rubocop-capybara
- ./lib/linter/rubocop_middle_dot
AllCops:
TargetRubyVersion: 3.0 # Set to minimum supported version of CI
TargetRubyVersion: 3.1 # Set to minimum supported version of CI
DisplayCopNames: true
DisplayStyleGuide: true
ExtraDetails: true
@ -39,13 +40,7 @@ Layout/FirstHashElementIndentation:
# Reason: Currently disabled in .rubocop_todo.yml
# https://docs.rubocop.org/rubocop/cops_layout.html#layoutlinelength
Layout/LineLength:
Max: 320 # Default of 120 causes a duplicate entry in generated todo file
# Reason:
# https://docs.rubocop.org/rubocop/cops_lint.html#lintuselessaccessmodifier
Lint/UselessAccessModifier:
ContextCreatingMethods:
- class_methods
Max: 300 # Default of 120 causes a duplicate entry in generated todo file
## Disable most Metrics/*Length cops
# Reason: those are often triggered and force significant refactors when this happend
@ -86,6 +81,11 @@ Metrics/CyclomaticComplexity:
Metrics/ParameterLists:
CountKeywordArgs: false
# Reason: Prefer seeing a variable name
# https://docs.rubocop.org/rubocop/cops_naming.html#namingblockforwarding
Naming/BlockForwarding:
EnforcedStyle: explicit
# Reason: Prevailing style is argument file paths
# https://docs.rubocop.org/rubocop-rails/cops_rails.html#railsfilepath
Rails/FilePath:
@ -96,16 +96,26 @@ Rails/FilePath:
Rails/HttpStatus:
EnforcedStyle: numeric
# Reason: Allowed in `tootctl` CLI code and in boot ENV checker
# https://docs.rubocop.org/rubocop-rails/cops_rails.html#railsexit
Rails/Exit:
# Reason: Conflicts with `Lint/UselessMethodDefinition` for inherited controller actions
# https://docs.rubocop.org/rubocop-rails/cops_rails.html#railslexicallyscopedactionfilter
Rails/LexicallyScopedActionFilter:
Exclude:
- 'config/boot.rb'
- 'lib/mastodon/cli/*.rb'
- 'app/controllers/auth/*'
Rails/SkipsModelValidations:
# Reason: These tasks are doing local work which do not need full env loaded
# https://docs.rubocop.org/rubocop-rails/cops_rails.html#railsrakeenvironment
Rails/RakeEnvironment:
Exclude:
- 'db/*migrate/**/*'
- 'lib/tasks/auto_annotate_models.rake'
- 'lib/tasks/emojis.rake'
- 'lib/tasks/mastodon.rake'
- 'lib/tasks/repo.rake'
- 'lib/tasks/statistics.rake'
# Reason: There are appropriate times to use these features
# https://docs.rubocop.org/rubocop-rails/cops_rails.html#railsskipsmodelvalidations
Rails/SkipsModelValidations:
Enabled: false
# Reason: We want to preserve the ability to migrate from arbitrary old versions,
# and cannot guarantee that every installation has run every migration as they upgrade.
@ -118,6 +128,11 @@ Rails/UnusedIgnoredColumns:
Rails/NegateInclude:
Enabled: false
# Reason: Enforce default limit, but allow some elements to span lines
# https://docs.rubocop.org/rubocop-rspec/cops_rspec.html#rspecexamplelength
RSpec/ExampleLength:
CountAsOne: ['array', 'heredoc', 'method_call']
# Reason: Deprecated cop, will be removed in 3.0, replaced by SpecFilePathFormat
# https://docs.rubocop.org/rubocop-rspec/cops_rspec.html#rspecfilepath
RSpec/FilePath:
@ -133,11 +148,6 @@ RSpec/NamedSubject:
RSpec/NotToNot:
EnforcedStyle: to_not
# Reason: Prevailing style uses numeric status codes, matches Rails/HttpStatus
# https://docs.rubocop.org/rubocop-rspec/cops_rspec_rails.html#rspecrailshttpstatus
RSpec/Rails/HttpStatus:
EnforcedStyle: numeric
# Reason: Match overrides from Rspec/FilePath rule above
# https://docs.rubocop.org/rubocop-rspec/cops_rspec.html#rspecspecfilepathformat
RSpec/SpecFilePathFormat:
@ -148,6 +158,11 @@ RSpec/SpecFilePathFormat:
OEmbedController: oembed_controller
OStatus: ostatus
# Reason: Prevailing style uses numeric status codes, matches Rails/HttpStatus
# https://docs.rubocop.org/rubocop-rspec/cops_rspec_rails.html#rspecrailshttpstatus
RSpecRails/HttpStatus:
EnforcedStyle: numeric
# Reason:
# https://docs.rubocop.org/rubocop/cops_style.html#styleclassandmodulechildren
Style/ClassAndModuleChildren:
@ -158,10 +173,25 @@ Style/ClassAndModuleChildren:
Style/Documentation:
Enabled: false
# Reason: Route redirects are not token-formatted and must be skipped
# https://docs.rubocop.org/rubocop/cops_style.html#styleformatstringtoken
Style/FormatStringToken:
inherit_mode:
merge:
- AllowedMethods # The rubocop-rails config adds `redirect`
AllowedMethods:
- redirect_with_vary
# Reason: Prevailing style choice
# https://docs.rubocop.org/rubocop/cops_style.html#stylehashaslastarrayitem
Style/HashAsLastArrayItem:
Enabled: false
# Reason: Enforce modern Ruby style
# https://docs.rubocop.org/rubocop/cops_style.html#stylehashsyntax
Style/HashSyntax:
EnforcedStyle: ruby19_no_mixed_keys
EnforcedShorthandSyntax: either
# Reason:
# https://docs.rubocop.org/rubocop/cops_style.html#stylenumericliterals
@ -181,16 +211,16 @@ Style/PercentLiteralDelimiters:
Style/RedundantBegin:
Enabled: false
# Reason: Prevailing style choice
# https://docs.rubocop.org/rubocop/cops_style.html#styleredundantfetchblock
Style/RedundantFetchBlock:
Enabled: false
# Reason: Overridden to reduce implicit StandardError rescues
# https://docs.rubocop.org/rubocop/cops_style.html#stylerescuestandarderror
Style/RescueStandardError:
EnforcedStyle: implicit
# Reason: Simplify some spec layouts
# https://docs.rubocop.org/rubocop/cops_style.html#stylesemicolon
Style/Semicolon:
AllowAsExpressionSeparator: true
# Reason: Originally disabled for CodeClimate, and no config consensus has been found
# https://docs.rubocop.org/rubocop/cops_style.html#stylesymbolarray
Style/SymbolArray:

View file

@ -1,25 +1,11 @@
# This configuration was generated by
# `rubocop --auto-gen-config --auto-gen-only-exclude --no-exclude-limit --no-offense-counts --no-auto-gen-timestamp`
# using RuboCop version 1.59.0.
# using RuboCop version 1.63.5.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
# versions of RuboCop, may require this file to be generated again.
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: TreatCommentsAsGroupSeparators, ConsiderPunctuation, Include.
# Include: **/*.gemfile, **/Gemfile, **/gems.rb
Bundler/OrderedGems:
Exclude:
- 'Gemfile'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: Max, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
# URISchemes: http, https
Layout/LineLength:
Exclude:
- 'app/models/account.rb'
Lint/NonLocalExitFromIterator:
Exclude:
- 'app/helpers/jsonld_helper.rb'
@ -43,10 +29,10 @@ Metrics/PerceivedComplexity:
# Configuration parameters: CountAsOne.
RSpec/ExampleLength:
Max: 22
Max: 18
RSpec/MultipleExpectations:
Max: 8
Max: 7
# Configuration parameters: AllowSubject.
RSpec/MultipleMemoizedHelpers:
@ -56,113 +42,10 @@ RSpec/MultipleMemoizedHelpers:
RSpec/NestedGroups:
Max: 6
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Rails/HasAndBelongsToMany:
Exclude:
- 'app/models/concerns/account/associations.rb'
- 'app/models/status.rb'
- 'app/models/tag.rb'
# Configuration parameters: Include.
# Include: app/controllers/**/*.rb, app/mailers/**/*.rb
Rails/LexicallyScopedActionFilter:
Exclude:
- 'app/controllers/auth/passwords_controller.rb'
- 'app/controllers/auth/registrations_controller.rb'
Rails/OutputSafety:
Exclude:
- 'config/initializers/simple_form.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: Include.
# Include: **/Rakefile, **/*.rake
Rails/RakeEnvironment:
Exclude:
- 'lib/tasks/auto_annotate_models.rake'
- 'lib/tasks/db.rake'
- 'lib/tasks/emojis.rake'
- 'lib/tasks/mastodon.rake'
- 'lib/tasks/repo.rake'
- 'lib/tasks/statistics.rake'
# Configuration parameters: ForbiddenMethods, AllowedMethods.
# ForbiddenMethods: decrement!, decrement_counter, increment!, increment_counter, insert, insert!, insert_all, insert_all!, toggle!, touch, touch_all, update_all, update_attribute, update_column, update_columns, update_counters, upsert, upsert_all
Rails/SkipsModelValidations:
Exclude:
- 'app/controllers/admin/invites_controller.rb'
- 'app/controllers/concerns/session_tracking_concern.rb'
- 'app/models/concerns/account/merging.rb'
- 'app/models/concerns/expireable.rb'
- 'app/models/status.rb'
- 'app/models/trends/links.rb'
- 'app/models/trends/preview_card_batch.rb'
- 'app/models/trends/preview_card_provider_batch.rb'
- 'app/models/trends/status_batch.rb'
- 'app/models/trends/statuses.rb'
- 'app/models/trends/tag_batch.rb'
- 'app/models/trends/tags.rb'
- 'app/models/user.rb'
- 'app/services/activitypub/process_status_update_service.rb'
- 'app/services/approve_appeal_service.rb'
- 'app/services/block_domain_service.rb'
- 'app/services/delete_account_service.rb'
- 'app/services/process_mentions_service.rb'
- 'app/services/unallow_domain_service.rb'
- 'app/services/unblock_domain_service.rb'
- 'app/services/update_status_service.rb'
- 'app/workers/activitypub/post_upgrade_worker.rb'
- 'app/workers/move_worker.rb'
- 'app/workers/scheduler/ip_cleanup_scheduler.rb'
- 'app/workers/scheduler/scheduled_statuses_scheduler.rb'
- 'lib/mastodon/cli/accounts.rb'
- 'lib/mastodon/cli/maintenance.rb'
- 'spec/lib/activitypub/activity/follow_spec.rb'
- 'spec/services/follow_service_spec.rb'
- 'spec/services/update_account_service_spec.rb'
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Rails/UniqueValidationWithoutIndex:
Exclude:
- 'app/models/account_alias.rb'
- 'app/models/custom_filter_status.rb'
- 'app/models/identity.rb'
- 'app/models/webauthn_credential.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: exists, where
Rails/WhereExists:
Exclude:
- 'app/controllers/activitypub/inboxes_controller.rb'
- 'app/controllers/admin/email_domain_blocks_controller.rb'
- 'app/lib/activitypub/activity/create.rb'
- 'app/lib/delivery_failure_tracker.rb'
- 'app/lib/feed_manager.rb'
- 'app/lib/status_cache_hydrator.rb'
- 'app/lib/suspicious_sign_in_detector.rb'
- 'app/models/concerns/account/interactions.rb'
- 'app/models/featured_tag.rb'
- 'app/models/poll.rb'
- 'app/models/session_activation.rb'
- 'app/models/status.rb'
- 'app/models/user.rb'
- 'app/policies/status_policy.rb'
- 'app/serializers/rest/announcement_serializer.rb'
- 'app/serializers/rest/tag_serializer.rb'
- 'app/services/activitypub/fetch_remote_status_service.rb'
- 'app/services/vote_service.rb'
- 'app/validators/reaction_validator.rb'
- 'app/validators/vote_validator.rb'
- 'app/workers/move_worker.rb'
- 'lib/tasks/tests.rake'
- 'spec/models/account_spec.rb'
- 'spec/services/activitypub/process_collection_service_spec.rb'
- 'spec/services/purge_domain_service_spec.rb'
- 'spec/services/unallow_domain_service_spec.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: AllowedMethods, AllowedPatterns.
# AllowedMethods: ==, equal?, eql?
@ -171,17 +54,12 @@ Style/ClassEqualityComparison:
- 'app/helpers/jsonld_helper.rb'
- 'app/serializers/activitypub/outbox_serializer.rb'
Style/ClassVars:
Exclude:
- 'config/initializers/devise.rb'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowedVars.
Style/FetchEnvVar:
Exclude:
- 'app/lib/redis_configuration.rb'
- 'app/lib/translation_service.rb'
- 'config/environments/development.rb'
- 'config/environments/production.rb'
- 'config/initializers/2_limited_federation_mode.rb'
- 'config/initializers/3_omniauth.rb'
@ -191,9 +69,8 @@ Style/FetchEnvVar:
- 'config/initializers/paperclip.rb'
- 'config/initializers/vapid.rb'
- 'lib/mastodon/redis_config.rb'
- 'lib/premailer_webpack_strategy.rb'
- 'lib/tasks/repo.rake'
- 'spec/features/profile_spec.rb'
- 'spec/system/profile_spec.rb'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, MaxUnannotatedPlaceholdersAllowed, AllowedMethods, AllowedPatterns.
@ -201,7 +78,6 @@ Style/FetchEnvVar:
# AllowedMethods: redirect
Style/FormatStringToken:
Exclude:
- 'app/models/privacy_policy.rb'
- 'config/initializers/devise.rb'
- 'lib/paperclip/color_extractor.rb'
@ -215,10 +91,6 @@ Style/GlobalStdStream:
# Configuration parameters: MinBodyLength, AllowConsecutiveConditionals.
Style/GuardClause:
Exclude:
- 'app/controllers/admin/confirmations_controller.rb'
- 'app/controllers/auth/confirmations_controller.rb'
- 'app/controllers/auth/passwords_controller.rb'
- 'app/controllers/settings/two_factor_authentication/webauthn_credentials_controller.rb'
- 'app/lib/activitypub/activity/block.rb'
- 'app/lib/request.rb'
- 'app/lib/request_pool.rb'
@ -242,35 +114,14 @@ Style/GuardClause:
- 'lib/mastodon/cli/accounts.rb'
- 'lib/mastodon/cli/maintenance.rb'
- 'lib/mastodon/cli/media.rb'
- 'lib/paperclip/attachment_extensions.rb'
- 'lib/tasks/repo.rake'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: braces, no_braces
Style/HashAsLastArrayItem:
Exclude:
- 'app/controllers/admin/statuses_controller.rb'
- 'app/controllers/api/v1/statuses_controller.rb'
- 'app/models/concerns/account/counters.rb'
- 'app/models/concerns/status/threading_concern.rb'
- 'app/models/status.rb'
- 'app/services/batched_remove_status_service.rb'
- 'app/services/notify_service.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
Style/HashTransformValues:
Exclude:
- 'app/serializers/rest/web_push_subscription_serializer.rb'
- 'app/services/import_service.rb'
# This cop supports safe autocorrection (--autocorrect).
Style/IfUnlessModifier:
Exclude:
- 'config/environments/production.rb'
- 'config/initializers/devise.rb'
- 'config/initializers/ffmpeg.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
Style/MapToHash:
Exclude:
@ -305,13 +156,6 @@ Style/OptionalBooleanParameter:
- 'app/workers/unfollow_follow_worker.rb'
- 'lib/mastodon/redis_config.rb'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: PreferredDelimiters.
Style/PercentLiteralDelimiters:
Exclude:
- 'config/deploy.rb'
- 'config/initializers/doorkeeper.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: short, verbose
@ -325,16 +169,6 @@ Style/RedundantConstantBase:
- 'config/environments/production.rb'
- 'config/initializers/sidekiq.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: SafeForConstants.
Style/RedundantFetchBlock:
Exclude:
- 'config/initializers/1_hosts.rb'
- 'config/initializers/chewy.rb'
- 'config/initializers/devise.rb'
- 'config/initializers/paperclip.rb'
- 'config/puma.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: ConvertCodeThatCanStartToReturnNil, AllowedMethods, MaxChainLength.
# AllowedMethods: present?, blank?, presence, try, try!
@ -342,59 +176,12 @@ Style/SafeNavigation:
Exclude:
- 'app/models/concerns/account/finder_concern.rb'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: only_raise, only_fail, semantic
Style/SignalException:
Exclude:
- 'lib/devise/strategies/two_factor_ldap_authenticatable.rb'
- 'lib/devise/strategies/two_factor_pam_authenticatable.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
Style/SingleArgumentDig:
Exclude:
- 'lib/webpacker/manifest_extensions.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: Mode.
Style/StringConcatenation:
Exclude:
- 'config/initializers/paperclip.rb'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline.
# SupportedStyles: single_quotes, double_quotes
Style/StringLiterals:
Exclude:
- 'config/environments/production.rb'
- 'config/initializers/backtrace_silencers.rb'
- 'config/initializers/http_client_proxy.rb'
- 'config/initializers/rack_attack.rb'
- 'config/initializers/webauthn.rb'
- 'config/routes.rb'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, AllowSafeAssignment.
# SupportedStyles: require_parentheses, require_no_parentheses, require_parentheses_when_complex
Style/TernaryParentheses:
Exclude:
- 'config/environments/development.rb'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyleForMultiline.
# SupportedStylesForMultiline: comma, consistent_comma, no_comma
Style/TrailingCommaInArguments:
Exclude:
- 'config/initializers/paperclip.rb'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyleForMultiline.
# SupportedStylesForMultiline: comma, consistent_comma, no_comma
Style/TrailingCommaInHashLiteral:
Exclude:
- 'config/environments/production.rb'
- 'config/environments/test.rb'
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: WordRegex.
# SupportedStyles: percent, brackets

View file

@ -1 +1 @@
3.2.2
3.3.1

View file

@ -1,22 +0,0 @@
# frozen_string_literal: true
if ENV['CI']
require 'simplecov-lcov'
SimpleCov::Formatter::LcovFormatter.config.report_with_single_file = true
SimpleCov.formatter = SimpleCov::Formatter::LcovFormatter
else
SimpleCov.formatter = SimpleCov::Formatter::HTMLFormatter
end
SimpleCov.start 'rails' do
enable_coverage :branch
add_filter 'lib/linter'
add_group 'Libraries', 'lib'
add_group 'Policies', 'app/policies'
add_group 'Presenters', 'app/presenters'
add_group 'Serializers', 'app/serializers'
add_group 'Services', 'app/services'
add_group 'Validators', 'app/validators'
end

23
.solargraph.yml Normal file
View file

@ -0,0 +1,23 @@
---
include:
- '**/*.rb'
exclude:
- spec/**/*
- test/**/*
- vendor/**/*
- '.bundle/**/*'
require: []
domains: []
reporters:
- rubocop
- require_not_found
formatter:
rubocop:
cops: safe
except: []
only: []
extra_args: []
require_paths: []
plugins:
- solargraph-rails
max_files: 5000

View file

@ -2,6 +2,101 @@
All notable changes to this project will be documented in this file.
## [4.2.7] - 2024-02-16
### Fixed
- Fix OmniAuth tests and edge cases in error handling ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/29201), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/29207))
- Fix new installs by upgrading to the latest release of the `nsa` gem, instead of a no longer existing commit ([mjankowski](https://github.com/mastodon/mastodon/pull/29065))
### Security
- Fix insufficient checking of remote posts ([GHSA-jhrq-qvrm-qr36](https://github.com/mastodon/mastodon/security/advisories/GHSA-jhrq-qvrm-qr36))
## [4.2.6] - 2024-02-14
### Security
- Update the `sidekiq-unique-jobs` dependency (see [GHSA-cmh9-rx85-xj38](https://github.com/mhenrixon/sidekiq-unique-jobs/security/advisories/GHSA-cmh9-rx85-xj38))
In addition, we have disabled the web interface for `sidekiq-unique-jobs` out of caution.
If you need it, you can re-enable it by setting `ENABLE_SIDEKIQ_UNIQUE_JOBS_UI=true`.
If you only need to clear all locks, you can now use `bundle exec rake sidekiq_unique_jobs:delete_all_locks`.
- Update the `nokogiri` dependency (see [GHSA-xc9x-jj77-9p9j](https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-xc9x-jj77-9p9j))
- Disable administrative Doorkeeper routes ([ThisIsMissEm](https://github.com/mastodon/mastodon/pull/29187))
- Fix ongoing streaming sessions not being invalidated when applications get deleted in some cases ([GHSA-7w3c-p9j8-mq3x](https://github.com/mastodon/mastodon/security/advisories/GHSA-7w3c-p9j8-mq3x))
In some rare cases, the streaming server was not notified of access tokens revocation on application deletion.
- Change external authentication behavior to never reattach a new identity to an existing user by default ([GHSA-vm39-j3vx-pch3](https://github.com/mastodon/mastodon/security/advisories/GHSA-vm39-j3vx-pch3))
Up until now, Mastodon has allowed new identities from external authentication providers to attach to an existing local user based on their verified e-mail address.
This allowed upgrading users from a database-stored password to an external authentication provider, or move from one authentication provider to another.
However, this behavior may be unexpected, and means that when multiple authentication providers are configured, the overall security would be that of the least secure authentication provider.
For these reasons, this behavior is now locked under the `ALLOW_UNSAFE_AUTH_PROVIDER_REATTACH` environment variable.
In addition, regardless of this environment variable, Mastodon will refuse to attach two identities from the same authentication provider to the same account.
## [4.2.5] - 2024-02-01
### Security
- Fix insufficient origin validation (CVE-2024-23832, [GHSA-3fjr-858r-92rw](https://github.com/mastodon/mastodon/security/advisories/GHSA-3fjr-858r-92rw))
## [4.2.4] - 2024-01-24
### Fixed
- Fix error when processing remote files with unusually long names ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28823))
- Fix processing of compacted single-item JSON-LD collections ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28816))
- Retry 401 errors on replies fetching ([ShadowJonathan](https://github.com/mastodon/mastodon/pull/28788))
- Fix `RecordNotUnique` errors in LinkCrawlWorker ([tribela](https://github.com/mastodon/mastodon/pull/28748))
- Fix Mastodon not correctly processing HTTP Signatures with query strings ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28443), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/28476))
- Fix potential redirection loop of streaming endpoint ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28665))
- Fix streaming API redirection ignoring the port of `streaming_api_base_url` ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28558))
- Fix error when processing link preview with an array as `inLanguage` ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28252))
- Fix unsupported time zone or locale preventing sign-up ([Gargron](https://github.com/mastodon/mastodon/pull/28035))
- Fix "Hide these posts from home" list setting not refreshing when switching lists ([brianholley](https://github.com/mastodon/mastodon/pull/27763))
- Fix missing background behind dismissable banner in web UI ([Gargron](https://github.com/mastodon/mastodon/pull/27479))
- Fix line wrapping of language selection button with long locale codes ([gunchleoc](https://github.com/mastodon/mastodon/pull/27100), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/27127))
- Fix `Undo Announce` activity not being sent to non-follower authors ([MitarashiDango](https://github.com/mastodon/mastodon/pull/18482))
- Fix N+1s because of association preloaders not actually getting called ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28339))
- Fix empty column explainer getting cropped under certain conditions ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28337))
- Fix `LinkCrawlWorker` error when encountering empty OEmbed response ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28268))
- Fix call to inefficient `delete_matched` cache method in domain blocks ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28367))
### Security
- Add rate-limit of TOTP authentication attempts at controller level ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28801))
## [4.2.3] - 2023-12-05
### Fixed
- Fix dependency on `json-canonicalization` version that has been made unavailable since last release
## [4.2.2] - 2023-12-04
### Changed
- Change dismissed banners to be stored server-side ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27055))
- Change GIF max matrix size error to explicitly mention GIF files ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27927))
- Change `Follow` activities delivery to bypass availability check ([ShadowJonathan](https://github.com/mastodon/mastodon/pull/27586))
- Change single-column navigation notice to be displayed outside of the logo container ([renchap](https://github.com/mastodon/mastodon/pull/27462), [renchap](https://github.com/mastodon/mastodon/pull/27476))
- Change Content-Security-Policy to be tighter on media paths ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/26889))
- Change post language code to include country code when relevant ([gunchleoc](https://github.com/mastodon/mastodon/pull/27099), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/27207))
### Fixed
- Fix upper border radius of onboarding columns ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27890))
- Fix incoming status creation date not being restricted to standard ISO8601 ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27655), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/28081))
- Fix some posts from threads received out-of-order sometimes not being inserted into timelines ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27653))
- Fix posts from force-sensitized accounts being able to trend ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27620))
- Fix error when trying to delete already-deleted file with OpenStack Swift ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27569))
- Fix batch attachment deletion when using OpenStack Swift ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27554))
- Fix processing LDSigned activities from actors with unknown public keys ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27474))
- Fix error and incorrect URLs in `/api/v1/accounts/:id/featured_tags` for remote accounts ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27459))
- Fix report processing notice not mentioning the report number when performing a custom action ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27442))
- Fix handling of `inLanguage` attribute in preview card processing ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27423))
- Fix own posts being removed from home timeline when unfollowing a used hashtag ([kmycode](https://github.com/mastodon/mastodon/pull/27391))
- Fix some link anchors being recognized as hashtags ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27271), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/27584))
- Fix format-dependent redirects being cached regardless of requested format ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27634))
## [4.2.1] - 2023-10-10
### Added

View file

@ -1,4 +1,4 @@
# syntax=docker/dockerfile:1.4
# syntax=docker/dockerfile:1.7
# Please see https://docs.docker.com/engine/reference/builder for information about
# the extended buildx capabilities used in this file.
@ -7,20 +7,20 @@
ARG TARGETPLATFORM=${TARGETPLATFORM}
ARG BUILDPLATFORM=${BUILDPLATFORM}
# Ruby image to use for base image, change with [--build-arg RUBY_VERSION="3.2.2"]
ARG RUBY_VERSION="3.2.2"
# Ruby image to use for base image, change with [--build-arg RUBY_VERSION="3.3.1"]
ARG RUBY_VERSION="3.3.1"
# # Node version to use in base image, change with [--build-arg NODE_MAJOR_VERSION="20"]
ARG NODE_MAJOR_VERSION="20"
# Debian image to use for base image, change with [--build-arg DEBIAN_VERSION="bookworm"]
ARG DEBIAN_VERSION="bookworm"
# Node image to use for base image based on combined variables (ex: 20-bookworm-slim)
FROM docker.io/node:${NODE_MAJOR_VERSION}-${DEBIAN_VERSION}-slim as node
# Ruby image to use for base image based on combined variables (ex: 3.2.2-slim-bookworm)
# Ruby image to use for base image based on combined variables (ex: 3.3.1-slim-bookworm)
FROM docker.io/ruby:${RUBY_VERSION}-slim-${DEBIAN_VERSION} as ruby
# Resulting version string is vX.X.X-MASTODON_VERSION_PRERELEASE+MASTODON_VERSION_METADATA
# Example: v4.2.0-nightly.2023.11.09+something
# Overwrite existance of 'alpha.0' in version.rb [--build-arg MASTODON_VERSION_PRERELEASE="nightly.2023.11.09"]
# Overwrite existence of 'alpha.0' in version.rb [--build-arg MASTODON_VERSION_PRERELEASE="nightly.2023.11.09"]
ARG MASTODON_VERSION_PRERELEASE=""
# Append build metadata or fork information to version.rb [--build-arg MASTODON_VERSION_METADATA="something"]
ARG MASTODON_VERSION_METADATA=""
@ -29,7 +29,7 @@ ARG MASTODON_VERSION_METADATA=""
# See: https://docs.joinmastodon.org/admin/config/#rails_serve_static_files
ARG RAILS_SERVE_STATIC_FILES="true"
# Allow to use YJIT compiler
# See: https://github.com/ruby/ruby/blob/master/doc/yjit/yjit.md
# See: https://github.com/ruby/ruby/blob/v3_2_4/doc/yjit/yjit.md
ARG RUBY_YJIT_ENABLE="1"
# Timezone used by the Docker container and runtime, change with [--build-arg TZ=Europe/Berlin]
ARG TZ="Etc/UTC"
@ -205,7 +205,12 @@ ARG TARGETPLATFORM
RUN \
# Use Ruby on Rails to create Mastodon assets
OTP_SECRET=precompile_placeholder SECRET_KEY_BASE=precompile_placeholder bundle exec rails assets:precompile; \
ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY=precompile_placeholder \
ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT=precompile_placeholder \
ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY=precompile_placeholder \
OTP_SECRET=precompile_placeholder \
SECRET_KEY_BASE=precompile_placeholder \
bundle exec rails assets:precompile; \
# Cleanup temporary files
rm -fr /opt/mastodon/tmp;

View file

@ -1,19 +1,35 @@
## ActivityPub federation in Mastodon
# Federation
## Supported federation protocols and standards
- [ActivityPub](https://www.w3.org/TR/activitypub/) (Server-to-Server)
- [WebFinger](https://webfinger.net/)
- [Http Signatures](https://datatracker.ietf.org/doc/html/draft-cavage-http-signatures)
- [NodeInfo](https://nodeinfo.diaspora.software/)
## Supported FEPs
- [FEP-67ff: FEDERATION.md](https://codeberg.org/fediverse/fep/src/branch/main/fep/67ff/fep-67ff.md)
- [FEP-f1d5: NodeInfo in Fediverse Software](https://codeberg.org/fediverse/fep/src/branch/main/fep/f1d5/fep-f1d5.md)
- [FEP-8fcf: Followers collection synchronization across servers](https://codeberg.org/fediverse/fep/src/branch/main/fep/8fcf/fep-8fcf.md)
- [FEP-5feb: Search indexing consent for actors](https://codeberg.org/fediverse/fep/src/branch/main/fep/5feb/fep-5feb.md)
## ActivityPub in Mastodon
Mastodon largely follows the ActivityPub server-to-server specification but it makes uses of some non-standard extensions, some of which are required for interacting with Mastodon at all.
Supported vocabulary: https://docs.joinmastodon.org/spec/activitypub/
- [Supported ActivityPub vocabulary](https://docs.joinmastodon.org/spec/activitypub/)
### Required extensions
#### Webfinger
#### WebFinger
In Mastodon, users are identified by a `username` and `domain` pair (e.g., `Gargron@mastodon.social`).
This is used both for discovery and for unambiguously mentioning users across the fediverse. Furthermore, this is part of Mastodon's database design from its very beginnings.
As a result, Mastodon requires that each ActivityPub actor uniquely maps back to an `acct:` URI that can be resolved via WebFinger.
More information and examples are available at: https://docs.joinmastodon.org/spec/webfinger/
- [WebFinger information and examples](https://docs.joinmastodon.org/spec/webfinger/)
#### HTTP Signatures
@ -21,11 +37,13 @@ In order to authenticate activities, Mastodon relies on HTTP Signatures, signing
Mastodon requires all `POST` requests to be signed, and MAY require `GET` requests to be signed, depending on the configuration of the Mastodon server.
More information on HTTP Signatures, as well as examples, can be found here: https://docs.joinmastodon.org/spec/security/#http
- [HTTP Signatures information and examples](https://docs.joinmastodon.org/spec/security/#http)
### Optional extensions
- Linked-Data Signatures: https://docs.joinmastodon.org/spec/security/#ld
- Bearcaps: https://docs.joinmastodon.org/spec/bearcaps/
- Followers collection synchronization: https://codeberg.org/fediverse/fep/src/branch/main/fep/8fcf/fep-8fcf.md
- Search indexing consent for actors: https://codeberg.org/fediverse/fep/src/branch/main/fep/5feb/fep-5feb.md
- [Linked-Data Signatures](https://docs.joinmastodon.org/spec/security/#ld)
- [Bearcaps](https://docs.joinmastodon.org/spec/bearcaps/)
### Additional documentation
- [Mastodon documentation](https://docs.joinmastodon.org/)

91
Gemfile
View file

@ -1,37 +1,37 @@
# frozen_string_literal: true
source 'https://rubygems.org'
ruby '>= 3.0.0'
ruby '>= 3.1.0'
gem 'puma', '~> 6.3'
gem 'rails', '~> 7.1.1'
gem 'propshaft'
gem 'thor', '~> 1.2'
gem 'puma', '~> 6.3'
gem 'rack', '~> 2.2.7'
gem 'rails', '~> 7.1.1'
gem 'thor', '~> 1.2'
# For why irb is in the Gemfile, see: https://ruby.social/@st0012/111444685161478182
gem 'irb', '~> 1.8'
gem 'dotenv'
gem 'haml-rails', '~>2.0'
gem 'pg', '~> 1.5'
gem 'pghero'
gem 'dotenv-rails', '~> 2.8'
gem 'aws-sdk-s3', '~> 1.123', require: false
gem 'blurhash', '~> 0.1'
gem 'fog-core', '<= 2.4.0'
gem 'fog-openstack', '~> 1.0', require: false
gem 'kt-paperclip', '~> 7.2'
gem 'md-paperclip-azure', '~> 2.2', require: false
gem 'blurhash', '~> 0.1'
gem 'active_model_serializers', '~> 0.10'
gem 'addressable', '~> 2.8'
gem 'bootsnap', '~> 1.17.0', require: false
gem 'bootsnap', '~> 1.18.0', require: false
gem 'browser'
gem 'charlock_holmes', '~> 0.7.7'
gem 'charlock_holmes', github: 'TheEssem/charlock_holmes', ref: '226932af4b03eb60d2e31d58b6c3efd72a3ace68'
gem 'chewy', '~> 7.3'
gem 'devise', '~> 4.9'
gem 'devise-two-factor', '~> 4.1'
gem 'devise-two-factor'
group :pam_authentication, optional: true do
gem 'devise_pam_authenticatable2', '~> 9.2'
@ -39,12 +39,11 @@ end
gem 'net-ldap', '~> 0.18'
# TODO: Point back at released omniauth-cas gem when new version is released
gem 'omniauth-cas', github: 'dlindahl/omniauth-cas', ref: '9d9d3a91b316c55d49ab6e621977f2067010c5bf'
gem 'omniauth-saml', '~> 2.0'
gem 'omniauth_openid_connect', '~> 0.6.1'
gem 'omniauth', '~> 2.0'
gem 'omniauth-cas', '~> 3.0.0.beta.1'
gem 'omniauth_openid_connect', '~> 0.6.1'
gem 'omniauth-rails_csrf_protection', '~> 1.0'
gem 'omniauth-saml', '~> 2.0'
gem 'color_diff', '~> 0.1'
gem 'csv', '~> 3.2'
@ -54,48 +53,49 @@ gem 'ed25519', '~> 1.3'
gem 'fast_blank', '~> 1.0'
gem 'fastimage'
gem 'hiredis', '~> 0.6'
gem 'redis-namespace', '~> 1.10'
gem 'htmlentities', '~> 4.3'
gem 'http', '~> 5.1'
gem 'http', '~> 5.2.0'
gem 'http_accept_language', '~> 2.1'
gem 'httplog', '~> 1.6.2'
gem 'i18n'
gem 'idn-ruby', require: 'idn'
gem 'inline_svg'
gem 'kaminari', '~> 1.2'
gem 'link_header', '~> 0.0'
gem 'mario-redis-lock', '~> 1.2', require: 'redis_lock'
gem 'mime-types', '~> 3.5.0', require: 'mime/types/columnar'
gem 'nokogiri', '~> 1.15'
gem 'nsa', github: 'jhawthorn/nsa', ref: 'e020fcc3a54d993ab45b7194d89ab720296c111b'
gem 'nsa'
gem 'oj', '~> 3.14'
gem 'ox', '~> 2.14'
gem 'parslet'
gem 'posix-spawn'
gem 'premailer-rails'
gem 'public_suffix', '~> 5.0'
gem 'pundit', '~> 2.3'
gem 'premailer-rails'
gem 'rack-attack', '~> 6.6'
gem 'rack-cors', '~> 2.0', require: 'rack/cors'
gem 'rails-i18n', '~> 7.0'
gem 'redcarpet', '~> 3.6'
gem 'redis', '~> 4.5', require: ['redis', 'redis/connection/hiredis']
gem 'mario-redis-lock', '~> 1.2', require: 'redis_lock'
gem 'redis-namespace', '~> 1.10'
gem 'rqrcode', '~> 2.2'
gem 'ruby-progressbar', '~> 1.13'
gem 'sanitize', '~> 6.0'
gem 'scenic', '~> 1.7'
gem 'sidekiq', '~> 6.5'
gem 'sidekiq-bulk', '~> 0.2.0'
gem 'sidekiq-scheduler', '~> 5.0'
gem 'sidekiq-unique-jobs', '~> 7.1'
gem 'sidekiq-bulk', '~> 0.2.0'
gem 'simple-navigation', '~> 4.4'
gem 'simple_form', '~> 5.2'
gem 'stoplight', '~> 3.0.1'
gem 'strong_migrations', '1.7.0'
gem 'simple-navigation', '~> 4.4'
gem 'stoplight', '~> 4.1'
gem 'strong_migrations', '1.8.0'
gem 'tty-prompt', '~> 0.23', require: false
gem 'twitter-text', '~> 3.1.0'
gem 'tzinfo-data', '~> 1.2023'
gem 'webauthn', '~> 3.0'
gem 'webpacker', '~> 5.4'
gem 'webpush', github: 'ClearlyClaire/webpush', ref: 'f14a4d52e201128b1b00245d11b6de80d6cfdcd9'
gem 'webauthn', '~> 3.0'
gem 'json-ld'
gem 'json-ld-preloaded', '~> 3.2'
@ -103,6 +103,24 @@ gem 'rdf-normalize', '~> 0.5'
gem 'private_address_check', '~> 0.5'
group :opentelemetry do
gem 'opentelemetry-exporter-otlp', '~> 0.26.3', require: false
gem 'opentelemetry-instrumentation-active_job', '~> 0.7.1', require: false
gem 'opentelemetry-instrumentation-active_model_serializers', '~> 0.20.1', require: false
gem 'opentelemetry-instrumentation-concurrent_ruby', '~> 0.21.2', require: false
gem 'opentelemetry-instrumentation-excon', '~> 0.22.0', require: false
gem 'opentelemetry-instrumentation-faraday', '~> 0.24.1', require: false
gem 'opentelemetry-instrumentation-http', '~> 0.23.2', require: false
gem 'opentelemetry-instrumentation-http_client', '~> 0.22.3', require: false
gem 'opentelemetry-instrumentation-net_http', '~> 0.22.4', require: false
gem 'opentelemetry-instrumentation-pg', '~> 0.27.1', require: false
gem 'opentelemetry-instrumentation-rack', '~> 0.24.1', require: false
gem 'opentelemetry-instrumentation-rails', '~> 0.30.0', require: false
gem 'opentelemetry-instrumentation-redis', '~> 0.25.3', require: false
gem 'opentelemetry-instrumentation-sidekiq', '~> 0.25.2', require: false
gem 'opentelemetry-sdk', '~> 1.4', require: false
end
group :test do
# Adds RSpec Error/Warning annotations to GitHub PRs on the Files tab
gem 'rspec-github', '~> 2.4', require: false
@ -113,8 +131,8 @@ group :test do
# RSpec helpers for email specs
gem 'email_spec'
# Extra RSpec extenion methods and helpers for sidekiq
gem 'rspec-sidekiq', '~> 4.0'
# Extra RSpec extension methods and helpers for sidekiq
gem 'rspec-sidekiq', '~> 5.0'
# Browser integration testing
gem 'capybara', '~> 3.39'
@ -124,13 +142,7 @@ group :test do
gem 'database_cleaner-active_record'
# Used to mock environment variables
gem 'climate_control', '~> 0.2'
# Generating fake data for specs
gem 'faker', '~> 3.2'
# Generate test objects for specs
gem 'fabrication', '~> 2.30'
gem 'climate_control'
# Add back helpers functions removed in Rails 5.1
gem 'rails-controller-testing', '~> 1.0'
@ -166,7 +178,7 @@ group :development do
# Preview mail in the browser
gem 'letter_opener', '~> 1.8'
gem 'letter_opener_web', '~> 2.0'
gem 'letter_opener_web', '~> 3.0'
# Security analysis CLI tools
gem 'brakeman', '~> 6.0', require: false
@ -183,6 +195,12 @@ group :development, :test do
# Interactive Debugging tools
gem 'debug', '~> 1.8'
# Generate fake data values
gem 'faker', '~> 3.2'
# Generate factory objects
gem 'fabrication', '~> 2.30'
# Profiling tools
gem 'memory_profiler', require: false
gem 'ruby-prof', require: false
@ -197,13 +215,14 @@ group :production do
gem 'lograge', '~> 0.12'
end
gem 'cocoon', '~> 1.2'
gem 'concurrent-ruby', require: false
gem 'connection_pool', require: false
gem 'xorcist', '~> 1.1'
gem 'cocoon', '~> 1.2'
gem 'net-http', '~> 0.4.0'
gem 'rubyzip', '~> 2.3'
gem 'hcaptcha', '~> 7.1'
gem 'mail', '~> 2.8'

File diff suppressed because it is too large Load diff

157
README.md
View file

@ -1,4 +1,4 @@
# <img src="https://github.com/TheEssem/mastodon/raw/main/app/javascript/icons/android-chrome-256x256.png" width="128"> Chuckya
# <img src="https://github.com/TheEssem/mastodon/raw/main/public/chuckya.png" width="128"> Chuckya
Chuckya is a close-to-upstream soft fork of Mastodon Glitch Edition (more commonly known as glitch-soc) that aims to introduce more experimental features/fixes with the goal of making the overall experience more enjoyable. Although it's mainly developed for and used on the [wetdry.world](https://wetdry.world) instance, it can be deployed by any server admin as a drop-in, backwards-compatible replacement for Mastodon.
@ -15,7 +15,6 @@ Here are some of the changes compared to glitch-soc:
- Allows dashes in custom emote names
- Emojis can be put side-by-side
- Minor media attachment tweaks
- Custom favicon
Changes previously in Chuckya that made their way into vanilla Mastodon:
@ -27,15 +26,157 @@ Original glitch-soc readme is below.
# Mastodon Glitch Edition
> Now with automated deploys!
[![Ruby Testing](https://github.com/glitch-soc/mastodon/actions/workflows/test-ruby.yml/badge.svg)](https://github.com/glitch-soc/mastodon/actions/workflows/test-ruby.yml)
[![Crowdin](https://badges.crowdin.net/glitch-soc/localized.svg)][glitch-crowdin]
[![Build Status](https://img.shields.io/circleci/project/github/glitch-soc/mastodon.svg)][circleci]
[![Code Climate](https://img.shields.io/codeclimate/maintainability/glitch-soc/mastodon.svg)][code_climate]
[circleci]: https://circleci.com/gh/glitch-soc/mastodon
[code_climate]: https://codeclimate.com/github/glitch-soc/mastodon
[glitch-crowdin]: https://crowdin.com/project/glitch-soc
So here's the deal: we all work on this code, and anyone who uses that does so absolutely at their own risk. can you dig it?
- You can view documentation for this project at [glitch-soc.github.io/docs/](https://glitch-soc.github.io/docs/).
- And contributing guidelines are available [here](CONTRIBUTING.md) and [here](https://glitch-soc.github.io/docs/contributing/).
Mastodon Glitch Edition is a fork of [Mastodon](https://github.com/mastodon/mastodon). Upstream's README file is reproduced below.
---
<h1><picture>
<source media="(prefers-color-scheme: dark)" srcset="./lib/assets/wordmark.dark.png?raw=true">
<source media="(prefers-color-scheme: light)" srcset="./lib/assets/wordmark.light.png?raw=true">
<img alt="Mastodon" src="./lib/assets/wordmark.light.png?raw=true" height="34">
</picture></h1>
[![GitHub release](https://img.shields.io/github/release/mastodon/mastodon.svg)][releases]
[![Ruby Testing](https://github.com/mastodon/mastodon/actions/workflows/test-ruby.yml/badge.svg)](https://github.com/mastodon/mastodon/actions/workflows/test-ruby.yml)
[![Crowdin](https://d322cqt584bo4o.cloudfront.net/mastodon/localized.svg)][crowdin]
[releases]: https://github.com/mastodon/mastodon/releases
[crowdin]: https://crowdin.com/project/mastodon
Mastodon is a **free, open-source social network server** based on ActivityPub where users can follow friends and discover new ones. On Mastodon, users can publish anything they want: links, pictures, text, and video. All Mastodon servers are interoperable as a federated network (users on one server can seamlessly communicate with users from another one, including non-Mastodon software that implements ActivityPub!)
Click below to **learn more** in a video:
[![Screenshot](https://blog.joinmastodon.org/2018/06/why-activitypub-is-the-future/ezgif-2-60f1b00403.gif)][youtube_demo]
[youtube_demo]: https://www.youtube.com/watch?v=IPSbNdBmWKE
## Navigation
- [Project homepage 🐘](https://joinmastodon.org)
- [Support the development via Patreon][patreon]
- [View sponsors](https://joinmastodon.org/sponsors)
- [Blog](https://blog.joinmastodon.org)
- [Documentation](https://docs.joinmastodon.org)
- [Roadmap](https://joinmastodon.org/roadmap)
- [Official Docker image](https://github.com/mastodon/mastodon/pkgs/container/mastodon)
- [Browse Mastodon servers](https://joinmastodon.org/communities)
- [Browse Mastodon apps](https://joinmastodon.org/apps)
[patreon]: https://www.patreon.com/mastodon
## Features
<img src="/app/javascript/images/elephant_ui_working.svg?raw=true" align="right" width="30%" />
### No vendor lock-in: Fully interoperable with any conforming platform
It doesn't have to be Mastodon; whatever implements ActivityPub is part of the social network! [Learn more](https://blog.joinmastodon.org/2018/06/why-activitypub-is-the-future/)
### Real-time, chronological timeline updates
Updates of people you're following appear in real-time in the UI via WebSockets. There's a firehose view as well!
### Media attachments like images and short videos
Upload and view images and WebM/MP4 videos attached to the updates. Videos with no audio track are treated like GIFs; normal videos loop continuously!
### Safety and moderation tools
Mastodon includes private posts, locked accounts, phrase filtering, muting, blocking, and all sorts of other features, along with a reporting and moderation system. [Learn more](https://blog.joinmastodon.org/2018/07/cage-the-mastodon/)
### OAuth2 and a straightforward REST API
Mastodon acts as an OAuth2 provider, so 3rd party apps can use the REST and Streaming APIs. This results in a rich app ecosystem with a lot of choices!
## Deployment
### Tech stack
- **Ruby on Rails** powers the REST API and other web pages
- **React.js** and Redux are used for the dynamic parts of the interface
- **Node.js** powers the streaming API
### Requirements
- **PostgreSQL** 12+
- **Redis** 4+
- **Ruby** 3.1+
- **Node.js** 18+
The repository includes deployment configurations for **Docker and docker-compose** as well as specific platforms like **Heroku**, **Scalingo**, and **Nanobox**. For Helm charts, reference the [mastodon/chart repository](https://github.com/mastodon/chart). The [**standalone** installation guide](https://docs.joinmastodon.org/admin/install/) is available in the documentation.
## Development
### Vagrant
A **Vagrant** configuration is included for development purposes. To use it, complete the following steps:
- Install Vagrant and Virtualbox
- Install the `vagrant-hostsupdater` plugin: `vagrant plugin install vagrant-hostsupdater`
- Run `vagrant up`
- Run `vagrant ssh -c "cd /vagrant && bin/dev"`
- Open `http://mastodon.local` in your browser
### MacOS
To set up **MacOS** for native development, complete the following steps:
- Use a Ruby version manager to install the specified version from `.ruby-version`
- Run `bundle` to install required gems
- Run `brew install postgresql@14 redis imagemagick libidn` to install required dependencies
- Navigate to Mastodon's root directory and run `brew install nvm` then `nvm use` to use the version from `.nvmrc`
- Run `yarn` to install required packages
- Run `corepack enable && corepack prepare`
- Run `RAILS_ENV=development bundle exec rails db:setup`
- Finally, run `bin/dev` which will launch the local services via `overmind` (if installed) or `foreman`
### Docker
For development with **Docker**, complete the following steps:
- Install Docker Desktop
- Run `docker compose -f .devcontainer/docker-compose.yml up -d`
- Run `docker compose -f .devcontainer/docker-compose.yml exec app .devcontainer/post-create.sh`
- Finally, run `docker compose -f .devcontainer/docker-compose.yml exec app bin/dev`
If you are using an IDE with [support for the Development Container specification](https://containers.dev/supporting), it will run the above `docker compose` commands automatically. For **Visual Studio Code** this requires the [Dev Container extension](https://containers.dev/supporting#dev-containers).
### GitHub Codespaces
To get you coding in just a few minutes, GitHub Codespaces provides a web-based version of Visual Studio Code and a cloud-hosted development environment fully configured with the software needed for this project..
- Click this button to create a new codespace:<br>
[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=52281283&devcontainer_path=.devcontainer%2Fcodespaces%2Fdevcontainer.json)
- Wait for the environment to build. This will take a few minutes.
- When the editor is ready, run `bin/dev` in the terminal.
- After a few seconds, a popup will appear with a button labeled _Open in Browser_. This will open Mastodon.
- On the _Ports_ tab, right click on the “stream” row and select _Port visibility__Public_.
## Contributing
Mastodon is **free, open-source software** licensed under **AGPLv3**.
You can open issues for bugs you've found or features you think are missing. You can also submit pull requests to this repository or submit translations using Crowdin. To get started, take a look at [CONTRIBUTING.md](CONTRIBUTING.md). If your contributions are accepted into Mastodon, you can request to be paid through [our OpenCollective](https://opencollective.com/mastodon).
**IRC channel**: #mastodon on irc.libera.chat
## License
Copyright (C) 2016-2024 Eugen Rochko & other Mastodon contributors (see [AUTHORS.md](AUTHORS.md))
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.

3
Vagrantfile vendored
View file

@ -173,6 +173,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
# Otherwise, you can access the site at http://localhost:3000 and http://localhost:4000 , http://localhost:8080
config.vm.network :forwarded_port, guest: 3000, host: 3000
config.vm.network :forwarded_port, guest: 3035, host: 3035
config.vm.network :forwarded_port, guest: 4000, host: 4000
config.vm.network :forwarded_port, guest: 8080, host: 8080
config.vm.network :forwarded_port, guest: 9200, host: 9200
@ -188,7 +189,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.post_up_message = <<MESSAGE
To start server
$ vagrant ssh -c "cd /vagrant && foreman start"
$ vagrant ssh -c "cd /vagrant && bin/dev"
MESSAGE
end

View file

@ -25,7 +25,7 @@ class AccountsController < ApplicationController
limit = params[:limit].present? ? [params[:limit].to_i, PAGE_SIZE_MAX].min : PAGE_SIZE
@statuses = filtered_statuses.without_reblogs.limit(limit)
@statuses = cache_collection(@statuses, Status)
@statuses = preload_collection(@statuses, Status)
end
format.json do
@ -46,7 +46,7 @@ class AccountsController < ApplicationController
end
def default_statuses
@account.statuses.not_local_only.where(visibility: [:public, :unlisted])
@account.statuses.not_local_only.distributable_visibility
end
def only_media_scope

View file

@ -1,6 +1,9 @@
# frozen_string_literal: true
class ActivityPub::BaseController < Api::BaseController
include SignatureVerification
include AccountOwnedConcern
skip_before_action :require_authenticated_user!
skip_before_action :require_not_suspended!
skip_around_action :set_locale

View file

@ -1,9 +1,6 @@
# frozen_string_literal: true
class ActivityPub::ClaimsController < ActivityPub::BaseController
include SignatureVerification
include AccountOwnedConcern
skip_before_action :authenticate_user!
before_action :require_account_signature!

View file

@ -1,9 +1,6 @@
# frozen_string_literal: true
class ActivityPub::CollectionsController < ActivityPub::BaseController
include SignatureVerification
include AccountOwnedConcern
vary_by -> { 'Signature' if authorized_fetch_mode? }
before_action :require_account_signature!, if: :authorized_fetch_mode?
@ -21,7 +18,7 @@ class ActivityPub::CollectionsController < ActivityPub::BaseController
def set_items
case params[:id]
when 'featured'
@items = for_signed_account { cache_collection(@account.pinned_statuses.not_local_only, Status) }
@items = for_signed_account { preload_collection(@account.pinned_statuses.not_local_only, Status) }
@items = @items.map { |item| item.distributable? ? item : ActivityPub::TagManager.instance.uri_for(item) }
when 'tags'
@items = for_signed_account { @account.featured_tags }

View file

@ -1,9 +1,6 @@
# frozen_string_literal: true
class ActivityPub::FollowersSynchronizationsController < ActivityPub::BaseController
include SignatureVerification
include AccountOwnedConcern
vary_by -> { 'Signature' if authorized_fetch_mode? }
before_action :require_account_signature!
@ -24,7 +21,7 @@ class ActivityPub::FollowersSynchronizationsController < ActivityPub::BaseContro
end
def set_items
@items = @account.followers.where(Account.arel_table[:uri].matches("#{Account.sanitize_sql_like(uri_prefix)}/%", false, true)).or(@account.followers.where(uri: uri_prefix)).pluck(:uri)
@items = @account.followers.matches_uri_prefix(uri_prefix).pluck(:uri)
end
def collection_presenter

View file

@ -1,9 +1,7 @@
# frozen_string_literal: true
class ActivityPub::InboxesController < ActivityPub::BaseController
include SignatureVerification
include JsonLdHelper
include AccountOwnedConcern
before_action :skip_unknown_actor_activity
before_action :require_actor_signature!
@ -24,7 +22,7 @@ class ActivityPub::InboxesController < ActivityPub::BaseController
def unknown_affected_account?
json = Oj.load(body, mode: :strict)
json.is_a?(Hash) && %w(Delete Update).include?(json['type']) && json['actor'].present? && json['actor'] == value_or_id(json['object']) && !Account.where(uri: json['actor']).exists?
json.is_a?(Hash) && %w(Delete Update).include?(json['type']) && json['actor'].present? && json['actor'] == value_or_id(json['object']) && !Account.exists?(uri: json['actor'])
rescue Oj::ParseError
false
end
@ -62,11 +60,10 @@ class ActivityPub::InboxesController < ActivityPub::BaseController
return if raw_params.blank? || ENV['DISABLE_FOLLOWERS_SYNCHRONIZATION'] == 'true' || signed_request_account.nil?
# Re-using the syntax for signature parameters
tree = SignatureParamsParser.new.parse(raw_params)
params = SignatureParamsTransformer.new.apply(tree)
params = SignatureParser.parse(raw_params)
ActivityPub::PrepareFollowersSynchronizationService.new.call(signed_request_account, params)
rescue Parslet::ParseFailed
rescue SignatureParser::ParsingError
Rails.logger.warn 'Error parsing Collection-Synchronization header'
end

View file

@ -3,9 +3,6 @@
class ActivityPub::OutboxesController < ActivityPub::BaseController
LIMIT = 20
include SignatureVerification
include AccountOwnedConcern
vary_by -> { 'Signature' if authorized_fetch_mode? || page_requested? }
before_action :require_account_signature!, if: :authorized_fetch_mode?
@ -63,7 +60,7 @@ class ActivityPub::OutboxesController < ActivityPub::BaseController
def set_statuses
return unless page_requested?
@statuses = cache_collection_paginated_by_id(
@statuses = preload_collection_paginated_by_id(
AccountStatusesFilter.new(@account, signed_request_account).results,
Status,
LIMIT,

View file

@ -1,9 +1,7 @@
# frozen_string_literal: true
class ActivityPub::RepliesController < ActivityPub::BaseController
include SignatureVerification
include Authorization
include AccountOwnedConcern
DESCENDANTS_LIMIT = 60
@ -33,7 +31,7 @@ class ActivityPub::RepliesController < ActivityPub::BaseController
def set_replies
@replies = only_other_accounts? ? Status.where.not(account_id: @account.id).joins(:account).merge(Account.without_suspended) : @account.statuses
@replies = @replies.where(in_reply_to_id: @status.id, visibility: [:public, :unlisted])
@replies = @replies.distributable_visibility.where(in_reply_to_id: @status.id)
@replies = @replies.paginate_by_min_id(DESCENDANTS_LIMIT, params[:min_id])
end

View file

@ -128,7 +128,7 @@ module Admin
def unblock_email
authorize @account, :unblock_email?
CanonicalEmailBlock.where(reference_account: @account).delete_all
CanonicalEmailBlock.matching_account(@account).delete_all
log_action :unblock_email, @account

View file

@ -6,7 +6,7 @@ module Admin
def index
authorize :audit_log, :index?
@auditable_accounts = Account.where(id: Admin::ActionLog.select('distinct account_id')).select(:id, :username)
@auditable_accounts = Account.auditable.select(:id, :username)
end
private

View file

@ -7,7 +7,6 @@ module Admin
layout 'admin'
before_action :set_pack
before_action :set_body_classes
before_action :set_cache_headers
@ -19,10 +18,6 @@ module Admin
@body_classes = 'admin'
end
def set_pack
use_pack 'admin'
end
def set_cache_headers
response.cache_control.replace(private: true, no_store: true)
end

View file

@ -3,11 +3,11 @@
module Admin
class ConfirmationsController < BaseController
before_action :set_user
before_action :check_confirmation, only: [:resend]
before_action :redirect_confirmed_user, only: [:resend], if: :user_confirmed?
def create
authorize @user, :confirm?
@user.confirm!
@user.mark_email_as_confirmed!
log_action :confirm, @user
redirect_to admin_accounts_path
end
@ -25,11 +25,13 @@ module Admin
private
def check_confirmation
if @user.confirmed?
flash[:error] = I18n.t('admin.accounts.resend_confirmation.already_confirmed')
redirect_to admin_accounts_path
end
def redirect_confirmed_user
flash[:error] = I18n.t('admin.accounts.resend_confirmation.already_confirmed')
redirect_to admin_accounts_path
end
def user_confirmed?
@user.confirmed?
end
end
end

View file

@ -25,6 +25,8 @@ class Admin::DomainAllowsController < Admin::BaseController
def destroy
authorize @domain_allow, :destroy?
UnallowDomainService.new.call(@domain_allow)
log_action :destroy, @domain_allow
redirect_to admin_instances_path, notice: I18n.t('admin.domain_allows.destroyed_msg')
end

View file

@ -38,7 +38,7 @@ module Admin
log_action :create, @email_domain_block
(@email_domain_block.other_domains || []).uniq.each do |domain|
next if EmailDomainBlock.where(domain: domain).exists?
next if EmailDomainBlock.exists?(domain: domain)
other_email_domain_block = EmailDomainBlock.create!(domain: domain, allow_with_approval: @email_domain_block.allow_with_approval, parent: @email_domain_block)
log_action :create, other_email_domain_block

View file

@ -49,7 +49,7 @@ module Admin
next
end
@warning_domains = Instance.where(domain: @domain_blocks.map(&:domain)).where('EXISTS (SELECT 1 FROM follows JOIN accounts ON follows.account_id = accounts.id OR follows.target_account_id = accounts.id WHERE accounts.domain = instances.domain)').pluck(:domain)
@warning_domains = instances_from_imported_blocks.pluck(:domain)
rescue ActionController::ParameterMissing
flash.now[:alert] = I18n.t('admin.export_domain_blocks.no_file')
set_dummy_import!
@ -58,6 +58,10 @@ module Admin
private
def instances_from_imported_blocks
Instance.with_domain_follows(@domain_blocks.map(&:domain))
end
def export_filename
'domain_blocks.csv'
end

View file

@ -53,7 +53,7 @@ module Admin
end
def resource_params
params.require(:rule).permit(:text, :priority)
params.require(:rule).permit(:text, :hint, :priority)
end
end
end

View file

@ -9,7 +9,7 @@ module Admin
@site_upload.destroy!
redirect_to admin_settings_path, notice: I18n.t('admin.site_uploads.destroyed_msg')
redirect_back fallback_location: admin_settings_path, notice: I18n.t('admin.site_uploads.destroyed_msg')
end
private

View file

@ -8,6 +8,8 @@ class Api::BaseController < ApplicationController
include Api::AccessTokenTrackingConcern
include Api::CachingConcern
include Api::ContentSecurityPolicy
include Api::ErrorHandling
include Api::Pagination
skip_before_action :require_functional!, unless: :limited_federation_mode?
@ -18,51 +20,6 @@ class Api::BaseController < ApplicationController
protect_from_forgery with: :null_session
rescue_from ActiveRecord::RecordInvalid, Mastodon::ValidationError do |e|
render json: { error: e.to_s }, status: 422
end
rescue_from ActiveRecord::RecordNotUnique do
render json: { error: 'Duplicate record' }, status: 422
end
rescue_from Date::Error do
render json: { error: 'Invalid date supplied' }, status: 422
end
rescue_from ActiveRecord::RecordNotFound do
render json: { error: 'Record not found' }, status: 404
end
rescue_from HTTP::Error, Mastodon::UnexpectedResponseError do
render json: { error: 'Remote data could not be fetched' }, status: 503
end
rescue_from OpenSSL::SSL::SSLError do
render json: { error: 'Remote SSL certificate could not be verified' }, status: 503
end
rescue_from Mastodon::NotPermittedError do
render json: { error: 'This action is not allowed' }, status: 403
end
rescue_from Seahorse::Client::NetworkingError do |e|
Rails.logger.warn "Storage server error: #{e}"
render json: { error: 'There was a temporary problem serving your request, please try again' }, status: 503
end
rescue_from Mastodon::RaceConditionError, Stoplight::Error::RedLight do
render json: { error: 'There was a temporary problem serving your request, please try again' }, status: 503
end
rescue_from Mastodon::RateLimitExceededError do
render json: { error: I18n.t('errors.429') }, status: 429
end
rescue_from ActionController::ParameterMissing, Mastodon::InvalidParameterError do |e|
render json: { error: e.to_s }, status: 400
end
def doorkeeper_unauthorized_render_options(error: nil)
{ json: { error: error.try(:description) || 'Not authorized' } }
end
@ -73,13 +30,6 @@ class Api::BaseController < ApplicationController
protected
def set_pagination_headers(next_path = nil, prev_path = nil)
links = []
links << [next_path, [%w(rel next)]] if next_path
links << [prev_path, [%w(rel prev)]] if prev_path
response.headers['Link'] = LinkHeader.new(links) unless links.empty?
end
def limit_param(default_limit)
return default_limit unless params[:limit]
@ -108,10 +58,6 @@ class Api::BaseController < ApplicationController
render json: { error: 'Your login is currently disabled' }, status: 403 if current_user&.account&.unavailable?
end
def require_valid_pagination_options!
render json: { error: 'Pagination values for `offset` and `limit` must be positive' }, status: 400 if pagination_options_invalid?
end
def require_user!
if !current_user
render json: { error: 'This method requires an authenticated user' }, status: 422
@ -140,10 +86,6 @@ class Api::BaseController < ApplicationController
private
def pagination_options_invalid?
params.slice(:limit, :offset).values.map(&:to_i).any?(&:negative?)
end
def respond_with_error(code)
render json: { error: Rack::Utils::HTTP_STATUS_CODES[code] }, status: code
end

View file

@ -1,7 +1,7 @@
# frozen_string_literal: true
class Api::V1::Accounts::CredentialsController < Api::BaseController
before_action -> { doorkeeper_authorize! :read, :'read:accounts' }, except: [:update]
before_action -> { doorkeeper_authorize! :read, :'read:accounts', :'read:me' }, except: [:update]
before_action -> { doorkeeper_authorize! :write, :'write:accounts' }, only: [:update]
before_action :require_user!

View file

@ -21,7 +21,7 @@ class Api::V1::Accounts::FollowerAccountsController < Api::BaseController
return [] if hide_results?
scope = default_accounts
scope = scope.where.not(id: current_account.excluded_from_timeline_account_ids) unless current_account.nil? || current_account.id == @account.id
scope = scope.not_excluded_by_account(current_account) unless current_account.nil? || current_account.id == @account.id
scope.merge(paginated_follows).to_a
end
@ -30,7 +30,7 @@ class Api::V1::Accounts::FollowerAccountsController < Api::BaseController
end
def default_accounts
Account.includes(:active_relationships, :account_stat).references(:active_relationships)
Account.includes(:active_relationships, :account_stat, :user).references(:active_relationships)
end
def paginated_follows
@ -41,10 +41,6 @@ class Api::V1::Accounts::FollowerAccountsController < Api::BaseController
)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_account_followers_url pagination_params(max_id: pagination_max_id) if records_continue?
end

View file

@ -21,7 +21,7 @@ class Api::V1::Accounts::FollowingAccountsController < Api::BaseController
return [] if hide_results?
scope = default_accounts
scope = scope.where.not(id: current_account.excluded_from_timeline_account_ids) unless current_account.nil? || current_account.id == @account.id
scope = scope.not_excluded_by_account(current_account) unless current_account.nil? || current_account.id == @account.id
scope.merge(paginated_follows).to_a
end
@ -30,7 +30,7 @@ class Api::V1::Accounts::FollowingAccountsController < Api::BaseController
end
def default_accounts
Account.includes(:passive_relationships, :account_stat).references(:passive_relationships)
Account.includes(:passive_relationships, :account_stat, :user).references(:passive_relationships)
end
def paginated_follows
@ -41,10 +41,6 @@ class Api::V1::Accounts::FollowingAccountsController < Api::BaseController
)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_account_following_index_url pagination_params(max_id: pagination_max_id) if records_continue?
end

View file

@ -4,7 +4,7 @@ class Api::V1::Accounts::StatusesController < Api::BaseController
before_action -> { authorize_if_got_token! :read, :'read:statuses' }
before_action :set_account
after_action :insert_pagination_headers, unless: -> { truthy_param?(:pinned) }
after_action :insert_pagination_headers
def index
cache_if_unauthenticated!
@ -19,11 +19,11 @@ class Api::V1::Accounts::StatusesController < Api::BaseController
end
def load_statuses
@account.unavailable? ? [] : cached_account_statuses
@account.unavailable? ? [] : preloaded_account_statuses
end
def cached_account_statuses
cache_collection_paginated_by_id(
def preloaded_account_statuses
preload_collection_paginated_by_id(
AccountStatusesFilter.new(@account, current_account, params).results,
Status,
limit_param(DEFAULT_STATUSES_LIMIT),
@ -35,10 +35,6 @@ class Api::V1::Accounts::StatusesController < Api::BaseController
params.slice(:limit, *AccountStatusesFilter::KEYS).permit(:limit, *AccountStatusesFilter::KEYS).merge(core_params)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_account_statuses_url pagination_params(max_id: pagination_max_id) if records_continue?
end
@ -51,11 +47,7 @@ class Api::V1::Accounts::StatusesController < Api::BaseController
@statuses.size == limit_param(DEFAULT_STATUSES_LIMIT)
end
def pagination_max_id
@statuses.last.id
end
def pagination_since_id
@statuses.first.id
def pagination_collection
@statuses
end
end

View file

@ -9,16 +9,22 @@ class Api::V1::AccountsController < Api::BaseController
before_action -> { doorkeeper_authorize! :follow, :write, :'write:blocks' }, only: [:block, :unblock]
before_action -> { doorkeeper_authorize! :write, :'write:accounts' }, only: [:create]
before_action :require_user!, except: [:show, :create]
before_action :set_account, except: [:create]
before_action :check_account_approval, except: [:create]
before_action :check_account_confirmation, except: [:create]
before_action :require_user!, except: [:index, :show, :create]
before_action :set_account, except: [:index, :create]
before_action :set_accounts, only: [:index]
before_action :check_account_approval, except: [:index, :create]
before_action :check_account_confirmation, except: [:index, :create]
before_action :check_enabled_registrations, only: [:create]
before_action :check_accounts_limit, only: [:index]
skip_before_action :require_authenticated_user!, only: :create
override_rate_limit_headers :follow, family: :follows
def index
render json: @accounts, each_serializer: REST::AccountSerializer
end
def show
cache_if_unauthenticated!
render json: @account, serializer: REST::AccountSerializer
@ -79,6 +85,10 @@ class Api::V1::AccountsController < Api::BaseController
@account = Account.find(params[:id])
end
def set_accounts
@accounts = Account.where(id: account_ids).without_unapproved
end
def check_account_approval
raise(ActiveRecord::RecordNotFound) if @account.local? && @account.user_pending?
end
@ -87,10 +97,22 @@ class Api::V1::AccountsController < Api::BaseController
raise(ActiveRecord::RecordNotFound) if @account.local? && !@account.user_confirmed?
end
def check_accounts_limit
raise(Mastodon::ValidationError) if account_ids.size > DEFAULT_ACCOUNTS_LIMIT
end
def relationships(**options)
AccountRelationshipsPresenter.new([@account], current_user.account_id, **options)
end
def account_ids
Array(accounts_params[:ids]).uniq.map(&:to_i)
end
def accounts_params
params.permit(ids: [])
end
def account_params
params.permit(:username, :email, :password, :agreement, :locale, :reason, :time_zone, :invite_code)
end

View file

@ -125,10 +125,6 @@ class Api::V1::Admin::AccountsController < Api::BaseController
translated_params
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_admin_accounts_url(pagination_params(max_id: pagination_max_id)) if records_continue?
end
@ -137,12 +133,8 @@ class Api::V1::Admin::AccountsController < Api::BaseController
api_v1_admin_accounts_url(pagination_params(min_id: pagination_since_id)) unless @accounts.empty?
end
def pagination_max_id
@accounts.last.id
end
def pagination_since_id
@accounts.first.id
def pagination_collection
@accounts
end
def records_continue?

View file

@ -65,10 +65,6 @@ class Api::V1::Admin::CanonicalEmailBlocksController < Api::BaseController
@canonical_email_block = CanonicalEmailBlock.find(params[:id])
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_admin_canonical_email_blocks_url(pagination_params(max_id: pagination_max_id)) if records_continue?
end
@ -77,12 +73,8 @@ class Api::V1::Admin::CanonicalEmailBlocksController < Api::BaseController
api_v1_admin_canonical_email_blocks_url(pagination_params(min_id: pagination_since_id)) unless @canonical_email_blocks.empty?
end
def pagination_max_id
@canonical_email_blocks.last.id
end
def pagination_since_id
@canonical_email_blocks.first.id
def pagination_collection
@canonical_email_blocks
end
def records_continue?

View file

@ -61,10 +61,6 @@ class Api::V1::Admin::DomainAllowsController < Api::BaseController
DomainAllow.all
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_admin_domain_allows_url(pagination_params(max_id: pagination_max_id)) if records_continue?
end
@ -73,12 +69,8 @@ class Api::V1::Admin::DomainAllowsController < Api::BaseController
api_v1_admin_domain_allows_url(pagination_params(min_id: pagination_since_id)) unless @domain_allows.empty?
end
def pagination_max_id
@domain_allows.last.id
end
def pagination_since_id
@domain_allows.first.id
def pagination_collection
@domain_allows
end
def records_continue?

View file

@ -29,10 +29,11 @@ class Api::V1::Admin::DomainBlocksController < Api::BaseController
def create
authorize :domain_block, :create?
@domain_block = DomainBlock.new(resource_params)
existing_domain_block = resource_params[:domain].present? ? DomainBlock.rule_for(resource_params[:domain]) : nil
return render json: existing_domain_block, serializer: REST::Admin::ExistingDomainBlockErrorSerializer, status: 422 if existing_domain_block.present?
return render json: existing_domain_block, serializer: REST::Admin::ExistingDomainBlockErrorSerializer, status: 422 if conflicts_with_existing_block?(@domain_block, existing_domain_block)
@domain_block = DomainBlock.create!(resource_params)
@domain_block.save!
DomainBlockWorker.perform_async(@domain_block.id)
log_action :create, @domain_block
render json: @domain_block, serializer: REST::Admin::DomainBlockSerializer
@ -55,6 +56,10 @@ class Api::V1::Admin::DomainBlocksController < Api::BaseController
private
def conflicts_with_existing_block?(domain_block, existing_domain_block)
existing_domain_block.present? && (existing_domain_block.domain == TagManager.instance.normalize_domain(domain_block.domain) || !domain_block.stricter_than?(existing_domain_block))
end
def set_domain_blocks
@domain_blocks = filtered_domain_blocks.order(id: :desc).to_a_paginated_by_id(limit_param(LIMIT), params_slice(:max_id, :since_id, :min_id))
end
@ -72,10 +77,6 @@ class Api::V1::Admin::DomainBlocksController < Api::BaseController
params.permit(:severity, :reject_media, :reject_reports, :private_comment, :public_comment, :obfuscate)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_admin_domain_blocks_url(pagination_params(max_id: pagination_max_id)) if records_continue?
end
@ -84,12 +85,8 @@ class Api::V1::Admin::DomainBlocksController < Api::BaseController
api_v1_admin_domain_blocks_url(pagination_params(min_id: pagination_since_id)) unless @domain_blocks.empty?
end
def pagination_max_id
@domain_blocks.last.id
end
def pagination_since_id
@domain_blocks.first.id
def pagination_collection
@domain_blocks
end
def records_continue?

View file

@ -58,10 +58,6 @@ class Api::V1::Admin::EmailDomainBlocksController < Api::BaseController
params.permit(:domain, :allow_with_approval)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_admin_email_domain_blocks_url(pagination_params(max_id: pagination_max_id)) if records_continue?
end
@ -70,12 +66,8 @@ class Api::V1::Admin::EmailDomainBlocksController < Api::BaseController
api_v1_admin_email_domain_blocks_url(pagination_params(min_id: pagination_since_id)) unless @email_domain_blocks.empty?
end
def pagination_max_id
@email_domain_blocks.last.id
end
def pagination_since_id
@email_domain_blocks.first.id
def pagination_collection
@email_domain_blocks
end
def records_continue?

View file

@ -63,10 +63,6 @@ class Api::V1::Admin::IpBlocksController < Api::BaseController
params.permit(:ip, :severity, :comment, :expires_in)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_admin_ip_blocks_url(pagination_params(max_id: pagination_max_id)) if records_continue?
end
@ -75,12 +71,8 @@ class Api::V1::Admin::IpBlocksController < Api::BaseController
api_v1_admin_ip_blocks_url(pagination_params(min_id: pagination_since_id)) unless @ip_blocks.empty?
end
def pagination_max_id
@ip_blocks.last.id
end
def pagination_since_id
@ip_blocks.first.id
def pagination_collection
@ip_blocks
end
def records_continue?

View file

@ -35,6 +35,7 @@ class Api::V1::Admin::ReportsController < Api::BaseController
def update
authorize @report, :update?
@report.update!(report_params)
log_action :update, @report
render json: @report, serializer: REST::Admin::ReportSerializer
end
@ -88,10 +89,6 @@ class Api::V1::Admin::ReportsController < Api::BaseController
params.permit(*FILTER_PARAMS)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_admin_reports_url(pagination_params(max_id: pagination_max_id)) if records_continue?
end
@ -100,12 +97,8 @@ class Api::V1::Admin::ReportsController < Api::BaseController
api_v1_admin_reports_url(pagination_params(min_id: pagination_since_id)) unless @reports.empty?
end
def pagination_max_id
@reports.last.id
end
def pagination_since_id
@reports.first.id
def pagination_collection
@reports
end
def records_continue?

View file

@ -44,10 +44,6 @@ class Api::V1::Admin::TagsController < Api::BaseController
params.permit(:display_name, :trendable, :usable, :listable)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_admin_tags_url(pagination_params(max_id: pagination_max_id)) if records_continue?
end
@ -56,12 +52,8 @@ class Api::V1::Admin::TagsController < Api::BaseController
api_v1_admin_tags_url(pagination_params(min_id: pagination_since_id)) unless @tags.empty?
end
def pagination_max_id
@tags.last.id
end
def pagination_since_id
@tags.first.id
def pagination_collection
@tags
end
def records_continue?

View file

@ -42,10 +42,6 @@ class Api::V1::Admin::Trends::Links::PreviewCardProvidersController < Api::BaseC
@providers = PreviewCardProvider.all.to_a_paginated_by_id(limit_param(LIMIT), params_slice(:max_id, :since_id, :min_id))
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_admin_trends_links_preview_card_providers_url(pagination_params(max_id: pagination_max_id)) if records_continue?
end
@ -54,12 +50,8 @@ class Api::V1::Admin::Trends::Links::PreviewCardProvidersController < Api::BaseC
api_v1_admin_trends_links_preview_card_providers_url(pagination_params(min_id: pagination_since_id)) unless @providers.empty?
end
def pagination_max_id
@providers.last.id
end
def pagination_since_id
@providers.first.id
def pagination_collection
@providers
end
def records_continue?

View file

@ -0,0 +1,30 @@
# frozen_string_literal: true
class Api::V1::AnnualReportsController < Api::BaseController
before_action -> { doorkeeper_authorize! :read, :'read:accounts' }, only: :index
before_action -> { doorkeeper_authorize! :write, :'write:accounts' }, except: :index
before_action :require_user!
before_action :set_annual_report, except: :index
def index
with_read_replica do
@presenter = AnnualReportsPresenter.new(GeneratedAnnualReport.where(account_id: current_account.id).pending)
@relationships = StatusRelationshipsPresenter.new(@presenter.statuses, current_account.id)
end
render json: @presenter,
serializer: REST::AnnualReportsSerializer,
relationships: @relationships
end
def read
@annual_report.view!
render_empty
end
private
def set_annual_report
@annual_report = GeneratedAnnualReport.find_by!(account_id: current_account.id, year: params[:id])
end
end

View file

@ -4,6 +4,6 @@ class Api::V1::Apps::CredentialsController < Api::BaseController
def show
return doorkeeper_render_error unless valid_doorkeeper_token?
render json: doorkeeper_token.application, serializer: REST::ApplicationSerializer, fields: %i(name website vapid_key client_id scopes)
render json: doorkeeper_token.application, serializer: REST::ApplicationSerializer
end
end

View file

@ -5,7 +5,7 @@ class Api::V1::AppsController < Api::BaseController
def create
@app = Doorkeeper::Application.create!(application_options)
render json: @app, serializer: REST::ApplicationSerializer
render json: @app, serializer: REST::CredentialApplicationSerializer
end
private
@ -24,6 +24,6 @@ class Api::V1::AppsController < Api::BaseController
end
def app_params
params.permit(:client_name, :redirect_uris, :scopes, :website)
params.permit(:client_name, :scopes, :website, :redirect_uris, redirect_uris: [])
end
end

View file

@ -17,7 +17,7 @@ class Api::V1::BlocksController < Api::BaseController
end
def paginated_blocks
@paginated_blocks ||= Block.eager_load(target_account: :account_stat)
@paginated_blocks ||= Block.eager_load(target_account: [:account_stat, :user])
.joins(:target_account)
.merge(Account.without_suspended)
.where(account: current_account)
@ -28,10 +28,6 @@ class Api::V1::BlocksController < Api::BaseController
)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_blocks_url pagination_params(max_id: pagination_max_id) if records_continue?
end
@ -40,12 +36,8 @@ class Api::V1::BlocksController < Api::BaseController
api_v1_blocks_url pagination_params(since_id: pagination_since_id) unless paginated_blocks.empty?
end
def pagination_max_id
paginated_blocks.last.id
end
def pagination_since_id
paginated_blocks.first.id
def pagination_collection
paginated_blocks
end
def records_continue?

View file

@ -13,11 +13,11 @@ class Api::V1::BookmarksController < Api::BaseController
private
def load_statuses
cached_bookmarks
preloaded_bookmarks
end
def cached_bookmarks
cache_collection(results.map(&:status), Status)
def preloaded_bookmarks
preload_collection(results.map(&:status), Status)
end
def results
@ -31,10 +31,6 @@ class Api::V1::BookmarksController < Api::BaseController
current_account.bookmarks
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_bookmarks_url pagination_params(max_id: pagination_max_id) if records_continue?
end
@ -43,12 +39,8 @@ class Api::V1::BookmarksController < Api::BaseController
api_v1_bookmarks_url pagination_params(min_id: pagination_since_id) unless results.empty?
end
def pagination_max_id
results.last.id
end
def pagination_since_id
results.first.id
def pagination_collection
results
end
def records_continue?

View file

@ -53,10 +53,6 @@ class Api::V1::ConversationsController < Api::BaseController
.to_a_paginated_by_id(limit_param(LIMIT), params_slice(:max_id, :since_id, :min_id))
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_conversations_url pagination_params(max_id: pagination_max_id) if records_continue?
end

View file

@ -29,10 +29,6 @@ class Api::V1::Crypto::EncryptedMessagesController < Api::BaseController
@encrypted_messages = @current_device.encrypted_messages.to_a_paginated_by_id(limit_param(LIMIT), params_slice(:max_id, :since_id, :min_id))
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_crypto_encrypted_messages_url pagination_params(max_id: pagination_max_id) if records_continue?
end
@ -41,12 +37,8 @@ class Api::V1::Crypto::EncryptedMessagesController < Api::BaseController
api_v1_crypto_encrypted_messages_url pagination_params(min_id: pagination_since_id) unless @encrypted_messages.empty?
end
def pagination_max_id
@encrypted_messages.last.id
end
def pagination_since_id
@encrypted_messages.first.id
def pagination_collection
@encrypted_messages
end
def records_continue?

View file

@ -27,7 +27,7 @@ class Api::V1::DirectoriesController < Api::BaseController
scope.merge!(local_account_scope) if local_accounts?
scope.merge!(account_exclusion_scope) if current_account
scope.merge!(account_domain_block_scope) if current_account && !local_accounts?
end
end.includes(:account_stat, user: :role)
end
def local_accounts?

View file

@ -38,10 +38,6 @@ class Api::V1::DomainBlocksController < Api::BaseController
current_account.domain_blocks
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_domain_blocks_url pagination_params(max_id: pagination_max_id) if records_continue?
end
@ -50,12 +46,8 @@ class Api::V1::DomainBlocksController < Api::BaseController
api_v1_domain_blocks_url pagination_params(since_id: pagination_since_id) unless @blocks.empty?
end
def pagination_max_id
@blocks.last.id
end
def pagination_since_id
@blocks.first.id
def pagination_collection
@blocks
end
def records_continue?

View file

@ -25,11 +25,7 @@ class Api::V1::EndorsementsController < Api::BaseController
end
def endorsed_accounts
current_account.endorsed_accounts.includes(:account_stat).without_suspended
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
current_account.endorsed_accounts.includes(:account_stat, :user).without_suspended
end
def next_path
@ -44,12 +40,8 @@ class Api::V1::EndorsementsController < Api::BaseController
api_v1_endorsements_url pagination_params(since_id: pagination_since_id) unless @accounts.empty?
end
def pagination_max_id
@accounts.last.id
end
def pagination_since_id
@accounts.first.id
def pagination_collection
@accounts
end
def records_continue?

View file

@ -13,11 +13,11 @@ class Api::V1::FavouritesController < Api::BaseController
private
def load_statuses
cached_favourites
preloaded_favourites
end
def cached_favourites
cache_collection(results.map(&:status), Status)
def preloaded_favourites
preload_collection(results.map(&:status), Status)
end
def results
@ -31,10 +31,6 @@ class Api::V1::FavouritesController < Api::BaseController
current_account.favourites
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_favourites_url pagination_params(max_id: pagination_max_id) if records_continue?
end
@ -43,12 +39,8 @@ class Api::V1::FavouritesController < Api::BaseController
api_v1_favourites_url pagination_params(min_id: pagination_since_id) unless results.empty?
end
def pagination_max_id
results.last.id
end
def pagination_since_id
results.first.id
def pagination_collection
results
end
def records_continue?

View file

@ -12,6 +12,6 @@ class Api::V1::FeaturedTags::SuggestionsController < Api::BaseController
private
def set_recently_used_tags
@recently_used_tags = Tag.recently_used(current_account).where.not(id: current_account.featured_tags).limit(10)
@recently_used_tags = Tag.suggestions_for_account(current_account).limit(10)
end
end

View file

@ -37,7 +37,7 @@ class Api::V1::FollowRequestsController < Api::BaseController
end
def default_accounts
Account.without_suspended.includes(:follow_requests, :account_stat).references(:follow_requests)
Account.without_suspended.includes(:follow_requests, :account_stat, :user).references(:follow_requests)
end
def paginated_follow_requests
@ -48,10 +48,6 @@ class Api::V1::FollowRequestsController < Api::BaseController
)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_follow_requests_url pagination_params(max_id: pagination_max_id) if records_continue?
end

View file

@ -22,10 +22,6 @@ class Api::V1::FollowedTagsController < Api::BaseController
)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_followed_tags_url pagination_params(max_id: pagination_max_id) if records_continue?
end
@ -34,12 +30,8 @@ class Api::V1::FollowedTagsController < Api::BaseController
api_v1_followed_tags_url pagination_params(since_id: pagination_since_id) unless @results.empty?
end
def pagination_max_id
@results.last.id
end
def pagination_since_id
@results.first.id
def pagination_collection
@results
end
def records_continue?

View file

@ -37,9 +37,9 @@ class Api::V1::Lists::AccountsController < Api::BaseController
def load_accounts
if unlimited?
@list.accounts.without_suspended.includes(:account_stat).all
@list.accounts.without_suspended.includes(:account_stat, :user).all
else
@list.accounts.without_suspended.includes(:account_stat).paginate_by_max_id(limit_param(DEFAULT_ACCOUNTS_LIMIT), params[:max_id], params[:since_id])
@list.accounts.without_suspended.includes(:account_stat, :user).paginate_by_max_id(limit_param(DEFAULT_ACCOUNTS_LIMIT), params[:max_id], params[:since_id])
end
end
@ -55,10 +55,6 @@ class Api::V1::Lists::AccountsController < Api::BaseController
params.permit(account_ids: [])
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
return if unlimited?
@ -71,12 +67,8 @@ class Api::V1::Lists::AccountsController < Api::BaseController
api_v1_list_accounts_url pagination_params(since_id: pagination_since_id) unless @accounts.empty?
end
def pagination_max_id
@accounts.last.id
end
def pagination_since_id
@accounts.first.id
def pagination_collection
@accounts
end
def records_continue?

View file

@ -19,7 +19,7 @@ class Api::V1::MarkersController < Api::BaseController
@markers = {}
resource_params.each_pair do |timeline, timeline_params|
@markers[timeline] = current_user.markers.find_or_initialize_by(timeline: timeline)
@markers[timeline] = current_user.markers.find_or_create_by(timeline: timeline)
@markers[timeline].update!(timeline_params)
end
end

View file

@ -17,7 +17,7 @@ class Api::V1::MutesController < Api::BaseController
end
def paginated_mutes
@paginated_mutes ||= Mute.eager_load(:target_account)
@paginated_mutes ||= Mute.eager_load(target_account: [:account_stat, :user])
.joins(:target_account)
.merge(Account.without_suspended)
.where(account: current_account)
@ -28,10 +28,6 @@ class Api::V1::MutesController < Api::BaseController
)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_mutes_url pagination_params(max_id: pagination_max_id) if records_continue?
end
@ -40,12 +36,8 @@ class Api::V1::MutesController < Api::BaseController
api_v1_mutes_url pagination_params(since_id: pagination_since_id) unless paginated_mutes.empty?
end
def pagination_max_id
paginated_mutes.last.id
end
def pagination_since_id
paginated_mutes.first.id
def pagination_collection
paginated_mutes
end
def records_continue?

View file

@ -0,0 +1,37 @@
# frozen_string_literal: true
class Api::V1::Notifications::PoliciesController < Api::BaseController
before_action -> { doorkeeper_authorize! :read, :'read:notifications' }, only: :show
before_action -> { doorkeeper_authorize! :write, :'write:notifications' }, only: :update
before_action :require_user!
before_action :set_policy
def show
render json: @policy, serializer: REST::NotificationPolicySerializer
end
def update
@policy.update!(resource_params)
render json: @policy, serializer: REST::NotificationPolicySerializer
end
private
def set_policy
@policy = NotificationPolicy.find_or_initialize_by(account: current_account)
with_read_replica do
@policy.summarize!
end
end
def resource_params
params.permit(
:filter_not_following,
:filter_not_followers,
:filter_new_accounts,
:filter_private_mentions
)
end
end

View file

@ -0,0 +1,75 @@
# frozen_string_literal: true
class Api::V1::Notifications::RequestsController < Api::BaseController
before_action -> { doorkeeper_authorize! :read, :'read:notifications' }, only: :index
before_action -> { doorkeeper_authorize! :write, :'write:notifications' }, except: :index
before_action :require_user!
before_action :set_request, except: :index
after_action :insert_pagination_headers, only: :index
def index
with_read_replica do
@requests = load_requests
@relationships = relationships
end
render json: @requests, each_serializer: REST::NotificationRequestSerializer, relationships: @relationships
end
def show
render json: @request, serializer: REST::NotificationRequestSerializer
end
def accept
AcceptNotificationRequestService.new.call(@request)
render_empty
end
def dismiss
@request.update!(dismissed: true)
render_empty
end
private
def load_requests
requests = NotificationRequest.where(account: current_account).where(dismissed: truthy_param?(:dismissed) || false).includes(:last_status, from_account: [:account_stat, :user]).to_a_paginated_by_id(
limit_param(DEFAULT_ACCOUNTS_LIMIT),
params_slice(:max_id, :since_id, :min_id)
)
NotificationRequest.preload_cache_collection(requests) do |statuses|
preload_collection(statuses, Status)
end
end
def relationships
StatusRelationshipsPresenter.new(@requests.map(&:last_status), current_user&.account_id)
end
def set_request
@request = NotificationRequest.where(account: current_account).find(params[:id])
end
def next_path
api_v1_notifications_requests_url pagination_params(max_id: pagination_max_id) unless @requests.empty?
end
def prev_path
api_v1_notifications_requests_url pagination_params(min_id: pagination_since_id) unless @requests.empty?
end
def pagination_max_id
@requests.last.id
end
def pagination_since_id
@requests.first.id
end
def pagination_params(core_params)
params.slice(:dismissed).permit(:dismissed).merge(core_params)
end
end

View file

@ -50,7 +50,7 @@ class Api::V1::NotificationsController < Api::BaseController
)
Notification.preload_cache_collection_target_statuses(notifications) do |target_statuses|
cache_collection(target_statuses, Status)
preload_collection(target_statuses, Status)
end
end
@ -58,7 +58,8 @@ class Api::V1::NotificationsController < Api::BaseController
current_account.notifications.without_suspended.browserable(
types: Array(browserable_params[:types]),
exclude_types: Array(browserable_params[:exclude_types]),
from_account_id: browserable_params[:account_id]
from_account_id: browserable_params[:account_id],
include_filtered: truthy_param?(:include_filtered)
)
end
@ -66,10 +67,6 @@ class Api::V1::NotificationsController < Api::BaseController
@notifications.reject { |notification| notification.target_status.nil? }.map(&:target_status)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_notifications_url pagination_params(max_id: pagination_max_id) unless @notifications.empty?
end
@ -78,19 +75,15 @@ class Api::V1::NotificationsController < Api::BaseController
api_v1_notifications_url pagination_params(min_id: pagination_since_id) unless @notifications.empty?
end
def pagination_max_id
@notifications.last.id
end
def pagination_since_id
@notifications.first.id
def pagination_collection
@notifications
end
def browserable_params
params.permit(:account_id, types: [], exclude_types: [])
params.permit(:account_id, :include_filtered, types: [], exclude_types: [])
end
def pagination_params(core_params)
params.slice(:limit, :account_id, :types, :exclude_types).permit(:limit, :account_id, types: [], exclude_types: []).merge(core_params)
params.slice(:limit, :account_id, :types, :exclude_types, :include_filtered).permit(:limit, :account_id, :include_filtered, types: [], exclude_types: []).merge(core_params)
end
end

View file

@ -27,7 +27,7 @@ class Api::V1::Peers::SearchController < Api::BaseController
@domains = InstancesIndex.query(function_score: {
query: {
prefix: {
domain: TagManager.instance.normalize_domain(params[:q].strip),
domain: normalized_domain,
},
},
@ -37,11 +37,18 @@ class Api::V1::Peers::SearchController < Api::BaseController
},
}).limit(10).pluck(:domain)
else
domain = params[:q].strip
domain = TagManager.instance.normalize_domain(domain)
@domains = Instance.searchable.where(Instance.arel_table[:domain].matches("#{Instance.sanitize_sql_like(domain)}%", false, true)).limit(10).pluck(:domain)
domain = normalized_domain
@domains = Instance.searchable.domain_starts_with(domain).limit(10).pluck(:domain)
end
rescue Addressable::URI::InvalidURIError
@domains = []
end
def normalized_domain
TagManager.instance.normalize_domain(query_value)
end
def query_value
params[:q].strip
end
end

View file

@ -1,9 +1,12 @@
# frozen_string_literal: true
class Api::V1::Push::SubscriptionsController < Api::BaseController
include Redisable
include Lockable
before_action -> { doorkeeper_authorize! :push }
before_action :require_user!
before_action :set_push_subscription
before_action :set_push_subscription, only: [:show, :update]
before_action :check_push_subscription, only: [:show, :update]
def show
@ -11,16 +14,18 @@ class Api::V1::Push::SubscriptionsController < Api::BaseController
end
def create
@push_subscription&.destroy!
with_redis_lock("push_subscription:#{current_user.id}") do
destroy_web_push_subscriptions!
@push_subscription = Web::PushSubscription.create!(
endpoint: subscription_params[:endpoint],
key_p256dh: subscription_params[:keys][:p256dh],
key_auth: subscription_params[:keys][:auth],
data: data_params,
user_id: current_user.id,
access_token_id: doorkeeper_token.id
)
@push_subscription = Web::PushSubscription.create!(
endpoint: subscription_params[:endpoint],
key_p256dh: subscription_params[:keys][:p256dh],
key_auth: subscription_params[:keys][:auth],
data: data_params,
user_id: current_user.id,
access_token_id: doorkeeper_token.id
)
end
render json: @push_subscription, serializer: REST::WebPushSubscriptionSerializer
end
@ -31,14 +36,18 @@ class Api::V1::Push::SubscriptionsController < Api::BaseController
end
def destroy
@push_subscription&.destroy!
destroy_web_push_subscriptions!
render_empty
end
private
def destroy_web_push_subscriptions!
doorkeeper_token.web_push_subscriptions.destroy_all
end
def set_push_subscription
@push_subscription = Web::PushSubscription.find_by(access_token_id: doorkeeper_token.id)
@push_subscription = doorkeeper_token.web_push_subscriptions.first
end
def check_push_subscription

View file

@ -47,10 +47,6 @@ class Api::V1::ScheduledStatusesController < Api::BaseController
params.slice(:limit).permit(:limit).merge(core_params)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_scheduled_statuses_url pagination_params(max_id: pagination_max_id) if records_continue?
end
@ -63,11 +59,7 @@ class Api::V1::ScheduledStatusesController < Api::BaseController
@statuses.size == limit_param(DEFAULT_STATUSES_LIMIT)
end
def pagination_max_id
@statuses.last.id
end
def pagination_since_id
@statuses.first.id
def pagination_collection
@statuses
end
end

View file

@ -14,14 +14,14 @@ class Api::V1::Statuses::FavouritedByAccountsController < Api::V1::Statuses::Bas
def load_accounts
scope = default_accounts
scope = scope.where.not(id: current_account.excluded_from_timeline_account_ids) unless current_account.nil?
scope = scope.not_excluded_by_account(current_account) unless current_account.nil?
scope.merge(paginated_favourites).to_a
end
def default_accounts
Account
.without_suspended
.includes(:favourites, :account_stat)
.includes(:favourites, :account_stat, :user)
.references(:favourites)
.where(favourites: { status_id: @status.id })
end
@ -34,10 +34,6 @@ class Api::V1::Statuses::FavouritedByAccountsController < Api::V1::Statuses::Bas
)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_status_favourited_by_index_url pagination_params(max_id: pagination_max_id) if records_continue?
end

View file

@ -1,11 +1,8 @@
# frozen_string_literal: true
class Api::V1::Statuses::ReactionsController < Api::BaseController
include Authorization
class Api::V1::Statuses::ReactionsController < Api::V1::Statuses::BaseController
before_action -> { doorkeeper_authorize! :write, :'write:favourites' }
before_action :require_user!
before_action :set_status
def create
ReactService.new.call(current_account, @status, params[:id])
@ -19,13 +16,4 @@ class Api::V1::Statuses::ReactionsController < Api::BaseController
rescue Mastodon::NotPermittedError
not_found
end
private
def set_status
@status = Status.find(params[:status_id])
authorize @status, :show?
rescue Mastodon::NotPermittedError
not_found
end
end

View file

@ -14,26 +14,22 @@ class Api::V1::Statuses::RebloggedByAccountsController < Api::V1::Statuses::Base
def load_accounts
scope = default_accounts
scope = scope.where.not(id: current_account.excluded_from_timeline_account_ids) unless current_account.nil?
scope = scope.not_excluded_by_account(current_account) unless current_account.nil?
scope.merge(paginated_statuses).to_a
end
def default_accounts
Account.without_suspended.includes(:statuses, :account_stat).references(:statuses)
Account.without_suspended.includes(:statuses, :account_stat, :user).references(:statuses)
end
def paginated_statuses
Status.where(reblog_of_id: @status.id).where(visibility: [:public, :unlisted]).paginate_by_max_id(
Status.where(reblog_of_id: @status.id).distributable_visibility.paginate_by_max_id(
limit_param(DEFAULT_ACCOUNTS_LIMIT),
params[:max_id],
params[:since_id]
)
end
def insert_pagination_headers
set_pagination_headers(next_path, prev_path)
end
def next_path
api_v1_status_reblogged_by_index_url pagination_params(max_id: pagination_max_id) if records_continue?
end

View file

@ -5,9 +5,11 @@ class Api::V1::StatusesController < Api::BaseController
before_action -> { authorize_if_got_token! :read, :'read:statuses' }, except: [:create, :update, :destroy]
before_action -> { doorkeeper_authorize! :write, :'write:statuses' }, only: [:create, :update, :destroy]
before_action :require_user!, except: [:show, :context]
before_action :set_status, only: [:show, :context]
before_action :set_thread, only: [:create]
before_action :require_user!, except: [:index, :show, :context]
before_action :set_statuses, only: [:index]
before_action :set_status, only: [:show, :context]
before_action :set_thread, only: [:create]
before_action :check_statuses_limit, only: [:index]
override_rate_limit_headers :create, family: :statuses
override_rate_limit_headers :update, family: :statuses
@ -23,9 +25,14 @@ class Api::V1::StatusesController < Api::BaseController
DESCENDANTS_LIMIT = 60
DESCENDANTS_DEPTH_LIMIT = 20
def index
@statuses = preload_collection(@statuses, Status)
render json: @statuses, each_serializer: REST::StatusSerializer
end
def show
cache_if_unauthenticated!
@status = cache_collection([@status], Status).first
@status = preload_collection([@status], Status).first
render json: @status, serializer: REST::StatusSerializer
end
@ -44,8 +51,8 @@ class Api::V1::StatusesController < Api::BaseController
ancestors_results = @status.in_reply_to_id.nil? ? [] : @status.ancestors(ancestors_limit, current_account)
descendants_results = @status.descendants(descendants_limit, current_account, descendants_depth_limit)
loaded_ancestors = cache_collection(ancestors_results, Status)
loaded_descendants = cache_collection(descendants_results, Status)
loaded_ancestors = preload_collection(ancestors_results, Status)
loaded_descendants = preload_collection(descendants_results, Status)
@context = Context.new(ancestors: loaded_ancestors, descendants: loaded_descendants)
statuses = [@status] + @context.ancestors + @context.descendants
@ -72,13 +79,9 @@ class Api::V1::StatusesController < Api::BaseController
with_rate_limit: true
)
render json: @status, serializer: @status.is_a?(ScheduledStatus) ? REST::ScheduledStatusSerializer : REST::StatusSerializer
render json: @status, serializer: serializer_for_status
rescue PostStatusService::UnexpectedMentionsError => e
unexpected_accounts = ActiveModel::Serializer::CollectionSerializer.new(
e.accounts,
serializer: REST::AccountSerializer
)
render json: { error: e.message, unexpected_accounts: unexpected_accounts }, status: 422
render json: unexpected_accounts_error_json(e), status: 422
end
def update
@ -117,6 +120,10 @@ class Api::V1::StatusesController < Api::BaseController
private
def set_statuses
@statuses = Status.permitted_statuses_from_ids(status_ids, current_account)
end
def set_status
@status = Status.find(params[:id])
authorize @status, :show?
@ -131,6 +138,18 @@ class Api::V1::StatusesController < Api::BaseController
render json: { error: I18n.t('statuses.errors.in_reply_not_found') }, status: 404
end
def check_statuses_limit
raise(Mastodon::ValidationError) if status_ids.size > DEFAULT_STATUSES_LIMIT
end
def status_ids
Array(statuses_params[:ids]).uniq.map(&:to_i)
end
def statuses_params
params.permit(ids: [])
end
def status_params
params.permit(
:status,
@ -158,6 +177,21 @@ class Api::V1::StatusesController < Api::BaseController
)
end
def serializer_for_status
@status.is_a?(ScheduledStatus) ? REST::ScheduledStatusSerializer : REST::StatusSerializer
end
def unexpected_accounts_error_json(error)
{
error: error.message,
unexpected_accounts: serialized_accounts(error.accounts),
}
end
def serialized_accounts(accounts)
ActiveModel::Serializer::CollectionSerializer.new(accounts, serializer: REST::AccountSerializer)
end
def pagination_params(core_params)
params.slice(:limit).permit(:limit).merge(core_params)
end

Some files were not shown because too many files have changed in this diff Show more