Something went wrong. Try again.
An atproto AppView for tracking a Magic: The Gathering collection github.com/eth0net/manaweb
appview atproto mtg rust typescript
Something went wrong. Try again.
Commits on main
chore: 0.14.0 v0.14.0 main
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net bbf81d3c docs(scanner): a pinned build is what gives the exact comparison back
Signed-off-by: eth0net <eth0net@pm.me>
docs(scanner): a pinned build is what gives the exact comparison back
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net c4dfbd3d docs(scryfall): what a merge does to the date a stack carries
Signed-off-by: eth0net <eth0net@pm.me>
docs(scryfall): what a merge does to the date a stack carries
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 38a7d141 feat(import): a stack keeps the date it was last changed
Signed-off-by: eth0net <eth0net@pm.me>
feat(import): a stack keeps the date it was last changed
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net cf95d793 docs(scryfall): a format that drops nothing but where cards are filed
Signed-off-by: eth0net <eth0net@pm.me>
docs(scryfall): a format that drops nothing but where cards are filed
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net e8718253 feat(export): a file of our own, for what a vendor has no room for
Signed-off-by: eth0net <eth0net@pm.me>
feat(export): a file of our own, for what a vendor has no room for
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 18128103 docs(scryfall): the fourth count a sync refuses on
Signed-off-by: eth0net <eth0net@pm.me>
docs(scryfall): the fourth count a sync refuses on
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 863b0d5f feat(core): a sync refuses a file no record of which carried a field
Signed-off-by: eth0net <eth0net@pm.me>
feat(core): a sync refuses a file no record of which carried a field
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 1cd5f4c7 docs(reports): the four decisions the plan got wrong
Signed-off-by: eth0net <eth0net@pm.me>
docs(reports): the four decisions the plan got wrong
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net b370b3e5 docs: a count that drifted twice says all of them instead
Signed-off-by: eth0net <eth0net@pm.me>
docs: a count that drifted twice says all of them instead
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net da517aee ci: the engine bytes are a question only one machine can answer
Signed-off-by: eth0net <eth0net@pm.me>
ci: the engine bytes are a question only one machine can answer
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 973a22a9 docs(scryfall): what an export decides that an import does not
Signed-off-by: eth0net <eth0net@pm.me>
docs(scryfall): what an export decides that an import does not
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net aec8f148 feat(export): a collection as a file another tracker reads
Signed-off-by: eth0net <eth0net@pm.me>
feat(export): a collection as a file another tracker reads
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 308c373b feat(import): the binding names the columns an export writes
Signed-off-by: eth0net <eth0net@pm.me>
feat(import): the binding names the columns an export writes
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 1cfbeb25 docs(atproto): a drain batch is briefly in neither place
Signed-off-by: eth0net <eth0net@pm.me>
docs(atproto): a drain batch is briefly in neither place
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
docs: index reports.md
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
chore: 0.13.0 v0.13.0
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 71694bbe build: the engine is what the one pipeline builds
Signed-off-by: eth0net <eth0net@pm.me>
build: the engine is what the one pipeline builds
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net eae68b54 docs(scanner): which stage drops a tilted card
Signed-off-by: eth0net <eth0net@pm.me>
docs(scanner): which stage drops a tilted card
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 9f7a211a feat(scanner): a card leaned at angles nothing was photographed at
Signed-off-by: eth0net <eth0net@pm.me>
feat(scanner): a card leaned at angles nothing was photographed at
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 68665760 feat(artwork): refusals tallies what the detector turns a frame down for
Signed-off-by: eth0net <eth0net@pm.me>
feat(artwork): refusals tallies what the detector turns a frame down for
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net b187fef8 feat(scanner): a detection says which check turned a frame down
Signed-off-by: eth0net <eth0net@pm.me>
feat(scanner): a detection says which check turned a frame down
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 321e409b feat(core): a sync that lost too much of its file is refused
Signed-off-by: eth0net <eth0net@pm.me>
feat(core): a sync that lost too much of its file is refused
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 024a8315 docs(reports): what a scan sent back would take, and what it breaks
Signed-off-by: eth0net <eth0net@pm.me>
docs(reports): what a scan sent back would take, and what it breaks
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 29b2adac docs(scanner): the refresh is the wrong clock for a top-up
Signed-off-by: eth0net <eth0net@pm.me>
docs(scanner): the refresh is the wrong clock for a top-up
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 8080a40a docs: the engine holds the crate version too
Signed-off-by: eth0net <eth0net@pm.me>
docs: the engine holds the crate version too
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
chore: 0.12.0 v0.12.0
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 4ff2efc9 build: a release rebuilds the engine it ships
Signed-off-by: eth0net <eth0net@pm.me>
build: a release rebuilds the engine it ships
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net b81489e1 feat(scan): the review says what will sit apart from what is owned
Signed-off-by: eth0net <eth0net@pm.me>
feat(scan): the review says what will sit apart from what is owned
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 95967438 feat(scan): the review grades what a scan brought back
Signed-off-by: eth0net <eth0net@pm.me>
feat(scan): the review grades what a scan brought back
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
feat(scan): a scanned stack carries a grade
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 8688be26 fix(lexicon-check): a stray file beside the collections is not one
Signed-off-by: eth0net <eth0net@pm.me>
fix(lexicon-check): a stray file beside the collections is not one
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net da4924ad feat(appview): the store has a default, like the cache and the catalog
Signed-off-by: eth0net <eth0net@pm.me>
feat(appview): the store has a default, like the cache and the catalog
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 1c2e5067 feat(appview): the refresh tops up the scanner index
Signed-off-by: eth0net <eth0net@pm.me>
feat(appview): the refresh tops up the scanner index
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net c5b0d4fe feat(artwork): a store is filled in rather than rebuilt
Signed-off-by: eth0net <eth0net@pm.me>
feat(artwork): a store is filled in rather than rebuilt
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 61d466b9 feat(appview): a catalog with no scanner index says so
Signed-off-by: eth0net <eth0net@pm.me>
feat(appview): a catalog with no scanner index says so
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net b0783377 docs(configuration): a container held back by a stranded cache
Signed-off-by: eth0net <eth0net@pm.me>
docs(configuration): a container held back by a stranded cache
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net b81e00d9 fix(appview): a container stop reaches the graceful shutdown
Signed-off-by: eth0net <eth0net@pm.me>
fix(appview): a container stop reaches the graceful shutdown
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net cecef661 ci: the committed engine is checked where a push is not
Signed-off-by: eth0net <eth0net@pm.me>
ci: the committed engine is checked where a push is not
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 585836ac build: the engine is what the pinned compiler builds v0.11.0
Signed-off-by: eth0net <eth0net@pm.me>
build: the engine is what the pinned compiler builds v0.11.0
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
chore: 0.11.0
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 1bfdfbe1 build: one compiler for a checkout and for CI
Signed-off-by: eth0net <eth0net@pm.me>
build: one compiler for a checkout and for CI
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 5979e2be test: an emptiness assertion says what it found
Signed-off-by: eth0net <eth0net@pm.me>
test: an emptiness assertion says what it found
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net aba9fe06 build: image's png reader holds its own miniz_oxide
Signed-off-by: eth0net <eth0net@pm.me>
build: image's png reader holds its own miniz_oxide
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 4b7f3034 docs(scanner): what a whole scan actually asks the index
Signed-off-by: eth0net <eth0net@pm.me>
docs(scanner): what a whole scan actually asks the index
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net c0beec35 test(web): pin that a report says what the reader read
Signed-off-by: eth0net <eth0net@pm.me>
test(web): pin that a report says what the reader read
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 7ab45af2 fix(web): a finish changed while the list is being kept is not thrown away
Signed-off-by: eth0net <eth0net@pm.me>
fix(web): a finish changed while the list is being kept is not thrown away
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 0dbf9b9c fix(web): a scan during the first read no longer loses the saved list
Signed-off-by: eth0net <eth0net@pm.me>
fix(web): a scan during the first read no longer loses the saved list
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net e45b7d83 fix(web): a card named out of the catalog is one the review can show
Signed-off-by: eth0net <eth0net@pm.me>
fix(web): a card named out of the catalog is one the review can show
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net a7e46736 build: a recipe to serve and restart on a Rust change
Signed-off-by: eth0net <eth0net@pm.me>
build: a recipe to serve and restart on a Rust change
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 8fd41adf docs: two passages that outlived what they described
Signed-off-by: eth0net <eth0net@pm.me>
docs: two passages that outlived what they described
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 196dea75 docs: the icon's reasoning goes beside the code that draws it
Signed-off-by: eth0net <eth0net@pm.me>
docs: the icon's reasoning goes beside the code that draws it
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net dba3528e docs: Default Cards is the base, and past it everything is a pack
Signed-off-by: eth0net <eth0net@pm.me>
docs: Default Cards is the base, and past it everything is a pack
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 12a1f284 fix(web): a phone can sign in, and sees it when it cannot
Signed-off-by: eth0net <eth0net@pm.me>
fix(web): a phone can sign in, and sees it when it cannot
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net a0e1a874 fix(core): the finishes table is built from the rows, like every other
Signed-off-by: eth0net <eth0net@pm.me>
fix(core): the finishes table is built from the rows, like every other
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 2a9b34cc docs(web): a comment that described the function below it
Signed-off-by: eth0net <eth0net@pm.me>
docs(web): a comment that described the function below it
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 33f852a8 fix(web): the panel says only what this read and this fold hold
Signed-off-by: eth0net <eth0net@pm.me>
fix(web): the panel says only what this read and this fold hold
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 32014660 fix(core): a face with neither colors nor a cost takes the card's
Signed-off-by: eth0net <eth0net@pm.me>
fix(core): a face with neither colors nor a cost takes the card's
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net a6b441d4 feat(web): the pick list is short, and what else it could be folds away
Signed-off-by: eth0net <eth0net@pm.me>
feat(web): the pick list is short, and what else it could be folds away
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed
eth0net 47539679 fix(web): a settled artwork is not a settled printing
Signed-off-by: eth0net <eth0net@pm.me>
fix(web): a settled artwork is not a settled printing
Signed-off-by: eth0net <eth0net@pm.me>
eth0net committed