aoc-bot's People
aoc-bot's Issues
Mimic leaderboard, day-wise star count
Daily leaderboard update
A daily leaderboard update push to Discord
Prints the leaderboard, including indications of position changes from last day.
openssl-sys -> rustls
For portability, like building on rbpi.
And sanity, frankly.
Construct tricky diff json's
Testing is hard because actual AoC updates are hard rare.
We ought to artificially construct two jsons:
test_prev.json
test_later.json
where test_later.json
has a lot of corner case events registered, e.g.:
- New players
- Old players leaving the leaderboard
- New star 1 only
- New star 2 only
- Both starts new.
tokio::sleep --> tokio::throttle
Maximally efificient snail requests
Table format bad
Good in terminal,
bad in discord.
Pad with blankspaces work?
Update with new players and no new stars generates empty msg
pretty write locally stored json
Local local score
Do not trust the calculated local score in json.
Calculate based on day completion instead.
The stupid bot can be less stupid
Found what I was looking for:
Instead of starting a stupid loop in the message
fn (which works surprisingly well), the link above seems to be exactly what I want.
New players in diff is incorrect
It should rather be:
new_players and lost_players
And the diff check should be more thorough. Number of players is suff. but not nec. cond for diff.
Async reqwest
We all ought to face our (async) fears
workspace split
reasonable to have at least two crates:
- aoc-data
- aoc-bot
Remove all (unnec) panics
I.e. non-panicking error handling.
I.e. actual error handling.
The bot should never exit on error
Add timestamp to update
Reqwest overkill, more lightweight?
What happens if you get multiple stars within one update?
What happens if you stars from diff days?
Remove serenity dep from aoc-data
Given the plan (#14) to split into two crates:
- aoc-bot
- aoc-data
The aoc-data should not depend on serenity. Curently, it does so through the AocError
, which is easily fixed.
spoiler alert
Deserialize global score
Someone may want it
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.