Commit graph

8 commits

Author SHA1 Message Date
William Carroll
b5d4f547d2 Prefer explicit path for kv.json
Paying off some tech debt. Instead of relying ./kv.json existing, which is
relative to the directory from which I start a program, I'm preferring that a
consumer explicitly provides this path.
2020-02-23 19:58:19 +00:00
William Carroll
fabf1c9334 Tidy up structure of briefcase
I had a spare fifteen minutes and decided that I should tidy up my
monorepo. The work of tidying up is not finished; this is a small step in the
right direction.

TL;DR
- Created a tools directory
- Created a scratch directory (see README.md for more information)
- Added README.md to third_party
- Renamed delete_dotfile_symlinks -> symlinkManager
- Packaged symlinkManager as an executable symlink-mgr using buildGo
2020-02-12 16:58:29 +00:00
William Carroll
a50153c141 Support utils.Resolve/2
Supporting a function that resolves a file name checking for the nearest
occurrence of the file from the CWD until it traverses beyond the user's home
directory, after which point it checks in backupPaths.
2020-02-11 17:11:19 +00:00
William Carroll
b3b343ebf9 Support utils.FileExists/1
Support predicate for checking if a file exists on disk.
2020-02-11 17:11:19 +00:00
William Carroll
3ae3b6f039 Support utils.HomeDir/0
Support function for returning the home directory of the current user.
2020-02-11 17:11:19 +00:00
William Carroll
4ea5a1bffa Support utils.Debug{Request,Response}
Exposing functions to print HTTP request and response structs.
2020-02-10 10:06:40 +00:00
William Carroll
64654d1d6d Create gopkgs directory for golang libs
- Created a gopkgs directory and registered it with default.nix's readTree
- Moved monzo_ynab/utils -> gopkgs
- Consumed utils.go in main.go
- Renamed monzo_ynab -> job
2020-02-10 10:06:40 +00:00
William Carroll
ec4c8472ca Support simple key-value store
In order to persist my access and refresh tokens, I needed a store. I think
using a database like SQLite may have been fine for this but was heavier weight
than what I wanted.

I decided to write a simple key-value store when the state is encoded and JSON
in a file called kv.json.

TODO:
- Support field nesting
- Support better error handling
- Support parameterizing the store path (i.e. ./kv.json)
2020-02-10 10:06:40 +00:00