Remi's RPM repository - Blog

  

Blog | Forum | Repository | Wizard

lundi 9 novembre 2015

Tests de performance de PHPUnit et couverture de code

Comme il a déjà été dit de nombreuses fois, PHP 7 est plus rapide que PHP 5.

Depuis PHPUnit 4.8 vous pouvez choisir entre  XDebug et phpdbg comme pilote pour récupérer les données de couverture du code, voir PHPUnit 4.8: Code Coverage Support.

Voici quelques résultats de tests de performance.

Lire la suite...

PHPUnit code coverage benchmark

As already said numerous time, PHP 7 is faster than PHP 5.

Since PHPUnit 4.8 you can choose between XDebug and phpdbg as driver to retrieve code coverage data, see PHPUnit 4.8: Code Coverage Support.

Here is some benchmark results.

Lire la suite...

mercredi 9 septembre 2015

Accès aux fichiers Windows en PHP depuis Linux

Voici quelques information sur l'extension libsmbclient-php que je viens de découvrir.

Lire la suite...

Windows files access from Linux in PHP

I just discover the libsmbclient-php project, here some information.

Lire la suite...

mardi 30 juin 2015

PHP SIG - Autoloader

The Fedora PHP SIG (Special Interest Group) is back / working.

Here is a quick presentation about how to handle PHP autoloader in packaging.

 

Lire la suite...

mardi 12 août 2014

Koschei: continuous integration of PHP stack in Fedora

Continuous Integration is a common concern of all developers.

Most of projects  use some tool, like Travis (available on github.com). PHP have its own tests suite. This allow to check that each modification of the source code doesn't introduce any regression.

This seems enough for a project, but for the whole PHP stack, we need to:

  • check that any dependency update doesn't break other projects using it
  • check that a PHP update doesn't introduce any regression in other projects, as soon as a Release Candidate is released (PHP versions available in travis/github are often a bit outdated)
  • check that packaging related change doesn't break anything

The Koschei project is an answer to those needs, by supervising updates in rawhide (development branch of Fedora) and launching scratch build of all dependent packages.

As a lot of tools, libraries and framework are available in Fedora repository, they have been added so they are now monitored, especially:

  • PHP (only version 5.6 for now)
  • PHPUnit and its dependencies
  • Symfony
  • Doctrine
  • Horde
  • etc

Instance URL : http://koschei.cloud.fedoraproject.org/

This new tool should have allowed us to detect sooner recent regressions introduced in PHP version 5.4.29 and 5.5.13. So I plan to import next  Release Candidate as soon as possible, so we can take benefit of this supervision.

For example, we just detect a new FTBFS in symfony test suite after the update of PHPUnit 4.2.0 (it was a packaging issue, and is already fixed).

Of course, it means we need to have a test suite for each project, and to run it during the package build, but this is, for a long time, part of the good practices.

We'll see how this tool behave, but I think it really brings an important improvement for continuous integration of the whole PHP stack.

This is also, and mostly, a tool for which results should give benefits to each project, proving the usefulness of projects collaboration (upstream / downstream), and giving even more interest, for each project, to be available in a downstream distribution, such as Fedora.

Koschei : intégration continue de la pile PHP dans Fedora

L'intégration Continue est une préoccupation naturelle de tous les développeurs.

La plupart des projets utilisent des outils comme Travis (disponible sous github.com). PHP dispose de sa propre suite de tests. Cela permet de vérifier que les modifications apportées au code source n'apportent pas de régression.

Cela semble suffisant pour un projet, mais pour la "pile PHP" dans sont ensemble, il faut pouvoir :

  • vérifier que la mise à jour d'une dépendance ne casse pas les projets l'utilisant
  • vérifier que la mise à jour de PHP n'entraine pas de régression dans les projets, dès les Release Candidate (les versions de PHP disponibles dans travis/github sont souvent en retard)
  • vérifier que les modifications liés au packaging ne cassent rien

Le projet Koschei permet de répondre à ces besoins en supervisant les mises à jour dans rawhide (la branche développement de Fedora) et en déclenchant une construction à blanc de tous les paquets dépendants.

Comme de nombreux outils et bibliothèques sont disponibles dans Fedora, nous les avons ajoutés pour qu'ils soient surveillés, en particulier :

  • PHP (uniquement la version 5.6 pour l'instant)
  • PHPUnit et toutes ses dépendances
  • Symfony
  • Doctrine
  • Horde
  • etc

Adresse de l'instance : http://koschei.cloud.fedoraproject.org/

Ce nouvel outil aurait pu nous permettre de détecter au plus tôt les régressions introduites dans PHP version 5.4.29 et 5.5.13. Je prévois donc d'importer les prochaines Release Candidate au plus tôt afin de bénéficier de l'outil.

Par exemple, il vient de permettre de détecter un FTBFS de symfony suite à la mise à jour de PHPUnit 4.2.0 (il s'agissait d'un problème spécifique au paquet et déjà corrigé).

Évidement, il est donc nécessaire de disposer de suite de test pour chaque projet et de les exécuter lors de la construction des paquets, mais cela fait, depuis longtemps, partie des bonnes pratiques.

Nous verrons à l'avenir comment l'outil se comporte, mais je pense qu'il apporte un vrai progrès pour l'intégration continue de l'ensemble de la pile PHP.

Il s'agit aussi et surtout d'un outil dont les résultats doivent bénéficier à chaque projet, prouvant l'utilité de la collaboration inter-projets (upstream / downstream), et donnant encore plus d'intérêt, pour chaque projet, à être intégré dans une distribution comme Fedora.

samedi 5 octobre 2013

Software Collections Introduction

During the Open Source Developers' Conference 2013 (Open World Forum 2013) event, I give a talk Introduction aux Software Collections.

Lire la suite...

Introduction aux Software Collections

Dans le cadre l'Open Source Developers' Conference 2013 (Open World Forum 2013), j'ai pu présenter une conférence Introduction aux Software Collections.

Lire la suite...

dimanche 25 août 2013

JSON support in PHP

For a few days, there is some FUD messages relaying erroneous information about the drop of JSON support from  PHP 5.5.

So, It seems important to try to make this clearer.

Lire la suite...

samedi 24 août 2013

Support de JSON dans PHP

Une compagne de FUD relaie depuis quelques jours une information erronée sur la suppression du support de JSON dans PHP 5.5.

Il me semble donc important d'essayer de clarifier les choses.

Lire la suite...

dimanche 15 avril 2012

Pending reviews

I have some reviews which are waiting for approval before being available for all fedora / EL users in the official repository.

Lire la suite...

mercredi 28 mars 2012

Fedora experimental repository

I often work on new features to prepare some update, make some tests, etc.

I have decided to make this RPM available, only for fedora 16 and 17 x86_64, which I use as main operating system.

Lire la suite...

Dêpôt expérimental Fedora

Je travaille souvent sur des fonctionnalités afin de préparer des mises à jour, réaliser des tests, etc.

J'ai donc décidé de mettre ces RPM à votre disposition, uniquement pour fedora 16 et 17 x86_64, que j'utilise comme système principal.

Lire la suite...

samedi 17 décembre 2011

PHP 5.4 Development Server

PHP now provides a minimal web server for development purpose which allow to run, quickly, an application.

Lire la suite...

PHP 5.4 serveur de développement

Désormais, PHP fournit un petit serveur web de développement permettant de faire fonctionner rapidement une application.

Lire la suite...

lundi 5 décembre 2011

GLPI 0.83 : les groupes

La prochaine version 0.83 de GLPI est actuellement en période de béta-test.

Gros plan sur une des évolutions de cette version.

Lire la suite...

dimanche 26 juin 2011

Twitter from command line

Some time ago, I wrote a small script to Twitter from command line. As the basic authentication have been deprecated, I decide to write a new version.

Lire la suite...

Twitter en ligne de commande

Il y a quelque temps, j'avais proposer un petit script pour Twitter en ligne de commande. Avec la disparition de l'authentification simple, je me suis attelé à écrire une nouvelle version.

Lire la suite...

jeudi 29 avril 2010

Statistiques de téléchargement

Un compteur dans le menu de droite permet désormais de connaitre le nombre de RPM télécharger depuis le dépôt remi.

Ce compteur est actualisé quotidiennement.

Lire la suite...

- page 2 de 3 -