-
Notifications
You must be signed in to change notification settings - Fork 7
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
feat(rust-libp2p): add v0.52
release blog-post
#84
feat(rust-libp2p): add v0.52
release blog-post
#84
Conversation
Co-authored-by: Max Inden <[email protected]>
Co-authored-by: Max Inden <[email protected]>
A big thanks to all people that contributed to this release. | ||
In alphabetical order: | ||
|
||
- [@AgeManning](https://github.com/AgeManning) | ||
- [@arpankapoor](https://github.com/arpankapoor) | ||
- [@b0xtch](https://github.com/b0xtch) | ||
- [@b-zee](https://github.com/b-zee) | ||
- [@creativcoder](https://github.com/creativcoder) | ||
- [@dariusc93](https://github.com/dariusc93) | ||
- [@dgarus](https://github.com/dgarus) | ||
- [@DougAnderson444](https://github.com/DougAnderson444) | ||
- [@drHuangMHT](https://github.com/drHuangMHT) | ||
- [@elenaf9](https://github.com/elenaf9) | ||
- [@felinira](https://github.com/felinira) | ||
- [@galargh](https://github.com/galargh) | ||
- [@hanabi1224](https://github.com/hanabi1224) | ||
- [@helloimalemur](https://github.com/helloimalemur) | ||
- [@jsantell](https://github.com/jsantell) | ||
- [@kckeiks](https://github.com/kckeiks) | ||
- [@leviathanbeak](https://github.com/leviathanbeak) | ||
- [@linoscope](https://github.com/linoscope) | ||
- [@melekes](https://github.com/melekes) | ||
- [@nathanielc](https://github.com/nathanielc) | ||
- [@obi1kenobi](https://github.com/obi1kenobi) | ||
- [@oblique](https://github.com/oblique) | ||
- [@ozkanonur](https://github.com/ozkanonur) | ||
- [@ozwaldorf](https://github.com/ozwaldorf) | ||
- [@PopBogdan97](https://github.com/PopBogdan97) | ||
- [@shamil-gadelshin](https://github.com/shamil-gadelshin) | ||
- [@StemCll](https://github.com/StemCll) | ||
- [@stonecharioteer](https://github.com/stonecharioteer) | ||
- [@stormshield-pj50](https://github.com/stormshield-pj50) | ||
- [@tcoratger](https://github.com/tcoratger) | ||
- [@tthebst](https://github.com/tthebst) | ||
- [@umgefahren](https://github.com/umgefahren) | ||
- [@uwejan](https://github.com/uwejan) | ||
- [@vnermolaev](https://github.com/vnermolaev) | ||
- [@wizeguyy](https://github.com/wizeguyy) | ||
- [@yellowred](https://github.com/yellowred) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This excludes maintainers on purpose.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good to go from my end. Including the QUIC hole punching feature sounds good to me.
Thank you @thomaseizinger for the funny informative read!
I'd like to push back against this. I don't think publishing a blog post for releases makes a lot of sense. It's unfortunate that I'm now the guy advocating for letting the work spent on this PR to go to waste. I wish this proposal would have been raised and discussed before investing time into actually writing a blog post. First of all, having rust-libp2p post release notes effectively requires other language implementations to do the same. This is additional work that would be better spent on engineering. Publishing blog post would be the 3rd place where we post what is effectively release notes:
We've been trying to make releases low-overhead, and writing blog posts about every release seems to achieve the opposite of this. It also creates a lot of noise if we do this for every language. Having people subscribe to GitHub notifications for new releases seems to be the strictly better way to achieve the goal of informing users about new releases (you can subscribe to notifications for the one implementation you care about). This doesn't preclude us from writing blog posts about new exciting features we roll out (and mentioning the release in which it was rolled). That's what we should do! It makes a lot more sense to be focus on the new feature, and why we think that feature is a value-add for libp2p users, instead of burying it in a copy-paste of release notes. Example for this: We should have a blog post highlighting the metrics that go-libp2p now offers. This is a better way to present the information than having a section about that in a hypothetic "What's new in go-libp2p v0.28" blog post. |
It was raised and discussed with @dhuseby and @mxinden.
Why? I disagree. The I see the different implementations as separate communities that all work together because we follow the same spec. Just because one team wants to write release blogposts doesn't mean the others have to follow suit. How would that even work for community-developed implementations or ones sponsored by other companies?
It is not. I'd rather post a blogpost to a newsletter like This-Week-In-Rust and not the link to a GitHub release. Plus, I don't know how well search-indexed they are but I'd guess that a static webpage is easier to find than GitHub's releases and thus drives more traffic.
Which one is "better" seems to be only a matter of taste here. For practical reasons, it makes sense to batch breaking changes together which means that one release is likely to contain several features that are worth talking about. Writing a post about each one of them would create a lot of noise. For example, I enjoy skimming and reading through the bevy release blogposts: https://bevyengine.org/news/bevy-0-10/ Our cadence of breaking releases is about 3 months. That is hardly worth mentioning both in terms of effort and "noise" on the blog. |
If you feel strongly @marten-seemann, I'll just post these as our release notes on the GitHub release. I still believe that a blogpost would give better visibility but it is ultimately not worth the friction of discussing it if we have an alternative. |
I don't think it's as easy as this, at least for PL-maintained implementations. Otherwise, readers will ask "why is rust-libp2p releasing and js-libp2p / go-libp2p aren't?". We should have a minimum amount of consistency here.
go-libp2p has released every other month, and we just decided to release more frequently, because releases are not expensive. Publishing blog posts would drive up the cost.
Searching for "libp2p smart dialing" already links to the go-libp2p release page in the 2nd search result (the first is the issue with the same name). I don't understand why github.com would be penalized by Google's search algorithm. This will be hard to argue one side or the other though, given that we don't have insight into Google's algorithm.
Having a blog post that explains a cool new feature that we put a lot of thought in and that we think drastically improves performance / user experience of a libp2p stack is the opposite of noise.
I didn't say we shouldn't post about rust-libp2p. Quite the opposite. The only disagreement is the format of these posts ("release vX.Y.Z") vs. "cool new libp2p feature". |
I was explicitly talking about releases with breaking changes (which would get one of these posts). We've made multiple patch releases per week before that. |
Replaced with release notes. |
@thomaseizinger 's original plan was to do a video walkthrough of the changes in 0.52.0 1st slack thread
video + blog was also mentioned here 2nd slack thread However, I still think we should publish this after editorializing a bit. This post is about the culmination of work in rust-libp2p since February, there are many big things to highlight but maybe not each one can stand on it's own leg as a longer post. I'm thinking of doing the same thing for js-libp2p #83 either as a standalone blog or a part of #81 So would folks be open with reopening this PR, changing the blog title to something more generic i.e. "Big QoL changes in the latest rust-libp2p" or "rust-libp2p in the 1st half of 2023", editorializing it a bit, and posting? I am in favor of this Another thought - perhaps it's worth pulling in the content in 0.51.0 i.e. around the NetworkBehavior changes, i.e what motivated them and technical details Footnotes
|
My 2p on this is:
|
Related: libp2p/blog#84. Pull-Request: #4095. Co-Authored-By: Thomas Eizinger <[email protected]>
Yeah I ended up not having the time for it and we wanted to get the release out.
This post is now within the GitHub release notes which also has been posted to This-Week-In-Rust. I don't think we need to post it separately. |
Is this per language or in general?
I've accustomed to the idea what we should just write more exhaustive release notes so I think focussing on a particular feature or technical design per blogpost is good. |
Starting with the
v0.52
release, I'd like us to write short-ish blog-posts walking through some of the new features / changes of releases, especially ones with breaking changes.Breaking changes are always annoying but I hope that explaining why we made them convinces more of ours users to upgrade. I also see such a post as a source of new traffic to our repository, which might drive contributions, plus it gives us a place to thank external contributors!
TODO
Resolves #82.