v2026.05.22.1
What's Changed
Internal
- Bump css_parser from 1.17.1 to 1.22.0 by @dependabot[bot] in #5197
- Bump net-imap from 0.5.12 to 0.5.14 by @dependabot[bot] in #5191
- Bump nokogiri from 1.19.2 to 1.19.3 by @dependabot[bot] in #5193
- Bump axios from 1.15.1 to 1.16.1 by @dependabot[bot] in #5194
- Bump jwt from 2.8.2 to 3.2.0 by @dependabot[bot] in #5192
- Bump devise from 4.9.4 to 5.0.4 by @dependabot[bot] in #5196
- Drop "saucy" from adult-keyword filter by @slavingia in #5206
- Content moderation: stop flagging affiliate recruitment language by @slavingia in #5207
- Cut admin BlockedObject reads/writes over to PlatformBlock (MySQL) by @ershad in #5165
- Bump premailer from 1.23.0 to 1.29.0 by @ershad in #5208
- Bump sidekiq-cron from 1.12.0 to 2.4.0 by @dependabot[bot] in #5195
- Stop FightDisputeJob from accumulating dead jobs for already-lost disputes by @ershad in #5209
- Hide review edit on deleted products by @gianfrancopiana in #5212
- Add async sales export endpoint by @gianfrancopiana in #5216
- Fix flaky ES-dependent download page recommendation spec by @gumclaw in #5223
- fix: handle InvalidForeignKey in resized_avatar_url by @gumclaw in #5215
- fix: handle duplicate slug race condition in SaveInstallmentService by @gumclaw in #5214
- Add a sales summary API endpoint by @gianfrancopiana in #5220
- Fix flaky embed affiliate specs — add waits and polling by @gumclaw in #5225
- Fix flaky discover notices spec — add ES indexing and robust selectors by @gumclaw in #5227
- Fix flaky tiered membership offer codes specs — add surcharge waits by @gumclaw in #5226
- Fix flaky embed specs — increase within_embed_frame wait to 30s by @gumclaw in #5228
- Add GDPR Erase Buyer button on admin purchase page by @gumclaw in #5213
- Skip check_suspended when impersonating a user by @gumclaw in #5222
Full Changelog: v2026.05.21.2...v2026.05.22.1