Skip to content

Commit e70db65

Browse files
authored
Merge pull request #10207 from ipfs/release-v0.24.0
Release: v0.24.0
2 parents 4c16a40 + 2d4a20e commit e70db65

File tree

13 files changed

+141
-19
lines changed

13 files changed

+141
-19
lines changed

core/commands/routing.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import (
1414
iface "github.com/ipfs/boxo/coreiface"
1515
"github.com/ipfs/boxo/coreiface/options"
1616
dag "github.com/ipfs/boxo/ipld/merkledag"
17+
"github.com/ipfs/boxo/ipns"
1718
cid "github.com/ipfs/go-cid"
1819
cmds "github.com/ipfs/go-ipfs-cmds"
1920
ipld "github.com/ipfs/go-ipld-format"
@@ -80,10 +81,9 @@ var findProvidersRoutingCmd = &cmds.Command{
8081
ctx, cancel := context.WithCancel(req.Context)
8182
ctx, events := routing.RegisterForQueryEvents(ctx)
8283

83-
pchan := n.Routing.FindProvidersAsync(ctx, c, numProviders)
84-
8584
go func() {
8685
defer cancel()
86+
pchan := n.Routing.FindProvidersAsync(ctx, c, numProviders)
8787
for p := range pchan {
8888
np := p
8989
routing.PublishQueryEvent(ctx, &routing.QueryEvent{
@@ -451,12 +451,12 @@ identified by QmFoo.
451451
options.Put.AllowOffline(allowOffline),
452452
}
453453

454-
err = api.Routing().Put(req.Context, req.Arguments[0], data, opts...)
454+
ipnsName, err := ipns.NameFromString(req.Arguments[0])
455455
if err != nil {
456456
return err
457457
}
458458

459-
id, err := api.Key().Self(req.Context)
459+
err = api.Routing().Put(req.Context, req.Arguments[0], data, opts...)
460460
if err != nil {
461461
if err == iface.ErrOffline {
462462
err = errAllowOffline
@@ -466,7 +466,7 @@ identified by QmFoo.
466466

467467
return res.Emit(routing.QueryEvent{
468468
Type: routing.Value,
469-
ID: id.ID(),
469+
ID: ipnsName.Peer(),
470470
})
471471
},
472472
Encoders: cmds.EncoderMap{

docs/changelogs/v0.24.md

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,4 +82,122 @@ node that is behind a NAT or firewall. This is being worked on [`go-libp2p#2009`
8282

8383
### 📝 Changelog
8484

85+
<details><summary>Full Changelog</summary>
86+
87+
- github.com/ipfs/kubo:
88+
- chore: update version
89+
- fix: allow event emitting to happen in parallel with getting the query channel
90+
- fixes to routing put command (#10205) ([ipfs/kubo#10205](https://github.com/ipfs/kubo/pull/10205))
91+
- docs: fix accelerated-dht-client
92+
- docs/config: remove extra commas in PublicGateways example entries
93+
- chore: update version
94+
- docs: make it clear Web RTC Direct is experimental
95+
- feat: add WebRTC Direct support
96+
- docs: update EARLY_TESTERS.md (#10194) ([ipfs/kubo#10194](https://github.com/ipfs/kubo/pull/10194))
97+
- Release: v0.24.0-1 ([ipfs/kubo#10190](https://github.com/ipfs/kubo/pull/10190))
98+
- github.com/ipfs/boxo (v0.13.1 -> v0.15.0):
99+
- Release v0.15.0 ([ipfs/boxo#505](https://github.com/ipfs/boxo/pull/505))
100+
- Release v0.14.0 ([ipfs/boxo#500](https://github.com/ipfs/boxo/pull/500))
101+
- github.com/ipfs/go-block-format (v0.1.2 -> v0.2.0):
102+
- v0.2.0 bump
103+
- github.com/ipfs/go-graphsync (v0.15.1 -> v0.16.0):
104+
- chore: release 0.16.0
105+
- chore: bump go-libp2p to 0.32.0
106+
- github.com/ipfs/go-ipld-format (v0.5.0 -> v0.6.0):
107+
- v0.6.0 bump
108+
- chore: update deps
109+
- fix: stop using the deprecated io/ioutil package
110+
- github.com/libp2p/go-libp2p (v0.31.0 -> v0.32.1):
111+
- release v0.32.1 (#2637) ([libp2p/go-libp2p#2637](https://github.com/libp2p/go-libp2p/pull/2637))
112+
- swarm: fix timer Leak in the dial loop (#2636) ([libp2p/go-libp2p#2636](https://github.com/libp2p/go-libp2p/pull/2636))
113+
- release v0.32.0 (#2625) ([libp2p/go-libp2p#2625](https://github.com/libp2p/go-libp2p/pull/2625))
114+
- chore: update js-libp2p examples repo (#2624) ([libp2p/go-libp2p#2624](https://github.com/libp2p/go-libp2p/pull/2624))
115+
- identify: don't filter dns addresses based on remote addr type (#2553) ([libp2p/go-libp2p#2553](https://github.com/libp2p/go-libp2p/pull/2553))
116+
- webrtc: fix race in TestRemoveConnByUfrag (#2620) ([libp2p/go-libp2p#2620](https://github.com/libp2p/go-libp2p/pull/2620))
117+
- swarm: fix recursive resolving of DNS multiaddrs (#2564) ([libp2p/go-libp2p#2564](https://github.com/libp2p/go-libp2p/pull/2564))
118+
- ci: migrate to renamed interop test action (#2617) ([libp2p/go-libp2p#2617](https://github.com/libp2p/go-libp2p/pull/2617))
119+
- quic: update quic-go to v0.39.1, set a static resumption token generator key (#2572) ([libp2p/go-libp2p#2572](https://github.com/libp2p/go-libp2p/pull/2572))
120+
- test/basichost: fix flaky test due to rcmgr (#2613) ([libp2p/go-libp2p#2613](https://github.com/libp2p/go-libp2p/pull/2613))
121+
- swarm: use typed atomics (#2612) ([libp2p/go-libp2p#2612](https://github.com/libp2p/go-libp2p/pull/2612))
122+
- swarm: cleanup stream handler goroutine (#2610) ([libp2p/go-libp2p#2610](https://github.com/libp2p/go-libp2p/pull/2610))
123+
- circuitv2: don't check ASN for private addrs (#2611) ([libp2p/go-libp2p#2611](https://github.com/libp2p/go-libp2p/pull/2611))
124+
- swarm: use happy eyeballs ranking for TCP dials (#2573) ([libp2p/go-libp2p#2573](https://github.com/libp2p/go-libp2p/pull/2573))
125+
- webrtc: fix race in TestMuxedConnection (#2607) ([libp2p/go-libp2p#2607](https://github.com/libp2p/go-libp2p/pull/2607))
126+
- tcp: fix build on riscv64 (#2590) ([libp2p/go-libp2p#2590](https://github.com/libp2p/go-libp2p/pull/2590))
127+
- Fix missing deprecation tag (#2605) ([libp2p/go-libp2p#2605](https://github.com/libp2p/go-libp2p/pull/2605))
128+
- swarm: wait for transient connections to upgrade for NewStream (#2542) ([libp2p/go-libp2p#2542](https://github.com/libp2p/go-libp2p/pull/2542))
129+
- docs: fix typos (#2604) ([libp2p/go-libp2p#2604](https://github.com/libp2p/go-libp2p/pull/2604))
130+
- webrtc: correctly report incoming packet address on muxed connection (#2586) ([libp2p/go-libp2p#2586](https://github.com/libp2p/go-libp2p/pull/2586))
131+
- swarm: add loopback to low timeout filter (#2595) ([libp2p/go-libp2p#2595](https://github.com/libp2p/go-libp2p/pull/2595))
132+
- Fix typos in comments and a test failure message (#2600) ([libp2p/go-libp2p#2600](https://github.com/libp2p/go-libp2p/pull/2600))
133+
- libp2phttp: don't strip `/` suffix when mounting handler (#2552) ([libp2p/go-libp2p#2552](https://github.com/libp2p/go-libp2p/pull/2552))
134+
- interop: fix redis env var (#2585) ([libp2p/go-libp2p#2585](https://github.com/libp2p/go-libp2p/pull/2585))
135+
- quicreuse: remove QUIC metrics tracer (#2582) ([libp2p/go-libp2p#2582](https://github.com/libp2p/go-libp2p/pull/2582))
136+
- config: warn if connmgr limits conflict with rcmgr (#2527) ([libp2p/go-libp2p#2527](https://github.com/libp2p/go-libp2p/pull/2527))
137+
- update gomock to v0.3.0 (#2581) ([libp2p/go-libp2p#2581](https://github.com/libp2p/go-libp2p/pull/2581))
138+
- webrtc: fix deadlock on connection close (#2580) ([libp2p/go-libp2p#2580](https://github.com/libp2p/go-libp2p/pull/2580))
139+
- webrtc: put buffer back to pool (#2574) ([libp2p/go-libp2p#2574](https://github.com/libp2p/go-libp2p/pull/2574))
140+
- webrtc: fail Write early if deadline has exceeded before the call (#2578) ([libp2p/go-libp2p#2578](https://github.com/libp2p/go-libp2p/pull/2578))
141+
- swarm: fix DialPeer behaviour for transient connections (#2547) ([libp2p/go-libp2p#2547](https://github.com/libp2p/go-libp2p/pull/2547))
142+
- websocket: don't resolve /dnsaddr addresses (#2571) ([libp2p/go-libp2p#2571](https://github.com/libp2p/go-libp2p/pull/2571))
143+
- core/peer: remove deprecated ID.Pretty method (#2565) ([libp2p/go-libp2p#2565](https://github.com/libp2p/go-libp2p/pull/2565))
144+
- core/peer: remove deprecated Encode function (#2566) ([libp2p/go-libp2p#2566](https://github.com/libp2p/go-libp2p/pull/2566))
145+
- mock: use go.uber.org/mock (#2540) ([libp2p/go-libp2p#2540](https://github.com/libp2p/go-libp2p/pull/2540))
146+
- add WebRTC Direct transport implementation (#2337) ([libp2p/go-libp2p#2337](https://github.com/libp2p/go-libp2p/pull/2337))
147+
- upgrader: drop support for multistream simultaneous open (#2557) ([libp2p/go-libp2p#2557](https://github.com/libp2p/go-libp2p/pull/2557))
148+
- examples: stop using deprecated peer.ID.Pretty (#2563) ([libp2p/go-libp2p#2563](https://github.com/libp2p/go-libp2p/pull/2563))
149+
- swarm: don't dial unspecified addresses (#2560) ([libp2p/go-libp2p#2560](https://github.com/libp2p/go-libp2p/pull/2560))
150+
- basichost: handle the SetProtocol error in NewStream (#2555) ([libp2p/go-libp2p#2555](https://github.com/libp2p/go-libp2p/pull/2555))
151+
- libp2phttp: don't initialise ServeMux if not nil (#2548) ([libp2p/go-libp2p#2548](https://github.com/libp2p/go-libp2p/pull/2548))
152+
- github.com/libp2p/go-libp2p-pubsub (v0.9.3 -> v0.10.0):
153+
- chore: update go-libp2p to v0.32 (#548) ([libp2p/go-libp2p-pubsub#548](https://github.com/libp2p/go-libp2p-pubsub/pull/548))
154+
- remove usage of deprecated peerid.Pretty method (#542) ([libp2p/go-libp2p-pubsub#542](https://github.com/libp2p/go-libp2p-pubsub/pull/542))
155+
- Revert "fix: topicscore params can't be set for dynamically subscribed topic (#540)" (#541) ([libp2p/go-libp2p-pubsub#541](https://github.com/libp2p/go-libp2p-pubsub/pull/541))
156+
- fix: topicscore params can't be set for dynamically subscribed topic (#540) ([libp2p/go-libp2p-pubsub#540](https://github.com/libp2p/go-libp2p-pubsub/pull/540))
157+
- github.com/multiformats/go-multiaddr (v0.11.0 -> v0.12.0):
158+
- release v0.12.0 (#223) ([multiformats/go-multiaddr#223](https://github.com/multiformats/go-multiaddr/pull/223))
159+
- net: consider /dns/localhost as private address (#221) ([multiformats/go-multiaddr#221](https://github.com/multiformats/go-multiaddr/pull/221))
160+
- net: consider dns addresses as public (#220) ([multiformats/go-multiaddr#220](https://github.com/multiformats/go-multiaddr/pull/220))
161+
- github.com/multiformats/go-multistream (v0.4.1 -> v0.5.0):
162+
- remove support for the simultaneous open extension (#107) ([multiformats/go-multistream#107](https://github.com/multiformats/go-multistream/pull/107))
163+
164+
</details>
165+
85166
### 👨‍👩‍👧‍👦 Contributors
167+
168+
| Contributor | Commits | Lines ± | Files Changed |
169+
|-------------|---------|---------|---------------|
170+
| Henrique Dias | 27 | +4505/-3853 | 244 |
171+
| Marten Seemann | 18 | +4260/-1173 | 101 |
172+
| Sukun | 24 | +1499/-340 | 79 |
173+
| Andrew Gillis | 4 | +169/-1025 | 16 |
174+
| Adin Schmahmann | 4 | +788/-184 | 19 |
175+
| Hector Sanjuan | 6 | +619/-72 | 19 |
176+
| Steven Allen | 11 | +489/-101 | 14 |
177+
| Jorropo | 10 | +221/-192 | 28 |
178+
| Łukasz Magiera | 2 | +306/-9 | 3 |
179+
| Lucas Molas | 1 | +183/-52 | 2 |
180+
| Marcin Rataj | 5 | +160/-25 | 6 |
181+
| piersy | 1 | +57/-0 | 6 |
182+
| Raúl Kripalani | 1 | +25/-25 | 2 |
183+
| Alvin Reyes | 1 | +34/-14 | 1 |
184+
| Dennis Trautwein | 1 | +1/-40 | 2 |
185+
| Icarus9913 | 1 | +14/-14 | 10 |
186+
| Takashi Matsuda | 2 | +18/-1 | 3 |
187+
| gammazero | 4 | +8/-5 | 7 |
188+
| xiaolou86 | 1 | +6/-6 | 5 |
189+
| Daniel Martí | 1 | +9/-2 | 1 |
190+
| Rod Vagg | 3 | +5/-5 | 4 |
191+
| Andrej Manduch | 1 | +5/-5 | 3 |
192+
| vuittont60 | 1 | +4/-4 | 3 |
193+
| vyzo | 1 | +5/-1 | 1 |
194+
| tkzktk | 1 | +3/-3 | 3 |
195+
| tk | 1 | +3/-3 | 2 |
196+
| Prem Chaitanya Prathi | 1 | +1/-5 | 1 |
197+
| Kay | 2 | +2/-3 | 2 |
198+
| Thomas Eizinger | 1 | +2/-2 | 1 |
199+
| Steve Loeppky | 1 | +2/-2 | 1 |
200+
| Jonas Keunecke | 1 | +2/-2 | 1 |
201+
| Alejandro Criado-Pérez | 1 | +1/-1 | 1 |
202+
| web3-bot | 1 | +1/-0 | 1 |
203+
| Eric | 1 | +1/-0 | 1 |

docs/config.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -761,7 +761,7 @@ between content roots.
761761
"PublicGateways": {
762762
"dweb.link": {
763763
"UseSubdomains": true,
764-
"Paths": ["/ipfs", "/ipns"],
764+
"Paths": ["/ipfs", "/ipns"]
765765
}
766766
}
767767
}
@@ -776,7 +776,7 @@ between content roots.
776776
"PublicGateways": {
777777
"ipfs.io": {
778778
"UseSubdomains": false,
779-
"Paths": ["/ipfs", "/ipns", "/api"],
779+
"Paths": ["/ipfs", "/ipns", "/api"]
780780
}
781781
}
782782
}

docs/examples/kubo-as-a-library/go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ replace github.com/ipfs/kubo => ./../../..
99
require (
1010
github.com/ipfs/boxo v0.15.0
1111
github.com/ipfs/kubo v0.0.0-00010101000000-000000000000
12-
github.com/libp2p/go-libp2p v0.32.0
12+
github.com/libp2p/go-libp2p v0.32.1
1313
github.com/multiformats/go-multiaddr v0.12.0
1414
)
1515

docs/examples/kubo-as-a-library/go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -463,8 +463,8 @@ github.com/libp2p/go-flow-metrics v0.0.1/go.mod h1:Iv1GH0sG8DtYN3SVJ2eG221wMiNpZ
463463
github.com/libp2p/go-flow-metrics v0.0.3/go.mod h1:HeoSNUrOJVK1jEpDqVEiUOIXqhbnS27omG0uWU5slZs=
464464
github.com/libp2p/go-flow-metrics v0.1.0 h1:0iPhMI8PskQwzh57jB9WxIuIOQ0r+15PChFGkx3Q3WM=
465465
github.com/libp2p/go-flow-metrics v0.1.0/go.mod h1:4Xi8MX8wj5aWNDAZttg6UPmc0ZrnFNsMtpsYUClFtro=
466-
github.com/libp2p/go-libp2p v0.32.0 h1:86I4B7nBUPIyTgw3+5Ibq6K7DdKRCuZw8URCfPc1hQM=
467-
github.com/libp2p/go-libp2p v0.32.0/go.mod h1:hXXC3kXPlBZ1eu8Q2hptGrMB4mZ3048JUoS4EKaHW5c=
466+
github.com/libp2p/go-libp2p v0.32.1 h1:wy1J4kZIZxOaej6NveTWCZmHiJ/kY7GoAqXgqNCnPps=
467+
github.com/libp2p/go-libp2p v0.32.1/go.mod h1:hXXC3kXPlBZ1eu8Q2hptGrMB4mZ3048JUoS4EKaHW5c=
468468
github.com/libp2p/go-libp2p-asn-util v0.3.0 h1:gMDcMyYiZKkocGXDQ5nsUQyquC9+H+iLEQHwOCZ7s8s=
469469
github.com/libp2p/go-libp2p-asn-util v0.3.0/go.mod h1:B1mcOrKUE35Xq/ASTmQ4tN3LNzVVaMNmq2NACuqyB9w=
470470
github.com/libp2p/go-libp2p-core v0.2.4/go.mod h1:STh4fdfa5vDYr0/SzYYeqnt+E6KfEV5VxfIrm0bcI0g=

docs/experimental-features.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -663,3 +663,7 @@ ipfs config --json Experimental.GatewayOverLibp2p true
663663
- [ ] Needs UX work for exposing non-recursive "HTTP transport" (NoFetch) over both libp2p and plain TCP (and sharing the configuration)
664664
- [ ] Needs a mechanism for HTTP handler to signal supported features ([IPIP-425](https://github.com/ipfs/specs/pull/425))
665665
- [ ] Needs an option for Kubo to detect peers that have it enabled and prefer HTTP transport before falling back to bitswap (and use CAR if peer supports dag-scope=entity from [IPIP-402](https://github.com/ipfs/specs/pull/402))
666+
667+
## Accelerated DHT Client
668+
669+
This feature now lives at [`Routing.AcceleratedDHTClient`](https://github.com/ipfs/kubo/blob/master/docs/config.md#routingaccelerateddhtclient).

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ require (
4747
github.com/jbenet/goprocess v0.1.4
4848
github.com/julienschmidt/httprouter v1.3.0
4949
github.com/libp2p/go-doh-resolver v0.4.0
50-
github.com/libp2p/go-libp2p v0.32.0
50+
github.com/libp2p/go-libp2p v0.32.1
5151
github.com/libp2p/go-libp2p-http v0.5.0
5252
github.com/libp2p/go-libp2p-kad-dht v0.24.4
5353
github.com/libp2p/go-libp2p-kbucket v0.6.3

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -519,8 +519,8 @@ github.com/libp2p/go-flow-metrics v0.0.1/go.mod h1:Iv1GH0sG8DtYN3SVJ2eG221wMiNpZ
519519
github.com/libp2p/go-flow-metrics v0.0.3/go.mod h1:HeoSNUrOJVK1jEpDqVEiUOIXqhbnS27omG0uWU5slZs=
520520
github.com/libp2p/go-flow-metrics v0.1.0 h1:0iPhMI8PskQwzh57jB9WxIuIOQ0r+15PChFGkx3Q3WM=
521521
github.com/libp2p/go-flow-metrics v0.1.0/go.mod h1:4Xi8MX8wj5aWNDAZttg6UPmc0ZrnFNsMtpsYUClFtro=
522-
github.com/libp2p/go-libp2p v0.32.0 h1:86I4B7nBUPIyTgw3+5Ibq6K7DdKRCuZw8URCfPc1hQM=
523-
github.com/libp2p/go-libp2p v0.32.0/go.mod h1:hXXC3kXPlBZ1eu8Q2hptGrMB4mZ3048JUoS4EKaHW5c=
522+
github.com/libp2p/go-libp2p v0.32.1 h1:wy1J4kZIZxOaej6NveTWCZmHiJ/kY7GoAqXgqNCnPps=
523+
github.com/libp2p/go-libp2p v0.32.1/go.mod h1:hXXC3kXPlBZ1eu8Q2hptGrMB4mZ3048JUoS4EKaHW5c=
524524
github.com/libp2p/go-libp2p-asn-util v0.3.0 h1:gMDcMyYiZKkocGXDQ5nsUQyquC9+H+iLEQHwOCZ7s8s=
525525
github.com/libp2p/go-libp2p-asn-util v0.3.0/go.mod h1:B1mcOrKUE35Xq/ASTmQ4tN3LNzVVaMNmq2NACuqyB9w=
526526
github.com/libp2p/go-libp2p-core v0.2.4/go.mod h1:STh4fdfa5vDYr0/SzYYeqnt+E6KfEV5VxfIrm0bcI0g=

test/cli/dht_legacy_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ func TestLegacyDHT(t *testing.T) {
131131
node.WriteBytes("foo", []byte("foo"))
132132
res := node.RunIPFS("dht", "put", "/ipns/"+node.PeerID().String(), "foo")
133133
assert.Equal(t, 1, res.ExitCode())
134-
assert.Contains(t, res.Stderr.String(), "this action must be run in online mode")
134+
assert.Contains(t, res.Stderr.String(), "can't put while offline: pass `--allow-offline` to override")
135135
})
136136
})
137137
}

test/cli/routing_dht_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ func testRoutingDHT(t *testing.T, enablePubsub bool) {
111111
node.WriteBytes("foo", []byte("foo"))
112112
res := node.RunIPFS("routing", "put", "/ipns/"+node.PeerID().String(), "foo")
113113
assert.Equal(t, 1, res.ExitCode())
114-
assert.Contains(t, res.Stderr.String(), "this action must be run in online mode")
114+
assert.Contains(t, res.Stderr.String(), "can't put while offline: pass `--allow-offline` to override")
115115
})
116116
})
117117
})

0 commit comments

Comments
 (0)