nginx/ngx-rust

Current Project State

thekief opened this issue · 4 comments

I would like to consider Rust for nginx module developement but I would need some more information about the project's current state. In April 2023 1 the readme has been changed to include the line:

This project is still a work in progress and not production ready.

Since then, quite a few things have changed in the code and I was wondering, if the assessment is still correct, or if it has changed.

Footnotes

  1. https://github.com/nginxinc/ngx-rust/blame/85570e2e57eb6f3f171469eda1d3d94716d20ab2/README.md#L8

@bavshin-f5 sorry to ping you, but I was wondering, if you, as the top contributor, could give some insight here.

We've been evaluating using Rust for future projects, and I can agree with this assessment. A lot of functionality I needed was missing, lacked a safe interface or could be optimized. Nothing that prevents writing the modules, but the experience with the SDK could be much better.
As a result, we intend to invest more time in the project and address the most important shortcomings within the next few months. And since the process wasn't visible from the outside, I'll start with publishing the tasks and drafting a roadmap for the next couple of releases.

Thank you for confirming my assessment. In this context, I was wondering, if there is a general roadmap regarding Rust and its introduction to nginx.

My biggest question in this regard is, if you will take an approach similar to Linux, making Rust support optional, planning deeper integrations, or maybe even making nginx itself more modular. Regarding the latter, I could imagine having drop-in replacements for some components could make it easier to cater one's needs.

@bavshin-f5 I was wondering, if you could give an update regarding timeline. I've seen that you added some issues for feature tracking and did quite some stuff.

Is there perhaps a specific date you want to have, e.g., the stream support finished?