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

produce new docs + crates.io releases regularly #283

Closed
bryandmc opened this issue Feb 25, 2021 · 10 comments
Closed

produce new docs + crates.io releases regularly #283

bryandmc opened this issue Feb 25, 2021 · 10 comments

Comments

@bryandmc
Copy link
Collaborator

We should consider a mechanism to release Glommio more frequently.. Maybe this exists and I am just unaware, but I am updating the readme because I noticed something out of date and realized that the only version on crates.io is kinda old, or at least older than what is living in master right now. Obviously it'll become more important later to be more careful with releases (post 1.0) but right now we can probably release more frequently.

So maybe we should create a system to do the releases or at least host the docs somewhere. Does this already exist?

Thoughts?

@glommer
Copy link
Collaborator

glommer commented Feb 25, 2021

releasing while iou and uring-sys are git-based is an enormous manual pain in the ass process.
We use git for those because they depend on patches to liburing that are not on released versions (although they are. merged upstream).

Axboe has been promising me a new release for months now, and I know he's busy so this is kind of just slipping, which is why I keep delaying our update as well (although it's way past due).

This is starting to get on my nerves as well, because even if Axboe is to release today, there is no guarantee that uring-sys and iou would release right after so God knows how long this will take.

I am open to suggestions, but one thing we can do is just move the code for uring-sys and iou semi-permantly inside glommio. This would give us a bit more freedom to release, and if we're disciplined enough to always upstream patches first this is probably okay

@sehz
Copy link

sehz commented Feb 25, 2021

What about creating separate org for glommio with iou. Since Axboe doesn't seems to have time, the new org can maintain both repo and attract more developers?

@bryandmc
Copy link
Collaborator Author

well Axboe would be involved in the underlying liburing, but your point about iou being forked and maintained by us is plausible and interesting..

Yeah this is all pretty complex and I see a number of different paths. I guess we have to determine if we think uring-sys/iou will ever start being maintained again, or not. If not, it might be a good idea to just fork it or see if he'll hand it over to us. @withoutboats was going to give the library he created (ringbahn i think?) to whoever wanted to maintain it. So maybe same goes for iou.

@glommer
Copy link
Collaborator

glommer commented Feb 25, 2021

@sehz Axboe maintains liburing, the C library. He's extremely active, and liburing gets a lot of developments and patches.
It's the releasing that has been slow. However that is not a big problem: if we controlled uring-sys, we could apply patches manually.

iou and uring-sys are indeed maintained by @withoutboats and are rust projects. He's been resistant in the past to merge liburing patches that are not in a release and I don't blame him.

Axboe promised me on twitter that he'd release last week. Let's give him some more time and see what happens

@sehz
Copy link

sehz commented Feb 25, 2021

There are now multiple implementations of io_uring. Any opinions on https://github.com/tokio-rs/io-uring which doesn't seems to have explicit dependencies to Tokio yet.

@glommer
Copy link
Collaborator

glommer commented Feb 25, 2021

io_uring is a very fast moving target in the kernel. And liburing is maintained by the same person who maintains the kernel. In that sense I view using liburing as a good thing, not something I want to avoid.

We should think about what to do with iou and uring-sys. Forking is always a last resort, but if we were to fork those the problem is gone: we wouldn't need to wait for liburing official releases, as we could always backport patches of interest.

@glommer
Copy link
Collaborator

glommer commented Mar 2, 2021

My proposed temporary solution is for us to internalize those crates temporarily

#285

Please review if possible

glommer pushed a commit that referenced this issue Mar 3, 2021
What does this PR do?

Internalizes uring-sys and iou, hopefully in a temporary manner, until all the code we need makes into their crates release

Motivation

Those crates are moving too slowly, and blocking our progress in a significant manner

Related issues
#283
#243
@glommer
Copy link
Collaborator

glommer commented Mar 3, 2021

I just merged iou and uring-sys into glommio. We can release now.

I'd be slightly more comfortable with a released version of liburing, and Axboe and I are chatting on twitter about this - it should come really soon. I'll cut right after.

@glommer
Copy link
Collaborator

glommer commented Mar 5, 2021

Please consider reviewing the following:

#291

I am cutting a release Sunday night (EST). If there is anything else you'd like to see in this release, let me know

@glommer
Copy link
Collaborator

glommer commented Mar 8, 2021

This is now done

@glommer glommer closed this as completed Mar 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants