Releases: sandrolain/httpcache
Releases · sandrolain/httpcache
v1.4.0
Changes since v1.3.0
- docs(readme): update RFC compliance to RFC 9111 (622d09f)
- Merge branch 'next' into develop (71d0871)
- feat(docs): add DisableWarningHeader for RFC 9111 compliance (3cd2944)
- feat(docs): add authorization handling in shared caches (6c306f8)
- feat(vary): implement RFC 9111 compliant vary matching (97254dd)
- feat(cache): implement Cache-Control directive validation (5b74cd5)
- feat(age): implement RFC 9111 age calculation and validation (a039b6c)
- feat(cache): add support for must-understand directive (ba338eb)
- feat(vary): implement RFC 9111 compliant vary separation (0136e82)
- feat(cache): add support for public cache mode (9066d71)
- docs(readme): update cache invalidation details for RFC 9111 (ff0c7dd)
- feat(httpcache): update cache invalidation per RFC 9111 (773f377)
Full Changelog: v1.3.0...v1.4.0
v1.3.0
Changes since v1.2.0
- feat(readme): add logo and images for httpcache (309775c)
- ci: ignore image files in CI workflows (c3121f1)
- chore(deps): update aws-sdk-go and related dependencies (8f44530)
- feat(metrics): add integration tests for Prometheus metrics (eb4fd51)
- docs(readme): update use cases and improve description (b083f54)
- ci: skip cache for golangci-lint action (c40bf2e)
- style(tests): remove deprecated build constraints (c06f73d)
- feat: add compression wrapper with gzip, brotli and snappy (5125945)
- feat(metrics): move metrics/prometheus under wrapper package (0100146)
- feat(blobcache): implement blob storage caching backend (060fb96)
- feat(mongodb): implement MongoDB caching backend for httpcache (1a76340)
- feat(redis): add connection pooling and configuration options (3353e5e)
- feat: add MultiCache wrapper for multi-tier caching strategies (6ae7e12)
- feat(securecache): move securecache to wrapper directory (2fecc6e)
- fix(securecache): use dynamic nonce size for encryption (47ec49f)
- feat: add comprehensive documentation for httpcache (d8db946)
- feat(securecache): add AES-256-GCM encryption support (a7caa56)
- docs(readme): update cache backends and examples (7c51692)
- feat(natskv): add New() constructor for cache creation (2a95446)
- Merge branch 'freecache-backend' into develop (2d1c604)
- ci: simplify test job to run on ubuntu-latest (3abdec7)
- ci: update Go version to 1.25 in CI workflow (5502cb6)
- Merge branch 'prometheus-metrics' into develop (86e3aa2)
- Merge branch 'hazelcast-backend' into develop (6418458)
- Merge branch 'postgresql-backend' into develop (f23db78)
- Merge branch 'nats-integration' into develop (add6043)
- feat(benchmark): add benchmarks for MemoryCache operations (fd6eb2f)
- feat(freecache): add freecache backend example and benchmarks (eaf10b4)
- feat: Implement Hazelcast HTTP cache integration (c46da7b)
- feat(nats): add NATS JetStream K/V cache implementation and examples (8f66e93)
- feat(metrics): add Prometheus metrics support for HTTP cache (29643df)
- feat(postgresql): Add PostgreSQL cache backend with integration and benchmark tests (2ec94ac)
Full Changelog: v1.2.0...v1.3.0
v1.2.0
Changes since v1.1.0
- docs(changelog): add initial changelog for version 1.2.0 (9779e83)
- docs(todos): add security enhancement for cache key encryption (972c288)
- docs(todos): document handling of Cache-Control: private directive (d7b9f37)
- docs(readme): enhance CacheKeyHeaders and Vary header notes (9b5644e)
- docs(readme): clarify Vary header limitations and solutions (1d4bdc3)
- docs(readme): add security considerations for private cache (5935b3a)
- feat(docs): add Cache Key Headers documentation and examples (dc689a5)
- docs(readme): update coverage badge and compliance details (fd212b0)
- chore(go): update Go version to 1.25.3 (9992e1a)
- chore: update .gitignore to include /tmp directory (f54074f)
- Merge branch 'RFC-7234-compliance' into develop (849c649)
- docs(readme): add coverage badge to README (77ab889)
- chore: move MemoryCache to dedicated file (63f5e66)
- ci: update branches for CI and security workflows (db18b3b)
- feat(httpcache): invalidate cache on unsafe methods (a739dfb)
- feat(httpcache): support Pragma: no-cache in requests (30be2d4)
- feat(httpcache): add Warning headers for stale responses (1e009d1)
- feat(httpcache): enforce must-revalidate directive in cache (12e6923)
- feat(httpcache): add Age header calculation and tests (72e9bc8)
- Merge branch 'master' into develop (fa40667)
- test(integration): add integration tests for Memcache and Redis (f71a13c)
- feat(httpcache): add ShouldCache hook for custom caching (ab5ecc3)
- feat(todo): add ToDo note for context support in cache methods (416b9de)
- feat(httpcache): add stale-while-revalidate support (00fee20)
- docs(readme): add related projects section (ed83b19)
- docs(readme): add custom logger configuration example (deda225)
- feat(httpcache): add SkipServerErrorsFromCache option (91467a3)
- test(httpcache): add test for caching JSON without Content-Length (60b233d)
- feat(httpcache): drain response body for cached 304 and error responses (08abe63)
- feat(httpcache): add X-Stale header for stale responses (1e57c90)
- feat(httpcache): add X-Revalidated header for 304 responses (3f3138a)
- docs(readme): clarify cache hit detection example (58f2a29)
- ci: ignore markdown and license files in workflows (33d9863)
Full Changelog: v1.1.0...v1.2.0
v1.1.0
Changes
- fix(readme): update disk cache hashing algorithm to SHA-256 (7bdd0ac)
- docs(readme): remove architecture guide reference (13ceb3c)
- docs(todos): add TODO list for future improvements (1d1dbd1)
- ci: update Go version to 1.25 in workflows (91b31e6)
- ci: specify shell for test execution (4ed3a35)
- ci(security): refine gosec and govulncheck args to exclude dirs (19421f4)
- test(ci): exclude examples from test coverage (4d2b0ff)
- feat(httpcache): enhance caching logic and validation (f85322b)
- test(httpcache): add tests for cache freshness logic (b205367)
- feat: enhance logging and error handling across cache implementations (b262c9a)
- ci: update golangci-lint action to v8 (48623b0)
- chore: add GitHub workflows for CI, security, and release (2b09ec1)
- chore: update .gitignore to include *.out (8f29bd3)
- docs(readme): update and expand documentation content (ed7d0b7)
- feat(examples): add comprehensive caching examples (41aee9d)
- chore: add configuration files and update references (1a01650)
- Update README adding project status (gregjones#100) (901d907)
- test: Add a helper for testing cache implementations (gregjones#91) (3befbb6)
- .travis.yml: bump to Go 1.11, use 'gofmt -s' (gregjones#92) (7a90257)
- move redis dependency to maintained repo (gregjones#89) (c63ab54)
- README: link to RFC 7234 (gregjones#83) (9cad4c3)
- Refrain from setting 200 OK on cached responses (gregjones#77) (2bcd89a)
- README: Add BoltDB implementation. (gregjones#78) (22a0b1f)
- Travis: Add Go 1.9 (gregjones#76) (c1f8028)
- Use method as cache key prefix for non-GET requests. (gregjones#75) (316c5e0)
- Cache GET requests when body is fully read. (gregjones#71) (787624d)
- Remove .gitignore file. (gregjones#73) (efb97ba)
- README: More consistent formatting with other Go packages. (gregjones#68) (0d2297f)
- Remove unused resp values. (gregjones#66) (af915bf)
- Remove CancelRequest implementation, tracking of request copies. (592c2d5)
- Travis: Add Go 1.8; use latest minor version. (29e7c21)
- Merge pull request gregjones#63 from gregjones/fix-map-cleanup (d02018f)
- Fix request-map not being cleared up after requests (9c8ca9f)
- Travis: Add Go 1.7 for Travis config. (gregjones#56) (4137817)
- Add redis-backed cache implementation. (2aae00e)
- Merge pull request gregjones#52 from gregjones/dont-store-uncacheable-range-responses (16db777)
- Don't store responses from uncacheable range requests. (4082b08)
- Add failing test case for storing uncacheable range request. (01b2fc8)
- Merge pull request gregjones#49 from gregjones/dont-store-uncacheable-method-responses (37c2ad6)
- Don't store responses from uncacheable methods. (81de9c4)
- Add failing test case for storing uncacheable method. (ed02b2f)
- Minor correctness/style fixes for test handlers. (cd554ea)
- Merge pull request gregjones#48 from gregjones/fix-broken-links (2f25d93)
- README: Fix broken links. (d8593b9)
- Add new cache backends to Readme list (6088367)
- Merge pull request gregjones#44 from sourcegraph/stdlib-tests (eb50150)
- Change tests to use standard library, more idiomatic style. (f99d4c7)
- Merge pull request gregjones#40 from gregjones/fix-test-responses-missing-status-codes (4b02602)
- Remove simplify-code option, for now (be6978e)
- Add Status and StatusCode to mock responses (702602a)
- Merge pull request gregjones#39 from shurcooL/add-travis-ci (6f21ebc)
- Add .travis.yml config and badge. (5b22f64)
- Merge pull request gregjones#37 from shurcooL/avoid-trivial-defer (41d86b9)
- Avoid using defer where it's easy to do so. (76776b1)
- Merge branch 'rs-cache-fallback' (ae1d6fe)
- Use stale-if-error HTTP extension (a2d7555)
- Merge branch 'rs-canceller' (fac4d49)
- Add support for cancellation (2cc28a3)
- Merge branch 'leveldbcache' (a2645c9)
- Add leveldb cache to list of available backends (378d1df)
- Add leveldbcache provides an implementation of httpcache.Cache (78a5b00)
- Merge pull request gregjones#30 from gregjones/FixHopByHop (4fb00a8)
- use map of canonicalised headers in favour of looping function (cb3afe2)
- replace getHopByHop with getEndToEnd that does the right thing with headers on not-modified responses (6d9d83c)
- Update cached header fields based on those from incoming 304 response (6e141ba)
- Merge branch 'sqs-multiple-Vary-headers' (c4f0acf)
- Support multiple Vary response headers (43e2c78)
- Update import for gocheck (e3c2744)
- Revert "Merge branch 'mcuadros-cache-key'" (51b772d)
- Merge branch 'mcuadros-cache-key' (5a50314)
- Cache key with Method and URL (0e0bfdd)
- Merge pull request gregjones#23 from willnorris/304to200 (553cabb)
- proper conversion of 304 responses (1ca018e)
- Merge pull request gregjones#21 from gregjones/max-stale (6aecf8f)
- Remove distinction between returnable stale responses and fresh ones (1069b76)
- Pay attention to max-stale values in requests' cache-control headers. (35da90b)
- Stop using "1" as placeholder for cache-control. (6c0ccc1)
- use fakeClock in tests to avoid having to sleep (c7631a4)
- introduce timer interface with real implementation as a step towards making tests quicker (650ce2f)
- Merge pull request gregjones#16 from willnorris/client (fdaff96)
- convenience method for new client with Transport (8c67176)
- typo (d5147ff)
- Update README.md (af3e5d3)
- add memcache implementation of httpcache.Cache (cee9769)
- change tests to use httptest.Server (65e6263)
- Merge pull request gregjones#13 from sourcegraph/factor-out-date-func (0e8dac3)
- Merge pull request gregjones#12 from sourcegraph/handle-Roundtrip-errors (30344bd)
- Merge pull request gregjones#11 from sourcegraph/NewWithDiskv (cbc05c2)
- Factor out and export Date function (parses and returns the value of the Date header) (bfc6834)
- Return errors from transport.RoundTrip (e80134b)
- Update README.md (c4ae025)
- NewWithDiskv function for creating a cache that uses an existing Diskv (ac2449b)
- Tweak comments (b49eafc)
- Basic test for diskcache (57a4bff)
- Merge branch 'expose-cached-responses' of https://github.com/sourcegraph/httpcache into sourcegraph-expose-cached-responses (f0157f6)
- Merge pull request gregjones#6 from sourcegraph/diskv-WriteStream-interface (6f309fa)
- Expose cached responses via public API function CachedResponse (9c67ee2)
- Fix compile error: use diskv.WriteStream, not old diskv.WriteAndSync method. (47cc017)
- get from cache only if necessary (d6d2242)
- make Transport field optional (1071b32)
- make Cache exported too. (4678cdc)
- make Transport exported. (3585fc1)
- remove superfluous comments (4a951c2)
- run gofmt (651463f)
- make memory cache mutex private (ce00995)
- Update README.md (c6ed3b1)
- remove comment that no longer applies (3f32dba)
- roundTrip shouldn't have been modifying the supplied request. Change to clone it first (thanks to the goauth2 package for the method) (f8f0402)
- initialise diskv with a size so it will use memory. (fcfab8e)
- fix silly bug in min-fresh parsing (61c589a)
- fix silly bug in min-fresh parsing (685be42)
- remove config (bb50f7c)
- play with Travis (e83a42c)
- more tests (db6d983)
- Fixed handling of Expires header in response (f545b22)
- oh yeah, license. (feb95ff)
- fix typo, add fullstops, consts do not need to be exported. (62247d6)
- add package doc for diskcache (d396dc3)
- add fullstop (21b6b4a)
- Merge branch 'master' of github.com:gregjones/httpcache (c33471b)
- add a Cache implementation that uses diskv for persistent cache-storage (283ffbf)
- fix logic error in checking for cached responses (2d70c4e)
- Initial commit (ab2f97b)
- initial checking of a caching RoundTripper implementation (110bd42)
Full Changelog: https://github.com/sandrolain/httpcache/commits/v1.1.0