What's Changed
- Fix Disconnect and saves in Bank sync connection rows by @gariasf in #3844
- Make "Really free" read as the cash panel's answer by @gariasf in #3878
- Update the insights lightbulb badge live on dismiss and refresh by @gariasf in #3880
- Give Bills' Next up strip a focus ring and one padding scale by @gariasf in #3877
- Give each Income plan period one hero figure by @gariasf in #3879
- Let the third-currency reports test run on a month's first two days by @gariasf in #3902
- fix(transactions): cache only IDs of upcoming recurring transactions by @gfr-free in #3907
- Let users hide dashboard widgets from a Customize mode by @gariasf in #3860
- Open bills in the drawer instead of expanding the row by @gariasf in #3885
- feat(transactions): create a category from the list's quick category picker by @scragnog in #3772
- Fix demo loan schedules inside generation transactions by @jjmata in #3933
- Define date.formats.short_with_year for every locale by @gariasf in #3918
- Show a dated bill row's due date where its rail is hidden by @gariasf in #3901
- Show the Income plan AI chips only when there is a plan by @gariasf in #3917
- Hide the bills month pulse and AI prompts on an empty page by @gariasf in #3905
- Fix Back for drawers, modals, the period picker and URL rewrites by @gariasf in #3886
- Stack the bills pay-period band on narrow lists by @gariasf in #3928
- Keep bills banner and notices to the bills the page lists by @gariasf in #3922
- Money paste follow-ups: separator hint and symbol drift test by @BernatSR in #3882
- Fix Bills locale test to target the occurrence drawer link by @sure-admin in #3938
- Use the config key Rails documents, so a local run comes back clean by @mikaelhm in #3910
- Fix Stripe error on demo family deletion by @sentry[bot] in #3896
- Keep the money field's currency handler next to the transaction form's action by @gfr-free in #3916
- fix(kraken): a crypto ledger row moves units, not cash by @dgsardina in #3875
- fix(onchain): let Track selected assets submit on self-hosted installs by @ly0va in #3940
- fix(transactions): stop Cancel in Convert to trade from converting by @ly0va in #3941
- Bump Pipelock CI action to v3.6.0 by @luckyPipewrench in #3951
- Add Hosted usage overview and daily web preview event by @jjmata in #3939
- fix: remember exact release highlight acknowledgements by @sure-admin in #3961
- Give the bills overview one focus ring and readable autopay rows by @gariasf in #3911
- Hide the bills month pulse on a page of only paused bills by @gariasf in #3923
- Show a bill row's verb only when the bill needs you now by @gariasf in #3947
- fix(enable_banking): tell id-less rows that share a content hash apart by @dgsardina in #3913
- Revert "fix(enable_banking): tell id-less rows that share a content hash apart" by @jjmata in #3982
- docs: show the migration version the provider generator actually emits by @jaysbeekay in #3622
- feat(ai): support Gemini 3 models and preserve tool call thought signatures by @nareddyt in #3979
- Line bill rows up with their headers and stack review rows on phones by @gariasf in #3921
- Give every bill row one date rail and one subline order by @gariasf in #3955
- Cover the short paycheck's legend, which keys only its shortfall by @gariasf in #4011
- Stop calling a paused bill's leftover overdue anywhere by @gariasf in #3971
- Fold the bill's page into its drawer by @gariasf in #3981
- Build the bills notices and review queues like the bill sections by @gariasf in #3957
- Make small balance movements legible in time-series charts. by @joaocbatista in #3906
- fix(plaid): hold the exchange when re-linking a connected institution by @cgmccurdy in #3658
- fix(kraken): space out requests against the private endpoint rate limit by @dgsardina in #3756
- fix(kraken): a buy is money out and a sell is money in, not the reverse by @dgsardina in #3757
- fix(crypto): open an exchange account at zero, dated before its history, in the family currency by @dgsardina in #3789
- feat(ai-health): let admins set the health check timeout under Self-Hosting by @gfr-free in #4019
- Enqueue scheduled cron jobs as ActiveJob payloads by @gfr-free in #3768
- Allow transaction-to-trade conversion for crypto exchange accounts by @BeastOrange in #3936
- Fix double-counted entry when its date moves later by @jubbakka in #3967
- Rebuild the account from the submission when a create fails late by @jaysbeekay in #3733
- Fix Income plan with unknown cash balance by @sure-admin in #3868
- fix(sync): keep a locked date and amount when a provider sync re-imports a transaction by @gfr-free in #3989
- Show what each scheduled payment is made of in the loan chart tooltip by @jaysbeekay in #4006
- Prevent guests from mutating family configuration by @ryandnurh in #4004
- Keep the native currency in transfer-only daily totals by @BeastOrange in #3937
- fix(imports): require account write access to publish or revert an import by @gfr-free in #3998
- fix(enable_banking): bind the OAuth state to the browser session by @gfr-free in #3996
- fix(currencies): add USDT entry to config/currencies.yml (#3949) by @0xifarouk in #3950
- Start linked investment charts at the pre-activity balance by @ryandnurh in #4009
- feat(categories): choose a parent when creating a category inline by @scragnog in #3774
- fix(rules): offer the rule prompt unless an existing rule already covers the transaction by @scragnog in #3796
- feat(dashboard): sort the preview cash-flow Sankey by amount by @scragnog in #3798
- feat(mcp): add set_opening_balance tool by @scragnog in #3820
- fix(recurring): prevent N+1 in GenerateRecurringOccurrencesJob by @sentry[bot] in #4024
- fix(holdings): an acquisition fee is part of what the position cost by @dgsardina in #3758
- fix(kraken): one security per asset, not one per trading pair by @dgsardina in #4023
- Allow categorizing investment/loan transfer transactions by @gfr-free in #3719
- fix(plaid): anchor an investment balance on the holdings' price date by @dgsardina in #3874
- feat(sync): warn when the balance anchor is dated away from the holdings by @dgsardina in #3876
- fix(bills): match recurring transfers to the transfers that pay them by @scragnog in #3932
- Drop invalid
previous:option on PlaidAccount holdings encryption by @megan-holstein in #4059 - Give a colourless goal's ring a real fallback colour by @jaysbeekay in #4032
- fix(trade-republic): Trade Republic bond valuation using percent-of-par prices by @Simoneu01 in #4020
- Fix investment-transfer follow-ups from #3719 by @gfr-free in #4064
- Fix the README's broken badge and refresh its hero screenshot by @gariasf in #4100
- fix(enable_banking): keep multi-currency accounts in their own currency by @Simoneu01 in #4077
- Show What's new in a DS::Dialog once no drawer or modal is open by @gariasf in #4021
- Frame the bills lists so their shells show in light mode by @gariasf in #4091
- Lead the bills overview with the bills, late ones first by @gariasf in #4092
- Lay out the bills header and switcher like Transactions by @gariasf in #4094
- Give the bill forms the inputs every other form uses by @gariasf in #4095
- Use the app's words for creating, pausing and opening bills by @gariasf in #4096
- Lead the bill drawer with its figure and use one eyebrow style by @gariasf in #4098
- Date snoozed bills by their snoozed date in month totals and the plan by @gariasf in #4106
- Keep one family's merchant changes off shared provider merchants by @gfr-free in #3824
- Scope AI-detected merchant creation to the family by @gfr-free in #3843
- Stop fetching prices for securities no account still holds by @jaysbeekay in #3888
- Apply stock splits to holdings by @jaysbeekay in #3850
- Fix reports page touch jitter and iOS Safari scroll freeze by @gfr-free in #3132
- Currency ETH Addition by @peledies in #2940
- fix(enable-banking): don't import a movement twice when the identifier arrives late by @albertinisg in #3462
- fix(trade-republic): import timeline history beyond 50 pages by @nielseulink in #4072
- Stop streaming the Enable Banking panel to the family by @jaysbeekay in #4044
- feat(transfers): add common writer condition for auto-matching transfers by @jubbakka in #3722
- fix(chat): gate chat page behind AI consent and surface OpenAI stream errors by @gfr-free in #3767
- fix(insights): keep private and unshared accounts out of the shared feed by @gfr-free in #4061
- Share one pending predicate, and classify investment cash movements in one place by @jaysbeekay in #3557
- feat(lunchflow): toggle to read credit card balance as available credit by @scragnog in #3948
- fix: Preserve currency separators across locales by @OscarCaamal in #3651
- Pin the skipped-occurrence review test to mid-month by @gariasf in #4108
- Reject null bytes in rule fields by @BeastOrange in #4109
- fix(trade-republic): import unmapped card, stamp duty and bonus events by @Simoneu01 in #4038
- fix(onchain): revalue idle wallets at the latest price by @FournyP in #4067
- fix(statements): read period and balances from statement PDF text by @Simoneu01 in #4054
- fix(trade-republic): book order cash legs at the detail total by @Simoneu01 in #4104
- fix(trade-republic): log order executions that can't be imported yet by @Simoneu01 in #4105
- feat(onchain): track Polkadot (DOT) wallets by @FournyP in #4071
- feat(onchain): track Cosmos Hub (ATOM) wallets by @FournyP in #4070
- Submit import file forms via Turbo to fix empty iPhone uploads by @itsLeonB in #4085
- feat(dashboard): show the preview cash-flow Sankey by account by @scragnog in #3799
- fix(trade-republic): resolve bonds by ISIN and import bond purchases by @nielseulink in #4060
- Stop broadcasting provider cards to the whole family by @jaysbeekay in #4046
- fix(trade-republic): read the exact share price from trade details by @Simoneu01 in #4111
- fix(trade-republic): match the statement for bonus units and stamp duty by @Simoneu01 in #4116
- fix(reports): bust report caches when categories are merged or replaced by @joshiarnav in #3604
- fix(trading212): book trades in the instrument currency by @stepanbeseda in #4140
- fix(kraken): take a trade's quantity and cash from the ledger by @dgsardina in #4086
- fix(kraken): sum a staked and a spot balance of one asset into one holding by @rtammekivi in #4137
- fix(snaptrade): support option contracts and prioritize option_symbol by @nareddyt in #3744
- Stop broadcasting account rows to the whole family by @jaysbeekay in #4050
- Show a member only the provider accounts shared with them by @jaysbeekay in #4048
- fix(trades): count fees in gains and treat a missing rate as unknown by @dgsardina in #4033
- fix(reports): invalidate entry caches when categories change by @joshiarnav in #4124
- Add BalanceSheet::NetWorthVelocity for net worth pace by @jaysbeekay in #4083
- Count dividend and interest income in investment totals by @jaysbeekay in #4082
- Apply transfer kinds only when an auto-match is confirmed by @shkarinn in #3762
- test(snaptrade): include fees in option gain expectations by @joshiarnav in #4145
- fix(ibkr): record a trade's commission as its fee, not as a separate transaction by @dgsardina in #4148
- Add Chimnie provider for UK property valuations by @ljefferies98 in #4135
- feat(sophtron): add balance sign override functionality for credit cards by @jonerrr in #4142
- Reject zero and invalid exchange rates for every provider by @gfr-free in #3790
- Skip account sync for descriptive transaction edits by @gfr-free in #4001
- Group the latest provider import day once in current holdings by @mrvruj in #4118
- Keep a daily holding row for SimpleFIN and Lunchflow by @mrvruj in #4119
- Improve demo family refresh email readability by @sure-admin in #4126
- feat(API): Add API endpoints for transaction splits by @georanma in #4117
- feat(rules): run rules in a fixed order with "stop processing" by @gfr-free in #4013
- feat(mcp): rule tools with a mandatory preview by @scragnog in #3990
- Add an "mcp_only" assistant type: no in-app chat, MCP stays available by @enieuwy in #4147
- Auto-match cross-currency transfers on routes the user has confirmed by @shkarinn in #3702
- feat(mcp): add unmatch_transfer tool by @scragnog in #4157
- fix(ai): replay each in-flight tool round as its own message pair by @josh-sanders in #4133
- Fix MCP rule previews after matching scope rename by @sure-admin in #4163
- Add attachments filter to transactions list by @romanzipp in #4161
- Keep detected income out of the Bills suggestion strip by @thewillwilson in #3675
- 2883: Fix unidentified card holds by @OtterBoops in #4162
- Stop Money from silently mixing currencies by @gfr-free in #4219
- fix(holdings): prevent N+1 query in HoldingsController#index by @sentry[bot] in #4042
- Generate plain ERB from the provider view templates by @jaysbeekay in #4099
- Add shared mask_last4 helper for identifier display masking by @gfr-free in #3826
- fix(plaid): show Link errors raised inside the modal frame by @DTTerastar in #3849
- Fix unreadable security search dialog in the dark theme on phones by @gfr-free in #4183
- Translate investment activity labels in the quick-edit badge by @shkarinn in #4167
- fix(categories): keep focus in the category menu after a failed create by @scragnog in #4074
- fix(panels): put CoinSpot/Kraken/Binance sync and menu buttons on the header row, as Wise does by @ryandnurh in #3980
- Keep long return_to paths from overflowing the session by @shkarinn in #4238
- Fix the false Timeout badge on sidebar sparklines by @zeishr in #3576
- Do not offer a guest a provider link the controller refuses by @jaysbeekay in #3656
- fix(bills): preload recurrence rules and accounts when claiming recurring patterns by @sentry[bot] in #4136
- fix(chart): render email SMTP env vars by @sure-admin in #3015
- fix(devcontainer): use configured session key in Codespaces by @bittensorrider in #2982
- Start All period one month before first Transaction/Trade entry by @ryandnurh in #4068
- fix(jobs): run AI jobs in their own Sidekiq capsule so they can't starve syncs by @josh-sanders in #4237
- docs(hosting): add a guide for deploying Sure on Pethost by @sadfun in #4179
- bugfix:Add account search to transfer form by @DataEnginr in #4241
- Fix budget page 500 when expected income is nil by @TheRodzz in #4240
- Block password changes when only SSO login is allowed by @gfr-free in #4208
- Require an MFA code before adding a passkey by @gfr-free in #4204
- fix(development): run background jobs through Sidekiq by @DataEnginr in #4262
- fix(ai): route chat to the provider selected by LLM_PROVIDER first by @josh-sanders in #4244
- fix(devcontainer): use the pgvector Postgres image so document import works by @DataEnginr in #4263
- Open Binance account setup from Add Account instead of returning to Settings by @pcbeingused333 in #4259
- Skip email notifications for inactive rules by @jaysbeekay in #4211
- Validate rule action and resource types against known types by @jaysbeekay in #4175
- Keep the rule prompt visible after the transaction drawer closes by @gfr-free in #4210
- Restore account status when DestroyJob enqueue fails by @jaysbeekay in #4172
- Restore an account to disabled when its destroy fails by @jaysbeekay in #4173
- Date a new loan's opening anchor on its start date by @jaysbeekay in #4174
- Scope group sparklines to accounts the user can access by @gfr-free in #4207
- Throttle current-password checks on password change by @gfr-free in #4201
- fix(perf): memoize accessible_accounts in Current to eliminate dashboard N+1 queries by @sentry[bot] in #4170
- Respect account share permissions in bulk edit and categorize by @gfr-free in #4192
- fix(transfers): reset the kept leg's kind when a transfer leg is deleted by @scragnog in #4158
- fix(enable_banking): always offer manual reconnect action by @gfr-free in #3705
- [PERFORMANCE] Stop current-holdings query from rescanning holdings per row by @wps260 in #4156
- Fix three buttons that sent the wrong HTTP method by @pcbeingused333 in #4258
- Open Coinbase wallet setup from Add Account instead of returning to Settings by @pcbeingused333 in #4257
- Fix "Create a bill" from a transaction showing Content Missing by @pcbeingused333 in #4250
- fix(settings): let LLM_PROVIDER override a stored provider choice by @josh-sanders in #4249
- docs(ai): document the native Anthropic provider by @josh-sanders in #4243
- Add a category filter to the dashboard spending widget by @josh-sanders in #4138
- Keep attachments, tags and notes when merging a pending duplicate by @pcbeingused333 in #4247
- Handle SimpleFIN protocol-v2 errlist responses by @marty0x in #3954
- Kraken: leave the Add Account modal at the top level when setup can't open by @pcbeingused333 in #4275
- CoinSpot: leave the Add Account modal at the top level when setup can't open by @pcbeingused333 in #4276
- Keep Add Account errors visible when provider setup can't open (9 providers) by @pcbeingused333 in #4278
- Let existing properties link to a valuation provider by @timkatz in #4282
- Eager-load recurrence rules during occurrence generation to prevent N+1 by @sentry[bot] in #4286
- perf(test): stub retry backoff sleeps in assistant client tests (~6s saved) by @jjmata in #2564
- Prefer the available balance for Enable Banking cards treated as available credit by @pcbeingused333 in #4277
- bugfix : honor json_mode in the PDF document extraction path by @DataEnginr in #4261
- build(deps-dev): bump source-map-js from 1.2.1 to 1.2.2 in /desktop by @dependabot[bot] in #4289
- feat(ai): support Gemini 4 Argon reasoning model by @nareddyt in #4291
- build(deps): bump rustls from 0.23.42 to 0.23.46 in /desktop/src-tauri by @dependabot[bot] in #4290
- Scope the rebuilt manual accounts list to the viewer by @jaysbeekay in #4052
- Block SimpleFIN URLs that target internal addresses by @gfr-free in #4194
- Keep guests from changing family configuration through the API and imports by @gfr-free in #4005
- Check family access for export, import and document blobs by @gfr-free in #4203
- Close remaining Active Storage access gaps for receipts, previews and exports by @gfr-free in #4205
- fix(budget_categories): prevent N+1 in subcategories method by @sentry[bot] in #4066
- Encrypt SnapTrade account_number by @gfr-free in #3832
- Reuse shared frame redirects in provider controllers and generator by @sure-admin in #4281
- Drop calculated holdings shadowed by a provider snapshot in any currency by @pcbeingused333 in #4274
- fix(trade-republic): track the 24-hour login and fix login edge cases by @nielseulink in #4232
- fix(snaptrade): pick one security when a ticker has duplicate rows by @jaysbeekay in #3999
- Carry holding locks forward without an external_id by @jaysbeekay in #4260
- Stabilize account sync UI tests across midnight by @sure-admin in #4279
- Make bill rows follow the transaction row recipe by @gariasf in #4127
- Polish All bills and put the bills tabs' loose text on surfaces by @gariasf in #4129
- security: mobile API auth gates, MFA password re-auth, credential revocation on deactivate by @dgilperez in #1942
- Make the Record payment button submit the manual payment form by @pcbeingused333 in #4251
- Support "not equal to" and "is not empty" for tag rule conditions by @pcbeingused333 in #4246
- feature: add categories structure lock/unlock toggle by @akhlebka in #3987
- Keep rejected statements in the vault inbox by @jaysbeekay in #4299
- Let users count an investment transfer as a plain transfer by @shkarinn in #4177
- Add starts with, ends with and regex rule operators by @jaysbeekay in #4089
- Fix cache invalidation on currency change and account deletion (#4200) by @1steve78 in #4235
- Keep Sankey labels off the next column's bars on narrow screens by @gariasf in #4345
- Send Enable Banking a PSU IP only when it is a public address by @jaysbeekay in #4304
- feat(reports): family setting to stop counting investing as spending by @scragnog in #3952
- Harden OAuth client registration: reserve "Sure" client names, require https redirect URIs by @gfr-free in #4193
- Pad text-only filter chips like the icon chips by @gariasf in #4357
- Run encryption tests in CI with test keys by @gfr-free in #4335
- Keep Plaid securities for accounts with holdings but no investment transactions by @pcbeingused333 in #4256
- Fix Twelve Data per-minute throttle never engaging on Redis by @hharkins in #4328
- Make the cost basis editor read "per share × quantity = total" by @gfr-free in #4184
- build(deps-dev): bump vite from 6.4.3 to 6.4.4 in /desktop by @dependabot[bot] in #4359
- Move dashboard reordering onto the shared sortable-list controller by @gfr-free in #4334
- Document form action buttons in the design system guide by @gariasf in #4313
- fix: expose sync_start_date field in Redbark account setup by @huantrinh1802 in #4306
- Fix sidebar sparklines not rendering at small container sizes by @jjmata in #4361
- Add a configuration overview to System Health by @jjmata in #3929
- Let DS buttons marked hidden actually hide by @gariasf in #4342
- Support multi-currency goal funding by @vlnd0 in #3974
- Read a loan's rate from Redbark's account details by @jaysbeekay in #3956
- Redbark: normalise liability balance sign by provider (fiskil / plaid / other) by @jaysbeekay in #3899
- Stop emailing old matches after an email rule's conditions widen by @jaysbeekay in #4150
- Translate the cost basis overwrite confirmation button by @gfr-free in #4416
- Ask before unlocking a cost basis or resetting a security by @gfr-free in #4418
- fix(bills): explain why a used-up transaction cannot pay a bill by @Holdner in #4376
- feat(insights): deterministic insight text, plus "Dig in with AI" by @josh-sanders in #4239
- Resolve duplicate same-type Enable Banking balances deterministically by @gfr-free in #4344
- Allow calculator expressions and comma decimals in amount fields by @gfr-free in #3502
- Loans: let interest accrue on the basis the lender actually uses by @jaysbeekay in #3639
- Count the same accounts in group totals and sparklines by @gfr-free in #4338
- Move transfer matching controls beside transaction amounts by @sure-admin in #4303
- fix(accounts): localize investment labels and chart dates by @MaxenceChx in #3178
- Send tool_choice auto to Claude models that reject a forced tool by @pcbeingused333 in #4178
- feat(accounts): manual drag-and-drop account order by @gfr-free in #4341
- Generate and backfill logos for website-only provider merchants by @gfr-free in #3776
- Redact the Jev endpoint in the self-hosting settings panel by @jaysbeekay in #4401
- Detect autopay from explicit descriptor wording by @thewillwilson in #3624
- Fix duplicate bill suggestions after renaming a bill by @joaocbatista in #4222
- chore(langfuse): migrate tracing and experiments to v4 by @tatoalo in #3625
- Full backups, rollbacks and restores for self-hosted installs by @mikaelhm in #3909
- fix(ai): retry without strict JSON when Auto mode can't parse the response by @joshiarnav in #3602
- fix(mobile): load full chat history across all pages by @felixmuinde in #4421
- Compare the spending widget against the dashboard period's average month by @josh-sanders in #4139
- Add split_transaction rule action by @gfr-free in #3020
- Show detected bill name in the bill rules section by @joaocbatista in #4430
- Add a tunable, self-testing Bayes classifier by @josh-sanders in #4310
- fix/Give the bill form a searchable, grouped category picker by @DataEnginr in #4431
- Show the investment card when the period has a disposal by @jaysbeekay in #4409
- Fix duplicate migration version for classifier rules by @sure-admin in #4435
- Document SMTP email setup for Docker Compose by @jaysbeekay in #4372
- Anchor menus inside size containers to their button by @jaysbeekay in #4370
- Keep a due-day shift from adding a second occurrence to a paid cycle by @jaysbeekay in #4380
- Record an email action's baseline when it is created by @jaysbeekay in #4176
- Reconstruct a bill's history whenever a detection is activated by @jaysbeekay in #4371
- Check for an existing bill before creating one from a transaction by @jaysbeekay in #4375
- Make the before-payday strip readable at a month of bills by @jaysbeekay in #4369
- Fill a bill's blank category from its transactions by @jaysbeekay in #4374
- fix(sync): respect configured timezone in auto-sync schedule by @BeastOrange in #3696
- Revert "Compare the spending widget against the dashboard period's average month" by @josh-sanders in #4452
- Keep the rules list and settings header inside phone screens by @gfr-free in #4473
- Point the Wise sandbox at Wise's current host by @ycsin in #4458
- Add a setting to turn off transfer auto-matching and a page to review pending matches by @gfr-free in #3034
- feat(reports): spending vs normal section (preview) by @scragnog in #4002
- Add category/tag/merchant/type filters to account activity feed by @gfr-free in #3814
- Fix midnight-dependent controller job assertions by @sure-admin in #4482
- Add credit card statement cycle support by @DataEnginr in #4270
- Restrict instance-wide settings to super admins by @gfr-free in #3794
- security: expire inactive sessions server-side, whitelist session tab keys by @gfr-free in #3242
- feat(mcp): add delete_category and let update_category move categories by @alanmlcrt in #4063
- fix: security price sync reliability (TwelveData errors, offline resolver, health checker, missing names) by @gfr-free in #3098
- feat(mcp): add transfer matching tools by @scragnog in #3818
- feat(api): expose kind, exact amount and split state on transactions by @bhargavmehta01 in #4422
- feat(transactions): auto-generate transaction name from merchant/category (opt-in) by @gfr-free in #3378
- feat(mobile): budgets screen by @bhargavmehta01 in #4426
New Contributors
- @BernatSR made their first contribution in #3882
- @ly0va made their first contribution in #3940
- @cgmccurdy made their first contribution in #3658
- @ryandnurh made their first contribution in #4004
- @0xifarouk made their first contribution in #3950
- @megan-holstein made their first contribution in #4059
- @Simoneu01 made their first contribution in #4020
- @peledies made their first contribution in #2940
- @OscarCaamal made their first contribution in #3651
- @FournyP made their first contribution in #4067
- @stepanbeseda made their first contribution in #4140
- @rtammekivi made their first contribution in #4137
- @ljefferies98 made their first contribution in #4135
- @jonerrr made their first contribution in #4142
- @mrvruj made their first contribution in #4118
- @georanma made their first contribution in #4117
- @enieuwy made their first contribution in #4147
- @romanzipp made their first contribution in #4161
- @zeishr made their first contribution in #3576
- @sadfun made their first contribution in #4179
- @akhlebka made their first contribution in #3987
- @1steve78 made their first contribution in #4235
- @hharkins made their first contribution in #4328
- @huantrinh1802 made their first contribution in #4306
- @ycsin made their first contribution in #4458
- @alanmlcrt made their first contribution in #4063
Mobile Debug Builds
This release includes debug builds of the mobile applications. Download from the Assets area below.
- Android APK: Debug build for testing on Android devices
- iOS Build: Unsigned iOS build (requires code signing for installation)
Note: These are debug builds intended for testing purposes. For production use, please build from source with proper signing credentials.
Full Changelog: v0.7.5...v0.7.6-rc.2