Open Etiene opened 5 years ago
Sailor has been abandoned for almost two years now because I didn't have time
What a pity : I've just discovered it, and it's great !
Helping is something I can do (for bugfixes or small enhancements), but I don't have enough skills to take over.
I am still revieweing pull requests :)
I just put the word out. Hopefully someone will step up!
Hi, I just came across it and I think its really cool. I would love to maintain it. Will need some guidelines though. Thank you.
Sailor has been almost abandoned for almost two years now because I didn't have time and I had to move on to other projects due to MSc and work. There were some people offering help, but in the end nothing happened. Anyone else would like to take over? Happy to mentor and offer some guidelines of next milestones
Thanks @Immortalin for announcing this!
@jayluxferro please send me an email at dalcol@etiene.net and lets chat and I can guide you through the project :)
I sent an email to @jayluxferro, but realized why not post some of my considerations in public too:
Important questions to have in mind:
And here are some of my thoughts about some of these questions and the current state of the project:
1 - In my experience with the project so far, there were a few mistakes made in how many webservers it supports. A lot of people contributed with compatibility with different servers and then never maintained it, leaving bugs for me and @felipedaragon to fix, making it very hard for us to keep. Also, at the time, apache had lua support through an extension called mod_lua that was included at the apache installation, and the whole library for using sailor with other servers made abstractions considering compatibility with what was defined by this extension. Nowadays, this extension is no longer maintained or included by default in apache installations, making it very cumbersome to use it. In the meantime, Lua on nginx has progressed wonderfully with Openresty. In my opinion, this whole part should be redesigned thinking of nginx as the default and having just one other pure lua web server for local dev environment. This brings sailor, however, very close to lapis (http://leafo.net/lapis/). And makes me think if it's even worth considering pursuing Sailor. What do you think about this?
2 - Another past mistake is how closely connected some of the sailor inner libraries are. Ideally, everything should be like valua and easily usable on its own. These libraries should be part of sailor as an "extension" or "plugin", whatever it's called. I think creating a feature that allows this would greatly improve the framework and its maintenance.
I have some other thoughts considering the use of lua at frontend development, but I think this has less priority as long as Sailor is good at returning JSON, so I'm not gonna dwelve into this part yet.
Looking forward to hearing your thoughts!
Hi Etiene!
About the questions above:
"Are there other Lua web frameworks with the same proposition as Sailor? Is it worth keeping Sailor maintenance or is it better to contribute to another project?"
I dont know about others MVC like Lua frameworks out there but will be great to keep Sailor and push forward. I agree that the default server should be nginx and limit the servers it supports (may be looking forward to containarization), even if it is too close to Lapis for sharing the Openresyiness, the most important difference is that Lapis is Moonscript oriented and the language hasnt received updates recently and Lua is improving constantly. I've been experimenting with the two frameworks and sometimes Lapis feels like Flask in the sense that I feel more confortable writing APIs in it and Sailor is like an all-terrain framework.
Is Sailor the best proposition for web development in the Lua world today? How did the web development in other languages evolve?
Sailor is/was the more friendly for web development in the Lua ecosystem. I never managed to deploy it to Heroku, but Alwaysdata gives full support and dont know about any other Lua web framework that can be so easily hosted.
"What are new technologies for using Lua on web? How can Sailor leverage those?"
I think there´s more focus on "Lua on the front-end". Fengari is super interesting and easy to make things with it, also it integrates very well with Hyperapp, I 've made an example here. Maybe providing Sailor with a Lua modern front-end framework (components, state management, etc) will boost more its coolness. I dont know if it is ok to continue to include Starlight, it was pretty awesome but seems that it is no longer maintained.
The modularization of the point number 2 may be the next step needed for adding new features. I've tried to implement hot-swapping in the controller but I failed cause the inner libs are very connected.
It would be nice to maintain Sailor, and contribute to the Lua community in this way besides making strange noises with computers :) I'll need to know the guidelines and maybe discuss about making a Roadmap.
I guess then the best decision is, if anyone has time to tackle the modularization (which is the only thing that can open new doors for the future of sailor), then the project should keep going, otherwise it should be archived. Anyone can tackle this?
I'm kinda new-ish and just now starting to dig into the code
Sailor has been almost abandoned for almost two years now because I didn't have time and I had to move on to other projects due to MSc and work. There were some people offering help, but in the end nothing happened. Anyone else would like to take over? Happy to mentor and offer some guidelines of next milestones