Separate Time Keeping / timelog? #23
Replies: 2 comments 3 replies
-
I think it'd be important to understand how many ledger users interleave TK and regular transactions. I've used TK mode more regularly and consistently— daily 2012–2014 and daily since 2017, — than I have transaction mode for the 10+ years I've been using ledger. I'd be OK with having a separate program and separate parser for the format. IIRC @jwiegley added TK mode because it was pretty easy to massage into the TX data structures, and that might remain the case for the Rust implementation of the data structures but it probably shouldn't be a priority. |
Beta Was this translation helpful? Give feedback.
-
Keeping more formats in one file makes writing parsers more costly and makes it harder to give good parse error messages. hledger requires timeclock data to be in its own file, but you can still read those files as one big journal. I can't imagine many people routinely keep both kinds of data in one file, it's not efficient for editing or tools. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
There is certain functionality in Ledger that may not have a direct relationship with accounting, as such. One example is Time Keeping and the timelog entries.
Areas like this are a difference compared to other PTA packages and are not processed by the migration tools.
For the sake of backward-compatibility and the users who might be needing the functionality, the option to read these records should still exist. The existing files should be read and processed.
The question is whether we should separate different apps with specific purposes.
For example, the time keeping could be a separate binary executable that processes only the time keeping entries and outputs certain result (a summary of accounts), which would then be manually entered into Ledger transactions.
This would be in line with the Unix Philosophy, which should ease the development and maintenance of individual tools/areas. Respectively, there might be other areas that would be good candidates for extraction into separate packages, preserving the functionality intact.
Not to mention that there might be different time tracking packages out there that may be better suited for the purpose. The ledger time tracking was too simple for the needs of my projects, for example.
Also, to consider an additional file extension(s) for time tracking files.
Pros: reduce code complexity, separation of concerns
Cons: Change of patterns for the existing users
Beta Was this translation helpful? Give feedback.
All reactions