Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.14.0 #1090

Closed
21 of 27 tasks
Stebalien opened this issue May 5, 2021 · 5 comments
Closed
21 of 27 tasks

Release v0.14.0 #1090

Stebalien opened this issue May 5, 2021 · 5 comments
Assignees
Labels

Comments

@Stebalien
Copy link
Member

Stebalien commented May 5, 2021

🗺 What's left for release

None

🔦 Highlights

We're happy to announce go-libp2p 0.14.0. This release introduces a few long awaited features, fixes a few bugs, and includes progress towards NAT hole punching.

Custom DNS Resolvers

You can now pass a custom DNS resolver through the MultiaddrResolver option. This can be used to add support for DoH, custom TLDs (e.g., .eth), etc.

TCP Simultaneous Open

Adds initial support for TCP Simultaneous Open. If two peers open a TCP connection to each other at the same time using the same set of ports, they'll end up with a single TCP connection. Previously, go-libp2p would treat this as an error and disconnect. Now the connection succeeds. In the next libp2p release, this will be used to enable hole-punching for NAT traversal.

Improved Stream Multiplexer (Yamux) Performance

Yamux now uses variable sized receive windows to improve performance on high-latency, high-bandwidth connections.

Optimized Noise Read Throughput

The Noise security transport now buffers reads, reducing syscalls and significantly improving throughput.

Changelog

Contributors

Contributor Commits Lines ± Files Changed
vyzo 68 +2240/-1089 106
Steven Allen 42 +1433/-1002 96
Marten Seemann 45 +861/-818 79
Aarsh Shah 13 +910/-147 38
Will 1 +848/-17 11
lanzafame 7 +208/-55 10
jstordeur 1 +252/-2 5
Cory Schwartz 7 +134/-81 31
aarshkshah1992 6 +93/-109 8
huoju 4 +127/-41 6
Will Scott 4 +103/-20 11
Hector Sanjuan 2 +95/-0 3
Raúl Kripalani 1 +30/-25 4
requilence 1 +13/-0 1
Nick Cabatoff 1 +7/-2 1
Jakub Sztandera 2 +8/-1 2
Jonathan Rudenberg 1 +6/-2 3
Tom Worrall 1 +4/-2 1
Jorropo 1 +4/-2 1
Ju Huo 1 +2/-2 1
Nex 1 +1/-1 1

✅ Release Checklist

  • Stage 0 - Finishing Touches
    • Go through relevant libp2p repos looking for unreleased changes that should make it into the release. If you find any, cut releases.
    • Run go get -u ./... to see if there are any out-of-date deps that look important. If there are, bubble them. Try to avoid directly updating indirect deps in go-libp2p's go.mod when possible.
    • Make sure local tests are passing.
  • Stage 1 - Upstream Testing
  • Stage 2 - Infrastructure Testing
    • How: Using the testing branches created above, work with the infrastructure team to deploy the new libp2p versions to our infrastructure.
    • A go-ipfs gateway.
      • Deploy
      • Analyze
    • A go-ipfs bootstrapper.
      • Deploy
      • Analyze
  • Stage 3 - Release
    • Tag the release on master.
    • Publish the release through the GitHub UI, adding the release notes. Some users rely on this to receive notifications of new releases.
    • Announce the release on the discuss.libp2p.io.
  • Stage 4 - Update Upstream
@nisdas
Copy link

nisdas commented May 5, 2021

Hey @Stebalien ,

By when do you estimate v0.14.0 will be fully tested and tagged for a release ?

@marten-seemann
Copy link
Contributor

marten-seemann commented May 5, 2021

We’re currently in the process of testing the code on our infrastructure. If everything goes well, we expect to cut the release end of this week / some time next week.

@BigLep BigLep added the status/in-progress In progress label May 6, 2021
@BigLep BigLep pinned this issue May 6, 2021
This was referenced May 6, 2021
@Stebalien
Copy link
Member Author

Re-opening till we finish the checklist.

@Stebalien Stebalien reopened this May 11, 2021
@BigLep BigLep mentioned this issue May 29, 2021
31 tasks
@marten-seemann
Copy link
Contributor

This release happened a long time ago. Closing this issue.

@phanirithvij
Copy link

unpin?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants