The end of Silex
What about Silex in a Symfony 4 world? During the last few months, and as an exercise when working on Flex, I have migrated several applications from Silex to Symfony 4. And the conclusion is that Symfony 4 feels like using Silex.
Using Symfony 4 and Flex feels as lightweight as using Silex. You have full control about what features you want to enable or disable. The directory structure of both kinds of applications is similar with limited depth. And Symfony 4 is superior when it comes to the ecosystem. Whenever you need something, odds are that a bundle already exists for it. And for major ones, a recipe makes integration a breeze. And that's a great selling point of Symfony 4: it scales from very simple applications that just need a router and classes for HTTP messages to a monolith including bells and whistles.
Moving away from Silex is also made simpler as Symfony 4 almost auto-configure all your services. So, migration from Pimple is mostly about removing all the code without any replacements in the Symfony config.
For all these reasons, I would say that Silex is not needed anymore. So, we've decided to not support Symfony 4 in Silex, or at least not add the new features added in 3.4. The current stable version of Silex is still maintained for bugs and security issues. But its end of life is set to June 2018.
Having a unified community around Symfony 4 and Flex is great news and one implicit goals of all the work we have done during the last few years around DX experience.
Help the Symfony project!
As with any Open-Source project, contributing code or documentation is the most common way to help, but we also have a wide range of sponsoring opportunities.
Comments are closed.
To ensure that comments stay relevant, they are closed for old posts.
As Symfony 4 and Flex feels as lightweight, It's time to move with it. Good news.
Could you share with us some tips about how to migrate from Silex to Sf 4 ?
Also, I must ask you to show more respect in your comments. You can say anything you want, but please don't offend others when saying it.
That being said, I've asked many times for help on Silex. Nobody step up. You are using Silex as part of your business. That's great news. But where were you when we needed help? What have you done to make Silex a successful Open-Source project? *You* are irresponsible. You don't understand how Open-Source works.
And we don't abandon the project. We give a way to upgrade to Symfony 4. And we did that because we think that this is the best way forward for people using Silex. Silex is based on Symfony. Call it Silex 3 is you want. The name is not so important.
Anyway, if Silex is a critical piece of software for many businesses like yours, if you think there is value in Silex, there is still the possibility for you and others to take over the project, keep it live. I'm not even asking for a hard fork. I'm willing to transition the project to a new team. I would even be more than happy to help a new team. That would be wonderful. Are you in?
I think the numerous users of Silex would have appreciate :
- a clearer and more anticipated planning on end of maintainement; 5.5 months is short indeed for organisations who adopted, learned this tool and developed solutions, products on it; they have not necessarly ressources (in time and financial) to do that in this time, among probable other existing tasks and priorities
- despite a migration to S4 looks simple, it's still not very clear; I have seen this issue created in GitHub https://github.com/symfony/symfony-docs/issues/8678 and a couple of articles on the web. Proposing a visible documentation about it (on http://silex.sensiolabs.org and https://symfony.com/ notably) would probably not let users in confusion. Also, I have seen some questioning on the web concerning migration to S4.
It's annoying that Silex homepage is still unchanged, with the misleading appearance of a still valid solution on which I could start a new project.
@Fabien It's possible I doesn't understand Open Source too, but you answer surprises me a bit. As a *user* of a framework and following his evolution (not from his start however), but not able to participate actively in the development, I discover here with project "internal" things. Was it well-known that Silex needed help ? For a long time ? Should we be more informed and implicated ?
I think gregzuergre doesn't question you engagement but in this case the responsability of managing the end a solution after it was launching and distributed.
Personnaly, I learned Silex and implemented it in 2 projects in 2017 and you can imagine my astonishment when learning early 2018 Silex's short end.
Anyways, I agree with most of your decisions in this post on Silex's end of life and future with Symfony 4, but the communication, preparation and migration's documentation could be a bit more neat for the users of this framework established for years.
Maybe your last answer could complete the post, as it contains notable precisions.
also I like the fact I'm now have more resources at my disposal and don't have to try to renege a symfony tutorial to fit silex.
I understand the anger of those who are frustrated in this, but I do remember Fabien asking for help to keep Silex moving, so the community can take blame in Silex being pushed to the pasture to rot.
I do see some devs want to keep it alive and I honestly hope they do as Silex is a great framework if you just need some bolts and screws to make a platform without needing a whole toolset that's not needed.
I've move onto to Symfony 4 and not looking back :)
Every product have an end of life and of support. Your car, your sofa, your fridge, your phone, your computer. You can't blame a company to stop manufacturing a product or stop supporting it. It is part of the game. With Open Source Software, this is quite the same but with better issues: on an OSS ends, everyone who wants to continues can. Instead of blaming the team under Silex, what about thanks them for the hours spent gracefully on that project? Plus Silex seems to be the favourite framework of your teams, what about asking to be maintainer?
I want to thank to all who put work into Silex, including Fabien of course. It was fun to work with Silex and even Symfony itself has learned a thing or two from it.
I wonder what would happen, when on April 1st a message is going to be released, that Symfony will end. :-)