Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
500 most recent check-ins
|
2026-07-13
| ||
| 08:15 | Update README.md [ci skip] ... (Leaf check-in: 760c9ad48c user: cristian tags: trunk) | |
| 08:11 | Align doc for readability ... (check-in: 0b61bda586 user: cristian tags: trunk) | |
| 08:09 | Improve documentation of 't .<folder-name>' ... (check-in: ef66b6a375 user: cristian tags: trunk) | |
| 08:06 | Move usage section to the top of the readme ... (check-in: 90092ef599 user: cristian tags: trunk) | |
|
2026-07-12
| ||
| 20:44 | Make read fail on error ... (check-in: 6d185bd990 user: cristian tags: trunk) | |
| 15:54 | Document update command ... (check-in: e25c118d68 user: cristian tags: trunk) | |
| 11:35 | Align columns dynamically on test lib [ci skip] ... (check-in: beeaa7a0e9 user: cristian tags: trunk) | |
| 11:31 | Open T.Logic only on dispatch scope as it make expliciter it's only needed here (probably it's worth placing dispatch at lib folder & unit test it ... (check-in: 824ad005bd user: cristian tags: trunk) | |
| 11:29 | Remove effects import and use namespace instead as we're using a single entity from the module and this make it explicitier where it comes from ... (check-in: 4203f7faea user: cristian tags: trunk) | |
| 11:12 | Remove unneeded explict type signature on dispatcher [ci skip] ... (check-in: 704d75fde6 user: cristian tags: trunk) | |
| 11:00 | Ensure @doing tag is removed when editing a commit or completing a todo ... (check-in: c5d4dd2c6d user: cristian tags: trunk) | |
| 08:23 | Make count command take an associated path so it can work with namespacing `t .<folder-name> count` ... (check-in: bec4770997 user: cristian tags: trunk) | |
| 08:13 | Update README.md [ci skip] ... (check-in: 1142597d9d user: cristian tags: trunk) | |
| 08:13 | Update README.md [ci skip] ... (check-in: 6bb7104016 user: cristian tags: trunk) | |
| 01:09 | Move helpers to a helpers file ... (check-in: 20e91a3302 user: cristian tags: trunk) | |
| 00:57 | Change swift to ocaml in README ... (check-in: 0f2db4c9a6 user: cristian tags: trunk) | |
| 00:44 | Make command_router deliver a concrete error on wrong project name ... (check-in: 9a4f5e839d user: cristian tags: trunk) | |
| 00:10 | Rename cli_args to args because minimalism ... (check-in: aeeeaffe4a user: cristian tags: trunk) | |
| 00:09 | Unify make path helpers & move to a helpers file ... (check-in: 7298110852 user: cristian tags: trunk) | |
| 00:05 | Remove unneeded T.Logic namescope ... (check-in: a9518f7983 user: cristian tags: trunk) | |
| 00:03 | Inline commit editing in parsing ... (check-in: 3b30297c38 user: cristian tags: trunk) | |
| 00:01 | Format ... (check-in: b5b8d1b93a user: cristian tags: trunk) | |
| 00:00 | Remove any_todo_path constant as I feel is not really necessary ... (check-in: 30e00ecdb4 user: cristian tags: trunk) | |
|
2026-07-11
| ||
| 23:58 | Invert arguments passed to expect.equal in parser so it complies with api (Expected <something> got <something else>) ... (check-in: 9e999152ac user: cristian tags: trunk) | |
| 23:55 | Simplify code (parser shouldnt return an option but a concrete cmd) ... (check-in: 724e50ea1a user: cristian tags: trunk) | |
| 23:26 | Align matrices ... (check-in: 3dff1a706b user: cristian tags: trunk) | |
| 23:22 | Remove unneeded parenthesis in tuple matrices ... (check-in: a07edb78c1 user: cristian tags: trunk) | |
| 23:17 | Implement t : for good 🤦 ... (check-in: 0a22105185 user: cristian tags: trunk) | |
| 22:59 | Implement t :3 New value ... (check-in: 7d1a33c377 user: cristian tags: trunk) | |
| 22:49 | Use A and B notation on integration tests ... (check-in: 51ae3e5575 user: cristian tags: trunk) | |
| 22:47 | Document : ... (check-in: e432d8bdf9 user: cristian tags: trunk) | |
| 22:46 | Implement EditFile ... (check-in: 4a9697a482 user: cristian tags: trunk) | |
| 22:36 | Separate logic and parser into different files ... (check-in: 0890652df0 user: cristian tags: trunk) | |
| 22:29 | Move effects to their own file ... (check-in: 16fd17f21b user: cristian tags: trunk) | |
| 22:27 | Inline args withing cli_args ... (check-in: d3a832167b user: cristian tags: trunk) | |
| 22:25 | If commiting & completing remove @doing ... (check-in: 280fd20444 user: cristian tags: trunk) | |
| 22:15 | Return commited todo ... (check-in: 8c0e54b9fc user: cristian tags: trunk) | |
| 22:12 | Document @doing ... (check-in: 752f321ecb user: cristian tags: trunk) | |
| 22:11 | Implement Doing @doing ... (check-in: 561f2554c0 user: cristian tags: trunk) | |
| 21:49 | Mark as doing feature: Delivers success when marking a line successfully ... (check-in: 38a90e8821 user: cristian tags: trunk) | |
| 21:41 | Mark as doing feature: Delivers error on wrong line ... (check-in: e203f524e7 user: cristian tags: trunk) | |
| 21:30 | Mark as doing feature: Delivers error on write error ... (check-in: 451f8bec9e user: cristian tags: trunk) | |
| 21:29 | Mark as doing feature: Delivers error on read error ... (check-in: 83dafcd713 user: cristian tags: trunk) | |
| 21:17 | Rename tests.ml to entrypoint.ml as it semantically indicates that we need to manually import tests there ... (check-in: 795bf96bae user: cristian tags: trunk) | |
| 21:11 | Move mini test lib to its own folder so we can parse faster what is a test & what is not ... (check-in: 36c383943f user: cristian tags: trunk) | |
| 20:24 | Update README.md [ci skip] ... (check-in: 0a525d90d8 user: cristian tags: trunk) | |
| 20:15 | Document range command ... (check-in: 50f59aca8f user: cristian tags: trunk) | |
| 18:29 | Create new branch named "feat-mark-as-doing" ... (Leaf check-in: 948943846a user: cristian tags: feat-mark-as-doing) | |
| 18:14 | Implement now formatting ... (check-in: 7268f82ec3 user: cristian tags: trunk) | |
| 17:07 | Fix bug on remove dispatch where we would always use the scoped path instead of the command one ... (check-in: 3f37557731 user: cristian tags: trunk) | |
| 17:03 | Use t helper in integration tests ... (check-in: 850cf7c58d user: cristian tags: trunk) | |
| 16:56 | Fix CI ... (check-in: c8da9819c4 user: cristian tags: trunk) | |
| 16:54 | Merge branch fix-ci ... (check-in: 45d027baec user: cristian tags: trunk) | |
| 16:54 | Create new branch named "fix-ci" ... (Closed-Leaf check-in: 5fa84bbb2b user: cristian tags: fix-ci) | |
| 16:54 | Update ci ... (check-in: 506540eed0 user: cristian tags: trunk) | |
| 16:44 | Update ci ... (check-in: 61b30b8b9f user: cristian tags: trunk) | |
| 16:40 | Update makefile ... (check-in: bfbb2daa17 user: cristian tags: trunk) | |
| 16:38 | Update README.md ... (check-in: a0c00107dc user: cristian tags: trunk) | |
| 16:30 | Merge branch ocaml ... (check-in: 56444aace3 user: cristian tags: trunk) | |
| 16:29 | Remove in prepration to merge ... (check-in: c329d7bb6a user: cristian tags: trunk) | |
| 16:28 | Merge branch ocaml-cli-implementation ... (Closed-Leaf check-in: 1aeecc9be0 user: cristian tags: ocaml) | |
| 16:27 | Format ... (Closed-Leaf check-in: 2ce5ac5f93 user: cristian tags: ocaml-cli-implementation) | |
| 16:24 | Implement ListDoingAcrossProjects ... (check-in: 367a5d86b4 user: cristian tags: ocaml-cli-implementation) | |
| 15:55 | Implement ListDoing ... (check-in: 420cfc954a user: cristian tags: ocaml-cli-implementation) | |
| 15:41 | Use original order instead of inverse for now ... (check-in: b6b1631a5e user: cristian tags: ocaml-cli-implementation) | |
| 15:25 | Test project namespaced commands ... (check-in: ca7ad3c327 user: cristian tags: ocaml-cli-implementation) | |
| 15:15 | Implemnet ListProjects ... (check-in: 58a6aed565 user: cristian tags: ocaml-cli-implementation) | |
| 14:49 | Create t helper for cli invocation ergonmy ... (check-in: 15feef09a8 user: cristian tags: ocaml-cli-implementation) | |
| 14:37 | Implement Commit (Fossil) ... (check-in: c78b3fe026 user: cristian tags: ocaml-cli-implementation) | |
| 13:55 | Test editor cancel cases ... (check-in: 4b290a14c0 user: cristian tags: ocaml-cli-implementation) | |
| 13:52 | Implement Edit ... (check-in: ccaa08f7ea user: cristian tags: ocaml-cli-implementation) | |
| 13:25 | Implement Echo ... (check-in: ad31ea6d57 user: cristian tags: ocaml-cli-implementation) | |
| 13:18 | Add dispatcher to avoid nested pattern matching ... (check-in: 9ae4ea7b95 user: cristian tags: ocaml-cli-implementation) | |
| 12:48 | Implement Remove ... (check-in: 6d74d00e99 user: cristian tags: ocaml-cli-implementation) | |
| 12:44 | Verify contents of .todo & .done on todo complete integration test ... (check-in: bbf19f89a0 user: cristian tags: ocaml-cli-implementation) | |
| 12:17 | Fix 'Add' command test implementation not asserting final output & silently failing because non injected real effect ... (check-in: 0c369f5d69 user: cristian tags: ocaml-cli-implementation) | |
| 12:01 | Implement Complete ... (check-in: 279f7f1e1c user: cristian tags: ocaml-cli-implementation) | |
| 11:57 | Implement Add ... (check-in: c941d45c6e user: cristian tags: ocaml-cli-implementation) | |
| 11:50 | Implement ListRange ... (check-in: 335a841df9 user: cristian tags: ocaml-cli-implementation) | |
| 11:18 | Remove shebang ... (check-in: d3f264e6ce user: cristian tags: ocaml-cli-implementation) | |
| 11:17 | Implement Count ... (check-in: d6eb86e769 user: cristian tags: ocaml-cli-implementation) | |
| 11:07 | Implement list command ... (check-in: c1d7817110 user: cristian tags: ocaml-cli-implementation) | |
| 10:15 | Clean up ... (check-in: 12b724fd18 user: cristian tags: ocaml-cli-implementation) | |
| 10:03 | Setup tcl integration test flow ... (check-in: 5b323500b2 user: cristian tags: ocaml-cli-implementation) | |
| 09:03 | Create new branch named "ocaml-cli-implementation" ... (check-in: e1ddbb553c user: cristian tags: ocaml-cli-implementation) | |
| 08:25 | Prefix boolean returning method with 'is' for clarity ... (check-in: 1b1faadb35 user: cristian tags: ocaml) | |
| 08:22 | Rename single to arg y values to args for clearer naming ... (check-in: 39a5d868d7 user: cristian tags: ocaml) | |
| 01:11 | Move leaked formatter from prod to test module ... (check-in: cf28c46d89 user: cristian tags: ocaml) | |
| 00:50 | Prefix boolean returning method with 'is' for clarity ... (check-in: a6c0ed6284 user: cristian tags: ocaml) | |
|
2026-07-09
| ||
| 22:49 | Merge branch ocaml-parser ... (check-in: d213b66e5d user: cristian tags: ocaml) | |
| 22:48 | t count # Count non empty lines ... (Closed-Leaf check-in: 6b30648050 user: cristian tags: ocaml-parser) | |
| 22:44 | t .<project> New todo with multiple words # Adds ... (check-in: aea731d4f6 user: cristian tags: ocaml-parser) | |
| 20:11 | Group custom bindings/operators to the top ... (check-in: 8f5aa4c0ad user: cristian tags: ocaml-parser) | |
| 20:06 | Move parser to prod ... (check-in: b95d5556f1 user: cristian tags: ocaml-parser) | |
| 19:57 | Merge branch ocaml-fmt-printers ... (check-in: 738db0f1ba user: cristian tags: ocaml-parser) | |
| 19:55 | Reuse fmt_string_list in fmt_tuple ... (Closed-Leaf check-in: c580900015 user: cristian tags: ocaml-fmt-printers) | |
| 19:50 | Rename & use fmt_string_list on list of list (string) printer ... (check-in: c01902f482 user: cristian tags: ocaml-fmt-printers) | |
| 19:47 | Move formatters/printers to test helpers file ... (check-in: 1f3052ef69 user: cristian tags: ocaml-fmt-printers) | |
| 19:43 | Use expect.equal with fmt_result_unit instead of custom assert around expect.fail ... (check-in: 24b4c02f23 user: cristian tags: ocaml-fmt-printers) | |
| 19:42 | Use expect.equal with fmt_result_string instead of custom assert around expect.fail ... (check-in: f0f6e58804 user: cristian tags: ocaml-fmt-printers) | |
| 19:41 | Use expect.equal with fmt_reslt_list instead of custom assert around expect.fail ... (check-in: 3ff1fceb18 user: cristian tags: ocaml-fmt-printers) | |
| 19:33 | Make equal take a printing function so we can have better test debugging when equality is involved ... (check-in: 21261e73cd user: cristian tags: ocaml-fmt-printers) | |
| 19:32 | Create new branch named "ocaml-fmt-printers" ... (check-in: 36eba641cd user: cristian tags: ocaml-fmt-printers) | |
| 18:58 | Format using default ... (Leaf check-in: 5f85aa4d07 user: cristian tags: ocaml-format) | |
| 11:01 | Format using janestreet profile through ocamlformat ... (check-in: ebd65144d5 user: cristian tags: ocaml-format) | |
|
2026-07-08
| ||
| 23:31 | Create new branch named "ocaml-format" ... (check-in: 399f57738b user: cristian tags: ocaml-format) | |
| 22:27 | Simplify condition & prevent making the line calculation for commit editing ... (check-in: 8d4ab80853 user: cristian tags: ocaml-parser) | |
| 22:09 | Move bindings to the top ... (check-in: 64489758e6 user: cristian tags: ocaml-parser) | |
| 22:08 | Simplify parse_range method by using left & right shadowing ... (check-in: f1007b4834 user: cristian tags: ocaml-parser) | |
| 22:04 | Remove redundant call to project_name function by simplifying it (only handles bool logic) and using drop 1 to drop de dot as when drop is peform project is already validated by pattern match ... (check-in: eb6381bc7d user: cristian tags: ocaml-parser) | |
| 21:53 | Simplify code by mapping result to optional ... (check-in: c231164076 user: cristian tags: ocaml-parser) | |
| 21:44 | Simplify optional code with custom let*? operator ... (check-in: bd36a1b7d4 user: cristian tags: ocaml-parser) | |
| 18:28 | Remove dead code ... (check-in: 83b4ffae9b user: cristian tags: ocaml-parser) | |
| 18:05 | Remove global warnings ... (check-in: cb2a2d35ea user: cristian tags: ocaml-parser) | |
| 17:49 | Rename preparser to command router as it reflects better it's role ... (check-in: 11b2b39bf9 user: cristian tags: ocaml-parser) | |
| 17:40 | Make project namespacing its own test case & also use tuples/tables for testing cases ... (check-in: 715f8b9092 user: cristian tags: ocaml-parser) | |
| 17:32 | Move preparser out of test case ... (check-in: 16513ca6f3 user: cristian tags: ocaml-parser) | |
| 17:27 | t .project <cmd> (scoped commands) ... (check-in: 1f8b1e1df8 user: cristian tags: ocaml-parser) | |
| 17:09 | t .<project> (Lists todos in project ... (check-in: 340f5abff1 user: cristian tags: ocaml-parser) | |
| 01:20 | Format ... (check-in: c8b8db8b69 user: cristian tags: ocaml-parser) | |
| 01:18 | t .@ (list of doing todos in all projects) ... (check-in: 8a43e32600 user: cristian tags: ocaml-parser) | |
| 01:16 | t . (list of projects) ... (check-in: 51b49d1e5f user: cristian tags: ocaml-parser) | |
|
2026-07-07
| ||
| 23:44 | t 1...10 (Lists range) ... (check-in: a39cd4d40a user: cristian tags: ocaml-parser) | |
| 22:59 | Inline ... (check-in: a4377b38ce user: cristian tags: ocaml-parser) | |
| 22:58 | t @ (List all doing in scoped .todo) ... (check-in: 4879ecef46 user: cristian tags: ocaml-parser) | |
| 22:52 | Parser: t @2 (Set todo at line 3 as @doing) ... (check-in: dc2e054ee6 user: cristian tags: ocaml-parser) | |
| 22:34 | t : (Opens $(EDITOR) with scope's .todo content) ... (check-in: 2d9202b741 user: cristian tags: ocaml-parser) | |
| 22:27 | t 10 (Echoes line 10) ... (check-in: 34a990af4f user: cristian tags: ocaml-parser) | |
| 22:21 | Change ~ operator as in unix it collides with shell expansions ... (check-in: 46cdc940ef user: cristian tags: ocaml-parser) | |
| 21:45 | Remove path for now ... (check-in: 39798d7c7c user: cristian tags: ocaml-parser) | |
| 21:44 | Rename method to match common use of cmd as domain term ... (check-in: a5cd048a97 user: cristian tags: ocaml-parser) | |
| 21:43 | Abstract common batch logic into a common helper ... (check-in: a1d061b860 user: cristian tags: ocaml-parser) | |
| 21:41 | Add parsing of multiple deleted lines ... (check-in: a0a0319a20 user: cristian tags: ocaml-parser) | |
| 21:39 | Add parsing of multiple completed lines ... (check-in: ac78f1e9f2 user: cristian tags: ocaml-parser) | |
| 21:13 | Parser: t c~3(Launches editor with 3 content before commiting) ... (check-in: 2d0479ccad user: cristian tags: ocaml-parser) | |
| 19:58 | Abstract common logic into a common helper ... (check-in: b6494899d1 user: cristian tags: ocaml-parser) | |
| 19:53 | Parser: t c3 (Commits using line 3 contents as commit message) ... (check-in: 996b45ea4b user: cristian tags: ocaml-parser) | |
| 19:51 | Parser: t ~3 (Launches editor to edit line 3 contents) ... (check-in: 9842a2551a user: cristian tags: ocaml-parser) | |
| 19:48 | Parser: t -3 (Removes line 3) ... (check-in: 947514cb8d user: cristian tags: ocaml-parser) | |
| 19:47 | Use pattern matching on complete action's parsing ... (check-in: 7e0a285e33 user: cristian tags: ocaml-parser) | |
| 19:41 | Parser: t +3 # Completes todo in line 3 ... (check-in: 2f847bcee0 user: cristian tags: ocaml-parser) | |
| 19:25 | Create new branch named "ocaml-parser" ... (check-in: 0f24de48fe user: cristian tags: ocaml-parser) | |
| 19:25 | Parser: t <no_args> (List todos of scoped .todo) ... (check-in: b284b967c8 user: cristian tags: ocaml) | |
| 19:17 | Parser: t "new todo" (Creates todo with "new todo") ... (check-in: 5f16a12cd3 user: cristian tags: ocaml) | |
| 14:08 | Simplify project listing ... (check-in: 70f9d5d0c3 user: cristian tags: ocaml) | |
|
2026-07-06
| ||
| 23:35 | Missing expect replacements to closure fn naming ... (check-in: 488212d2cd user: cristian tags: ocaml) | |
| 23:33 | Format & use fn instead of expect in pertinent places for shortness & clarity (as it's implied is a closure) ... (check-in: 03fbd4ac21 user: cristian tags: ocaml) | |
| 23:18 | Rename test_t to simply tests ... (check-in: 9997959c74 user: cristian tags: ocaml) | |
| 23:17 | Rename test lib module ... (check-in: 9f1348d0e1 user: cristian tags: ocaml) | |
| 23:16 | Remove hidden effect from case factory ... (check-in: 71a5bfee29 user: cristian tags: ocaml) | |
| 23:12 | Reorganize & small refactors on test library ... (check-in: 762f62a980 user: cristian tags: ocaml) | |
| 23:08 | Move global state on test to top of the file ... (check-in: 82df398ef4 user: cristian tags: ocaml) | |
| 23:08 | Make closures more explcit on test library case_factory ... (check-in: 8c9ba1f6e4 user: cristian tags: ocaml) | |
| 23:03 | Add interface file to hide test library implementation private methods ... (check-in: dc4535d024 user: cristian tags: ocaml) | |
| 22:56 | Add total count to tests ... (check-in: 703f6c7d10 user: cristian tags: ocaml) | |
| 22:33 | Move logic to prod module & split test helpers ... (check-in: 420ebeabcb user: cristian tags: ocaml) | |
| 22:26 | Rename mock effects ... (check-in: 40596573db user: cristian tags: ocaml) | |
| 22:23 | Reverse order ... (check-in: 733f78c690 user: cristian tags: ocaml) | |
| 22:21 | Forgot to fix tests before merging ... (check-in: d596565abb user: cristian tags: ocaml) | |
| 22:18 | Merge branch better-test-messages ... (check-in: bf1437eb44 user: cristian tags: ocaml) | |
| 22:14 | Add case_id helper to identify failing row ... (Closed-Leaf check-in: 1426c44a65 user: cristian tags: better-test-messages) | |
| 21:52 | Add assert helpers ... (check-in: 9a596b31bd user: cristian tags: better-test-messages) | |
| 21:46 | Wip: adding more formatters & use them ... (check-in: ec548b9223 user: cristian tags: better-test-messages) | |
| 21:33 | Add a result formatter & use in conjonction with expect.fail to form a useful error message ... (check-in: 1c22f677bb user: cristian tags: better-test-messages) | |
| 21:33 | Create new branch named "better-test-messages" ... (check-in: 5a97243723 user: cristian tags: better-test-messages) | |
| 21:15 | Match other tests matrix format ... (check-in: 23d707cb94 user: cristian tags: ocaml) | |
| 21:15 | Remove unnoticed duplicated sort_matches ... (check-in: e999db1cd8 user: cristian tags: ocaml) | |
| 21:11 | Remove comment ... (check-in: 206a6021fc user: cristian tags: ocaml) | |
| 21:10 | Remove sorting integration tests in favor of pure function testing of sort_matches ... (check-in: 78a29c31cc user: cristian tags: ocaml) | |
| 20:51 | List by project's name selects matches alphabetically when different matches with same deepness level & length ... (check-in: f42145711b user: cristian tags: ocaml) | |
| 20:49 | List by project's name selects shorter matching directory when different matches with same deepness level ... (check-in: 611ccf6b8e user: cristian tags: ocaml) | |
| 20:10 | Test project listing by name selects less deeper matching project ... (check-in: f83f4b8a31 user: cristian tags: ocaml) | |
| 19:36 | Run project list succeeds ... (check-in: 756f2c7e84 user: cristian tags: ocaml) | |
| 19:05 | Run project list fails on read failure ... (check-in: 8855a7f3f1 user: cristian tags: ocaml) | |
| 19:04 | Run project list fails on projects failure ... (check-in: f8760c16fc user: cristian tags: ocaml) | |
|
2026-07-01
| ||
| 02:01 | Align columns on test output ... (check-in: 4125988a70 user: cristian tags: ocaml) | |
|
2026-06-28
| ||
| 13:30 | Ensure todo is used as commit when editor is not opened ... (check-in: 8b72407d30 user: cristian tags: ocaml) | |
| 12:57 | Merge branch ocaml_better-testing ... (check-in: 486304c921 user: cristian tags: ocaml) | |
| 12:56 | Format ... (Closed-Leaf check-in: d654e1f7a9 user: cristian tags: ocaml_better-testing) | |
| 12:44 | Format ... (check-in: ef9ec1221d user: cristian tags: ocaml_better-testing) | |
| 12:40 | Remove test description from matrices tuple as it add noise, use test case index instead ... (check-in: 4be4a8d582 user: cristian tags: ocaml_better-testing) | |
| 12:29 | Fix leaked debug (made test fail to test output) ... (check-in: ff310745a1 user: cristian tags: ocaml_better-testing) | |
| 12:28 | Format test output (breakline on fail) ... (check-in: 6381e78404 user: cristian tags: ocaml_better-testing) | |
| 12:25 | Make mini test lib exist for CI ... (check-in: 70e0e31c30 user: cristian tags: ocaml_better-testing) | |
| 12:22 | Add & use my mini-testing ocaml library to have better testing feedback ... (check-in: 8cdcaba8af user: cristian tags: ocaml_better-testing) | |
| 10:54 | Create new branch named "ocaml_better-testing" ... (check-in: f2a52a4eef user: cristian tags: ocaml_better-testing) | |
| 08:21 | Return removed & added todos for granular feedback ... (check-in: ed76eda6d8 user: cristian tags: ocaml) | |
| 08:11 | Format ... (check-in: e8d96da774 user: cristian tags: ocaml) | |
| 08:09 | Consistent spacing on Ok declarations ... (check-in: 36013d0e98 user: cristian tags: ocaml) | |
| 08:08 | Freed myself from the burden of matrix alignment formatting ... (check-in: 86dfd0eab8 user: cristian tags: ocaml) | |
| 07:57 | Remove redundant helper ... (check-in: b3dbca8315 user: cristian tags: ocaml) | |
| 07:56 | Remove unused operator ... (check-in: b371dec181 user: cristian tags: ocaml) | |
| 07:56 | Format ... (check-in: 2d5ab557d0 user: cristian tags: ocaml) | |
| 07:52 | Replace matrix line that wasn't actually proving anything with a separated test ... (check-in: 4509a65f7b user: cristian tags: ocaml) | |
| 07:42 | Specific variant for Read ... (Closed-Leaf check-in: 207f16633e user: cristian tags: ocaml_simplifying_matrixes) | |
| 07:16 | Free myself from the burden of matrix alignment formatting ... (check-in: dc56618fd9 user: cristian tags: ocaml_simplifying_matrixes) | |
| 06:58 | Uase read_res for making read success data explicit within matrixes ... (check-in: 650d4b671a user: cristian tags: ocaml_simplifying_matrixes) | |
| 01:43 | Further test code simplification with helpers ... (check-in: a24eda0659 user: cristian tags: ocaml_simplifying_matrixes) | |
| 01:25 | Use more polymorphic variables to simplify matrixes ... (check-in: 789d009c97 user: cristian tags: ocaml_simplifying_matrixes) | |
| 01:14 | Create new branch named "ocaml_simplifying_matrixes" ... (check-in: e4ae0dfdc7 user: cristian tags: ocaml_simplifying_matrixes) | |
| 00:41 | Format ... (check-in: d265e2f1e6 user: cristian tags: ocaml) | |
| 00:22 | Use granular polymorphic variables in effects signatures so they declare atomically only the semantic error they may throw (instead of carrying the whole enum) ... (check-in: bcc46822bc user: cristian tags: ocaml) | |
|
2026-06-27
| ||
| 23:58 | Implement polymorphic variables so effects can't return non semantic errors (before list could return a commit error which should never happen) ... (check-in: 59c6df633a user: cristian tags: ocaml) | |
| 23:35 | Use a vcs get method that returns optional repo info instead of a boolean so we can get the repo dir from the todo path ... (check-in: f8b374fde1 user: cristian tags: ocaml) | |
| 22:45 | Simplify effects instantiation by adding a base effects helper ... (check-in: dcbe100e7a user: cristian tags: ocaml) | |
| 22:25 | Implement control flow for listing projects system wide ... (check-in: 4e7d750aab user: cristian tags: ocaml) | |
| 22:10 | Implement commit: Run commit fails on no repository Run commit fails on read failure Run commit fails on wrong line Run commit fails on editor error Run commit fails on empty message Run commit fails on commit error Run commit fails on write error Run commit succeeds without editing message Run commit succeeds with edited message Run commit archives todo in correct order on success ... (check-in: f45433365c user: cristian tags: ocaml) | |
| 10:12 | Inline test names ... (check-in: 56f1a8a55d user: cristian tags: ocaml) | |
| 10:10 | Fix test for good (wrong order...) 🤦 ... (check-in: dc6f748073 user: cristian tags: ocaml) | |
| 10:07 | Back to @ because :: inverts order so test was failing (keeping :: would imply making test more complex and unreadable by using List.rev) ... (check-in: 4122ab0b77 user: cristian tags: ocaml) | |
| 07:57 | Update readme ... (check-in: aec26e31f0 user: cristian tags: trunk) | |
| 07:54 | Better explanation on README ... (check-in: b1a9e46219 user: cristian tags: trunk) | |
| 07:29 | Add technical section on readme ... (check-in: e1c0aefc37 user: cristian tags: trunk) | |
|
2026-06-26
| ||
| 09:15 | Use :: O(1) operator instead of @ for write captured calls concatenation & rename history to write_calls to match conventions ... (check-in: 61e7517457 user: cristian tags: ocaml) | |
| 09:08 | Use a array to assert write is called once when editing ... (check-in: 4803c7b4db user: cristian tags: ocaml) | |
| 08:56 | Use any suffix to match conventions & explicitly documnent that the editing value doesn't matter ... (check-in: 11b7a606e9 user: cristian tags: ocaml) | |
|
2026-06-25
| ||
| 22:59 | Clean up unused 'updated' bindings in edit ... (check-in: 6d217b4489 user: cristian tags: ocaml) | |
| 22:53 | Create any helpers ... (check-in: fcca9d49b5 user: cristian tags: ocaml) | |
| 22:40 | Run edit succeeds with no changes ... (check-in: b10a98a93f user: cristian tags: ocaml) | |
| 22:28 | Run edit succeeds on successful write ... (check-in: eb865d05ce user: cristian tags: ocaml) | |
| 22:08 | Run edit fails on write failure ... (check-in: ed796b7671 user: cristian tags: ocaml) | |
| 22:03 | Run edit fails on editor error ... (check-in: 6c99da1dc3 user: cristian tags: ocaml) | |
| 21:43 | Run edit fails on wrong line ... (check-in: a774889b4d user: cristian tags: ocaml) | |
| 21:41 | Format ... (check-in: 66dcf95c78 user: cristian tags: ocaml) | |
| 21:41 | Run edit fails on read failure ... (check-in: 83cc68a337 user: cristian tags: ocaml) | |
| 21:30 | Format ... (check-in: 5e3bac5210 user: cristian tags: ocaml) | |
| 21:29 | Create common helper for remove & complete actions ... (check-in: f3f0e0a0df user: cristian tags: ocaml) | |
| 21:12 | Move complete function to the top of the file ... (check-in: ad9d0924f3 user: cristian tags: ocaml) | |
| 21:12 | Ensure archived todo is formated correctly ... (check-in: 77b45274a6 user: cristian tags: ocaml) | |
| 20:59 | Run complete writes to done_path before updating todo_path ... (check-in: 49d0aa7df9 user: cristian tags: ocaml) | |
| 20:27 | Run complete succeeds on successful write ... (check-in: de867e06f6 user: cristian tags: ocaml) | |
| 20:22 | Run complete fails on write failure ... (check-in: 0914039c84 user: cristian tags: ocaml) | |
| 20:19 | Run complete fails on wrong line ... (check-in: c88d0f7af4 user: cristian tags: ocaml) | |
| 20:17 | Run complete fails on read failure ... (check-in: d75c682a3b user: cristian tags: ocaml) | |
| 20:07 | Move remove function to top of the file ... (check-in: 14dba2c5e1 user: cristian tags: ocaml) | |
| 20:06 | Run remove succeeds on successful write ... (check-in: 00237f3dab user: cristian tags: ocaml) | |
| 19:54 | Run remove fails on write failure ... (check-in: 11a9e042e9 user: cristian tags: ocaml) | |
| 19:50 | Run remove fails on wrong line ... (check-in: bd1d6d7f57 user: cristian tags: ocaml) | |
| 19:39 | Run remove fails on read failure ... (check-in: 71c92d1986 user: cristian tags: ocaml) | |
| 19:24 | Remove headings as columns can be read from the parameter order on iteration closure ... (check-in: ef416ab32c user: cristian tags: ocaml) | |
| 19:23 | Remove run prefix for simplicity ... (check-in: 93265376a4 user: cristian tags: ocaml) | |
| 19:19 | Use Table-Driven Testing for control flow tests ... (check-in: 43fc157eff user: cristian tags: ocaml) | |
| 18:58 | Silence warnings by disabling autogeneration of opam file ... (check-in: c824160b79 user: cristian tags: ocaml) | |
| 14:28 | Update readme ... (check-in: 95a2759df0 user: cristian tags: trunk) | |
| 14:27 | Update readme ... (check-in: 9cde7aa17a user: cristian tags: trunk) | |
| 14:11 | Fix readme.md (for good) ... (check-in: 6b3702611d user: cristian tags: trunk) | |
| 14:10 | Fix readme.md ... (check-in: 033a75d3a6 user: cristian tags: trunk) | |
| 14:09 | Update readme ... (check-in: ee3efdf183 user: cristian tags: trunk) | |
|
2026-06-24
| ||
| 23:21 | Run add fails on read failure ... (check-in: 75fa983511 user: cristian tags: ocaml) | |
| 23:18 | Run add fails on write failure ... (check-in: 5a23b7d3a2 user: cristian tags: ocaml) | |
| 21:59 | Run list returns list on succesful read ... (check-in: e8c87d0aca user: cristian tags: ocaml) | |
| 21:53 | Run list returns error on read error ... (check-in: 2b6b7ba326 user: cristian tags: ocaml) | |
| 20:29 | Revert accidental placeholder text in tests ... (check-in: 7a6f577de0 user: cristian tags: ocaml) | |
| 20:27 | fix(makefile): declare test target as phony to prevent file collisions with the test target when invoking task from zed ... (check-in: 66da18cbbe user: cristian tags: ocaml) | |
| 19:56 | Init ocaml project ... (check-in: de23fab7d9 user: cristian tags: ocaml) | |
| 19:41 | Remove ... (check-in: 6ccccf0dab user: cristian tags: ocaml) | |
| 19:41 | Create new branch named "ocaml" ... (check-in: c6308ed2d9 user: cristian tags: ocaml) | |
| 14:36 | Use codeblocks ... (check-in: 2ab389c0d6 user: cristian tags: trunk) | |
| 14:35 | Update readme ... (check-in: a958fd4859 user: cristian tags: trunk) | |
| 12:32 | Remove unneeded clean command from makefile ... (check-in: 99732d3452 user: cristian tags: trunk) | |
| 12:28 | Merge branch fix-commiting-todoPath ... (check-in: 688cd36a03 user: cristian tags: trunk) | |
| 12:28 | chore(commit): remove currentDirectory effects as it isn't needed anymore ... (Closed-Leaf check-in: 8bd2100c93 user: cristian tags: fix-commiting-todoPath) | |
| 12:21 | fix(commit): commit from different todoPath directory was failing becasue algorithm was using currentDirectory instead o todoPath directory as the home for process invocation ... (check-in: f331431171 user: cristian tags: fix-commiting-todoPath) | |
| 12:20 | Create new branch named "fix-commiting-todoPath" ... (check-in: c6d0a73d1a user: cristian tags: fix-commiting-todoPath) | |
| 11:44 | Merge branch fix-project-matching ... (check-in: 82ad723d97 user: cristian tags: trunk) | |
| 11:43 | fix(remove): throw error on line removal ... (Closed-Leaf check-in: ef4669d458 user: cristian tags: fix-project-matching) | |
| 11:28 | fix(projects): match projects by component (each component of the path represents a route, previously I was checking if the path contained the projectName which is buggy if the projectName is a caracter as this very same 't' project) ... (check-in: 3a3fb82cb9 user: cristian tags: fix-project-matching) | |
| 11:27 | Create new branch named "fix-project-matching" ... (check-in: 28db068901 user: cristian tags: fix-project-matching) | |
| 11:26 | Merge branch copy-to-clipboard ... (check-in: 6ac2e77266 user: cristian tags: trunk) | |
| 10:48 | feat(copy): allow copying a todo to the clipboard ... (Closed-Leaf check-in: 48d03aae59 user: cristian tags: copy-to-clipboard) | |
| 10:42 | Create new branch named "copy-to-clipboard" ... (check-in: 025b58fa9a user: cristian tags: copy-to-clipboard) | |
| 10:37 | Merge branch list-all-system-wide-todos ... (check-in: b2a16ec172 user: cristian tags: trunk) | |
| 10:37 | fix(runtime): fix segmentation fault error due to using runProjectList before its instantiation ... (Closed-Leaf check-in: bb204834bc user: cristian tags: list-all-system-wide-todos) | |
| 10:34 | feat(projects): list all the todos system wide ... (check-in: 307065883e user: cristian tags: list-all-system-wide-todos) | |
| 10:26 | Create new branch named "list-all-system-wide-todos" ... (check-in: 45c0f57643 user: cristian tags: list-all-system-wide-todos) | |
| 10:14 | Merge branch prevent-concurrent-ci-runs ... (check-in: 6ce7ed4d49 user: cristian tags: trunk) | |
| 10:13 | testing ci changes ... (Closed-Leaf check-in: 7d3a191826 user: cristian tags: prevent-concurrent-ci-runs) | |
| 10:13 | testing ci changes ... (check-in: b14e0e6e84 user: cristian tags: prevent-concurrent-ci-runs) | |
| 10:11 | fix(ci): running twice on pull request ... (check-in: a241520233 user: cristian tags: prevent-concurrent-ci-runs) | |
| 10:07 | Add concurrency grouping in ci.yml so we prevent multiple runs when commiting twice ... (check-in: b03d8e2c6c user: cristian tags: prevent-concurrent-ci-runs) | |
| 10:07 | Create new branch named "prevent-concurrent-ci-runs" ... (check-in: 39f4e98c81 user: cristian tags: prevent-concurrent-ci-runs) | |
| 10:04 | Rename defaultTodoPath to just todoPath for simplicity and readability ... (check-in: f20949f419 user: cristian tags: trunk) | |
| 10:02 | Add comment ... (check-in: b4d293e125 user: cristian tags: trunk) | |
| 10:01 | Pass only IO effects to project preparsing decorator ... (check-in: 8e2dd504f2 user: cristian tags: trunk) | |
| 09:57 | Merge branch allow-global-project-management ... (check-in: da4c065690 user: cristian tags: trunk) | |
| 09:56 | Minor refactors ... (Closed-Leaf check-in: 680e811c5d user: cristian tags: allow-global-project-management) | |
| 09:51 | Fix typo ... (check-in: b1980740d2 user: cristian tags: allow-global-project-management) | |
| 09:50 | Remove redundand project command ... (check-in: 194b20fb69 user: cristian tags: allow-global-project-management) | |
| 09:43 | Allow for manipulating a todo list globally ... (check-in: 2d0925e933 user: cristian tags: allow-global-project-management) | |
| 09:21 | Create new branch named "allow-global-project-management" ... (check-in: ff19353a15 user: cristian tags: allow-global-project-management) | |
| 09:19 | Add a priority logic on list all command where when we pass a project we match with the most pertinent ocurrency (not the first that contains, but the one where the project matches a higher level folder, for example: t project cristian should return the todo from /Users/cristian/.todo ... (check-in: f7303cd536 user: cristian tags: trunk) | |
| 09:01 | Back to enum with static properties as finally I like it better ... (check-in: 70679103db user: cristian tags: trunk) | |
| 03:47 | Merge branch fix-ci ... (check-in: 64e8074ca4 user: cristian tags: trunk) | |
| 03:45 | Update image to macos 26 to support trailing commas on tuples ... (Closed-Leaf check-in: b34f352db3 user: cristian tags: fix-ci) | |
| 03:45 | Create new branch named "fix-ci" ... (check-in: b0207fe7d0 user: cristian tags: fix-ci) | |
| 03:38 | Add rm alias ... (check-in: 0487a7e9b6 user: cristian tags: trunk) | |
| 03:33 | Rename fs to io ... (check-in: d78e76bf03 user: cristian tags: trunk) | |
| 03:32 | Add Effects namespace ... (check-in: 58eaea7697 user: cristian tags: trunk) | |
| 03:27 | Make Effects a tuple ... (check-in: f4f29e9466 user: cristian tags: trunk) | |
| 03:16 | Use tuples instead of structs for effects ... (check-in: 4f1c121297 user: cristian tags: trunk) | |
| 03:12 | Move editor to effects ... (check-in: dd57bf9571 user: cristian tags: trunk) | |
| 02:57 | fix(tests): wrap editor injection withing a closure as otherwise we still are capturing by value & not reference ... (check-in: 8452978c5b user: cristian tags: trunk) | |
| 02:51 | Fix typo ... (check-in: e60b84559e user: cristian tags: trunk) | |
| 02:50 | Make makeSUT take a concrete object instead of a closure ... (check-in: e74fde5445 user: cristian tags: trunk) | |
| 02:48 | fix(tests): Effects mutation has no effect because it passed by value (even though we're passing a closure () -> Effect) so pass & mutate editor closure instead ... (check-in: 9dc516bcd8 user: cristian tags: trunk) | |
| 02:35 | Support new keyword as a command for adding new todos ... (check-in: 5e4c17c04f user: cristian tags: trunk) | |
| 02:28 | Remove T.Error explicit instantiation on assertThrows calls ... (check-in: 10cab9f4f2 user: cristian tags: trunk) | |
| 02:27 | Lowercase test names ... (check-in: 23b8117066 user: cristian tags: trunk) | |
| 02:26 | Use underscore test naming convention ... (check-in: 139399d5d4 user: cristian tags: trunk) | |
| 02:25 | tests: Remove unneeded add invocation ... (check-in: 5789ec18ca user: cristian tags: trunk) | |
| 02:23 | Inline effects ... (check-in: aa0ec4bc7f user: cristian tags: trunk) | |
| 02:21 | Remove redundant commitCalled spy variable ... (check-in: 856dde4ca8 user: cristian tags: trunk) | |
| 02:20 | Inline effects ... (check-in: acac8a3817 user: cristian tags: trunk) | |
| 02:19 | Remove comments from certain tests as grouping with spaces it's already explicit enough ... (check-in: ada7ca7591 user: cristian tags: trunk) | |
| 02:09 | Add version control tests ... (check-in: ad2433c992 user: cristian tags: trunk) | |
| 02:01 | Test line bounds commands ... (check-in: 62be459fa5 user: cristian tags: trunk) | |
| 01:53 | Add editing edge case tests ... (check-in: fc13496212 user: cristian tags: trunk) | |
| 01:46 | Dynamically evaluate effects so we can override them from tests ... (check-in: 721310f7ec user: cristian tags: trunk) | |
| 01:44 | Inject whole effects in makeSUT testing helper ... (check-in: a74f3c1b31 user: cristian tags: trunk) | |
| 01:36 | Test parser ... (check-in: 793db7e330 user: cristian tags: trunk) | |
|
2026-06-23
| ||
| 22:59 | Use a single instace of sut in tests ... (check-in: 8bba472bd6 user: cristian tags: trunk) | |
| 22:35 | Better name for editMsg bool ... (check-in: be885ff53d user: cristian tags: trunk) | |
| 22:32 | Add withTempFile helper ... (check-in: 84d5ce181b user: cristian tags: trunk) | |
| 22:19 | fix(commit): errors silently failing ... (check-in: 76effa2e8d user: cristian tags: trunk) | |
| 22:15 | Display error message instead of throwing an exception ... (check-in: b4a842eb10 user: cristian tags: trunk) | |
| 22:13 | Fix: cli not being invoked ... (check-in: b82d6114df user: cristian tags: trunk) | |
| 21:50 | Unify domain by using 'todo' as a convention instead of 'task' ... (check-in: 813161a2ae user: cristian tags: trunk) | |
| 21:44 | Directly pass VCS.get closure as argument ... (check-in: 32c7066b26 user: cristian tags: trunk) | |
| 21:41 | fix(ci): ci was failing because it was invoking the cli which expects an existent todo file ... (check-in: ea868fc50e user: cristian tags: trunk) | |
| 21:36 | fix(ci): remove leaked debug assert(false) ... (check-in: 9f174d13f6 user: cristian tags: trunk) | |
| 21:35 | fix(ci): test script was silently failing to show test assertion traps ... (check-in: d51334d61b user: cristian tags: trunk) | |
| 21:07 | Namespace cli invocation within T namespace ... (check-in: 55df2a8126 user: cristian tags: trunk) | |
| 21:03 | Move tests to the bottom of the file to make it more readable ... (check-in: bcd7c94ef7 user: cristian tags: trunk) | |
| 21:02 | Move rethrow decorator to a helper section (inside main as it's a composition utility) ... (check-in: 6b9d9c5ad7 user: cristian tags: trunk) | |
| 21:01 | Rename parseArgs to parse as I find the args suffix redundant as it's implicit from first arg ... (check-in: 1d16d2c9e8 user: cristian tags: trunk) | |
| 21:00 | Move formatter to helper section ... (check-in: a02a02d204 user: cristian tags: trunk) | |
| 20:59 | Move effects to top of the folder in logic as I think it makes the project easier to mantain & read ... (check-in: 95f21b963a user: cristian tags: trunk) | |
| 20:55 | Remove heading ... (check-in: 8064456995 user: cristian tags: trunk) | |
| 20:55 | Move pipe forward operator to helper section in logic file ... (check-in: 4d5f624332 user: cristian tags: trunk) | |
| 20:53 | Remove T.Error namespacing when throwing as type is implicit ... (check-in: 17fb83e38f user: cristian tags: trunk) | |
| 20:51 | Format ... (check-in: 841b84674a user: cristian tags: trunk) | |
| 20:51 | Remove & edit headings ... (check-in: 18d090a140 user: cristian tags: trunk) | |
| 20:50 | Add CLI signature typealias ... (check-in: 6fb04c2d78 user: cristian tags: trunk) | |
| 20:49 | Add T namespace ... (check-in: b092eff3b1 user: cristian tags: trunk) | |
| 20:45 | Make decorator reusable in other context by using a generic E error ... (check-in: 9c844001b2 user: cristian tags: trunk) | |
| 20:41 | Create AppError helpers to be used with pipe forward operator and rethrow decorator ... (check-in: d772da674c user: cristian tags: trunk) | |
| 20:32 | Currify AppError rethrow decorator so we can use pipe forward ... (check-in: f57eb1d94b user: cristian tags: trunk) | |
| 20:20 | Use AppError throwing decorator in VersionControl effects instantiation ... (check-in: e442c04a11 user: cristian tags: trunk) | |
| 20:18 | Make decorator reusable through param packs ... (check-in: 1d86f8a185 user: cristian tags: trunk) | |
| 20:15 | Add throwing AppError decorator ... (check-in: 5e16af5448 user: cristian tags: trunk) | |
| 20:09 | Remove AppError namespacing when throwing ... (check-in: 4ca6f07154 user: cristian tags: trunk) | |
| 20:07 | Simplify removing duplicated enums so we can avoid mapping ... (check-in: b604fe40f5 user: cristian tags: trunk) | |
| 19:59 | move vcs to effects file ... (check-in: e9c08cfbcb user: cristian tags: trunk) | |
| 19:38 | move io to effects file ... (check-in: 612131e380 user: cristian tags: trunk) | |
| 19:23 | move core logic to logic file ... (check-in: e07a7c2c16 user: cristian tags: trunk) | |
| 19:21 | group effects & error within the same file ... (check-in: 3104ce49f8 user: cristian tags: trunk) | |
| 19:17 | move error to its own file ... (check-in: 112cf8c869 user: cristian tags: trunk) | |
| 19:15 | rename fileysystemerror to just filesystem as nesting within apperror makes implicit its error nature ... (check-in: 5be14f4fbe user: cristian tags: trunk) | |
| 18:25 | fix(commit): Make commit before io so if committing fails we don't remove todo from disk ... (check-in: 29d73f266a user: cristian tags: trunk) | |
| 18:17 | readme: add ci badge ... (check-in: e20ef14db8 user: cristian tags: trunk) | |
| 18:15 | fix(ci): remove container ... (check-in: 512e61070a user: cristian tags: trunk) | |
| 18:10 | fix(ci): use macos-latest image as ubuntu doesn't come with make command ... (check-in: 95d653e6f0 user: cristian tags: trunk) | |
| 18:07 | Add tests to CI with github actions ... (check-in: 4fe07b5651 user: cristian tags: trunk) | |
| 18:02 | fix(tests): make tests pass & add test command ... (check-in: 5b6971ae59 user: cristian tags: trunk) | |
| 17:54 | readme: add deepwiki badge & chisel link ... (check-in: be94f550d3 user: cristian tags: trunk) | |
| 17:50 | readme: use backticks instead of tabs for codeblocks ... (check-in: 41c0bfde86 user: cristian tags: trunk) | |
| 17:47 | readme: format ... (check-in: d2493db3da user: cristian tags: trunk) | |
| 17:47 | readme: format ... (check-in: e17726ef71 user: cristian tags: trunk) | |
| 17:44 | readme: add original t link ... (check-in: 8e729f6d3a user: cristian tags: trunk) | |
| 17:40 | Add readme ... (check-in: 09353d2867 user: cristian tags: trunk) | |
| 17:34 | Remove io from runCommit & invoke from injected effects ... (check-in: eca7aca29d user: cristian tags: trunk) | |
| 17:27 | io: remove extra line break (not needed) ... (check-in: ff3c22fcdd user: cristian tags: trunk) | |
| 17:11 | Merge branch architecture-migration ... (check-in: e8b6115c01 user: cristian tags: trunk) | |
| 17:03 | Remove leaked debug file ... (Closed-Leaf check-in: d195f83005 user: cristian tags: architecture-migration) | |
| 16:54 | Ignore concurrency warnings ... (check-in: f6f7a96daf user: cristian tags: architecture-migration) | |
| 16:11 | Remove visual noice ('static keyword') by making namespace singleton instructs ... (check-in: 776fa55a83 user: cristian tags: architecture-migration) | |
| 16:08 | vcs: inline command parsing ... (check-in: 527c5e2035 user: cristian tags: architecture-migration) | |
| 16:04 | namespace effects with enums ... (check-in: a88822f854 user: cristian tags: architecture-migration) | |
| 15:57 | split effects instantiation ... (check-in: fae9a9b044 user: cristian tags: architecture-migration) | |
| 15:40 | feat(commit): Allow commiting from fossil & git ... (check-in: 0d014fae0f user: cristian tags: architecture-migration) | |
| 14:12 | feat(project): improve user experience by showing availabe paths when wrong project ... (check-in: 8bd74860e5 user: cristian tags: architecture-migration) | |
| 14:04 | feat(project): allow listing a specific project's todos ... (check-in: 75bf148ff0 user: cristian tags: architecture-migration) | |
| 13:51 | Use todo as keyword for filename instead of task to keep consistency with current convention (variables & typealiases) ... (check-in: be54a5ee71 user: cristian tags: architecture-migration) | |
| 13:46 | feat(list): allow listing todos from a specific todo file ... (check-in: 37f35f1279 user: cristian tags: architecture-migration) | |
| 13:28 | format: inline switches ... (check-in: e1dd40aac9 user: cristian tags: architecture-migration) | |
| 13:28 | move parser to section 3 of the file (business logic) ... (check-in: 513cba4f9c user: cristian tags: architecture-migration) | |
| 13:22 | remove unneeded error cast ... (check-in: 55cf7c30e7 user: cristian tags: architecture-migration) | |
| 13:21 | feat(all): Allow listing all system .task files ... (check-in: 9d5f4de258 user: cristian tags: architecture-migration) | |
| 12:40 | Use hidden files ... (check-in: b63c577727 user: cristian tags: architecture-migration) | |
| 12:40 | feat(remove): allow removing multiple lines ... (check-in: e27448c427 user: cristian tags: architecture-migration) | |
| 12:33 | fix(tests): fix segmentation fault error due to test helpers being declared after their usage ... (check-in: cd62892843 user: cristian tags: architecture-migration) | |
| 12:01 | Move date formatter to helper's section ... (check-in: 8130b09a22 user: cristian tags: architecture-migration) | |
| 12:00 | Move tests helpers to bottom of tests section ... (check-in: 285b6d2dde user: cristian tags: architecture-migration) | |
| 11:58 | Move asterisk to extensions section ... (check-in: afea3599fd user: cristian tags: architecture-migration) | |
| 11:56 | Rename path to todoPath for explictness ... (check-in: e0a96c599d user: cristian tags: architecture-migration) | |
| 11:54 | Inline argument parsing ... (check-in: 51b339bf36 user: cristian tags: architecture-migration) | |
| 11:45 | Silence sendable concurrecny warnings ... (check-in: 3dd2fe8f74 user: cristian tags: architecture-migration) | |
| 11:43 | Namespace live effects ... (check-in: 052113e78e user: cristian tags: architecture-migration) | |
| 11:40 | Rename effects variables to fx as I prefer shortness ... (check-in: ace47f8d69 user: cristian tags: architecture-migration) | |
| 11:37 | Namespace fileystem effects within Effects ... (check-in: d235ed8dec user: cristian tags: architecture-migration) | |
| 11:37 | Move formatter out of effects ... (check-in: 3d9a480693 user: cristian tags: architecture-migration) | |
| 11:35 | Rename Environment to Effects as it describe better what it encapsulates (ex.: it doesn't hold todoPath, donePath, etc...which are indeed environment/context specific, but only effects) ... (check-in: 442a55f546 user: cristian tags: architecture-migration) | |
| 11:30 | fix(edit): tmpFile wasn't being delete if no changes, move deletion to a defer with try? as if it fails user doesn't need to know about it ... (check-in: 32d1d5e56e user: cristian tags: architecture-migration) | |
| 11:28 | add teardown for test 6 as we're using a different sut ... (check-in: 5a6bd9e5fd user: cristian tags: architecture-migration) | |
| 11:25 | remove intermediary variable ... (check-in: 0b96ce2b77 user: cristian tags: architecture-migration) | |
| 11:24 | format ... (check-in: 3f5265991d user: cristian tags: architecture-migration) | |
| 11:24 | add error mapper & editor error ... (check-in: 1e868a7b9d user: cristian tags: architecture-migration) | |
| 11:19 | add error message ... (check-in: 941a37f668 user: cristian tags: architecture-migration) | |
| 11:10 | fix(edit): remove empty parenthesis from no changes put ... (check-in: 67f0e0ac32 user: cristian tags: architecture-migration) | |
| 11:02 | feat(edit): allow editing todo ... (check-in: f105985c92 user: cristian tags: architecture-migration) | |
|
2026-06-22
| ||
| 17:25 | Add makefile ... (check-in: 45d88b2a93 user: cristian tags: architecture-migration) | |
| 17:12 | Map file manipulation error to a more granular error instead of systematically returning fileNotFound ... (check-in: 4c249febcd user: cristian tags: architecture-migration) | |
| 16:38 | Rename too specific error case to a more general case (todoFileNotFound) ... (check-in: 291840ce4b user: cristian tags: architecture-migration) | |
| 16:37 | Remove unused error case ... (check-in: c1d49bcb78 user: cristian tags: architecture-migration) | |
| 16:35 | Write in donePath first so if the writing fails we end up with duplication instead of data loss ... (check-in: 1d1a539b88 user: cristian tags: architecture-migration) | |
| 16:28 | Done path may not exist when completing the first time, so return an empty array instead ... (check-in: 5296e9c784 user: cristian tags: architecture-migration) | |
| 16:18 | Format: inline guards ... (check-in: 21968da3b4 user: cristian tags: architecture-migration) | |
| 16:14 | Make formatter a static property so we can invoke it from tests instead of redeclaring it ... (check-in: e913daf8f0 user: cristian tags: architecture-migration) | |
| 16:11 | Remove unused add helper ... (check-in: aeb1316678 user: cristian tags: architecture-migration) | |
| 16:10 | Format: inline getOutput invocation ... (check-in: 4ea3747d4e user: cristian tags: architecture-migration) | |
| 16:08 | Simplify output function signature by explicitly unwraping throw within closure invocation ... (check-in: 2b510898f3 user: cristian tags: architecture-migration) | |
| 16:06 | Inject now through asterisk operator ... (check-in: f6820f8248 user: cristian tags: architecture-migration) | |
| 15:52 | Use do blocks to reuse var names and avoid prefix/suffix noise ... (check-in: 76b9fbb843 user: cristian tags: architecture-migration) | |
| 15:50 | Replace tests with integration flow ... (check-in: 13de2d0754 user: cristian tags: architecture-migration) | |
|
2026-06-18
| ||
| 12:35 | Add t simplified version with a more funcitional & readable architecture ... (check-in: 16eddde210 user: cristian tags: architecture-migration) | |
| 12:34 | Remove current code ... (check-in: aa8c5e1416 user: cristian tags: architecture-migration) | |
| 12:32 | Create new branch named "architecture-migration" ... (check-in: 6d8805f314 user: cristian tags: architecture-migration) | |
|
2026-06-17
| ||
| 18:42 | Remove get helper in favor of explicitness ... (Closed-Leaf check-in: aceda7c6db user: cristian tags: list-all) | |
|
2026-06-05
| ||
| 11:46 | Improve build times by evaluating bools conditions before passing them to #expect macro ... (check-in: e4246ed5e8 user: cristian tags: list-all) | |
|
2026-06-02
| ||
| 12:28 | Merge improve-build-speed branch into list-all ... (check-in: 1e72c940dd user: cristian tags: list-all) | |
| 12:20 | Fix flags not working ... (Closed-Leaf check-in: fda6158c65 user: cristian tags: improve-build-speed) | |
| 12:16 | Remove argument parser dependency ... (check-in: 4d5fdd589b user: cristian tags: improve-build-speed) | |
| 11:56 | Create a cli abstraction in preparation from removing argument parser dependency ... (check-in: 779097e8e2 user: cristian tags: improve-build-speed) | |
| 11:52 | Create new branch named "improve-build-speed" ... (check-in: 75a88c8d4d user: cristian tags: improve-build-speed) | |
| 11:29 | Remove leaked log ... (check-in: ea7034ddc3 user: cristian tags: list-all) | |
| 11:26 | Remove leaked characters in source code ... (check-in: bef5ef1979 user: cristian tags: list-all) | |
| 11:26 | Improve searching performance by skipping hiddenfiles and also hardcode skipping for some common directories (and some specific to my system ... (check-in: fb0f28f46d user: cristian tags: list-all) | |
| 10:56 | Implement system wide project listing ... (check-in: f49d7284c7 user: cristian tags: list-all) | |
| 09:44 | Create new branch named "list-all" ... (check-in: c979994397 user: cristian tags: list-all) | |
|
2026-06-01
| ||
| 23:08 | Format: reindent ... (check-in: 0777e2eccb user: cristian tags: trunk) | |
| 23:07 | Fix slow times when compiling from command line because the variable used for getting the path dynamically triggered a second build ... (check-in: 6e957f70eb user: cristian tags: trunk) | |
| 22:52 | Singularize verb in -l flag help to match same convention of other help messages ... (check-in: 8c96989c82 user: cristian tags: trunk) | |
| 22:49 | Update -e flag description ... (check-in: 0487bdb610 user: cristian tags: trunk) | |
| 22:43 | Format: reindent ... (check-in: f335fcbf1e user: cristian tags: trunk) | |
| 22:42 | Merge remove-children-on-complete into trunk ... (check-in: 1b32bf155f user: cristian tags: trunk) | |
| 22:25 | Inline command declaration ... (Closed-Leaf check-in: 978b6feeb6 user: cristian tags: remove-children-on-complete) | |
| 22:07 | Better descriptions for test string literal names ... (check-in: 4885298e0d user: cristian tags: remove-children-on-complete) | |
| 21:42 | Use string literals for tests names ... (check-in: c1a990cf98 user: cristian tags: remove-children-on-complete) | |
| 21:36 | Remove all children of parent on complete -f or remove -r ... (check-in: 02cebb367e user: cristian tags: remove-children-on-complete) | |
| 21:34 | Create new branch named "remove-children-on-complete" ... (check-in: d502b9e9ba user: cristian tags: remove-children-on-complete) | |
| 21:06 | Merge improve-nested-visualization into trunk ... (check-in: 974242546e user: cristian tags: trunk) | |
| 21:00 | Format ... (Closed-Leaf check-in: 5575343dd5 user: cristian tags: improve-nested-visualization) | |
| 20:55 | Show lines when listing children of parent ... (check-in: 611ff4334f user: cristian tags: improve-nested-visualization) | |
| 20:48 | Deindent one level when showing children ... (check-in: d22b3395aa user: cristian tags: improve-nested-visualization) | |
| 20:40 | Fix tasks not being shown for a given parent ... (check-in: 10b33199a1 user: cristian tags: improve-nested-visualization) | |
| 20:32 | List childs from a parent with line number by using -l flag ... (check-in: c7e03b1094 user: cristian tags: improve-nested-visualization) | |
| 19:45 | Show only first nested level items when listing ... (check-in: e57a72ae7f user: cristian tags: improve-nested-visualization) | |
| 19:23 | Create new branch named "improve-nested-visualization" ... (check-in: 27ad99c5e2 user: cristian tags: improve-nested-visualization) | |
| 19:07 | Simplify variable name (rename line_number to line) ... (check-in: dbbc8c0679 user: cristian tags: trunk) | |
| 19:05 | Format: inline ... (check-in: 846d331de0 user: cristian tags: trunk) | |
| 19:03 | Format: reindent ... (check-in: cf7d1b4264 user: cristian tags: trunk) | |
| 18:58 | Dedent script for better readibility ... (check-in: 4bb590fbd0 user: cristian tags: trunk) | |
| 18:52 | Add returns that shortcuit execution ... (check-in: 1fbe84e977 user: cristian tags: trunk) | |
| 18:50 | Fix list not being shown when invoking with no arguments ... (check-in: 97027051df user: cristian tags: trunk) | |
| 18:39 | Snake case everything because I don't see any cops ... (check-in: 4cdd293836 user: cristian tags: trunk) | |
| 18:03 | Remove CLI tests ... (check-in: 5d94e01d5d user: cristian tags: trunk) | |
| 17:59 | Merge swift package migration branch ... (check-in: 1a8d239d90 user: cristian tags: trunk) | |
| 17:58 | Merge cli implementation into make-swift-package ... (Closed-Leaf check-in: 1949ee5ed9 user: cristian tags: make-swift-package) | |
| 17:57 | Remove unneeded do block ... (Closed-Leaf check-in: 95b9c9b7fd user: cristian tags: cli-implementation) | |
| 17:55 | Remove unused helpers ... (check-in: b2c2976629 user: cristian tags: cli-implementation) | |
| 17:48 | Rename CLI ... (check-in: e0e0ab761b user: cristian tags: cli-implementation) | |
| 17:47 | Remove leaked test_lib ... (check-in: 427dfd2a8e user: cristian tags: cli-implementation) | |
| 17:47 | Simplify CLI code ... (check-in: f822807bbe user: cristian tags: cli-implementation) | |
| 17:23 | add argument parser implementation ... (check-in: fff304f41b user: cristian tags: cli-implementation) | |
| 16:43 | Cli.run executes action for flag ... (check-in: c338eef8ab user: cristian tags: cli-implementation) | |
| 16:43 | Create new branch named "cli-implementation" ... (check-in: 03fe192459 user: cristian tags: cli-implementation) | |
| 16:19 | wip(refacto): remove unused runner ... (check-in: b3c46b6df9 user: cristian tags: make-swift-package) | |
| 16:18 | wip(refacto): improve tests by using a common unique tmp file per test ... (check-in: 3f6dfe8d41 user: cristian tags: make-swift-package) | |
| 13:33 | wip(refacto): add test target ... (check-in: b818d0c0c9 user: cristian tags: make-swift-package) | |
| 13:24 | wip(refacto): restore package.swift missing ... (check-in: 33bf32a917 user: cristian tags: make-swift-package) | |
| 13:23 | wip(refacto): making swift package to compare test & compilation times as the project it's currently taking a lot of time to compile ... (check-in: 17c47dbf6f user: cristian tags: make-swift-package) | |
| 13:22 | Create new branch named "make-swift-package" ... (check-in: ae2d370a5c user: cristian tags: make-swift-package) | |
| 12:15 | refactor(tests): use asterisk operator for testing in a functional way ... (Closed-Leaf check-in: 1c4f4772a6 user: cristian tags: functional-refactor) | |
| 12:14 | refactor(tests): use asterisk operator for testing in a functional way ... (check-in: 3ec6a27ec0 user: cristian tags: functional-refactor) | |
| 10:46 | refacto(Todo): creat and use remove function ... (check-in: afbcdf4e9d user: cristian tags: functional-refactor) | |
| 10:31 | refacto(Todo): create add method and use it ... (check-in: 0ed3742eed user: cristian tags: functional-refactor) | |
| 10:13 | refacto(Todo): simplify by removing light method ... (check-in: aa209c583b user: cristian tags: functional-refactor) | |
| 10:12 | refacto(VCS): Create VCS namespace ... (check-in: 81c3ae69fd user: cristian tags: functional-refactor) | |
| 10:08 | refacto(Runner): create runner module ... (check-in: 85a0dd79ff user: cristian tags: functional-refactor) | |
| 10:06 | refacto(IO): create todo namespace ... (check-in: 289f18651a user: cristian tags: functional-refactor) | |
| 10:02 | refacto(Todo): create Todo module ... (check-in: 97f4172cb7 user: cristian tags: functional-refactor) | |
| 09:49 | Create new branch named "functional-refactor" ... (check-in: ee34c4d66e user: cristian tags: functional-refactor) | |
| 09:39 | wip(refacto): minor changes ... (check-in: 59225a536c user: cristian tags: trunk) | |
| 09:35 | feat: hide tasks file ... (check-in: 91a02ee2b6 user: cristian tags: trunk) | |
| 09:34 | wip(refacto): start splitting project into multiple files ... (check-in: 24bf2d0aae user: cristian tags: trunk) | |
| 02:16 | Add support for global access within repository ... (check-in: 2a24f268a8 user: cristian tags: trunk) | |
| 02:01 | Add missing test that ensures we detect fossil repos ... (check-in: a60867e333 user: cristian tags: trunk) | |
| 01:57 | fix: minor bug where when deleting the fist item and adding a new one a ghost line would be present adding a padding to all the subsequent todos ... (check-in: 1aa5c810b2 user: cristian tags: trunk) | |
| 01:45 | fix: missing dot in fslckout preventing t from working with a local todo copy in fossil repositories ... (check-in: 17002e6c96 user: cristian tags: trunk) | |
| 01:24 | Add build & test scripts ... (check-in: 02807c8c3d user: cristian tags: trunk) | |