更新:actix-web已经找到了接手维护者。
新的维护者看上去是一个比较靠谱的开发者,看到他也参与bastion这个项目,该项目旨在用Rust实现一个类Erlang VM(BEAM)的东东。感觉actix-web交给他还是比较妥当的。
也值得庆幸的是,Nikolay终于想通了,虽然他不再继续维护,但至少心情不会再郁闷了。
这是ripgrep的作者Andrew Gallant写的这篇文章,分享了他十几年参与开源项目的看法和经验,值得一读 ,里面包含了如何处理开源中遇到的各种负面情绪,如果有朝一日你也做了开源项目,这些经验也许能帮助你。Free and Open Source Software (FOSS)。
关于此次事件的补充:
真的,不用给PTSD洗地了。
这次确实UB了,但不是因为UB的问题作者才暴走。作者开始是merge过PR,后来他们觉得还有问题,然后继续提了个补丁。但是这次作者觉得这个补丁太没有创意,就没有merge。然后说了句:“这个补丁太无聊。”,然后他就去思考这个issues的更好的解决办法。
但是这帮人去Reddit发了个贴,声讨他那一句“这个补丁太无聊。”,还有人攻击他,“你还是别写Rust了”。这还不是PTSD?
作为作者,思考更好的解决问题方法,总得有时间和空间吧?需要发到Reddit进行攻击吗?人谁还没个冲动的时候?issues删掉肯定是他的问题,但我们应该给予足够的宽容,不回头看看他做了多少努力和付出?他在2018年6月份就已经和unsafe做斗争了,这一年半的时间也是深受那些PTSD的困扰,这次估计是没忍住。我唯一关心的是他为什么要换成UnsafeCell,他没有解释,但可以猜到,他认为那个只是内部调用了两次不会有大问题。既然发生了UB,估计他也没有搞清楚为什么,需要时间消化找到更好的方案。以此来推断他的人品,或者下定论,贴标签,都是不合适的。我本来做actix是因为有趣,想去创造,想要尝试Rust的潜能极限。
但现在我为什么这么不开心呢,生活本该不必如此。
再见了,各位。
————总结自 Actix 作者Nikolay Kim(又名 fafhrd91 )的文章
想要正确看待这件事,你首先需要理解Actix作者的初衷。(本文结尾也附上了那篇文章的翻译。)
前因后果
自从Actix问世以来,挺受欢迎,毕竟,Rust的Web框架不是很多。
在性能上屡屡霸榜 techempower 的性能测试榜单。
也不知道从何时起,Actix中使用Unsafe的情况被大家挖掘了出来。
最开始是Nikolay做出了积极的改变