-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add a persistent image cache #291
Draft
CosmicHorrorDev
wants to merge
5
commits into
Inlyne-Project:main
Choose a base branch
from
CosmicHorrorDev:image-cache
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
851f7ba
to
ce16fea
Compare
Just some random tidbits:
|
d70ec18
to
002581f
Compare
This was referenced May 4, 2024
Open
Guess who has two thumbs and gets to port things away from |
5b16ba3
to
1dbcd30
Compare
Still a little ways to go, but getting closer at least 🎉
|
2fb468d
to
70b4810
Compare
55ec404
to
73f5533
Compare
6fb7c8e
to
8b2ebb9
Compare
rebase this test(image_cache): Add tests for image cache headers rebase this f Migrate over to `http-cache-semantics` f refactor(tests): Drop wiremock (Inlyne-Project#320) * docs: Describe what we use deps for * refactor(tests): Switch `wiremock` for a custom impl refactor(tests): simplify the file server (Inlyne-Project#321) Refactor local image caching Hashing out more of the impl needs _soooo_ much refactoring Dirty rebase artifacts. Fix later rebase me away slowly getting the final pieces together time to update with `main` Nail down most of the routing Dont pre-render SVGs before storage Get more of the custom test env setup Get the sanity test working refactor(cache): Switch db from redb to sqlite Use our shiny new test utils refactor: Delete dead test code rebase into commit that added it rename images.data -> images.image remove redb dep lalalalala f get local image fetching working Get more tests sorted out Shrank test data image rebase original file out of git history Test suite is getting better getting closer Add etag flow to test server test: Add support for dynamic image test servers rebase this: lru test mostly working rebase this some cleanup more image cache tests
8b2ebb9
to
c804431
Compare
39a5faf
to
2bd3532
Compare
The test suite is a good representation of the current state of the PR $ cargo t image::cache
...
running 17 tests
test image::cache::tests::global_ttl ... ignored, TODO: waiting for garbage collection
test image::cache::tests::lru ... ignored, TODO: waiting for garbage collection
test image::cache::tests::mutli_client_mash ... ignored, TODO: waiting for garbage collection
test image::cache::tests::remote_404_error ... ok
test image::cache::tests::private_cache ... ok
test image::cache::tests::etag_refresh_same ... ok
test image::cache::tests::selectively_stores ... ok
test image::cache::tests::remote_layers ... ok
test image::cache::tests::corrupt_db_entry ... ok
test image::cache::tests::etag_refresh_different ... ok
test image::cache::tests::local_invalidation ... ok
test image::cache::tests::invalid_img ... ok
test image::cache::tests::stats ... ok
test image::cache::tests::local_svg_layers ... ok
test image::cache::tests::local_layers ... ok
test image::cache::tests::past_max_age_refetch ... ok
test image::cache::tests::remote_svg_layers ... ok
test result: ok. 14 passed; 0 failed; 3 ignored; 0 measured; 54 filtered out; finished in 0.27s The only thing left to implement is garbage collection (including probably updating entry's m-times) and wiring up the cache to actually be used by the application Potential future work
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This will eventually resolve #234