nuxeh / aocf Goto Github PK
View Code? Open in Web Editor NEWA CLI tool (and also crate) for Advent of Code (https://adventofcode.com/)
License: ISC License
A CLI tool (and also crate) for Advent of Code (https://adventofcode.com/)
License: ISC License
A lot of depencencies are pulled in which aren't required for simple use of the Aocf crate and Aoc struct in a rust program, vs the CLI usage. This could be reduced by adding feature gates.
Something about your readme causes my MS Edge browser to consume all available memory.
Disclaimer: this is based on my personal aocf
workflow, discussion welcome!
I'd like to propose that aocf
switches to a more global, per-user mode of operation.
It would mean that there is no longer a repository created in the CWD, e.g. ./.aocf/
, but rather that specific parts of aocf are kept in XDG-based dirs, e.g.:
$XDG_STATE_HOME/aocf
, aka $HOME/.local/state/aocf
$XDG_DATA_HOME/aocf
, aka $HOME/.local/share/aocf
(potentially split the checkout data into a file in the cookie directory above)$XDG_CACHE_HOME/aocf
aka $HOME/.cache/aocf
This makes the whole tool more predictable, and makes it work uniformly no matter where aocf
is called from.
(Almost cutting and pasting from this similar issue: atomicdata-dev/atomic-server#775)
I noticed aocf
is ISC-licensed, but has an optional dependency on html2md
, which is GPL-licensed. html2md
has multiple contributers who contributed their work under the GPL, so I don't think the fix is simple as "get permission from the original author to use a permissive license"
Since it's an optional dependency, I wonder if you could do something like only provide it under the MIT license if the html_parsing
feature is not enabled?
(I am not a lawyer)
CC: @Kaned1as
Running long running commands like aocf input --view
or aocf brief --pretty
will rewrite old config state when closed, if the state has changed since the command was started.
This causes regressions in the state.
Currently, since using a catch-all docopt spec, and using vector indexing for arguments, panics happen if not enough arguments are given to some commands.
It might be better to have explicit usage rules within docopt so it can do verification of the command line arguments, or otherwise avoiding the indexing panics.
The workflow windows-build.yml is referencing action actions/checkout using references v1. However this reference is missing the commit a6747255bd19d7a757dbdda8c654a9f84db19839 which may contain fix to the some vulnerability.
The vulnerability fix that is missing by actions version could be related to:
(1) CVE fix
(2) upgrade of vulnerable dependency
(3) fix to secret leak and others.
Please consider to update the reference to the action.
Tokio (via reqwest) results in a fairly large dependency tree for simple use of the crate, which isn't ideal.
Provide a templating mechanism for instantiating templates (of different types) for a new day.
First of all, this is a fantastic little tool I just found! Thanks for creating this!
I've already completed the first day and manually submitted the answers and only then installed this tool. But now I don't know how to get the local cache to be in sync with what's already submitted to the server. I'm not able to submit an already submitted answer. Any ideas on how to get this in sync?
AOC starts in less than a day and most aocf
users could probably benefit from generating shell completion.
Could you make a new release with this change?
Perhaps also include magic command line parsing for the Aoc struct, e.g. for running with --test
or --test <n>
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.