mirror of
https://github.com/ipfs/kubo.git
synced 2026-02-25 04:17:44 +08:00
docs: preparing 0.20 changelog for release (#9799)
Co-authored-by: Gus Eggert <gus@gus.dev> Co-authored-by: Marcin Rataj <lidel@lidel.org> Co-authored-by: Henrique Dias <hacdias@gmail.com>
This commit is contained in:
parent
e4fa9cb7ac
commit
b706d64487
@ -6,6 +6,13 @@
|
||||
|
||||
- [Overview](#overview)
|
||||
- [🔦 Highlights](#-highlights)
|
||||
- [Boxo under the covers](#boxo-under-the-covers)
|
||||
- [HTTP Gateway](#http-gateway)
|
||||
- [Switch to `boxo/gateway` library](#switch-to-boxogateway-library)
|
||||
- [Improved testing](#improved-testing)
|
||||
- [Trace Context support](#trace-context-support)
|
||||
- [Removed legacy features](#removed-legacy-features)
|
||||
- [`--empty-repo` is now the default](#--empty-repo-is-now-the-default)
|
||||
- [📝 Changelog](#-changelog)
|
||||
- [👨👩👧👦 Contributors](#-contributors)
|
||||
|
||||
@ -13,6 +20,97 @@
|
||||
|
||||
### 🔦 Highlights
|
||||
|
||||
#### Boxo under the covers
|
||||
We have consolidated many IPFS repos into [Boxo](https://github.com/ipfs/boxo), and this release switches Kubo over to use Boxo instead of those repos, resulting in the removal of 27 dependencies from Kubo:
|
||||
|
||||
- github.com/ipfs/go-bitswap
|
||||
- github.com/ipfs/go-ipfs-files
|
||||
- github.com/ipfs/tar-utils
|
||||
- gihtub.com/ipfs/go-block-format
|
||||
- github.com/ipfs/interface-go-ipfs-core
|
||||
- github.com/ipfs/go-unixfs
|
||||
- github.com/ipfs/go-pinning-service-http-client
|
||||
- github.com/ipfs/go-path
|
||||
- github.com/ipfs/go-namesys
|
||||
- github.com/ipfs/go-mfs
|
||||
- github.com/ipfs/go-ipfs-provider
|
||||
- github.com/ipfs/go-ipfs-pinner
|
||||
- github.com/ipfs/go-ipfs-keystore
|
||||
- github.com/ipfs/go-filestore
|
||||
- github.com/ipfs/go-ipns
|
||||
- github.com/ipfs/go-blockservice
|
||||
- github.com/ipfs/go-ipfs-chunker
|
||||
- github.com/ipfs/go-fetcher
|
||||
- github.com/ipfs/go-ipfs-blockstore
|
||||
- github.com/ipfs/go-ipfs-posinfo
|
||||
- github.com/ipfs/go-ipfs-util
|
||||
- github.com/ipfs/go-ipfs-ds-help
|
||||
- github.com/ipfs/go-verifcid
|
||||
- github.com/ipfs/go-ipfs-exchange-offline
|
||||
- github.com/ipfs/go-ipfs-routing
|
||||
- github.com/ipfs/go-ipfs-exchange-interface
|
||||
- github.com/ipfs/go-libipfs
|
||||
|
||||
Note: if you consume these in your own code, we recommend migrating to Boxo. To ease this process, there's a [tool which will help migrate your code to Boxo](https://github.com/ipfs/boxo#migrating-to-box).
|
||||
|
||||
You can learn more about the [Boxo 0.8 release](https://github.com/ipfs/boxo/releases/tag/v0.8.0) that Kubo now depends and the general effort to get Boxo to be a stable foundation [here](https://github.com/ipfs/boxo/issues/196).
|
||||
|
||||
#### HTTP Gateway
|
||||
|
||||
##### Switch to `boxo/gateway` library
|
||||
|
||||
Gateway code was extracted and refactored into a standalone library that now
|
||||
lives in [boxo/gateway](https://github.com/ipfs/boxo/tree/main/gateway). This
|
||||
enabled us to clean up some legacy code and remove dependency on Kubo
|
||||
internals.
|
||||
|
||||
The GO API is still being refined, but now operates on higher level abstraction
|
||||
defined by `gateway.IPFSBackend` interface. It is now possible to embed
|
||||
gateway functionality without the rest of Kubo.
|
||||
|
||||
See the [car](https://github.com/ipfs/boxo/tree/main/examples/gateway/car)
|
||||
and [proxy](https://github.com/ipfs/boxo/tree/main/examples/gateway/proxy)
|
||||
examples, or more advanced
|
||||
[bifrost-gateway](https://github.com/ipfs/bifrost-gateway).
|
||||
|
||||
##### Improved testing
|
||||
|
||||
We are also in the progress of moving away from gateway testing being based on
|
||||
Kubo sharness tests, and are working on
|
||||
[ipfs/gateway-conformance](https://github.com/ipfs/gateway-conformance) test
|
||||
suite that is vendor agnostic and can be run against arbitrary HTTP endpoint to
|
||||
test specific subset of [HTTP Gateways specifications](https://specs.ipfs.tech/http-gateways/).
|
||||
|
||||
##### Trace Context support
|
||||
|
||||
We've introduced initial support for `traceparent` header from [W3C's Trace
|
||||
Context spec](https://w3c.github.io/trace-context/).
|
||||
|
||||
If `traceparent` header is
|
||||
present in the gateway request, one can use its `trace-id` part to inspect
|
||||
trace spans via selected exporter such as Jaeger UI
|
||||
([docs](https://github.com/ipfs/boxo/blob/main/docs/tracing.md#using-jaeger-ui),
|
||||
[demo](https://user-images.githubusercontent.com/157609/231312374-bafc2035-1fc6-4d6b-901b-9e4af039807c.png)).
|
||||
|
||||
To learn more, see [tracing docs](https://github.com/ipfs/boxo/blob/main/docs/tracing.md).
|
||||
|
||||
##### Removed legacy features
|
||||
|
||||
- Some Kubo-specific prometheus metrics are no longer available.
|
||||
- An up-to-date list of gateway metrics can be found in [boxo/gateway/metrics.go](https://github.com/ipfs/boxo/blob/main/gateway/metrics.go).
|
||||
- The legacy opt-in `Gateway.Writable` is no longer available as of Kubo 0.20.
|
||||
- We are working on developing a modern replacement.
|
||||
To support our efforts, please leave a comment describing your use case in
|
||||
[ipfs/specs#375](https://github.com/ipfs/specs/issues/375).
|
||||
|
||||
#### `--empty-repo` is now the default
|
||||
|
||||
When creating a repository with `ipfs init`, `--empty-repo=true` is now the default. This means
|
||||
that your repository will be empty by default instead of containing the introduction files.
|
||||
You can read more about the rationale behind this decision on the [tracking issue](https://github.com/ipfs/kubo/issues/9757).
|
||||
|
||||
### 📝 Changelog
|
||||
|
||||
### 👨👩👧👦 Contributors
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user