Skip to content
Snippets Groups Projects
  1. Jun 04, 2023
  2. Jun 03, 2023
  3. Jun 02, 2023
  4. Jun 01, 2023
  5. May 30, 2023
    • shall0pass's avatar
      Goals: Schedule include spent value in calculation (#1049) · bb1a4747
      shall0pass authored
      
      This adds back the functionality, which was inadvertantly removed, that
      includes the already spent column in the calculation when the template
      is run.
      
      Some transactions may be posted to the account prior to running the
      templates and would result incorrect budgeted amounts.
      
      ---------
      
      Co-authored-by: default avatarJed Fox <git@jedfox.com>
      Unverified
      bb1a4747
    • shall0pass's avatar
      End of month cleanup script (#1016) · d6408599
      shall0pass authored
      ~This is really just a proof of concept. I have no delusions that this
      might get included. I'm sure others might have a much cleaner
      implementation.~
      I'm now delusional.
      
      Resolves https://github.com/actualbudget/actual/issues/508
      
      Taking @youngcw 's advice, I changed the keyword to #cleanup for the end
      of month script to keep it separated.
      
      This screen video shows two categories that are sources of funds. At the
      end of the month, any excess in these funds can be redistributed to your
      highest priorities. Three categories are set as sinks, or recipients, of
      excess funds.
      
      #cleanup source   -> Move 'extra' funds to To Budget
      #cleanup sink -> Fund category with To Budget funds, default weight = 1
      #cleanup sink 2       -> Fund category with To Budget funds, weight = 2
      
      Steps of the script:
      1. Return funds from any category marked 'source'
      2. Fund overspent categories fully if negative carryover is not allowed.
      3. Fund each 'sink' category by the desired weight.
      
      I run through the script twice. Once to show that if there is a debt
      category that has a rolling negative balance, it will skip funding that
      category first and once to show how if a rolling negative balance isn't
      allowed, it will fund it before applying the weighted remainder. The
      example shown uses weights of 60, 20, and 20; therefore, the Debt
      category will receive 60% of the To Budget funds while General and Bills
      receive 20% each. The weights could have been changed to 6, 2, and 2 or
      3 for the Debt category with no additional value for General and Bills
      to achieve the same result.
      
      
      ![cleanup_button](https://github.com/actualbudget/actual/assets/20625555/56ae2b29-9be6-4e85-b532-1b05cff7c4c7)
      Unverified
      d6408599
  6. May 29, 2023
    • Jed Fox's avatar
      More import-related ESLint rules (#1070) · e660e1e7
      Jed Fox authored
      - Enforce that imports from the same package are merged into a single
      import
      - In `loot-core`, require that imports of other `loot-core` files use a
      relative import (like the vast majority of such imports) rather than
      specifiers starting with `loot-core/` (probably a result of moving files
      out of other packages into `loot-core`)
      Unverified
      e660e1e7
  7. May 28, 2023
  8. May 27, 2023
  9. May 25, 2023
  10. May 24, 2023
  11. May 20, 2023
  12. May 18, 2023
    • Shazib Hussain's avatar
      Fix electron app (#1003) · 461132b9
      Shazib Hussain authored
      
      Updates to the latest version of electron and moves the backend-frontend
      communication from node-ipc to websockets. This resolves the previous
      roadblock regarding `nodeIntegration` .
      
      Done
      
      - Remove node-ipc in favour of websockets. 
      - Move file copying out of `preload.js` to avoid importing module `fs`
      there
      - Bump all electron pacakge versions to the latest
      - Added new package for finding open ports as node-ipc is gone
      - Tweaked webpack config for above changes
      
      
      Partially fixes #468
      
      Questions/ Pending:
      - Literally every single test fails for me, presumably some issue with
      my setup/environment.
      - The websocket communication is not using TLS. I'm not sure how to
      enable this, or if we even need to as its all local.
      - Still need to create the CI for building/deploying but I'm not sure
      where start in this regard as i have no exp with it. Presumably we will
      need to point the electron auto-updater to the github releases url's. If
      people are happy with this PR I will look at adding the CI before its
      merged.
      - In dev mode only, I have disabled TLS security becuase my docker
      container's cert is not signed. I _assume_ this will be true for other
      people who spin up the server on thier own hardware. Perhaps I just need
      to change my cert to one from letsencrypt or something...
      
      Notes.
      I have not touched javascript in eons so my apologies if the commit
      trail is a bit fragmented. I tried to keep them fairly contained and
      then there is a slightly gnarly final commit fixing all the linter
      issues... Please let me know if you want me to squash some commits etc.
      
      I initially tried to move this to web workers the same way the web app
      does it but this was unsuccessful. I have found no way to spin up a
      worker in one place (frontend/backend) and then pass this worker to the
      other. The electron ipc channels don't allow you to directly pass
      objects such as workers, everything is cloned/serialised. Passing a port
      number so the other end can spin up its own socket works fine.
      
      ---------
      
      Co-authored-by: default avatarShazib Hussain <contact@shazib.com>
      Co-authored-by: default avatarJed Fox <git@jedfox.com>
      Unverified
      461132b9
  13. May 17, 2023
  14. May 15, 2023
    • SudoCerb's avatar
      Add “Show unused payees” button (#1011) · 1305335f
      SudoCerb authored
      # Add ability to filter the Manage Payees screen to show orphaned payees
      only.
      
      I aimed to modify as little code as possible - we now have a button on
      the Manage Payees screen that will filter the table to show orphaned
      payees only.
      Unverified
      1305335f
  15. May 13, 2023
    • youngcw's avatar
      Fix infinite loop in repeat goal (#1019) · 54f9b712
      youngcw authored
      I believe I found the infinite loop problem in the repeat goal.  
      
      This doesn't mess things up if you are budgeting the same month that the
      goal starts, that's probably why we didn't see it before.
      
      Side note: The logic always starts at the start date in the template,
      then increments until falling in the right month window. If this
      template gets used for, say, a few years, it will start to bog down the
      processing. If someone has a good quick fix I can add that.
      Unverified
      54f9b712
    • shall0pass's avatar
  16. May 10, 2023
  17. May 09, 2023
    • Alberto Gasparin's avatar
    • Jed Fox's avatar
      Enable 'curly' rule (#1015) · 54fa4bcc
      Jed Fox authored
      Multi-line `if`/`for` statements in JS can be confusing since there
      aren’t braces to indicate which code is enclosed in the statement. I set
      the configuration to `multi-line` to enforce usage of braces for
      multi-line statement bodies, but still allow things like `if (foo)
      return;`. I additionally added the `consistent` option to require braces
      for all elements of an if/else chain if one element has it. As you can
      see, this set of options pretty closely matches the existing code style.
      
      I was going to comment in #1008 about this stylistic change but realized
      that it’s (IMO) a little impolite to ask for code style changes unless
      they can be automatically enforced.
      
      Note that `if (foo) { \n return; \n }` is still valid and won’t be
      collapsed. I tried to automatically collapse all such cases but it was a
      lot of files and I didn’t want to pick out the useful from the useless
      differences.
      Unverified
      54fa4bcc
  18. May 07, 2023
  19. May 05, 2023
  20. May 04, 2023
  21. May 02, 2023
    • Jed Fox's avatar
      Add support for credit card OFX files (#987) · d2185909
      Jed Fox authored
      Unverified
      d2185909
    • Jed Fox's avatar
      Remove unused payee rules feature (#985) · 646d0d90
      Jed Fox authored
      Fixes #615. I would appreciate double-checking that I didn’t
      accidentally delete anything that is important.
      
      Since I’m removing the related API methods, this is technically a
      breaking change (even if people would have no reason to remove this
      stuff), so we should probably do a major release of the API package.
      Unverified
      646d0d90
    • shall0pass's avatar
      Priorities for goals (#961) · 66f7336b
      shall0pass authored
      This attempts to add priorities for goal templates and addresses most of
      https://github.com/actualbudget/actual/issues/959
      
      .
      
      I couldn't find a good way to preserve both "Apply" and "Overwrite"
      operations, so this PR does away with the current "Apply" action
      behavior. Every box with a budgeted value will be overwritten if a
      template goal is present.
      
      The added syntax to define priorities is as follows:
      #template    -- priority 0, highest priority
      #template-1  --priority 1, 2nd highest priority
      #template-2 --priority 2, 3rd highest priority
      #template-N --priority N, as many as you'd like.
      
      ~~Leaving as a draft as this may not be the preferred implementation but
      I wanted others to be able to try it with netlify.~~
      
      ---------
      
      Co-authored-by: default avatarCaleb Young <cwy@rincon.com>
      Unverified
      66f7336b
  22. May 01, 2023
  23. Apr 30, 2023
  24. Apr 29, 2023
  25. Apr 23, 2023
  26. Apr 22, 2023
    • Davis Silverman's avatar
      Add experimental new OFX importer (#921) · a1d321d6
      Davis Silverman authored
      Hi there, 
      
      I try to tackle #798 here. It was suggested to throw this behind a
      feature flag, so here it is!
      
      this does its best to import the problem file in #767. 
      
      I am working on this because it would make my work on #918 easier :)
      
      Feel free to set the feature flag to true and try the new importer. The
      date parser is not as sophisticated as the one in `node-libofx`, but I
      tried 3 different OFX files, one from my bank, one from the mocks, and
      one from #767. They all seem to work well enough on that front, but this
      is definitely the weak point of the new implementation.
      
      Let me know what you think!
      Unverified
      a1d321d6
    • shall0pass's avatar
      [Feature] Initial concept for adding percentage based goals (#858) · 3ceb2d92
      shall0pass authored
      This is an initial concept for adding percent based goal targets.
      
      This version works by using a string in the form of: 
      #template 10% of Income <- Income is an income category name. Only
      income category names will work here currently.
      or
      #template 10% of all income<- 'all income' is a keyword in this context
      and will base the calculation on the total income for the month.
      
      Some of the nicer touches like Jed's polite notification that the syntax
      isn't correct is not implemented here yet.
      Unverified
      3ceb2d92
Loading