Giter Club home page Giter Club logo

autonabber's People

Contributors

dependabot[bot] avatar jrh3k5 avatar

Stargazers

 avatar

Watchers

 avatar

autonabber's Issues

Pre-allocation budget summary uses activity, not current total, to estimate final amount of budget

I have a Groceries budget item that is currently at a balance of $0.00 with an activity of -$79.68 for the current month. When I apply budget changes, this is what the summary tells me:

  Groceries: -$79.68 => $20.32 (+$100.00)

That should be a starting of $0.00, for a total of $100 after all is said and done.

It should be noted that the application did apply correctly (the budget ended up with a total of $100), so this appears to be merely an issue with the estimation/projection logic.

Write application progress to console

When you confirm that you wish to apply changes, there's no output to indicate that the application hasn't hung. It would be nice if the application printed some kind of progress meter to indicate that things are moving along.

Budget application is wrong

When the budget change is applied, it should set the balance to:

existing balance + delta

But, instead, it's setting it to:

existing balance + (existing balance + delta)

Progress of budget application changes total count

Looks like budget change applications might be getting double-counted? The actual budget application wasn't incorrect - i.e., the correct amount of money was applied - but the item progress started at 44 items and ended at 88 (somehow):

2022-07-08T09:08:20.945-0500    INFO    autonabber/main.go:107  Applying change 1 of 44
2022-07-08T09:08:21.334-0500    INFO    autonabber/main.go:107  Applying change 2 of 45
2022-07-08T09:08:21.609-0500    INFO    autonabber/main.go:107  Applying change 3 of 46
2022-07-08T09:08:21.889-0500    INFO    autonabber/main.go:107  Applying change 4 of 47
2022-07-08T09:08:22.169-0500    INFO    autonabber/main.go:107  Applying change 5 of 48
2022-07-08T09:08:22.446-0500    INFO    autonabber/main.go:107  Applying change 6 of 49
2022-07-08T09:08:22.719-0500    INFO    autonabber/main.go:107  Applying change 7 of 50
2022-07-08T09:08:22.988-0500    INFO    autonabber/main.go:107  Applying change 8 of 51
2022-07-08T09:08:23.296-0500    INFO    autonabber/main.go:107  Applying change 9 of 52
2022-07-08T09:08:23.570-0500    INFO    autonabber/main.go:107  Applying change 10 of 53
2022-07-08T09:08:23.847-0500    INFO    autonabber/main.go:107  Applying change 11 of 54
2022-07-08T09:08:24.134-0500    INFO    autonabber/main.go:107  Applying change 12 of 55
2022-07-08T09:08:24.425-0500    INFO    autonabber/main.go:107  Applying change 13 of 56
2022-07-08T09:08:24.732-0500    INFO    autonabber/main.go:107  Applying change 14 of 57
2022-07-08T09:08:25.082-0500    INFO    autonabber/main.go:107  Applying change 15 of 58
2022-07-08T09:08:25.388-0500    INFO    autonabber/main.go:107  Applying change 16 of 59
2022-07-08T09:08:25.730-0500    INFO    autonabber/main.go:107  Applying change 17 of 60
2022-07-08T09:08:26.098-0500    INFO    autonabber/main.go:107  Applying change 18 of 61
2022-07-08T09:08:26.380-0500    INFO    autonabber/main.go:107  Applying change 19 of 62
2022-07-08T09:08:26.664-0500    INFO    autonabber/main.go:107  Applying change 20 of 63
2022-07-08T09:08:26.931-0500    INFO    autonabber/main.go:107  Applying change 21 of 64
2022-07-08T09:08:27.198-0500    INFO    autonabber/main.go:107  Applying change 22 of 65
2022-07-08T09:08:27.454-0500    INFO    autonabber/main.go:107  Applying change 23 of 66
2022-07-08T09:08:27.737-0500    INFO    autonabber/main.go:107  Applying change 24 of 67
2022-07-08T09:08:28.018-0500    INFO    autonabber/main.go:107  Applying change 25 of 68
2022-07-08T09:08:28.325-0500    INFO    autonabber/main.go:107  Applying change 26 of 69
2022-07-08T09:08:28.628-0500    INFO    autonabber/main.go:107  Applying change 27 of 70
2022-07-08T09:08:28.894-0500    INFO    autonabber/main.go:107  Applying change 28 of 71
2022-07-08T09:08:29.167-0500    INFO    autonabber/main.go:107  Applying change 29 of 72
2022-07-08T09:08:29.446-0500    INFO    autonabber/main.go:107  Applying change 30 of 73
2022-07-08T09:08:29.760-0500    INFO    autonabber/main.go:107  Applying change 31 of 74
2022-07-08T09:08:30.093-0500    INFO    autonabber/main.go:107  Applying change 32 of 75
2022-07-08T09:08:30.469-0500    INFO    autonabber/main.go:107  Applying change 33 of 76
2022-07-08T09:08:31.098-0500    INFO    autonabber/main.go:107  Applying change 34 of 77
2022-07-08T09:08:31.717-0500    INFO    autonabber/main.go:107  Applying change 35 of 78
2022-07-08T09:08:32.072-0500    INFO    autonabber/main.go:107  Applying change 36 of 79
2022-07-08T09:08:32.353-0500    INFO    autonabber/main.go:107  Applying change 37 of 80
2022-07-08T09:08:32.643-0500    INFO    autonabber/main.go:107  Applying change 38 of 81
2022-07-08T09:08:32.907-0500    INFO    autonabber/main.go:107  Applying change 39 of 82
2022-07-08T09:08:33.202-0500    INFO    autonabber/main.go:107  Applying change 40 of 83
2022-07-08T09:08:33.510-0500    INFO    autonabber/main.go:107  Applying change 41 of 84
2022-07-08T09:08:33.778-0500    INFO    autonabber/main.go:107  Applying change 42 of 85
2022-07-08T09:08:34.057-0500    INFO    autonabber/main.go:107  Applying change 43 of 86
2022-07-08T09:08:34.359-0500    INFO    autonabber/main.go:107  Applying change 44 of 87
Added $3584.40 across 88 categories

Interpret "dry run" flag to use a read-only YNAB client

Currently, if the program detects it's in a dry run, it skips the execution behavior. This has allowed bugs like #9 to sneak in.

To help identify these bugs during development, change the logic to merely use a read-only YNAB client, allowing us to exercise more parts of the program.

Create "undo" files

Because changes made to budgets through the YNAB API do not appear in the history of movement of money, creating "undo" files to allow a rollback of changes would be helpful in case either the user or the tool screws something up.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.