kresus merge requestshttps://framagit.org/kresusapp/kresus/-/merge_requests2023-08-29T10:47:40Zhttps://framagit.org/kresusapp/kresus/-/merge_requests/1474Add hint to select or create new category in create/edit rules screen (#1158)2023-08-29T10:47:40ZA-NicoladieAdd hint to select or create new category in create/edit rules screen (#1158)It's a try. I'm not super comfortable with web development. Maybe I forgot to change some stuff... 😅It's a try. I'm not super comfortable with web development. Maybe I forgot to change some stuff... 😅v0.20.0https://framagit.org/kresusapp/kresus/-/merge_requests/1567fix: use correct route for update/delete operation on transactions2023-06-26T21:18:58ZBenjamin Bouvierfix: use correct route for update/delete operation on transactionsBefore the renaming, it was in plural too, and the rest of the code uses the plural form in this case.Before the renaming, it was in plural too, and the rest of the code uses the plural form in this case.https://framagit.org/kresusapp/kresus/-/merge_requests/1153Add ML to automatically set operation category2023-01-17T02:18:02ZsinopsysHKAdd ML to automatically set operation categoryI know there's been discussion on that topic (#41) and ML wasn't the first priority.
I felt too lazy to setup manually formal rules to allocate the category based on patterns so I tried to have an algorythm to do to it automatically and...I know there's been discussion on that topic (#41) and ML wasn't the first priority.
I felt too lazy to setup manually formal rules to allocate the category based on patterns so I tried to have an algorythm to do to it automatically and letting me just validated its result.
Here are the added elements in the UI to manage it on a day to day:
![new_auto_categorization](/uploads/38c79557bc77e06739d0f2b96f9a19c9/new_auto_categorization.PNG)
Again I let you decide if you want it: it was for my own usage but if it is of any interest for broader audience...
So what I did:
Introduce a python module to setup a ML model that will be trained with all historical transactions with category set. Then it applies prediction on non categorized operations to propose one.
Model is re-trained before each poll in order to fine-tune its setup.
Bulk classification is done after each poll to predict all un-categorized operations in a row.
Classification is performed also after each bank fetch.
Internally to manage it: it introduce a flag to keep track whether or not the category of an operation is a guessed one or a set one.
On the UI, it adds a specific **visual to distinguish guessed/set category** (thickness of the border).
To be user friendly it **adds a little button** next to guessed categories allowing the user to validate the proposed category and set it definitely.
For further convenience, it provides **within the search panel a checkbox allowing to filter on guessed categories** only.
*Limitation: when there is only a limited set of categorized operations,the Classifier cannot initialize properly (min ~10).
TODO: enhance charts to be able to filter out guessed categories ordistinguishing them from formal ones.*https://framagit.org/kresusapp/kresus/-/merge_requests/1538Add amount condition to rules2023-01-13T12:51:29ZNicolas Frandeboeufmail@nicofrand.euAdd amount condition to rulesThis MR creates a second condition (amount), always existing (the number of conditions is fixed) but nullable.This MR creates a second condition (amount), always existing (the number of conditions is fixed) but nullable.Benjamin BouvierBenjamin Bouvierhttps://framagit.org/kresusapp/kresus/-/merge_requests/1523Reset budget date when merging a real transaction into a manual transaction (...2022-11-29T07:31:39ZNicolas Frandeboeufmail@nicofrand.euReset budget date when merging a real transaction into a manual transaction (fix #1191)Benjamin BouvierBenjamin Bouvierhttps://framagit.org/kresusapp/kresus/-/merge_requests/1511[client] Improve form sub buttons display on mobile2022-06-24T08:33:49ZNicolas Frandeboeufmail@nicofrand.eu[client] Improve form sub buttons display on mobileThis MR harmonizes buttons width on mobile:
![k-mobile](/uploads/e9bf22214ba33f926201f62bdc678ec6/k-mobile.png)This MR harmonizes buttons width on mobile:
![k-mobile](/uploads/e9bf22214ba33f926201f62bdc678ec6/k-mobile.png)Benjamin BouvierBenjamin Bouvierhttps://framagit.org/kresusapp/kresus/-/merge_requests/1502Draft: [docker] Add python3-pdfminer (fix #1168)2022-05-31T12:41:21ZNicolas Frandeboeufmail@nicofrand.euDraft: [docker] Add python3-pdfminer (fix #1168)Not sure this is the right fix, we already install `pdfminer.six` through pip: https://framagit.org/kresusapp/kresus/-/blob/main/support/docker/Dockerfile-nightly#L39Not sure this is the right fix, we already install `pdfminer.six` through pip: https://framagit.org/kresusapp/kresus/-/blob/main/support/docker/Dockerfile-nightly#L39https://framagit.org/kresusapp/kresus/-/merge_requests/1487Draft: Update dependencies2022-05-27T07:58:33ZNicolas Frandeboeufmail@nicofrand.euDraft: Update dependenciesSome dependencies are either buggy, too recent, or require too much work
- typeorm: see #1164 + I don't trust minor versions to be non-breaking
- react-router-dom: there is a compatibility mode but I don't see the point to ship it unles...Some dependencies are either buggy, too recent, or require too much work
- typeorm: see #1164 + I don't trust minor versions to be non-breaking
- react-router-dom: there is a compatibility mode but I don't see the point to ship it unless we begin migration: https://github.com/remix-run/react-router/discussions/8753
- rc-slider: see https://github.com/react-component/slider/issues/825
- react-toastify: brand new 9.x.x version with plugins, no point to upgrade
```
Package Current Wanted Latest Package Type URL
rc-slider 9.7.5 9.7.5 10.0.0 devDependencies http://github.com/react-component/slider/
react-router-dom 5.3.1 5.3.1 6.3.0 devDependencies https://reactrouter.com/
react-toastify 8.2.0 8.2.0 9.0.1 devDependencies https://github.com/fkhadra/react-toastify#readme
typeorm 0.2.39 0.2.45 0.3.6 dependencies https://github.com/typeorm/typeorm#readme
```
:warning: : It's still a draft "only" because:
- Following React update (maybe the concurrent mode) the loading icon when the app starts shift from the center to the left.
- Engine needs to be set to 14+ for mocha 10 (if we agree the commit for node 12 should be modified and placed before the mocha upgrade)Nicolas Frandeboeufmail@nicofrand.euNicolas Frandeboeufmail@nicofrand.euhttps://framagit.org/kresusapp/kresus/-/merge_requests/1421Issue 1112 encrypted exports2022-05-05T22:15:56ZKaplanIssue 1112 encrypted exportsWork on issue #1112.
* Use a random salt different for each export,
* the salt is embedded in the export,
* use HMAC-SHA256 instead of HMAC-SHA512 for PBKDF2's pseudo random function. Even HMAC-SHA1 is considered secure,
* use AES in GC...Work on issue #1112.
* Use a random salt different for each export,
* the salt is embedded in the export,
* use HMAC-SHA256 instead of HMAC-SHA512 for PBKDF2's pseudo random function. Even HMAC-SHA1 is considered secure,
* use AES in GCM mode for its authentication feature,
* support AES128, AES192 and AES256. But there is no configuration setting (yet?),
* many cipher parameters are saved along the export.
Note: I am *not* a Javascript programmer. So do not hesitate to indicate where I am not using the right constructs.
# TODO?
* Save de KDF (PBKDF2) in the export,
* save the PBKDF2 PRF (HMAC-SHA256) in the export,
* save the IV size in the exportBenjamin BouvierBenjamin Bouvierhttps://framagit.org/kresusapp/kresus/-/merge_requests/1389WIP:Add View-based in/out chart2022-05-05T22:14:10ZsinopsysHKWIP:Add View-based in/out chartKeep the existing In-Out chart to offer global picture over current Access.
Add an In-Out chart dedicated to current view (currency or specific account).
This enables to get thinner view on savings.Keep the existing In-Out chart to offer global picture over current Access.
Add an In-Out chart dedicated to current view (currency or specific account).
This enables to get thinner view on savings.https://framagit.org/kresusapp/kresus/-/merge_requests/1337Draft: replace Charts Default Params modal, by a dedicated view Charts Settings2022-05-05T22:14:01ZNicolas DelebecqueDraft: replace Charts Default Params modal, by a dedicated view Charts SettingsA proposal to replace the Charts Default Params modal, by a dedicated view called Charts settings.
It is still accessible from any Charts view through the"Default Parameters" button.
When user click on the #Go back to the charts" butto...A proposal to replace the Charts Default Params modal, by a dedicated view called Charts settings.
It is still accessible from any Charts view through the"Default Parameters" button.
When user click on the #Go back to the charts" button,he|she goes back to the charts view he|she came from. For the moment, changes settings are not taken into account when displaying back the charts view. I think it is because, I used the history.goBack(), and it does not re-render the view, just display it back.
Have a look when you have time, thanks.https://framagit.org/kresusapp/kresus/-/merge_requests/1471[migrations] Set balance to initial + sum of transactions for accounts...2022-03-29T09:00:03ZNicolas Frandeboeufmail@nicofrand.eu[migrations] Set balance to initial + sum of transactions for accounts...Set balance to initial + sum of transactions for accounts disabled before the "real" balance migration
Fix #1154Set balance to initial + sum of transactions for accounts disabled before the "real" balance migration
Fix #1154Benjamin BouvierBenjamin Bouvierhttps://framagit.org/kresusapp/kresus/-/merge_requests/1465Fix account resync not updating the account real balance2022-02-21T19:54:25ZNicolas Frandeboeufmail@nicofrand.euFix account resync not updating the account real balanceThe balance should always be updated if different from the current one.The balance should always be updated if different from the current one.https://framagit.org/kresusapp/kresus/-/merge_requests/980[charts] Show only the hovered category in the bar chart, instead of all the ...2021-11-22T14:49:39ZAntoine[charts] Show only the hovered category in the bar chart, instead of all the categories.This MR allows the user to see only the value of the hovered category, instead of all the categories as it does currently. This is helpful for partial colour blinded people: they can determine easily which bar is hovered.
A new setting ...This MR allows the user to see only the value of the hovered category, instead of all the categories as it does currently. This is helpful for partial colour blinded people: they can determine easily which bar is hovered.
A new setting could be used, if the current behaviour is to be kept.
![hover](/uploads/b5d155df08fd9a56de1504a0299e2f60/hover.png)https://framagit.org/kresusapp/kresus/-/merge_requests/1425Draft: Master2021-05-26T20:19:14ZCelineKDraft: MasterAdded Turkish and Spanish translation of Kresus.Added Turkish and Spanish translation of Kresus.https://framagit.org/kresusapp/kresus/-/merge_requests/1420[client] Scroll to the top of the infinite list only on mount, not on each re...2021-05-17T19:53:19ZAntoine[client] Scroll to the top of the infinite list only on mount, not on each rerender.This MR fixed the following problem:
- In the report section, apply a filter over categories (let's say: all transaction without categories)
- scroll down
- change the category of a transaction so that the transaction is not expected to...This MR fixed the following problem:
- In the report section, apply a filter over categories (let's say: all transaction without categories)
- scroll down
- change the category of a transaction so that the transaction is not expected to be displayed anymore (it does not match the search criteria)
Observed behavior before fix :
- the transaction list is scrolled to the top.
Expected behavior :
- the scroll is unchanged.
The fix allows to have the expected behavior.AntoineAntoinehttps://framagit.org/kresusapp/kresus/-/merge_requests/1314Lazy-load Dashboard component to reduce the size of the main bundle.2021-05-08T10:38:52ZAntoineLazy-load Dashboard component to reduce the size of the main bundle.This MR aims at reducing the main bundle size from 1.58MiB to 1.24MiB (in production) by lazy loading the charts more intelligently.
The first commit extracts the selects from all the chart files to put them in a single file (one of the...This MR aims at reducing the main bundle size from 1.58MiB to 1.24MiB (in production) by lazy loading the charts more intelligently.
The first commit extracts the selects from all the chart files to put them in a single file (one of the reason the charts were included in the bundle was due to the selects being shared between lazy-loaded modules and non lazy-loaded ones.
The second commit exposes the charts from a single file and lazy load all of the charts from there.
The file `charts/charts.js` is not written in `ts` because this would require modifying the target version of JS of `ts-loader`, which I prefer to leave it as is (it seems we are not very consistent across babel, ts etc see #1036 ).https://framagit.org/kresusapp/kresus/-/merge_requests/1417Update banks descriptors2021-04-22T17:52:31ZBenjamin BouvierUpdate banks descriptors2 new deprecated bank modules: hsbchk + sogecartenet. There are also some custom fields that slightly change, and it's not clear what to do, so doing nothing :/
Fixes #1103.2 new deprecated bank modules: hsbchk + sogecartenet. There are also some custom fields that slightly change, and it's not clear what to do, so doing nothing :/
Fixes #1103.https://framagit.org/kresusapp/kresus/-/merge_requests/1408InOutChart: do not display chart if there are no transactions (fix #1093)2021-04-16T21:22:04ZNicolas Frandeboeufmail@nicofrand.euInOutChart: do not display chart if there are no transactions (fix #1093)This was a regression from a8a410007cdfb85cb842cb047b0071c5fe34109d: there might be zero accounts to take into account for an access balance, therefore zero data to display in a InOutChart…This was a regression from a8a410007cdfb85cb842cb047b0071c5fe34109d: there might be zero accounts to take into account for an access balance, therefore zero data to display in a InOutChart…https://framagit.org/kresusapp/kresus/-/merge_requests/1365[server] Ensure duplicate budget items cannot be inserted in the db, and...2021-04-16T18:33:29ZAntoine[server] Ensure duplicate budget items cannot be inserted in the db, and...[server] Ensure duplicate budget items cannot be inserted in the db, and remove duplicate entries. Fix #1051.[server] Ensure duplicate budget items cannot be inserted in the db, and remove duplicate entries. Fix #1051.AntoineAntoine