Conflicts:
- `.rubocop_todo.yml`:
Upstream fixed a bunch lint issues, and changed the `Max` parameter of the
`Metrics/AbcSize` cop.
Glitch-soc has different code and slightly higher `AbcSize` complexity,
modified the `.rubocop_todo.yml` file accordingly.
- `app/policies/status_policy.rb`:
Upstream changed `account.suspended?` to `account.unavailable?` to prepare
for delete flags. Glitch-soc has additional local-only conditions.
Ported upstream's refactor while keeping glitch-soc's additional condition.
- `app/serializers/initial_state_serializer.rb`:
Upstream refactored a bunch of stuff while glitch-soc has more settings.
Refactored as upstream did while keeping glitch-soc's settings.
Conflicts:
- `package.json`:
Upstream removed a dependency textually close to a glitch-only dependency.
Updated as upstream while keeping our dependency.
Conflicts:
- `app/javascript/mastodon/features/compose/components/compose_form.jsx`:
Upstream changed one import, close to a glitch-soc-only import to handle
different max character counts.
Ported upstream's change.
Conflicts:
- `.github/workflows/build-nightly.yml`:
Upstream modified this file close to a line modified by glitch-soc to
disable the ARMv64 builder (as glitch-soc doesn't have one).
Ported upstream's changes.
- `.github/workflows/build-releases.yml`:
Upstream modified this file close to lines changed by glitch-soc to
change the Docker image repositories used (only ghcr, and based on the
organization's name).
Ported upstream's changes.
Conflicts:
- `app/controllers/authorize_interactions_controller.rb`:
Small conflict due to our theming system.
- `streaming/index.js`:
Upstream refactored part of the streaming server.
We had some extra logic for handling local-only posts.
Applied the refactor.
Conflicts:
- `db/migrate/20180831171112_create_bookmarks.rb`:
Upstream ran a lint fix on this file, but this file is different in
glitch-soc because the feature was added much earlier.
Ran the lint fix on our own version of the file.
Conflicts:
- `app/serializers/initial_state_serializer.rb`:
Upstream renamed an initial state parameter, where we had extra ones.
Renamed as upstream did.
- `app/workers/feed_insert_worker.rb`:
Upstream wrapped database query in a block, we had extra database
queries because of the DM timeline.
Moved everything in the block.
Instead of processing tag and then look for the custom emoji, let the processing return an emoji.
Add `name` to `process_emoji_tags` to check if it matches the shortcode.
Removed `process_single_emoji` and added its code to `process_emoji_tags`
Removed arg from `maybe_process_misskey_reaction`.
Ideally, `original_status` should be a global object, but I wanted to modify vanilla code as little as possible.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Right now Misskey users were able to react, but couldn't remove their reactions.
delegates `Undo` for a `Like` to `undo_emoji_react` when there is no favourite found.
(Misskey `Like` activities can still create a fav when the emoji tag is invalid, I don't see the point though)
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Processing all custom emojis is neither wise nor necessary as both `Like` and `EmojiReact` only expect a single custom emoji
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
These occur when an account tries to react with disabled custom emojis.
In both `EmojiReact` and `Like? activities, the activity is discarded.
Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>
Emoji reactions containing custom emojis from
remote instances were assumed to already have
been downloaded and stored in the database.
This might obviously not be the case.