[Bug]: Actual Budget doesn't load with Lockdown Mode enabled EVEN when whitelisted #943

Closed
opened 2026-02-28 19:26:01 -06:00 by GiteaMirror · 4 comments
Owner

Originally created by @lasofeli on GitHub (Feb 21, 2024).

Verified issue does not already exist?

  • I have searched and found no existing issue
  • I have checked my server logs and could not see any errors there
  • I will be attaching my server logs to this issue
  • I will be attaching my client-side (browser) logs to this issue
  • I understand that this issue will be automatically closed if insufficient information is provided

What happened?

With Lockdown Mode turned on and despite the site whitelisted in the settings, the site still refuses to load.

I'm running iOS 17.3. The instance is running v24.2.0.

image

What error did you receive?

There was no displayed error message.

Where are you hosting Actual?

Other

What browsers are you seeing the problem on?

Firefox, Safari

Operating System

Mobile Device

Originally created by @lasofeli on GitHub (Feb 21, 2024). ### Verified issue does not already exist? - [X] I have searched and found no existing issue ### Is this related to GoCardless, Simplefin or another bank-sync provider? - [ ] I have checked my server logs and could not see any errors there - [ ] I will be attaching my server logs to this issue - [ ] I will be attaching my client-side (browser) logs to this issue - [X] I understand that this issue will be automatically closed if insufficient information is provided ### What happened? With Lockdown Mode turned on **and** despite the site whitelisted in the settings, the site still refuses to load. I'm running iOS 17.3. The instance is running v24.2.0. ![image](https://github.com/actualbudget/actual/assets/59512650/1b13a1e8-afca-48e6-b107-fce755f08a4b) ### What error did you receive? There was no displayed error message. ### Where are you hosting Actual? Other ### What browsers are you seeing the problem on? Firefox, Safari ### Operating System Mobile Device
GiteaMirror added the bug label 2026-02-28 19:26:01 -06:00
Author
Owner

@shall0pass commented on GitHub (Feb 21, 2024):

Lockdown mode disables wasm support which Actual requires. As mentioned here. https://discord.com/channels/937901803608096828/1139056081490948149/1139567640470376538

To use Actual, you'll need a browser with wasm support and SharedArrayBuffer support.

@shall0pass commented on GitHub (Feb 21, 2024): Lockdown mode disables wasm support which Actual requires. As mentioned here. https://discord.com/channels/937901803608096828/1139056081490948149/1139567640470376538 To use Actual, you'll need a browser with wasm support and SharedArrayBuffer support.
Author
Owner

@shall0pass commented on GitHub (Feb 21, 2024):

A workaround was found if you launch the app locally.

https://discord.com/channels/937901803608096828/1139056081490948149/1139579121467400203

@shall0pass commented on GitHub (Feb 21, 2024): A workaround was found if you launch the app locally. https://discord.com/channels/937901803608096828/1139056081490948149/1139579121467400203
Author
Owner

@x3ro commented on GitHub (Sep 9, 2024):

Duplicating the information from the above-mentioned Discord post, because it's gated behind a Discoard account, you have to join the server first, etc..

Well
I just found the workaround, it's as stupid as you can imagine
JLongster improved sql.js, but kept their build pipeline (of course). SQL.js offers a non-wasm version (https://github.com/sql-js/sql.js#flavorsversions-targetsdownloads), and so does the fork of JLongster. So just using sql-asm.js instead of sql-wasm.js of JLongster's fork uses the non-wasm version 😄
For now I just manually modify the package.json of the npm library of jlongster to point to sql-asm.js instead of sql-wasm.js (the default).
and then everything works when whitelisting the domain.
I guess it has some performance penalty, but that's going to be minimal for a relatively small app like this I think.

@x3ro commented on GitHub (Sep 9, 2024): Duplicating the information from the above-mentioned Discord post, because it's gated behind a Discoard account, you have to join the server first, etc.. > Well I just found the workaround, it's as stupid as you can imagine JLongster improved sql.js, but kept their build pipeline (of course). SQL.js offers a non-wasm version (https://github.com/sql-js/sql.js#flavorsversions-targetsdownloads), and so does the fork of JLongster. So just using sql-asm.js instead of sql-wasm.js of JLongster's fork uses the non-wasm version 😄 For now I just manually modify the package.json of the npm library of jlongster to point to sql-asm.js instead of sql-wasm.js (the default). and then everything works when whitelisting the domain. I guess it has some performance penalty, but that's going to be minimal for a relatively small app like this I think.
Author
Owner

@Colafusion commented on GitHub (May 17, 2025):

How do we go about doing the workaround? I’ve been having a dig for the appropriate things to change but I’m not really getting anywhere.

@Colafusion commented on GitHub (May 17, 2025): How do we go about doing the workaround? I’ve been having a dig for the appropriate things to change but I’m not really getting anywhere.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#943