<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="/arnaud/blog/templates/default/atom.css" type="text/css" ?>

<feed 
   xmlns="http://www.w3.org/2005/Atom"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/">
    <link href="http://www.limbourg.com/arnaud/blog/feeds/atom10.xml" rel="self" title="Arnaud" type="application/atom+xml" />
    <link href="http://www.limbourg.com/arnaud/blog/"                        rel="alternate"    title="Arnaud" type="text/html" />
    <link href="http://www.limbourg.com/arnaud/blog/rss.php?version=2.0"     rel="alternate"    title="Arnaud" type="application/rss+xml" />
    <title type="html">Arnaud</title>
    <subtitle type="html"></subtitle>
    
    <id>http://www.limbourg.com/arnaud/blog/</id>
    <updated>2009-07-21T11:48:57Z</updated>
    <generator uri="http://www.s9y.org/" version="1.5.1">Serendipity 1.5.1 - http://www.s9y.org/</generator>
    <dc:language>fr</dc:language>

    <entry>
        <link href="http://www.limbourg.com/arnaud/blog/archives/2009/07/17/Mercurial-Subversion-et-hgsubversion" rel="alternate" title="Mercurial Subversion et hgsubversion" />
        <author>
            <name>Arnaud Limbourg</name>
                    </author>
    
        <published>2009-07-17T08:55:00Z</published>
        <updated>2009-07-21T11:48:57Z</updated>
        <wfw:comment>http://www.limbourg.com/arnaud/blog/wfwcomment.php?cid=221</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.limbourg.com/arnaud/blog/rss.php?version=atom1.0&amp;type=comments&amp;cid=221</wfw:commentRss>
    
            <category scheme="http://www.limbourg.com/arnaud/blog/categories/11" label="Dev" term="Dev" />
            <category scheme="http://www.limbourg.com/arnaud/blog/categories/7" label="PHP" term="PHP" />
    
        <id>http://www.limbourg.com/arnaud/blog/archives/2009/07/17/221</id>
        <title type="html">Mercurial Subversion et hgsubversion</title>
        <content type="xhtml" xml:base="http://www.limbourg.com/arnaud/blog/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                J'ai voulu recemment utiliser mercurial sur un dépôt subversion. Le support de subversion par mercurial n'est, au moment où j'écris, pas au niveau de ce qu'offre par exemple git-svn. L'espoir est cependant incarné par [hgsubversion][hgsub], une extension mercurial permettant d'utiliser mercurial comme client subversion.

Selon son auteur l'extension n'est pas prête à être utilisé en production mais que cela ne vous arrête pas à l'essayer. Il faut toutefois noter une grosse limitation, si le dépôt nécessite une authentification il faut enter trois fois de suite son login et mot de passe, ce qui rend l'utilisation embêtante. Cela devrait être bientôt corrigé.

MaJ 21 juillet: un récent commit sur le dépôt active le schema url suivant "svn+http(s)", vos données de login subversion sont maintenant utilisées. Editer le fichier .hg/hgrc pour mettre à jour le chemin vers le dépôt.

L'installation sur OS X est très simple une fois que l'on a cherché en vain :) :

  - installer python avec [macports][] la version fournie avec 10.5 a des "bindings" trop vieux
  - installer subversion via macports
  - installer les bindings python-subversion via macports
  - installer mercurial depuis le source, étape très importante, il ne faut pas utiliser le paquet binaire car il utilise le python de 10.5, celui qui a les bindings trop anciens

En partant du principe que vous avez [macports][macports] installé et fonctionnel, les étapes sont les suivantes:

    sudo port install python26
    sudo port install subversion
    sudo port install subversion-python26bindings
    wget http://mercurial.selenic.com/release/mercurial-1.3.tar.gz
    tar xvzf mercurial-1.3.tar.gz &&amp; cd mercurial-1.3
    sudo make install
    cd ..
    hg clone http://bitbucket.org/durin42/hgsubversion/
    vi ~/.hgrc


Mettre le contenu suivant:

    [extensions]
    rebase=
    svn=/chemin/vers/clone/hgsubversion/hgsubversion

Vous pouvez maintenant cloner un dépôt subversion:

    hg clone http://svn.repos

Pour le reste je vous renvoie vers la [page wiki][hgsubwiki].

[hgsub]: http://www.bitbucket.org/durin42/hgsubversion/
[macports]: http://www.macports.org/
[hgsubwiki]: http://mercurial.selenic.com/wiki/HgSubversion 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.limbourg.com/arnaud/blog/archives/2009/02/04/Generation-de-PDF-en-PHP-avec-haru" rel="alternate" title="Génération de PDF en PHP avec haru" />
        <author>
            <name>Arnaud Limbourg</name>
                    </author>
    
        <published>2009-02-04T12:50:26Z</published>
        <updated>2009-02-04T13:03:43Z</updated>
        <wfw:comment>http://www.limbourg.com/arnaud/blog/wfwcomment.php?cid=220</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.limbourg.com/arnaud/blog/rss.php?version=atom1.0&amp;type=comments&amp;cid=220</wfw:commentRss>
    
            <category scheme="http://www.limbourg.com/arnaud/blog/categories/7" label="PHP" term="PHP" />
    
        <id>http://www.limbourg.com/arnaud/blog/archives/2009/02/04/220</id>
        <title type="html">Génération de PDF en PHP avec haru</title>
        <content type="xhtml" xml:base="http://www.limbourg.com/arnaud/blog/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                La génération de PDF est l'une choses à laquelle nous avons souvent à faire en développement web. Il existe de nombreuses solutions, l'une des dernière en date est libharu dont l'extension [pecl/haru][haru] nous permet d'exploiter la puissance.

libharu est une librairie écrite en C, disponible sur de nombreuses plate-formes ayants des ponts vers plusieurs langages (python, ruby, C#, etc.). Le travail est manuel et le code assez verbeux. Le point d'origine est en bas à gauche et non en haut à gauche comme nous en avons l'habitude. Il s'agit surtout d'une gymnastique à laquelle il faut se familiariser.

[haru]: http://pecl.php.net/haru <br /><a href="http://www.limbourg.com/arnaud/blog/archives/2009/02/04/Generation-de-PDF-en-PHP-avec-haru#extended">Continuer à lire "Génération de PDF en PHP avec haru"</a>
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.limbourg.com/arnaud/blog/archives/2008/11/12/Gestion-des-dates-en-PHP-5.3" rel="alternate" title="Gestion des dates en PHP 5.3" />
        <author>
            <name>Arnaud Limbourg</name>
                    </author>
    
        <published>2008-11-12T13:23:19Z</published>
        <updated>2008-11-12T13:23:19Z</updated>
        <wfw:comment>http://www.limbourg.com/arnaud/blog/wfwcomment.php?cid=219</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.limbourg.com/arnaud/blog/rss.php?version=atom1.0&amp;type=comments&amp;cid=219</wfw:commentRss>
    
            <category scheme="http://www.limbourg.com/arnaud/blog/categories/7" label="PHP" term="PHP" />
    
        <id>http://www.limbourg.com/arnaud/blog/archives/2008/11/12/219</id>
        <title type="html">Gestion des dates en PHP 5.3</title>
        <content type="xhtml" xml:base="http://www.limbourg.com/arnaud/blog/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                La version 5.3 de [PHP][php] apporte son lot de nouveautés dont une méthode bien utile pour la gestion des dates: *date_add*. Comme le nom l'indique elle permet d'ajouter un interval de temps à une date, il devient possible d'ecrire:

    date_default_timezone_set('Europe/Paris');
    $date = new DateTime('2008-11-12 00:00:00');
    // Ajoutons 3 jours 2 heures 54 minutes et 23 secondes 
    date_add($date, new DateInterval("P3DT2H54M23S"));
    echo $date->format("d-m-Y H:i:s"), "\n";
    => 15-11-2008 02:54:23

La notation est certes étrange mais tous ceux ayant eu à manipuler des dates seront ravis de cet ajout. Plus d'informations dans la [documentation][doc].

[php]: http://www.php.net
[doc]: http://fr.php.net/manual/en/function.date-add.php 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.limbourg.com/arnaud/blog/archives/2008/11/06/Forum-PHP-2008" rel="alternate" title="Forum PHP 2008" />
        <author>
            <name>Arnaud Limbourg</name>
                    </author>
    
        <published>2008-11-06T08:15:18Z</published>
        <updated>2008-11-11T01:00:48Z</updated>
        <wfw:comment>http://www.limbourg.com/arnaud/blog/wfwcomment.php?cid=218</wfw:comment>
    
        <slash:comments>4</slash:comments>
        <wfw:commentRss>http://www.limbourg.com/arnaud/blog/rss.php?version=atom1.0&amp;type=comments&amp;cid=218</wfw:commentRss>
    
            <category scheme="http://www.limbourg.com/arnaud/blog/categories/3" label="Conferences" term="Conferences" />
            <category scheme="http://www.limbourg.com/arnaud/blog/categories/7" label="PHP" term="PHP" />
    
        <id>http://www.limbourg.com/arnaud/blog/archives/2008/11/06/218</id>
        <title type="html">Forum PHP 2008</title>
        <content type="xhtml" xml:base="http://www.limbourg.com/arnaud/blog/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Le [Forum PHP][forum] aura lieu dans un tout petit plus d'un mois, les 8 et 9 décembre prochains. L'édition 2008 adopte un format différent des années précédentes et capitalise sur l'année dernière.

Cette année deux pistes se déroulent en même temps, cela veut dire qu'il faut choisir la session à laquelle assister. Nous avons fait tout notre possible pour rendre le choix plus simple en évitant les conférences s'adressant au même public en même temps.

Le programme mêle les retours d'expériences (20minutes.fr, BNP, rue89.com, ...), les sujets plus techniques (Oracle 11G et PHP, montée en charge chez Mozilla, atelier sur la sécurité: "Hackez-moi ca!", les performances coté client, maitriser javascript, ...) et des sujets plus larges (La communauté PHP et son devenir, les machines dans nos sociétés humaines). Le [programme complet][sessions] est disponible [ici][sessions].

En espérant vous y voir !

<!-- s9ymdb:17 --><a href="http://afup.org/forumphp"><img class="serendipity_image_left" width="319" height="95" style="float: left; border: 0px; padding-left: 5px; padding-right: 5px;" src="http://www.limbourg.com/arnaud/blog/uploads/forumafup_2008.png" alt="" /></a>
J'y serais, et vous ?

[forum]: http://afup.org/forumphp
[sessions]: http://afup.org/pages/forumphp2008/sessions.php 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.limbourg.com/arnaud/blog/archives/2008/07/02/Lightroom-photos-supprimees-du-catalogue-mais-pas-du-disque" rel="alternate" title="Lightroom - photos supprimées du catalogue mais pas du disque" />
        <author>
            <name>Arnaud Limbourg</name>
                    </author>
    
        <published>2008-07-02T21:05:00Z</published>
        <updated>2008-07-03T13:02:12Z</updated>
        <wfw:comment>http://www.limbourg.com/arnaud/blog/wfwcomment.php?cid=217</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.limbourg.com/arnaud/blog/rss.php?version=atom1.0&amp;type=comments&amp;cid=217</wfw:commentRss>
    
            <category scheme="http://www.limbourg.com/arnaud/blog/categories/9" label="Outils" term="Outils" />
    
        <id>http://www.limbourg.com/arnaud/blog/archives/2008/07/02/217</id>
        <title type="html">Lightroom - photos supprimées du catalogue mais pas du disque</title>
        <content type="xhtml" xml:base="http://www.limbourg.com/arnaud/blog/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Lors du traitement de photos avec [Lightroom][lr] l'une des étapes essentielles est de supprimer des photos du catalogue lors du tri. Il arrive que la photo soit retirée du catalogue mais se trouve toujours sur le disque. La place disque ainsi perdue devient non-négligeable.

N'ayant pas trouvé de solution sur la toile j'ai écrit un script [PHP][php] qui parcourt récursivement un répertoire et regarde si les fichiers photos existe dans le catalogue de lightroom.

[lr]: http://www.adobe.com/products/photoshoplightroom/
[php]: http://www.php.net <br /><a href="http://www.limbourg.com/arnaud/blog/archives/2008/07/02/Lightroom-photos-supprimees-du-catalogue-mais-pas-du-disque#extended">Continuer à lire "Lightroom - photos supprimées du catalogue mais pas du disque"</a>
            </div>
        </content>
        
    </entry>

</feed>