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

Road to 0.5 #6776

Closed
17 of 21 tasks
Stebalien opened this issue Dec 3, 2019 · 9 comments · Fixed by #7238
Closed
17 of 21 tasks

Road to 0.5 #6776

Stebalien opened this issue Dec 3, 2019 · 9 comments · Fixed by #7238
Labels
topic/meta Topic meta
Milestone

Comments

@Stebalien
Copy link
Member

Stebalien commented Dec 3, 2019

[Living]

We're working towards a pretty large 0.5.0 go-ipfs release but still have some work remaining.

ETA: April 7th because apparently April 1st +/- a few days is reserved for jokes.

Release blockers

  • Working (small-data) content routing. That is, the DHT should be useful again for finding small data sets.

Landed features

  • Streaming pin ls results.
  • "internal" daemon plugin for perma-unstable plugins with direct access to go-ipfs internals.
  • Updated QUIC transport (backwards incompatible)
    • Updates the underlying QUIC protocol to draft 27. This should be the last breaking change to QUIC before it stabilizes.
    • Updates the handshake protocol to support ed25519 keys.
  • Significantly improved bitswap performance when serving data from high-latency disks.
  • Systemd support
    • Socket activation
    • Example unit files
    • Systemd startup/shutdown notifications
  • Support for .eth links in /ipns/.
  • A new and orders of magnitude faster (than rabin) content based chunker for ipfs add (buzhash).
  • Unix domain socket support for the HTTP API.
  • Identify Push - Libp2p now pushes announcements of address/protocol support changes made at runtime.
  • Significant extensions to the bitswap protocol PoC of Bitswap protocol extensions implementation go-bitswap#189
  • Async datastore writes in badger (2x performance improvements). NEEDS CONFIGURATION.
  • Write coalescing: We previously added support for batching small writes but ran into a significant bug (Write coalescing breaks against buggy secio  libp2p/go-libp2p#644) and had to pull out at the last minute. We have re-enabled this feature.
  • We will now prefer the TLS security transport over SECIO.

Next Up

  • QUIC by default. We've been working towards switching over to QUIC (a UDP-based transport) by default for quite some time. However, we've recently made some significant breaking changes to both the underlying protocol (bringing our implementation in-line with the draft spec) and the way in which we structure our QUIC TLS certificates.
  • Badger based datastore by default. We've been testing out badger for well over a year now and plan on switching over in the near future. However:
    • Badger just released a 2.0 with some significant changes and an incompatible database format.
    • Badger 1.0, in our current configuration, uses a lot of memory.
    • We still haven't thoroughly stress-tested badger.

Todo

@godcong
Copy link
Contributor

godcong commented Dec 18, 2019

https://github.com/dgraph-io/badger 2.0.0 was released a period of time.
I tried to compiled it into 0.5.0.
it works well.
perhaps we can integrate it when 0.5.0 released.

I have seen this plan.

@Stebalien
Copy link
Member Author

Status update from testground on unblocking the release.

@momack2
Copy link
Contributor

momack2 commented Jan 7, 2020

Very glad this list exists - thank you! To help ease the tracking of the remaining burn-down items as we get closer to launch - can you add owners to each of the remaining todos and create or link tracking issues (with scope of required tests) for each of the "test with testground" items?

@bonedaddy
Copy link
Contributor

Status update from testground on unblocking the release.

Is there any more information about timeline? While this is great and all, it mentions nothing about timeline for v0.5.0. Is it one month? Two months? Or 6 months.

@Stebalien
Copy link
Member Author

The ETA is end of march +/- a week.

@lordcirth
Copy link

The build process hasn't changed, right? Hoping to submit 0.5 to nixpkgs when it releases.

@Stebalien
Copy link
Member Author

The build process is still make build. There shouldn't be any significant changes since 0.4.23.

Thanks!

@RubenKelevra
Copy link
Contributor

I resurrected the aur-package from the death (last update was 2017), have fun:

https://aur.archlinux.org/packages/go-ipfs-git/

@Stebalien
Copy link
Member Author

Switching over to a proper release issue: #7109

@Stebalien Stebalien unpinned this issue Apr 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic/meta Topic meta
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants