Nick Krichevsky
67500348b0
Add ability to submit transactions to YNAB
2022-10-09 16:00:35 -04:00
Nick Krichevsky
c739436c3a
Parse date from emails
2022-10-09 16:00:35 -04:00
Nick Krichevsky
0bb543eda1
Add configuration for YNAB
2022-10-09 16:00:35 -04:00
Nick Krichevsky
3e317b8b5e
Make log level configurable
2022-10-02 17:46:16 -04:00
Nick Krichevsky
df58628e47
Satisfy clippy
2022-10-02 17:22:33 -04:00
Nick Krichevsky
eef33cdf0c
Switch to fern logger
...
It was annoying to get debug logs for modules that aren't even ours
2022-10-02 16:34:42 -04:00
Nick Krichevsky
856cf0968d
Attempt to parse emails from all known parsers
2022-10-02 16:34:42 -04:00
Nick Krichevsky
60eab8dd8d
Add module to parse Citi and TD emails
2022-10-02 16:34:42 -04:00
Nick Krichevsky
4c67d4292b
Convert stream messages to a dedicated message type
2022-09-05 23:15:51 -04:00
Nick Krichevsky
e79651831b
Make test_util test only
2022-09-05 20:28:05 -04:00
Nick Krichevsky
888c4a80f7
minor cleanup
2022-09-05 20:24:59 -04:00
Nick Krichevsky
07e8bcfc3e
Don't make IMAPSession pub anymore
2022-09-05 14:14:04 -04:00
Nick Krichevsky
07c6e4248b
Mark task::multi pub(crate)
2022-09-05 12:45:58 -04:00
Nick Krichevsky
1ed567f19c
Add task name to multi::Runner tasks
2022-09-04 23:10:08 -04:00
Nick Krichevsky
95081b3fc0
Remove unneeded Task structures from fetch.rs
2022-09-04 21:35:32 -04:00
Nick Krichevsky
587b97a400
Add task::multi::Runner to replace horrid multi-cancel logic in fetching
2022-09-04 14:57:24 -04:00
Nick Krichevsky
724c7c813a
Fix naming typo
2022-09-03 16:36:40 -04:00
Nick Krichevsky
4e47f1699a
bump async imap dep
2022-09-03 16:17:48 -04:00
Nick Krichevsky
6ac012aa89
Remove busy-wait based cancelling
2022-06-05 17:40:30 -04:00
Nick Krichevsky
587cb7578b
Add OnDrop struct for cancelling on drop
2022-06-05 09:23:58 -04:00
Nick Krichevsky
73ba7c3358
Add cancellation of all tasks
2022-06-05 09:10:35 -04:00
Nick Krichevsky
23077d939d
Add type that will allow for multiple cancellation
2022-06-05 00:18:53 -04:00
Nick Krichevsky
13c89d1fe8
Refactor message streaming in preparation for full cancellation
2022-06-04 23:04:54 -04:00
Nick Krichevsky
37b1d6ab1d
Implement cancellation for watching
2022-06-04 22:54:03 -04:00
Nick Krichevsky
2f5495bb80
Change spawner to use Arc
2022-06-04 19:54:07 -04:00
Nick Krichevsky
e23dad1f41
Ensure that stream_new_messages returns something that is Send
...
Makes sure that this can be used on multi-threaded executors
Well, technically it doesn't fully guarantee it, but the error
being non-Send is very unlikely. Anyway, if the returned Stream
is not Send, the future definitely won't be, so we will assert
that at least.
2022-06-01 23:08:23 -04:00
Nick Krichevsky
80381811bc
Don't use AsRef, use Arc instead to be explicit
2022-06-01 23:06:19 -04:00
Nick Krichevsky
d7522fc005
Don't clone SessionGenerators between usages
2022-05-31 01:23:40 -04:00
Nick Krichevsky
5fc2c37d90
Remove SequenceNumberStreamer
2022-05-31 01:01:39 -04:00
Nick Krichevsky
1a95f53cfc
Remove no longer necessary pub use's
...
these were previously used to facilitate 'main'
2022-05-30 16:48:23 -04:00
Nick Krichevsky
abe6cc26fd
Move tokio spawner to testutil mod
2022-05-30 16:48:23 -04:00
Nick Krichevsky
d26e15258d
Remove trait bounds from struct/enum definitions
2022-05-30 16:41:13 -04:00
Nick Krichevsky
5a49696cfa
Refactor usage of Broker to be behind a facade function
2022-05-30 16:21:47 -04:00
Nick Krichevsky
49d3558d9c
Add top-level facade for message streaming
2022-05-30 13:25:12 -04:00
Nick Krichevsky
74e6e1a8e6
minor cleanup of Watcher
2022-05-30 01:23:46 -04:00
Nick Krichevsky
d9c44bdd43
Remove unneeded Sync bound
2022-05-29 23:59:38 -04:00
Nick Krichevsky
71a7f57048
Change fetcher to not parse messages at all
2022-05-29 23:14:11 -04:00
Nick Krichevsky
fd6b53a670
Add timeout to broker test
2022-05-21 10:22:50 -04:00
Nick Krichevsky
3417870edb
Refactor broker to separate task data into its own structure
2022-05-21 10:20:05 -04:00
Nick Krichevsky
ca69471067
Add basic implementation of Broker
2022-05-21 09:39:56 -04:00
Nick Krichevsky
47352c6038
Move message fetching into a trait
2022-05-17 23:32:55 -04:00
Nick Krichevsky
b2a1d72ce1
Clean up get_idler_cell
2022-05-16 21:08:58 -04:00
Nick Krichevsky
9dec076a07
Satisfy clippy and minor cleanups
2022-05-16 21:08:58 -04:00
Nick Krichevsky
ef2c603778
Major refactor of watcher logic to be more generic
...
This is setup to allow for swapping out the message generation logic with mocks and other more easily testable data
2022-05-16 21:08:57 -04:00
Nick Krichevsky
6d3505a960
Clean up use of generics on Session
2022-05-12 18:38:08 -04:00
Nick Krichevsky
4409abd1fa
Break out watching/printing into thier own structures
...
Still crude, but a step in the right direction
2022-05-11 21:25:01 -04:00
Nick Krichevsky
2da2859e9b
Add (crude) initial prototype to fetch new emails
2022-05-08 14:02:40 -04:00
Nick Krichevsky
a5573eb320
Add config struct
2022-05-05 22:08:53 -04:00