07
Oct 2013

Migrating to Mouf 2-beta 3 / Splash 4.2

Mouf 2 is getting near the stable release.

In the latest release, a few things have changed that might break your old application, so here is a very simple migration guide.

First of all, the ROOT_URL constant is no more declared in config.php. Instead, if you are using Splash, it will be automatically created for you. When migrating, to Splash 4.2 and Mouf 2-beta 3, you will have an error

Read more...
20
Aug 2013

New in Mouf: a patch management system

Another great week for Mouf! We now have support for patches (and especially database patches).

So far, dealing with database schema changes in multiple environments involved writing an SQL file and applying it to every database in use. Of course, you had to do this manually, and it was error-prone.

Here comes Mouf's patcher. This patch system

Read more...
09
Aug 2013

New in Mouf: a rendering system

This has been a big week for Mouf. Amongst the many packages that have been added this week, I'm proud to announce a brand new "html.renderer". This is a package (PHP 5.4+) that allow you to easily make your objects renderable in HTML.

The rendering system allows you to overload templates provided by package developers. It is a simple, yet powerful sy

Read more...
18
Jul 2013

Why not annotating your database schema ?

Annotation are now widely used among a lot of languages and development frameworks.

At the begining, annotatations where used as standards for describing the code, and parsed by most IDEs in order to provide autocompletion:

Read more...
28
Jun 2013

Mouf is getting traits injection support

Mouf 2 final release is approaching. Today, Mouf is getting support for injection in properties or setters defined in traits (that have been added in PHP 5.4).

Adding support for traits was less straightforward that initially thought (due to a strange behaviour of the Reflection API), but we hopefully found a workaround. You can now use a trait in your class

Read more...
26
Jun 2013

Diving into the strange world of PHP Reflection API

Being a Mouf developer, I have been quite heavily relying on the PHP Reflection API, and so far, I must say things were quite ok.

PHP provides a nice API to access your code structure through ReflectionClass, ReflectionMethod, ReflectionProperty, etc...

Recently, I started adding support for traits in Mouf. This means that I need to do some reflection on traits. In particular, I need to answer this question:

Read more...
14
Jun 2013

New in Mouf 2: improved validators

Mouf has had self-check validators for quite a long time now. And for quite a long time, it was possible to extend those validators in your packages.

It was possible, but not complely easy, as you add to write several conf files to set them up.

This time is over! Now, you can write your own validators in a breeze, just by extending one interface.

Read more...
14
Jun 2013

What's new in Mouf2

In this article, I will add every day what's new in the upcoming Mouf 2.0 release!

This article will be regularly updated as we add new features to Mouf 2.0

Major changes

  • The Mouf packaging system has been completely deprecated and replaced by Composer, that will very certainly become the new de-facto packaging standard.

Minor changes

    Read more...
    14
    Jun 2013

    Announcing Mouf 1.0 - Mouf's first stable release

    Hi guys! I'm really thrilled to announce the first stable release of Mouf: v1.0. We have been working on Mouf for several years now, and achieving the 1.0 milestone has been our main objective for 3 years. In 3 years, Mouf has gone from a pet project to a complete eco-system, entirely based on graphical dependency injection. Using Mouf, we have managed to

    Read more...
    14
    Jun 2013

    Mouf at the PHP Forum Paris

    J'ai eu la chance de pouvoir faire une présentation de Mouf lors d'un lightning talk au PHP Forum à l'AFUP. Un grand merci à tous les participants qui auront dû se concentrer pour suivre cette très rapide présentation et n'hésitez pas à venir me voir si vous souhaitez une démo. Les slides de la présentation sont téléchargeable ci-dessous ou consultables en ligne:

    Read more...