Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge upstream changes up to 44d92fa4f6aac5c45ad358287af48cd879f5665e #2898

Merged
merged 53 commits into from
Nov 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
e22ec25
Fix typo in account unlocked localisation (#32821)
ThisIsMissEm Nov 10, 2024
157fba4
Backspace hotkey should override default behaviour (#32826)
c960657 Nov 10, 2024
d033920
Move account silence-related methods to concern (#28866)
mjankowski Nov 11, 2024
c78dc23
Move account sensitize-related methods to concern (#28865)
mjankowski Nov 11, 2024
aeae152
Prevent Web::Push notification delivery if notification is outside of…
ThisIsMissEm Nov 11, 2024
c099797
Use `mastodon` config namespace to load software update default value…
mjankowski Nov 12, 2024
5a99ac3
Update dependency aws-sdk-s3 to v1.170.1 (#32846)
renovate[bot] Nov 12, 2024
67a2b03
Update dependency postcss-preset-env to v10.1.0 (#32835)
renovate[bot] Nov 12, 2024
90b5017
Update dependency postcss to v8.4.49 (#32831)
renovate[bot] Nov 12, 2024
8851222
Update dependency @formatjs/cli to v6.3.8 (#32830)
renovate[bot] Nov 12, 2024
a34edc2
Add audit logging to Relays (#32819)
ThisIsMissEm Nov 12, 2024
1f85ca2
Update dependency react-select to v5.8.3 (#32817)
renovate[bot] Nov 12, 2024
ea6d3ca
Define constants for sampling sizes in `AccountReachFinder` (#32805)
mjankowski Nov 12, 2024
0d06d70
New Crowdin Translations (automated) (#32811)
github-actions[bot] Nov 12, 2024
e97f4b1
Update changelog and docker tags to v4.3.1 (#32849)
ClearlyClaire Nov 12, 2024
bf60909
Fix: prevent linking to pages which require extra permissions (#32843)
ThisIsMissEm Nov 12, 2024
897cb18
Run `bin/rails db:schema:dump` under Rails 7.2 (#32838)
mjankowski Nov 12, 2024
5d9dde3
Add age/expiry duration constants to `BulkImport` class (#32839)
mjankowski Nov 12, 2024
f8e96e7
Update dependency strong_migrations to v2.1.0 (#32810)
renovate[bot] Nov 12, 2024
32e5e1d
Fix a few visual issues with annual reports in web UI (#32807)
Gargron Nov 12, 2024
f5f6273
Move `ALLOWED_PRIVATE_ADDRESSES` parsing to an initializer (#32850)
ClearlyClaire Nov 12, 2024
884bbf7
Prepare the way for banning a bunch of usernames (#32856)
mjankowski Nov 12, 2024
ace4268
Remove unused `api/v1/polls#create` route (#32860)
mjankowski Nov 12, 2024
2bd56f7
Add client_secret_expires_at to OAuth Applications (#30317)
ThisIsMissEm Nov 12, 2024
a6d829e
Fix error in CLI EmailDomainBlocks when supplying `--with-dns-records…
mjankowski Nov 13, 2024
baad795
New Crowdin Translations (automated) (#32868)
github-actions[bot] Nov 13, 2024
95d7120
Misc gem version bumps (#32854)
mjankowski Nov 13, 2024
8f5cbf5
Fix list creation limit check (#32869)
ClearlyClaire Nov 13, 2024
03ecf5d
Adds a range of reserved usernames to reduce potential misuse by mali…
jmking-iftas Nov 13, 2024
7fc8292
Update dependency react-textarea-autosize to v8.5.5 (#32872)
renovate[bot] Nov 13, 2024
980970d
Update dependency browser to v6.1.0 (#32878)
renovate[bot] Nov 14, 2024
aaebf14
New Crowdin Translations (automated) (#32884)
github-actions[bot] Nov 14, 2024
ec663ea
Fix Content Warning and filter states not applying to boosted posts p…
ClearlyClaire Nov 14, 2024
e8b6607
Fix titles being escaped twice (#32889)
ClearlyClaire Nov 14, 2024
62d6550
Add `DomainResource` class to wrap MX lookup/normalize (#32864)
mjankowski Nov 14, 2024
766358e
Add coverage for malformed version cleanup in `SoftwareUpdateCheckSer…
mjankowski Nov 14, 2024
2de0182
Fix filters not being correctly applied to boosted posts (#32895)
ClearlyClaire Nov 14, 2024
ddfb3d1
Improve display of statuses in admin panel (#30813)
ThisIsMissEm Nov 15, 2024
c546aa5
New Crowdin Translations (automated) (#32900)
github-actions[bot] Nov 15, 2024
0838cf1
Fix domain attribution field having autocorrect and autocapitalize en…
ClearlyClaire Nov 15, 2024
f1ef7b5
Fix uploading higher-than-wide GIF profile picture with libvips enabl…
ClearlyClaire Nov 15, 2024
34d7c9e
Rails 7+: primary_abstract_class recommendation (#32909)
shleeable Nov 15, 2024
297ce9e
Move body class to shared partial for web app controller concern view…
mjankowski Nov 15, 2024
3191090
Fix logic in "last used at per application" oauth token list (#32912)
mjankowski Nov 15, 2024
54a7c18
Update dependency uuid to v11 (#32676)
renovate[bot] Nov 15, 2024
7bd7705
Combine shared-setup examples across `spec/controllers/auth/*` specs …
mjankowski Nov 15, 2024
9d3fcc3
Remove unused failure action in api/base controller spec (#32905)
mjankowski Nov 15, 2024
44d92fa
Update dependency uuid to v11.0.3 (#32913)
renovate[bot] Nov 15, 2024
4f12429
Merge commit '44d92fa4f6aac5c45ad358287af48cd879f5665e' into glitch-s…
ClearlyClaire Nov 15, 2024
e98891f
[Glitch] Backspace hotkey should override default behaviour
c960657 Nov 10, 2024
e86c1c8
[Glitch] Fix a few visual issues with annual reports in web UI
Gargron Nov 12, 2024
18aa0d8
[Glitch] Fix Content Warning and filter states not applying to booste…
ClearlyClaire Nov 14, 2024
0e9ab53
[Glitch] Improve display of statuses in admin panel
ThisIsMissEm Nov 15, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,48 @@

All notable changes to this project will be documented in this file.

## [4.3.1] - 2024-10-21

### Added

- Add more explicit explanations about author attribution and `fediverse:creator` (#32383 by @ClearlyClaire)
- Add ability to group follow notifications in WebUI, can be disabled in the column settings (#32520 by @renchap)
- Add back a 6 hours mute duration option (#32522 by @renchap)
- Add note about not changing ActiveRecord encryption secrets once they are set (#32413, #32476, #32512, and #32537 by @ClearlyClaire and @mjankowski)

### Changed

- Change translation feature to translate to selected regional variant (e.g. pt-BR) if available (#32428 by @c960657)

### Removed

- Remove ability to get embed code for remote posts (#32578 by @ClearlyClaire)\
Getting the embed code is only reliable for local posts.\
It never worked for non-Mastodon servers, and stopped working correctly with the changes made in 4.3.0.\
We have therefore decided to remove the menu entry while we investigate solutions.

### Fixed

- Fix follow recommendation moderation page default language when using regional variant (#32580 by @ClearlyClaire)
- Fix column-settings spacing in local timeline in advanced view (#32567 by @lindwurm)
- Fix broken i18n in text welcome mailer tags area (#32571 by @mjankowski)
- Fix missing or incorrect cache-control headers for Streaming server (#32551 by @ThisIsMissEm)
- Fix only the first paragraph being displayed in some notifications (#32348 by @ClearlyClaire)
- Fix reblog icons on account media view (#32506 by @tribela)
- Fix Content-Security-Policy not allowing OpenStack SWIFT object storage URI (#32439 by @kenkiku1021)
- Fix back arrow pointing to the incorrect direction in RTL languages (#32485 by @renchap)
- Fix streaming server using `REDIS_USERNAME` instead of `REDIS_USER` (#32493 by @ThisIsMissEm)
- Fix follow recommendation carrousel scrolling on RTL layouts (#32462 and #32505 by @ClearlyClaire)
- Fix follow recommendation suppressions not applying immediately (#32392 by @ClearlyClaire)
- Fix language of push notifications (#32415 by @ClearlyClaire)
- Fix mute duration not being shown in list of muted accounts in web UI (#32388 by @ClearlyClaire)
- Fix “Mark every notification as read” not updating the read marker if scrolled down (#32385 by @ClearlyClaire)
- Fix “Mention” appearing for otherwise filtered posts (#32356 by @ClearlyClaire)
- Fix notification requests from suspended accounts still being listed (#32354 by @ClearlyClaire)
- Fix list edition modal styling (#32358 and #32367 by @ClearlyClaire and @vmstan)
- Fix 4 columns barely not fitting on 1920px screen (#32361 by @ClearlyClaire)
- Fix icon alignment in applications list (#32293 by @mjankowski)

## [4.3.0] - 2024-10-08

The following changelog entries focus on changes visible to users, administrators, client developers or federated software developers, but there has also been a lot of code modernization, refactoring, and tooling work, in particular by @mjankowski.
Expand Down
48 changes: 24 additions & 24 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ GEM
attr_required (1.0.2)
awrence (1.2.1)
aws-eventstream (1.3.0)
aws-partitions (1.1001.0)
aws-partitions (1.1004.0)
aws-sdk-core (3.212.0)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.992.0)
Expand All @@ -106,18 +106,18 @@ GEM
aws-sdk-kms (1.95.0)
aws-sdk-core (~> 3, >= 3.210.0)
aws-sigv4 (~> 1.5)
aws-sdk-s3 (1.170.0)
aws-sdk-s3 (1.170.1)
aws-sdk-core (~> 3, >= 3.210.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.5)
aws-sigv4 (1.10.1)
aws-eventstream (~> 1, >= 1.0.2)
azure-blob (0.5.2)
azure-blob (0.5.3)
rexml
base64 (0.2.0)
bcp47_spec (0.2.1)
bcrypt (3.1.20)
benchmark (0.3.0)
benchmark (0.4.0)
better_errors (2.10.1)
erubi (>= 1.0.0)
rack (>= 0.9.0)
Expand All @@ -131,7 +131,7 @@ GEM
msgpack (~> 1.2)
brakeman (6.2.2)
racc
browser (6.0.0)
browser (6.1.0)
brpoplpush-redis_script (0.1.3)
concurrent-ruby (~> 1.0, >= 1.0.5)
redis (>= 1.0, < 6)
Expand Down Expand Up @@ -178,7 +178,7 @@ GEM
activerecord (>= 5.a)
database_cleaner-core (~> 2.0.0)
database_cleaner-core (2.0.1)
date (3.3.4)
date (3.4.0)
debug (1.9.2)
irb (~> 1.10)
reline (>= 0.3.8)
Expand All @@ -189,10 +189,10 @@ GEM
railties (>= 4.1.0)
responders
warden (~> 1.2.3)
devise-two-factor (6.0.0)
activesupport (~> 7.0)
devise-two-factor (6.1.0)
activesupport (>= 7.0, < 8.1)
devise (~> 4.0)
railties (~> 7.0)
railties (>= 7.0, < 8.1)
rotp (~> 6.0)
devise_pam_authenticatable2 (9.2.0)
devise (>= 4.0.0)
Expand Down Expand Up @@ -330,7 +330,7 @@ GEM
azure-blob (~> 0.5.2)
hashie (~> 5.0)
jmespath (1.6.2)
json (2.7.4)
json (2.8.1)
json-canonicalization (1.0.0)
json-jwt (1.15.3.1)
activesupport (>= 4.2)
Expand Down Expand Up @@ -407,16 +407,16 @@ GEM
mime-types (3.6.0)
logger
mime-types-data (~> 3.2015)
mime-types-data (3.2024.1001)
mime-types-data (3.2024.1105)
mini_mime (1.1.5)
mini_portile2 (2.8.7)
minitest (5.25.1)
msgpack (1.7.3)
msgpack (1.7.5)
multi_json (1.15.0)
mutex_m (0.2.0)
net-http (0.5.0)
uri
net-imap (0.5.0)
net-imap (0.5.1)
date
net-protocol
net-ldap (0.19.0)
Expand Down Expand Up @@ -554,10 +554,10 @@ GEM
opentelemetry-semantic_conventions (1.10.1)
opentelemetry-api (~> 1.0)
orm_adapter (0.5.0)
ostruct (0.6.0)
ostruct (0.6.1)
ox (2.14.18)
parallel (1.26.3)
parser (3.3.5.0)
parser (3.3.6.0)
ast (~> 2.4.1)
racc
parslet (2.0.0)
Expand All @@ -579,7 +579,7 @@ GEM
activesupport (>= 7.0.0)
rack
railties (>= 7.0.0)
psych (5.1.2)
psych (5.2.0)
stringio
public_suffix (6.0.1)
puma (6.4.3)
Expand Down Expand Up @@ -664,7 +664,7 @@ GEM
redlock (1.3.2)
redis (>= 3.0.0, < 6.0)
regexp_parser (2.9.2)
reline (0.5.10)
reline (0.5.11)
io-console (~> 0.5)
request_store (1.6.0)
rack (>= 1.4)
Expand All @@ -673,7 +673,7 @@ GEM
railties (>= 5.2)
rexml (3.3.9)
rotp (6.3.0)
rouge (4.4.0)
rouge (4.5.1)
rpam2 (4.0.2)
rqrcode (2.2.0)
chunky_png (~> 1.0)
Expand All @@ -693,7 +693,7 @@ GEM
rspec-mocks (3.13.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.13.0)
rspec-rails (7.0.1)
rspec-rails (7.1.0)
actionpack (>= 7.0)
activesupport (>= 7.0)
railties (>= 7.0)
Expand Down Expand Up @@ -753,7 +753,7 @@ GEM
scenic (1.8.0)
activerecord (>= 4.0.0)
railties (>= 4.0.0)
securerandom (0.3.1)
securerandom (0.3.2)
selenium-webdriver (4.26.0)
base64 (~> 0.2)
logger (~> 1.4)
Expand Down Expand Up @@ -794,8 +794,8 @@ GEM
stackprof (0.2.26)
stoplight (4.1.0)
redlock (~> 1.0)
stringio (3.1.1)
strong_migrations (2.0.2)
stringio (3.1.2)
strong_migrations (2.1.0)
activerecord (>= 6.1)
swd (1.3.0)
activesupport (>= 3)
Expand All @@ -810,7 +810,7 @@ GEM
test-prof (1.4.2)
thor (1.3.2)
tilt (2.4.0)
timeout (0.4.1)
timeout (0.4.2)
tpm-key_attestation (0.12.1)
bindata (~> 2.4)
openssl (> 2.0)
Expand Down Expand Up @@ -867,7 +867,7 @@ GEM
rack-proxy (>= 0.6.1)
railties (>= 5.2)
semantic_range (>= 2.3.0)
webrick (1.8.2)
webrick (1.9.0)
websocket (1.2.11)
websocket-driver (0.7.6)
websocket-extensions (>= 0.1.0)
Expand Down
5 changes: 1 addition & 4 deletions app/controllers/admin/email_domain_blocks_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,7 @@ def create
private

def set_resolved_records
Resolv::DNS.open do |dns|
dns.timeouts = 5
@resolved_records = dns.getresources(@email_domain_block.domain, Resolv::DNS::Resource::IN::MX).to_a
end
@resolved_records = DomainResource.new(@email_domain_block.domain).mx
end

def resource_params
Expand Down
4 changes: 4 additions & 0 deletions app/controllers/admin/relays_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ def create
@relay = Relay.new(resource_params)

if @relay.save
log_action :create, @relay
@relay.enable!
redirect_to admin_relays_path
else
Expand All @@ -31,18 +32,21 @@ def create
def destroy
authorize :relay, :update?
@relay.destroy
log_action :destroy, @relay
redirect_to admin_relays_path
end

def enable
authorize :relay, :update?
@relay.enable!
log_action :enable, @relay
redirect_to admin_relays_path
end

def disable
authorize :relay, :update?
@relay.disable!
log_action :disable, @relay
redirect_to admin_relays_path
end

Expand Down
2 changes: 2 additions & 0 deletions app/controllers/admin/statuses_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ def index

def show
authorize [:admin, @status], :show?

@status_batch_action = Admin::StatusBatchAction.new
end

def batch
Expand Down
5 changes: 0 additions & 5 deletions app/controllers/concerns/web_app_controller_concern.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ module WebAppControllerConcern
vary_by 'Accept, Accept-Language, Cookie'

before_action :redirect_unauthenticated_to_permalinks!
before_action :set_app_body_class

content_security_policy do |p|
policy = ContentSecurityPolicy.new
Expand All @@ -24,10 +23,6 @@ def skip_csrf_meta_tags?
!(ENV['ONE_CLICK_SSO_LOGIN'] == 'true' && ENV['OMNIAUTH_ONLY'] == 'true' && Devise.omniauth_providers.length == 1) && current_user.nil?
end

def set_app_body_class
@body_classes = 'app-body'
end

def redirect_unauthenticated_to_permalinks!
return if user_signed_in? # NOTE: Different from upstream because we allow moved users to log in

Expand Down
8 changes: 1 addition & 7 deletions app/controllers/oauth/authorized_applications_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,6 @@ def set_cache_headers
end

def set_last_used_at_by_app
@last_used_at_by_app = Doorkeeper::AccessToken
.select('DISTINCT ON (application_id) application_id, last_used_at')
.where(resource_owner_id: current_resource_owner.id)
.where.not(last_used_at: nil)
.order(application_id: :desc, last_used_at: :desc)
.pluck(:application_id, :last_used_at)
.to_h
@last_used_at_by_app = current_resource_owner.applications_last_used
end
end
4 changes: 2 additions & 2 deletions app/helpers/admin/account_moderation_notes_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@ def admin_account_link_to(account, path: nil)
)
end

def admin_account_inline_link_to(account)
def admin_account_inline_link_to(account, path: nil)
return if account.nil?

link_to(
account_inline_text(account),
admin_account_path(account.id),
path || admin_account_path(account.id),
class: class_names('inline-name-tag', suspended: suspended_account?(account)),
title: account.acct
)
Expand Down
2 changes: 2 additions & 0 deletions app/helpers/admin/action_logs_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ def log_target(log)
else
I18n.t('admin.action_logs.deleted_account')
end
when 'Relay'
link_to log.human_identifier, admin_relays_path
end
end

Expand Down
2 changes: 1 addition & 1 deletion app/helpers/application_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ def locale_direction

def html_title
safe_join(
[content_for(:page_title).to_s.chomp, title]
[content_for(:page_title), title]
.compact_blank,
' - '
)
Expand Down
7 changes: 3 additions & 4 deletions app/javascript/flavours/glitch/components/status.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -586,6 +586,9 @@ class Status extends ImmutablePureComponent {

let prepend, rebloggedByText;

const connectUp = previousId && previousId === status.get('in_reply_to_id');
const connectToRoot = rootId && rootId === status.get('in_reply_to_id');
const connectReply = nextInReplyToId && nextInReplyToId === status.get('id');
const matchedFilters = status.get('matched_filters');

if (hidden) {
Expand All @@ -600,10 +603,6 @@ class Status extends ImmutablePureComponent {
);
}

const connectUp = previousId && previousId === status.get('in_reply_to_id');
const connectToRoot = rootId && rootId === status.get('in_reply_to_id');
const connectReply = nextInReplyToId && nextInReplyToId === status.get('id');

if (this.state.forceFilter === undefined ? matchedFilters : this.state.forceFilter) {
const minHandlers = this.props.muted ? {} : {
moveUp: this.handleHotkeyMoveUp,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,17 @@ export const MostUsedHashtag: React.FC<{
}> = ({ data }) => {
const hashtag = data[0];

if (!hashtag) {
return (
<div className='annual-report__bento__box annual-report__summary__most-used-hashtag' />
);
}

return (
<div className='annual-report__bento__box annual-report__summary__most-used-hashtag'>
<div className='annual-report__summary__most-used-hashtag__hashtag'>
#{hashtag.name}
{hashtag ? (
<>#{hashtag.name}</>
) : (
<FormattedMessage
id='annual_report.summary.most_used_hashtag.none'
defaultMessage='None'
/>
)}
</div>
<div className='annual-report__summary__most-used-hashtag__label'>
<FormattedMessage
Expand Down
Loading
Loading