[RFC|Accepted] Symfony 2

Note: We are moving the topics of this forum and it will be deleted at some point

Publish your own request for comments/change or patches for the next version of phpBB. Discuss the contributions and proposals of others. Upcoming releases are 3.2/Rhea and 3.3.
Post Reply
igorw
Registered User
Posts: 500
Joined: Thu Jan 04, 2007 11:47 pm

Re: [RFC] Symfony 2

Post by igorw »

I hope you are not worried about disk space. Besides, Symfony is small. 3MB on disk, 600KB compressed. phpBB3 is 11MB on disk. But unless it takes up hundreds of MB it's a non-issue anyway.
Michaelo
Registered User
Posts: 106
Joined: Thu Apr 01, 2004 7:56 am
Location: Dublin

Re: [RFC] Symfony 2

Post by Michaelo »

I am looking forward to the future and in particular the potential plug-in aspect the move affords...
Some time ago I investigated the possibility of using one of the available frameworks, even before I realised phpBB4 was going in that direction...
To be completely honest, symfony would definitely not have been my first or second choice...

Nevertheless, as I only code for phpBB, whatever framework is decided on... is fine with me... I will just have to learn it...
Mike
Mods: Forum Icons Enhancement, Kiss Portal Engine
Links:
Kiss Portal Engine (dev site) Stargate Portal (archive site) ...
Styles: Technika
ToonArmy
Registered User
Posts: 335
Joined: Fri Mar 26, 2004 7:31 pm
Location: Bristol, UK
Contact:

Re: [RFC] Symfony 2

Post by ToonArmy »

Michaelo wrote:To be completely honest, symfony would definitely not have been my first or second choice...
Out of interest, what would have been your first or second choices then?
Chris SmithBlogXMOOhlohArea51WikiNo support via PM/IM
Image
Michaelo
Registered User
Posts: 106
Joined: Thu Apr 01, 2004 7:56 am
Location: Dublin

Re: [RFC] Symfony 2

Post by Michaelo »

My initial choices were primarily based on first impressions, and as I indicated earlier, were not influenced by phpBB4 development as it had not started...

I originally opted for CodeIgniter as reports were very favourable and sample code was available.
My second choice was Prado, again favourable reports and a good selection of demos, not to mention it was the most complete...

In light of phpBB4, I will go through the process again, this time I will allow for all the extras and take into account the decision to use Symfony as the phpBB4 development framework...

My new short list includes: Prado, Symfony, Akelos, Seagull, ZooP and Yii...
Irrespective of which framework is selected for phpBB4 development, I will add at least one from the list above to act as a teaching tool.
I approaching the age where learning is not quite as easy as it use to be.... best make up my mind fast... time is running out ;)

I have not included CodeIgniter on this occasion as it is missing several of the necessary supports sections including Ajax, Auth Module and Modules...
Mike
Mods: Forum Icons Enhancement, Kiss Portal Engine
Links:
Kiss Portal Engine (dev site) Stargate Portal (archive site) ...
Styles: Technika
astropirate
Registered User
Posts: 1
Joined: Mon Jul 12, 2010 10:50 pm

Re: [RFC] Symfony 2

Post by astropirate »

Hello all!
I am a long time phpBB user but have just recently taken an interest in it's development. I am very exited that phpBB will be using symfony2. I have one concern though:
As far as I know most people that use phpBB run it on shared hosting (please correct me if I'm wrong) as VPS and dedicated solutions are far too expensive for the average Joe. My concern is that symfony is not secure on shared hosting because it's cache folder being world-writable. I stumbled upon this when looking for a solution to correctly install symfony on my shared hosting: http://trac.symfony-project.org/wiki/Sh ... gNotSecure. Would this cause any issues regarding the security of phpBB4 or it's portability? It might be nothing but I thought I should bring to light.

Astro
User avatar
EXreaction
Registered User
Posts: 1555
Joined: Sat Sep 10, 2005 2:15 am

Re: [RFC] Symfony 2

Post by EXreaction »

It does not need to be world writable. How secure it is depends on how your host has set the webserver and base file permissions up.
ToonArmy
Registered User
Posts: 335
Joined: Fri Mar 26, 2004 7:31 pm
Location: Bristol, UK
Contact:

Re: [RFC] Symfony 2

Post by ToonArmy »

This advice applies to phpBB3 as well. If another customer on the same server can edit your site then that's always going to be bad.
Chris SmithBlogXMOOhlohArea51WikiNo support via PM/IM
Image
R45
Registered User
Posts: 236
Joined: Tue Nov 27, 2001 10:42 pm

Re: [RFC] Symfony 2

Post by R45 »

I don't have experience with Symfony, but I am completely for a move towards using an existing framework. It would not only be more efficient (from a development standpoint), but also better leverage of the biggest benefit of Open Source. Use of a framework can reduce phpBB development lead time and allow for rapid development of the core code base. phpBB is after all supposed to be a message board application NOT a PHP framework, which it has elements of being. Contrary to some other opinions, I see a framework as a way to improve MOD Author efficiency once the learning curve has been overcome.

Packaging issues are the most minor of them all. Security should be paramount for whatever frameworks and libraries are going to be incorporated. I am completely for the reuse of code and libraries, with the caveat that security remains a top priority.
Nelsaidi
Registered User
Posts: 122
Joined: Tue Nov 11, 2008 5:44 pm

Re: [RFC] Symfony 2

Post by Nelsaidi »

How simple would it be for your average admin to make custom simple modifications based on their needs?
hartym
Registered User
Posts: 1
Joined: Mon Jul 26, 2010 5:08 pm

Re: [RFC] Symfony 2

Post by hartym »

Hello there

First of all, I'm very happy of the interest phpbb community is giving to Symfony2.

It's my first post here, so I'll give you some info about me so that my post can be taken in the context of who I am. I'm a php & python developper, and currently managing a french PHP development team, very near symfony's heart (telling this because I want you to know I'm not really objective). I briefly contributed to symfony 1, and been developping many plugins there. On the other hand, I've used PhpBB a while ago (4years+) on different small forums I had to build, I thinkit was PhpBB 2.x. I was at symfony live 2010 both editions (febuary in paris and online conf a few weeks ago). I was also a speaker at symfony live 2009.

For both phpbb and symfony1 i have pros, because they helped me solve problems. But that's not the interesting part. I also have cons for both.

At the time I used phpBB, it was a great forum engine (understand, the only one which still stand up after trying all those around). My cons about it would may be the fact that you had to choose the whole package or nothing. No light (only base stuff) versions around. No easy integration into a whole bigger software neither (well, ok, we all did it, but it was in an amateurish PHP-ish way).

Then I used symfony 1 for a bunch of years, not to make forums, but of course I have cons about it also, because I used it a lot. The biggest con I have about sf1 is the context singleton, making the software running very dependent of the hosting php process. Also, symfony was young and errors are part of the path of learning, me thinks.

Also, symfony1 has no great forum solution (François Zaninotto did create sfSimpleForumPlugin, and then the very better Motilee project (http://trac.motilee.com/), but none was neither very complete or production ready). Also, I had to write forums from scratch in a few projects, but nothing really interesting, and mostly closed source.

But Symfony2 is a complete rewrite, of not exactly the same thing. Symfony2 is first of all a framework for building frameworks. Strange ? In fact it's not.

The components layer (http://github.com/symfony/symfony/tree/ ... omponents/) brings all the bricks needed to build web applications. Useless by themselves, they are all the stuff you can think about when saying "we should not reinvent the wheel". We all wrote kind of these components many times, and those are the result of long and repeted tries, errors, and re-thinking. Even more important, there is a very low/loose coupling between those. I can very well use only the finder or yaml component in my own non-symfony application (and in fact, did it a lot of times).

The framework layer (http://github.com/symfony/symfony/tree/ ... Framework/) then brings one way (not the only one) to glue all those components together.

This framework layer defines what a "bundle" is (guess there's a mac user that influenced terminology ...), so of thoses two layers, you can add "bundles". May it be builtin ones (http://github.com/symfony/symfony/tree/ ... ny/Bundle/), generic bundles (for example those listed at http://symfony2bundles.org/bundle, a community initiative website), or your application parts, they're all considered the same level. And each application can chose list and order of which to use. Of course, it's the end-application that chose which bundle to include, and we can take for truth that "default is none".

One interesting thing to note is that you can even use the Zend framework components, using the ZendBundle (http://github.com/symfony/symfony/tree/ ... endBundle/). This was a bit of pain to do with symfony1 (well not much, but a bit), and it's now completely integrated to the framework. I say this because Zend is full of interesting components symfony will not have, mostly by design philosophy. And Zend's webservices components are great, so let's be complementary.

Maybe that was also the main reason why I think phpbb can be complementary with Symfony2. Open source, let's build together, not each against each other, all this stuff ... (tout ça, tout ça ...)

Ok that was my 2cents about what symfony2 is.

Now why am I so much interested in a phpbb version built with symfony2 ? Maybe because of the cons I said at first. As of now (I mean phpbb3/symfony1/zend1), I cannot integrate cleanly a phpbb in a zend/symfony project (ok i did it, but not so clean). And after a bit of hack, I'm disappointed because each actors there works with their implementations (again, I did it, but not very satisfied). Remember OO principles "program to an interface, not to an implementation". I cannot tell phpbb "hey dude, use MyAwesomeSymfonyUserManagement as your AccountProvider service". Or I cannot say "Hey symfony, use phpbb auth as your AccountProvider service". Etc.

Symfony2, and the awesomeness of its Dependency Injection Container (a complex term for a very simple concept), make it very easy to do, and without any subsystem coupling.

Another example would be the admin interface. How damn would you be mixing phpbb and symfony (or another framework, no importance there) without this bundle system ? And without the user noticing any difference ? IMHO, not possible without duplicating templates. And if you're regarding about the URLs to, it's nearly impossible. Having a, let's say MyProjectBundle with some "admin" controllers and routes, and a PhpBB(Admin)Bundle with some default routes make it possible to override default routes in your project to serve phpbb's admin in a more-than-perfectly-integrated way.

Why then is it interesting for PhpBB ? Well, to me it's pretty obvious. It can take advantage of the components brick without really being coupled to anything. Even without symfony2, it's pretty easy to make a phpbb base library (completely unaware of wymfony2, maybe only using some components) and providing a free PhpBBBundle that only adapts (as in adapter, cf http://en.wikipedia.org/wiki/Adapter_pattern , or cf Gang of Four definition) the phpbb front interface to the Symfony2's HttpKernel interface. Or even better, providing controllers with a simple usage that yet will be adaptatorized (yeah, this one is mine) or use same interface than symfony2 controllers.

Another very interesting point for phpbb is that since symfony switched to git, and github, for source control management, the barrier of submitting patches and improvements have lowered a lot. Just fork the code and ask fabien for a pull, the sf2 development is very open. But I'm pretty sure a lot is already there without needing any contribution.

A last word for those who are complaining about the lack of symfony2 documentation, there is already a lot available on http://symfony-reloaded.org/learn , and more to come as we get closer to the release.


Last word, I hope my message was constructive, I don't want any troll-esque discussion to come up there. Keep up the good work on phpbb, and symfony or not, it's a great forum engine.


Romain Dorgueil - http://dakrazy.net/
Post Reply