Remi's RPM repository - Blog

  

Blog | Forum | Repository | Wizard

jeudi 23 mars 2017

Away from github

For some years, the package development tracking for my repository was managed on a github repository: https://github.com/remicollet/remirepo.

This was, of course, for easiness.

Contrary to fashion of using this gratis, but not really free, service, I chose to self-host my work on the dedicated server already used for my repository, my blog and the forum.

All the sources of packages, tools and web sites will be progressively moved to the git.remirepo.net server, and can be browsed on  https://git.remirepo.net/cgit.

Github repository will stay open, only used for issues and other requests, but patch proposal should be send by email (preferably using  git format-patch so I can apply them using git am).

I will also consider moving from cgit to pagure, as soon as possible.

Partir de github

Depuis quelques années, le développement des paquets pour mon dépôt était géré dans un depôt github : https://github.com/remicollet/remirepo.

C'était évidement une solution de facilité.

Au contraire de la mode actuelle d'utiliser ce service gratuit, mais pas vraiment libre, j'ai décidé d'auto-héberger mon travail sur le serveur dédié utilisé pour mon dépôt, mon blog et le forum.

L'ensemble des sources des paquets, des outils et des sites seront donc progressivement déplacés vers le serveur git.remirepo.net, est sont consultables sur https://git.remirepo.net/cgit.

Le dépôt github restera ouvert uniquement pour les rapports de bug ou demande diverses, mais les proposition de correctifs devront être transmises par messagerie (en utilisant de préférence git format-patch afin que je puisse les appliquer avec git am).

J'envisage aussi de remplacer, dès que possible, cgit par pagure.

mercredi 1 mars 2017

ZipArchive with encryption

Point of the situation with the development of zip extension version 1.14.0 which implements support of encrypted archives.

Lire la suite...

ZipArchive avec chiffrement

Un petit point d'avancement du développement de l'extension zip version 1.14.0 qui intègre désormais le support des archives chiffrées.

Lire la suite...

samedi 11 juin 2016

PHP 7.1 and number check

PHP 7.1 introduce a new check during conversion of string to number.

Lire la suite...

PHP 7.1 et contrôle des nombres

PHP 7.1 introduit un nouveau contrôle lors de la conversion d'une chaine en nombre.

Lire la suite...

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...

- page 1 de 2