v0.20.0
Added
- ✨
gatewayhas new backend possibilities:NewRemoteBlocksBackendallows you to create a gateway backend that uses one or multiple other gateways as backend. These gateways must support RAW block requests (application/vnd.ipld.raw), as well as IPNS Record requests (application/vnd.ipfs.ipns-record). With this, we also introducedNewCacheBlockStore,NewRemoteBlockstoreandNewRemoteValueStore.NewRemoteCarBackendallows you to create a gateway backend that uses one or multiple Trustless Gateways as backend. These gateways must support CAR requests (application/vnd.ipld.car), as well as the extensions describe in IPIP-402. With this, we also introducedNewCarBackend,NewRemoteCarFetcherandNewRetryCarFetcher.
gatewaynow sets theContent-Locationheader for requests with non-default content format, as a result of content negotiation. This allows generic and misconfigured HTTP caches to store Deserialized, CAR and Block responses separately, under distinct cache keys.gatewaynow supportscar-dups,car-orderandcar-versionas query parameters in addition to theapplication/vnd.ipld.carparameters sent viaAcceptheader. The parameters in theAcceptheader have always priority, but including them in URL simplifies HTTP caching and allows use inContent-Locationheader on CAR responses to maximize interoperability with wide array of HTTP caches.bitswap/servernow allows to override the default peer ledger withWithPeerLedger.
Fixed
routing/http/servernow returns 404 Status Not Found when no records can be found.routing/http/servernow supports legacy RSA PeerIDs encoded as Base58 Multihash
What's Changed
- Merge release v0.18.0 by @hacdias in #582
- docs: use tag link instead of branch by @hacdias in #583
- fix(routing/http): support lookups with legacy peerid notation by @lidel in #585
- routing/http/server: add cache control by @hacdias in #584
- chore: go 1.21 by @hacdias in #588
- ci: uci/update-go by @web3-bot in #589
- ipns: fix test by using global random reader by @hacdias in #586
- ci: uci/copy-templates by @web3-bot in #590
- feat(routing/http/server): improve ux of /ipns by @lidel in #596
- bitswap: add missing client options to exchange by @hacdias in #597
- provider: prioritize roots and introduce NewPrioritizedProvider by @hacdias in #595
- Release v0.19.0 by @hacdias in #598
Full Changelog: v0.18.0...v0.20.0
This release was brought to you by the Shipyard team.
