chore: First v0.15.0 CHANGELOG draft.
Antonio Navarro Perez committed
Aug 25, 2022 at 14:12 UTC
bd7e41ce837fc276a39d6134e6ba090b66c234a1
2 files changed
+338
CHANGELOG.md
+1
@@ -1,5 +1,6 @@
1
# Kubo Changelogs
2
3
+- [v0.15](docs/changelogs/v0.15.md)
4
- [v0.14](docs/changelogs/v0.14.md)
5
- [v0.13](docs/changelogs/v0.13.md)
6
- [v0.12](docs/changelogs/v0.12.md)
docs/changelogs/v0.15.md
new
+337
@@ -0,0 +1,337 @@
1
+# Kubo changelog v0.15
2
+
3
+## v0.15.0
4
+
5
+### Overview
6
+
7
+Below is an outline of all that is in this release, so you get a sense of all that's included.
8
+
9
+- [Kubo changelog v0.15](#kubo-changelog-v015)
10
+ - [v0.15.0](#v0150)
11
+ - [Overview](#overview)
12
+ - [🔦 Highlights](#-highlights)
13
+ - [#️⃣ Blake 3 support](#️⃣-blake-3-support)
14
+ - [💉 Fx Options plugin](#-fx-options-plugin)
15
+ - [Changelog](#changelog)
16
+ - [Contributors](#contributors)
17
+
18
+
19
+### 🔦 Highlights
20
+
21
+This is a release mainly with bugfixing and library updates.
22
+We are improving release speed and cadence trying to have a new release every 5 weeks.
23
+
24
+#### #️⃣ Blake 3 support
25
+
26
+You can now use `blake3` as a valid hash function:
27
+- `ipfs block put --mhtype=blake3`
28
+- `ipfs add --hash=blake3`
29
+It uses a 32 bytes default size.
30
+And verify up to 128 bytes.
31
+Because `blake3` is variable output hash function, you can use a different digest length, set `mhlen`: `ipfs block put --mhtype=blake3 --mhlen=64`, `ipfs add` doesn't have this option yet.
32
+
33
+#### 💉 Fx Options plugin
34
+
35
+This adds a plugin interface that lets the plugin modify the fx options that are passed to fx when the app is initialized.
36
+This means plugins can inject their own implementations of Kubo interfaces.
37
+This enables granular customization of Kubo behavior by plugins, such as:
38
+
39
+- Bitswap with custom filters (e.g. for CID blocking)
40
+- Custom interface implementations such as Pinner or DAGService
41
+- Dynamic configuration of libp2p ...
42
+
43
+Here's an example plugin that overrides the default Pinner with a custom one:
44
+
45
+```go
46
+func (p *PinnerPlugin) Options(info core.FXNodeInfo) ([]fx.Option, error) {
47
+ pinner := mypinner.New()
48
+ return append(info.FXOptions, fx.Replace(fx.Annotate(pinner, fx.As(new(pin.Pinner))))), nil
49
+}
50
+```
51
+
52
+Extra plugin info [here](https://github.com/ipfs/kubo/blob/master/docs/plugins.md#fx-experimental).
53
+
54
+### Changelog
55
+
56
+<details>
57
+<summary>Full Changelog</summary>
58
+
59
+- github.com/ipfs/kubo:
60
+ - chore: Release v0.15.0-rc1
61
+ - Update RELEASE_ISSUE_TEMPLATE.md for 0.15
62
+ - docs(add): skip binary name in helptext
63
+ - docs(cli): clarify CID determinism in add command
64
+ - docs(cli): clarify CAR format in dag export|import
65
+ - test(gw): cors preflight with custom hearder
66
+ - feat: make corehttp a reusable component ([ipfs/kubo#9070](https://github.com/ipfs/kubo/pull/9070))
67
+ - feat: go-libp2p v0.21 (rcmgr auto scaling) ([ipfs/kubo#9074](https://github.com/ipfs/kubo/pull/9074))
68
+ - ([ipfs/kubo#9024](https://github.com/ipfs/kubo/pull/9024))
69
+ - ([ipfs/kubo#9100](https://github.com/ipfs/kubo/pull/9100))
70
+ - ([ipfs/kubo#9095](https://github.com/ipfs/kubo/pull/9095))
71
+ - chore(cmd): add shutdown to CLI help ([ipfs/kubo#9194](https://github.com/ipfs/kubo/pull/9194))
72
+ - docs: add fx plugin documentation to plugins.md (#9191) ([ipfs/kubo#9191](https://github.com/ipfs/kubo/pull/9191))
73
+ - chore: switch to dist.ipfs.tech
74
+ - feat: add fx options plugin
75
+ - feat: add blake3 support
76
+ - Add reference to Experimental config doc (#9181) ([ipfs/kubo#9181](https://github.com/ipfs/kubo/pull/9181))
77
+ - feat: add $IPFS_PATH/gateway file
78
+ - docs: replace `docs.ipfs.io` with `docs.ipfs.tech` (#9158) ([ipfs/kubo#9158](https://github.com/ipfs/kubo/pull/9158))
79
+ - chore: fix markdown link syntax typo for AutoNAT.ServiceMode
80
+ - chore: bump go-blockservice to only do put onces
81
+ - docs: update Arch Linux installation instructions
82
+ - chore: update kubo-as-a-library example
83
+ - docs(readme): add maintainer info (#9141) ([ipfs/kubo#9141](https://github.com/ipfs/kubo/pull/9141))
84
+ - fix(gw): 404 when a valid DAG is missing link
85
+ - fix(gw): directory URL normalization ([ipfs/kubo#9123](https://github.com/ipfs/kubo/pull/9123))
86
+ - docs(config): add link to someguy router
87
+ - fix: typo in README
88
+ - Reproducible Builds: Update GOFLAGS for -trimpath
89
+ - Merge v0.14.0 back into master
90
+ - fix(gw): cache-control of index.html websites
91
+ - chore(license): fix broken link to apache-2.0
92
+ - fix: kubo in daemon and cli stdout
93
+ - docs(readme): move content to docs website (#9102) ([ipfs/kubo#9102](https://github.com/ipfs/kubo/pull/9102))
94
+ - fix(gw): no backlink when listing root dir
95
+- github.com/ipfs/go-bitswap (v0.7.0 -> v0.9.0):
96
+ - chore: release v0.9.0
97
+ - feat: split client and server ([ipfs/go-bitswap#570](https://github.com/ipfs/go-bitswap/pull/570))
98
+ - chore: remove goprocess from blockstoremanager
99
+ - Don't add blocks to the datastore ([ipfs/go-bitswap#571](https://github.com/ipfs/go-bitswap/pull/571))
100
+ - Remove dependency on travis package from go-libp2p-testing ([ipfs/go-bitswap#569](https://github.com/ipfs/go-bitswap/pull/569))
101
+ - feat: add basic tracing (#562) ([ipfs/go-bitswap#562](https://github.com/ipfs/go-bitswap/pull/562))
102
+- github.com/ipfs/go-blockservice (v0.3.0 -> v0.4.0):
103
+ - write blocks retrieved from the exchange to the blockstore ([ipfs/go-blockservice#92](https://github.com/ipfs/go-blockservice/pull/92))
104
+ - feat: add basic tracing ([ipfs/go-blockservice#91](https://github.com/ipfs/go-blockservice/pull/91))
105
+- github.com/ipfs/go-ipfs-exchange-interface (v0.1.0 -> v0.2.0):
106
+ - Rename HasBlock to NotifyNewBlocks, and make it accept multiple blocks ([ipfs/go-ipfs-exchange-interface#23](https://github.com/ipfs/go-ipfs-exchange-interface/pull/23))
107
+- github.com/ipfs/go-ipfs-exchange-offline (v0.2.0 -> v0.3.0):
108
+ - Exchange don't add blocks on their own anymore ([ipfs/go-ipfs-exchange-offline#47](https://github.com/ipfs/go-ipfs-exchange-offline/pull/47))
109
+- github.com/ipfs/go-verifcid (v0.0.1 -> v0.0.2):
110
+ - chore: release v0.0.2
111
+ - feat: add blake3 as a good hash
112
+ - sync: update CI config files (#12) ([ipfs/go-verifcid#12](https://github.com/ipfs/go-verifcid/pull/12))
113
+ - Add license ([ipfs/go-verifcid#8](https://github.com/ipfs/go-verifcid/pull/8))
114
+- github.com/ipld/go-codec-dagpb (v1.4.0 -> v1.4.1):
115
+ - v1.4.1 bump
116
+- github.com/libp2p/go-buffer-pool (v0.0.2 -> v0.1.0):
117
+ - release v0.1.0 (#30) ([libp2p/go-buffer-pool#30](https://github.com/libp2p/go-buffer-pool/pull/30))
118
+ - panic if a negative length is passed to BufferPool.Get (#28) ([libp2p/go-buffer-pool#28](https://github.com/libp2p/go-buffer-pool/pull/28))
119
+ - sync: update CI config files (#22) ([libp2p/go-buffer-pool#22](https://github.com/libp2p/go-buffer-pool/pull/22))
120
+ - sync: update CI config files (#20) ([libp2p/go-buffer-pool#20](https://github.com/libp2p/go-buffer-pool/pull/20))
121
+ - test: fix gc test on go 1.16 ([libp2p/go-buffer-pool#18](https://github.com/libp2p/go-buffer-pool/pull/18))
122
+ - fix staticcheck ([libp2p/go-buffer-pool#16](https://github.com/libp2p/go-buffer-pool/pull/16))
123
+ - test: make sure we have the correct number of pools ([libp2p/go-buffer-pool#10](https://github.com/libp2p/go-buffer-pool/pull/10))
124
+- github.com/libp2p/go-libp2p (v0.20.3 -> v0.21.0):
125
+ - Release v0.21.0 (#1648) ([libp2p/go-libp2p#1648](https://github.com/libp2p/go-libp2p/pull/1648))
126
+ - ping: optimize random number generation (#1658) ([libp2p/go-libp2p#1658](https://github.com/libp2p/go-libp2p/pull/1658))
127
+ - feat: switch noise to use minio's SHA256 implementation (#1657) ([libp2p/go-libp2p#1657](https://github.com/libp2p/go-libp2p/pull/1657))
128
+ - swarm: mark dialing WebTransport addresses as expensive (#1650) ([libp2p/go-libp2p#1650](https://github.com/libp2p/go-libp2p/pull/1650))
129
+ - routedhost: fix decoding of relay peer ID (#1644) ([libp2p/go-libp2p#1644](https://github.com/libp2p/go-libp2p/pull/1644))
130
+ - Release v0.21.0 RC (#1638) ([libp2p/go-libp2p#1638](https://github.com/libp2p/go-libp2p/pull/1638))
131
+ - fix: return the best _acceptable_ conn in NewStream (#1604) ([libp2p/go-libp2p#1604](https://github.com/libp2p/go-libp2p/pull/1604))
132
+ - use autoscaling limits (#1637) ([libp2p/go-libp2p#1637](https://github.com/libp2p/go-libp2p/pull/1637))
133
+ - docs: point to SetDefaultServiceLimits in ResourceManager option (#1636) ([libp2p/go-libp2p#1636](https://github.com/libp2p/go-libp2p/pull/1636))
134
+ - chore: update deps (#1634) ([libp2p/go-libp2p#1634](https://github.com/libp2p/go-libp2p/pull/1634))
135
+ - Pass endpoint information to resource manager's OpenConnection (#1633) ([libp2p/go-libp2p#1633](https://github.com/libp2p/go-libp2p/pull/1633))
136
+ - Add canonical peer status logs (#1624) ([libp2p/go-libp2p#1624](https://github.com/libp2p/go-libp2p/pull/1624))
137
+ - move go-libp2p-circuit here ([libp2p/go-libp2p#1626](https://github.com/libp2p/go-libp2p/pull/1626))
138
+ - swarm: fix logging of accepted connections (#1629) ([libp2p/go-libp2p#1629](https://github.com/libp2p/go-libp2p/pull/1629))
139
+ - fix: deny connections to peers in the right place (#1627) ([libp2p/go-libp2p#1627](https://github.com/libp2p/go-libp2p/pull/1627))
140
+ - ping: fix flaky test (#1617) ([libp2p/go-libp2p#1617](https://github.com/libp2p/go-libp2p/pull/1617))
141
+ - chore: use the new multiaddr.Contains function (#1618) ([libp2p/go-libp2p#1618](https://github.com/libp2p/go-libp2p/pull/1618))
142
+ - chore: stop using the deprecated mux.MuxedConn (#1614) ([libp2p/go-libp2p#1614](https://github.com/libp2p/go-libp2p/pull/1614))
143
+ - logging: Add canonical log for misbehaving peers (#1600) ([libp2p/go-libp2p#1600](https://github.com/libp2p/go-libp2p/pull/1600))
144
+ - use multiaddr ipcidr to parse multiaddr filters (#1606) ([libp2p/go-libp2p#1606](https://github.com/libp2p/go-libp2p/pull/1606))
145
+ - tcp: unexport TcpTransport.Upgrader (#1596) ([libp2p/go-libp2p#1596](https://github.com/libp2p/go-libp2p/pull/1596))
146
+ - muxer: expose func to create MuxedConn from backing Conn (#1609) ([libp2p/go-libp2p#1609](https://github.com/libp2p/go-libp2p/pull/1609))
147
+ - remove legacy mDNS implementation (#1192) ([libp2p/go-libp2p#1192](https://github.com/libp2p/go-libp2p/pull/1192))
148
+ - feat: allow dialing wss peers using DNS multiaddrs
149
+ - fix natManager to close natManager.nat (#1468) ([libp2p/go-libp2p#1468](https://github.com/libp2p/go-libp2p/pull/1468))
150
+ - Expose DefaultPerPeerRateLimit as var (#1580) ([libp2p/go-libp2p#1580](https://github.com/libp2p/go-libp2p/pull/1580))
151
+ - swarm: add ListenClose (#1586) ([libp2p/go-libp2p#1586](https://github.com/libp2p/go-libp2p/pull/1586))
152
+ - identify: Fix flaky tests (#1555) ([libp2p/go-libp2p#1555](https://github.com/libp2p/go-libp2p/pull/1555))
153
+ - autonat: fix flaky TestAutoNATPrivate (#1581) ([libp2p/go-libp2p#1581](https://github.com/libp2p/go-libp2p/pull/1581))
154
+ - pstoremanager: fix test timeout (#1588) ([libp2p/go-libp2p#1588](https://github.com/libp2p/go-libp2p/pull/1588))
155
+ - swarm: send notifications synchronously (#1562) ([libp2p/go-libp2p#1562](https://github.com/libp2p/go-libp2p/pull/1562))
156
+ - basichost: fix flaky TestSignedPeerRecordWithNoListenAddrs (#1559) ([libp2p/go-libp2p#1559](https://github.com/libp2p/go-libp2p/pull/1559))
157
+ - identify: fix flaky TestIdentifyDeltaOnProtocolChange (again) (#1582) ([libp2p/go-libp2p#1582](https://github.com/libp2p/go-libp2p/pull/1582))
158
+ - tls: fix flaky TestInvalidCerts on Windows ([libp2p/go-libp2p#1560](https://github.com/libp2p/go-libp2p/pull/1560))
159
+ - chore: log autorelay start failure error ([libp2p/go-libp2p#1583](https://github.com/libp2p/go-libp2p/pull/1583))
160
+ - Add sanity check assertion (#1570) ([libp2p/go-libp2p#1570](https://github.com/libp2p/go-libp2p/pull/1570))
161
+ - swarm: speed up the TestDialWorkerLoopConcurrentFailureStress test (#1573) ([libp2p/go-libp2p#1573](https://github.com/libp2p/go-libp2p/pull/1573))
162
+ - chore: update examples to go-libp2p v0.20.0 (#1557) ([libp2p/go-libp2p#1557](https://github.com/libp2p/go-libp2p/pull/1557))
163
+ - Wait a couple seconds for ID event (#1568) ([libp2p/go-libp2p#1568](https://github.com/libp2p/go-libp2p/pull/1568))
164
+ - remove workspace and packages section from README (#1563) ([libp2p/go-libp2p#1563](https://github.com/libp2p/go-libp2p/pull/1563))
165
+ - fix: mkreleaselog exclude autogenerated files (#1567) ([libp2p/go-libp2p#1567](https://github.com/libp2p/go-libp2p/pull/1567))
166
+ - move resource manager integration tests to p2p/test/ (#1561) ([libp2p/go-libp2p#1561](https://github.com/libp2p/go-libp2p/pull/1561))
167
+ - swarm: only dial a single transport in TestDialWorkerLoopBasic (#1526) ([libp2p/go-libp2p#1526](https://github.com/libp2p/go-libp2p/pull/1526))
168
+- github.com/libp2p/go-libp2p-core (v0.16.1 -> v0.19.1):
169
+ - Update version.json
170
+ - Remove btcsuite/btcd dep (#272) ([libp2p/go-libp2p-core#272](https://github.com/libp2p/go-libp2p-core/pull/272))
171
+ - Release v0.19.0 (#271) ([libp2p/go-libp2p-core#271](https://github.com/libp2p/go-libp2p-core/pull/271))
172
+ - Add endpoint parameter to the OpenConnection method for ResourceManager (#257) ([libp2p/go-libp2p-core#257](https://github.com/libp2p/go-libp2p-core/pull/257))
173
+ - Release v0.18.0 (#270) ([libp2p/go-libp2p-core#270](https://github.com/libp2p/go-libp2p-core/pull/270))
174
+ - Add canonical peer status logging with sampling (#269) ([libp2p/go-libp2p-core#269](https://github.com/libp2p/go-libp2p-core/pull/269))
175
+ - canonicallog: reduce log level to warning (#268) ([libp2p/go-libp2p-core#268](https://github.com/libp2p/go-libp2p-core/pull/268))
176
+ - Only log once if we failed to convert from netAddr (#264) ([libp2p/go-libp2p-core#264](https://github.com/libp2p/go-libp2p-core/pull/264))
177
+ - remove deprecated mux package (#265) ([libp2p/go-libp2p-core#265](https://github.com/libp2p/go-libp2p-core/pull/265))
178
+ - remove the peer.Set (#261) ([libp2p/go-libp2p-core#261](https://github.com/libp2p/go-libp2p-core/pull/261))
179
+ - Bump version (#259) ([libp2p/go-libp2p-core#259](https://github.com/libp2p/go-libp2p-core/pull/259))
180
+ - Add canonical log for misbehaving peers (#258) ([libp2p/go-libp2p-core#258](https://github.com/libp2p/go-libp2p-core/pull/258))
181
+- github.com/libp2p/go-libp2p-kad-dht (v0.16.0 -> v0.17.0):
182
+ - Chore: bump version to v0.17.0
183
+ - Update go-libp2p to v0.20.3 ([libp2p/go-libp2p-kad-dht#778](https://github.com/libp2p/go-libp2p-kad-dht/pull/778))
184
+- github.com/libp2p/go-libp2p-peerstore (v0.6.0 -> v0.7.1):
185
+ - Release v0.7.1 ([libp2p/go-libp2p-peerstore#202](https://github.com/libp2p/go-libp2p-peerstore/pull/202))
186
+ - stop using the peer.Set (#201) ([libp2p/go-libp2p-peerstore#201](https://github.com/libp2p/go-libp2p-peerstore/pull/201))
187
+ - feat: Use a clock interface in pstoreds as well ([libp2p/go-libp2p-peerstore#200](https://github.com/libp2p/go-libp2p-peerstore/pull/200))
188
+ - feat: use a clock interface to better support testing for pstoremem ([libp2p/go-libp2p-peerstore#199](https://github.com/libp2p/go-libp2p-peerstore/pull/199))
189
+ - pstoremem: fix slice preallocation in GetProtocols (#198) ([libp2p/go-libp2p-peerstore#198](https://github.com/libp2p/go-libp2p-peerstore/pull/198))
190
+ - remove all calls to peer.ID.Validate ([libp2p/go-libp2p-peerstore#194](https://github.com/libp2p/go-libp2p-peerstore/pull/194))
191
+ - remove the addr package ([libp2p/go-libp2p-peerstore#195](https://github.com/libp2p/go-libp2p-peerstore/pull/195))
192
+ - move AddrList to pstoremen, unexport it ([libp2p/go-libp2p-peerstore#193](https://github.com/libp2p/go-libp2p-peerstore/pull/193))
193
+ - optimize allocations in the memory address book ([libp2p/go-libp2p-peerstore#191](https://github.com/libp2p/go-libp2p-peerstore/pull/191))
194
+ - implement a clean shutdown for the memory address book ([libp2p/go-libp2p-peerstore#192](https://github.com/libp2p/go-libp2p-peerstore/pull/192))
195
+- github.com/libp2p/go-libp2p-resource-manager (v0.3.0 -> v0.5.3):
196
+ - Chore: release patch v0.5.3 ([libp2p/go-libp2p-resource-manager#77](https://github.com/libp2p/go-libp2p-resource-manager/pull/77))
197
+ - Add namespace to metrics ([libp2p/go-libp2p-resource-manager#79](https://github.com/libp2p/go-libp2p-resource-manager/pull/79))
198
+ - Fix usage of make to reserve capacity, not values ([libp2p/go-libp2p-resource-manager#76](https://github.com/libp2p/go-libp2p-resource-manager/pull/76))
199
+ - Add package docs ([libp2p/go-libp2p-resource-manager#75](https://github.com/libp2p/go-libp2p-resource-manager/pull/75))
200
+ - chore: Release v0.5.2 ([libp2p/go-libp2p-resource-manager#74](https://github.com/libp2p/go-libp2p-resource-manager/pull/74))
201
+ - Record which direction the resource was blocked ([libp2p/go-libp2p-resource-manager#72](https://github.com/libp2p/go-libp2p-resource-manager/pull/72))
202
+ - Simplify mem graphs in stock grafana dashboard ([libp2p/go-libp2p-resource-manager#73](https://github.com/libp2p/go-libp2p-resource-manager/pull/73))
203
+ - feat: Handle multiple instances in stock grafana dashboard ([libp2p/go-libp2p-resource-manager#70](https://github.com/libp2p/go-libp2p-resource-manager/pull/70))
204
+ - Use templated version of grafana dashboard json ([libp2p/go-libp2p-resource-manager#69](https://github.com/libp2p/go-libp2p-resource-manager/pull/69))
205
+ - Release v0.5.1 ([libp2p/go-libp2p-resource-manager#66](https://github.com/libp2p/go-libp2p-resource-manager/pull/66))
206
+ - Implement `json.Marshaler` interface for LimitConfig ([libp2p/go-libp2p-resource-manager#67](https://github.com/libp2p/go-libp2p-resource-manager/pull/67))
207
+ - Don't wait for a chan that will never close ([libp2p/go-libp2p-resource-manager#65](https://github.com/libp2p/go-libp2p-resource-manager/pull/65))
208
+ - release v0.5.0 ([libp2p/go-libp2p-resource-manager#60](https://github.com/libp2p/go-libp2p-resource-manager/pull/60))
209
+ - Add docs around WithAllowlistedMultiaddrs. Expose allowlist ([libp2p/go-libp2p-resource-manager#63](https://github.com/libp2p/go-libp2p-resource-manager/pull/63))
210
+ - fix marshalling of allowlisted scopes ([libp2p/go-libp2p-resource-manager#62](https://github.com/libp2p/go-libp2p-resource-manager/pull/62))
211
+ - docs: describe how the limiter is configured, and how limits are scaled (#59) ([libp2p/go-libp2p-resource-manager#59](https://github.com/libp2p/go-libp2p-resource-manager/pull/59))
212
+ - don't limit the number of FDs on Windows (#58) ([libp2p/go-libp2p-resource-manager#58](https://github.com/libp2p/go-libp2p-resource-manager/pull/58))
213
+ - Add ability to configure allowlist limits ([libp2p/go-libp2p-resource-manager#57](https://github.com/libp2p/go-libp2p-resource-manager/pull/57))
214
+ - rewrite limits to allow auto-scaling ([libp2p/go-libp2p-resource-manager#48](https://github.com/libp2p/go-libp2p-resource-manager/pull/48))
215
+ - Release v0.4.0 ([libp2p/go-libp2p-resource-manager#56](https://github.com/libp2p/go-libp2p-resource-manager/pull/56))
216
+ - feat: Out of the box metrics for resource manager ([libp2p/go-libp2p-resource-manager#54](https://github.com/libp2p/go-libp2p-resource-manager/pull/54))
217
+ - feat: Allowlist ([libp2p/go-libp2p-resource-manager#47](https://github.com/libp2p/go-libp2p-resource-manager/pull/47))
218
+ - trace the scope as a JSON object (#52) ([libp2p/go-libp2p-resource-manager#52](https://github.com/libp2p/go-libp2p-resource-manager/pull/52))
219
+ - include current limits in debug messages ([libp2p/go-libp2p-resource-manager#42](https://github.com/libp2p/go-libp2p-resource-manager/pull/42))
220
+ - add an ID to spans (#44) ([libp2p/go-libp2p-resource-manager#44](https://github.com/libp2p/go-libp2p-resource-manager/pull/44))
221
+ - add a DefaultLimitConfig with infinite limits (#41) ([libp2p/go-libp2p-resource-manager#41](https://github.com/libp2p/go-libp2p-resource-manager/pull/41))
222
+ - export the TraceEvt (#40) ([libp2p/go-libp2p-resource-manager#40](https://github.com/libp2p/go-libp2p-resource-manager/pull/40))
223
+ - trace exact timestamps (#39) ([libp2p/go-libp2p-resource-manager#39](https://github.com/libp2p/go-libp2p-resource-manager/pull/39))
224
+ - skip events that don't change anything in tracer (#38) ([libp2p/go-libp2p-resource-manager#38](https://github.com/libp2p/go-libp2p-resource-manager/pull/38))
225
+ - fix typos in MetricsReporter docs
226
+ - fix shadowing of service name (#37) ([libp2p/go-libp2p-resource-manager#37](https://github.com/libp2p/go-libp2p-resource-manager/pull/37))
227
+ - add a timestamp to trace events (#34) ([libp2p/go-libp2p-resource-manager#34](https://github.com/libp2p/go-libp2p-resource-manager/pull/34))
228
+- github.com/libp2p/go-libp2p-testing (v0.9.2 -> v0.11.0):
229
+ - Release v0.11.0 ([libp2p/go-libp2p-testing#64](https://github.com/libp2p/go-libp2p-testing/pull/64))
230
+ - Remove unused bench file and dep ([libp2p/go-libp2p-testing#63](https://github.com/libp2p/go-libp2p-testing/pull/63))
231
+ - Release v0.10.0 ([libp2p/go-libp2p-testing#62](https://github.com/libp2p/go-libp2p-testing/pull/62))
232
+ - Update go-libp2p-core dep ([libp2p/go-libp2p-testing#61](https://github.com/libp2p/go-libp2p-testing/pull/61))
233
+ - remove suites (#60) ([libp2p/go-libp2p-testing#60](https://github.com/libp2p/go-libp2p-testing/pull/60))
234
+ - don't continue on read / write error in stream suite (#59) ([libp2p/go-libp2p-testing#59](https://github.com/libp2p/go-libp2p-testing/pull/59))
235
+ - remove debug logging from stream and muxer suite ([libp2p/go-libp2p-testing#58](https://github.com/libp2p/go-libp2p-testing/pull/58))
236
+ - remove Travis package (#57) ([libp2p/go-libp2p-testing#57](https://github.com/libp2p/go-libp2p-testing/pull/57))
237
+- github.com/lucas-clemente/quic-go (v0.27.1 -> v0.28.0):
238
+ - update for Go 1.19beta1 (#3460) ([lucas-clemente/quic-go#3460](https://github.com/lucas-clemente/quic-go/pull/3460))
239
+ - dedupe Alt-Svc header values (#3461) ([lucas-clemente/quic-go#3461](https://github.com/lucas-clemente/quic-go/pull/3461))
240
+ - only set DF for sockets that can handle it (#3448) ([lucas-clemente/quic-go#3448](https://github.com/lucas-clemente/quic-go/pull/3448))
241
+ - fix flaky HTTP/3 request body test (#3447) ([lucas-clemente/quic-go#3447](https://github.com/lucas-clemente/quic-go/pull/3447))
242
+ - make the keep alive interval configurable (#3444) ([lucas-clemente/quic-go#3444](https://github.com/lucas-clemente/quic-go/pull/3444))
243
+ - implement QUIC v2 ([lucas-clemente/quic-go#3432](https://github.com/lucas-clemente/quic-go/pull/3432))
244
+ - allow HTTP clients and servers to take over the request stream ([lucas-clemente/quic-go#3437](https://github.com/lucas-clemente/quic-go/pull/3437))
245
+ - remove the http3.DataStreamer (#3435) ([lucas-clemente/quic-go#3435](https://github.com/lucas-clemente/quic-go/pull/3435))
246
+ - always reset header buffer, even when QPACK encoding fails (#3436) ([lucas-clemente/quic-go#3436](https://github.com/lucas-clemente/quic-go/pull/3436))
247
+ - Change "HTTP/3" to "HTTP/3.0". (#3439) ([lucas-clemente/quic-go#3439](https://github.com/lucas-clemente/quic-go/pull/3439))
248
+ - remove stray http3 connection file
249
+ - pass frame / stream type parsing errors to the hijacker callbacks ([lucas-clemente/quic-go#3429](https://github.com/lucas-clemente/quic-go/pull/3429))
250
+ - add test for bidirectional stream hijacker (#3434) ([lucas-clemente/quic-go#3434](https://github.com/lucas-clemente/quic-go/pull/3434))
251
+ - make it possible to parse a varint at the end of a reader (#3428) ([lucas-clemente/quic-go#3428](https://github.com/lucas-clemente/quic-go/pull/3428))
252
+ - don't ignore errors that occur when the TLS ClientHello is generated ([lucas-clemente/quic-go#3424](https://github.com/lucas-clemente/quic-go/pull/3424))
253
+ - don't send path MTU probe packets on a timer (#3423) ([lucas-clemente/quic-go#3423](https://github.com/lucas-clemente/quic-go/pull/3423))
254
+ - introduce a http3.RoundTripOpt to prevent closing of request stream (#3411) ([lucas-clemente/quic-go#3411](https://github.com/lucas-clemente/quic-go/pull/3411))
255
+ - don't close the request stream when http3.DataStreamer was used (#3413) ([lucas-clemente/quic-go#3413](https://github.com/lucas-clemente/quic-go/pull/3413))
256
+ - do not embed http.Server in http3.Server (#3397) ([lucas-clemente/quic-go#3397](https://github.com/lucas-clemente/quic-go/pull/3397))
257
+ - remove error return value from ComposeVersionNegotiation (#3410) ([lucas-clemente/quic-go#3410](https://github.com/lucas-clemente/quic-go/pull/3410))
258
+ - don't set receive buffer if it is already large enough (#3407) ([lucas-clemente/quic-go#3407](https://github.com/lucas-clemente/quic-go/pull/3407))
259
+ - clone TLS conf in newClient (#3400) ([lucas-clemente/quic-go#3400](https://github.com/lucas-clemente/quic-go/pull/3400))
260
+ - remove warning comments of stable implementation (#3399) ([lucas-clemente/quic-go#3399](https://github.com/lucas-clemente/quic-go/pull/3399))
261
+ - fix parsing of request path for Extended CONNECT requests (#3388) ([lucas-clemente/quic-go#3388](https://github.com/lucas-clemente/quic-go/pull/3388))
262
+ - update docs to reflect that we support RFC 9221 (Unreliable Datagrams) (#3382) ([lucas-clemente/quic-go#3382](https://github.com/lucas-clemente/quic-go/pull/3382))
263
+ - fix deadlock on concurrent http3.Server.Serve and Close calls (#3387) ([lucas-clemente/quic-go#3387](https://github.com/lucas-clemente/quic-go/pull/3387))
264
+ - reduce flakiness of deadline integration tests (#3383) ([lucas-clemente/quic-go#3383](https://github.com/lucas-clemente/quic-go/pull/3383))
265
+ - protect against concurrent use of Stream.Write (#3381) ([lucas-clemente/quic-go#3381](https://github.com/lucas-clemente/quic-go/pull/3381))
266
+ - protect against concurrent use of Stream.Read (#3380) ([lucas-clemente/quic-go#3380](https://github.com/lucas-clemente/quic-go/pull/3380))
267
+ - Expose quic server closed err (#3395) ([lucas-clemente/quic-go#3395](https://github.com/lucas-clemente/quic-go/pull/3395))
268
+ - implement HTTP/3 unidirectional stream hijacking (#3389) ([lucas-clemente/quic-go#3389](https://github.com/lucas-clemente/quic-go/pull/3389))
269
+ - add LocalAddr and RemoteAddr functions to http3.StreamCreator (#3384) ([lucas-clemente/quic-go#3384](https://github.com/lucas-clemente/quic-go/pull/3384))
270
+ - extend the HTTP/3 API for WebTransport support ([lucas-clemente/quic-go#3362](https://github.com/lucas-clemente/quic-go/pull/3362))
271
+ - remove unneeded network from custom dial function used in HTTP/3 (#3368) ([lucas-clemente/quic-go#3368](https://github.com/lucas-clemente/quic-go/pull/3368))
272
+- github.com/multiformats/go-multiaddr (v0.5.0 -> v0.6.0):
273
+ - release v0.6.0 ([multiformats/go-multiaddr#178](https://github.com/multiformats/go-multiaddr/pull/178))
274
+ - add WebTransport multiaddr components ([multiformats/go-multiaddr#176](https://github.com/multiformats/go-multiaddr/pull/176))
275
+ - add ipcidr support (#177) ([multiformats/go-multiaddr#177](https://github.com/multiformats/go-multiaddr/pull/177))
276
+ - add a Contains function (#172) ([multiformats/go-multiaddr#172](https://github.com/multiformats/go-multiaddr/pull/172))
277
+- github.com/multiformats/go-multibase (v0.1.0 -> v0.1.1):
278
+ - chore: release version 0.1.1
279
+ - fix: add new emoji codepoint for Base256Emoji 🐉
280
+- github.com/multiformats/go-multihash (v0.2.0 -> v0.2.1):
281
+ - chore: release v0.2.1
282
+ - feat: adding tests and finish variable sized functions
283
+ - feat: add support for variable length hash functions
284
+ - adding blake3 tests and fixing an incorrect error message. (#158) ([multiformats/go-multihash#158](https://github.com/multiformats/go-multihash/pull/158))
285
+
286
+</details>
287
+
288
+### Contributors
289
+
290
+| Contributor | Commits | Lines ± | Files Changed |
291
+|-------------|---------|---------|---------------|
292
+| Marten Seemann | 129 | +5612/-9895 | 345 |
293
+| Marco Munizaga | 109 | +7689/-3221 | 181 |
294
+| vyzo | 64 | +3972/-657 | 125 |
295
+| Jorropo | 19 | +1977/-1611 | 109 |
296
+| Steven Allen | 30 | +633/-593 | 54 |
297
+| Jeromy Johnson | 5 | +1032/-64 | 16 |
298
+| Marcin Rataj | 21 | +406/-200 | 59 |
299
+| Michael Muré | 6 | +335/-250 | 14 |
300
+| Gus Eggert | 8 | +336/-104 | 31 |
301
+| Claudia Richoux | 3 | +181/-63 | 9 |
302
+| Steve Loeppky | 11 | +95/-141 | 11 |
303
+| Ian Davis | 4 | +126/-58 | 6 |
304
+| hareku | 3 | +172/-6 | 7 |
305
+| Ivan Trubach | 1 | +98/-74 | 6 |
306
+| Raúl Kripalani | 2 | +69/-62 | 9 |
307
+| Seungbae Yu | 1 | +41/-41 | 13 |
308
+| Julien Muret | 1 | +60/-7 | 2 |
309
+| Mark Gaiser | 1 | +64/-0 | 5 |
310
+| Lars Gierth | 1 | +20/-29 | 4 |
311
+| Cole Brown | 4 | +27/-19 | 4 |
312
+| Chao Fei | 2 | +15/-30 | 9 |
313
+| Nuno Diegues | 2 | +25/-18 | 9 |
314
+| Jakub Sztandera | 1 | +37/-0 | 3 |
315
+| Wiktor Jurkiewicz | 1 | +13/-5 | 1 |
316
+| c r | 1 | +11/-6 | 3 |
317
+| Christian Stewart | 1 | +15/-2 | 4 |
318
+| Matt Robenolt | 1 | +15/-1 | 2 |
319
+| aarshkshah1992 | 2 | +8/-2 | 2 |
320
+| link2xt | 1 | +4/-4 | 1 |
321
+| Aaron Riekenberg | 1 | +4/-4 | 4 |
322
+| web3-bot | 3 | +7/-0 | 3 |
323
+| Adrian Lanzafame | 1 | +3/-3 | 1 |
324
+| Dmitriy Ryajov | 2 | +2/-3 | 2 |
325
+| Brendan O'Brien | 1 | +5/-0 | 1 |
326
+| millken | 1 | +1/-1 | 1 |
327
+| lostystyg | 1 | +1/-1 | 1 |
328
+| kpcyrd | 1 | +1/-1 | 1 |
329
+| anders | 1 | +1/-1 | 1 |
330
+| Rod Vagg | 1 | +1/-1 | 1 |
331
+| Matt Joiner | 1 | +1/-1 | 1 |
332
+| Leo Balduf | 1 | +1/-1 | 1 |
333
+| Didrik Nordström | 1 | +2/-0 | 1 |
334
+| Daniel Norman | 1 | +1/-1 | 1 |
335
+| Antonio Navarro Perez | 1 | +1/-1 | 1 |
336
+| Adin Schmahmann | 1 | +1/-1 | 1 |
337
+| Lucas Molas | 1 | +1/-0 | 1 |