9.5.4-3

Expensify/App9.5.4-3Oct 7, 2026by github-actions[bot]

Upgrading?

AI Summary

A polish and security update that upgrades dependencies (xlsx, lodash-es) to fix vulnerabilities, improves the Insights UI (charts and labels), and fixes bugs related to scanning, splitting expenses, and PDF rendering.

Key Highlights

  • Upgrade xlsx to fix security vulnerabilities
  • Insights polish: update charts, area, labels, and group-by buttons
  • Remove Campfire beta requirement
  • Fix scan details page UI for offline splits
  • Fix report preview View button cut off on iOS Safari

New Features

  • Replace Delete with Archive (behind archivePolicies beta)
  • Add Reuse route to distance creation flow
  • Show page count badge for local multi-page PDFs

Full Release Notes

## What's Changed
* [NO QA] Upgrade json gem to 2.19.9 by @MelvinBot in https://github.com/Expensify/App/pull/103021
* Part 7: Remove Onyx.connect() for the key: ONYXKEYS.COLLECTION.TRANSACTION_VIOLATIONS in src/libs/actions/IOU.ts by @thelullabyy in https://github.com/Expensify/App/pull/100453
* Enable keyboard avoidance in ParticipantPicker so referral banner sta… by @yusufdeveloper2903 in https://github.com/Expensify/App/pull/102196
* Analyzing is incorrectly shown after creating expense and enabling auto categorizing offline by @dukenv0307 in https://github.com/Expensify/App/pull/102626
* [No QA] Docs updates for E/A#98227 Travel entry points require completed travel setup by @MelvinBot in https://github.com/Expensify/App/pull/100104
* [No QA] Remove Campfire beta requirement by @lakchote in https://github.com/Expensify/App/pull/102974
* [NoQA][Insights Polish] Update inline tables by @OlGierd03 in https://github.com/Expensify/App/pull/102882
* fix RHP reloading for close account validate code page by @hungvu193 in https://github.com/Expensify/App/pull/101840
* [Payment due @cretadn22] Upgrade xlsx to 0.20.3 to fix security vulnerabilities by @MelvinBot in https://github.com/Expensify/App/pull/103028
* [Insights Polish] Chart area and labels by @mhawryluk in https://github.com/Expensify/App/pull/102969
* Cap single-line Text length on web to work around WebKit ellipsis bug by @MelvinBot in https://github.com/Expensify/App/pull/102907
* Disable strict mode in Re.Pack to match Metro by @suneox in https://github.com/Expensify/App/pull/102681
* Part 2 - Fix review workspace settings onboarding task completion by @FitseTLT in https://github.com/Expensify/App/pull/101125
* Gate Report Details request data behind ReportDetailsActions by @sosek108 in https://github.com/Expensify/App/pull/102749
* [No QA] Bump concurrent-ruby to 1.3.7 by @MelvinBot in https://github.com/Expensify/App/pull/103015
* Dynamic route throws when "action" query param exists in both base path and suffix by @thelullabyy in https://github.com/Expensify/App/pull/102942
* [Payment due @brunovjk] Update nanoid to 3.3.20 by @MelvinBot in https://github.com/Expensify/App/pull/102998
* [Payment due @situchan][NoQA] Update undici to 6.29.0 to fix Dependabot alerts by @MelvinBot in https://github.com/Expensify/App/pull/103024
* [Payment due @daledah] Upgrade metro to 0.84.5 and image-size to 2.0.4 to fix Dependabot alerts by @MelvinBot in https://github.com/Expensify/App/pull/103025
* [No-QA] refactor: Move the split-expenses save orchestrator to the view layer by @TaduJR in https://github.com/Expensify/App/pull/101972
* Split useExpenseSubmission hook by @VickyStash in https://github.com/Expensify/App/pull/101746
* Filter Sentry beacon and background SDK request spans by @rlinoz in https://github.com/Expensify/App/pull/103053
* Keep angle brackets in the Search in label for reports with no parent action by @MelvinBot in https://github.com/Expensify/App/pull/102840
* [Payment due @Pujan92] Add Reuse route to the distance creation flow by @ShridharGoel in https://github.com/Expensify/App/pull/102258
* Update copy for the move-everyone-to-this-workflow alert by @MelvinBot in https://github.com/Expensify/App/pull/102657
* feat: Replace Delete with Archive behind the archivePolicies beta by @truph01 in https://github.com/Expensify/App/pull/98029
* Bump lodash-es to 4.18.1 to address security advisories by @MelvinBot in https://github.com/Expensify/App/pull/103009
* [Payment due @nkdengineer] [No QA] Bump picomatch to 2.3.2 and 4.0.4 by @MelvinBot in https://github.com/Expensify/App/pull/103007
* Show save filters button when the current filters is no longer the default filters by @bernhardoj in https://github.com/Expensify/App/pull/101651
* Focus Address line 1 when the home address link opens private personal details by @MelvinBot in https://github.com/Expensify/App/pull/100315
* Home v3 - Notify customers on the Home page when they have been added to the email suppression list by @WojtekBoman in https://github.com/Expensify/App/pull/102644
* Enable Rules optimistically when copying merchant rules by @MelvinBot in https://github.com/Expensify/App/pull/102985
* Remove legacy violations suggested searches from the Spend UI by @nkdengineer in https://github.com/Expensify/App/pull/103143
* [No QA] Stop sending an empty top-level status with backend Search queries by @c3024 in https://github.com/Expensify/App/pull/103064
* [NoQA][Insights Polish] Update group-by button by @OlGierd03 in https://github.com/Expensify/App/pull/102970
* Fix 0% tax rate flash when deselecting a category on an expense by @Krishna2323 in https://github.com/Expensify/App/pull/101572
* Wait for navigation readiness before redirecting from the money request start page by @MelvinBot in https://github.com/Expensify/App/pull/101221
* [Insights Polish] Bar chart's bars and category labels by @mhawryluk in https://github.com/Expensify/App/pull/102991
* Return to the split overview after Remove split when editing a per diem split by @MelvinBot in https://github.com/Expensify/App/pull/102271
* Scan - Split details page does not show the new UI when scan expense is split offline by @thelullabyy in https://github.com/Expensify/App/pull/102799
* [cp staging] Spend - App crashes after returning to expense RHP from expense report by @thelullabyy in https://github.com/Expensify/App/pull/103202
* Show page count badge for local multi-page PDFs on the confirmation screen by @MelvinBot in https://github.com/Expensify/App/pull/102389
* Keep the bank account offline view until this workspace's data has loaded by @MelvinBot in https://github.com/Expensify/App/pull/103068
* [CP Staging] Revert "Add Vendor filter to expense Search" by @c3024 in https://github.com/Expensify/App/pull/103211
* Fix - DEV: Rate not valid error is displayed when submitting a distance expense, but the Rate field is not editable by @FitseTLT in https://github.com/Expensify/App/pull/101342
* [NoQA][Insights Polish] Update line chart's line, points and hover by @OlGierd03 in https://github.com/Expensify/App/pull/103050
* [Payment due @ZhenjaHorbach] [No QA] Bump simple-git to 3.36.0 by @MelvinBot in https://github.com/Expensify/App/pull/103012
* Add the Rillet currency conversion fee account picker by @ishpaul777 in https://github.com/Expensify/App/pull/102058
* [Refactor] Move PolicyUtils vendor-matching helpers into vendor.ts by @MelvinBot in https://github.com/Expensify/App/pull/103135
* refactor createOption function to use data from useOnyx part 2 by @daledah in https://github.com/Expensify/App/pull/101841
* [Payment due @Pujan92] Prevent travel crashes from incomplete booking data by @rlinoz in https://github.com/Expensify/App/pull/103177
* [Payment due @mananjadhav] [No QA] Bump fast-xml-parser from 4.4.1 to 5.11.1 by @MelvinBot in https://github.com/Expensify/App/pull/103027
* [Payment due @gijoe0295] Update postcss to 8.5.29 by @MelvinBot in https://github.com/Expensify/App/pull/103013
* Preserve tag filters cache offline by @ShridharGoel in https://github.com/Expensify/App/pull/102350
* [Payment due @mkhutornyi] Keep approval workflow rules working with HR integrations by @Gonals in https://github.com/Expensify/App/pull/102750
* [Payment due @marufsharifi] [No QA] Update flatted to 3.4.2 by @MelvinBot in https://github.com/Expensify/App/pull/103020
* [No QA] [DEV] Fix Agents page (define `agent_` collection) by @s77rt in https://github.com/Expensify/App/pull/103061
* Fix report preview View button cut off on iOS Safari by @MelvinBot in https://github.com/Expensify/App/pull/103206
* [No QA] Fix Android release artifacts on Rock cache hits by @puneetlath in https://github.com/Expensify/App/pull/103079
* [No QA] Docs updates for E/A#100875 Agents no longer require beta access by @MelvinBot in https://github.com/Expensify/App/pull/100904
* [CP Staging] fix: preserve selected approver after fast-edit invite by @abzokhattab in https://github.com/Expensify/App/pull/103111
* [Payment due @mkhutornyi] Bump transitive minimatch to fix Dependabot ReDoS alerts by @MelvinBot in https://github.com/Expensify/App/pull/103014
* Keep showing a broken card's status past the 90-day grace period by @marufsharifi in https://github.com/Expensify/App/pull/100277
* Invoice - Category field shows Automatic when invoice expense does not auto categorize by @thelullabyy in https://github.com/Expensify/App/pull/102790
* Expense - Description row issue in split bill flow by @thelullabyy in https://github.com/Expensify/App/pull/102796
* Add incentivized Early Renewal 2027 discounts and admin nudges by @blimpich in https://github.com/Expensify/App/pull/102480
* Limit card fraud alert GBR and buttons to the cardholder by @youssef-lr in https://github.com/Expensify/App/pull/102581
* [No QA] Remove stale @react-native-firebase/perf override by @Julesssss in https://github.com/Expensify/App/pull/103242


**Full Changelog**: https://github.com/Expensify/App/compare/9.5.3-4...9.5.4-3

Related Repositories