- Print friendly error on how to look up the session id value when it is not detected or incorrect.
- Print friendly instructions to create a config file or env vars when the session id or passphrase isn't set.
- CLI command that prints out the configuration path
- Logging all the things
- Reject submissions for future dates automatically unless forced
- Use solver attribute for registration #[PuzzleSolver(day=,year=,part=)]
- Use example attribute #[Example(part_1="",answer=)]
- Support a "universal" solver fn (eg, both parts in one function)
- Add cols() and col(c) like the rows() and row(r) methods.
- Add tests for EAST/NORTH/WEST/SOUTH constants.
- Convert zero(), one(), unit_x(), and unit_y() methods to be constants.
- Complete implementation for Point3.
- Move to standalone module.
- Support non-string keys.
- Support storing additional data in nodes.
- Add tests, documentation.
- Disallow $\d+ prefixed node names as they are reserved by the system.
- Optimize the builder by reducing hte number of string copies that are happening.
- Split graph module into submodules (graph, graph_builder, algorithms)
- Finish counter module.
- Documentation.
- Tests
- Finish union find module.
- Documentation.
- Tests
- Replace
unwrap()andexpect(...)withOption<T>andResult<T,E>for union_find.rs. - Improve counter and union find implementations with fast hashing.
- No warning for overwriting same day
- Should not fetch input before succesfully running examples
- AOC session should not be required until input or answer submission invoked
- Client returns encryption error if cached input is encrypted with different password
- Client returns encryption error if cached input is (un)encrypted and password is (un)set
- Day 10
- Grid neighbors(pt: Point2) -> Itr