forked from mirror/misskey
5f43c2faa2
* Never return broken notifications #409 Since notifications are stored in Redis, we can't expect relational integrity: deleting a user will *not* delete notifications that mention it. But if we return notifications with missing bits (a `follow` without a `user`, for example), the frontend will get very confused and throw an exception while trying to render them. This change makes sure we never expose those broken notifications. For uniformity, I've applied the same logic to notes and roles mentioned in notifications, even if nobody reported breakage in those cases. Tested by creating a few types of notifications with a `notifierId`, then deleting their user. (cherry picked from commit 421f8d49e5d7a8dc3a798cc54716c767df8be3cb) * Update Changelog * Update CHANGELOG.md * enhance: 通知がミュートを考慮するようにする * enhance: 通知が凍結も考慮するようにする * fix: notifierIdがない通知が消えてしまう問題 * Add tests (通知がミュートを考慮しているかどうか) * fix: notifierIdがない通知が消えてしまう問題 (grouped) * Remove unused import * Fix: typo * Revert "enhance: 通知が凍結も考慮するようにする" This reverts commit |
||
---|---|---|
.. | ||
2fa.ts | ||
antennas.ts | ||
api-visibility.ts | ||
api.ts | ||
block.ts | ||
clips.ts | ||
drive.ts | ||
endpoints.ts | ||
exports.ts | ||
fetch-resource.ts | ||
fetch-validate-ap-deny.ts | ||
ff-visibility.ts | ||
move.ts | ||
mute.ts | ||
nodeinfo.ts | ||
note.ts | ||
oauth.ts | ||
renote-mute.ts | ||
streaming.ts | ||
thread-mute.ts | ||
timelines.ts | ||
user-notes.ts | ||
users.ts | ||
well-known.ts |