News

1.0.4 is out, lot of bugfix.
published 6 years ago

After 1.0 branch forked from the master branch, the first job before going on the development has been to rewrite the tests using phpunit. I can say it really made a difference with the 1.0 test suite. Lot of little (and bigger) bugs were spotted and fixed, these corrections has also been applied in the 1.0 branch: the version 1.0.5 is out. There are also a couple of non addressed bugs like the ones found in the binary converter ( here and here...


Talks at PHPForum and Symfony Live Paris 2012
published 6 years ago

Hi, thanks to all who followed and participated to my talks about Postgresql and Pomm. There was a nice interest into Pomm and its philosophy so I tried to emphase in what Pomm was different than the classical dbal / orm usual approach. The slides for both presentations are online, here is the french Tirer parti de Postgresql en PHP avec Pomm held at the Php Forum. Here is the english What can Postgresql do for you at the sf live. By the...


Pomm 1.0.3 is out and development branch forked to 1.1
published 6 years ago

The last revisions of Pomm 1.0.x did fix some serious limitations about the field content size in arrays or entities. It sounds Pomm can now handle content up to the maximum default size allowed by postgresql in a faster way. The 1.0 branch will now continue its life, only bugs and security issues will be fixed on this branch. This ensures the documentation to be up to date and you to be able to easily migrate from one minor to another without facing...


Pomm 1.0.2 is out
published 6 years ago

I am happy to announce Pomm 1.0.2 release today. This release fixes several bugs, one of them regarding the PgEntity converter. Upgrading is highly recommended. ...


2 talks about Postgres and Pomm in June 2012
published 6 years ago

I am really happy to announce I am going to talk about Postgresql during the Symfony live 2012 in Paris . While this conference will be mostly about how to take advantage of Pg features in web development I will finish it with presenting Pomm. This talk will be in English and the sf live is planned on 7-8th of June. In case you would be more interested into Pomm, I will also participate to the PHP forum in Paris . Even thought the conference is...


PommGuard: New extension for Silex.
published 6 years ago

I am happy to release a new service provider for the Silex µ-framework . PommGuardServiceProvider is an authentication and authorization manager that provides simple mechanisms to protect your controllers using the new route middlewares feature users, groups and credentials out of the box simple solution One of the greatest strength of that system is extensibility . Using Postgres inheritance, you can easily extend given...


Important bugfix: 1.0.1 is out
published 6 years ago

In order to fix an important bug in the base map class generation, the 1.0.1 is available sooner as expected. The bug was arrays were generated to incorrect types that ware not handled by any converter. Unfortunately the map generator was the only part missing in the test suite. More sad is the fact that the 1.0.0 version was released with this bug. Another point, there is a new little feature in the PgEntity converter: the _extra field. This...


Pomm 1.0.0 is out !
published 6 years ago

For this special occasion, this shiny new website showed up, great thanks to twitter guys and their bootstrap project, it is really aweswome. As stated in the previous blog article, Postgresql is a superb relational database system that can let you deal with your data as objects. With that in mind, I started to play with objects and arrays but the converter system quickly showed limitations. The heart of Pomm has been recoded and now, it can...


The final cut
published 6 years ago

I thought Pomm was ready to go for stable release but I has a feeling maybe something was missing. I was wrong, there was too much. As I stated in this blog article , Postgresql can manage your tables as objects : This syntax is so powerful it makes use of ORMs almost useless with Postgresql as you can shape you queries to retrieve related objects directly. To benefit from this, I introduce the virtual fields feature in the latest commit...


RC4 and tutorial availability.
published 6 years ago

I am really happy to announce Pomm's 4th release candidate version. A lot of work has been done since RC3 including lot of bug fixed and an transparent new filter chain for queries. This nice feature makes developers able to add code before and / or after each SQL query is sent to the database. The LoggerFilter is the first filter available but you can of course create yours. Another important news is there is now an online tutorial which...


Views are now supported
published 6 years ago

Hi ! Well, there is not much more to say about this, views are considered by Pomm as normal tables so unless you specified rules on your views, you can expect your write attempts to fail on such objects. The Inspector has also been extended so now it is possible to display stored procedures source code if available. Here is a little PHP script you can use on the command line to display the code. It can be usefull to put the version of the...


RC3 is out !
published 6 years ago

Happy new year faithful reader ! This release comes from some good developers had a look at Pomm's principles and design. The most important change concerns entity classes: They are now fully structure agnostic. They do not know what are the fields stored in the database nor what is their primary key as it is the Map 's job to do so. Direct access to attributes triggers accessor overloads if they exist. The get() accessor now accepts array...


RC2 is out !
published 7 years ago

Lot of good things happened this week. The first good news is the Model files are now in a namespace containing both database name and schema name to ovoid collision on objects stored in different databases but same schema (public). The way the model files are generated is now completely free, no more mandatory Model\Pomm\Entities . It is your decision to store the model files in a strategic place. The second good news is the bytea postgresql...


The lost age of innocence.
published 7 years ago

Pomm has been under development for a while. It was aimed at being simple, fast, lightweight and efficient. I must say I am pretty happy of what it has become over time and I was very exited when I did implement the filter feature because it made Pomm able to simulate relations between objects. This was also the starting point of a the research for a way to keep consistency between fetched objects from the database. A dumb implementation meant...


Major bugfix and code examples.
published 7 years ago

An important bug concerning the model files generation has been fixed. Pomm uses the schema name as namespace for the model files but Public is a PHP protected word. The public schema namespace will now be PublicSchema . There is now an example section in the documentation all good ideas are welcome. ...


Beta4, intervals and pagination.
published 7 years ago

I am happy to announce the 4th beta release of the Pomm non ORM. It brings to Pomm really nice features: Collection filters make you able to get foreign object from SQL joins. a Pager class for convenient pagination. Intervals and UUID types are now supported. MySQL incompatibility due to the unsupported INSERT ... RETURNING * More to come soon ! ...


Pomm reported to work with MySQL !
published 7 years ago

I must say, I am impressed. Some people reported they have been able to use Pomm with Mysql just by changing the way the DSN was handled by PDO in the Connection class. Of course the database introspection does not work, but they used Postgres to generate their model files and just change the DSN to get it to work with MySQL. All basic types like string, int, timestamp seem to work, I have no information yet on float and boolean and I have no...


PommServiceProvider available.
published 7 years ago

The Silex µFramework has evolved. A distinction has been made between extensions that register services and extensions that contain controllers. You can now use the PommServiceProvider with the latest version of this nice, fast and efficient framework. See the README for details on the new way to register the provider. Cheers !...


Pomm got rid of fetch_all
published 7 years ago

This point was bugging me for too long. Collections used to be built with hydrated objects using a fetch_all. This caused very high memory consumption and low performances. It has been replaced using a PDO scrolling iterator. New collection system now hydrates objects on demand from the PDO statement. I did quick benchmarks on my small laptop with 100k records. It takes less than 2 minutes to hydrate and display everything with the old and new system...


beta3 is out !
published 7 years ago

The third beta version has been released. Fixes where mainly concerning the DSN. I have been working in several projects using Pomm recently and I was pleased to see the time saved by using Postgresql's features and model automatic generation. I would like to hear your feedback, drop me an email ! ...