Skip to main content

BudgetCheck - Releases

← App details

Nextcloud 34

BudgetCheck 1.0.16
Release Details
UpdatedJune 16, 2026, 8:29 p.m.
Changelog

Added

  • Import preferences API: server-synced CSV import defaults (ImportPreferencesService) with unit tests.
  • Transaction import hardening: UTF-8 and legacy encoding fallback, fingerprint-based duplicate skip, expanded reference column aliases, and higher rate limits for split imports.

Changed

  • CSV import UI: remove bank-type column from direction mapping; improved import page layout and validation feedback.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureNf9PlBV/1o8mLcdOG5YFSu6WMNOphaZXMRWnlzS2crVtJnR5hLLu3t5fd1lHaMMFsmPLxOY+wBWfqF1DMfrVWqZiP9dehXka8j516Q6CprOO7NIqkYCzzuTJ8FbfjqGZax9Q2w23fZkoQ5xwIPwEVH+TbzOvQdwbjDo5UB2eRyNu0v9VsUkUq5j/WSQ0GI+wEeQ64viKjM+SqXsjtF3Hsr+fc/IUYZ5U5sECD/WMdG9joDaD21uEqsE1hmjeQhnzewBu88IVEtxrbONbiLR+DtcVRbq3qvckgI70V47B6GAfwAPbwhgX72LBypRWeqhHbMTI0OiLsqIUjA5XJjSUXx0jZkAuNacWA8aeoFKPq06Kocwk0NO4XlG79JZV1pZvw05ndkUDc12Sf5KaivoD6MelSngw+oTOlPB+Pr1o3QrXmDo9hJKvXTYj8da1J6a0dFmedN1+BSG5iXmyR3WsohFZ+9tM/jMW6Lm85ad2cWMBF4saYdsKXlpiBr2URtZ/4MERFGIFjdcM6uiM6MJ5O2+thEwAcB7BRoAq/EAHr9EZBhznB7Xs43WiPm++pPZltzCtfh3BA4eLKW5IeQ4Rt5orvz9yqdRarh8bxJC79oIZazdPzGObVoicFMzULPuTLbG3nvI2b7h4vxvER/ZC9BmsgimqPG8rz0by1A+DfJA=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.6.0
BudgetCheck 1.0.15
Release Details
UpdatedJune 16, 2026, 11:32 a.m.
Changelog

Fixed

  • App access permissions (#2): users and groups on the directory allow-list can open BudgetCheck without a pre-existing workspace membership. Workspace data remains gated by per-workspace role checks.
  • Group workspace membership counting: only honour group rows with assignable roles (viewer, contributor) when resolving effective access.

Added

  • CSV transaction import: guided import page with preview validation and atomic commit (TransactionImportService, /import, API preview/commit endpoints).
  • Unit tests for AccessControlService::canUseApp() allow-list behaviour (AccessControlAppAccessTest).
  • Integration test for AppAccessMiddleware deny/allow flows against live app config (AppAccessGateIntegrationTest).

Changed

  • Removed unused DENIAL_NO_WORKSPACE denial path; directory restriction is the sole app-entry gate.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureHZouyTZ5hZqsPrzxtw1wrLWQGIf+JewhQ82Ie2DcoTq/9Y6N1wrJ2NdS1Qi3LxrgwQYS4C/O+Rxbpf4d62cOJEIZ68/madywndUblrwSW4KXRURCzc3yODL/ol9NUFyrBFRkLvZ5L29iVVLkeny9g3XNKpaA+iXWFiiDNrHm48pbWtoYe76r0CO1S+oEt3m35U/YfhgkDbaBPSU3oak3cMZyRqBtnbs2jlGTu68ElE0Af77OzoKlx2e6/18J0dBDHX3yFJvkJnGXKzAoi1O3aVPaz22aXfvq0wTIf9uWo8v2ZA90PiOFR4nFpEBmx7g8bcmpEkFhwhPeeTYlYPsmkSy+9hncFX15GJff2hQVff5rjs006M4JY93yV/Kk7glu043avNEfcnKDXXN5dtejEMpuC8V8oZREnHyqbXslQ228DHwv6ui+XmWgYp6+gkUA4dnGVi/lEzpPMLpcXrVBV3qcoTukMR0z1R6O7VyErNVzNlxTezs/5pIMJ4lP9nWPwV3CNIHnO7TIkBm11s393rOQO+3IT467quMhSCTj6dcxkKWp/tY1CTYH1BWpD+/aQ7Ck0Z4kmczhZuPw5vndG77RFB1tHLOQfQ3W26DysmeeiISeYPPYSIlaotxkjQhyeuVVfi2ejm/zNokwsMUsqT5lH4u87KO2G632khnvkX8=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.6.0
BudgetCheck 1.0.14
Release Details
UpdatedJune 12, 2026, 3:01 p.m.
Changelog

Fixed

  • Data loss after Nextcloud upgrade: UninstallDropTables preserves tables and settings on disable; full cleanup runs only on app removal.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignaturePjqj9ukzex/oDxEZ+z5so7SXgsV5XiuivULYarakCc1QdgB6uun6YCgj90RFP05w4drljrSlIHvqfyWUyqAtDo0fRtWwclgI5RROg9CmEaCqUITOrEtasJVmQwIXdnG1GBGeykF9C8x3W+/vJZaVOlPrzpMmk2x7xjlq62LR+ez4j1kpjO15KA/hqAkj7yCGC/q6h7/xkEImpI1N8EDG/bRjHb2o5btSLpBetMdxKbodkMOHlLZoVI635RBf7JznCMN0dlojigvESsBsTYaoIw9a0eNrA4SlfIV8bjAVpLG1jjMp7Z0reVYJ4bzK+HY0gh2UOzfNVjg50bovOunmh+REpMRuIWwQnLgiqr53xJ4kr8E/dKcAZWz/rvX8QhSM+hXqqRvUm6Nv37P4H3EbSkNxW8D3H5bzgKQQLc150ht6hlBpRSSNz1mtYf/RRePnfD9hkhxVDkVAMRTqi9C96mfc2W/xtwxpdzx4m1CI4DONCeG4e0PnmJBqMM3xj70pxBapy5dcxKmGp1SkbnKWmCzNTDCAH8MF4WsMg232t47UDSipU+H6wE64+Kqy6RquC/7Jpq0RFun5jrnp69pSiJ+bNeh7ngJG8RrDkgBYmx92AbTgcOFPnFoxYGl3evog8n7lAfjbE9WE2asQOhYlLbhOSsAfTEmZTicciKrdM8g=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.6.0

Nextcloud 33

BudgetCheck 1.0.16
Release Details
UpdatedJune 16, 2026, 8:29 p.m.
Changelog

Added

  • Import preferences API: server-synced CSV import defaults (ImportPreferencesService) with unit tests.
  • Transaction import hardening: UTF-8 and legacy encoding fallback, fingerprint-based duplicate skip, expanded reference column aliases, and higher rate limits for split imports.

Changed

  • CSV import UI: remove bank-type column from direction mapping; improved import page layout and validation feedback.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureNf9PlBV/1o8mLcdOG5YFSu6WMNOphaZXMRWnlzS2crVtJnR5hLLu3t5fd1lHaMMFsmPLxOY+wBWfqF1DMfrVWqZiP9dehXka8j516Q6CprOO7NIqkYCzzuTJ8FbfjqGZax9Q2w23fZkoQ5xwIPwEVH+TbzOvQdwbjDo5UB2eRyNu0v9VsUkUq5j/WSQ0GI+wEeQ64viKjM+SqXsjtF3Hsr+fc/IUYZ5U5sECD/WMdG9joDaD21uEqsE1hmjeQhnzewBu88IVEtxrbONbiLR+DtcVRbq3qvckgI70V47B6GAfwAPbwhgX72LBypRWeqhHbMTI0OiLsqIUjA5XJjSUXx0jZkAuNacWA8aeoFKPq06Kocwk0NO4XlG79JZV1pZvw05ndkUDc12Sf5KaivoD6MelSngw+oTOlPB+Pr1o3QrXmDo9hJKvXTYj8da1J6a0dFmedN1+BSG5iXmyR3WsohFZ+9tM/jMW6Lm85ad2cWMBF4saYdsKXlpiBr2URtZ/4MERFGIFjdcM6uiM6MJ5O2+thEwAcB7BRoAq/EAHr9EZBhznB7Xs43WiPm++pPZltzCtfh3BA4eLKW5IeQ4Rt5orvz9yqdRarh8bxJC79oIZazdPzGObVoicFMzULPuTLbG3nvI2b7h4vxvER/ZC9BmsgimqPG8rz0by1A+DfJA=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.6.0
BudgetCheck 1.0.15
Release Details
UpdatedJune 16, 2026, 11:32 a.m.
Changelog

Fixed

  • App access permissions (#2): users and groups on the directory allow-list can open BudgetCheck without a pre-existing workspace membership. Workspace data remains gated by per-workspace role checks.
  • Group workspace membership counting: only honour group rows with assignable roles (viewer, contributor) when resolving effective access.

Added

  • CSV transaction import: guided import page with preview validation and atomic commit (TransactionImportService, /import, API preview/commit endpoints).
  • Unit tests for AccessControlService::canUseApp() allow-list behaviour (AccessControlAppAccessTest).
  • Integration test for AppAccessMiddleware deny/allow flows against live app config (AppAccessGateIntegrationTest).

Changed

  • Removed unused DENIAL_NO_WORKSPACE denial path; directory restriction is the sole app-entry gate.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureHZouyTZ5hZqsPrzxtw1wrLWQGIf+JewhQ82Ie2DcoTq/9Y6N1wrJ2NdS1Qi3LxrgwQYS4C/O+Rxbpf4d62cOJEIZ68/madywndUblrwSW4KXRURCzc3yODL/ol9NUFyrBFRkLvZ5L29iVVLkeny9g3XNKpaA+iXWFiiDNrHm48pbWtoYe76r0CO1S+oEt3m35U/YfhgkDbaBPSU3oak3cMZyRqBtnbs2jlGTu68ElE0Af77OzoKlx2e6/18J0dBDHX3yFJvkJnGXKzAoi1O3aVPaz22aXfvq0wTIf9uWo8v2ZA90PiOFR4nFpEBmx7g8bcmpEkFhwhPeeTYlYPsmkSy+9hncFX15GJff2hQVff5rjs006M4JY93yV/Kk7glu043avNEfcnKDXXN5dtejEMpuC8V8oZREnHyqbXslQ228DHwv6ui+XmWgYp6+gkUA4dnGVi/lEzpPMLpcXrVBV3qcoTukMR0z1R6O7VyErNVzNlxTezs/5pIMJ4lP9nWPwV3CNIHnO7TIkBm11s393rOQO+3IT467quMhSCTj6dcxkKWp/tY1CTYH1BWpD+/aQ7Ck0Z4kmczhZuPw5vndG77RFB1tHLOQfQ3W26DysmeeiISeYPPYSIlaotxkjQhyeuVVfi2ejm/zNokwsMUsqT5lH4u87KO2G632khnvkX8=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.6.0
BudgetCheck 1.0.14
Release Details
UpdatedJune 12, 2026, 3:01 p.m.
Changelog

Fixed

  • Data loss after Nextcloud upgrade: UninstallDropTables preserves tables and settings on disable; full cleanup runs only on app removal.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignaturePjqj9ukzex/oDxEZ+z5so7SXgsV5XiuivULYarakCc1QdgB6uun6YCgj90RFP05w4drljrSlIHvqfyWUyqAtDo0fRtWwclgI5RROg9CmEaCqUITOrEtasJVmQwIXdnG1GBGeykF9C8x3W+/vJZaVOlPrzpMmk2x7xjlq62LR+ez4j1kpjO15KA/hqAkj7yCGC/q6h7/xkEImpI1N8EDG/bRjHb2o5btSLpBetMdxKbodkMOHlLZoVI635RBf7JznCMN0dlojigvESsBsTYaoIw9a0eNrA4SlfIV8bjAVpLG1jjMp7Z0reVYJ4bzK+HY0gh2UOzfNVjg50bovOunmh+REpMRuIWwQnLgiqr53xJ4kr8E/dKcAZWz/rvX8QhSM+hXqqRvUm6Nv37P4H3EbSkNxW8D3H5bzgKQQLc150ht6hlBpRSSNz1mtYf/RRePnfD9hkhxVDkVAMRTqi9C96mfc2W/xtwxpdzx4m1CI4DONCeG4e0PnmJBqMM3xj70pxBapy5dcxKmGp1SkbnKWmCzNTDCAH8MF4WsMg232t47UDSipU+H6wE64+Kqy6RquC/7Jpq0RFun5jrnp69pSiJ+bNeh7ngJG8RrDkgBYmx92AbTgcOFPnFoxYGl3evog8n7lAfjbE9WE2asQOhYlLbhOSsAfTEmZTicciKrdM8g=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.6.0
BudgetCheck 1.0.13
Release Details
UpdatedJune 4, 2026, 9:14 a.m.
Changelog

Fixed

  • EnsureBudgetCheckSchema: use the core Connection from the server container for MigrationService, so install/post-migration repair runs reliably on upgrade.

Added

  • Integration tests for repair steps (UpgradeRepairIntegrationTest) and PHPUnit bootstrap support when tests run against a Nextcloud tree (NEXTCLOUD_ROOT / monorepo lib/base.php).

Changed

  • Confirm Nextcloud 33 as max-version in appinfo/info.xml (aligned with latest stable server).
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureMu0NdymSSRQ+70tNThrVIk60RnCFcWERf1gT4pdyMBFINTfsft3FKiavlB6Pjc74f00rf8fIlXtN54pKCSVv7nHTloAccEqyiFfIQA9UqlstwDBw57XZY1w2hOhB+hHYe1Lh8BAZd/TAFUHEg90OXrBo27Qb9mOrmaHbCVF2IMle4faEQJRJDx5Gnjx2FkjOf5l63AKo4FFzoTQZ3072fyPKy4szhY9Ajs8m9+Dv82qwdKncw/xD6Yk6PPR6MjCJad7/T7c6jrydQb2MaoILpMjFIYJAw3VX6Suryb2gkoX+DIhUJ6nPrUB/ssZdvFJ6YXmU+sSwfHq02jY+vf7MuF2kAFJIJequn2blYN8juGvzexKE3ZKj2NWisCMqzac1KJU/ISbB4v2D+FP9IUEiWzgjz6hh8Ci/bNLUnU9SkkkdJUAW2adJjERDggVDrcZ/wlKb8boKRwE7kvvYy6784N1tFzyU7T3c6g4AWE7aDYA9dFtrE0jsej66UmVdWDCyslA8bJzvpRPfBak2z9K0UPIjs3A9kHdcD4gBEk8fmHFNRgdX8IRTxuLprHE/tfO8lsP3m9i+tuxgcb87dmc9EPpxx6gNXRxdL3oFiAQsgmJ9AckEddtpSIlbmc5hfYTJnC3edJc7UcKLfZnZGE+wG9Z8X1t/c7GzqBhYO6k/TuA=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.5.0
BudgetCheck 1.0.10
Release Details
UpdatedMay 25, 2026, 8:10 p.m.
Changelog

Added

  • Searchable timezone and currency pickers on workspace and app settings: js/common/catalog-pickers.js with keyboard navigation, live filtering, and accessible combobox/listbox semantics; shared partials templates/common/bc-timezone-picker.php and bc-currency-picker.php.
  • CurrencyCatalog: single source for supported ISO codes (including RUB, UAH, KZT); TimezoneCatalog: full IANA list exposed via catalog API.
  • OCA\BudgetCheck\Repair\UninstallDropTables and EnsureBudgetCheckSchema wired in appinfo/info.xml for complete uninstall cleanup and idempotent schema repair on upgrade.
  • Migration Version1009: schema/repair hardening for production installs; BudgetCheckTableCatalog centralizes table names.
  • Tests: CurrencyCatalogTest, TimezoneCatalogTest, EnsureBudgetCheckSchemaTest, UninstallDropTablesTest, WorkspaceServiceUpdatePayloadTest.

Changed

  • Workspace settings: server-side validation for timezone/currency; currency lock after the first transaction.
  • App settings / settings UI: migrated to catalog pickers instead of plain text fields; styling in css/app.css.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
Signaturege7LOoLm6PTYEDq/m3I0FLAVfA71Og+Tkz7Qod1TqwvzLaVPHpqJ5MV8LII54oLlwFP1ogFasrwfQUnjQf2gJvApWEE6WDcxTvrVPgDEOGLw9Je1V3A6FtPZMFgwXHYn8Ruo1wkmHcOFpV/mvd3tZThZymo6tQNBARGlCeZg2QZuzbe3XSLva/8N5xwEzY0prHKAN0wbF1xWdB8CSpeuGDSkOxvvGbyKpxfeWR3frUE/o375FaeVzeWDi42occvnPLfvFlhSuvqvZ/gZfhv4CAtxVTxk/fFCvKoC+2zMDUOpiSqdQllpIogOeReSfvpsCoS90SLPXMZMqn00O9XkGjajEsH/hnXCgldMJW7w50EW16t80sbpHn73dDhvyztff4f3nEd86BZiR8/ZZgFCzxh13z/tcJfVnSH43oavli1xvDTlQ8wnFxRNXH0Oi0zXeCJGuAIHRZWnRnprZ/ET1VwDGb4m+SO0vgbS6REGh5Lz1JzxqY3eMLfmbRkkDKx5MZujMwSqfkorno58zyRGL2L4cXLeZF48eJHof60yL3vp10ell+JBJnZf8feWHmZsQTyjziRiIRkUGAfFqHqNVnZTyOwE5eq45lP8NCXw6AAXNRMqBoBCIqRZk78syuDEQI2G66qg5CeeQGfnl0+QrwqFJTiLutBU5VYibDj9HIw=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0,<8.5.0
BudgetCheck 1.0.9
Release Details
UpdatedMay 22, 2026, 6:35 p.m.
Changelog
  • Fix App Store info.xml validation: screenshots before donation/dependencies, settings before navigations, drop unsupported keywords, cap at 10 screenshots (schema limit).
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureDn5a3JvhXhYY5r502pyiNdnQIutmv8UTOtEIHY/OYiZpQFHJg2Gd5L7OHVAACh9haxzG8K80pzfFn7mch1BxwQXKCV3s0lwGxsbfQ6OBd+Xkend/iJiwZVkroT0ZdOQJOK0AmN94v6LtJJ8tGyqN35UmmUtiJb1TePTXkXkshroRp1wd+RQx8WqYwBhUxMk/r8QMfEIOGaOoMMC1N5GV5gS+lJXfdccOaKgGRHubZJuqmwvXZyOQYzANgtoAXKyV1AkQIEPkMJrzEuhG2Ne240OR+PWVuudub0ioJPvF9w1aVtf8qX3j2p2N3VBeBlNKNMwIyp3bomU0zbSIG47veGNigmnBMiiKRPLVUuS9AZYMMn5PgShpsHKgk2FWGnFJCjbn/vLjNU2dTalE3F2KWw4Xy8R7bSGo9P7zIRhdh8ixkA1t1KEZMZvb20cR2TRaZrp02x4RXTBe5kb+Sd8C8+qJbLiUynXO4WH4tS/b8hQIp/cHP6LR1JGYXpyFjpiI0R3ZOJI9i2t+Sx/a9RebMCBheRd1KN0lNv0PyrNcKDZz3hxGw621l+Xz8dAZEWO8LUvh4Az9zpSsuTIrUf0Ai1BpShu/aBxcz22NVhAmkDmdM0r8RvE99uyRzZFll8TtDVIy2FJUk4EzieJoQZRx0UfK7GdBGp3bLldTarHgP8Y=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0,<8.5.0

Nextcloud 32

BudgetCheck 1.0.16
Release Details
UpdatedJune 16, 2026, 8:29 p.m.
Changelog

Added

  • Import preferences API: server-synced CSV import defaults (ImportPreferencesService) with unit tests.
  • Transaction import hardening: UTF-8 and legacy encoding fallback, fingerprint-based duplicate skip, expanded reference column aliases, and higher rate limits for split imports.

Changed

  • CSV import UI: remove bank-type column from direction mapping; improved import page layout and validation feedback.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureNf9PlBV/1o8mLcdOG5YFSu6WMNOphaZXMRWnlzS2crVtJnR5hLLu3t5fd1lHaMMFsmPLxOY+wBWfqF1DMfrVWqZiP9dehXka8j516Q6CprOO7NIqkYCzzuTJ8FbfjqGZax9Q2w23fZkoQ5xwIPwEVH+TbzOvQdwbjDo5UB2eRyNu0v9VsUkUq5j/WSQ0GI+wEeQ64viKjM+SqXsjtF3Hsr+fc/IUYZ5U5sECD/WMdG9joDaD21uEqsE1hmjeQhnzewBu88IVEtxrbONbiLR+DtcVRbq3qvckgI70V47B6GAfwAPbwhgX72LBypRWeqhHbMTI0OiLsqIUjA5XJjSUXx0jZkAuNacWA8aeoFKPq06Kocwk0NO4XlG79JZV1pZvw05ndkUDc12Sf5KaivoD6MelSngw+oTOlPB+Pr1o3QrXmDo9hJKvXTYj8da1J6a0dFmedN1+BSG5iXmyR3WsohFZ+9tM/jMW6Lm85ad2cWMBF4saYdsKXlpiBr2URtZ/4MERFGIFjdcM6uiM6MJ5O2+thEwAcB7BRoAq/EAHr9EZBhznB7Xs43WiPm++pPZltzCtfh3BA4eLKW5IeQ4Rt5orvz9yqdRarh8bxJC79oIZazdPzGObVoicFMzULPuTLbG3nvI2b7h4vxvER/ZC9BmsgimqPG8rz0by1A+DfJA=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.6.0
BudgetCheck 1.0.15
Release Details
UpdatedJune 16, 2026, 11:32 a.m.
Changelog

Fixed

  • App access permissions (#2): users and groups on the directory allow-list can open BudgetCheck without a pre-existing workspace membership. Workspace data remains gated by per-workspace role checks.
  • Group workspace membership counting: only honour group rows with assignable roles (viewer, contributor) when resolving effective access.

Added

  • CSV transaction import: guided import page with preview validation and atomic commit (TransactionImportService, /import, API preview/commit endpoints).
  • Unit tests for AccessControlService::canUseApp() allow-list behaviour (AccessControlAppAccessTest).
  • Integration test for AppAccessMiddleware deny/allow flows against live app config (AppAccessGateIntegrationTest).

Changed

  • Removed unused DENIAL_NO_WORKSPACE denial path; directory restriction is the sole app-entry gate.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureHZouyTZ5hZqsPrzxtw1wrLWQGIf+JewhQ82Ie2DcoTq/9Y6N1wrJ2NdS1Qi3LxrgwQYS4C/O+Rxbpf4d62cOJEIZ68/madywndUblrwSW4KXRURCzc3yODL/ol9NUFyrBFRkLvZ5L29iVVLkeny9g3XNKpaA+iXWFiiDNrHm48pbWtoYe76r0CO1S+oEt3m35U/YfhgkDbaBPSU3oak3cMZyRqBtnbs2jlGTu68ElE0Af77OzoKlx2e6/18J0dBDHX3yFJvkJnGXKzAoi1O3aVPaz22aXfvq0wTIf9uWo8v2ZA90PiOFR4nFpEBmx7g8bcmpEkFhwhPeeTYlYPsmkSy+9hncFX15GJff2hQVff5rjs006M4JY93yV/Kk7glu043avNEfcnKDXXN5dtejEMpuC8V8oZREnHyqbXslQ228DHwv6ui+XmWgYp6+gkUA4dnGVi/lEzpPMLpcXrVBV3qcoTukMR0z1R6O7VyErNVzNlxTezs/5pIMJ4lP9nWPwV3CNIHnO7TIkBm11s393rOQO+3IT467quMhSCTj6dcxkKWp/tY1CTYH1BWpD+/aQ7Ck0Z4kmczhZuPw5vndG77RFB1tHLOQfQ3W26DysmeeiISeYPPYSIlaotxkjQhyeuVVfi2ejm/zNokwsMUsqT5lH4u87KO2G632khnvkX8=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.6.0
BudgetCheck 1.0.14
Release Details
UpdatedJune 12, 2026, 3:01 p.m.
Changelog

Fixed

  • Data loss after Nextcloud upgrade: UninstallDropTables preserves tables and settings on disable; full cleanup runs only on app removal.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignaturePjqj9ukzex/oDxEZ+z5so7SXgsV5XiuivULYarakCc1QdgB6uun6YCgj90RFP05w4drljrSlIHvqfyWUyqAtDo0fRtWwclgI5RROg9CmEaCqUITOrEtasJVmQwIXdnG1GBGeykF9C8x3W+/vJZaVOlPrzpMmk2x7xjlq62LR+ez4j1kpjO15KA/hqAkj7yCGC/q6h7/xkEImpI1N8EDG/bRjHb2o5btSLpBetMdxKbodkMOHlLZoVI635RBf7JznCMN0dlojigvESsBsTYaoIw9a0eNrA4SlfIV8bjAVpLG1jjMp7Z0reVYJ4bzK+HY0gh2UOzfNVjg50bovOunmh+REpMRuIWwQnLgiqr53xJ4kr8E/dKcAZWz/rvX8QhSM+hXqqRvUm6Nv37P4H3EbSkNxW8D3H5bzgKQQLc150ht6hlBpRSSNz1mtYf/RRePnfD9hkhxVDkVAMRTqi9C96mfc2W/xtwxpdzx4m1CI4DONCeG4e0PnmJBqMM3xj70pxBapy5dcxKmGp1SkbnKWmCzNTDCAH8MF4WsMg232t47UDSipU+H6wE64+Kqy6RquC/7Jpq0RFun5jrnp69pSiJ+bNeh7ngJG8RrDkgBYmx92AbTgcOFPnFoxYGl3evog8n7lAfjbE9WE2asQOhYlLbhOSsAfTEmZTicciKrdM8g=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.6.0
BudgetCheck 1.0.13
Release Details
UpdatedJune 4, 2026, 9:14 a.m.
Changelog

Fixed

  • EnsureBudgetCheckSchema: use the core Connection from the server container for MigrationService, so install/post-migration repair runs reliably on upgrade.

Added

  • Integration tests for repair steps (UpgradeRepairIntegrationTest) and PHPUnit bootstrap support when tests run against a Nextcloud tree (NEXTCLOUD_ROOT / monorepo lib/base.php).

Changed

  • Confirm Nextcloud 33 as max-version in appinfo/info.xml (aligned with latest stable server).
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureMu0NdymSSRQ+70tNThrVIk60RnCFcWERf1gT4pdyMBFINTfsft3FKiavlB6Pjc74f00rf8fIlXtN54pKCSVv7nHTloAccEqyiFfIQA9UqlstwDBw57XZY1w2hOhB+hHYe1Lh8BAZd/TAFUHEg90OXrBo27Qb9mOrmaHbCVF2IMle4faEQJRJDx5Gnjx2FkjOf5l63AKo4FFzoTQZ3072fyPKy4szhY9Ajs8m9+Dv82qwdKncw/xD6Yk6PPR6MjCJad7/T7c6jrydQb2MaoILpMjFIYJAw3VX6Suryb2gkoX+DIhUJ6nPrUB/ssZdvFJ6YXmU+sSwfHq02jY+vf7MuF2kAFJIJequn2blYN8juGvzexKE3ZKj2NWisCMqzac1KJU/ISbB4v2D+FP9IUEiWzgjz6hh8Ci/bNLUnU9SkkkdJUAW2adJjERDggVDrcZ/wlKb8boKRwE7kvvYy6784N1tFzyU7T3c6g4AWE7aDYA9dFtrE0jsej66UmVdWDCyslA8bJzvpRPfBak2z9K0UPIjs3A9kHdcD4gBEk8fmHFNRgdX8IRTxuLprHE/tfO8lsP3m9i+tuxgcb87dmc9EPpxx6gNXRxdL3oFiAQsgmJ9AckEddtpSIlbmc5hfYTJnC3edJc7UcKLfZnZGE+wG9Z8X1t/c7GzqBhYO6k/TuA=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Databases MySQL
PostgreSQL
Minimum Integer bits32
PHP>=8.2.0,<8.5.0
BudgetCheck 1.0.10
Release Details
UpdatedMay 25, 2026, 8:10 p.m.
Changelog

Added

  • Searchable timezone and currency pickers on workspace and app settings: js/common/catalog-pickers.js with keyboard navigation, live filtering, and accessible combobox/listbox semantics; shared partials templates/common/bc-timezone-picker.php and bc-currency-picker.php.
  • CurrencyCatalog: single source for supported ISO codes (including RUB, UAH, KZT); TimezoneCatalog: full IANA list exposed via catalog API.
  • OCA\BudgetCheck\Repair\UninstallDropTables and EnsureBudgetCheckSchema wired in appinfo/info.xml for complete uninstall cleanup and idempotent schema repair on upgrade.
  • Migration Version1009: schema/repair hardening for production installs; BudgetCheckTableCatalog centralizes table names.
  • Tests: CurrencyCatalogTest, TimezoneCatalogTest, EnsureBudgetCheckSchemaTest, UninstallDropTablesTest, WorkspaceServiceUpdatePayloadTest.

Changed

  • Workspace settings: server-side validation for timezone/currency; currency lock after the first transaction.
  • App settings / settings UI: migrated to catalog pickers instead of plain text fields; styling in css/app.css.
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
Signaturege7LOoLm6PTYEDq/m3I0FLAVfA71Og+Tkz7Qod1TqwvzLaVPHpqJ5MV8LII54oLlwFP1ogFasrwfQUnjQf2gJvApWEE6WDcxTvrVPgDEOGLw9Je1V3A6FtPZMFgwXHYn8Ruo1wkmHcOFpV/mvd3tZThZymo6tQNBARGlCeZg2QZuzbe3XSLva/8N5xwEzY0prHKAN0wbF1xWdB8CSpeuGDSkOxvvGbyKpxfeWR3frUE/o375FaeVzeWDi42occvnPLfvFlhSuvqvZ/gZfhv4CAtxVTxk/fFCvKoC+2zMDUOpiSqdQllpIogOeReSfvpsCoS90SLPXMZMqn00O9XkGjajEsH/hnXCgldMJW7w50EW16t80sbpHn73dDhvyztff4f3nEd86BZiR8/ZZgFCzxh13z/tcJfVnSH43oavli1xvDTlQ8wnFxRNXH0Oi0zXeCJGuAIHRZWnRnprZ/ET1VwDGb4m+SO0vgbS6REGh5Lz1JzxqY3eMLfmbRkkDKx5MZujMwSqfkorno58zyRGL2L4cXLeZF48eJHof60yL3vp10ell+JBJnZf8feWHmZsQTyjziRiIRkUGAfFqHqNVnZTyOwE5eq45lP8NCXw6AAXNRMqBoBCIqRZk78syuDEQI2G66qg5CeeQGfnl0+QrwqFJTiLutBU5VYibDj9HIw=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0,<8.5.0
BudgetCheck 1.0.9
Release Details
UpdatedMay 22, 2026, 6:35 p.m.
Changelog
  • Fix App Store info.xml validation: screenshots before donation/dependencies, settings before navigations, drop unsupported keywords, cap at 10 screenshots (schema limit).
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEBjCCAu4CAhNIMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwNTIxMTczNzI3WhcNMzYwODI2MTczNzI3WjAWMRQwEgYD
VQQDDAtidWRnZXRjaGVjazCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AJnRN7KmwnqPPQ6xo7tHfSeDWh73itHQWiGw6DXy2ker+VtD/gyHKHhzjqMsjDDr
M1+r1HHDyynCXuum6twZTSTpcw6SqI0JtLxj8RU3DmQ13jpoYYWpNbkvgmbemhJo
pLH5fuDjtw59GHewVYOvxNVOo2enZZnK/SFMEjQMpFln5K2i/fhkGdIreNRqMXlL
1zqN2s3Gy3cUyBPELMlssJVkKWPUwfEcHAqtNV2wLpmrm/csxubQc3A93nc74QEh
d0jt5S8cRGivY0zhviGVOW2RQPvksw5V0fuO/El5SacH4mbmLPWi+wFGM2wVhuMB
XxSyl51w5wbkt85L142GsMwXTq08eHArgE3n6sCBYMhGCEeVdP6V3ZF8wwRIk2E4
84gF99WuuUpc9l6n9rccN2fk76MftI4/BpqZUJwx3WGrZ42oeixgAbp3J+Xp7ysF
Bh62xU62ufXw//k5SHzB9kJ9MhjRAj5kgL0LniKeNnp4YnkWVoPnXxBAyFgnKkPj
TnMx6A7z53EWoJboFdhoeJOG2JMr+PqUla7CugzqfkOSRUzuJVo1SFdnGfdP5qjI
Sa3AMjaC3HIPe9SBrmyp3eiF2dFpgqw+pmbpLOFRdD8i8SdI5X17TTrIUdG9x3Xl
hUrXjbg+AXassgC5cBpHwKzY9/m/QwzRTC8lrC5IAqOVAgMBAAEwDQYJKoZIhvcN
AQELBQADggEBAFuMPph/gdyj2Sr410peleF0tPLCM1DWFnW7fu9UNf7HIcaTUD3l
7y3f8Db32Hl+oNQLv2Md+ay4u8WURYL1nPJ2ha4jGNJQBbLmlTkO+KkF/KZIWIsd
Tpqj0JvT+k4sjbUpOhEMCzGoQTD/YtH687uDWUkVMb/wzTwhZf7U3IFLwlDcDNnI
CIyjWE1Cqus166RZe15YcGT3miy3C5d42qtvAKJ86wk7QMlLi7ph2ZoB94/qFbag
XaX4JPWJdwIlsqFYVqLgJ9eQ7j6bz3J1mZSWtxGGViY9uW7kDI1jCOSfDDx6dN80
/Qk8vK9nxqhaKWB+OJ3eILUExN7/gTUQbuQ=
-----END CERTIFICATE-----
SignatureDn5a3JvhXhYY5r502pyiNdnQIutmv8UTOtEIHY/OYiZpQFHJg2Gd5L7OHVAACh9haxzG8K80pzfFn7mch1BxwQXKCV3s0lwGxsbfQ6OBd+Xkend/iJiwZVkroT0ZdOQJOK0AmN94v6LtJJ8tGyqN35UmmUtiJb1TePTXkXkshroRp1wd+RQx8WqYwBhUxMk/r8QMfEIOGaOoMMC1N5GV5gS+lJXfdccOaKgGRHubZJuqmwvXZyOQYzANgtoAXKyV1AkQIEPkMJrzEuhG2Ne240OR+PWVuudub0ioJPvF9w1aVtf8qX3j2p2N3VBeBlNKNMwIyp3bomU0zbSIG47veGNigmnBMiiKRPLVUuS9AZYMMn5PgShpsHKgk2FWGnFJCjbn/vLjNU2dTalE3F2KWw4Xy8R7bSGo9P7zIRhdh8ixkA1t1KEZMZvb20cR2TRaZrp02x4RXTBe5kb+Sd8C8+qJbLiUynXO4WH4tS/b8hQIp/cHP6LR1JGYXpyFjpiI0R3ZOJI9i2t+Sx/a9RebMCBheRd1KN0lNv0PyrNcKDZz3hxGw621l+Xz8dAZEWO8LUvh4Az9zpSsuTIrUf0Ai1BpShu/aBxcz22NVhAmkDmdM0r8RvE99uyRzZFll8TtDVIy2FJUk4EzieJoQZRx0UfK7GdBGp3bLldTarHgP8Y=
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0,<8.5.0