Update documentation

This commit is contained in:
Alexis Métaireau 2022-05-06 22:35:42 +02:00
parent 5f3a54450b
commit 3e7beed054
62 changed files with 2041 additions and 1392 deletions

View file

@ -0,0 +1,56 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Accueil, transmission et&nbsp;confiance - Alexis Métaireau</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://blog.notmyidea.org/theme/css/main.css" type="text/css" />
<link href="https://blog.notmyidea.org/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Alexis Métaireau ATOM Feed" />
</head>
<body>
<section id="links">
<li>
<a class="" href="https://blog.notmyidea.org/" id="site-title">Blog</a>
</li>
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section>
<header>
<h1 class="post-title">Accueil, transmission et&nbsp;confiance</h1>
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
</header>
<article>
<p>Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&#8217;en réjouis pour plusieurs raisons&nbsp;:</p>
<ul>
<li>Ma charge de travail devrait baisser de manière considérable et me permettre d&#8217;avancer sur des sujets de fond, pour progressivement changer l&#8217;équilibre dans mon métier&nbsp;;</li>
<li>J&#8217;ai désormais quelqu&#8217;une avec qui échanger sur les problématiques techniques du métier de livreur / commercial&nbsp;;</li>
</ul>
<p>Mais cela me fait aussi peur : cela va nécessairement bousculer l&#8217;équilibre — parfois fragile — en place entre les associés actuels. Même si je vois cette évolution d&#8217;un bon œil, les transitions sont parfois&nbsp;difficiles.</p>
<p>Ça me donne donc envie de construire une relation de confiance, et de donner les moyens à cette nouvelle arrivante de s&#8217;y&nbsp;retrouver.</p>
<h2 id="transmission">Transmission</h2>
<p>Cela me pose donc de nouvelles questions, autour de l&#8217;accueil et de la&nbsp;transmission.</p>
<p>Il me semble que l&#8217;enjeu est de laisser une liberté d&#8217;action progressive pour mettre la personne en confiance, puis de réussir à « lâcher le bébé&nbsp;».</p>
<p>Mais il s&#8217;agit aussi de réussir à juger si la communication est aisée, et de ne pas nécessairement partir du principe que tout sera génial. C&#8217;est une relation de travail, pas une&nbsp;amitié.</p>
<p>De son côté également il doit y avoir des questionnements. Je mets une attention particulière à les accueillir : les questionnement sont bienvenus, voir même&nbsp;attendus.</p>
<p>Le pire pour moi serait d&#8217;avoir quelqu&#8217;un qui à peur de ne pas savoir, et qui dit qu&#8217;elle sait plutôt que de laisser la place pour&nbsp;l&#8217;apprentissage.</p>
<h2 id="faire-confiance">Faire&nbsp;confiance</h2>
<p>Il me semble qu&#8217;il peut exister deux types de confiance&nbsp;:</p>
<ol>
<li>
<p><em>Laisser la possibilité de se tromper</em> : il est possible de faire confiance à l&#8217;autre dans son apprentissage, pour qu&#8217;iel se sente légitime à faire <em>ses</em> choix, ceux qu&#8217;il⋅elle estimera les bons, et qui seront donc les bons — par définition&nbsp;;</p>
</li>
<li>
<p>La <em>confiance relationnelle</em>, de l&#8217;ordre des relations inter-personnelles, de la relation à l&#8217;autre. Parce que c&#8217;est aussi une rencontre, et que je cherche à créer des relations de travail où l&#8217;on peut se dire les choses sans se blesser, en confiance&nbsp;donc.</p>
</li>
</ol>
</article>
</body>
</html>

View file

@ -19,6 +19,10 @@
</header> </header>
<section id="content" class="body"> <section id="content" class="body">
<dl> <dl>
<dt>06 mai 2022</dt>
<dd><a href='https://blog.notmyidea.org/fatigue-relationnelle.html'>Fatigue&nbsp;relationnelle</a></dd>
<dt>01 mai 2022</dt>
<dd><a href='https://blog.notmyidea.org/accueil-transmission-et-confiance.html'>Accueil, transmission et&nbsp;confiance</a></dd>
<dt>11 novembre 2021</dt> <dt>11 novembre 2021</dt>
<dd><a href='https://blog.notmyidea.org/conflit.html'>Conflit</a></dd> <dd><a href='https://blog.notmyidea.org/conflit.html'>Conflit</a></dd>
<dt>01 novembre 2021</dt> <dt>01 novembre 2021</dt>

View file

@ -43,7 +43,7 @@ PATH=.:\$PATH nc -w1 $(echo %h | sed &#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&#39;)
</code></pre></div> </code></pre></div>
<p>On peut donc spécifier des &#8220;sauts&#8221; ssh du&nbsp;style:</p> <p>On peut donc spécifier des &#8220;sauts&#8221; ssh du&nbsp;style:</p>
<div class="highlight"><pre><span></span><code><span class="n">ssh</span> <span class="n">root</span><span class="mf">@91.25.25.25</span><span class="o">+</span><span class="mf">192.168.1.1</span> <div class="highlight"><pre><span></span><code><span class="n">ssh</span><span class="w"> </span><span class="n">root</span><span class="mf">@91.25.25.25</span><span class="o">+</span><span class="mf">192.168.1.1</span><span class="w"></span>
</code></pre></div> </code></pre></div>
<p>Ensuite on peut essayer de&nbsp;rajouter:</p> <p>Ensuite on peut essayer de&nbsp;rajouter:</p>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-03-01T00:00:00+01:00">01 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" id="page-title">Artfevre 2020 - Défi artistique en&nbsp;février</a></h1>
En Février, il y a 29 Jours, et avec un ami on sest dit quon aimerait bien utiliser chacun dentre eux pour créer — de manière intensive et sans jugement — hors de notre zone de confort, et avec...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li> <li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>

View file

@ -53,7 +53,7 @@
<section class="section index"> <section class="section index">
<time datetime="2013-03-10T00:00:00+01:00">10 mars 2013</time> <time datetime="2013-03-10T00:00:00+01:00">10 mars 2013</time>
<h1><a href="https://blog.notmyidea.org/le-revenu-de-base.html" id="page-title">Le revenu de&nbsp;base</a></h1> <h1><a href="https://blog.notmyidea.org/le-revenu-de-base.html" id="page-title">Le revenu de&nbsp;base</a></h1>
Quelques notes prises en visualisant le documentaire “le revenu de base”. 4 Allemands sur 10 travaillent. 3/10 (les enfants et jeunes) 2/10 retraite / rente 1/10 assurance chomage / AS 41% sont le... <iframe width="560" height="315" src="http://www.youtube.com/embed/-cwdVDcm-Z0" frameborder="0" allowfullscreen> Quelques notes prises en visualisant le documentaire “le revenu de base”. 4...
</section> </section>
<section class="section index"> <section class="section index">
<time datetime="2012-12-28T00:00:00+01:00">28 décembre 2012</time> <time datetime="2012-12-28T00:00:00+01:00">28 décembre 2012</time>

View file

@ -53,7 +53,7 @@
<section class="section index"> <section class="section index">
<time datetime="2013-03-10T00:00:00+01:00">10 mars 2013</time> <time datetime="2013-03-10T00:00:00+01:00">10 mars 2013</time>
<h1><a href="https://blog.notmyidea.org/le-revenu-de-base.html" id="page-title">Le revenu de&nbsp;base</a></h1> <h1><a href="https://blog.notmyidea.org/le-revenu-de-base.html" id="page-title">Le revenu de&nbsp;base</a></h1>
Quelques notes prises en visualisant le documentaire “le revenu de base”. 4 Allemands sur 10 travaillent. 3/10 (les enfants et jeunes) 2/10 retraite / rente 1/10 assurance chomage / AS 41% sont le... <iframe width="560" height="315" src="http://www.youtube.com/embed/-cwdVDcm-Z0" frameborder="0" allowfullscreen> Quelques notes prises en visualisant le documentaire “le revenu de base”. 4...
</section> </section>
<section class="section index"> <section class="section index">
<time datetime="2012-12-28T00:00:00+01:00">28 décembre 2012</time> <time datetime="2012-12-28T00:00:00+01:00">28 décembre 2012</time>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1>Réfléxions posts</h1> <h1>Réfléxions posts</h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/roles.html" id="page-title">Rôles</a></h1> <h1><a href="https://blog.notmyidea.org/roles.html" id="page-title">Rôles</a></h1>
Headline : De limportance des rôles informels et de leur partage au sein dun groupe. Un […] dispositif consiste à tenter de faire bouger les rôles (pré)acquis ou qui se fixent dans le groupe,... Headline : De limportance des rôles informels et de leur partage au sein dun groupe. Un […] dispositif consiste à tenter de faire bouger les rôles (pré)acquis ou qui se fixent dans le groupe,...
</section> </section>
<section class="section index">
<time datetime="2014-11-20T00:00:00+01:00">20 novembre 2014</time>
<h1><a href="https://blog.notmyidea.org/le-secret-du-bonheur.html" id="page-title">Le secret du&nbsp;bonheur</a></h1>
Un enfant demande à son père : Dis papa, quel est le secret pour être heureux ? Sans dire un mot, le père demande à son fils de le suivre ; Ils sortent de la maison, le père sur leur vieil âne et...
</section>
<section class="section index">
<time datetime="2014-07-29T00:00:00+02:00">29 juillet 2014</time>
<h1><a href="https://blog.notmyidea.org/quel-metier-quelle-utilite.html" id="page-title">Quel métier, quelle utilité&nbsp;?</a></h1>
Aujourdhui, mon métier est dêtre développeur dapplications. Imaginer des solutions techniques pour faire marcher des logiciels, puis écrire les lignes de code nécessaires. Être Développeur...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/le-secret-du-bonheur.html" rel="bookmark" title="Permalink to Le secret du bonheur">Le secret du&nbsp;bonheur</a></li>
<li><a href="https://blog.notmyidea.org/quel-metier-quelle-utilite.html" rel="bookmark" title="Permalink to Quel métier, quelle utilité ?">Quel métier, quelle utilité&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/retours-sur-deux-ans-a-mozilla.html" rel="bookmark" title="Permalink to Retours sur deux ans à Mozilla">Retours sur deux ans à&nbsp;Mozilla</a></li> <li><a href="https://blog.notmyidea.org/retours-sur-deux-ans-a-mozilla.html" rel="bookmark" title="Permalink to Retours sur deux ans à Mozilla">Retours sur deux ans à&nbsp;Mozilla</a></li>
<li><a href="https://blog.notmyidea.org/des-carnets-desquisse.html" rel="bookmark" title="Permalink to Des carnets desquisse">Des carnets&nbsp;d&#8217;esquisse</a></li> <li><a href="https://blog.notmyidea.org/des-carnets-desquisse.html" rel="bookmark" title="Permalink to Des carnets desquisse">Des carnets&nbsp;d&#8217;esquisse</a></li>
<li><a href="https://blog.notmyidea.org/des-profils-de-confiance-partout-et-pour-tout.html" rel="bookmark" title="Permalink to Des profils de confiance partout et pour tout ?">Des profils de confiance partout et pour tout&nbsp;?</a></li> <li><a href="https://blog.notmyidea.org/des-profils-de-confiance-partout-et-pour-tout.html" rel="bookmark" title="Permalink to Des profils de confiance partout et pour tout ?">Des profils de confiance partout et pour tout&nbsp;?</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1>Réfléxions posts</h1> <h1>Réfléxions posts</h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/roles.html" id="page-title">Rôles</a></h1> <h1><a href="https://blog.notmyidea.org/roles.html" id="page-title">Rôles</a></h1>
Headline : De limportance des rôles informels et de leur partage au sein dun groupe. Un […] dispositif consiste à tenter de faire bouger les rôles (pré)acquis ou qui se fixent dans le groupe,... Headline : De limportance des rôles informels et de leur partage au sein dun groupe. Un […] dispositif consiste à tenter de faire bouger les rôles (pré)acquis ou qui se fixent dans le groupe,...
</section> </section>
<section class="section index">
<time datetime="2014-11-20T00:00:00+01:00">20 novembre 2014</time>
<h1><a href="https://blog.notmyidea.org/le-secret-du-bonheur.html" id="page-title">Le secret du&nbsp;bonheur</a></h1>
Un enfant demande à son père : Dis papa, quel est le secret pour être heureux ? Sans dire un mot, le père demande à son fils de le suivre ; Ils sortent de la maison, le père sur leur vieil âne et...
</section>
<section class="section index">
<time datetime="2014-07-29T00:00:00+02:00">29 juillet 2014</time>
<h1><a href="https://blog.notmyidea.org/quel-metier-quelle-utilite.html" id="page-title">Quel métier, quelle utilité&nbsp;?</a></h1>
Aujourdhui, mon métier est dêtre développeur dapplications. Imaginer des solutions techniques pour faire marcher des logiciels, puis écrire les lignes de code nécessaires. Être Développeur...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/le-secret-du-bonheur.html" rel="bookmark" title="Permalink to Le secret du bonheur">Le secret du&nbsp;bonheur</a></li>
<li><a href="https://blog.notmyidea.org/quel-metier-quelle-utilite.html" rel="bookmark" title="Permalink to Quel métier, quelle utilité ?">Quel métier, quelle utilité&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/retours-sur-deux-ans-a-mozilla.html" rel="bookmark" title="Permalink to Retours sur deux ans à Mozilla">Retours sur deux ans à&nbsp;Mozilla</a></li> <li><a href="https://blog.notmyidea.org/retours-sur-deux-ans-a-mozilla.html" rel="bookmark" title="Permalink to Retours sur deux ans à Mozilla">Retours sur deux ans à&nbsp;Mozilla</a></li>
<li><a href="https://blog.notmyidea.org/des-carnets-desquisse.html" rel="bookmark" title="Permalink to Des carnets desquisse">Des carnets&nbsp;d&#8217;esquisse</a></li> <li><a href="https://blog.notmyidea.org/des-carnets-desquisse.html" rel="bookmark" title="Permalink to Des carnets desquisse">Des carnets&nbsp;d&#8217;esquisse</a></li>
<li><a href="https://blog.notmyidea.org/des-profils-de-confiance-partout-et-pour-tout.html" rel="bookmark" title="Permalink to Des profils de confiance partout et pour tout ?">Des profils de confiance partout et pour tout&nbsp;?</a></li> <li><a href="https://blog.notmyidea.org/des-profils-de-confiance-partout-et-pour-tout.html" rel="bookmark" title="Permalink to Des profils de confiance partout et pour tout ?">Des profils de confiance partout et pour tout&nbsp;?</a></li>

86
category/reflexions3.html Normal file
View file

@ -0,0 +1,86 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Réfléxions - Alexis Métaireau</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://blog.notmyidea.org/theme/css/main.css" type="text/css" />
<link href="https://blog.notmyidea.org/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Alexis Métaireau ATOM Feed" />
</head>
<body>
<section id="links">
<li>
<a class="" href="https://blog.notmyidea.org/" id="site-title">Blog</a>
</li>
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section>
<h1>Réfléxions posts</h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
Jai pensé durant de nombreuses années que je savais gérer le conflit, alors que cétait en fait impensé. Ne pas être en conflit signifie parfois sadapter aux autres, parfois ne pas (assez)...
</section>
<section class="section index">
<time datetime="2021-11-01T00:00:00+01:00">01 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/cooperation-et-travail.html" id="page-title">Coopération et&nbsp;travail</a></h1>
Je parle souvent de coopération, que jimagine comme « un fonctionnement collectif, dans lequel chacun⋅e y trouve son compte ». Or je me rends aujourdhui compte que cette définition mets de côté...
</section>
<section class="section index">
<time datetime="2021-09-13T00:00:00+02:00">13 septembre 2021</time>
<h1><a href="https://blog.notmyidea.org/rentree.html" id="page-title">Rentrée</a></h1>
Trois semaines de vacances mont fait le plus grand bien. Je suis toujours autant étonné par ma capacité à repousser mes limites quand je suis la tête dans le guidon, ce qui était le cas...
</section>
<section class="section index">
<time datetime="2021-05-08T00:00:00+02:00">08 mai 2021</time>
<h1><a href="https://blog.notmyidea.org/vaccination-et-risques.html" id="page-title">Vaccination et&nbsp;risques</a></h1>
Je mintéresse un peu tardivement a la question des différents vaccins, pour pouvoir mieux comprendre comment ceux cis fonctionnent et quels sont les risques liés. Cette réflexion nest en aucun...
</section>
<section class="section index">
<time datetime="2021-01-26T00:00:00+01:00">26 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/facebook-competition-ethique-et-marketing.html" id="page-title">Facebook, compétition, éthique et&nbsp;marketing.</a></h1>
En créant la brasserie du Vieux Singe, le fait de créer une page facebook sest posé comme une évidence. Il sagit de loutil de facto pour communiquer avec son « audience ». Jai donc créé une...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section class="section index">
<time datetime="2020-01-21T00:00:00+01:00">21 janvier 2020</time>
<h1><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" id="page-title">Le piège du développement&nbsp;personnel</a></h1>
Ces derniers temps, je me suis retrouvé à questionner mon rapport a la pratique du développement personnel. À quel point le celui ci, et la « psychologie positive » peuvent-elles jouer un rôle de...
</section>
<section class="section index">
<time datetime="2015-06-29T00:00:00+02:00">29 juin 2015</time>
<h1><a href="https://blog.notmyidea.org/roles.html" id="page-title">Rôles</a></h1>
Headline : De limportance des rôles informels et de leur partage au sein dun groupe. Un […] dispositif consiste à tenter de faire bouger les rôles (pré)acquis ou qui se fixent dans le groupe,...
</section>
<section>
<h1>Anciens articles...</h1>
<ul>
<li><a href="https://blog.notmyidea.org/le-secret-du-bonheur.html" rel="bookmark" title="Permalink to Le secret du bonheur">Le secret du&nbsp;bonheur</a></li>
<li><a href="https://blog.notmyidea.org/quel-metier-quelle-utilite.html" rel="bookmark" title="Permalink to Quel métier, quelle utilité ?">Quel métier, quelle utilité&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/retours-sur-deux-ans-a-mozilla.html" rel="bookmark" title="Permalink to Retours sur deux ans à Mozilla">Retours sur deux ans à&nbsp;Mozilla</a></li>
<li><a href="https://blog.notmyidea.org/des-carnets-desquisse.html" rel="bookmark" title="Permalink to Des carnets desquisse">Des carnets&nbsp;d&#8217;esquisse</a></li>
<li><a href="https://blog.notmyidea.org/des-profils-de-confiance-partout-et-pour-tout.html" rel="bookmark" title="Permalink to Des profils de confiance partout et pour tout ?">Des profils de confiance partout et pour tout&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/les-dangers-du-livre-numerique.html" rel="bookmark" title="Permalink to Les dangers du livre numérique">Les dangers du livre&nbsp;numérique</a></li>
<li><a href="https://blog.notmyidea.org/quels-usages-pour-linformatique.html" rel="bookmark" title="Permalink to Quels usages pour linformatique ?">Quels usages pour l&#8217;informatique&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/travailler-moins-pour-mieux-travailler.html" rel="bookmark" title="Permalink to Travailler moins pour mieux travailler ?">Travailler moins pour mieux travailler&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/fork-you-or-how-the-social-coding-can-help-you.html" rel="bookmark" title="Permalink to Fork you! or how the social coding can help you">Fork you! or how the social coding can help&nbsp;you</a></li>
<li><a href="https://blog.notmyidea.org/semaine-de-lenvironnement-la-consommation-etudiante.html" rel="bookmark" title="Permalink to Semaine de lenvironnement: La consommation étudiante">Semaine de lenvironnement: La consommation&nbsp;étudiante</a></li>
<li><a href="https://blog.notmyidea.org/amap-media-paniers-bio-a-5e.html" rel="bookmark" title="Permalink to AMAP + Média = Paniers bio à 5e ?!"><span class="caps">AMAP</span> + Média = Paniers bio à 5e&nbsp;?!</a></li>
</ul>
</section>
</body>
</html>

40
drafts/acceleration.html Normal file
View file

@ -0,0 +1,40 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Accélération - Alexis Métaireau</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://blog.notmyidea.org/theme/css/main.css" type="text/css" />
<link href="https://blog.notmyidea.org/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Alexis Métaireau ATOM Feed" />
</head>
<body>
<section id="links">
<li>
<a class="" href="https://blog.notmyidea.org/" id="site-title">Blog</a>
</li>
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section>
<header>
<h1 class="post-title">Accélération</h1>
<time datetime="2022-04-05T00:00:00+02:00">05 avril 2022</time>
</header>
<article>
<p>J&#8217;ai l&#8217;impression d&#8217;avoir vécu une accélération assez incroyable ces dernières années. J&#8217;ai maintenant 36 ans et ces 5 dernières années sont passées à une vitesse&nbsp;folle.</p>
<p>J&#8217;ai vécu plein de choses chouettes, rencontré des personnes extraordinaires et fait progresser ma vision des choses sur beaucoup d&#8217;aspects, <em>mais</em> j&#8217;ai aussi cette impression de vivre les choses avec une intensité moins&nbsp;importante.</p>
<p>Je me demande si quelque part ce n&#8217;est pas une conséquence du fait de conscientiser mes privilèges (d&#8217;homme, de blanc, de classe aisée). Je me pose plus de questions et donc celles-ci viennent quelque part « parasiter » mon habitude précédente de « prendre les choses à la légère » (tout en écrasant les&nbsp;autres). </p>
<p>Je trouve cette piste intéressante parce qu&#8217;elle vient visibiliser ces privilèges. C&#8217;est donc un privilège de ne pas se soucier de son impact sur les autres, par exemple&nbsp;(beurk).</p>
<p>A noter aussi que je travaille trop (pour moi toujours est-il) et que je n&#8217;ai pas assez de temps libre pour prendre soin de mes&nbsp;passions/ami⋅es.</p>
<p>C&#8217;est <a href="https://www.vieuxsinge.com/la-brasserie-du-vieux-singe-recrute.html">en cours d&#8217;évolution</a> mais je dois bien dire que je commence à tirer la langue, et je me demande si les changement que j&#8217;ai vécu à travers ce « trop de travail » ne m&#8217;ont pas endommagé de manière&nbsp;irréversible.</p>
<p>L&#8217;avenir dira&nbsp;:-)</p>
</article>
</body>
</html>

View file

@ -46,35 +46,35 @@ $ gnome-background-generator -p ~/Images/walls -s
</code></pre></div> </code></pre></div>
<p>Here is a extract of the&nbsp;`&#8212;help`:</p> <p>Here is a extract of the&nbsp;`&#8212;help`:</p>
<div class="highlight"><pre><span></span><code><span class="n">shell</span> <div class="highlight"><pre><span></span><code><span class="n">shell</span><span class="w"></span>
<span class="o">$</span> <span class="n">gnome</span><span class="o">-</span><span class="n">background</span><span class="o">-</span><span class="n">generator</span> <span class="o">--</span><span class="n">help</span> <span class="o">$</span><span class="w"> </span><span class="n">gnome</span><span class="o">-</span><span class="n">background</span><span class="o">-</span><span class="n">generator</span><span class="w"> </span><span class="o">--</span><span class="n">help</span><span class="w"></span>
<span class="n">usage</span><span class="p">:</span> <span class="n">gnome</span><span class="o">-</span><span class="n">background</span><span class="o">-</span><span class="n">generator</span> <span class="p">[</span><span class="o">-</span><span class="n">h</span><span class="p">]</span> <span class="p">[</span><span class="o">-</span><span class="n">p</span> <span class="n">PATH</span><span class="p">]</span> <span class="p">[</span><span class="o">-</span><span class="n">o</span> <span class="n">OUTPUT</span><span class="p">]</span> <span class="n">usage</span><span class="p">:</span><span class="w"> </span><span class="n">gnome</span><span class="o">-</span><span class="n">background</span><span class="o">-</span><span class="n">generator</span><span class="w"> </span><span class="p">[</span><span class="o">-</span><span class="n">h</span><span class="p">]</span><span class="w"> </span><span class="p">[</span><span class="o">-</span><span class="n">p</span><span class="w"> </span><span class="n">PATH</span><span class="p">]</span><span class="w"> </span><span class="p">[</span><span class="o">-</span><span class="n">o</span><span class="w"> </span><span class="n">OUTPUT</span><span class="p">]</span><span class="w"></span>
<span class="p">[</span><span class="o">-</span><span class="n">t</span> <span class="n">TRANSITION_TIME</span><span class="p">]</span> <span class="p">[</span><span class="o">-</span><span class="n">d</span> <span class="n">DISPLAY_TIME</span><span class="p">]</span> <span class="p">[</span><span class="o">-</span><span class="n">s</span><span class="p">]</span> <span class="w"> </span><span class="p">[</span><span class="o">-</span><span class="n">t</span><span class="w"> </span><span class="n">TRANSITION_TIME</span><span class="p">]</span><span class="w"> </span><span class="p">[</span><span class="o">-</span><span class="n">d</span><span class="w"> </span><span class="n">DISPLAY_TIME</span><span class="p">]</span><span class="w"> </span><span class="p">[</span><span class="o">-</span><span class="n">s</span><span class="p">]</span><span class="w"></span>
<span class="p">[</span><span class="o">-</span><span class="n">b</span><span class="p">]</span> <span class="w"> </span><span class="p">[</span><span class="o">-</span><span class="n">b</span><span class="p">]</span><span class="w"></span>
<span class="n">A</span> <span class="n">simple</span> <span class="n">command</span> <span class="n">line</span> <span class="k">tool</span> <span class="n">to</span> <span class="n">generate</span> <span class="n">an</span> <span class="n">XML</span> <span class="n">file</span> <span class="n">to</span> <span class="n">use</span> <span class="k">for</span> <span class="n">gnome</span> <span class="n">A</span><span class="w"> </span><span class="n">simple</span><span class="w"> </span><span class="n">command</span><span class="w"> </span><span class="n">line</span><span class="w"> </span><span class="k">tool</span><span class="w"> </span><span class="n">to</span><span class="w"> </span><span class="n">generate</span><span class="w"> </span><span class="n">an</span><span class="w"> </span><span class="n">XML</span><span class="w"> </span><span class="n">file</span><span class="w"> </span><span class="n">to</span><span class="w"> </span><span class="n">use</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">gnome</span><span class="w"></span>
<span class="n">wallpapers</span><span class="p">,</span> <span class="n">to</span> <span class="n">have</span> <span class="n">dynamic</span> <span class="n">walls</span> <span class="n">wallpapers</span><span class="p">,</span><span class="w"> </span><span class="n">to</span><span class="w"> </span><span class="n">have</span><span class="w"> </span><span class="n">dynamic</span><span class="w"> </span><span class="n">walls</span><span class="w"></span>
<span class="n">optional</span> <span class="n">arguments</span><span class="p">:</span> <span class="n">optional</span><span class="w"> </span><span class="n">arguments</span><span class="p">:</span><span class="w"></span>
<span class="o">-</span><span class="n">h</span><span class="p">,</span> <span class="o">--</span><span class="n">help</span> <span class="n">show</span> <span class="n">this</span> <span class="n">help</span> <span class="n">message</span> <span class="ow">and</span> <span class="n">exit</span> <span class="w"> </span><span class="o">-</span><span class="n">h</span><span class="p">,</span><span class="w"> </span><span class="o">--</span><span class="n">help</span><span class="w"> </span><span class="n">show</span><span class="w"> </span><span class="n">this</span><span class="w"> </span><span class="n">help</span><span class="w"> </span><span class="n">message</span><span class="w"> </span><span class="ow">and</span><span class="w"> </span><span class="n">exit</span><span class="w"></span>
<span class="o">-</span><span class="n">p</span> <span class="n">PATH</span><span class="p">,</span> <span class="o">--</span><span class="n">path</span> <span class="n">PATH</span> <span class="n">Path</span> <span class="n">to</span> <span class="n">look</span> <span class="k">for</span> <span class="n">the</span> <span class="n">pictures</span><span class="o">.</span> <span class="n">If</span> <span class="n">no</span> <span class="n">output</span> <span class="k">is</span> <span class="w"> </span><span class="o">-</span><span class="n">p</span><span class="w"> </span><span class="n">PATH</span><span class="p">,</span><span class="w"> </span><span class="o">--</span><span class="n">path</span><span class="w"> </span><span class="n">PATH</span><span class="w"> </span><span class="n">Path</span><span class="w"> </span><span class="n">to</span><span class="w"> </span><span class="n">look</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">pictures</span><span class="o">.</span><span class="w"> </span><span class="n">If</span><span class="w"> </span><span class="n">no</span><span class="w"> </span><span class="n">output</span><span class="w"> </span><span class="k">is</span><span class="w"></span>
<span class="n">specified</span><span class="p">,</span> <span class="n">will</span> <span class="n">be</span> <span class="n">used</span> <span class="n">too</span> <span class="k">for</span> <span class="n">outputing</span> <span class="n">the</span> <span class="n">dynamic</span><span class="o">-</span> <span class="w"> </span><span class="n">specified</span><span class="p">,</span><span class="w"> </span><span class="n">will</span><span class="w"> </span><span class="n">be</span><span class="w"> </span><span class="n">used</span><span class="w"> </span><span class="n">too</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">outputing</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">dynamic</span><span class="o">-</span><span class="w"></span>
<span class="n">wallpaper</span><span class="o">.</span><span class="n">xml</span> <span class="n">file</span><span class="o">.</span> <span class="n">Default</span> <span class="n">value</span> <span class="k">is</span> <span class="n">the</span> <span class="n">current</span> <span class="w"> </span><span class="n">wallpaper</span><span class="o">.</span><span class="n">xml</span><span class="w"> </span><span class="n">file</span><span class="o">.</span><span class="w"> </span><span class="n">Default</span><span class="w"> </span><span class="n">value</span><span class="w"> </span><span class="k">is</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">current</span><span class="w"></span>
<span class="n">directory</span> <span class="p">(</span><span class="o">.</span><span class="p">)</span> <span class="w"> </span><span class="n">directory</span><span class="w"> </span><span class="p">(</span><span class="o">.</span><span class="p">)</span><span class="w"></span>
<span class="o">-</span><span class="n">o</span> <span class="n">OUTPUT</span><span class="p">,</span> <span class="o">--</span><span class="n">output</span> <span class="n">OUTPUT</span> <span class="w"> </span><span class="o">-</span><span class="n">o</span><span class="w"> </span><span class="n">OUTPUT</span><span class="p">,</span><span class="w"> </span><span class="o">--</span><span class="n">output</span><span class="w"> </span><span class="n">OUTPUT</span><span class="w"></span>
<span class="n">Output</span> <span class="n">filename</span><span class="o">.</span> <span class="n">If</span> <span class="n">no</span> <span class="n">filename</span> <span class="k">is</span> <span class="n">specified</span><span class="p">,</span> <span class="n">a</span> <span class="w"> </span><span class="n">Output</span><span class="w"> </span><span class="n">filename</span><span class="o">.</span><span class="w"> </span><span class="n">If</span><span class="w"> </span><span class="n">no</span><span class="w"> </span><span class="n">filename</span><span class="w"> </span><span class="k">is</span><span class="w"> </span><span class="n">specified</span><span class="p">,</span><span class="w"> </span><span class="n">a</span><span class="w"></span>
<span class="n">dynamic</span><span class="o">-</span><span class="n">wallpaper</span><span class="o">.</span><span class="n">xml</span> <span class="n">file</span> <span class="n">will</span> <span class="n">be</span> <span class="n">generated</span> <span class="ow">in</span> <span class="n">the</span> <span class="w"> </span><span class="n">dynamic</span><span class="o">-</span><span class="n">wallpaper</span><span class="o">.</span><span class="n">xml</span><span class="w"> </span><span class="n">file</span><span class="w"> </span><span class="n">will</span><span class="w"> </span><span class="n">be</span><span class="w"> </span><span class="n">generated</span><span class="w"> </span><span class="ow">in</span><span class="w"> </span><span class="n">the</span><span class="w"></span>
<span class="n">path</span> <span class="n">containing</span> <span class="n">the</span> <span class="n">pictures</span><span class="o">.</span> <span class="n">You</span> <span class="n">can</span> <span class="n">also</span> <span class="n">use</span> <span class="s2">&quot;-&quot;</span> <span class="n">to</span> <span class="w"> </span><span class="n">path</span><span class="w"> </span><span class="n">containing</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">pictures</span><span class="o">.</span><span class="w"> </span><span class="n">You</span><span class="w"> </span><span class="n">can</span><span class="w"> </span><span class="n">also</span><span class="w"> </span><span class="n">use</span><span class="w"> </span><span class="s2">&quot;-&quot;</span><span class="w"> </span><span class="n">to</span><span class="w"></span>
<span class="n">display</span> <span class="n">the</span> <span class="n">xml</span> <span class="ow">in</span> <span class="n">the</span> <span class="n">stdout</span><span class="o">.</span> <span class="w"> </span><span class="n">display</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">xml</span><span class="w"> </span><span class="ow">in</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">stdout</span><span class="o">.</span><span class="w"></span>
<span class="o">-</span><span class="n">t</span> <span class="n">TRANSITION_TIME</span><span class="p">,</span> <span class="o">--</span><span class="n">transition</span><span class="o">-</span><span class="n">time</span> <span class="n">TRANSITION_TIME</span> <span class="w"> </span><span class="o">-</span><span class="n">t</span><span class="w"> </span><span class="n">TRANSITION_TIME</span><span class="p">,</span><span class="w"> </span><span class="o">--</span><span class="n">transition</span><span class="o">-</span><span class="n">time</span><span class="w"> </span><span class="n">TRANSITION_TIME</span><span class="w"></span>
<span class="n">Time</span> <span class="p">(</span><span class="ow">in</span> <span class="n">seconds</span><span class="p">)</span> <span class="n">transitions</span> <span class="n">must</span> <span class="n">last</span> <span class="p">(</span><span class="n">default</span> <span class="n">value</span> <span class="w"> </span><span class="n">Time</span><span class="w"> </span><span class="p">(</span><span class="ow">in</span><span class="w"> </span><span class="n">seconds</span><span class="p">)</span><span class="w"> </span><span class="n">transitions</span><span class="w"> </span><span class="n">must</span><span class="w"> </span><span class="n">last</span><span class="w"> </span><span class="p">(</span><span class="n">default</span><span class="w"> </span><span class="n">value</span><span class="w"></span>
<span class="k">is</span> <span class="mi">2</span> <span class="n">seconds</span><span class="p">)</span> <span class="w"> </span><span class="k">is</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="n">seconds</span><span class="p">)</span><span class="w"></span>
<span class="o">-</span><span class="n">d</span> <span class="n">DISPLAY_TIME</span><span class="p">,</span> <span class="o">--</span><span class="n">display</span><span class="o">-</span><span class="n">time</span> <span class="n">DISPLAY_TIME</span> <span class="w"> </span><span class="o">-</span><span class="n">d</span><span class="w"> </span><span class="n">DISPLAY_TIME</span><span class="p">,</span><span class="w"> </span><span class="o">--</span><span class="n">display</span><span class="o">-</span><span class="n">time</span><span class="w"> </span><span class="n">DISPLAY_TIME</span><span class="w"></span>
<span class="n">Time</span> <span class="p">(</span><span class="ow">in</span> <span class="n">seconds</span><span class="p">)</span> <span class="n">a</span> <span class="n">picture</span> <span class="n">must</span> <span class="n">be</span> <span class="n">displayed</span><span class="o">.</span> <span class="n">Default</span> <span class="w"> </span><span class="n">Time</span><span class="w"> </span><span class="p">(</span><span class="ow">in</span><span class="w"> </span><span class="n">seconds</span><span class="p">)</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="n">picture</span><span class="w"> </span><span class="n">must</span><span class="w"> </span><span class="n">be</span><span class="w"> </span><span class="n">displayed</span><span class="o">.</span><span class="w"> </span><span class="n">Default</span><span class="w"></span>
<span class="n">value</span> <span class="k">is</span> <span class="mi">900</span> <span class="p">(</span><span class="mi">15</span><span class="n">mn</span><span class="p">)</span> <span class="w"> </span><span class="n">value</span><span class="w"> </span><span class="k">is</span><span class="w"> </span><span class="mi">900</span><span class="w"> </span><span class="p">(</span><span class="mi">15</span><span class="n">mn</span><span class="p">)</span><span class="w"></span>
<span class="o">-</span><span class="n">s</span><span class="p">,</span> <span class="o">--</span><span class="n">set</span><span class="o">-</span><span class="n">background</span> <span class="s1">&#39;&#39;&#39;try to set the background using gnome-appearance-</span> <span class="w"> </span><span class="o">-</span><span class="n">s</span><span class="p">,</span><span class="w"> </span><span class="o">--</span><span class="n">set</span><span class="o">-</span><span class="n">background</span><span class="w"> </span><span class="s1">&#39;&#39;&#39;try to set the background using gnome-appearance-</span><span class="w"></span>
<span class="s1"> properties</span> <span class="s1"> properties</span><span class="w"></span>
<span class="s1"> -b, --debug</span> <span class="s1"> -b, --debug</span><span class="w"></span>
</code></pre></div> </code></pre></div>
</article> </article>

View file

@ -122,16 +122,16 @@ terme, et que <em>Remote Storage</em> devienne une facette de notre&nbsp;solutio
<p><a href="http://pouchdb.com/">PouchDB</a> est une bibliothèque JavaScript qui <p><a href="http://pouchdb.com/">PouchDB</a> est une bibliothèque JavaScript qui
permet de manipuler des enregistrements en local et de les synchroniser permet de manipuler des enregistrements en local et de les synchroniser
vers une base&nbsp;distante.</p> vers une base&nbsp;distante.</p>
<div class="highlight"><pre><span></span><code><span class="n">javascript</span> <div class="highlight"><pre><span></span><code><span class="n">javascript</span><span class="w"></span>
<span class="k">var</span> <span class="n">db</span> <span class="o">=</span> <span class="n">new</span> <span class="n">PouchDB</span><span class="p">(</span><span class="s1">&#39;dbname&#39;</span><span class="p">);</span> <span class="k">var</span><span class="w"> </span><span class="n">db</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">new</span><span class="w"> </span><span class="n">PouchDB</span><span class="p">(</span><span class="s1">&#39;dbname&#39;</span><span class="p">);</span><span class="w"></span>
<span class="n">db</span><span class="o">.</span><span class="n">put</span><span class="p">({</span> <span class="n">db</span><span class="o">.</span><span class="n">put</span><span class="p">({</span><span class="w"></span>
<span class="n">_id</span><span class="p">:</span> <span class="s1">&#39;dave@gmail.com&#39;</span><span class="p">,</span> <span class="w"> </span><span class="n">_id</span><span class="p">:</span><span class="w"> </span><span class="s1">&#39;dave@gmail.com&#39;</span><span class="p">,</span><span class="w"></span>
<span class="n">name</span><span class="p">:</span> <span class="s1">&#39;David&#39;</span><span class="p">,</span> <span class="w"> </span><span class="n">name</span><span class="p">:</span><span class="w"> </span><span class="s1">&#39;David&#39;</span><span class="p">,</span><span class="w"></span>
<span class="n">age</span><span class="p">:</span> <span class="mi">68</span> <span class="w"> </span><span class="n">age</span><span class="p">:</span><span class="w"> </span><span class="mi">68</span><span class="w"></span>
<span class="p">});</span> <span class="p">});</span><span class="w"></span>
<span class="n">db</span><span class="o">.</span><span class="n">replicate</span><span class="o">.</span><span class="n">to</span><span class="p">(</span><span class="s1">&#39;http://example.com/mydb&#39;</span><span class="p">);</span> <span class="n">db</span><span class="o">.</span><span class="n">replicate</span><span class="o">.</span><span class="n">to</span><span class="p">(</span><span class="s1">&#39;http://example.com/mydb&#39;</span><span class="p">);</span><span class="w"></span>
</code></pre></div> </code></pre></div>
<p>Le projet a le vent en poupe, bénéficie de nombreux contributeurs, <p>Le projet a le vent en poupe, bénéficie de nombreux contributeurs,

View file

@ -0,0 +1,39 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Fatigue&nbsp;relationnelle - Alexis Métaireau</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://blog.notmyidea.org/theme/css/main.css" type="text/css" />
<link href="https://blog.notmyidea.org/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Alexis Métaireau ATOM Feed" />
</head>
<body>
<section id="links">
<li>
<a class="" href="https://blog.notmyidea.org/" id="site-title">Blog</a>
</li>
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section>
<header>
<h1 class="post-title">Fatigue&nbsp;relationnelle</h1>
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
</header>
<article>
<p>Depuis peu, je me retrouve confronté à mon manque d&#8217;envie d&#8217;être avec d&#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&#8217;il y a quelques&nbsp;années.</p>
<p>Je ne sais pas exactement d&#8217;où cela vient : si c&#8217;est un des nombreux effets psychologiques que le <span class="caps">COVID</span> à eu sur moi, si j&#8217;accorde trop de place aux collectifs dans ma vie (travail, habitation, ami⋅es), ou si simplement mes envies ne sont plus les mêmes qu&#8217;il y a quelques années, mais le résultat est bel et bien&nbsp;là.</p>
<p>Malgré tout j&#8217;ai envie d&#8217;être disponible pour les personnes qui comptent pour moi, et je réfléchis donc à différentes solutions : déménager et habiter en solo, faire moins d&#8217;activités extérieures ou bien m&#8217;isoler plus souvent dans les espaces&nbsp;collectifs.</p>
<p>Le fait de retourner potentiellement habiter en solo vient questionner mon rapport au collectif omniprésent dans ma vie, et qui jouit d&#8217;un statut particulier pour moi. Le collectif semble être quasiment un <em>objectif en soi</em>, et donc quelque-part partir de ces espaces collectifs serait une sorte&nbsp;d&#8217;échec.</p>
<p>Entrouvrir cette possibilité me plaît parce-que ça me pousse à accepter mes limites et à mettre en balance ma qualité de relation aux autres avec mes valeurs collectivistes. Du collectif, oui, mais peut-être avec un mix différent&nbsp;?</p>
<p>Ça fait également écho à ma <a href="conflit.html">gestion du conflit</a>. Je me rends compte que j&#8217;ai besoin d&#8217;évoluer dans des collectifs qui partagent cette culture de la gestion du conflit (plutôt que de son&nbsp;évitement).</p>
</article>
</body>
</html>

View file

@ -1,5 +1,40 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Alexis Métaireau</title><link href="https://blog.notmyidea.org/" rel="alternate"></link><link href="https://blog.notmyidea.org/feeds/.atom.xml" rel="self"></link><id>https://blog.notmyidea.org/</id><updated>2021-11-11T00:00:00+01:00</updated><entry><title>Conflit</title><link href="https://blog.notmyidea.org/conflit.html" rel="alternate"></link><published>2021-11-11T00:00:00+01:00</published><updated>2021-11-11T00:00:00+01:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2021-11-11:/conflit.html</id><summary type="html"> <feed xmlns="http://www.w3.org/2005/Atom"><title>Alexis Métaireau</title><link href="https://blog.notmyidea.org/" rel="alternate"></link><link href="https://blog.notmyidea.org/feeds/.atom.xml" rel="self"></link><id>https://blog.notmyidea.org/</id><updated>2022-05-06T00:00:00+02:00</updated><entry><title>Fatigue relationnelle</title><link href="https://blog.notmyidea.org/fatigue-relationnelle.html" rel="alternate"></link><published>2022-05-06T00:00:00+02:00</published><updated>2022-05-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2022-05-06:/fatigue-relationnelle.html</id><summary type="html">
&lt;p&gt;Depuis peu, je me retrouve confronté à mon manque d&amp;#8217;envie d&amp;#8217;être avec d&amp;#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&amp;#8217;il y a quelques&amp;nbsp;années.&lt;/p&gt;
&lt;p&gt;Je ne sais pas exactement d&amp;#8217;où cela vient : si c&amp;#8217;est un des nombreux effets …&lt;/p&gt;</summary><content type="html">
&lt;p&gt;Depuis peu, je me retrouve confronté à mon manque d&amp;#8217;envie d&amp;#8217;être avec d&amp;#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&amp;#8217;il y a quelques&amp;nbsp;années.&lt;/p&gt;
&lt;p&gt;Je ne sais pas exactement d&amp;#8217;où cela vient : si c&amp;#8217;est un des nombreux effets psychologiques que le &lt;span class="caps"&gt;COVID&lt;/span&gt; à eu sur moi, si j&amp;#8217;accorde trop de place aux collectifs dans ma vie (travail, habitation, ami⋅es), ou si simplement mes envies ne sont plus les mêmes qu&amp;#8217;il y a quelques années, mais le résultat est bel et bien&amp;nbsp;là.&lt;/p&gt;
&lt;p&gt;Malgré tout j&amp;#8217;ai envie d&amp;#8217;être disponible pour les personnes qui comptent pour moi, et je réfléchis donc à différentes solutions : déménager et habiter en solo, faire moins d&amp;#8217;activités extérieures ou bien m&amp;#8217;isoler plus souvent dans les espaces&amp;nbsp;collectifs.&lt;/p&gt;
&lt;p&gt;Le fait de retourner potentiellement habiter en solo vient questionner mon rapport au collectif omniprésent dans ma vie, et qui jouit d&amp;#8217;un statut particulier pour moi. Le collectif semble être quasiment un &lt;em&gt;objectif en soi&lt;/em&gt;, et donc quelque-part partir de ces espaces collectifs serait une sorte&amp;nbsp;d&amp;#8217;échec.&lt;/p&gt;
&lt;p&gt;Entrouvrir cette possibilité me plaît parce-que ça me pousse à accepter mes limites et à mettre en balance ma qualité de relation aux autres avec mes valeurs collectivistes. Du collectif, oui, mais peut-être avec un mix différent&amp;nbsp;?&lt;/p&gt;
&lt;p&gt;Ça fait également écho à ma &lt;a href="conflit.html"&gt;gestion du conflit&lt;/a&gt;. Je me rends compte que j&amp;#8217;ai besoin d&amp;#8217;évoluer dans des collectifs qui partagent cette culture de la gestion du conflit (plutôt que de son&amp;nbsp;évitement).&lt;/p&gt;</content><category term="Réfléxions"></category></entry><entry><title>Accueil, transmission et confiance</title><link href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" rel="alternate"></link><published>2022-05-01T00:00:00+02:00</published><updated>2022-05-01T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2022-05-01:/accueil-transmission-et-confiance.html</id><summary type="html">
&lt;p&gt;Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&amp;#8217;en réjouis pour plusieurs raisons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ma charge de travail devrait baisser de manière considérable et me permettre d&amp;#8217;avancer sur des sujets de fond, pour progressivement changer l&amp;#8217;équilibre dans mon métier&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;J&amp;#8217;ai désormais quelqu&amp;#8217;une avec …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">
&lt;p&gt;Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&amp;#8217;en réjouis pour plusieurs raisons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ma charge de travail devrait baisser de manière considérable et me permettre d&amp;#8217;avancer sur des sujets de fond, pour progressivement changer l&amp;#8217;équilibre dans mon métier&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;J&amp;#8217;ai désormais quelqu&amp;#8217;une avec qui échanger sur les problématiques techniques du métier de livreur / commercial&amp;nbsp;;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Mais cela me fait aussi peur : cela va nécessairement bousculer l&amp;#8217;équilibre — parfois fragile — en place entre les associés actuels. Même si je vois cette évolution d&amp;#8217;un bon œil, les transitions sont parfois&amp;nbsp;difficiles.&lt;/p&gt;
&lt;p&gt;Ça me donne donc envie de construire une relation de confiance, et de donner les moyens à cette nouvelle arrivante de s&amp;#8217;y&amp;nbsp;retrouver.&lt;/p&gt;
&lt;h2 id="transmission"&gt;Transmission&lt;/h2&gt;
&lt;p&gt;Cela me pose donc de nouvelles questions, autour de l&amp;#8217;accueil et de la&amp;nbsp;transmission.&lt;/p&gt;
&lt;p&gt;Il me semble que l&amp;#8217;enjeu est de laisser une liberté d&amp;#8217;action progressive pour mettre la personne en confiance, puis de réussir à « lâcher le bébé&amp;nbsp;».&lt;/p&gt;
&lt;p&gt;Mais il s&amp;#8217;agit aussi de réussir à juger si la communication est aisée, et de ne pas nécessairement partir du principe que tout sera génial. C&amp;#8217;est une relation de travail, pas une&amp;nbsp;amitié.&lt;/p&gt;
&lt;p&gt;De son côté également il doit y avoir des questionnements. Je mets une attention particulière à les accueillir : les questionnement sont bienvenus, voir même&amp;nbsp;attendus.&lt;/p&gt;
&lt;p&gt;Le pire pour moi serait d&amp;#8217;avoir quelqu&amp;#8217;un qui à peur de ne pas savoir, et qui dit qu&amp;#8217;elle sait plutôt que de laisser la place pour&amp;nbsp;l&amp;#8217;apprentissage.&lt;/p&gt;
&lt;h2 id="faire-confiance"&gt;Faire&amp;nbsp;confiance&lt;/h2&gt;
&lt;p&gt;Il me semble qu&amp;#8217;il peut exister deux types de confiance&amp;nbsp;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;Laisser la possibilité de se tromper&lt;/em&gt; : il est possible de faire confiance à l&amp;#8217;autre dans son apprentissage, pour qu&amp;#8217;iel se sente légitime à faire &lt;em&gt;ses&lt;/em&gt; choix, ceux qu&amp;#8217;il⋅elle estimera les bons, et qui seront donc les bons — par définition&amp;nbsp;;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;La &lt;em&gt;confiance relationnelle&lt;/em&gt;, de l&amp;#8217;ordre des relations inter-personnelles, de la relation à l&amp;#8217;autre. Parce que c&amp;#8217;est aussi une rencontre, et que je cherche à créer des relations de travail où l&amp;#8217;on peut se dire les choses sans se blesser, en confiance&amp;nbsp;donc.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;</content><category term="Réfléxions"></category></entry><entry><title>Conflit</title><link href="https://blog.notmyidea.org/conflit.html" rel="alternate"></link><published>2021-11-11T00:00:00+01:00</published><updated>2021-11-11T00:00:00+01:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2021-11-11:/conflit.html</id><summary type="html">
&lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt; &lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt;
&lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt; &lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html"> &lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html">
@ -1842,8 +1877,8 @@ obtenir le même résultat à partir de la même&amp;nbsp;entrée.&lt;/p&gt;
une collection &lt;span class="caps"&gt;JSON&lt;/span&gt;. Chaque élément contient un identifiant unique généré sur une collection &lt;span class="caps"&gt;JSON&lt;/span&gt;. Chaque élément contient un identifiant unique généré sur
le&amp;nbsp;client.&lt;/p&gt; le&amp;nbsp;client.&lt;/p&gt;
&lt;p&gt;Par exemple, un enregistrement peut ressembler à&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Par exemple, un enregistrement peut ressembler à&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s2"&gt;&amp;quot;fingerprint&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;fingerprint&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Le &lt;em&gt;hash&lt;/em&gt; de la collection est ensuite calculé, signé puis envoyé au serveur &lt;p&gt;Le &lt;em&gt;hash&lt;/em&gt; de la collection est ensuite calculé, signé puis envoyé au serveur
(voir plus bas pour les&amp;nbsp;détails).&lt;/p&gt; (voir plus bas pour les&amp;nbsp;détails).&lt;/p&gt;
@ -2291,7 +2326,7 @@ des tests souvent&amp;nbsp;!&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt; &lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt;
&lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est &lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est
cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait pas etre &lt;/p&gt;</summary><content type="html">&lt;div class="admonition note"&gt; cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait …&lt;/p&gt;</summary><content type="html">&lt;div class="admonition note"&gt;
&lt;p class="first admonition-title"&gt;Note&lt;/p&gt; &lt;p class="first admonition-title"&gt;Note&lt;/p&gt;
&lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas &lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas
à les completer si&amp;nbsp;besoin.&lt;/p&gt; à les completer si&amp;nbsp;besoin.&lt;/p&gt;
@ -3013,7 +3048,7 @@ d&amp;#8217;écriture sur une collection&amp;nbsp;d&amp;#8217;enregistrements.&l
&lt;li&gt;&lt;strong&gt;La synchronisation&lt;/strong&gt; : une série de leviers pour récupérer et renvoyer des &lt;li&gt;&lt;strong&gt;La synchronisation&lt;/strong&gt; : une série de leviers pour récupérer et renvoyer des
changements sur les données, sans perte ni collision, en utilisant les&amp;nbsp;timestamps.&lt;/li&gt; changements sur les données, sans perte ni collision, en utilisant les&amp;nbsp;timestamps.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Les permissions&lt;/strong&gt; : les droits d&amp;#8217;un utilisateur sur une collection ou un enregistrement &lt;li&gt;&lt;strong&gt;Les permissions&lt;/strong&gt; : les droits d&amp;#8217;un utilisateur sur une collection ou un enregistrement
(&lt;em&gt;encore frais et sur le point d&amp;#8217;être documenté&lt;/em&gt;) &lt;a class="footnote-reference" href="#id3" id="id1"&gt;[1]&lt;/a&gt;.&lt;/li&gt; (&lt;em&gt;encore frais et sur le point d&amp;#8217;être documenté&lt;/em&gt;) &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Opérations par lot&lt;/strong&gt;: une &lt;span class="caps"&gt;URL&lt;/span&gt; qui permet d&amp;#8217;envoyer une série de requêtes &lt;li&gt;&lt;strong&gt;Opérations par lot&lt;/strong&gt;: une &lt;span class="caps"&gt;URL&lt;/span&gt; qui permet d&amp;#8217;envoyer une série de requêtes
décrites en &lt;span class="caps"&gt;JSON&lt;/span&gt; et d&amp;#8217;obtenir les réponses&amp;nbsp;respectives.&lt;/li&gt; décrites en &lt;span class="caps"&gt;JSON&lt;/span&gt; et d&amp;#8217;obtenir les réponses&amp;nbsp;respectives.&lt;/li&gt;
&lt;/ul&gt; &lt;/ul&gt;
@ -3035,17 +3070,17 @@ de &lt;em&gt;Firefox Sync&lt;/em&gt; pour la gestion de la concurrence et de&amp
&lt;p&gt;Il est &lt;a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html"&gt;documenté en détail&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Il est &lt;a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html"&gt;documenté en détail&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Dans un monde idéal, ce protocole serait versionné, et formalisé dans une &lt;span class="caps"&gt;RFC&lt;/span&gt;. &lt;p&gt;Dans un monde idéal, ce protocole serait versionné, et formalisé dans une &lt;span class="caps"&gt;RFC&lt;/span&gt;.
En rêve, il existerait même plusieurs implémentations avec des technologies différentes En rêve, il existerait même plusieurs implémentations avec des technologies différentes
(Python, Go, Node, etc.). &lt;a class="footnote-reference" href="#id4" id="id2"&gt;[2]&lt;/a&gt;&lt;/p&gt; (Python, Go, Node, etc.). &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id3" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Voir notre &lt;a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html"&gt;article dédié sur les permissions&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Voir notre &lt;a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html"&gt;article dédié sur les permissions&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Rappel: nous sommes une toute petite équipe !&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Rappel: nous sommes une toute petite équipe !&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;/div&gt; &lt;/div&gt;
@ -3053,7 +3088,7 @@ En rêve, il existerait même plusieurs implémentations avec des technologies d
&lt;h2&gt;Le&amp;nbsp;toolkit&lt;/h2&gt; &lt;h2&gt;Le&amp;nbsp;toolkit&lt;/h2&gt;
&lt;div class="section" id="choix-techniques"&gt; &lt;div class="section" id="choix-techniques"&gt;
&lt;h3&gt;Choix&amp;nbsp;techniques&lt;/h3&gt; &lt;h3&gt;Choix&amp;nbsp;techniques&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;Cliquet&lt;/em&gt; implémente le protocole en Python (&lt;em&gt;2.7, 3.4+, pypy&lt;/em&gt;), avec &lt;a class="reference external" href="http://trypyramid.com/"&gt;Pyramid&lt;/a&gt; &lt;a class="footnote-reference" href="#id6" id="id5"&gt;[3]&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;em&gt;Cliquet&lt;/em&gt; implémente le protocole en Python (&lt;em&gt;2.7, 3.4+, pypy&lt;/em&gt;), avec &lt;a class="reference external" href="http://trypyramid.com/"&gt;Pyramid&lt;/a&gt; &lt;a class="footnote-reference" href="#footnote-3" id="footnote-reference-3"&gt;[3]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pyramid&lt;/strong&gt; est un framework Web qui va prendre en charge tout la partie &lt;span class="caps"&gt;HTTP&lt;/span&gt;, &lt;p&gt;&lt;strong&gt;Pyramid&lt;/strong&gt; est un framework Web qui va prendre en charge tout la partie &lt;span class="caps"&gt;HTTP&lt;/span&gt;,
et qui s&amp;#8217;avère pertinent aussi bien pour des petits projets que des plus&amp;nbsp;ambitieux.&lt;/p&gt; et qui s&amp;#8217;avère pertinent aussi bien pour des petits projets que des plus&amp;nbsp;ambitieux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cornice&lt;/strong&gt; est une extension de &lt;em&gt;Pyramid&lt;/em&gt;, écrite en partie par Alexis et Tarek, &lt;p&gt;&lt;strong&gt;Cornice&lt;/strong&gt; est une extension de &lt;em&gt;Pyramid&lt;/em&gt;, écrite en partie par Alexis et Tarek,
@ -3066,10 +3101,10 @@ rigoureux, gérer les entêtes &lt;span class="caps"&gt;CORS&lt;/span&gt;, fourn
&lt;p&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; utilise les deux précédents pour implémenter le protocole et fournir &lt;p&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; utilise les deux précédents pour implémenter le protocole et fournir
des abstractions, mais on a toujours &lt;em&gt;Pyramid&lt;/em&gt; et &lt;em&gt;Cornice&lt;/em&gt; sous la main pour des abstractions, mais on a toujours &lt;em&gt;Pyramid&lt;/em&gt; et &lt;em&gt;Cornice&lt;/em&gt; sous la main pour
aller au delà de ce qui est proposé&amp;nbsp;!&lt;/p&gt; aller au delà de ce qui est proposé&amp;nbsp;!&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id6" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-3" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id5"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Au tout début nous avons commencé une implémentation avec &lt;em&gt;Python-Eve&lt;/em&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Au tout début nous avons commencé une implémentation avec &lt;em&gt;Python-Eve&lt;/em&gt;
(Flask), mais n&amp;#8217;étions pas satisfaits de l&amp;#8217;approche pour la configuration (Flask), mais n&amp;#8217;étions pas satisfaits de l&amp;#8217;approche pour la configuration
de l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt;. En particulier du côté magique.&lt;/td&gt;&lt;/tr&gt; de l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt;. En particulier du côté magique.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
@ -3161,18 +3196,18 @@ avec &lt;em&gt;Colander&lt;/em&gt;, et ensuite déclarer une&amp;nbsp;resource:&
&lt;p&gt;Désormais, la resource &lt;span class="caps"&gt;CRUD&lt;/span&gt; est disponible sur &lt;tt class="docutils literal"&gt;/v1/bookmarks&lt;/tt&gt;, avec toutes &lt;p&gt;Désormais, la resource &lt;span class="caps"&gt;CRUD&lt;/span&gt; est disponible sur &lt;tt class="docutils literal"&gt;/v1/bookmarks&lt;/tt&gt;, avec toutes
les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc. les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc.
De base les enregistrements sont privés, par&amp;nbsp;utilisateur.&lt;/p&gt; De base les enregistrements sont privés, par&amp;nbsp;utilisateur.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="err"&gt;h&lt;/span&gt;&lt;span class="kc"&gt;tt&lt;/span&gt;&lt;span class="err"&gt;p&lt;/span&gt; &lt;span class="err"&gt;GET&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;http://localhost:8000/v1/bookmarks&amp;quot;&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;h&lt;/span&gt;&lt;span class="kc"&gt;tt&lt;/span&gt;&lt;span class="err"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;GET&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;http://localhost:8000/v1/bookmarks&amp;quot;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;HTTP/&lt;/span&gt;&lt;span class="mf"&gt;1.1&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt; &lt;span class="err"&gt;OK&lt;/span&gt; &lt;span class="err"&gt;HTTP/&lt;/span&gt;&lt;span class="mf"&gt;1.1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;OK&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;...&lt;/span&gt; &lt;span class="err"&gt;...&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;data&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;data&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;url&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;http://cliquet.readthedocs.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;url&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;http://cliquet.readthedocs.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;last_modified&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1437034418940&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;last_modified&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1437034418940&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="etape-3"&gt; &lt;div class="section" id="etape-3"&gt;
@ -3463,7 +3498,7 @@ concept repose sur &lt;a class="reference external" href="https://fr.wikipedia.o
&lt;a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05"&gt;*Remote Storage*&lt;/a&gt;, &lt;a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05"&gt;*Remote Storage*&lt;/a&gt;,
mais pour l&amp;#8217;instant les cas d&amp;#8217;utilisations ne se sont pas encore présentés&amp;nbsp;officiellement.&lt;/p&gt; mais pour l&amp;#8217;instant les cas d&amp;#8217;utilisations ne se sont pas encore présentés&amp;nbsp;officiellement.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="id2"&gt; &lt;div class="section" id="a-venir-1"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Nous serons probablement amenés à introduire la gestion de la concurrence dans &lt;p&gt;Nous serons probablement amenés à introduire la gestion de la concurrence dans
le client &lt;span class="caps"&gt;JS&lt;/span&gt;, en complément de ce qui a été fait sur le serveur, pour permettre le client &lt;span class="caps"&gt;JS&lt;/span&gt;, en complément de ce qui a été fait sur le serveur, pour permettre
@ -3478,17 +3513,17 @@ que &lt;a class="reference external" href="https://github.com/mozilla-services/k
&lt;h2&gt;Contenus applicatifs de&amp;nbsp;Firefox&lt;/h2&gt; &lt;h2&gt;Contenus applicatifs de&amp;nbsp;Firefox&lt;/h2&gt;
&lt;p&gt;Aujourd&amp;#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs &lt;p&gt;Aujourd&amp;#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs
consiste à désolidariser certains contenus applicatifs de ces cycles consiste à désolidariser certains contenus applicatifs de ces cycles
relativement longs (ex. &lt;em&gt;règles de securité, dictionnaires, traductions, &amp;#8230;&lt;/em&gt;) &lt;a class="footnote-reference" href="#id4" id="id3"&gt;[1]&lt;/a&gt;.&lt;/p&gt; relativement longs (ex. &lt;em&gt;règles de securité, dictionnaires, traductions, &amp;#8230;&lt;/em&gt;) &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Il s&amp;#8217;agit de données &lt;span class="caps"&gt;JSON&lt;/span&gt; et binaire qui doivent être versionnées et synchronisées par &lt;p&gt;Il s&amp;#8217;agit de données &lt;span class="caps"&gt;JSON&lt;/span&gt; et binaire qui doivent être versionnées et synchronisées par
les navigateurs (&lt;em&gt;lecture seule&lt;/em&gt;).&lt;/p&gt; les navigateurs (&lt;em&gt;lecture seule&lt;/em&gt;).&lt;/p&gt;
&lt;p&gt;Il y a plusieurs outils officiels qui existent pour gérer ça (&lt;em&gt;Balrog&lt;/em&gt;, &lt;em&gt;Shavar&lt;/em&gt;, &amp;#8230;), &lt;p&gt;Il y a plusieurs outils officiels qui existent pour gérer ça (&lt;em&gt;Balrog&lt;/em&gt;, &lt;em&gt;Shavar&lt;/em&gt;, &amp;#8230;),
et pour l&amp;#8217;instant, aucun choix n&amp;#8217;a été fait. Mais lors des conversations avec et pour l&amp;#8217;instant, aucun choix n&amp;#8217;a été fait. Mais lors des conversations avec
l&amp;#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour l&amp;#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour
ce genre de besoins internes, &lt;em&gt;Kinto&lt;/em&gt; est tout aussi pertinent&amp;nbsp;!&lt;/p&gt; ce genre de besoins internes, &lt;em&gt;Kinto&lt;/em&gt; est tout aussi pertinent&amp;nbsp;!&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La bonne nouvelle c&amp;#8217;est que toutes les fonctionnalités &lt;em&gt;third-party&lt;/em&gt; qui ont &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La bonne nouvelle c&amp;#8217;est que toutes les fonctionnalités &lt;em&gt;third-party&lt;/em&gt; qui ont
été intégrées récemment vont redevenir des &lt;em&gt;add-ons&lt;/em&gt; \o/.&lt;/td&gt;&lt;/tr&gt; été intégrées récemment vont redevenir des &lt;em&gt;add-ons&lt;/em&gt; \o/.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -3502,7 +3537,7 @@ un prototype pour améliorer &lt;em&gt;Awesome bar&lt;/em&gt;, qui fusionnerait
&lt;p&gt;Nous ne pouvons pas en dire beaucoup plus pour l&amp;#8217;instant, mais les fonctionnalités &lt;p&gt;Nous ne pouvons pas en dire beaucoup plus pour l&amp;#8217;instant, mais les fonctionnalités
de collections d&amp;#8217;enregistrements partagées entre utilisateurs de &lt;em&gt;Kinto&lt;/em&gt; de collections d&amp;#8217;enregistrements partagées entre utilisateurs de &lt;em&gt;Kinto&lt;/em&gt;
correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&amp;nbsp;:)&lt;/p&gt; correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&amp;nbsp;:)&lt;/p&gt;
&lt;div class="section" id="id5"&gt; &lt;div class="section" id="a-venir-2"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Nous serons donc probablement amenés, avant de la fin de l&amp;#8217;année, à introduire des &lt;p&gt;Nous serons donc probablement amenés, avant de la fin de l&amp;#8217;année, à introduire des
fonctionnalités d&amp;#8217;indexation et de recherche &lt;em&gt;full-text&lt;/em&gt; (comprendre &lt;em&gt;ElasticSearch&lt;/em&gt;). fonctionnalités d&amp;#8217;indexation et de recherche &lt;em&gt;full-text&lt;/em&gt; (comprendre &lt;em&gt;ElasticSearch&lt;/em&gt;).
@ -3524,7 +3559,7 @@ ou un équivalent à &lt;em&gt;Alexa.com Top 500&lt;/em&gt; pour fournir la comp
interroger le moteur de&amp;nbsp;recherche.&lt;/p&gt; interroger le moteur de&amp;nbsp;recherche.&lt;/p&gt;
&lt;p&gt;L&amp;#8217;exercice pourrait être poussé jusqu&amp;#8217;à la synchronisation d&amp;#8217;états &lt;em&gt;React&lt;/em&gt; &lt;p&gt;L&amp;#8217;exercice pourrait être poussé jusqu&amp;#8217;à la synchronisation d&amp;#8217;états &lt;em&gt;React&lt;/em&gt;
entre périphériques (par exemple pour les&amp;nbsp;onglets).&lt;/p&gt; entre périphériques (par exemple pour les&amp;nbsp;onglets).&lt;/p&gt;
&lt;div class="section" id="id7"&gt; &lt;div class="section" id="a-venir-3"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Si &lt;em&gt;browser.html&lt;/em&gt; doit stocker des données de navigation, il faudra ajouter &lt;p&gt;Si &lt;em&gt;browser.html&lt;/em&gt; doit stocker des données de navigation, il faudra ajouter
des fonctionnalités de chiffrement sur le client &lt;span class="caps"&gt;JS&lt;/span&gt;. Ça tombe bien, c&amp;#8217;est un des fonctionnalités de chiffrement sur le client &lt;span class="caps"&gt;JS&lt;/span&gt;. Ça tombe bien, c&amp;#8217;est un
@ -3685,7 +3720,7 @@ du&amp;nbsp;sens.&lt;/p&gt;</content><category term="Réfléxions"></category></
et Kinto 1.0&amp;nbsp;!&lt;/p&gt; et Kinto 1.0&amp;nbsp;!&lt;/p&gt;
</summary><content type="html">&lt;p&gt;&lt;em&gt;Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&amp;nbsp;Mozilla&lt;/em&gt;&lt;/p&gt; </summary><content type="html">&lt;p&gt;&lt;em&gt;Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&amp;nbsp;Mozilla&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Aujourd&amp;#8217;hui, c&amp;#8217;est jour de fête : nous venons de publier Cliquet &lt;strong&gt;2.0&lt;/strong&gt; &lt;p&gt;Aujourd&amp;#8217;hui, c&amp;#8217;est jour de fête : nous venons de publier Cliquet &lt;strong&gt;2.0&lt;/strong&gt;
&lt;a class="footnote-reference" href="#id5" id="id1"&gt;[1]&lt;/a&gt; et Kinto &lt;strong&gt;1.0&lt;/strong&gt; &lt;a class="footnote-reference" href="#id6" id="id2"&gt;[2]&lt;/a&gt;.&lt;/p&gt; &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt; et Kinto &lt;strong&gt;1.0&lt;/strong&gt; &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote class="epigraph"&gt; &lt;blockquote class="epigraph"&gt;
&lt;p&gt;L&amp;#8217;aboutissement de 3 années de R&amp;amp;D&amp;nbsp;!&lt;/p&gt; &lt;p&gt;L&amp;#8217;aboutissement de 3 années de R&amp;amp;D&amp;nbsp;!&lt;/p&gt;
&lt;p class="attribution"&gt;&amp;mdash;Rémy&lt;/p&gt; &lt;p class="attribution"&gt;&amp;mdash;Rémy&lt;/p&gt;
@ -3706,7 +3741,7 @@ fonctionnalités que l&amp;#8217;on attendait depuis longtemps, comme la gestion
s&amp;#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées, s&amp;#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées,
notamment sur la documentation et les&amp;nbsp;performances.&lt;/p&gt; notamment sur la documentation et les&amp;nbsp;performances.&lt;/p&gt;
&lt;p&gt;On peut déjà entrevoir à quoi l&amp;#8217;écosystème va ressembler, et c&amp;#8217;est prometteur. &lt;p&gt;On peut déjà entrevoir à quoi l&amp;#8217;écosystème va ressembler, et c&amp;#8217;est prometteur.
Il y a déjà un client JavaScript &lt;a class="footnote-reference" href="#id7" id="id3"&gt;[3]&lt;/a&gt; dont l&amp;#8217;objectif est de synchroniser les Il y a déjà un client JavaScript &lt;a class="footnote-reference" href="#footnote-3" id="footnote-reference-3"&gt;[3]&lt;/a&gt; dont l&amp;#8217;objectif est de synchroniser les
données locales du navigateur avec une instance de&amp;nbsp;Kinto.&lt;/p&gt; données locales du navigateur avec une instance de&amp;nbsp;Kinto.&lt;/p&gt;
&lt;p&gt;N&amp;#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez &lt;p&gt;N&amp;#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez
des problématiques proches : nous accueillons avec plaisir toutes sortes de des problématiques proches : nous accueillons avec plaisir toutes sortes de
@ -3715,34 +3750,34 @@ la solution ou de la manière de communiquer avec le monde extérieur. Si vous
souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous
contacter sur le canal &lt;a class="reference external" href="irc://irc.mozilla.org/#storage"&gt;#storage&lt;/a&gt; sur le réseau &lt;span class="caps"&gt;IRC&lt;/span&gt; de&amp;nbsp;Mozilla.&lt;/p&gt; contacter sur le canal &lt;a class="reference external" href="irc://irc.mozilla.org/#storage"&gt;#storage&lt;/a&gt; sur le réseau &lt;span class="caps"&gt;IRC&lt;/span&gt; de&amp;nbsp;Mozilla.&lt;/p&gt;
&lt;p&gt;Et ce n&amp;#8217;est que le début ! Le futur se dessine dans notre feuille de route &lt;p&gt;Et ce n&amp;#8217;est que le début ! Le futur se dessine dans notre feuille de route
&lt;a class="footnote-reference" href="#id8" id="id4"&gt;[4]&lt;/a&gt;.&lt;/p&gt; &lt;a class="footnote-reference" href="#footnote-4" id="footnote-reference-4"&gt;[4]&lt;/a&gt;.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id5" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; est une boite à outils pour faciliter l&amp;#8217;implémentation de &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; est une boite à outils pour faciliter l&amp;#8217;implémentation de
microservices &lt;span class="caps"&gt;HTTP&lt;/span&gt; tels que les APIs &lt;em&gt;&lt;span class="caps"&gt;REST&lt;/span&gt;&lt;/em&gt; ayant des besoins de microservices &lt;span class="caps"&gt;HTTP&lt;/span&gt; tels que les APIs &lt;em&gt;&lt;span class="caps"&gt;REST&lt;/span&gt;&lt;/em&gt; ayant des besoins de
synchronisation.&lt;/td&gt;&lt;/tr&gt; synchronisation.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id6" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Kinto&lt;/strong&gt; est un service pour stocker, synchroniser et partager des données &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Kinto&lt;/strong&gt; est un service pour stocker, synchroniser et partager des données
arbitraires, attachées à un compte Firefox (mais le système d&amp;#8217;authentification arbitraires, attachées à un compte Firefox (mais le système d&amp;#8217;authentification
est &lt;em&gt;pluggable&lt;/em&gt;).&lt;/td&gt;&lt;/tr&gt; est &lt;em&gt;pluggable&lt;/em&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id7" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-3" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Cliquetis, la bibliothèque JavaScript pour consommer l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt; &lt;span class="caps"&gt;HTTP&lt;/span&gt; de Kinto — &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Cliquetis, la bibliothèque JavaScript pour consommer l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt; &lt;span class="caps"&gt;HTTP&lt;/span&gt; de Kinto —
&lt;a class="reference external" href="https://github.com/mozilla-services/cliquetis"&gt;https://github.com/mozilla-services/cliquetis&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="https://github.com/mozilla-services/cliquetis"&gt;https://github.com/mozilla-services/cliquetis&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id8" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-4" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id4"&gt;[4]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La feuille de route de Kinto: &lt;a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap"&gt;https://github.com/mozilla-services/kinto/wiki/roadmap&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-4"&gt;[4]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La feuille de route de Kinto: &lt;a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap"&gt;https://github.com/mozilla-services/kinto/wiki/roadmap&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
</content><category term="Technologie"></category></entry><entry><title>Service de nuages : Stocker et interroger les permissions avec Kinto</title><link href="https://blog.notmyidea.org/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html" rel="alternate"></link><published>2015-05-26T00:00:00+02:00</published><updated>2015-05-26T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2015-05-26:/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html</id><summary type="html">&lt;p class="first last"&gt;Comment faire pour stocker et interroger la base de données au sujet des permissions avec Kinto&amp;nbsp;?&lt;/p&gt; </content><category term="Technologie"></category></entry><entry><title>Service de nuages : Stocker et interroger les permissions avec Kinto</title><link href="https://blog.notmyidea.org/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html" rel="alternate"></link><published>2015-05-26T00:00:00+02:00</published><updated>2015-05-26T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2015-05-26:/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html</id><summary type="html">&lt;p class="first last"&gt;Comment faire pour stocker et interroger la base de données au sujet des permissions avec Kinto&amp;nbsp;?&lt;/p&gt;
@ -3858,13 +3893,13 @@ avantages (lisibilité, unicité, cohérence avec les&amp;nbsp;URLs)&lt;/p&gt;
&lt;div class="section" id="les-tables"&gt; &lt;div class="section" id="les-tables"&gt;
&lt;h3&gt;Les&amp;nbsp;tables&lt;/h3&gt; &lt;h3&gt;Les&amp;nbsp;tables&lt;/h3&gt;
&lt;p&gt;Pour le stockage des principals et des&amp;nbsp;permissions:&lt;/p&gt; &lt;p&gt;Pour le stockage des principals et des&amp;nbsp;permissions:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;La table &lt;em&gt;perms&lt;/em&gt; va associer des &lt;em&gt;principals&lt;/em&gt; à chaque &lt;em&gt;&lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/em&gt;&amp;nbsp;(e.g.&amp;#8220;/buckets/blog:write&amp;#8220;).&lt;/p&gt; &lt;p&gt;La table &lt;em&gt;perms&lt;/em&gt; va associer des &lt;em&gt;principals&lt;/em&gt; à chaque &lt;em&gt;&lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/em&gt;&amp;nbsp;(e.g.&amp;#8220;/buckets/blog:write&amp;#8220;).&lt;/p&gt;
&lt;p&gt;Pour le stockage des&amp;nbsp;données:&lt;/p&gt; &lt;p&gt;Pour le stockage des&amp;nbsp;données:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt; &lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;write_principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt; &lt;span class="n"&gt;read_principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;La colonne &lt;em&gt;parent_id&lt;/em&gt; permet de savoir à qui appartient l&amp;#8217;objet &lt;p&gt;La colonne &lt;em&gt;parent_id&lt;/em&gt; permet de savoir à qui appartient l&amp;#8217;objet
(e.g. groupe d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, collection d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, &lt;em&gt;record&lt;/em&gt; d&amp;#8217;une (e.g. groupe d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, collection d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, &lt;em&gt;record&lt;/em&gt; d&amp;#8217;une
@ -3872,53 +3907,53 @@ collection,&amp;nbsp;&amp;#8230;).&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="exemple-d-utilisateur"&gt; &lt;div class="section" id="exemple-d-utilisateur"&gt;
&lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;utilisateur&lt;/h3&gt; &lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;utilisateur&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:alexis&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:alexis&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="exemple-d-objets"&gt; &lt;div class="section" id="exemple-d-objets"&gt;
&lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;objets&lt;/h3&gt; &lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;objets&lt;/h3&gt;
&lt;div class="section" id="bucket"&gt; &lt;div class="section" id="bucket"&gt;
&lt;h4&gt;Bucket&lt;/h4&gt; &lt;h4&gt;Bucket&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;bucket&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;bucket&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;blog&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;blog&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{&amp;quot;fxa:alexis&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;fxa:alexis&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="group"&gt; &lt;div class="section" id="group"&gt;
&lt;h4&gt;Group&lt;/h4&gt; &lt;h4&gt;Group&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/groups/moderators&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/groups/moderators&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;group&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;group&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;moderators&amp;quot;, &amp;quot;members&amp;quot;: [&amp;#39;&lt;/span&gt;&lt;span class="n"&gt;fxa&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="n"&gt;natim&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;]}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;moderators&amp;quot;, &amp;quot;members&amp;quot;: [&amp;#39;&lt;/span&gt;&lt;span class="n"&gt;fxa&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="n"&gt;natim&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;]}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ce groupe peut être gére par &lt;tt class="docutils literal"&gt;fxa:alexis&lt;/tt&gt; puisqu&amp;#8217;il a la permission &lt;p&gt;Ce groupe peut être gére par &lt;tt class="docutils literal"&gt;fxa:alexis&lt;/tt&gt; puisqu&amp;#8217;il a la permission
&lt;tt class="docutils literal"&gt;write&lt;/tt&gt; dans le &lt;em&gt;bucket&lt;/em&gt;&amp;nbsp;parent.&lt;/p&gt; &lt;tt class="docutils literal"&gt;write&lt;/tt&gt; dans le &lt;em&gt;bucket&lt;/em&gt;&amp;nbsp;parent.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="collection"&gt; &lt;div class="section" id="collection"&gt;
&lt;h4&gt;Collection&lt;/h4&gt; &lt;h4&gt;Collection&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;collection&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;collection&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;article&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;article&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;system.Everyone&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;system.Everyone&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Cette collection d&amp;#8217;articles peut être lue par tout le monde, &lt;p&gt;Cette collection d&amp;#8217;articles peut être lue par tout le monde,
et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderators&lt;/tt&gt;, ainsi que et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderators&lt;/tt&gt;, ainsi que
@ -3926,56 +3961,56 @@ et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderato
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="records"&gt; &lt;div class="section" id="records"&gt;
&lt;h4&gt;Records&lt;/h4&gt; &lt;h4&gt;Records&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;quot;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;quot;,&lt;/span&gt;
&lt;span class="s1"&gt; &amp;quot;title&amp;quot;: &amp;quot;Stocker les permissions&amp;quot;, ...}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt; &amp;quot;title&amp;quot;: &amp;quot;Stocker les permissions&amp;quot;, ...}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="interroger-les-permissions"&gt; &lt;div class="section" id="interroger-les-permissions"&gt;
&lt;h3&gt;Interroger les&amp;nbsp;permissions&lt;/h3&gt; &lt;h3&gt;Interroger les&amp;nbsp;permissions&lt;/h3&gt;
&lt;div class="section" id="id1"&gt; &lt;div class="section" id="obtenir-la-liste-des-principals-d-un-ace-1"&gt;
&lt;h4&gt;Obtenir la liste des &amp;#8220;principals&amp;#8221; d&amp;#8217;un &lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/h4&gt; &lt;h4&gt;Obtenir la liste des &amp;#8220;principals&amp;#8221; d&amp;#8217;un &lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;Comme vu plus haut, pour vérifier une permission, on fait l&amp;#8217;union des &lt;p&gt;Comme vu plus haut, pour vérifier une permission, on fait l&amp;#8217;union des
&lt;em&gt;principals&lt;/em&gt; requis par les objets hérités, et on teste leur &lt;em&gt;principals&lt;/em&gt; requis par les objets hérités, et on teste leur
intersection avec ceux de&amp;nbsp;l&amp;#8217;utilisateur:&lt;/p&gt; intersection avec ceux de&amp;nbsp;l&amp;#8217;utilisateur:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;WITH&lt;/span&gt; &lt;span class="n"&gt;required_principals&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;WITH&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;required_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;perms&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;ace&lt;/span&gt; &lt;span class="k"&gt;IN&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;IN&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;user_principals&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;COUNT&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;COUNT&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;user_principals&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;INNER&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;required_principals&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INNER&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;JOIN&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;required_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;ON&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;ON&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="filtrer-les-objets-en-fonction-des-permissions"&gt; &lt;div class="section" id="filtrer-les-objets-en-fonction-des-permissions"&gt;
&lt;h4&gt;Filtrer les objets en fonction des&amp;nbsp;permissions&lt;/h4&gt; &lt;h4&gt;Filtrer les objets en fonction des&amp;nbsp;permissions&lt;/h4&gt;
&lt;p&gt;Pour filtrer les objets, on fait une simple intersection de liste &lt;p&gt;Pour filtrer les objets, on fait une simple intersection de liste
(&lt;em&gt;merci PostgreSQL&lt;/em&gt;):&lt;/p&gt; (&lt;em&gt;merci PostgreSQL&lt;/em&gt;):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="k"&gt;OR&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;OR&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Les listes s&amp;#8217;indexent bien, notamment grâce aux &lt;a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html"&gt;index &lt;span class="caps"&gt;GIN&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Les listes s&amp;#8217;indexent bien, notamment grâce aux &lt;a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html"&gt;index &lt;span class="caps"&gt;GIN&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
@ -4421,7 +4456,7 @@ une réponse satisfaisante à ces&amp;nbsp;besoins.&lt;/p&gt;
&lt;div class="section" id="le-concept-de-principal"&gt; &lt;div class="section" id="le-concept-de-principal"&gt;
&lt;h3&gt;Le concept de « principal&amp;nbsp;»&lt;/h3&gt; &lt;h3&gt;Le concept de « principal&amp;nbsp;»&lt;/h3&gt;
&lt;p&gt;Un &lt;em&gt;principal&lt;/em&gt;, en sécurité informatique, est une entité qui peut être &lt;p&gt;Un &lt;em&gt;principal&lt;/em&gt;, en sécurité informatique, est une entité qui peut être
authentifiée par un système informatique. &lt;a class="footnote-reference" href="#id2" id="id1"&gt;[1]&lt;/a&gt; En Français il s&amp;#8217;agit authentifiée par un système informatique. &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt; En Français il s&amp;#8217;agit
du « commettant », l&amp;#8217;acteur qui commet l&amp;#8217;action (oui, le terme est conceptuel&amp;nbsp;!)&lt;/p&gt; du « commettant », l&amp;#8217;acteur qui commet l&amp;#8217;action (oui, le terme est conceptuel&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;Il peut s&amp;#8217;agir aussi bien d&amp;#8217;un individu, d&amp;#8217;un ordinateur, d&amp;#8217;un &lt;p&gt;Il peut s&amp;#8217;agir aussi bien d&amp;#8217;un individu, d&amp;#8217;un ordinateur, d&amp;#8217;un
service ou d&amp;#8217;un groupe regroupant l&amp;#8217;une de ces entités, ce qui service ou d&amp;#8217;un groupe regroupant l&amp;#8217;une de ces entités, ce qui
@ -4430,10 +4465,10 @@ est plus large que le classique « &lt;em&gt;user id&lt;/em&gt;&amp;nbsp;».&lt;
&lt;p&gt;Par exemple, un utilisateur est identifié de manière unique lors de la &lt;p&gt;Par exemple, un utilisateur est identifié de manière unique lors de la
connexion par le système d&amp;#8217;authentification dont le rôle est de connexion par le système d&amp;#8217;authentification dont le rôle est de
définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisateur se&amp;nbsp;connectant.&lt;/p&gt; définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisateur se&amp;nbsp;connectant.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id2" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Pour en savoir plus sur les &lt;em&gt;principals&lt;/em&gt; : &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Pour en savoir plus sur les &lt;em&gt;principals&lt;/em&gt; :
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29"&gt;https://en.wikipedia.org/wiki/Principal_%28computer_security%29&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29"&gt;https://en.wikipedia.org/wiki/Principal_%28computer_security%29&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -4442,17 +4477,17 @@ définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisate
&lt;h3&gt;La différence entre rôle et&amp;nbsp;groupe&lt;/h3&gt; &lt;h3&gt;La différence entre rôle et&amp;nbsp;groupe&lt;/h3&gt;
&lt;p&gt;De but en blanc, il n&amp;#8217;est pas évident de définir précisément la &lt;p&gt;De but en blanc, il n&amp;#8217;est pas évident de définir précisément la
différence entre ces deux concepts qui permettent d&amp;#8217;associer différence entre ces deux concepts qui permettent d&amp;#8217;associer
des permissions à un groupe de &lt;em&gt;principals&lt;/em&gt;. &lt;a class="footnote-reference" href="#id4" id="id3"&gt;[2]&lt;/a&gt;&lt;/p&gt; des permissions à un groupe de &lt;em&gt;principals&lt;/em&gt;. &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;La différence est principalement sémantique. Mais on peut y voir une &lt;p&gt;La différence est principalement sémantique. Mais on peut y voir une
différence dans la « direction » de la relation entre les deux&amp;nbsp;concepts.&lt;/p&gt; différence dans la « direction » de la relation entre les deux&amp;nbsp;concepts.&lt;/p&gt;
&lt;ul class="simple"&gt; &lt;ul class="simple"&gt;
&lt;li&gt;Un rôle est une liste de permissions que l&amp;#8217;on associe à un &lt;em&gt;principal&lt;/em&gt;.&lt;/li&gt; &lt;li&gt;Un rôle est une liste de permissions que l&amp;#8217;on associe à un &lt;em&gt;principal&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;Un groupe est une liste de &lt;em&gt;principals&lt;/em&gt; que l&amp;#8217;on peut associer à une&amp;nbsp;permission.&lt;/li&gt; &lt;li&gt;Un groupe est une liste de &lt;em&gt;principals&lt;/em&gt; que l&amp;#8217;on peut associer à une&amp;nbsp;permission.&lt;/li&gt;
&lt;/ul&gt; &lt;/ul&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Plus d&amp;#8217;informations : &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Plus d&amp;#8217;informations :
&lt;a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference"&gt;http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference"&gt;http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -5099,16 +5134,16 @@ terme, et que &lt;em&gt;Remote Storage&lt;/em&gt; devienne une facette de notre&
&lt;p&gt;&lt;a href="http://pouchdb.com/"&gt;PouchDB&lt;/a&gt; est une bibliothèque JavaScript qui &lt;p&gt;&lt;a href="http://pouchdb.com/"&gt;PouchDB&lt;/a&gt; est une bibliothèque JavaScript qui
permet de manipuler des enregistrements en local et de les synchroniser permet de manipuler des enregistrements en local et de les synchroniser
vers une base&amp;nbsp;distante.&lt;/p&gt; vers une base&amp;nbsp;distante.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="n"&gt;PouchDB&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dbname&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PouchDB&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dbname&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;put&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;put&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;dave@gmail.com&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dave@gmail.com&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;David&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;David&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;68&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;68&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;replicate&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://example.com/mydb&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;replicate&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://example.com/mydb&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Le projet a le vent en poupe, bénéficie de nombreux contributeurs, &lt;p&gt;Le projet a le vent en poupe, bénéficie de nombreux contributeurs,
@ -5575,33 +5610,33 @@ on the server (so you don&amp;#8217;t need to store&amp;nbsp;anything).&lt;/p&gt
finally came up factorizing everything in a library for express, named finally came up factorizing everything in a library for express, named
&lt;a href="https://github.com/mozilla-services/express-hawkauth"&gt;express-hawkauth&lt;/a&gt;.&lt;/p&gt; &lt;a href="https://github.com/mozilla-services/express-hawkauth"&gt;express-hawkauth&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In order to plug it in your application, you&amp;#8217;ll need to use it as a&amp;nbsp;middleware:&lt;/p&gt; &lt;p&gt;In order to plug it in your application, you&amp;#8217;ll need to use it as a&amp;nbsp;middleware:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;express&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;hawk&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express-hawkauth&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express-hawkauth&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;hawkMiddleware&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;hawkOptions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkOptions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;getSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;getSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="k"&gt;pass&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;algorithm&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;which&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;pass&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;given&lt;/span&gt; &lt;span class="n"&gt;token&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;First&lt;/span&gt; &lt;span class="n"&gt;argument&lt;/span&gt; &lt;span class="n"&gt;of&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;callback&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;potential&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;given&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;token&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;First&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;argument&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;of&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;callback&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;potential&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;key&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;sha256&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;key&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;sha256&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;createSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;createSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="n"&gt;stores&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;session&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;given&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;which&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;stores&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;given&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;Argument&lt;/span&gt; &lt;span class="n"&gt;returned&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;potential&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Argument&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;returned&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;potential&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;setUser&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;setUser&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;that&lt;/span&gt; &lt;span class="n"&gt;uses&lt;/span&gt; &lt;span class="n"&gt;req&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;hawkId&lt;/span&gt; &lt;span class="n"&gt;when&lt;/span&gt; &lt;span class="n"&gt;they&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;re known so&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;that&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;uses&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkId&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;when&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;they&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;re known so&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;that&lt;/span&gt; &lt;span class="n"&gt;it&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;tweak&lt;/span&gt; &lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;For&lt;/span&gt; &lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;you&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;store&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;that&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tweak&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;For&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;you&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;store&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;as&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;/hawk-enabled-endpoint&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;/hawk-enabled-endpoint&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;If you pass the createSession parameter, all non-authenticated requests &lt;p&gt;If you pass the createSession parameter, all non-authenticated requests
@ -6622,8 +6657,8 @@ ailleurs, pour finalement déployer la chose chez
&lt;p&gt;Après quelques péripéties, j&amp;#8217;ai réussi à faire tourner le tout, ça à été &lt;p&gt;Après quelques péripéties, j&amp;#8217;ai réussi à faire tourner le tout, ça à été
un peu la bataille au départ pour installer virtualenv (j&amp;#8217;ai du faire un peu la bataille au départ pour installer virtualenv (j&amp;#8217;ai du faire
des changements dans mon &lt;span class="caps"&gt;PATH&lt;/span&gt; pour que ça puisse marcher), voici mon&amp;nbsp;`.bash_profile`:&lt;/p&gt; des changements dans mon &lt;span class="caps"&gt;PATH&lt;/span&gt; pour que ça puisse marcher), voici mon&amp;nbsp;`.bash_profile`:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="n"&gt;PYTHONPATH&lt;/span&gt;&lt;span class="o"&gt;=~/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PYTHONPATH&lt;/span&gt;&lt;span class="o"&gt;=~/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="o"&gt;=$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;bin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt; &lt;span class="k"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="o"&gt;=$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;bin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Et après y&amp;#8217;a plus qu&amp;#8217;à installer avec&amp;nbsp;`easy_install`:&lt;/p&gt; &lt;p&gt;Et après y&amp;#8217;a plus qu&amp;#8217;à installer avec&amp;nbsp;`easy_install`:&lt;/p&gt;
@ -6723,7 +6758,7 @@ PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;On peut donc spécifier des &amp;#8220;sauts&amp;#8221; ssh du&amp;nbsp;style:&lt;/p&gt; &lt;p&gt;On peut donc spécifier des &amp;#8220;sauts&amp;#8221; ssh du&amp;nbsp;style:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;root&lt;/span&gt;&lt;span class="mf"&gt;@91.25.25.25&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;192.168.1.1&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;ssh&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;root&lt;/span&gt;&lt;span class="mf"&gt;@91.25.25.25&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;192.168.1.1&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ensuite on peut essayer de&amp;nbsp;rajouter:&lt;/p&gt; &lt;p&gt;Ensuite on peut essayer de&amp;nbsp;rajouter:&lt;/p&gt;
@ -6808,7 +6843,7 @@ décembre&amp;nbsp;2012:&lt;/p&gt;
&lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de &lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de
s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt; s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt;
&lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer &lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer
l&amp;#8217;industrie après les dégats de la guerre et les &lt;/p&gt;</summary><content type="html"> l&amp;#8217;industrie après les dégats de la guerre …&lt;/p&gt;</summary><content type="html">
&lt;p&gt;&lt;a href="http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed"&gt;http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed"&gt;http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de &lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de
s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt; s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt;
@ -8657,16 +8692,16 @@ $ ant
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Here is a simple example of how to use boilerpipe in Java, from their&amp;nbsp;sources&lt;/p&gt; &lt;p&gt;Here is a simple example of how to use boilerpipe in Java, from their&amp;nbsp;sources&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;de.l3s.boilerpipe.demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;de.l3s.boilerpipe.demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.net.URL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;java.net.URL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;de.l3s.boilerpipe.extractors.ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;de.l3s.boilerpipe.extractors.ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Oneliner&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="kd"&gt;public&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Oneliner&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="kd"&gt;throws&lt;/span&gt; &lt;span class="n"&gt;Exception&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;public&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;static&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;void&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;throws&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Exception&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt; &lt;span class="n"&gt;url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://notmyidea.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://notmyidea.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;INSTANCE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getText&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;INSTANCE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getText&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;To run&amp;nbsp;it:&lt;/p&gt; &lt;p&gt;To run&amp;nbsp;it:&lt;/p&gt;
@ -9030,14 +9065,14 @@ unison .vimrc ssh://notmyidea.org:20006/.vimrc
&lt;p&gt;It is also possible to put all the informations in a config file, and &lt;p&gt;It is also possible to put all the informations in a config file, and
then to only run unison. (fire up vim&amp;nbsp;\~/.unison/default.prf.&lt;/p&gt; then to only run unison. (fire up vim&amp;nbsp;\~/.unison/default.prf.&lt;/p&gt;
&lt;p&gt;Here is my&amp;nbsp;config:&lt;/p&gt; &lt;p&gt;Here is my&amp;nbsp;config:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; &lt;span class="na"&gt;root&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;/home/alexis&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;/home/alexis&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;root&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;ssh://notmyidea.org:20006&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;ssh://notmyidea.org:20006&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;.vimrc&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;.vimrc&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;dotfiles&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;dotfiles&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;dev&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;dev&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;follow&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;Name *&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;follow&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;Name *&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;My vimrc is in fact a symbolic link on my laptop, but I don&amp;#8217;t want to &lt;p&gt;My vimrc is in fact a symbolic link on my laptop, but I don&amp;#8217;t want to
@ -9465,35 +9500,35 @@ $ gnome-background-generator -p ~/Images/walls -s
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Here is a extract of the&amp;nbsp;`&amp;#8212;help`:&lt;/p&gt; &lt;p&gt;Here is a extract of the&amp;nbsp;`&amp;#8212;help`:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;shell&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;shell&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;simple&lt;/span&gt; &lt;span class="n"&gt;command&lt;/span&gt; &lt;span class="n"&gt;line&lt;/span&gt; &lt;span class="k"&gt;tool&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;generate&lt;/span&gt; &lt;span class="n"&gt;an&lt;/span&gt; &lt;span class="n"&gt;XML&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;use&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;simple&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;command&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;line&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;tool&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;generate&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;an&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;XML&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;use&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;wallpapers&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;have&lt;/span&gt; &lt;span class="n"&gt;dynamic&lt;/span&gt; &lt;span class="n"&gt;walls&lt;/span&gt; &lt;span class="n"&gt;wallpapers&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;have&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;walls&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;optional&lt;/span&gt; &lt;span class="n"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;optional&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="n"&gt;show&lt;/span&gt; &lt;span class="n"&gt;this&lt;/span&gt; &lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="n"&gt;message&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;show&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;this&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;exit&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt; &lt;span class="n"&gt;Path&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;look&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;If&lt;/span&gt; &lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;look&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;If&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;no&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;will&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;used&lt;/span&gt; &lt;span class="n"&gt;too&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;outputing&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;used&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;too&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;outputing&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;Default&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;current&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Default&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;current&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;directory&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;directory&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Output&lt;/span&gt; &lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;If&lt;/span&gt; &lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="n"&gt;filename&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;If&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;no&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt; &lt;span class="n"&gt;will&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;generated&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;generated&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;path&lt;/span&gt; &lt;span class="n"&gt;containing&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;You&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;also&lt;/span&gt; &lt;span class="n"&gt;use&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;-&amp;quot;&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;containing&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;You&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;also&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;use&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;-&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;display&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;stdout&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;stdout&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;transition&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;transition&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Time&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;transitions&lt;/span&gt; &lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="n"&gt;last&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;default&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;transitions&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;must&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;last&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;default&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Time&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;picture&lt;/span&gt; &lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;displayed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;Default&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;picture&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;must&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;displayed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Default&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="mi"&gt;900&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="n"&gt;mn&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;900&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="n"&gt;mn&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;&amp;#39;&amp;#39;try to set the background using gnome-appearance-&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;#39;&amp;#39;try to set the background using gnome-appearance-&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt; properties&lt;/span&gt; &lt;span class="s1"&gt; properties&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt; -b, --debug&lt;/span&gt; &lt;span class="s1"&gt; -b, --debug&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="Technologie"></category></entry><entry><title>How to install NGINX + PHP 5.3 on FreeBSD.</title><link href="https://blog.notmyidea.org/how-to-install-nginx-php-53-on-freebsd.html" rel="alternate"></link><published>2010-10-10T00:00:00+02:00</published><updated>2010-10-10T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-10:/how-to-install-nginx-php-53-on-freebsd.html</id><summary type="html"> &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="Technologie"></category></entry><entry><title>How to install NGINX + PHP 5.3 on FreeBSD.</title><link href="https://blog.notmyidea.org/how-to-install-nginx-php-53-on-freebsd.html" rel="alternate"></link><published>2010-10-10T00:00:00+02:00</published><updated>2010-10-10T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-10:/how-to-install-nginx-php-53-on-freebsd.html</id><summary type="html">
&lt;ul&gt; &lt;ul&gt;
&lt;li&gt; &lt;li&gt;
@ -9536,30 +9571,30 @@ the&amp;nbsp;server.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s a simple thing in fact, but it could be good to have something &lt;p&gt;That&amp;#8217;s a simple thing in fact, but it could be good to have something
that will work without effort over&amp;nbsp;time.&lt;/p&gt; that will work without effort over&amp;nbsp;time.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s a sample of my&amp;nbsp;configuration:&lt;/p&gt; &lt;p&gt;Here&amp;#8217;s a sample of my&amp;nbsp;configuration:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;server&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;server_name&lt;/span&gt; &lt;span class="err"&gt;ndd&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;server_name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;ndd&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;set&lt;/span&gt; &lt;span class="err"&gt;$path&lt;/span&gt; &lt;span class="err"&gt;/path/to/your/files&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/path/to/your/files&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;root&lt;/span&gt; &lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;location&lt;/span&gt; &lt;span class="err"&gt;/&lt;/span&gt; &lt;span class="err"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;index&lt;/span&gt; &lt;span class="err"&gt;index.php&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;index&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;index.php&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;location&lt;/span&gt; &lt;span class="o"&gt;~*&lt;/span&gt; &lt;span class="o"&gt;^.+.(&lt;/span&gt;&lt;span class="nt"&gt;jpg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;jpeg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;gif&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;css&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;png&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;js&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;ico&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;xml&lt;/span&gt;&lt;span class="o"&gt;)$&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;~*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;^.+.(&lt;/span&gt;&lt;span class="nt"&gt;jpg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;jpeg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;gif&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;css&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;png&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;js&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;ico&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;xml&lt;/span&gt;&lt;span class="o"&gt;)$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;access_log&lt;/span&gt; &lt;span class="err"&gt;off&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;access_log&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;off&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;expires&lt;/span&gt; &lt;span class="err"&gt;30d&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;expires&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;30d&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;location&lt;/span&gt; &lt;span class="o"&gt;~&lt;/span&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;php&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;php&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;fastcgi_param&lt;/span&gt; &lt;span class="err"&gt;SCRIPT_FILENAME&lt;/span&gt; &lt;span class="err"&gt;$path$fastcgi_script_name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_param&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;SCRIPT_FILENAME&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path$fastcgi_script_name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;fastcgi_pass&lt;/span&gt; &lt;span class="err"&gt;backend&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_pass&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;backend&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;include&lt;/span&gt; &lt;span class="err"&gt;fastcgi_params&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;include&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_params&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;}&lt;/span&gt; &lt;span class="err"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;upstream&lt;/span&gt; &lt;span class="nt"&gt;backend&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nt"&gt;upstream&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;server&lt;/span&gt; &lt;span class="err"&gt;127.0.0.1:9000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;127.0.0.1:9000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;And that&amp;#8217;s it&amp;nbsp;!&lt;/p&gt;</content><category term="Technologie"></category></entry><entry><title>Pelican, a simple static blog generator in python</title><link href="https://blog.notmyidea.org/pelican-a-simple-static-blog-generator-in-python.html" rel="alternate"></link><published>2010-10-06T00:00:00+02:00</published><updated>2010-10-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-06:/pelican-a-simple-static-blog-generator-in-python.html</id><summary type="html"> &lt;p&gt;And that&amp;#8217;s it&amp;nbsp;!&lt;/p&gt;</content><category term="Technologie"></category></entry><entry><title>Pelican, a simple static blog generator in python</title><link href="https://blog.notmyidea.org/pelican-a-simple-static-blog-generator-in-python.html" rel="alternate"></link><published>2010-10-06T00:00:00+02:00</published><updated>2010-10-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-06:/pelican-a-simple-static-blog-generator-in-python.html</id><summary type="html">

View file

@ -1,5 +1,11 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>Alexis Métaireau</title><link>https://blog.notmyidea.org/</link><description></description><lastBuildDate>Thu, 11 Nov 2021 00:00:00 +0100</lastBuildDate><item><title>Conflit</title><link>https://blog.notmyidea.org/conflit.html</link><description> <rss version="2.0"><channel><title>Alexis Métaireau</title><link>https://blog.notmyidea.org/</link><description></description><lastBuildDate>Fri, 06 May 2022 00:00:00 +0200</lastBuildDate><item><title>Fatigue relationnelle</title><link>https://blog.notmyidea.org/fatigue-relationnelle.html</link><description>
&lt;p&gt;Depuis peu, je me retrouve confronté à mon manque d&amp;#8217;envie d&amp;#8217;être avec d&amp;#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&amp;#8217;il y a quelques&amp;nbsp;années.&lt;/p&gt;
&lt;p&gt;Je ne sais pas exactement d&amp;#8217;où cela vient : si c&amp;#8217;est un des nombreux effets …&lt;/p&gt;</description><pubDate>Fri, 06 May 2022 00:00:00 +0200</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2022-05-06:/fatigue-relationnelle.html</guid><category>Réfléxions</category></item><item><title>Accueil, transmission et confiance</title><link>https://blog.notmyidea.org/accueil-transmission-et-confiance.html</link><description>
&lt;p&gt;Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&amp;#8217;en réjouis pour plusieurs raisons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ma charge de travail devrait baisser de manière considérable et me permettre d&amp;#8217;avancer sur des sujets de fond, pour progressivement changer l&amp;#8217;équilibre dans mon métier&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;J&amp;#8217;ai désormais quelqu&amp;#8217;une avec …&lt;/li&gt;&lt;/ul&gt;</description><pubDate>Sun, 01 May 2022 00:00:00 +0200</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2022-05-01:/accueil-transmission-et-confiance.html</guid><category>Réfléxions</category></item><item><title>Conflit</title><link>https://blog.notmyidea.org/conflit.html</link><description>
&lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt; &lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt;
&lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt; &lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</description><pubDate>Thu, 11 Nov 2021 00:00:00 +0100</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2021-11-11:/conflit.html</guid><category>Réfléxions</category></item><item><title>Coopération et travail</title><link>https://blog.notmyidea.org/cooperation-et-travail.html</link><description> &lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</description><pubDate>Thu, 11 Nov 2021 00:00:00 +0100</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2021-11-11:/conflit.html</guid><category>Réfléxions</category></item><item><title>Coopération et travail</title><link>https://blog.notmyidea.org/cooperation-et-travail.html</link><description>
@ -146,7 +152,7 @@ une fois que tout est dépoyé ? Si on a une application très simple …&lt;/p&
&lt;/div&gt; &lt;/div&gt;
&lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt; &lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt;
&lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est &lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est
cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait pas etre &lt;/p&gt;</description><pubDate>Sun, 18 Oct 2015 00:00:00 +0200</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2015-10-18:/pyconfr-2015-we-dont-need-your-loop.html</guid><category>pyconfr2015</category></item><item><title>PyconFR 2015 — Cliquet</title><link>https://blog.notmyidea.org/pyconfr-2015-cliquet.html</link><description>&lt;div class="admonition note"&gt; cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait …&lt;/p&gt;</description><pubDate>Sun, 18 Oct 2015 00:00:00 +0200</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2015-10-18:/pyconfr-2015-we-dont-need-your-loop.html</guid><category>pyconfr2015</category></item><item><title>PyconFR 2015 — Cliquet</title><link>https://blog.notmyidea.org/pyconfr-2015-cliquet.html</link><description>&lt;div class="admonition note"&gt;
&lt;p class="first admonition-title"&gt;Note&lt;/p&gt; &lt;p class="first admonition-title"&gt;Note&lt;/p&gt;
&lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas &lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas
à les completer si&amp;nbsp;besoin.&lt;/p&gt; à les completer si&amp;nbsp;besoin.&lt;/p&gt;
@ -380,7 +386,7 @@ récemment, depuis que &lt;span class="caps"&gt;JM&lt;/span&gt; Ayrault s&amp;#8
&lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de &lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de
s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt; s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt;
&lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer &lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer
l&amp;#8217;industrie après les dégats de la guerre et les &lt;/p&gt;</description><pubDate>Thu, 20 Dec 2012 00:00:00 +0100</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2012-12-20:/semences-paysannes.html</guid><category>Notes</category></item><item><title>Languages</title><link>https://blog.notmyidea.org/languages.html</link><description> l&amp;#8217;industrie après les dégats de la guerre …&lt;/p&gt;</description><pubDate>Thu, 20 Dec 2012 00:00:00 +0100</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2012-12-20:/semences-paysannes.html</guid><category>Notes</category></item><item><title>Languages</title><link>https://blog.notmyidea.org/languages.html</link><description>
&lt;p&gt;Ouriel Ellert &amp;#8221; Languages&amp;#8221; avec Anthony Jambon &lt;span class="amp"&gt;&amp;amp;&lt;/span&gt; Natascha Rogers, c&amp;#8217;est enregistré par le &lt;a href="http://www.studiomezzanine.fr"&gt;Studio Mezzanine&lt;/a&gt; qui &lt;p&gt;Ouriel Ellert &amp;#8221; Languages&amp;#8221; avec Anthony Jambon &lt;span class="amp"&gt;&amp;amp;&lt;/span&gt; Natascha Rogers, c&amp;#8217;est enregistré par le &lt;a href="http://www.studiomezzanine.fr"&gt;Studio Mezzanine&lt;/a&gt; qui
comme d&amp;#8217;hab font un travail&amp;nbsp;impeccable.&lt;/p&gt; comme d&amp;#8217;hab font un travail&amp;nbsp;impeccable.&lt;/p&gt;
&lt;p&gt;Plus d&amp;#8217;infos sur Natasha Rogers et son groupe ici: &lt;p&gt;Plus d&amp;#8217;infos sur Natasha Rogers et son groupe ici:

View file

@ -1,5 +1,40 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Alexis Métaireau</title><link href="https://blog.notmyidea.org/" rel="alternate"></link><link href="https://blog.notmyidea.org/feeds/all-en.atom.xml" rel="self"></link><id>https://blog.notmyidea.org/</id><updated>2021-11-11T00:00:00+01:00</updated><entry><title>Conflit</title><link href="https://blog.notmyidea.org/conflit.html" rel="alternate"></link><published>2021-11-11T00:00:00+01:00</published><updated>2021-11-11T00:00:00+01:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2021-11-11:/conflit.html</id><summary type="html"> <feed xmlns="http://www.w3.org/2005/Atom"><title>Alexis Métaireau</title><link href="https://blog.notmyidea.org/" rel="alternate"></link><link href="https://blog.notmyidea.org/feeds/all-en.atom.xml" rel="self"></link><id>https://blog.notmyidea.org/</id><updated>2022-05-06T00:00:00+02:00</updated><entry><title>Fatigue relationnelle</title><link href="https://blog.notmyidea.org/fatigue-relationnelle.html" rel="alternate"></link><published>2022-05-06T00:00:00+02:00</published><updated>2022-05-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2022-05-06:/fatigue-relationnelle.html</id><summary type="html">
&lt;p&gt;Depuis peu, je me retrouve confronté à mon manque d&amp;#8217;envie d&amp;#8217;être avec d&amp;#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&amp;#8217;il y a quelques&amp;nbsp;années.&lt;/p&gt;
&lt;p&gt;Je ne sais pas exactement d&amp;#8217;où cela vient : si c&amp;#8217;est un des nombreux effets …&lt;/p&gt;</summary><content type="html">
&lt;p&gt;Depuis peu, je me retrouve confronté à mon manque d&amp;#8217;envie d&amp;#8217;être avec d&amp;#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&amp;#8217;il y a quelques&amp;nbsp;années.&lt;/p&gt;
&lt;p&gt;Je ne sais pas exactement d&amp;#8217;où cela vient : si c&amp;#8217;est un des nombreux effets psychologiques que le &lt;span class="caps"&gt;COVID&lt;/span&gt; à eu sur moi, si j&amp;#8217;accorde trop de place aux collectifs dans ma vie (travail, habitation, ami⋅es), ou si simplement mes envies ne sont plus les mêmes qu&amp;#8217;il y a quelques années, mais le résultat est bel et bien&amp;nbsp;là.&lt;/p&gt;
&lt;p&gt;Malgré tout j&amp;#8217;ai envie d&amp;#8217;être disponible pour les personnes qui comptent pour moi, et je réfléchis donc à différentes solutions : déménager et habiter en solo, faire moins d&amp;#8217;activités extérieures ou bien m&amp;#8217;isoler plus souvent dans les espaces&amp;nbsp;collectifs.&lt;/p&gt;
&lt;p&gt;Le fait de retourner potentiellement habiter en solo vient questionner mon rapport au collectif omniprésent dans ma vie, et qui jouit d&amp;#8217;un statut particulier pour moi. Le collectif semble être quasiment un &lt;em&gt;objectif en soi&lt;/em&gt;, et donc quelque-part partir de ces espaces collectifs serait une sorte&amp;nbsp;d&amp;#8217;échec.&lt;/p&gt;
&lt;p&gt;Entrouvrir cette possibilité me plaît parce-que ça me pousse à accepter mes limites et à mettre en balance ma qualité de relation aux autres avec mes valeurs collectivistes. Du collectif, oui, mais peut-être avec un mix différent&amp;nbsp;?&lt;/p&gt;
&lt;p&gt;Ça fait également écho à ma &lt;a href="conflit.html"&gt;gestion du conflit&lt;/a&gt;. Je me rends compte que j&amp;#8217;ai besoin d&amp;#8217;évoluer dans des collectifs qui partagent cette culture de la gestion du conflit (plutôt que de son&amp;nbsp;évitement).&lt;/p&gt;</content><category term="Réfléxions"></category></entry><entry><title>Accueil, transmission et confiance</title><link href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" rel="alternate"></link><published>2022-05-01T00:00:00+02:00</published><updated>2022-05-01T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2022-05-01:/accueil-transmission-et-confiance.html</id><summary type="html">
&lt;p&gt;Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&amp;#8217;en réjouis pour plusieurs raisons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ma charge de travail devrait baisser de manière considérable et me permettre d&amp;#8217;avancer sur des sujets de fond, pour progressivement changer l&amp;#8217;équilibre dans mon métier&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;J&amp;#8217;ai désormais quelqu&amp;#8217;une avec …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">
&lt;p&gt;Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&amp;#8217;en réjouis pour plusieurs raisons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ma charge de travail devrait baisser de manière considérable et me permettre d&amp;#8217;avancer sur des sujets de fond, pour progressivement changer l&amp;#8217;équilibre dans mon métier&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;J&amp;#8217;ai désormais quelqu&amp;#8217;une avec qui échanger sur les problématiques techniques du métier de livreur / commercial&amp;nbsp;;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Mais cela me fait aussi peur : cela va nécessairement bousculer l&amp;#8217;équilibre — parfois fragile — en place entre les associés actuels. Même si je vois cette évolution d&amp;#8217;un bon œil, les transitions sont parfois&amp;nbsp;difficiles.&lt;/p&gt;
&lt;p&gt;Ça me donne donc envie de construire une relation de confiance, et de donner les moyens à cette nouvelle arrivante de s&amp;#8217;y&amp;nbsp;retrouver.&lt;/p&gt;
&lt;h2 id="transmission"&gt;Transmission&lt;/h2&gt;
&lt;p&gt;Cela me pose donc de nouvelles questions, autour de l&amp;#8217;accueil et de la&amp;nbsp;transmission.&lt;/p&gt;
&lt;p&gt;Il me semble que l&amp;#8217;enjeu est de laisser une liberté d&amp;#8217;action progressive pour mettre la personne en confiance, puis de réussir à « lâcher le bébé&amp;nbsp;».&lt;/p&gt;
&lt;p&gt;Mais il s&amp;#8217;agit aussi de réussir à juger si la communication est aisée, et de ne pas nécessairement partir du principe que tout sera génial. C&amp;#8217;est une relation de travail, pas une&amp;nbsp;amitié.&lt;/p&gt;
&lt;p&gt;De son côté également il doit y avoir des questionnements. Je mets une attention particulière à les accueillir : les questionnement sont bienvenus, voir même&amp;nbsp;attendus.&lt;/p&gt;
&lt;p&gt;Le pire pour moi serait d&amp;#8217;avoir quelqu&amp;#8217;un qui à peur de ne pas savoir, et qui dit qu&amp;#8217;elle sait plutôt que de laisser la place pour&amp;nbsp;l&amp;#8217;apprentissage.&lt;/p&gt;
&lt;h2 id="faire-confiance"&gt;Faire&amp;nbsp;confiance&lt;/h2&gt;
&lt;p&gt;Il me semble qu&amp;#8217;il peut exister deux types de confiance&amp;nbsp;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;Laisser la possibilité de se tromper&lt;/em&gt; : il est possible de faire confiance à l&amp;#8217;autre dans son apprentissage, pour qu&amp;#8217;iel se sente légitime à faire &lt;em&gt;ses&lt;/em&gt; choix, ceux qu&amp;#8217;il⋅elle estimera les bons, et qui seront donc les bons — par définition&amp;nbsp;;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;La &lt;em&gt;confiance relationnelle&lt;/em&gt;, de l&amp;#8217;ordre des relations inter-personnelles, de la relation à l&amp;#8217;autre. Parce que c&amp;#8217;est aussi une rencontre, et que je cherche à créer des relations de travail où l&amp;#8217;on peut se dire les choses sans se blesser, en confiance&amp;nbsp;donc.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;</content><category term="Réfléxions"></category></entry><entry><title>Conflit</title><link href="https://blog.notmyidea.org/conflit.html" rel="alternate"></link><published>2021-11-11T00:00:00+01:00</published><updated>2021-11-11T00:00:00+01:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2021-11-11:/conflit.html</id><summary type="html">
&lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt; &lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt;
&lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt; &lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html"> &lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html">
@ -2417,7 +2452,7 @@ des tests souvent&amp;nbsp;!&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt; &lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt;
&lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est &lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est
cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait pas etre &lt;/p&gt;</summary><content type="html">&lt;div class="admonition note"&gt; cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait …&lt;/p&gt;</summary><content type="html">&lt;div class="admonition note"&gt;
&lt;p class="first admonition-title"&gt;Note&lt;/p&gt; &lt;p class="first admonition-title"&gt;Note&lt;/p&gt;
&lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas &lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas
à les completer si&amp;nbsp;besoin.&lt;/p&gt; à les completer si&amp;nbsp;besoin.&lt;/p&gt;
@ -3139,7 +3174,7 @@ d&amp;#8217;écriture sur une collection&amp;nbsp;d&amp;#8217;enregistrements.&l
&lt;li&gt;&lt;strong&gt;La synchronisation&lt;/strong&gt; : une série de leviers pour récupérer et renvoyer des &lt;li&gt;&lt;strong&gt;La synchronisation&lt;/strong&gt; : une série de leviers pour récupérer et renvoyer des
changements sur les données, sans perte ni collision, en utilisant les&amp;nbsp;timestamps.&lt;/li&gt; changements sur les données, sans perte ni collision, en utilisant les&amp;nbsp;timestamps.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Les permissions&lt;/strong&gt; : les droits d&amp;#8217;un utilisateur sur une collection ou un enregistrement &lt;li&gt;&lt;strong&gt;Les permissions&lt;/strong&gt; : les droits d&amp;#8217;un utilisateur sur une collection ou un enregistrement
(&lt;em&gt;encore frais et sur le point d&amp;#8217;être documenté&lt;/em&gt;) &lt;a class="footnote-reference" href="#id3" id="id1"&gt;[1]&lt;/a&gt;.&lt;/li&gt; (&lt;em&gt;encore frais et sur le point d&amp;#8217;être documenté&lt;/em&gt;) &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Opérations par lot&lt;/strong&gt;: une &lt;span class="caps"&gt;URL&lt;/span&gt; qui permet d&amp;#8217;envoyer une série de requêtes &lt;li&gt;&lt;strong&gt;Opérations par lot&lt;/strong&gt;: une &lt;span class="caps"&gt;URL&lt;/span&gt; qui permet d&amp;#8217;envoyer une série de requêtes
décrites en &lt;span class="caps"&gt;JSON&lt;/span&gt; et d&amp;#8217;obtenir les réponses&amp;nbsp;respectives.&lt;/li&gt; décrites en &lt;span class="caps"&gt;JSON&lt;/span&gt; et d&amp;#8217;obtenir les réponses&amp;nbsp;respectives.&lt;/li&gt;
&lt;/ul&gt; &lt;/ul&gt;
@ -3161,17 +3196,17 @@ de &lt;em&gt;Firefox Sync&lt;/em&gt; pour la gestion de la concurrence et de&amp
&lt;p&gt;Il est &lt;a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html"&gt;documenté en détail&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Il est &lt;a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html"&gt;documenté en détail&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Dans un monde idéal, ce protocole serait versionné, et formalisé dans une &lt;span class="caps"&gt;RFC&lt;/span&gt;. &lt;p&gt;Dans un monde idéal, ce protocole serait versionné, et formalisé dans une &lt;span class="caps"&gt;RFC&lt;/span&gt;.
En rêve, il existerait même plusieurs implémentations avec des technologies différentes En rêve, il existerait même plusieurs implémentations avec des technologies différentes
(Python, Go, Node, etc.). &lt;a class="footnote-reference" href="#id4" id="id2"&gt;[2]&lt;/a&gt;&lt;/p&gt; (Python, Go, Node, etc.). &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id3" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Voir notre &lt;a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html"&gt;article dédié sur les permissions&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Voir notre &lt;a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html"&gt;article dédié sur les permissions&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Rappel: nous sommes une toute petite équipe !&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Rappel: nous sommes une toute petite équipe !&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;/div&gt; &lt;/div&gt;
@ -3179,7 +3214,7 @@ En rêve, il existerait même plusieurs implémentations avec des technologies d
&lt;h2&gt;Le&amp;nbsp;toolkit&lt;/h2&gt; &lt;h2&gt;Le&amp;nbsp;toolkit&lt;/h2&gt;
&lt;div class="section" id="choix-techniques"&gt; &lt;div class="section" id="choix-techniques"&gt;
&lt;h3&gt;Choix&amp;nbsp;techniques&lt;/h3&gt; &lt;h3&gt;Choix&amp;nbsp;techniques&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;Cliquet&lt;/em&gt; implémente le protocole en Python (&lt;em&gt;2.7, 3.4+, pypy&lt;/em&gt;), avec &lt;a class="reference external" href="http://trypyramid.com/"&gt;Pyramid&lt;/a&gt; &lt;a class="footnote-reference" href="#id6" id="id5"&gt;[3]&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;em&gt;Cliquet&lt;/em&gt; implémente le protocole en Python (&lt;em&gt;2.7, 3.4+, pypy&lt;/em&gt;), avec &lt;a class="reference external" href="http://trypyramid.com/"&gt;Pyramid&lt;/a&gt; &lt;a class="footnote-reference" href="#footnote-3" id="footnote-reference-3"&gt;[3]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pyramid&lt;/strong&gt; est un framework Web qui va prendre en charge tout la partie &lt;span class="caps"&gt;HTTP&lt;/span&gt;, &lt;p&gt;&lt;strong&gt;Pyramid&lt;/strong&gt; est un framework Web qui va prendre en charge tout la partie &lt;span class="caps"&gt;HTTP&lt;/span&gt;,
et qui s&amp;#8217;avère pertinent aussi bien pour des petits projets que des plus&amp;nbsp;ambitieux.&lt;/p&gt; et qui s&amp;#8217;avère pertinent aussi bien pour des petits projets que des plus&amp;nbsp;ambitieux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cornice&lt;/strong&gt; est une extension de &lt;em&gt;Pyramid&lt;/em&gt;, écrite en partie par Alexis et Tarek, &lt;p&gt;&lt;strong&gt;Cornice&lt;/strong&gt; est une extension de &lt;em&gt;Pyramid&lt;/em&gt;, écrite en partie par Alexis et Tarek,
@ -3192,10 +3227,10 @@ rigoureux, gérer les entêtes &lt;span class="caps"&gt;CORS&lt;/span&gt;, fourn
&lt;p&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; utilise les deux précédents pour implémenter le protocole et fournir &lt;p&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; utilise les deux précédents pour implémenter le protocole et fournir
des abstractions, mais on a toujours &lt;em&gt;Pyramid&lt;/em&gt; et &lt;em&gt;Cornice&lt;/em&gt; sous la main pour des abstractions, mais on a toujours &lt;em&gt;Pyramid&lt;/em&gt; et &lt;em&gt;Cornice&lt;/em&gt; sous la main pour
aller au delà de ce qui est proposé&amp;nbsp;!&lt;/p&gt; aller au delà de ce qui est proposé&amp;nbsp;!&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id6" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-3" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id5"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Au tout début nous avons commencé une implémentation avec &lt;em&gt;Python-Eve&lt;/em&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Au tout début nous avons commencé une implémentation avec &lt;em&gt;Python-Eve&lt;/em&gt;
(Flask), mais n&amp;#8217;étions pas satisfaits de l&amp;#8217;approche pour la configuration (Flask), mais n&amp;#8217;étions pas satisfaits de l&amp;#8217;approche pour la configuration
de l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt;. En particulier du côté magique.&lt;/td&gt;&lt;/tr&gt; de l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt;. En particulier du côté magique.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
@ -3287,18 +3322,18 @@ avec &lt;em&gt;Colander&lt;/em&gt;, et ensuite déclarer une&amp;nbsp;resource:&
&lt;p&gt;Désormais, la resource &lt;span class="caps"&gt;CRUD&lt;/span&gt; est disponible sur &lt;tt class="docutils literal"&gt;/v1/bookmarks&lt;/tt&gt;, avec toutes &lt;p&gt;Désormais, la resource &lt;span class="caps"&gt;CRUD&lt;/span&gt; est disponible sur &lt;tt class="docutils literal"&gt;/v1/bookmarks&lt;/tt&gt;, avec toutes
les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc. les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc.
De base les enregistrements sont privés, par&amp;nbsp;utilisateur.&lt;/p&gt; De base les enregistrements sont privés, par&amp;nbsp;utilisateur.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="err"&gt;h&lt;/span&gt;&lt;span class="kc"&gt;tt&lt;/span&gt;&lt;span class="err"&gt;p&lt;/span&gt; &lt;span class="err"&gt;GET&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;http://localhost:8000/v1/bookmarks&amp;quot;&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;h&lt;/span&gt;&lt;span class="kc"&gt;tt&lt;/span&gt;&lt;span class="err"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;GET&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;http://localhost:8000/v1/bookmarks&amp;quot;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;HTTP/&lt;/span&gt;&lt;span class="mf"&gt;1.1&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt; &lt;span class="err"&gt;OK&lt;/span&gt; &lt;span class="err"&gt;HTTP/&lt;/span&gt;&lt;span class="mf"&gt;1.1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;OK&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;...&lt;/span&gt; &lt;span class="err"&gt;...&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;data&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;data&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;url&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;http://cliquet.readthedocs.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;url&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;http://cliquet.readthedocs.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;last_modified&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1437034418940&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;last_modified&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1437034418940&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="etape-3"&gt; &lt;div class="section" id="etape-3"&gt;
@ -4108,16 +4143,16 @@ terme, et que &lt;em&gt;Remote Storage&lt;/em&gt; devienne une facette de notre&
&lt;p&gt;&lt;a href="http://pouchdb.com/"&gt;PouchDB&lt;/a&gt; est une bibliothèque JavaScript qui &lt;p&gt;&lt;a href="http://pouchdb.com/"&gt;PouchDB&lt;/a&gt; est une bibliothèque JavaScript qui
permet de manipuler des enregistrements en local et de les synchroniser permet de manipuler des enregistrements en local et de les synchroniser
vers une base&amp;nbsp;distante.&lt;/p&gt; vers une base&amp;nbsp;distante.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="n"&gt;PouchDB&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dbname&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PouchDB&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dbname&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;put&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;put&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;dave@gmail.com&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dave@gmail.com&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;David&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;David&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;68&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;68&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;replicate&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://example.com/mydb&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;replicate&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://example.com/mydb&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Le projet a le vent en poupe, bénéficie de nombreux contributeurs, &lt;p&gt;Le projet a le vent en poupe, bénéficie de nombreux contributeurs,
@ -4513,33 +4548,33 @@ on the server (so you don&amp;#8217;t need to store&amp;nbsp;anything).&lt;/p&gt
finally came up factorizing everything in a library for express, named finally came up factorizing everything in a library for express, named
&lt;a href="https://github.com/mozilla-services/express-hawkauth"&gt;express-hawkauth&lt;/a&gt;.&lt;/p&gt; &lt;a href="https://github.com/mozilla-services/express-hawkauth"&gt;express-hawkauth&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In order to plug it in your application, you&amp;#8217;ll need to use it as a&amp;nbsp;middleware:&lt;/p&gt; &lt;p&gt;In order to plug it in your application, you&amp;#8217;ll need to use it as a&amp;nbsp;middleware:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;express&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;hawk&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express-hawkauth&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express-hawkauth&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;hawkMiddleware&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;hawkOptions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkOptions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;getSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;getSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="k"&gt;pass&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;algorithm&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;which&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;pass&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;given&lt;/span&gt; &lt;span class="n"&gt;token&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;First&lt;/span&gt; &lt;span class="n"&gt;argument&lt;/span&gt; &lt;span class="n"&gt;of&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;callback&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;potential&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;given&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;token&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;First&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;argument&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;of&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;callback&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;potential&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;key&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;sha256&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;key&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;sha256&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;createSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;createSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="n"&gt;stores&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;session&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;given&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;which&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;stores&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;given&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;Argument&lt;/span&gt; &lt;span class="n"&gt;returned&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;potential&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Argument&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;returned&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;potential&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;setUser&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;setUser&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;that&lt;/span&gt; &lt;span class="n"&gt;uses&lt;/span&gt; &lt;span class="n"&gt;req&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;hawkId&lt;/span&gt; &lt;span class="n"&gt;when&lt;/span&gt; &lt;span class="n"&gt;they&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;re known so&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;that&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;uses&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkId&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;when&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;they&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;re known so&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;that&lt;/span&gt; &lt;span class="n"&gt;it&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;tweak&lt;/span&gt; &lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;For&lt;/span&gt; &lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;you&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;store&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;that&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tweak&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;For&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;you&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;store&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;as&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;/hawk-enabled-endpoint&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;/hawk-enabled-endpoint&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;If you pass the createSession parameter, all non-authenticated requests &lt;p&gt;If you pass the createSession parameter, all non-authenticated requests
@ -5560,8 +5595,8 @@ ailleurs, pour finalement déployer la chose chez
&lt;p&gt;Après quelques péripéties, j&amp;#8217;ai réussi à faire tourner le tout, ça à été &lt;p&gt;Après quelques péripéties, j&amp;#8217;ai réussi à faire tourner le tout, ça à été
un peu la bataille au départ pour installer virtualenv (j&amp;#8217;ai du faire un peu la bataille au départ pour installer virtualenv (j&amp;#8217;ai du faire
des changements dans mon &lt;span class="caps"&gt;PATH&lt;/span&gt; pour que ça puisse marcher), voici mon&amp;nbsp;`.bash_profile`:&lt;/p&gt; des changements dans mon &lt;span class="caps"&gt;PATH&lt;/span&gt; pour que ça puisse marcher), voici mon&amp;nbsp;`.bash_profile`:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="n"&gt;PYTHONPATH&lt;/span&gt;&lt;span class="o"&gt;=~/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PYTHONPATH&lt;/span&gt;&lt;span class="o"&gt;=~/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="o"&gt;=$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;bin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt; &lt;span class="k"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="o"&gt;=$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;bin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Et après y&amp;#8217;a plus qu&amp;#8217;à installer avec&amp;nbsp;`easy_install`:&lt;/p&gt; &lt;p&gt;Et après y&amp;#8217;a plus qu&amp;#8217;à installer avec&amp;nbsp;`easy_install`:&lt;/p&gt;
@ -5661,7 +5696,7 @@ PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;On peut donc spécifier des &amp;#8220;sauts&amp;#8221; ssh du&amp;nbsp;style:&lt;/p&gt; &lt;p&gt;On peut donc spécifier des &amp;#8220;sauts&amp;#8221; ssh du&amp;nbsp;style:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;root&lt;/span&gt;&lt;span class="mf"&gt;@91.25.25.25&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;192.168.1.1&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;ssh&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;root&lt;/span&gt;&lt;span class="mf"&gt;@91.25.25.25&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;192.168.1.1&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ensuite on peut essayer de&amp;nbsp;rajouter:&lt;/p&gt; &lt;p&gt;Ensuite on peut essayer de&amp;nbsp;rajouter:&lt;/p&gt;
@ -5746,7 +5781,7 @@ décembre&amp;nbsp;2012:&lt;/p&gt;
&lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de &lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de
s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt; s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt;
&lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer &lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer
l&amp;#8217;industrie après les dégats de la guerre et les &lt;/p&gt;</summary><content type="html"> l&amp;#8217;industrie après les dégats de la guerre …&lt;/p&gt;</summary><content type="html">
&lt;p&gt;&lt;a href="http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed"&gt;http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed"&gt;http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de &lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de
s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt; s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt;
@ -7595,16 +7630,16 @@ $ ant
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Here is a simple example of how to use boilerpipe in Java, from their&amp;nbsp;sources&lt;/p&gt; &lt;p&gt;Here is a simple example of how to use boilerpipe in Java, from their&amp;nbsp;sources&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;de.l3s.boilerpipe.demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;de.l3s.boilerpipe.demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.net.URL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;java.net.URL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;de.l3s.boilerpipe.extractors.ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;de.l3s.boilerpipe.extractors.ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Oneliner&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="kd"&gt;public&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Oneliner&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="kd"&gt;throws&lt;/span&gt; &lt;span class="n"&gt;Exception&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;public&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;static&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;void&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;throws&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Exception&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt; &lt;span class="n"&gt;url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://notmyidea.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://notmyidea.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;INSTANCE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getText&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;INSTANCE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getText&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;To run&amp;nbsp;it:&lt;/p&gt; &lt;p&gt;To run&amp;nbsp;it:&lt;/p&gt;
@ -7968,14 +8003,14 @@ unison .vimrc ssh://notmyidea.org:20006/.vimrc
&lt;p&gt;It is also possible to put all the informations in a config file, and &lt;p&gt;It is also possible to put all the informations in a config file, and
then to only run unison. (fire up vim&amp;nbsp;\~/.unison/default.prf.&lt;/p&gt; then to only run unison. (fire up vim&amp;nbsp;\~/.unison/default.prf.&lt;/p&gt;
&lt;p&gt;Here is my&amp;nbsp;config:&lt;/p&gt; &lt;p&gt;Here is my&amp;nbsp;config:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; &lt;span class="na"&gt;root&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;/home/alexis&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;/home/alexis&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;root&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;ssh://notmyidea.org:20006&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;ssh://notmyidea.org:20006&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;.vimrc&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;.vimrc&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;dotfiles&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;dotfiles&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;dev&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;dev&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;follow&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;Name *&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;follow&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;Name *&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;My vimrc is in fact a symbolic link on my laptop, but I don&amp;#8217;t want to &lt;p&gt;My vimrc is in fact a symbolic link on my laptop, but I don&amp;#8217;t want to
@ -8403,35 +8438,35 @@ $ gnome-background-generator -p ~/Images/walls -s
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Here is a extract of the&amp;nbsp;`&amp;#8212;help`:&lt;/p&gt; &lt;p&gt;Here is a extract of the&amp;nbsp;`&amp;#8212;help`:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;shell&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;shell&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;simple&lt;/span&gt; &lt;span class="n"&gt;command&lt;/span&gt; &lt;span class="n"&gt;line&lt;/span&gt; &lt;span class="k"&gt;tool&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;generate&lt;/span&gt; &lt;span class="n"&gt;an&lt;/span&gt; &lt;span class="n"&gt;XML&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;use&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;simple&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;command&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;line&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;tool&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;generate&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;an&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;XML&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;use&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;wallpapers&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;have&lt;/span&gt; &lt;span class="n"&gt;dynamic&lt;/span&gt; &lt;span class="n"&gt;walls&lt;/span&gt; &lt;span class="n"&gt;wallpapers&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;have&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;walls&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;optional&lt;/span&gt; &lt;span class="n"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;optional&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="n"&gt;show&lt;/span&gt; &lt;span class="n"&gt;this&lt;/span&gt; &lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="n"&gt;message&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;show&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;this&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;exit&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt; &lt;span class="n"&gt;Path&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;look&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;If&lt;/span&gt; &lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;look&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;If&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;no&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;will&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;used&lt;/span&gt; &lt;span class="n"&gt;too&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;outputing&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;used&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;too&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;outputing&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;Default&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;current&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Default&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;current&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;directory&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;directory&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Output&lt;/span&gt; &lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;If&lt;/span&gt; &lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="n"&gt;filename&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;If&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;no&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt; &lt;span class="n"&gt;will&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;generated&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;generated&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;path&lt;/span&gt; &lt;span class="n"&gt;containing&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;You&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;also&lt;/span&gt; &lt;span class="n"&gt;use&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;-&amp;quot;&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;containing&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;You&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;also&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;use&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;-&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;display&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;stdout&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;stdout&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;transition&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;transition&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Time&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;transitions&lt;/span&gt; &lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="n"&gt;last&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;default&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;transitions&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;must&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;last&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;default&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Time&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;picture&lt;/span&gt; &lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;displayed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;Default&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;picture&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;must&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;displayed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Default&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="mi"&gt;900&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="n"&gt;mn&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;900&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="n"&gt;mn&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;&amp;#39;&amp;#39;try to set the background using gnome-appearance-&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;#39;&amp;#39;try to set the background using gnome-appearance-&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt; properties&lt;/span&gt; &lt;span class="s1"&gt; properties&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt; -b, --debug&lt;/span&gt; &lt;span class="s1"&gt; -b, --debug&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="Technologie"></category></entry><entry><title>How to install NGINX + PHP 5.3 on FreeBSD.</title><link href="https://blog.notmyidea.org/how-to-install-nginx-php-53-on-freebsd.html" rel="alternate"></link><published>2010-10-10T00:00:00+02:00</published><updated>2010-10-10T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-10:/how-to-install-nginx-php-53-on-freebsd.html</id><summary type="html"> &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="Technologie"></category></entry><entry><title>How to install NGINX + PHP 5.3 on FreeBSD.</title><link href="https://blog.notmyidea.org/how-to-install-nginx-php-53-on-freebsd.html" rel="alternate"></link><published>2010-10-10T00:00:00+02:00</published><updated>2010-10-10T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-10:/how-to-install-nginx-php-53-on-freebsd.html</id><summary type="html">
&lt;ul&gt; &lt;ul&gt;
&lt;li&gt; &lt;li&gt;
@ -8474,30 +8509,30 @@ the&amp;nbsp;server.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s a simple thing in fact, but it could be good to have something &lt;p&gt;That&amp;#8217;s a simple thing in fact, but it could be good to have something
that will work without effort over&amp;nbsp;time.&lt;/p&gt; that will work without effort over&amp;nbsp;time.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s a sample of my&amp;nbsp;configuration:&lt;/p&gt; &lt;p&gt;Here&amp;#8217;s a sample of my&amp;nbsp;configuration:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;server&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;server_name&lt;/span&gt; &lt;span class="err"&gt;ndd&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;server_name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;ndd&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;set&lt;/span&gt; &lt;span class="err"&gt;$path&lt;/span&gt; &lt;span class="err"&gt;/path/to/your/files&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/path/to/your/files&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;root&lt;/span&gt; &lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;location&lt;/span&gt; &lt;span class="err"&gt;/&lt;/span&gt; &lt;span class="err"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;index&lt;/span&gt; &lt;span class="err"&gt;index.php&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;index&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;index.php&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;location&lt;/span&gt; &lt;span class="o"&gt;~*&lt;/span&gt; &lt;span class="o"&gt;^.+.(&lt;/span&gt;&lt;span class="nt"&gt;jpg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;jpeg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;gif&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;css&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;png&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;js&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;ico&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;xml&lt;/span&gt;&lt;span class="o"&gt;)$&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;~*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;^.+.(&lt;/span&gt;&lt;span class="nt"&gt;jpg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;jpeg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;gif&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;css&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;png&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;js&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;ico&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;xml&lt;/span&gt;&lt;span class="o"&gt;)$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;access_log&lt;/span&gt; &lt;span class="err"&gt;off&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;access_log&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;off&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;expires&lt;/span&gt; &lt;span class="err"&gt;30d&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;expires&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;30d&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;location&lt;/span&gt; &lt;span class="o"&gt;~&lt;/span&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;php&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;php&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;fastcgi_param&lt;/span&gt; &lt;span class="err"&gt;SCRIPT_FILENAME&lt;/span&gt; &lt;span class="err"&gt;$path$fastcgi_script_name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_param&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;SCRIPT_FILENAME&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path$fastcgi_script_name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;fastcgi_pass&lt;/span&gt; &lt;span class="err"&gt;backend&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_pass&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;backend&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;include&lt;/span&gt; &lt;span class="err"&gt;fastcgi_params&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;include&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_params&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;}&lt;/span&gt; &lt;span class="err"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;upstream&lt;/span&gt; &lt;span class="nt"&gt;backend&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nt"&gt;upstream&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;server&lt;/span&gt; &lt;span class="err"&gt;127.0.0.1:9000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;127.0.0.1:9000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;And that&amp;#8217;s it&amp;nbsp;!&lt;/p&gt;</content><category term="Technologie"></category></entry><entry><title>Pelican, a simple static blog generator in python</title><link href="https://blog.notmyidea.org/pelican-a-simple-static-blog-generator-in-python.html" rel="alternate"></link><published>2010-10-06T00:00:00+02:00</published><updated>2010-10-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-06:/pelican-a-simple-static-blog-generator-in-python.html</id><summary type="html"> &lt;p&gt;And that&amp;#8217;s it&amp;nbsp;!&lt;/p&gt;</content><category term="Technologie"></category></entry><entry><title>Pelican, a simple static blog generator in python</title><link href="https://blog.notmyidea.org/pelican-a-simple-static-blog-generator-in-python.html" rel="alternate"></link><published>2010-10-06T00:00:00+02:00</published><updated>2010-10-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-06:/pelican-a-simple-static-blog-generator-in-python.html</id><summary type="html">

View file

@ -43,8 +43,8 @@ obtenir le même résultat à partir de la même&amp;nbsp;entrée.&lt;/p&gt;
une collection &lt;span class="caps"&gt;JSON&lt;/span&gt;. Chaque élément contient un identifiant unique généré sur une collection &lt;span class="caps"&gt;JSON&lt;/span&gt;. Chaque élément contient un identifiant unique généré sur
le&amp;nbsp;client.&lt;/p&gt; le&amp;nbsp;client.&lt;/p&gt;
&lt;p&gt;Par exemple, un enregistrement peut ressembler à&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Par exemple, un enregistrement peut ressembler à&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s2"&gt;&amp;quot;fingerprint&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;fingerprint&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Le &lt;em&gt;hash&lt;/em&gt; de la collection est ensuite calculé, signé puis envoyé au serveur &lt;p&gt;Le &lt;em&gt;hash&lt;/em&gt; de la collection est ensuite calculé, signé puis envoyé au serveur
(voir plus bas pour les&amp;nbsp;détails).&lt;/p&gt; (voir plus bas pour les&amp;nbsp;détails).&lt;/p&gt;
@ -173,7 +173,7 @@ concept repose sur &lt;a class="reference external" href="https://fr.wikipedia.o
&lt;a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05"&gt;*Remote Storage*&lt;/a&gt;, &lt;a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05"&gt;*Remote Storage*&lt;/a&gt;,
mais pour l&amp;#8217;instant les cas d&amp;#8217;utilisations ne se sont pas encore présentés&amp;nbsp;officiellement.&lt;/p&gt; mais pour l&amp;#8217;instant les cas d&amp;#8217;utilisations ne se sont pas encore présentés&amp;nbsp;officiellement.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="id2"&gt; &lt;div class="section" id="a-venir-1"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Nous serons probablement amenés à introduire la gestion de la concurrence dans &lt;p&gt;Nous serons probablement amenés à introduire la gestion de la concurrence dans
le client &lt;span class="caps"&gt;JS&lt;/span&gt;, en complément de ce qui a été fait sur le serveur, pour permettre le client &lt;span class="caps"&gt;JS&lt;/span&gt;, en complément de ce qui a été fait sur le serveur, pour permettre
@ -188,17 +188,17 @@ que &lt;a class="reference external" href="https://github.com/mozilla-services/k
&lt;h2&gt;Contenus applicatifs de&amp;nbsp;Firefox&lt;/h2&gt; &lt;h2&gt;Contenus applicatifs de&amp;nbsp;Firefox&lt;/h2&gt;
&lt;p&gt;Aujourd&amp;#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs &lt;p&gt;Aujourd&amp;#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs
consiste à désolidariser certains contenus applicatifs de ces cycles consiste à désolidariser certains contenus applicatifs de ces cycles
relativement longs (ex. &lt;em&gt;règles de securité, dictionnaires, traductions, &amp;#8230;&lt;/em&gt;) &lt;a class="footnote-reference" href="#id4" id="id3"&gt;[1]&lt;/a&gt;.&lt;/p&gt; relativement longs (ex. &lt;em&gt;règles de securité, dictionnaires, traductions, &amp;#8230;&lt;/em&gt;) &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Il s&amp;#8217;agit de données &lt;span class="caps"&gt;JSON&lt;/span&gt; et binaire qui doivent être versionnées et synchronisées par &lt;p&gt;Il s&amp;#8217;agit de données &lt;span class="caps"&gt;JSON&lt;/span&gt; et binaire qui doivent être versionnées et synchronisées par
les navigateurs (&lt;em&gt;lecture seule&lt;/em&gt;).&lt;/p&gt; les navigateurs (&lt;em&gt;lecture seule&lt;/em&gt;).&lt;/p&gt;
&lt;p&gt;Il y a plusieurs outils officiels qui existent pour gérer ça (&lt;em&gt;Balrog&lt;/em&gt;, &lt;em&gt;Shavar&lt;/em&gt;, &amp;#8230;), &lt;p&gt;Il y a plusieurs outils officiels qui existent pour gérer ça (&lt;em&gt;Balrog&lt;/em&gt;, &lt;em&gt;Shavar&lt;/em&gt;, &amp;#8230;),
et pour l&amp;#8217;instant, aucun choix n&amp;#8217;a été fait. Mais lors des conversations avec et pour l&amp;#8217;instant, aucun choix n&amp;#8217;a été fait. Mais lors des conversations avec
l&amp;#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour l&amp;#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour
ce genre de besoins internes, &lt;em&gt;Kinto&lt;/em&gt; est tout aussi pertinent&amp;nbsp;!&lt;/p&gt; ce genre de besoins internes, &lt;em&gt;Kinto&lt;/em&gt; est tout aussi pertinent&amp;nbsp;!&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La bonne nouvelle c&amp;#8217;est que toutes les fonctionnalités &lt;em&gt;third-party&lt;/em&gt; qui ont &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La bonne nouvelle c&amp;#8217;est que toutes les fonctionnalités &lt;em&gt;third-party&lt;/em&gt; qui ont
été intégrées récemment vont redevenir des &lt;em&gt;add-ons&lt;/em&gt; \o/.&lt;/td&gt;&lt;/tr&gt; été intégrées récemment vont redevenir des &lt;em&gt;add-ons&lt;/em&gt; \o/.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -212,7 +212,7 @@ un prototype pour améliorer &lt;em&gt;Awesome bar&lt;/em&gt;, qui fusionnerait
&lt;p&gt;Nous ne pouvons pas en dire beaucoup plus pour l&amp;#8217;instant, mais les fonctionnalités &lt;p&gt;Nous ne pouvons pas en dire beaucoup plus pour l&amp;#8217;instant, mais les fonctionnalités
de collections d&amp;#8217;enregistrements partagées entre utilisateurs de &lt;em&gt;Kinto&lt;/em&gt; de collections d&amp;#8217;enregistrements partagées entre utilisateurs de &lt;em&gt;Kinto&lt;/em&gt;
correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&amp;nbsp;:)&lt;/p&gt; correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&amp;nbsp;:)&lt;/p&gt;
&lt;div class="section" id="id5"&gt; &lt;div class="section" id="a-venir-2"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Nous serons donc probablement amenés, avant de la fin de l&amp;#8217;année, à introduire des &lt;p&gt;Nous serons donc probablement amenés, avant de la fin de l&amp;#8217;année, à introduire des
fonctionnalités d&amp;#8217;indexation et de recherche &lt;em&gt;full-text&lt;/em&gt; (comprendre &lt;em&gt;ElasticSearch&lt;/em&gt;). fonctionnalités d&amp;#8217;indexation et de recherche &lt;em&gt;full-text&lt;/em&gt; (comprendre &lt;em&gt;ElasticSearch&lt;/em&gt;).
@ -234,7 +234,7 @@ ou un équivalent à &lt;em&gt;Alexa.com Top 500&lt;/em&gt; pour fournir la comp
interroger le moteur de&amp;nbsp;recherche.&lt;/p&gt; interroger le moteur de&amp;nbsp;recherche.&lt;/p&gt;
&lt;p&gt;L&amp;#8217;exercice pourrait être poussé jusqu&amp;#8217;à la synchronisation d&amp;#8217;états &lt;em&gt;React&lt;/em&gt; &lt;p&gt;L&amp;#8217;exercice pourrait être poussé jusqu&amp;#8217;à la synchronisation d&amp;#8217;états &lt;em&gt;React&lt;/em&gt;
entre périphériques (par exemple pour les&amp;nbsp;onglets).&lt;/p&gt; entre périphériques (par exemple pour les&amp;nbsp;onglets).&lt;/p&gt;
&lt;div class="section" id="id7"&gt; &lt;div class="section" id="a-venir-3"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Si &lt;em&gt;browser.html&lt;/em&gt; doit stocker des données de navigation, il faudra ajouter &lt;p&gt;Si &lt;em&gt;browser.html&lt;/em&gt; doit stocker des données de navigation, il faudra ajouter
des fonctionnalités de chiffrement sur le client &lt;span class="caps"&gt;JS&lt;/span&gt;. Ça tombe bien, c&amp;#8217;est un des fonctionnalités de chiffrement sur le client &lt;span class="caps"&gt;JS&lt;/span&gt;. Ça tombe bien, c&amp;#8217;est un
@ -262,7 +262,7 @@ de données sur le Web&amp;nbsp;:)&lt;/p&gt;
et Kinto 1.0&amp;nbsp;!&lt;/p&gt; et Kinto 1.0&amp;nbsp;!&lt;/p&gt;
</summary><content type="html">&lt;p&gt;&lt;em&gt;Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&amp;nbsp;Mozilla&lt;/em&gt;&lt;/p&gt; </summary><content type="html">&lt;p&gt;&lt;em&gt;Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&amp;nbsp;Mozilla&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Aujourd&amp;#8217;hui, c&amp;#8217;est jour de fête : nous venons de publier Cliquet &lt;strong&gt;2.0&lt;/strong&gt; &lt;p&gt;Aujourd&amp;#8217;hui, c&amp;#8217;est jour de fête : nous venons de publier Cliquet &lt;strong&gt;2.0&lt;/strong&gt;
&lt;a class="footnote-reference" href="#id5" id="id1"&gt;[1]&lt;/a&gt; et Kinto &lt;strong&gt;1.0&lt;/strong&gt; &lt;a class="footnote-reference" href="#id6" id="id2"&gt;[2]&lt;/a&gt;.&lt;/p&gt; &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt; et Kinto &lt;strong&gt;1.0&lt;/strong&gt; &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote class="epigraph"&gt; &lt;blockquote class="epigraph"&gt;
&lt;p&gt;L&amp;#8217;aboutissement de 3 années de R&amp;amp;D&amp;nbsp;!&lt;/p&gt; &lt;p&gt;L&amp;#8217;aboutissement de 3 années de R&amp;amp;D&amp;nbsp;!&lt;/p&gt;
&lt;p class="attribution"&gt;&amp;mdash;Rémy&lt;/p&gt; &lt;p class="attribution"&gt;&amp;mdash;Rémy&lt;/p&gt;
@ -283,7 +283,7 @@ fonctionnalités que l&amp;#8217;on attendait depuis longtemps, comme la gestion
s&amp;#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées, s&amp;#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées,
notamment sur la documentation et les&amp;nbsp;performances.&lt;/p&gt; notamment sur la documentation et les&amp;nbsp;performances.&lt;/p&gt;
&lt;p&gt;On peut déjà entrevoir à quoi l&amp;#8217;écosystème va ressembler, et c&amp;#8217;est prometteur. &lt;p&gt;On peut déjà entrevoir à quoi l&amp;#8217;écosystème va ressembler, et c&amp;#8217;est prometteur.
Il y a déjà un client JavaScript &lt;a class="footnote-reference" href="#id7" id="id3"&gt;[3]&lt;/a&gt; dont l&amp;#8217;objectif est de synchroniser les Il y a déjà un client JavaScript &lt;a class="footnote-reference" href="#footnote-3" id="footnote-reference-3"&gt;[3]&lt;/a&gt; dont l&amp;#8217;objectif est de synchroniser les
données locales du navigateur avec une instance de&amp;nbsp;Kinto.&lt;/p&gt; données locales du navigateur avec une instance de&amp;nbsp;Kinto.&lt;/p&gt;
&lt;p&gt;N&amp;#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez &lt;p&gt;N&amp;#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez
des problématiques proches : nous accueillons avec plaisir toutes sortes de des problématiques proches : nous accueillons avec plaisir toutes sortes de
@ -292,34 +292,34 @@ la solution ou de la manière de communiquer avec le monde extérieur. Si vous
souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous
contacter sur le canal &lt;a class="reference external" href="irc://irc.mozilla.org/#storage"&gt;#storage&lt;/a&gt; sur le réseau &lt;span class="caps"&gt;IRC&lt;/span&gt; de&amp;nbsp;Mozilla.&lt;/p&gt; contacter sur le canal &lt;a class="reference external" href="irc://irc.mozilla.org/#storage"&gt;#storage&lt;/a&gt; sur le réseau &lt;span class="caps"&gt;IRC&lt;/span&gt; de&amp;nbsp;Mozilla.&lt;/p&gt;
&lt;p&gt;Et ce n&amp;#8217;est que le début ! Le futur se dessine dans notre feuille de route &lt;p&gt;Et ce n&amp;#8217;est que le début ! Le futur se dessine dans notre feuille de route
&lt;a class="footnote-reference" href="#id8" id="id4"&gt;[4]&lt;/a&gt;.&lt;/p&gt; &lt;a class="footnote-reference" href="#footnote-4" id="footnote-reference-4"&gt;[4]&lt;/a&gt;.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id5" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; est une boite à outils pour faciliter l&amp;#8217;implémentation de &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; est une boite à outils pour faciliter l&amp;#8217;implémentation de
microservices &lt;span class="caps"&gt;HTTP&lt;/span&gt; tels que les APIs &lt;em&gt;&lt;span class="caps"&gt;REST&lt;/span&gt;&lt;/em&gt; ayant des besoins de microservices &lt;span class="caps"&gt;HTTP&lt;/span&gt; tels que les APIs &lt;em&gt;&lt;span class="caps"&gt;REST&lt;/span&gt;&lt;/em&gt; ayant des besoins de
synchronisation.&lt;/td&gt;&lt;/tr&gt; synchronisation.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id6" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Kinto&lt;/strong&gt; est un service pour stocker, synchroniser et partager des données &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Kinto&lt;/strong&gt; est un service pour stocker, synchroniser et partager des données
arbitraires, attachées à un compte Firefox (mais le système d&amp;#8217;authentification arbitraires, attachées à un compte Firefox (mais le système d&amp;#8217;authentification
est &lt;em&gt;pluggable&lt;/em&gt;).&lt;/td&gt;&lt;/tr&gt; est &lt;em&gt;pluggable&lt;/em&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id7" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-3" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Cliquetis, la bibliothèque JavaScript pour consommer l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt; &lt;span class="caps"&gt;HTTP&lt;/span&gt; de Kinto — &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Cliquetis, la bibliothèque JavaScript pour consommer l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt; &lt;span class="caps"&gt;HTTP&lt;/span&gt; de Kinto —
&lt;a class="reference external" href="https://github.com/mozilla-services/cliquetis"&gt;https://github.com/mozilla-services/cliquetis&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="https://github.com/mozilla-services/cliquetis"&gt;https://github.com/mozilla-services/cliquetis&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id8" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-4" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id4"&gt;[4]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La feuille de route de Kinto: &lt;a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap"&gt;https://github.com/mozilla-services/kinto/wiki/roadmap&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-4"&gt;[4]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La feuille de route de Kinto: &lt;a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap"&gt;https://github.com/mozilla-services/kinto/wiki/roadmap&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
</content><category term="Technologie"></category></entry><entry><title>Service de nuages : Stocker et interroger les permissions avec Kinto</title><link href="https://blog.notmyidea.org/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html" rel="alternate"></link><published>2015-05-26T00:00:00+02:00</published><updated>2015-05-26T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2015-05-26:/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html</id><summary type="html">&lt;p class="first last"&gt;Comment faire pour stocker et interroger la base de données au sujet des permissions avec Kinto&amp;nbsp;?&lt;/p&gt; </content><category term="Technologie"></category></entry><entry><title>Service de nuages : Stocker et interroger les permissions avec Kinto</title><link href="https://blog.notmyidea.org/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html" rel="alternate"></link><published>2015-05-26T00:00:00+02:00</published><updated>2015-05-26T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2015-05-26:/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html</id><summary type="html">&lt;p class="first last"&gt;Comment faire pour stocker et interroger la base de données au sujet des permissions avec Kinto&amp;nbsp;?&lt;/p&gt;
@ -435,13 +435,13 @@ avantages (lisibilité, unicité, cohérence avec les&amp;nbsp;URLs)&lt;/p&gt;
&lt;div class="section" id="les-tables"&gt; &lt;div class="section" id="les-tables"&gt;
&lt;h3&gt;Les&amp;nbsp;tables&lt;/h3&gt; &lt;h3&gt;Les&amp;nbsp;tables&lt;/h3&gt;
&lt;p&gt;Pour le stockage des principals et des&amp;nbsp;permissions:&lt;/p&gt; &lt;p&gt;Pour le stockage des principals et des&amp;nbsp;permissions:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;La table &lt;em&gt;perms&lt;/em&gt; va associer des &lt;em&gt;principals&lt;/em&gt; à chaque &lt;em&gt;&lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/em&gt;&amp;nbsp;(e.g.&amp;#8220;/buckets/blog:write&amp;#8220;).&lt;/p&gt; &lt;p&gt;La table &lt;em&gt;perms&lt;/em&gt; va associer des &lt;em&gt;principals&lt;/em&gt; à chaque &lt;em&gt;&lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/em&gt;&amp;nbsp;(e.g.&amp;#8220;/buckets/blog:write&amp;#8220;).&lt;/p&gt;
&lt;p&gt;Pour le stockage des&amp;nbsp;données:&lt;/p&gt; &lt;p&gt;Pour le stockage des&amp;nbsp;données:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt; &lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;write_principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt; &lt;span class="n"&gt;read_principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;La colonne &lt;em&gt;parent_id&lt;/em&gt; permet de savoir à qui appartient l&amp;#8217;objet &lt;p&gt;La colonne &lt;em&gt;parent_id&lt;/em&gt; permet de savoir à qui appartient l&amp;#8217;objet
(e.g. groupe d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, collection d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, &lt;em&gt;record&lt;/em&gt; d&amp;#8217;une (e.g. groupe d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, collection d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, &lt;em&gt;record&lt;/em&gt; d&amp;#8217;une
@ -449,53 +449,53 @@ collection,&amp;nbsp;&amp;#8230;).&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="exemple-d-utilisateur"&gt; &lt;div class="section" id="exemple-d-utilisateur"&gt;
&lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;utilisateur&lt;/h3&gt; &lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;utilisateur&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:alexis&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:alexis&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="exemple-d-objets"&gt; &lt;div class="section" id="exemple-d-objets"&gt;
&lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;objets&lt;/h3&gt; &lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;objets&lt;/h3&gt;
&lt;div class="section" id="bucket"&gt; &lt;div class="section" id="bucket"&gt;
&lt;h4&gt;Bucket&lt;/h4&gt; &lt;h4&gt;Bucket&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;bucket&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;bucket&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;blog&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;blog&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{&amp;quot;fxa:alexis&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;fxa:alexis&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="group"&gt; &lt;div class="section" id="group"&gt;
&lt;h4&gt;Group&lt;/h4&gt; &lt;h4&gt;Group&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/groups/moderators&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/groups/moderators&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;group&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;group&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;moderators&amp;quot;, &amp;quot;members&amp;quot;: [&amp;#39;&lt;/span&gt;&lt;span class="n"&gt;fxa&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="n"&gt;natim&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;]}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;moderators&amp;quot;, &amp;quot;members&amp;quot;: [&amp;#39;&lt;/span&gt;&lt;span class="n"&gt;fxa&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="n"&gt;natim&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;]}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ce groupe peut être gére par &lt;tt class="docutils literal"&gt;fxa:alexis&lt;/tt&gt; puisqu&amp;#8217;il a la permission &lt;p&gt;Ce groupe peut être gére par &lt;tt class="docutils literal"&gt;fxa:alexis&lt;/tt&gt; puisqu&amp;#8217;il a la permission
&lt;tt class="docutils literal"&gt;write&lt;/tt&gt; dans le &lt;em&gt;bucket&lt;/em&gt;&amp;nbsp;parent.&lt;/p&gt; &lt;tt class="docutils literal"&gt;write&lt;/tt&gt; dans le &lt;em&gt;bucket&lt;/em&gt;&amp;nbsp;parent.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="collection"&gt; &lt;div class="section" id="collection"&gt;
&lt;h4&gt;Collection&lt;/h4&gt; &lt;h4&gt;Collection&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;collection&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;collection&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;article&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;article&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;system.Everyone&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;system.Everyone&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Cette collection d&amp;#8217;articles peut être lue par tout le monde, &lt;p&gt;Cette collection d&amp;#8217;articles peut être lue par tout le monde,
et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderators&lt;/tt&gt;, ainsi que et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderators&lt;/tt&gt;, ainsi que
@ -503,56 +503,56 @@ et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderato
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="records"&gt; &lt;div class="section" id="records"&gt;
&lt;h4&gt;Records&lt;/h4&gt; &lt;h4&gt;Records&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;quot;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;quot;,&lt;/span&gt;
&lt;span class="s1"&gt; &amp;quot;title&amp;quot;: &amp;quot;Stocker les permissions&amp;quot;, ...}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt; &amp;quot;title&amp;quot;: &amp;quot;Stocker les permissions&amp;quot;, ...}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="interroger-les-permissions"&gt; &lt;div class="section" id="interroger-les-permissions"&gt;
&lt;h3&gt;Interroger les&amp;nbsp;permissions&lt;/h3&gt; &lt;h3&gt;Interroger les&amp;nbsp;permissions&lt;/h3&gt;
&lt;div class="section" id="id1"&gt; &lt;div class="section" id="obtenir-la-liste-des-principals-d-un-ace-1"&gt;
&lt;h4&gt;Obtenir la liste des &amp;#8220;principals&amp;#8221; d&amp;#8217;un &lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/h4&gt; &lt;h4&gt;Obtenir la liste des &amp;#8220;principals&amp;#8221; d&amp;#8217;un &lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;Comme vu plus haut, pour vérifier une permission, on fait l&amp;#8217;union des &lt;p&gt;Comme vu plus haut, pour vérifier une permission, on fait l&amp;#8217;union des
&lt;em&gt;principals&lt;/em&gt; requis par les objets hérités, et on teste leur &lt;em&gt;principals&lt;/em&gt; requis par les objets hérités, et on teste leur
intersection avec ceux de&amp;nbsp;l&amp;#8217;utilisateur:&lt;/p&gt; intersection avec ceux de&amp;nbsp;l&amp;#8217;utilisateur:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;WITH&lt;/span&gt; &lt;span class="n"&gt;required_principals&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;WITH&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;required_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;perms&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;ace&lt;/span&gt; &lt;span class="k"&gt;IN&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;IN&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;user_principals&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;COUNT&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;COUNT&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;user_principals&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;INNER&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;required_principals&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INNER&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;JOIN&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;required_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;ON&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;ON&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="filtrer-les-objets-en-fonction-des-permissions"&gt; &lt;div class="section" id="filtrer-les-objets-en-fonction-des-permissions"&gt;
&lt;h4&gt;Filtrer les objets en fonction des&amp;nbsp;permissions&lt;/h4&gt; &lt;h4&gt;Filtrer les objets en fonction des&amp;nbsp;permissions&lt;/h4&gt;
&lt;p&gt;Pour filtrer les objets, on fait une simple intersection de liste &lt;p&gt;Pour filtrer les objets, on fait une simple intersection de liste
(&lt;em&gt;merci PostgreSQL&lt;/em&gt;):&lt;/p&gt; (&lt;em&gt;merci PostgreSQL&lt;/em&gt;):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="k"&gt;OR&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;OR&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Les listes s&amp;#8217;indexent bien, notamment grâce aux &lt;a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html"&gt;index &lt;span class="caps"&gt;GIN&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Les listes s&amp;#8217;indexent bien, notamment grâce aux &lt;a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html"&gt;index &lt;span class="caps"&gt;GIN&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
@ -635,7 +635,7 @@ une réponse satisfaisante à ces&amp;nbsp;besoins.&lt;/p&gt;
&lt;div class="section" id="le-concept-de-principal"&gt; &lt;div class="section" id="le-concept-de-principal"&gt;
&lt;h3&gt;Le concept de « principal&amp;nbsp;»&lt;/h3&gt; &lt;h3&gt;Le concept de « principal&amp;nbsp;»&lt;/h3&gt;
&lt;p&gt;Un &lt;em&gt;principal&lt;/em&gt;, en sécurité informatique, est une entité qui peut être &lt;p&gt;Un &lt;em&gt;principal&lt;/em&gt;, en sécurité informatique, est une entité qui peut être
authentifiée par un système informatique. &lt;a class="footnote-reference" href="#id2" id="id1"&gt;[1]&lt;/a&gt; En Français il s&amp;#8217;agit authentifiée par un système informatique. &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt; En Français il s&amp;#8217;agit
du « commettant », l&amp;#8217;acteur qui commet l&amp;#8217;action (oui, le terme est conceptuel&amp;nbsp;!)&lt;/p&gt; du « commettant », l&amp;#8217;acteur qui commet l&amp;#8217;action (oui, le terme est conceptuel&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;Il peut s&amp;#8217;agir aussi bien d&amp;#8217;un individu, d&amp;#8217;un ordinateur, d&amp;#8217;un &lt;p&gt;Il peut s&amp;#8217;agir aussi bien d&amp;#8217;un individu, d&amp;#8217;un ordinateur, d&amp;#8217;un
service ou d&amp;#8217;un groupe regroupant l&amp;#8217;une de ces entités, ce qui service ou d&amp;#8217;un groupe regroupant l&amp;#8217;une de ces entités, ce qui
@ -644,10 +644,10 @@ est plus large que le classique « &lt;em&gt;user id&lt;/em&gt;&amp;nbsp;».&lt;
&lt;p&gt;Par exemple, un utilisateur est identifié de manière unique lors de la &lt;p&gt;Par exemple, un utilisateur est identifié de manière unique lors de la
connexion par le système d&amp;#8217;authentification dont le rôle est de connexion par le système d&amp;#8217;authentification dont le rôle est de
définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisateur se&amp;nbsp;connectant.&lt;/p&gt; définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisateur se&amp;nbsp;connectant.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id2" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Pour en savoir plus sur les &lt;em&gt;principals&lt;/em&gt; : &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Pour en savoir plus sur les &lt;em&gt;principals&lt;/em&gt; :
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29"&gt;https://en.wikipedia.org/wiki/Principal_%28computer_security%29&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29"&gt;https://en.wikipedia.org/wiki/Principal_%28computer_security%29&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -656,17 +656,17 @@ définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisate
&lt;h3&gt;La différence entre rôle et&amp;nbsp;groupe&lt;/h3&gt; &lt;h3&gt;La différence entre rôle et&amp;nbsp;groupe&lt;/h3&gt;
&lt;p&gt;De but en blanc, il n&amp;#8217;est pas évident de définir précisément la &lt;p&gt;De but en blanc, il n&amp;#8217;est pas évident de définir précisément la
différence entre ces deux concepts qui permettent d&amp;#8217;associer différence entre ces deux concepts qui permettent d&amp;#8217;associer
des permissions à un groupe de &lt;em&gt;principals&lt;/em&gt;. &lt;a class="footnote-reference" href="#id4" id="id3"&gt;[2]&lt;/a&gt;&lt;/p&gt; des permissions à un groupe de &lt;em&gt;principals&lt;/em&gt;. &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;La différence est principalement sémantique. Mais on peut y voir une &lt;p&gt;La différence est principalement sémantique. Mais on peut y voir une
différence dans la « direction » de la relation entre les deux&amp;nbsp;concepts.&lt;/p&gt; différence dans la « direction » de la relation entre les deux&amp;nbsp;concepts.&lt;/p&gt;
&lt;ul class="simple"&gt; &lt;ul class="simple"&gt;
&lt;li&gt;Un rôle est une liste de permissions que l&amp;#8217;on associe à un &lt;em&gt;principal&lt;/em&gt;.&lt;/li&gt; &lt;li&gt;Un rôle est une liste de permissions que l&amp;#8217;on associe à un &lt;em&gt;principal&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;Un groupe est une liste de &lt;em&gt;principals&lt;/em&gt; que l&amp;#8217;on peut associer à une&amp;nbsp;permission.&lt;/li&gt; &lt;li&gt;Un groupe est une liste de &lt;em&gt;principals&lt;/em&gt; que l&amp;#8217;on peut associer à une&amp;nbsp;permission.&lt;/li&gt;
&lt;/ul&gt; &lt;/ul&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Plus d&amp;#8217;informations : &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Plus d&amp;#8217;informations :
&lt;a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference"&gt;http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference"&gt;http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;

View file

@ -1,5 +1,40 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Alexis Métaireau</title><link href="https://blog.notmyidea.org/" rel="alternate"></link><link href="https://blog.notmyidea.org/feeds/all.atom.xml" rel="self"></link><id>https://blog.notmyidea.org/</id><updated>2021-11-11T00:00:00+01:00</updated><entry><title>Conflit</title><link href="https://blog.notmyidea.org/conflit.html" rel="alternate"></link><published>2021-11-11T00:00:00+01:00</published><updated>2021-11-11T00:00:00+01:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2021-11-11:/conflit.html</id><summary type="html"> <feed xmlns="http://www.w3.org/2005/Atom"><title>Alexis Métaireau</title><link href="https://blog.notmyidea.org/" rel="alternate"></link><link href="https://blog.notmyidea.org/feeds/all.atom.xml" rel="self"></link><id>https://blog.notmyidea.org/</id><updated>2022-05-06T00:00:00+02:00</updated><entry><title>Fatigue relationnelle</title><link href="https://blog.notmyidea.org/fatigue-relationnelle.html" rel="alternate"></link><published>2022-05-06T00:00:00+02:00</published><updated>2022-05-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2022-05-06:/fatigue-relationnelle.html</id><summary type="html">
&lt;p&gt;Depuis peu, je me retrouve confronté à mon manque d&amp;#8217;envie d&amp;#8217;être avec d&amp;#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&amp;#8217;il y a quelques&amp;nbsp;années.&lt;/p&gt;
&lt;p&gt;Je ne sais pas exactement d&amp;#8217;où cela vient : si c&amp;#8217;est un des nombreux effets …&lt;/p&gt;</summary><content type="html">
&lt;p&gt;Depuis peu, je me retrouve confronté à mon manque d&amp;#8217;envie d&amp;#8217;être avec d&amp;#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&amp;#8217;il y a quelques&amp;nbsp;années.&lt;/p&gt;
&lt;p&gt;Je ne sais pas exactement d&amp;#8217;où cela vient : si c&amp;#8217;est un des nombreux effets psychologiques que le &lt;span class="caps"&gt;COVID&lt;/span&gt; à eu sur moi, si j&amp;#8217;accorde trop de place aux collectifs dans ma vie (travail, habitation, ami⋅es), ou si simplement mes envies ne sont plus les mêmes qu&amp;#8217;il y a quelques années, mais le résultat est bel et bien&amp;nbsp;là.&lt;/p&gt;
&lt;p&gt;Malgré tout j&amp;#8217;ai envie d&amp;#8217;être disponible pour les personnes qui comptent pour moi, et je réfléchis donc à différentes solutions : déménager et habiter en solo, faire moins d&amp;#8217;activités extérieures ou bien m&amp;#8217;isoler plus souvent dans les espaces&amp;nbsp;collectifs.&lt;/p&gt;
&lt;p&gt;Le fait de retourner potentiellement habiter en solo vient questionner mon rapport au collectif omniprésent dans ma vie, et qui jouit d&amp;#8217;un statut particulier pour moi. Le collectif semble être quasiment un &lt;em&gt;objectif en soi&lt;/em&gt;, et donc quelque-part partir de ces espaces collectifs serait une sorte&amp;nbsp;d&amp;#8217;échec.&lt;/p&gt;
&lt;p&gt;Entrouvrir cette possibilité me plaît parce-que ça me pousse à accepter mes limites et à mettre en balance ma qualité de relation aux autres avec mes valeurs collectivistes. Du collectif, oui, mais peut-être avec un mix différent&amp;nbsp;?&lt;/p&gt;
&lt;p&gt;Ça fait également écho à ma &lt;a href="conflit.html"&gt;gestion du conflit&lt;/a&gt;. Je me rends compte que j&amp;#8217;ai besoin d&amp;#8217;évoluer dans des collectifs qui partagent cette culture de la gestion du conflit (plutôt que de son&amp;nbsp;évitement).&lt;/p&gt;</content><category term="Réfléxions"></category></entry><entry><title>Accueil, transmission et confiance</title><link href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" rel="alternate"></link><published>2022-05-01T00:00:00+02:00</published><updated>2022-05-01T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2022-05-01:/accueil-transmission-et-confiance.html</id><summary type="html">
&lt;p&gt;Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&amp;#8217;en réjouis pour plusieurs raisons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ma charge de travail devrait baisser de manière considérable et me permettre d&amp;#8217;avancer sur des sujets de fond, pour progressivement changer l&amp;#8217;équilibre dans mon métier&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;J&amp;#8217;ai désormais quelqu&amp;#8217;une avec …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">
&lt;p&gt;Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&amp;#8217;en réjouis pour plusieurs raisons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ma charge de travail devrait baisser de manière considérable et me permettre d&amp;#8217;avancer sur des sujets de fond, pour progressivement changer l&amp;#8217;équilibre dans mon métier&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;J&amp;#8217;ai désormais quelqu&amp;#8217;une avec qui échanger sur les problématiques techniques du métier de livreur / commercial&amp;nbsp;;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Mais cela me fait aussi peur : cela va nécessairement bousculer l&amp;#8217;équilibre — parfois fragile — en place entre les associés actuels. Même si je vois cette évolution d&amp;#8217;un bon œil, les transitions sont parfois&amp;nbsp;difficiles.&lt;/p&gt;
&lt;p&gt;Ça me donne donc envie de construire une relation de confiance, et de donner les moyens à cette nouvelle arrivante de s&amp;#8217;y&amp;nbsp;retrouver.&lt;/p&gt;
&lt;h2 id="transmission"&gt;Transmission&lt;/h2&gt;
&lt;p&gt;Cela me pose donc de nouvelles questions, autour de l&amp;#8217;accueil et de la&amp;nbsp;transmission.&lt;/p&gt;
&lt;p&gt;Il me semble que l&amp;#8217;enjeu est de laisser une liberté d&amp;#8217;action progressive pour mettre la personne en confiance, puis de réussir à « lâcher le bébé&amp;nbsp;».&lt;/p&gt;
&lt;p&gt;Mais il s&amp;#8217;agit aussi de réussir à juger si la communication est aisée, et de ne pas nécessairement partir du principe que tout sera génial. C&amp;#8217;est une relation de travail, pas une&amp;nbsp;amitié.&lt;/p&gt;
&lt;p&gt;De son côté également il doit y avoir des questionnements. Je mets une attention particulière à les accueillir : les questionnement sont bienvenus, voir même&amp;nbsp;attendus.&lt;/p&gt;
&lt;p&gt;Le pire pour moi serait d&amp;#8217;avoir quelqu&amp;#8217;un qui à peur de ne pas savoir, et qui dit qu&amp;#8217;elle sait plutôt que de laisser la place pour&amp;nbsp;l&amp;#8217;apprentissage.&lt;/p&gt;
&lt;h2 id="faire-confiance"&gt;Faire&amp;nbsp;confiance&lt;/h2&gt;
&lt;p&gt;Il me semble qu&amp;#8217;il peut exister deux types de confiance&amp;nbsp;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;Laisser la possibilité de se tromper&lt;/em&gt; : il est possible de faire confiance à l&amp;#8217;autre dans son apprentissage, pour qu&amp;#8217;iel se sente légitime à faire &lt;em&gt;ses&lt;/em&gt; choix, ceux qu&amp;#8217;il⋅elle estimera les bons, et qui seront donc les bons — par définition&amp;nbsp;;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;La &lt;em&gt;confiance relationnelle&lt;/em&gt;, de l&amp;#8217;ordre des relations inter-personnelles, de la relation à l&amp;#8217;autre. Parce que c&amp;#8217;est aussi une rencontre, et que je cherche à créer des relations de travail où l&amp;#8217;on peut se dire les choses sans se blesser, en confiance&amp;nbsp;donc.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;</content><category term="Réfléxions"></category></entry><entry><title>Conflit</title><link href="https://blog.notmyidea.org/conflit.html" rel="alternate"></link><published>2021-11-11T00:00:00+01:00</published><updated>2021-11-11T00:00:00+01:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2021-11-11:/conflit.html</id><summary type="html">
&lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt; &lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt;
&lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt; &lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html"> &lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html">
@ -2062,8 +2097,8 @@ obtenir le même résultat à partir de la même&amp;nbsp;entrée.&lt;/p&gt;
une collection &lt;span class="caps"&gt;JSON&lt;/span&gt;. Chaque élément contient un identifiant unique généré sur une collection &lt;span class="caps"&gt;JSON&lt;/span&gt;. Chaque élément contient un identifiant unique généré sur
le&amp;nbsp;client.&lt;/p&gt; le&amp;nbsp;client.&lt;/p&gt;
&lt;p&gt;Par exemple, un enregistrement peut ressembler à&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Par exemple, un enregistrement peut ressembler à&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s2"&gt;&amp;quot;fingerprint&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;fingerprint&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Le &lt;em&gt;hash&lt;/em&gt; de la collection est ensuite calculé, signé puis envoyé au serveur &lt;p&gt;Le &lt;em&gt;hash&lt;/em&gt; de la collection est ensuite calculé, signé puis envoyé au serveur
(voir plus bas pour les&amp;nbsp;détails).&lt;/p&gt; (voir plus bas pour les&amp;nbsp;détails).&lt;/p&gt;
@ -2511,7 +2546,7 @@ des tests souvent&amp;nbsp;!&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt; &lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt;
&lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est &lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est
cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait pas etre &lt;/p&gt;</summary><content type="html">&lt;div class="admonition note"&gt; cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait …&lt;/p&gt;</summary><content type="html">&lt;div class="admonition note"&gt;
&lt;p class="first admonition-title"&gt;Note&lt;/p&gt; &lt;p class="first admonition-title"&gt;Note&lt;/p&gt;
&lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas &lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas
à les completer si&amp;nbsp;besoin.&lt;/p&gt; à les completer si&amp;nbsp;besoin.&lt;/p&gt;
@ -3233,7 +3268,7 @@ d&amp;#8217;écriture sur une collection&amp;nbsp;d&amp;#8217;enregistrements.&l
&lt;li&gt;&lt;strong&gt;La synchronisation&lt;/strong&gt; : une série de leviers pour récupérer et renvoyer des &lt;li&gt;&lt;strong&gt;La synchronisation&lt;/strong&gt; : une série de leviers pour récupérer et renvoyer des
changements sur les données, sans perte ni collision, en utilisant les&amp;nbsp;timestamps.&lt;/li&gt; changements sur les données, sans perte ni collision, en utilisant les&amp;nbsp;timestamps.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Les permissions&lt;/strong&gt; : les droits d&amp;#8217;un utilisateur sur une collection ou un enregistrement &lt;li&gt;&lt;strong&gt;Les permissions&lt;/strong&gt; : les droits d&amp;#8217;un utilisateur sur une collection ou un enregistrement
(&lt;em&gt;encore frais et sur le point d&amp;#8217;être documenté&lt;/em&gt;) &lt;a class="footnote-reference" href="#id3" id="id1"&gt;[1]&lt;/a&gt;.&lt;/li&gt; (&lt;em&gt;encore frais et sur le point d&amp;#8217;être documenté&lt;/em&gt;) &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Opérations par lot&lt;/strong&gt;: une &lt;span class="caps"&gt;URL&lt;/span&gt; qui permet d&amp;#8217;envoyer une série de requêtes &lt;li&gt;&lt;strong&gt;Opérations par lot&lt;/strong&gt;: une &lt;span class="caps"&gt;URL&lt;/span&gt; qui permet d&amp;#8217;envoyer une série de requêtes
décrites en &lt;span class="caps"&gt;JSON&lt;/span&gt; et d&amp;#8217;obtenir les réponses&amp;nbsp;respectives.&lt;/li&gt; décrites en &lt;span class="caps"&gt;JSON&lt;/span&gt; et d&amp;#8217;obtenir les réponses&amp;nbsp;respectives.&lt;/li&gt;
&lt;/ul&gt; &lt;/ul&gt;
@ -3255,17 +3290,17 @@ de &lt;em&gt;Firefox Sync&lt;/em&gt; pour la gestion de la concurrence et de&amp
&lt;p&gt;Il est &lt;a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html"&gt;documenté en détail&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Il est &lt;a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html"&gt;documenté en détail&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Dans un monde idéal, ce protocole serait versionné, et formalisé dans une &lt;span class="caps"&gt;RFC&lt;/span&gt;. &lt;p&gt;Dans un monde idéal, ce protocole serait versionné, et formalisé dans une &lt;span class="caps"&gt;RFC&lt;/span&gt;.
En rêve, il existerait même plusieurs implémentations avec des technologies différentes En rêve, il existerait même plusieurs implémentations avec des technologies différentes
(Python, Go, Node, etc.). &lt;a class="footnote-reference" href="#id4" id="id2"&gt;[2]&lt;/a&gt;&lt;/p&gt; (Python, Go, Node, etc.). &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id3" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Voir notre &lt;a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html"&gt;article dédié sur les permissions&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Voir notre &lt;a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html"&gt;article dédié sur les permissions&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Rappel: nous sommes une toute petite équipe !&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Rappel: nous sommes une toute petite équipe !&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;/div&gt; &lt;/div&gt;
@ -3273,7 +3308,7 @@ En rêve, il existerait même plusieurs implémentations avec des technologies d
&lt;h2&gt;Le&amp;nbsp;toolkit&lt;/h2&gt; &lt;h2&gt;Le&amp;nbsp;toolkit&lt;/h2&gt;
&lt;div class="section" id="choix-techniques"&gt; &lt;div class="section" id="choix-techniques"&gt;
&lt;h3&gt;Choix&amp;nbsp;techniques&lt;/h3&gt; &lt;h3&gt;Choix&amp;nbsp;techniques&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;Cliquet&lt;/em&gt; implémente le protocole en Python (&lt;em&gt;2.7, 3.4+, pypy&lt;/em&gt;), avec &lt;a class="reference external" href="http://trypyramid.com/"&gt;Pyramid&lt;/a&gt; &lt;a class="footnote-reference" href="#id6" id="id5"&gt;[3]&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;em&gt;Cliquet&lt;/em&gt; implémente le protocole en Python (&lt;em&gt;2.7, 3.4+, pypy&lt;/em&gt;), avec &lt;a class="reference external" href="http://trypyramid.com/"&gt;Pyramid&lt;/a&gt; &lt;a class="footnote-reference" href="#footnote-3" id="footnote-reference-3"&gt;[3]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pyramid&lt;/strong&gt; est un framework Web qui va prendre en charge tout la partie &lt;span class="caps"&gt;HTTP&lt;/span&gt;, &lt;p&gt;&lt;strong&gt;Pyramid&lt;/strong&gt; est un framework Web qui va prendre en charge tout la partie &lt;span class="caps"&gt;HTTP&lt;/span&gt;,
et qui s&amp;#8217;avère pertinent aussi bien pour des petits projets que des plus&amp;nbsp;ambitieux.&lt;/p&gt; et qui s&amp;#8217;avère pertinent aussi bien pour des petits projets que des plus&amp;nbsp;ambitieux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cornice&lt;/strong&gt; est une extension de &lt;em&gt;Pyramid&lt;/em&gt;, écrite en partie par Alexis et Tarek, &lt;p&gt;&lt;strong&gt;Cornice&lt;/strong&gt; est une extension de &lt;em&gt;Pyramid&lt;/em&gt;, écrite en partie par Alexis et Tarek,
@ -3286,10 +3321,10 @@ rigoureux, gérer les entêtes &lt;span class="caps"&gt;CORS&lt;/span&gt;, fourn
&lt;p&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; utilise les deux précédents pour implémenter le protocole et fournir &lt;p&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; utilise les deux précédents pour implémenter le protocole et fournir
des abstractions, mais on a toujours &lt;em&gt;Pyramid&lt;/em&gt; et &lt;em&gt;Cornice&lt;/em&gt; sous la main pour des abstractions, mais on a toujours &lt;em&gt;Pyramid&lt;/em&gt; et &lt;em&gt;Cornice&lt;/em&gt; sous la main pour
aller au delà de ce qui est proposé&amp;nbsp;!&lt;/p&gt; aller au delà de ce qui est proposé&amp;nbsp;!&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id6" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-3" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id5"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Au tout début nous avons commencé une implémentation avec &lt;em&gt;Python-Eve&lt;/em&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Au tout début nous avons commencé une implémentation avec &lt;em&gt;Python-Eve&lt;/em&gt;
(Flask), mais n&amp;#8217;étions pas satisfaits de l&amp;#8217;approche pour la configuration (Flask), mais n&amp;#8217;étions pas satisfaits de l&amp;#8217;approche pour la configuration
de l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt;. En particulier du côté magique.&lt;/td&gt;&lt;/tr&gt; de l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt;. En particulier du côté magique.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
@ -3381,18 +3416,18 @@ avec &lt;em&gt;Colander&lt;/em&gt;, et ensuite déclarer une&amp;nbsp;resource:&
&lt;p&gt;Désormais, la resource &lt;span class="caps"&gt;CRUD&lt;/span&gt; est disponible sur &lt;tt class="docutils literal"&gt;/v1/bookmarks&lt;/tt&gt;, avec toutes &lt;p&gt;Désormais, la resource &lt;span class="caps"&gt;CRUD&lt;/span&gt; est disponible sur &lt;tt class="docutils literal"&gt;/v1/bookmarks&lt;/tt&gt;, avec toutes
les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc. les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc.
De base les enregistrements sont privés, par&amp;nbsp;utilisateur.&lt;/p&gt; De base les enregistrements sont privés, par&amp;nbsp;utilisateur.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="err"&gt;h&lt;/span&gt;&lt;span class="kc"&gt;tt&lt;/span&gt;&lt;span class="err"&gt;p&lt;/span&gt; &lt;span class="err"&gt;GET&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;http://localhost:8000/v1/bookmarks&amp;quot;&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;h&lt;/span&gt;&lt;span class="kc"&gt;tt&lt;/span&gt;&lt;span class="err"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;GET&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;http://localhost:8000/v1/bookmarks&amp;quot;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;HTTP/&lt;/span&gt;&lt;span class="mf"&gt;1.1&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt; &lt;span class="err"&gt;OK&lt;/span&gt; &lt;span class="err"&gt;HTTP/&lt;/span&gt;&lt;span class="mf"&gt;1.1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;OK&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;...&lt;/span&gt; &lt;span class="err"&gt;...&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;data&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;data&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;url&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;http://cliquet.readthedocs.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;url&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;http://cliquet.readthedocs.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;last_modified&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1437034418940&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;last_modified&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1437034418940&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="etape-3"&gt; &lt;div class="section" id="etape-3"&gt;
@ -3683,7 +3718,7 @@ concept repose sur &lt;a class="reference external" href="https://fr.wikipedia.o
&lt;a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05"&gt;*Remote Storage*&lt;/a&gt;, &lt;a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05"&gt;*Remote Storage*&lt;/a&gt;,
mais pour l&amp;#8217;instant les cas d&amp;#8217;utilisations ne se sont pas encore présentés&amp;nbsp;officiellement.&lt;/p&gt; mais pour l&amp;#8217;instant les cas d&amp;#8217;utilisations ne se sont pas encore présentés&amp;nbsp;officiellement.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="id2"&gt; &lt;div class="section" id="a-venir-1"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Nous serons probablement amenés à introduire la gestion de la concurrence dans &lt;p&gt;Nous serons probablement amenés à introduire la gestion de la concurrence dans
le client &lt;span class="caps"&gt;JS&lt;/span&gt;, en complément de ce qui a été fait sur le serveur, pour permettre le client &lt;span class="caps"&gt;JS&lt;/span&gt;, en complément de ce qui a été fait sur le serveur, pour permettre
@ -3698,17 +3733,17 @@ que &lt;a class="reference external" href="https://github.com/mozilla-services/k
&lt;h2&gt;Contenus applicatifs de&amp;nbsp;Firefox&lt;/h2&gt; &lt;h2&gt;Contenus applicatifs de&amp;nbsp;Firefox&lt;/h2&gt;
&lt;p&gt;Aujourd&amp;#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs &lt;p&gt;Aujourd&amp;#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs
consiste à désolidariser certains contenus applicatifs de ces cycles consiste à désolidariser certains contenus applicatifs de ces cycles
relativement longs (ex. &lt;em&gt;règles de securité, dictionnaires, traductions, &amp;#8230;&lt;/em&gt;) &lt;a class="footnote-reference" href="#id4" id="id3"&gt;[1]&lt;/a&gt;.&lt;/p&gt; relativement longs (ex. &lt;em&gt;règles de securité, dictionnaires, traductions, &amp;#8230;&lt;/em&gt;) &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Il s&amp;#8217;agit de données &lt;span class="caps"&gt;JSON&lt;/span&gt; et binaire qui doivent être versionnées et synchronisées par &lt;p&gt;Il s&amp;#8217;agit de données &lt;span class="caps"&gt;JSON&lt;/span&gt; et binaire qui doivent être versionnées et synchronisées par
les navigateurs (&lt;em&gt;lecture seule&lt;/em&gt;).&lt;/p&gt; les navigateurs (&lt;em&gt;lecture seule&lt;/em&gt;).&lt;/p&gt;
&lt;p&gt;Il y a plusieurs outils officiels qui existent pour gérer ça (&lt;em&gt;Balrog&lt;/em&gt;, &lt;em&gt;Shavar&lt;/em&gt;, &amp;#8230;), &lt;p&gt;Il y a plusieurs outils officiels qui existent pour gérer ça (&lt;em&gt;Balrog&lt;/em&gt;, &lt;em&gt;Shavar&lt;/em&gt;, &amp;#8230;),
et pour l&amp;#8217;instant, aucun choix n&amp;#8217;a été fait. Mais lors des conversations avec et pour l&amp;#8217;instant, aucun choix n&amp;#8217;a été fait. Mais lors des conversations avec
l&amp;#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour l&amp;#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour
ce genre de besoins internes, &lt;em&gt;Kinto&lt;/em&gt; est tout aussi pertinent&amp;nbsp;!&lt;/p&gt; ce genre de besoins internes, &lt;em&gt;Kinto&lt;/em&gt; est tout aussi pertinent&amp;nbsp;!&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La bonne nouvelle c&amp;#8217;est que toutes les fonctionnalités &lt;em&gt;third-party&lt;/em&gt; qui ont &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La bonne nouvelle c&amp;#8217;est que toutes les fonctionnalités &lt;em&gt;third-party&lt;/em&gt; qui ont
été intégrées récemment vont redevenir des &lt;em&gt;add-ons&lt;/em&gt; \o/.&lt;/td&gt;&lt;/tr&gt; été intégrées récemment vont redevenir des &lt;em&gt;add-ons&lt;/em&gt; \o/.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -3722,7 +3757,7 @@ un prototype pour améliorer &lt;em&gt;Awesome bar&lt;/em&gt;, qui fusionnerait
&lt;p&gt;Nous ne pouvons pas en dire beaucoup plus pour l&amp;#8217;instant, mais les fonctionnalités &lt;p&gt;Nous ne pouvons pas en dire beaucoup plus pour l&amp;#8217;instant, mais les fonctionnalités
de collections d&amp;#8217;enregistrements partagées entre utilisateurs de &lt;em&gt;Kinto&lt;/em&gt; de collections d&amp;#8217;enregistrements partagées entre utilisateurs de &lt;em&gt;Kinto&lt;/em&gt;
correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&amp;nbsp;:)&lt;/p&gt; correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&amp;nbsp;:)&lt;/p&gt;
&lt;div class="section" id="id5"&gt; &lt;div class="section" id="a-venir-2"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Nous serons donc probablement amenés, avant de la fin de l&amp;#8217;année, à introduire des &lt;p&gt;Nous serons donc probablement amenés, avant de la fin de l&amp;#8217;année, à introduire des
fonctionnalités d&amp;#8217;indexation et de recherche &lt;em&gt;full-text&lt;/em&gt; (comprendre &lt;em&gt;ElasticSearch&lt;/em&gt;). fonctionnalités d&amp;#8217;indexation et de recherche &lt;em&gt;full-text&lt;/em&gt; (comprendre &lt;em&gt;ElasticSearch&lt;/em&gt;).
@ -3744,7 +3779,7 @@ ou un équivalent à &lt;em&gt;Alexa.com Top 500&lt;/em&gt; pour fournir la comp
interroger le moteur de&amp;nbsp;recherche.&lt;/p&gt; interroger le moteur de&amp;nbsp;recherche.&lt;/p&gt;
&lt;p&gt;L&amp;#8217;exercice pourrait être poussé jusqu&amp;#8217;à la synchronisation d&amp;#8217;états &lt;em&gt;React&lt;/em&gt; &lt;p&gt;L&amp;#8217;exercice pourrait être poussé jusqu&amp;#8217;à la synchronisation d&amp;#8217;états &lt;em&gt;React&lt;/em&gt;
entre périphériques (par exemple pour les&amp;nbsp;onglets).&lt;/p&gt; entre périphériques (par exemple pour les&amp;nbsp;onglets).&lt;/p&gt;
&lt;div class="section" id="id7"&gt; &lt;div class="section" id="a-venir-3"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Si &lt;em&gt;browser.html&lt;/em&gt; doit stocker des données de navigation, il faudra ajouter &lt;p&gt;Si &lt;em&gt;browser.html&lt;/em&gt; doit stocker des données de navigation, il faudra ajouter
des fonctionnalités de chiffrement sur le client &lt;span class="caps"&gt;JS&lt;/span&gt;. Ça tombe bien, c&amp;#8217;est un des fonctionnalités de chiffrement sur le client &lt;span class="caps"&gt;JS&lt;/span&gt;. Ça tombe bien, c&amp;#8217;est un
@ -3905,7 +3940,7 @@ du&amp;nbsp;sens.&lt;/p&gt;</content><category term="Réfléxions"></category></
et Kinto 1.0&amp;nbsp;!&lt;/p&gt; et Kinto 1.0&amp;nbsp;!&lt;/p&gt;
</summary><content type="html">&lt;p&gt;&lt;em&gt;Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&amp;nbsp;Mozilla&lt;/em&gt;&lt;/p&gt; </summary><content type="html">&lt;p&gt;&lt;em&gt;Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&amp;nbsp;Mozilla&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Aujourd&amp;#8217;hui, c&amp;#8217;est jour de fête : nous venons de publier Cliquet &lt;strong&gt;2.0&lt;/strong&gt; &lt;p&gt;Aujourd&amp;#8217;hui, c&amp;#8217;est jour de fête : nous venons de publier Cliquet &lt;strong&gt;2.0&lt;/strong&gt;
&lt;a class="footnote-reference" href="#id5" id="id1"&gt;[1]&lt;/a&gt; et Kinto &lt;strong&gt;1.0&lt;/strong&gt; &lt;a class="footnote-reference" href="#id6" id="id2"&gt;[2]&lt;/a&gt;.&lt;/p&gt; &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt; et Kinto &lt;strong&gt;1.0&lt;/strong&gt; &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote class="epigraph"&gt; &lt;blockquote class="epigraph"&gt;
&lt;p&gt;L&amp;#8217;aboutissement de 3 années de R&amp;amp;D&amp;nbsp;!&lt;/p&gt; &lt;p&gt;L&amp;#8217;aboutissement de 3 années de R&amp;amp;D&amp;nbsp;!&lt;/p&gt;
&lt;p class="attribution"&gt;&amp;mdash;Rémy&lt;/p&gt; &lt;p class="attribution"&gt;&amp;mdash;Rémy&lt;/p&gt;
@ -3926,7 +3961,7 @@ fonctionnalités que l&amp;#8217;on attendait depuis longtemps, comme la gestion
s&amp;#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées, s&amp;#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées,
notamment sur la documentation et les&amp;nbsp;performances.&lt;/p&gt; notamment sur la documentation et les&amp;nbsp;performances.&lt;/p&gt;
&lt;p&gt;On peut déjà entrevoir à quoi l&amp;#8217;écosystème va ressembler, et c&amp;#8217;est prometteur. &lt;p&gt;On peut déjà entrevoir à quoi l&amp;#8217;écosystème va ressembler, et c&amp;#8217;est prometteur.
Il y a déjà un client JavaScript &lt;a class="footnote-reference" href="#id7" id="id3"&gt;[3]&lt;/a&gt; dont l&amp;#8217;objectif est de synchroniser les Il y a déjà un client JavaScript &lt;a class="footnote-reference" href="#footnote-3" id="footnote-reference-3"&gt;[3]&lt;/a&gt; dont l&amp;#8217;objectif est de synchroniser les
données locales du navigateur avec une instance de&amp;nbsp;Kinto.&lt;/p&gt; données locales du navigateur avec une instance de&amp;nbsp;Kinto.&lt;/p&gt;
&lt;p&gt;N&amp;#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez &lt;p&gt;N&amp;#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez
des problématiques proches : nous accueillons avec plaisir toutes sortes de des problématiques proches : nous accueillons avec plaisir toutes sortes de
@ -3935,34 +3970,34 @@ la solution ou de la manière de communiquer avec le monde extérieur. Si vous
souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous
contacter sur le canal &lt;a class="reference external" href="irc://irc.mozilla.org/#storage"&gt;#storage&lt;/a&gt; sur le réseau &lt;span class="caps"&gt;IRC&lt;/span&gt; de&amp;nbsp;Mozilla.&lt;/p&gt; contacter sur le canal &lt;a class="reference external" href="irc://irc.mozilla.org/#storage"&gt;#storage&lt;/a&gt; sur le réseau &lt;span class="caps"&gt;IRC&lt;/span&gt; de&amp;nbsp;Mozilla.&lt;/p&gt;
&lt;p&gt;Et ce n&amp;#8217;est que le début ! Le futur se dessine dans notre feuille de route &lt;p&gt;Et ce n&amp;#8217;est que le début ! Le futur se dessine dans notre feuille de route
&lt;a class="footnote-reference" href="#id8" id="id4"&gt;[4]&lt;/a&gt;.&lt;/p&gt; &lt;a class="footnote-reference" href="#footnote-4" id="footnote-reference-4"&gt;[4]&lt;/a&gt;.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id5" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; est une boite à outils pour faciliter l&amp;#8217;implémentation de &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; est une boite à outils pour faciliter l&amp;#8217;implémentation de
microservices &lt;span class="caps"&gt;HTTP&lt;/span&gt; tels que les APIs &lt;em&gt;&lt;span class="caps"&gt;REST&lt;/span&gt;&lt;/em&gt; ayant des besoins de microservices &lt;span class="caps"&gt;HTTP&lt;/span&gt; tels que les APIs &lt;em&gt;&lt;span class="caps"&gt;REST&lt;/span&gt;&lt;/em&gt; ayant des besoins de
synchronisation.&lt;/td&gt;&lt;/tr&gt; synchronisation.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id6" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Kinto&lt;/strong&gt; est un service pour stocker, synchroniser et partager des données &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Kinto&lt;/strong&gt; est un service pour stocker, synchroniser et partager des données
arbitraires, attachées à un compte Firefox (mais le système d&amp;#8217;authentification arbitraires, attachées à un compte Firefox (mais le système d&amp;#8217;authentification
est &lt;em&gt;pluggable&lt;/em&gt;).&lt;/td&gt;&lt;/tr&gt; est &lt;em&gt;pluggable&lt;/em&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id7" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-3" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Cliquetis, la bibliothèque JavaScript pour consommer l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt; &lt;span class="caps"&gt;HTTP&lt;/span&gt; de Kinto — &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Cliquetis, la bibliothèque JavaScript pour consommer l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt; &lt;span class="caps"&gt;HTTP&lt;/span&gt; de Kinto —
&lt;a class="reference external" href="https://github.com/mozilla-services/cliquetis"&gt;https://github.com/mozilla-services/cliquetis&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="https://github.com/mozilla-services/cliquetis"&gt;https://github.com/mozilla-services/cliquetis&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id8" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-4" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id4"&gt;[4]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La feuille de route de Kinto: &lt;a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap"&gt;https://github.com/mozilla-services/kinto/wiki/roadmap&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-4"&gt;[4]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La feuille de route de Kinto: &lt;a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap"&gt;https://github.com/mozilla-services/kinto/wiki/roadmap&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
</content><category term="Technologie"></category></entry><entry><title>Service de nuages : Stocker et interroger les permissions avec Kinto</title><link href="https://blog.notmyidea.org/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html" rel="alternate"></link><published>2015-05-26T00:00:00+02:00</published><updated>2015-05-26T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2015-05-26:/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html</id><summary type="html">&lt;p class="first last"&gt;Comment faire pour stocker et interroger la base de données au sujet des permissions avec Kinto&amp;nbsp;?&lt;/p&gt; </content><category term="Technologie"></category></entry><entry><title>Service de nuages : Stocker et interroger les permissions avec Kinto</title><link href="https://blog.notmyidea.org/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html" rel="alternate"></link><published>2015-05-26T00:00:00+02:00</published><updated>2015-05-26T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2015-05-26:/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html</id><summary type="html">&lt;p class="first last"&gt;Comment faire pour stocker et interroger la base de données au sujet des permissions avec Kinto&amp;nbsp;?&lt;/p&gt;
@ -4078,13 +4113,13 @@ avantages (lisibilité, unicité, cohérence avec les&amp;nbsp;URLs)&lt;/p&gt;
&lt;div class="section" id="les-tables"&gt; &lt;div class="section" id="les-tables"&gt;
&lt;h3&gt;Les&amp;nbsp;tables&lt;/h3&gt; &lt;h3&gt;Les&amp;nbsp;tables&lt;/h3&gt;
&lt;p&gt;Pour le stockage des principals et des&amp;nbsp;permissions:&lt;/p&gt; &lt;p&gt;Pour le stockage des principals et des&amp;nbsp;permissions:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;La table &lt;em&gt;perms&lt;/em&gt; va associer des &lt;em&gt;principals&lt;/em&gt; à chaque &lt;em&gt;&lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/em&gt;&amp;nbsp;(e.g.&amp;#8220;/buckets/blog:write&amp;#8220;).&lt;/p&gt; &lt;p&gt;La table &lt;em&gt;perms&lt;/em&gt; va associer des &lt;em&gt;principals&lt;/em&gt; à chaque &lt;em&gt;&lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/em&gt;&amp;nbsp;(e.g.&amp;#8220;/buckets/blog:write&amp;#8220;).&lt;/p&gt;
&lt;p&gt;Pour le stockage des&amp;nbsp;données:&lt;/p&gt; &lt;p&gt;Pour le stockage des&amp;nbsp;données:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt; &lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;write_principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt; &lt;span class="n"&gt;read_principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;La colonne &lt;em&gt;parent_id&lt;/em&gt; permet de savoir à qui appartient l&amp;#8217;objet &lt;p&gt;La colonne &lt;em&gt;parent_id&lt;/em&gt; permet de savoir à qui appartient l&amp;#8217;objet
(e.g. groupe d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, collection d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, &lt;em&gt;record&lt;/em&gt; d&amp;#8217;une (e.g. groupe d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, collection d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, &lt;em&gt;record&lt;/em&gt; d&amp;#8217;une
@ -4092,53 +4127,53 @@ collection,&amp;nbsp;&amp;#8230;).&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="exemple-d-utilisateur"&gt; &lt;div class="section" id="exemple-d-utilisateur"&gt;
&lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;utilisateur&lt;/h3&gt; &lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;utilisateur&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:alexis&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:alexis&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="exemple-d-objets"&gt; &lt;div class="section" id="exemple-d-objets"&gt;
&lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;objets&lt;/h3&gt; &lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;objets&lt;/h3&gt;
&lt;div class="section" id="bucket"&gt; &lt;div class="section" id="bucket"&gt;
&lt;h4&gt;Bucket&lt;/h4&gt; &lt;h4&gt;Bucket&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;bucket&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;bucket&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;blog&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;blog&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{&amp;quot;fxa:alexis&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;fxa:alexis&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="group"&gt; &lt;div class="section" id="group"&gt;
&lt;h4&gt;Group&lt;/h4&gt; &lt;h4&gt;Group&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/groups/moderators&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/groups/moderators&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;group&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;group&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;moderators&amp;quot;, &amp;quot;members&amp;quot;: [&amp;#39;&lt;/span&gt;&lt;span class="n"&gt;fxa&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="n"&gt;natim&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;]}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;moderators&amp;quot;, &amp;quot;members&amp;quot;: [&amp;#39;&lt;/span&gt;&lt;span class="n"&gt;fxa&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="n"&gt;natim&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;]}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ce groupe peut être gére par &lt;tt class="docutils literal"&gt;fxa:alexis&lt;/tt&gt; puisqu&amp;#8217;il a la permission &lt;p&gt;Ce groupe peut être gére par &lt;tt class="docutils literal"&gt;fxa:alexis&lt;/tt&gt; puisqu&amp;#8217;il a la permission
&lt;tt class="docutils literal"&gt;write&lt;/tt&gt; dans le &lt;em&gt;bucket&lt;/em&gt;&amp;nbsp;parent.&lt;/p&gt; &lt;tt class="docutils literal"&gt;write&lt;/tt&gt; dans le &lt;em&gt;bucket&lt;/em&gt;&amp;nbsp;parent.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="collection"&gt; &lt;div class="section" id="collection"&gt;
&lt;h4&gt;Collection&lt;/h4&gt; &lt;h4&gt;Collection&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;collection&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;collection&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;article&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;article&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;system.Everyone&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;system.Everyone&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Cette collection d&amp;#8217;articles peut être lue par tout le monde, &lt;p&gt;Cette collection d&amp;#8217;articles peut être lue par tout le monde,
et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderators&lt;/tt&gt;, ainsi que et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderators&lt;/tt&gt;, ainsi que
@ -4146,56 +4181,56 @@ et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderato
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="records"&gt; &lt;div class="section" id="records"&gt;
&lt;h4&gt;Records&lt;/h4&gt; &lt;h4&gt;Records&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;quot;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;quot;,&lt;/span&gt;
&lt;span class="s1"&gt; &amp;quot;title&amp;quot;: &amp;quot;Stocker les permissions&amp;quot;, ...}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt; &amp;quot;title&amp;quot;: &amp;quot;Stocker les permissions&amp;quot;, ...}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="interroger-les-permissions"&gt; &lt;div class="section" id="interroger-les-permissions"&gt;
&lt;h3&gt;Interroger les&amp;nbsp;permissions&lt;/h3&gt; &lt;h3&gt;Interroger les&amp;nbsp;permissions&lt;/h3&gt;
&lt;div class="section" id="id1"&gt; &lt;div class="section" id="obtenir-la-liste-des-principals-d-un-ace-1"&gt;
&lt;h4&gt;Obtenir la liste des &amp;#8220;principals&amp;#8221; d&amp;#8217;un &lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/h4&gt; &lt;h4&gt;Obtenir la liste des &amp;#8220;principals&amp;#8221; d&amp;#8217;un &lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;Comme vu plus haut, pour vérifier une permission, on fait l&amp;#8217;union des &lt;p&gt;Comme vu plus haut, pour vérifier une permission, on fait l&amp;#8217;union des
&lt;em&gt;principals&lt;/em&gt; requis par les objets hérités, et on teste leur &lt;em&gt;principals&lt;/em&gt; requis par les objets hérités, et on teste leur
intersection avec ceux de&amp;nbsp;l&amp;#8217;utilisateur:&lt;/p&gt; intersection avec ceux de&amp;nbsp;l&amp;#8217;utilisateur:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;WITH&lt;/span&gt; &lt;span class="n"&gt;required_principals&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;WITH&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;required_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;perms&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;ace&lt;/span&gt; &lt;span class="k"&gt;IN&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;IN&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;user_principals&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;COUNT&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;COUNT&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;user_principals&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;INNER&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;required_principals&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INNER&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;JOIN&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;required_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;ON&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;ON&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="filtrer-les-objets-en-fonction-des-permissions"&gt; &lt;div class="section" id="filtrer-les-objets-en-fonction-des-permissions"&gt;
&lt;h4&gt;Filtrer les objets en fonction des&amp;nbsp;permissions&lt;/h4&gt; &lt;h4&gt;Filtrer les objets en fonction des&amp;nbsp;permissions&lt;/h4&gt;
&lt;p&gt;Pour filtrer les objets, on fait une simple intersection de liste &lt;p&gt;Pour filtrer les objets, on fait une simple intersection de liste
(&lt;em&gt;merci PostgreSQL&lt;/em&gt;):&lt;/p&gt; (&lt;em&gt;merci PostgreSQL&lt;/em&gt;):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="k"&gt;OR&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;OR&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Les listes s&amp;#8217;indexent bien, notamment grâce aux &lt;a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html"&gt;index &lt;span class="caps"&gt;GIN&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Les listes s&amp;#8217;indexent bien, notamment grâce aux &lt;a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html"&gt;index &lt;span class="caps"&gt;GIN&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
@ -4641,7 +4676,7 @@ une réponse satisfaisante à ces&amp;nbsp;besoins.&lt;/p&gt;
&lt;div class="section" id="le-concept-de-principal"&gt; &lt;div class="section" id="le-concept-de-principal"&gt;
&lt;h3&gt;Le concept de « principal&amp;nbsp;»&lt;/h3&gt; &lt;h3&gt;Le concept de « principal&amp;nbsp;»&lt;/h3&gt;
&lt;p&gt;Un &lt;em&gt;principal&lt;/em&gt;, en sécurité informatique, est une entité qui peut être &lt;p&gt;Un &lt;em&gt;principal&lt;/em&gt;, en sécurité informatique, est une entité qui peut être
authentifiée par un système informatique. &lt;a class="footnote-reference" href="#id2" id="id1"&gt;[1]&lt;/a&gt; En Français il s&amp;#8217;agit authentifiée par un système informatique. &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt; En Français il s&amp;#8217;agit
du « commettant », l&amp;#8217;acteur qui commet l&amp;#8217;action (oui, le terme est conceptuel&amp;nbsp;!)&lt;/p&gt; du « commettant », l&amp;#8217;acteur qui commet l&amp;#8217;action (oui, le terme est conceptuel&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;Il peut s&amp;#8217;agir aussi bien d&amp;#8217;un individu, d&amp;#8217;un ordinateur, d&amp;#8217;un &lt;p&gt;Il peut s&amp;#8217;agir aussi bien d&amp;#8217;un individu, d&amp;#8217;un ordinateur, d&amp;#8217;un
service ou d&amp;#8217;un groupe regroupant l&amp;#8217;une de ces entités, ce qui service ou d&amp;#8217;un groupe regroupant l&amp;#8217;une de ces entités, ce qui
@ -4650,10 +4685,10 @@ est plus large que le classique « &lt;em&gt;user id&lt;/em&gt;&amp;nbsp;».&lt;
&lt;p&gt;Par exemple, un utilisateur est identifié de manière unique lors de la &lt;p&gt;Par exemple, un utilisateur est identifié de manière unique lors de la
connexion par le système d&amp;#8217;authentification dont le rôle est de connexion par le système d&amp;#8217;authentification dont le rôle est de
définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisateur se&amp;nbsp;connectant.&lt;/p&gt; définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisateur se&amp;nbsp;connectant.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id2" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Pour en savoir plus sur les &lt;em&gt;principals&lt;/em&gt; : &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Pour en savoir plus sur les &lt;em&gt;principals&lt;/em&gt; :
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29"&gt;https://en.wikipedia.org/wiki/Principal_%28computer_security%29&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29"&gt;https://en.wikipedia.org/wiki/Principal_%28computer_security%29&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -4662,17 +4697,17 @@ définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisate
&lt;h3&gt;La différence entre rôle et&amp;nbsp;groupe&lt;/h3&gt; &lt;h3&gt;La différence entre rôle et&amp;nbsp;groupe&lt;/h3&gt;
&lt;p&gt;De but en blanc, il n&amp;#8217;est pas évident de définir précisément la &lt;p&gt;De but en blanc, il n&amp;#8217;est pas évident de définir précisément la
différence entre ces deux concepts qui permettent d&amp;#8217;associer différence entre ces deux concepts qui permettent d&amp;#8217;associer
des permissions à un groupe de &lt;em&gt;principals&lt;/em&gt;. &lt;a class="footnote-reference" href="#id4" id="id3"&gt;[2]&lt;/a&gt;&lt;/p&gt; des permissions à un groupe de &lt;em&gt;principals&lt;/em&gt;. &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;La différence est principalement sémantique. Mais on peut y voir une &lt;p&gt;La différence est principalement sémantique. Mais on peut y voir une
différence dans la « direction » de la relation entre les deux&amp;nbsp;concepts.&lt;/p&gt; différence dans la « direction » de la relation entre les deux&amp;nbsp;concepts.&lt;/p&gt;
&lt;ul class="simple"&gt; &lt;ul class="simple"&gt;
&lt;li&gt;Un rôle est une liste de permissions que l&amp;#8217;on associe à un &lt;em&gt;principal&lt;/em&gt;.&lt;/li&gt; &lt;li&gt;Un rôle est une liste de permissions que l&amp;#8217;on associe à un &lt;em&gt;principal&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;Un groupe est une liste de &lt;em&gt;principals&lt;/em&gt; que l&amp;#8217;on peut associer à une&amp;nbsp;permission.&lt;/li&gt; &lt;li&gt;Un groupe est une liste de &lt;em&gt;principals&lt;/em&gt; que l&amp;#8217;on peut associer à une&amp;nbsp;permission.&lt;/li&gt;
&lt;/ul&gt; &lt;/ul&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Plus d&amp;#8217;informations : &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Plus d&amp;#8217;informations :
&lt;a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference"&gt;http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference"&gt;http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -5319,16 +5354,16 @@ terme, et que &lt;em&gt;Remote Storage&lt;/em&gt; devienne une facette de notre&
&lt;p&gt;&lt;a href="http://pouchdb.com/"&gt;PouchDB&lt;/a&gt; est une bibliothèque JavaScript qui &lt;p&gt;&lt;a href="http://pouchdb.com/"&gt;PouchDB&lt;/a&gt; est une bibliothèque JavaScript qui
permet de manipuler des enregistrements en local et de les synchroniser permet de manipuler des enregistrements en local et de les synchroniser
vers une base&amp;nbsp;distante.&lt;/p&gt; vers une base&amp;nbsp;distante.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="n"&gt;PouchDB&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dbname&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PouchDB&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dbname&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;put&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;put&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;dave@gmail.com&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dave@gmail.com&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;David&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;David&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;68&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;68&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;replicate&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://example.com/mydb&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;replicate&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://example.com/mydb&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Le projet a le vent en poupe, bénéficie de nombreux contributeurs, &lt;p&gt;Le projet a le vent en poupe, bénéficie de nombreux contributeurs,
@ -5795,33 +5830,33 @@ on the server (so you don&amp;#8217;t need to store&amp;nbsp;anything).&lt;/p&gt
finally came up factorizing everything in a library for express, named finally came up factorizing everything in a library for express, named
&lt;a href="https://github.com/mozilla-services/express-hawkauth"&gt;express-hawkauth&lt;/a&gt;.&lt;/p&gt; &lt;a href="https://github.com/mozilla-services/express-hawkauth"&gt;express-hawkauth&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In order to plug it in your application, you&amp;#8217;ll need to use it as a&amp;nbsp;middleware:&lt;/p&gt; &lt;p&gt;In order to plug it in your application, you&amp;#8217;ll need to use it as a&amp;nbsp;middleware:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;express&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;hawk&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express-hawkauth&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express-hawkauth&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;hawkMiddleware&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;hawkOptions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkOptions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;getSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;getSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="k"&gt;pass&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;algorithm&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;which&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;pass&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;given&lt;/span&gt; &lt;span class="n"&gt;token&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;First&lt;/span&gt; &lt;span class="n"&gt;argument&lt;/span&gt; &lt;span class="n"&gt;of&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;callback&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;potential&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;given&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;token&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;First&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;argument&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;of&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;callback&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;potential&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;key&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;sha256&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;key&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;sha256&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;createSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;createSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="n"&gt;stores&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;session&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;given&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;which&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;stores&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;given&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;Argument&lt;/span&gt; &lt;span class="n"&gt;returned&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;potential&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Argument&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;returned&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;potential&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;setUser&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;setUser&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;that&lt;/span&gt; &lt;span class="n"&gt;uses&lt;/span&gt; &lt;span class="n"&gt;req&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;hawkId&lt;/span&gt; &lt;span class="n"&gt;when&lt;/span&gt; &lt;span class="n"&gt;they&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;re known so&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;that&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;uses&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkId&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;when&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;they&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;re known so&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;that&lt;/span&gt; &lt;span class="n"&gt;it&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;tweak&lt;/span&gt; &lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;For&lt;/span&gt; &lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;you&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;store&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;that&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tweak&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;For&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;you&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;store&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;as&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;/hawk-enabled-endpoint&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;/hawk-enabled-endpoint&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;If you pass the createSession parameter, all non-authenticated requests &lt;p&gt;If you pass the createSession parameter, all non-authenticated requests
@ -6842,8 +6877,8 @@ ailleurs, pour finalement déployer la chose chez
&lt;p&gt;Après quelques péripéties, j&amp;#8217;ai réussi à faire tourner le tout, ça à été &lt;p&gt;Après quelques péripéties, j&amp;#8217;ai réussi à faire tourner le tout, ça à été
un peu la bataille au départ pour installer virtualenv (j&amp;#8217;ai du faire un peu la bataille au départ pour installer virtualenv (j&amp;#8217;ai du faire
des changements dans mon &lt;span class="caps"&gt;PATH&lt;/span&gt; pour que ça puisse marcher), voici mon&amp;nbsp;`.bash_profile`:&lt;/p&gt; des changements dans mon &lt;span class="caps"&gt;PATH&lt;/span&gt; pour que ça puisse marcher), voici mon&amp;nbsp;`.bash_profile`:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="n"&gt;PYTHONPATH&lt;/span&gt;&lt;span class="o"&gt;=~/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PYTHONPATH&lt;/span&gt;&lt;span class="o"&gt;=~/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="o"&gt;=$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;bin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt; &lt;span class="k"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="o"&gt;=$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;bin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Et après y&amp;#8217;a plus qu&amp;#8217;à installer avec&amp;nbsp;`easy_install`:&lt;/p&gt; &lt;p&gt;Et après y&amp;#8217;a plus qu&amp;#8217;à installer avec&amp;nbsp;`easy_install`:&lt;/p&gt;
@ -6943,7 +6978,7 @@ PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;On peut donc spécifier des &amp;#8220;sauts&amp;#8221; ssh du&amp;nbsp;style:&lt;/p&gt; &lt;p&gt;On peut donc spécifier des &amp;#8220;sauts&amp;#8221; ssh du&amp;nbsp;style:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;root&lt;/span&gt;&lt;span class="mf"&gt;@91.25.25.25&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;192.168.1.1&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;ssh&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;root&lt;/span&gt;&lt;span class="mf"&gt;@91.25.25.25&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;192.168.1.1&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ensuite on peut essayer de&amp;nbsp;rajouter:&lt;/p&gt; &lt;p&gt;Ensuite on peut essayer de&amp;nbsp;rajouter:&lt;/p&gt;
@ -7028,7 +7063,7 @@ décembre&amp;nbsp;2012:&lt;/p&gt;
&lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de &lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de
s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt; s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt;
&lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer &lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer
l&amp;#8217;industrie après les dégats de la guerre et les &lt;/p&gt;</summary><content type="html"> l&amp;#8217;industrie après les dégats de la guerre …&lt;/p&gt;</summary><content type="html">
&lt;p&gt;&lt;a href="http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed"&gt;http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed"&gt;http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de &lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de
s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt; s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt;
@ -8877,16 +8912,16 @@ $ ant
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Here is a simple example of how to use boilerpipe in Java, from their&amp;nbsp;sources&lt;/p&gt; &lt;p&gt;Here is a simple example of how to use boilerpipe in Java, from their&amp;nbsp;sources&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;de.l3s.boilerpipe.demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;de.l3s.boilerpipe.demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.net.URL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;java.net.URL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;de.l3s.boilerpipe.extractors.ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;de.l3s.boilerpipe.extractors.ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Oneliner&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="kd"&gt;public&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Oneliner&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="kd"&gt;throws&lt;/span&gt; &lt;span class="n"&gt;Exception&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;public&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;static&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;void&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;throws&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Exception&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt; &lt;span class="n"&gt;url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://notmyidea.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://notmyidea.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;INSTANCE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getText&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;INSTANCE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getText&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;To run&amp;nbsp;it:&lt;/p&gt; &lt;p&gt;To run&amp;nbsp;it:&lt;/p&gt;
@ -9250,14 +9285,14 @@ unison .vimrc ssh://notmyidea.org:20006/.vimrc
&lt;p&gt;It is also possible to put all the informations in a config file, and &lt;p&gt;It is also possible to put all the informations in a config file, and
then to only run unison. (fire up vim&amp;nbsp;\~/.unison/default.prf.&lt;/p&gt; then to only run unison. (fire up vim&amp;nbsp;\~/.unison/default.prf.&lt;/p&gt;
&lt;p&gt;Here is my&amp;nbsp;config:&lt;/p&gt; &lt;p&gt;Here is my&amp;nbsp;config:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; &lt;span class="na"&gt;root&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;/home/alexis&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;/home/alexis&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;root&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;ssh://notmyidea.org:20006&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;ssh://notmyidea.org:20006&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;.vimrc&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;.vimrc&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;dotfiles&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;dotfiles&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;dev&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;dev&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;follow&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;Name *&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;follow&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;Name *&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;My vimrc is in fact a symbolic link on my laptop, but I don&amp;#8217;t want to &lt;p&gt;My vimrc is in fact a symbolic link on my laptop, but I don&amp;#8217;t want to
@ -9685,35 +9720,35 @@ $ gnome-background-generator -p ~/Images/walls -s
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Here is a extract of the&amp;nbsp;`&amp;#8212;help`:&lt;/p&gt; &lt;p&gt;Here is a extract of the&amp;nbsp;`&amp;#8212;help`:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;shell&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;shell&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;simple&lt;/span&gt; &lt;span class="n"&gt;command&lt;/span&gt; &lt;span class="n"&gt;line&lt;/span&gt; &lt;span class="k"&gt;tool&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;generate&lt;/span&gt; &lt;span class="n"&gt;an&lt;/span&gt; &lt;span class="n"&gt;XML&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;use&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;simple&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;command&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;line&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;tool&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;generate&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;an&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;XML&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;use&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;wallpapers&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;have&lt;/span&gt; &lt;span class="n"&gt;dynamic&lt;/span&gt; &lt;span class="n"&gt;walls&lt;/span&gt; &lt;span class="n"&gt;wallpapers&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;have&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;walls&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;optional&lt;/span&gt; &lt;span class="n"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;optional&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="n"&gt;show&lt;/span&gt; &lt;span class="n"&gt;this&lt;/span&gt; &lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="n"&gt;message&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;show&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;this&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;exit&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt; &lt;span class="n"&gt;Path&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;look&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;If&lt;/span&gt; &lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;look&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;If&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;no&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;will&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;used&lt;/span&gt; &lt;span class="n"&gt;too&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;outputing&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;used&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;too&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;outputing&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;Default&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;current&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Default&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;current&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;directory&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;directory&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Output&lt;/span&gt; &lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;If&lt;/span&gt; &lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="n"&gt;filename&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;If&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;no&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt; &lt;span class="n"&gt;will&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;generated&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;generated&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;path&lt;/span&gt; &lt;span class="n"&gt;containing&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;You&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;also&lt;/span&gt; &lt;span class="n"&gt;use&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;-&amp;quot;&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;containing&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;You&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;also&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;use&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;-&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;display&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;stdout&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;stdout&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;transition&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;transition&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Time&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;transitions&lt;/span&gt; &lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="n"&gt;last&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;default&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;transitions&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;must&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;last&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;default&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Time&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;picture&lt;/span&gt; &lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;displayed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;Default&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;picture&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;must&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;displayed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Default&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="mi"&gt;900&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="n"&gt;mn&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;900&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="n"&gt;mn&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;&amp;#39;&amp;#39;try to set the background using gnome-appearance-&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;#39;&amp;#39;try to set the background using gnome-appearance-&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt; properties&lt;/span&gt; &lt;span class="s1"&gt; properties&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt; -b, --debug&lt;/span&gt; &lt;span class="s1"&gt; -b, --debug&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="Technologie"></category></entry><entry><title>How to install NGINX + PHP 5.3 on FreeBSD.</title><link href="https://blog.notmyidea.org/how-to-install-nginx-php-53-on-freebsd.html" rel="alternate"></link><published>2010-10-10T00:00:00+02:00</published><updated>2010-10-10T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-10:/how-to-install-nginx-php-53-on-freebsd.html</id><summary type="html"> &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="Technologie"></category></entry><entry><title>How to install NGINX + PHP 5.3 on FreeBSD.</title><link href="https://blog.notmyidea.org/how-to-install-nginx-php-53-on-freebsd.html" rel="alternate"></link><published>2010-10-10T00:00:00+02:00</published><updated>2010-10-10T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-10:/how-to-install-nginx-php-53-on-freebsd.html</id><summary type="html">
&lt;ul&gt; &lt;ul&gt;
&lt;li&gt; &lt;li&gt;
@ -9756,30 +9791,30 @@ the&amp;nbsp;server.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s a simple thing in fact, but it could be good to have something &lt;p&gt;That&amp;#8217;s a simple thing in fact, but it could be good to have something
that will work without effort over&amp;nbsp;time.&lt;/p&gt; that will work without effort over&amp;nbsp;time.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s a sample of my&amp;nbsp;configuration:&lt;/p&gt; &lt;p&gt;Here&amp;#8217;s a sample of my&amp;nbsp;configuration:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;server&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;server_name&lt;/span&gt; &lt;span class="err"&gt;ndd&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;server_name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;ndd&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;set&lt;/span&gt; &lt;span class="err"&gt;$path&lt;/span&gt; &lt;span class="err"&gt;/path/to/your/files&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/path/to/your/files&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;root&lt;/span&gt; &lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;location&lt;/span&gt; &lt;span class="err"&gt;/&lt;/span&gt; &lt;span class="err"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;index&lt;/span&gt; &lt;span class="err"&gt;index.php&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;index&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;index.php&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;location&lt;/span&gt; &lt;span class="o"&gt;~*&lt;/span&gt; &lt;span class="o"&gt;^.+.(&lt;/span&gt;&lt;span class="nt"&gt;jpg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;jpeg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;gif&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;css&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;png&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;js&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;ico&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;xml&lt;/span&gt;&lt;span class="o"&gt;)$&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;~*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;^.+.(&lt;/span&gt;&lt;span class="nt"&gt;jpg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;jpeg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;gif&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;css&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;png&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;js&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;ico&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;xml&lt;/span&gt;&lt;span class="o"&gt;)$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;access_log&lt;/span&gt; &lt;span class="err"&gt;off&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;access_log&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;off&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;expires&lt;/span&gt; &lt;span class="err"&gt;30d&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;expires&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;30d&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;location&lt;/span&gt; &lt;span class="o"&gt;~&lt;/span&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;php&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;php&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;fastcgi_param&lt;/span&gt; &lt;span class="err"&gt;SCRIPT_FILENAME&lt;/span&gt; &lt;span class="err"&gt;$path$fastcgi_script_name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_param&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;SCRIPT_FILENAME&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path$fastcgi_script_name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;fastcgi_pass&lt;/span&gt; &lt;span class="err"&gt;backend&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_pass&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;backend&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;include&lt;/span&gt; &lt;span class="err"&gt;fastcgi_params&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;include&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_params&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;}&lt;/span&gt; &lt;span class="err"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;upstream&lt;/span&gt; &lt;span class="nt"&gt;backend&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nt"&gt;upstream&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;server&lt;/span&gt; &lt;span class="err"&gt;127.0.0.1:9000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;127.0.0.1:9000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;And that&amp;#8217;s it&amp;nbsp;!&lt;/p&gt;</content><category term="Technologie"></category></entry><entry><title>Pelican, a simple static blog generator in python</title><link href="https://blog.notmyidea.org/pelican-a-simple-static-blog-generator-in-python.html" rel="alternate"></link><published>2010-10-06T00:00:00+02:00</published><updated>2010-10-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-06:/pelican-a-simple-static-blog-generator-in-python.html</id><summary type="html"> &lt;p&gt;And that&amp;#8217;s it&amp;nbsp;!&lt;/p&gt;</content><category term="Technologie"></category></entry><entry><title>Pelican, a simple static blog generator in python</title><link href="https://blog.notmyidea.org/pelican-a-simple-static-blog-generator-in-python.html" rel="alternate"></link><published>2010-10-06T00:00:00+02:00</published><updated>2010-10-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-06:/pelican-a-simple-static-blog-generator-in-python.html</id><summary type="html">

View file

@ -651,7 +651,7 @@ décembre&amp;nbsp;2012:&lt;/p&gt;
&lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de &lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de
s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt; s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt;
&lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer &lt;p&gt;Les états ont crée la propriété interellectuelle pour relancer
l&amp;#8217;industrie après les dégats de la guerre et les &lt;/p&gt;</summary><content type="html"> l&amp;#8217;industrie après les dégats de la guerre …&lt;/p&gt;</summary><content type="html">
&lt;p&gt;&lt;a href="http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed"&gt;http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed"&gt;http://www.dailymotion.com/video/x5nhq0_les-semences-paysannes_news#from=embed&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de &lt;p&gt;A l&amp;#8217;heure actuelle, il est interdit pour deux agriculteurs de
s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt; s&amp;#8217;échangers des semences dans le but d&amp;#8217;en revendre la&amp;nbsp;production.&lt;/p&gt;

View file

@ -120,7 +120,7 @@ des tests souvent&amp;nbsp;!&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt; &lt;p&gt;Speaker:&amp;nbsp;serge_sans_paille.&lt;/p&gt;
&lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est &lt;p&gt;Retour sur le passé des boucles: &lt;span class="caps"&gt;ASM&lt;/span&gt;, fortran, C. Avec &lt;span class="caps"&gt;APL&lt;/span&gt;, la boucle est
cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait pas etre &lt;/p&gt;</summary><content type="html">&lt;div class="admonition note"&gt; cachée au fur et à mesure des évolutions. Écrire une boucle ne devrait …&lt;/p&gt;</summary><content type="html">&lt;div class="admonition note"&gt;
&lt;p class="first admonition-title"&gt;Note&lt;/p&gt; &lt;p class="first admonition-title"&gt;Note&lt;/p&gt;
&lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas &lt;p class="last"&gt;Voici quelques notes prises durant la PyconFR 2015, à Pau. N&amp;#8217;hésitez pas
à les completer si&amp;nbsp;besoin.&lt;/p&gt; à les completer si&amp;nbsp;besoin.&lt;/p&gt;

View file

@ -1,5 +1,40 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Alexis Métaireau - Réfléxions</title><link href="https://blog.notmyidea.org/" rel="alternate"></link><link href="https://blog.notmyidea.org/feeds/reflexions.atom.xml" rel="self"></link><id>https://blog.notmyidea.org/</id><updated>2021-11-11T00:00:00+01:00</updated><entry><title>Conflit</title><link href="https://blog.notmyidea.org/conflit.html" rel="alternate"></link><published>2021-11-11T00:00:00+01:00</published><updated>2021-11-11T00:00:00+01:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2021-11-11:/conflit.html</id><summary type="html"> <feed xmlns="http://www.w3.org/2005/Atom"><title>Alexis Métaireau - Réfléxions</title><link href="https://blog.notmyidea.org/" rel="alternate"></link><link href="https://blog.notmyidea.org/feeds/reflexions.atom.xml" rel="self"></link><id>https://blog.notmyidea.org/</id><updated>2022-05-06T00:00:00+02:00</updated><entry><title>Fatigue relationnelle</title><link href="https://blog.notmyidea.org/fatigue-relationnelle.html" rel="alternate"></link><published>2022-05-06T00:00:00+02:00</published><updated>2022-05-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2022-05-06:/fatigue-relationnelle.html</id><summary type="html">
&lt;p&gt;Depuis peu, je me retrouve confronté à mon manque d&amp;#8217;envie d&amp;#8217;être avec d&amp;#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&amp;#8217;il y a quelques&amp;nbsp;années.&lt;/p&gt;
&lt;p&gt;Je ne sais pas exactement d&amp;#8217;où cela vient : si c&amp;#8217;est un des nombreux effets …&lt;/p&gt;</summary><content type="html">
&lt;p&gt;Depuis peu, je me retrouve confronté à mon manque d&amp;#8217;envie d&amp;#8217;être avec d&amp;#8217;autres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint qu&amp;#8217;il y a quelques&amp;nbsp;années.&lt;/p&gt;
&lt;p&gt;Je ne sais pas exactement d&amp;#8217;où cela vient : si c&amp;#8217;est un des nombreux effets psychologiques que le &lt;span class="caps"&gt;COVID&lt;/span&gt; à eu sur moi, si j&amp;#8217;accorde trop de place aux collectifs dans ma vie (travail, habitation, ami⋅es), ou si simplement mes envies ne sont plus les mêmes qu&amp;#8217;il y a quelques années, mais le résultat est bel et bien&amp;nbsp;là.&lt;/p&gt;
&lt;p&gt;Malgré tout j&amp;#8217;ai envie d&amp;#8217;être disponible pour les personnes qui comptent pour moi, et je réfléchis donc à différentes solutions : déménager et habiter en solo, faire moins d&amp;#8217;activités extérieures ou bien m&amp;#8217;isoler plus souvent dans les espaces&amp;nbsp;collectifs.&lt;/p&gt;
&lt;p&gt;Le fait de retourner potentiellement habiter en solo vient questionner mon rapport au collectif omniprésent dans ma vie, et qui jouit d&amp;#8217;un statut particulier pour moi. Le collectif semble être quasiment un &lt;em&gt;objectif en soi&lt;/em&gt;, et donc quelque-part partir de ces espaces collectifs serait une sorte&amp;nbsp;d&amp;#8217;échec.&lt;/p&gt;
&lt;p&gt;Entrouvrir cette possibilité me plaît parce-que ça me pousse à accepter mes limites et à mettre en balance ma qualité de relation aux autres avec mes valeurs collectivistes. Du collectif, oui, mais peut-être avec un mix différent&amp;nbsp;?&lt;/p&gt;
&lt;p&gt;Ça fait également écho à ma &lt;a href="conflit.html"&gt;gestion du conflit&lt;/a&gt;. Je me rends compte que j&amp;#8217;ai besoin d&amp;#8217;évoluer dans des collectifs qui partagent cette culture de la gestion du conflit (plutôt que de son&amp;nbsp;évitement).&lt;/p&gt;</content><category term="Réfléxions"></category></entry><entry><title>Accueil, transmission et confiance</title><link href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" rel="alternate"></link><published>2022-05-01T00:00:00+02:00</published><updated>2022-05-01T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2022-05-01:/accueil-transmission-et-confiance.html</id><summary type="html">
&lt;p&gt;Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&amp;#8217;en réjouis pour plusieurs raisons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ma charge de travail devrait baisser de manière considérable et me permettre d&amp;#8217;avancer sur des sujets de fond, pour progressivement changer l&amp;#8217;équilibre dans mon métier&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;J&amp;#8217;ai désormais quelqu&amp;#8217;une avec …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">
&lt;p&gt;Nous avons depuis peu une nouvelle recrue à la brasserie. Je m&amp;#8217;en réjouis pour plusieurs raisons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ma charge de travail devrait baisser de manière considérable et me permettre d&amp;#8217;avancer sur des sujets de fond, pour progressivement changer l&amp;#8217;équilibre dans mon métier&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;J&amp;#8217;ai désormais quelqu&amp;#8217;une avec qui échanger sur les problématiques techniques du métier de livreur / commercial&amp;nbsp;;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Mais cela me fait aussi peur : cela va nécessairement bousculer l&amp;#8217;équilibre — parfois fragile — en place entre les associés actuels. Même si je vois cette évolution d&amp;#8217;un bon œil, les transitions sont parfois&amp;nbsp;difficiles.&lt;/p&gt;
&lt;p&gt;Ça me donne donc envie de construire une relation de confiance, et de donner les moyens à cette nouvelle arrivante de s&amp;#8217;y&amp;nbsp;retrouver.&lt;/p&gt;
&lt;h2 id="transmission"&gt;Transmission&lt;/h2&gt;
&lt;p&gt;Cela me pose donc de nouvelles questions, autour de l&amp;#8217;accueil et de la&amp;nbsp;transmission.&lt;/p&gt;
&lt;p&gt;Il me semble que l&amp;#8217;enjeu est de laisser une liberté d&amp;#8217;action progressive pour mettre la personne en confiance, puis de réussir à « lâcher le bébé&amp;nbsp;».&lt;/p&gt;
&lt;p&gt;Mais il s&amp;#8217;agit aussi de réussir à juger si la communication est aisée, et de ne pas nécessairement partir du principe que tout sera génial. C&amp;#8217;est une relation de travail, pas une&amp;nbsp;amitié.&lt;/p&gt;
&lt;p&gt;De son côté également il doit y avoir des questionnements. Je mets une attention particulière à les accueillir : les questionnement sont bienvenus, voir même&amp;nbsp;attendus.&lt;/p&gt;
&lt;p&gt;Le pire pour moi serait d&amp;#8217;avoir quelqu&amp;#8217;un qui à peur de ne pas savoir, et qui dit qu&amp;#8217;elle sait plutôt que de laisser la place pour&amp;nbsp;l&amp;#8217;apprentissage.&lt;/p&gt;
&lt;h2 id="faire-confiance"&gt;Faire&amp;nbsp;confiance&lt;/h2&gt;
&lt;p&gt;Il me semble qu&amp;#8217;il peut exister deux types de confiance&amp;nbsp;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;Laisser la possibilité de se tromper&lt;/em&gt; : il est possible de faire confiance à l&amp;#8217;autre dans son apprentissage, pour qu&amp;#8217;iel se sente légitime à faire &lt;em&gt;ses&lt;/em&gt; choix, ceux qu&amp;#8217;il⋅elle estimera les bons, et qui seront donc les bons — par définition&amp;nbsp;;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;La &lt;em&gt;confiance relationnelle&lt;/em&gt;, de l&amp;#8217;ordre des relations inter-personnelles, de la relation à l&amp;#8217;autre. Parce que c&amp;#8217;est aussi une rencontre, et que je cherche à créer des relations de travail où l&amp;#8217;on peut se dire les choses sans se blesser, en confiance&amp;nbsp;donc.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;</content><category term="Réfléxions"></category></entry><entry><title>Conflit</title><link href="https://blog.notmyidea.org/conflit.html" rel="alternate"></link><published>2021-11-11T00:00:00+01:00</published><updated>2021-11-11T00:00:00+01:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2021-11-11:/conflit.html</id><summary type="html">
&lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt; &lt;p&gt;J&amp;#8217;ai pensé durant de nombreuses années que je savais gérer le conflit, alors que c&amp;#8217;était en fait&amp;nbsp;impensé.&lt;/p&gt;
&lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt; &lt;p&gt;Ne pas être en conflit signifie parfois s&amp;#8217;adapter aux autres, parfois ne pas (assez) s&amp;#8217;écouter, et ne pas se faire&amp;nbsp;entendre. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html"> &lt;p&gt;&lt;strong&gt;Alors que je pensais gérer le conflit …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html">

View file

@ -468,8 +468,8 @@ obtenir le même résultat à partir de la même&amp;nbsp;entrée.&lt;/p&gt;
une collection &lt;span class="caps"&gt;JSON&lt;/span&gt;. Chaque élément contient un identifiant unique généré sur une collection &lt;span class="caps"&gt;JSON&lt;/span&gt;. Chaque élément contient un identifiant unique généré sur
le&amp;nbsp;client.&lt;/p&gt; le&amp;nbsp;client.&lt;/p&gt;
&lt;p&gt;Par exemple, un enregistrement peut ressembler à&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Par exemple, un enregistrement peut ressembler à&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s2"&gt;&amp;quot;fingerprint&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;fingerprint&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Le &lt;em&gt;hash&lt;/em&gt; de la collection est ensuite calculé, signé puis envoyé au serveur &lt;p&gt;Le &lt;em&gt;hash&lt;/em&gt; de la collection est ensuite calculé, signé puis envoyé au serveur
(voir plus bas pour les&amp;nbsp;détails).&lt;/p&gt; (voir plus bas pour les&amp;nbsp;détails).&lt;/p&gt;
@ -950,7 +950,7 @@ d&amp;#8217;écriture sur une collection&amp;nbsp;d&amp;#8217;enregistrements.&l
&lt;li&gt;&lt;strong&gt;La synchronisation&lt;/strong&gt; : une série de leviers pour récupérer et renvoyer des &lt;li&gt;&lt;strong&gt;La synchronisation&lt;/strong&gt; : une série de leviers pour récupérer et renvoyer des
changements sur les données, sans perte ni collision, en utilisant les&amp;nbsp;timestamps.&lt;/li&gt; changements sur les données, sans perte ni collision, en utilisant les&amp;nbsp;timestamps.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Les permissions&lt;/strong&gt; : les droits d&amp;#8217;un utilisateur sur une collection ou un enregistrement &lt;li&gt;&lt;strong&gt;Les permissions&lt;/strong&gt; : les droits d&amp;#8217;un utilisateur sur une collection ou un enregistrement
(&lt;em&gt;encore frais et sur le point d&amp;#8217;être documenté&lt;/em&gt;) &lt;a class="footnote-reference" href="#id3" id="id1"&gt;[1]&lt;/a&gt;.&lt;/li&gt; (&lt;em&gt;encore frais et sur le point d&amp;#8217;être documenté&lt;/em&gt;) &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Opérations par lot&lt;/strong&gt;: une &lt;span class="caps"&gt;URL&lt;/span&gt; qui permet d&amp;#8217;envoyer une série de requêtes &lt;li&gt;&lt;strong&gt;Opérations par lot&lt;/strong&gt;: une &lt;span class="caps"&gt;URL&lt;/span&gt; qui permet d&amp;#8217;envoyer une série de requêtes
décrites en &lt;span class="caps"&gt;JSON&lt;/span&gt; et d&amp;#8217;obtenir les réponses&amp;nbsp;respectives.&lt;/li&gt; décrites en &lt;span class="caps"&gt;JSON&lt;/span&gt; et d&amp;#8217;obtenir les réponses&amp;nbsp;respectives.&lt;/li&gt;
&lt;/ul&gt; &lt;/ul&gt;
@ -972,17 +972,17 @@ de &lt;em&gt;Firefox Sync&lt;/em&gt; pour la gestion de la concurrence et de&amp
&lt;p&gt;Il est &lt;a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html"&gt;documenté en détail&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Il est &lt;a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html"&gt;documenté en détail&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Dans un monde idéal, ce protocole serait versionné, et formalisé dans une &lt;span class="caps"&gt;RFC&lt;/span&gt;. &lt;p&gt;Dans un monde idéal, ce protocole serait versionné, et formalisé dans une &lt;span class="caps"&gt;RFC&lt;/span&gt;.
En rêve, il existerait même plusieurs implémentations avec des technologies différentes En rêve, il existerait même plusieurs implémentations avec des technologies différentes
(Python, Go, Node, etc.). &lt;a class="footnote-reference" href="#id4" id="id2"&gt;[2]&lt;/a&gt;&lt;/p&gt; (Python, Go, Node, etc.). &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id3" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Voir notre &lt;a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html"&gt;article dédié sur les permissions&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Voir notre &lt;a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html"&gt;article dédié sur les permissions&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Rappel: nous sommes une toute petite équipe !&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Rappel: nous sommes une toute petite équipe !&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;/div&gt; &lt;/div&gt;
@ -990,7 +990,7 @@ En rêve, il existerait même plusieurs implémentations avec des technologies d
&lt;h2&gt;Le&amp;nbsp;toolkit&lt;/h2&gt; &lt;h2&gt;Le&amp;nbsp;toolkit&lt;/h2&gt;
&lt;div class="section" id="choix-techniques"&gt; &lt;div class="section" id="choix-techniques"&gt;
&lt;h3&gt;Choix&amp;nbsp;techniques&lt;/h3&gt; &lt;h3&gt;Choix&amp;nbsp;techniques&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;Cliquet&lt;/em&gt; implémente le protocole en Python (&lt;em&gt;2.7, 3.4+, pypy&lt;/em&gt;), avec &lt;a class="reference external" href="http://trypyramid.com/"&gt;Pyramid&lt;/a&gt; &lt;a class="footnote-reference" href="#id6" id="id5"&gt;[3]&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;em&gt;Cliquet&lt;/em&gt; implémente le protocole en Python (&lt;em&gt;2.7, 3.4+, pypy&lt;/em&gt;), avec &lt;a class="reference external" href="http://trypyramid.com/"&gt;Pyramid&lt;/a&gt; &lt;a class="footnote-reference" href="#footnote-3" id="footnote-reference-3"&gt;[3]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pyramid&lt;/strong&gt; est un framework Web qui va prendre en charge tout la partie &lt;span class="caps"&gt;HTTP&lt;/span&gt;, &lt;p&gt;&lt;strong&gt;Pyramid&lt;/strong&gt; est un framework Web qui va prendre en charge tout la partie &lt;span class="caps"&gt;HTTP&lt;/span&gt;,
et qui s&amp;#8217;avère pertinent aussi bien pour des petits projets que des plus&amp;nbsp;ambitieux.&lt;/p&gt; et qui s&amp;#8217;avère pertinent aussi bien pour des petits projets que des plus&amp;nbsp;ambitieux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cornice&lt;/strong&gt; est une extension de &lt;em&gt;Pyramid&lt;/em&gt;, écrite en partie par Alexis et Tarek, &lt;p&gt;&lt;strong&gt;Cornice&lt;/strong&gt; est une extension de &lt;em&gt;Pyramid&lt;/em&gt;, écrite en partie par Alexis et Tarek,
@ -1003,10 +1003,10 @@ rigoureux, gérer les entêtes &lt;span class="caps"&gt;CORS&lt;/span&gt;, fourn
&lt;p&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; utilise les deux précédents pour implémenter le protocole et fournir &lt;p&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; utilise les deux précédents pour implémenter le protocole et fournir
des abstractions, mais on a toujours &lt;em&gt;Pyramid&lt;/em&gt; et &lt;em&gt;Cornice&lt;/em&gt; sous la main pour des abstractions, mais on a toujours &lt;em&gt;Pyramid&lt;/em&gt; et &lt;em&gt;Cornice&lt;/em&gt; sous la main pour
aller au delà de ce qui est proposé&amp;nbsp;!&lt;/p&gt; aller au delà de ce qui est proposé&amp;nbsp;!&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id6" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-3" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id5"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Au tout début nous avons commencé une implémentation avec &lt;em&gt;Python-Eve&lt;/em&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Au tout début nous avons commencé une implémentation avec &lt;em&gt;Python-Eve&lt;/em&gt;
(Flask), mais n&amp;#8217;étions pas satisfaits de l&amp;#8217;approche pour la configuration (Flask), mais n&amp;#8217;étions pas satisfaits de l&amp;#8217;approche pour la configuration
de l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt;. En particulier du côté magique.&lt;/td&gt;&lt;/tr&gt; de l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt;. En particulier du côté magique.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
@ -1098,18 +1098,18 @@ avec &lt;em&gt;Colander&lt;/em&gt;, et ensuite déclarer une&amp;nbsp;resource:&
&lt;p&gt;Désormais, la resource &lt;span class="caps"&gt;CRUD&lt;/span&gt; est disponible sur &lt;tt class="docutils literal"&gt;/v1/bookmarks&lt;/tt&gt;, avec toutes &lt;p&gt;Désormais, la resource &lt;span class="caps"&gt;CRUD&lt;/span&gt; est disponible sur &lt;tt class="docutils literal"&gt;/v1/bookmarks&lt;/tt&gt;, avec toutes
les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc. les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc.
De base les enregistrements sont privés, par&amp;nbsp;utilisateur.&lt;/p&gt; De base les enregistrements sont privés, par&amp;nbsp;utilisateur.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="err"&gt;h&lt;/span&gt;&lt;span class="kc"&gt;tt&lt;/span&gt;&lt;span class="err"&gt;p&lt;/span&gt; &lt;span class="err"&gt;GET&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;http://localhost:8000/v1/bookmarks&amp;quot;&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;h&lt;/span&gt;&lt;span class="kc"&gt;tt&lt;/span&gt;&lt;span class="err"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;GET&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;http://localhost:8000/v1/bookmarks&amp;quot;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;HTTP/&lt;/span&gt;&lt;span class="mf"&gt;1.1&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt; &lt;span class="err"&gt;OK&lt;/span&gt; &lt;span class="err"&gt;HTTP/&lt;/span&gt;&lt;span class="mf"&gt;1.1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;OK&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;...&lt;/span&gt; &lt;span class="err"&gt;...&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;data&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;data&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;url&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;http://cliquet.readthedocs.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;url&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;http://cliquet.readthedocs.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;quot;last_modified&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1437034418940&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;&amp;quot;last_modified&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1437034418940&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="etape-3"&gt; &lt;div class="section" id="etape-3"&gt;
@ -1344,7 +1344,7 @@ concept repose sur &lt;a class="reference external" href="https://fr.wikipedia.o
&lt;a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05"&gt;*Remote Storage*&lt;/a&gt;, &lt;a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05"&gt;*Remote Storage*&lt;/a&gt;,
mais pour l&amp;#8217;instant les cas d&amp;#8217;utilisations ne se sont pas encore présentés&amp;nbsp;officiellement.&lt;/p&gt; mais pour l&amp;#8217;instant les cas d&amp;#8217;utilisations ne se sont pas encore présentés&amp;nbsp;officiellement.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="id2"&gt; &lt;div class="section" id="a-venir-1"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Nous serons probablement amenés à introduire la gestion de la concurrence dans &lt;p&gt;Nous serons probablement amenés à introduire la gestion de la concurrence dans
le client &lt;span class="caps"&gt;JS&lt;/span&gt;, en complément de ce qui a été fait sur le serveur, pour permettre le client &lt;span class="caps"&gt;JS&lt;/span&gt;, en complément de ce qui a été fait sur le serveur, pour permettre
@ -1359,17 +1359,17 @@ que &lt;a class="reference external" href="https://github.com/mozilla-services/k
&lt;h2&gt;Contenus applicatifs de&amp;nbsp;Firefox&lt;/h2&gt; &lt;h2&gt;Contenus applicatifs de&amp;nbsp;Firefox&lt;/h2&gt;
&lt;p&gt;Aujourd&amp;#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs &lt;p&gt;Aujourd&amp;#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs
consiste à désolidariser certains contenus applicatifs de ces cycles consiste à désolidariser certains contenus applicatifs de ces cycles
relativement longs (ex. &lt;em&gt;règles de securité, dictionnaires, traductions, &amp;#8230;&lt;/em&gt;) &lt;a class="footnote-reference" href="#id4" id="id3"&gt;[1]&lt;/a&gt;.&lt;/p&gt; relativement longs (ex. &lt;em&gt;règles de securité, dictionnaires, traductions, &amp;#8230;&lt;/em&gt;) &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Il s&amp;#8217;agit de données &lt;span class="caps"&gt;JSON&lt;/span&gt; et binaire qui doivent être versionnées et synchronisées par &lt;p&gt;Il s&amp;#8217;agit de données &lt;span class="caps"&gt;JSON&lt;/span&gt; et binaire qui doivent être versionnées et synchronisées par
les navigateurs (&lt;em&gt;lecture seule&lt;/em&gt;).&lt;/p&gt; les navigateurs (&lt;em&gt;lecture seule&lt;/em&gt;).&lt;/p&gt;
&lt;p&gt;Il y a plusieurs outils officiels qui existent pour gérer ça (&lt;em&gt;Balrog&lt;/em&gt;, &lt;em&gt;Shavar&lt;/em&gt;, &amp;#8230;), &lt;p&gt;Il y a plusieurs outils officiels qui existent pour gérer ça (&lt;em&gt;Balrog&lt;/em&gt;, &lt;em&gt;Shavar&lt;/em&gt;, &amp;#8230;),
et pour l&amp;#8217;instant, aucun choix n&amp;#8217;a été fait. Mais lors des conversations avec et pour l&amp;#8217;instant, aucun choix n&amp;#8217;a été fait. Mais lors des conversations avec
l&amp;#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour l&amp;#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour
ce genre de besoins internes, &lt;em&gt;Kinto&lt;/em&gt; est tout aussi pertinent&amp;nbsp;!&lt;/p&gt; ce genre de besoins internes, &lt;em&gt;Kinto&lt;/em&gt; est tout aussi pertinent&amp;nbsp;!&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La bonne nouvelle c&amp;#8217;est que toutes les fonctionnalités &lt;em&gt;third-party&lt;/em&gt; qui ont &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La bonne nouvelle c&amp;#8217;est que toutes les fonctionnalités &lt;em&gt;third-party&lt;/em&gt; qui ont
été intégrées récemment vont redevenir des &lt;em&gt;add-ons&lt;/em&gt; \o/.&lt;/td&gt;&lt;/tr&gt; été intégrées récemment vont redevenir des &lt;em&gt;add-ons&lt;/em&gt; \o/.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -1383,7 +1383,7 @@ un prototype pour améliorer &lt;em&gt;Awesome bar&lt;/em&gt;, qui fusionnerait
&lt;p&gt;Nous ne pouvons pas en dire beaucoup plus pour l&amp;#8217;instant, mais les fonctionnalités &lt;p&gt;Nous ne pouvons pas en dire beaucoup plus pour l&amp;#8217;instant, mais les fonctionnalités
de collections d&amp;#8217;enregistrements partagées entre utilisateurs de &lt;em&gt;Kinto&lt;/em&gt; de collections d&amp;#8217;enregistrements partagées entre utilisateurs de &lt;em&gt;Kinto&lt;/em&gt;
correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&amp;nbsp;:)&lt;/p&gt; correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&amp;nbsp;:)&lt;/p&gt;
&lt;div class="section" id="id5"&gt; &lt;div class="section" id="a-venir-2"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Nous serons donc probablement amenés, avant de la fin de l&amp;#8217;année, à introduire des &lt;p&gt;Nous serons donc probablement amenés, avant de la fin de l&amp;#8217;année, à introduire des
fonctionnalités d&amp;#8217;indexation et de recherche &lt;em&gt;full-text&lt;/em&gt; (comprendre &lt;em&gt;ElasticSearch&lt;/em&gt;). fonctionnalités d&amp;#8217;indexation et de recherche &lt;em&gt;full-text&lt;/em&gt; (comprendre &lt;em&gt;ElasticSearch&lt;/em&gt;).
@ -1405,7 +1405,7 @@ ou un équivalent à &lt;em&gt;Alexa.com Top 500&lt;/em&gt; pour fournir la comp
interroger le moteur de&amp;nbsp;recherche.&lt;/p&gt; interroger le moteur de&amp;nbsp;recherche.&lt;/p&gt;
&lt;p&gt;L&amp;#8217;exercice pourrait être poussé jusqu&amp;#8217;à la synchronisation d&amp;#8217;états &lt;em&gt;React&lt;/em&gt; &lt;p&gt;L&amp;#8217;exercice pourrait être poussé jusqu&amp;#8217;à la synchronisation d&amp;#8217;états &lt;em&gt;React&lt;/em&gt;
entre périphériques (par exemple pour les&amp;nbsp;onglets).&lt;/p&gt; entre périphériques (par exemple pour les&amp;nbsp;onglets).&lt;/p&gt;
&lt;div class="section" id="id7"&gt; &lt;div class="section" id="a-venir-3"&gt;
&lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt; &lt;h3&gt;À&amp;nbsp;venir&lt;/h3&gt;
&lt;p&gt;Si &lt;em&gt;browser.html&lt;/em&gt; doit stocker des données de navigation, il faudra ajouter &lt;p&gt;Si &lt;em&gt;browser.html&lt;/em&gt; doit stocker des données de navigation, il faudra ajouter
des fonctionnalités de chiffrement sur le client &lt;span class="caps"&gt;JS&lt;/span&gt;. Ça tombe bien, c&amp;#8217;est un des fonctionnalités de chiffrement sur le client &lt;span class="caps"&gt;JS&lt;/span&gt;. Ça tombe bien, c&amp;#8217;est un
@ -1433,7 +1433,7 @@ de données sur le Web&amp;nbsp;:)&lt;/p&gt;
et Kinto 1.0&amp;nbsp;!&lt;/p&gt; et Kinto 1.0&amp;nbsp;!&lt;/p&gt;
</summary><content type="html">&lt;p&gt;&lt;em&gt;Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&amp;nbsp;Mozilla&lt;/em&gt;&lt;/p&gt; </summary><content type="html">&lt;p&gt;&lt;em&gt;Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&amp;nbsp;Mozilla&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Aujourd&amp;#8217;hui, c&amp;#8217;est jour de fête : nous venons de publier Cliquet &lt;strong&gt;2.0&lt;/strong&gt; &lt;p&gt;Aujourd&amp;#8217;hui, c&amp;#8217;est jour de fête : nous venons de publier Cliquet &lt;strong&gt;2.0&lt;/strong&gt;
&lt;a class="footnote-reference" href="#id5" id="id1"&gt;[1]&lt;/a&gt; et Kinto &lt;strong&gt;1.0&lt;/strong&gt; &lt;a class="footnote-reference" href="#id6" id="id2"&gt;[2]&lt;/a&gt;.&lt;/p&gt; &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt; et Kinto &lt;strong&gt;1.0&lt;/strong&gt; &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote class="epigraph"&gt; &lt;blockquote class="epigraph"&gt;
&lt;p&gt;L&amp;#8217;aboutissement de 3 années de R&amp;amp;D&amp;nbsp;!&lt;/p&gt; &lt;p&gt;L&amp;#8217;aboutissement de 3 années de R&amp;amp;D&amp;nbsp;!&lt;/p&gt;
&lt;p class="attribution"&gt;&amp;mdash;Rémy&lt;/p&gt; &lt;p class="attribution"&gt;&amp;mdash;Rémy&lt;/p&gt;
@ -1454,7 +1454,7 @@ fonctionnalités que l&amp;#8217;on attendait depuis longtemps, comme la gestion
s&amp;#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées, s&amp;#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées,
notamment sur la documentation et les&amp;nbsp;performances.&lt;/p&gt; notamment sur la documentation et les&amp;nbsp;performances.&lt;/p&gt;
&lt;p&gt;On peut déjà entrevoir à quoi l&amp;#8217;écosystème va ressembler, et c&amp;#8217;est prometteur. &lt;p&gt;On peut déjà entrevoir à quoi l&amp;#8217;écosystème va ressembler, et c&amp;#8217;est prometteur.
Il y a déjà un client JavaScript &lt;a class="footnote-reference" href="#id7" id="id3"&gt;[3]&lt;/a&gt; dont l&amp;#8217;objectif est de synchroniser les Il y a déjà un client JavaScript &lt;a class="footnote-reference" href="#footnote-3" id="footnote-reference-3"&gt;[3]&lt;/a&gt; dont l&amp;#8217;objectif est de synchroniser les
données locales du navigateur avec une instance de&amp;nbsp;Kinto.&lt;/p&gt; données locales du navigateur avec une instance de&amp;nbsp;Kinto.&lt;/p&gt;
&lt;p&gt;N&amp;#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez &lt;p&gt;N&amp;#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez
des problématiques proches : nous accueillons avec plaisir toutes sortes de des problématiques proches : nous accueillons avec plaisir toutes sortes de
@ -1463,34 +1463,34 @@ la solution ou de la manière de communiquer avec le monde extérieur. Si vous
souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous
contacter sur le canal &lt;a class="reference external" href="irc://irc.mozilla.org/#storage"&gt;#storage&lt;/a&gt; sur le réseau &lt;span class="caps"&gt;IRC&lt;/span&gt; de&amp;nbsp;Mozilla.&lt;/p&gt; contacter sur le canal &lt;a class="reference external" href="irc://irc.mozilla.org/#storage"&gt;#storage&lt;/a&gt; sur le réseau &lt;span class="caps"&gt;IRC&lt;/span&gt; de&amp;nbsp;Mozilla.&lt;/p&gt;
&lt;p&gt;Et ce n&amp;#8217;est que le début ! Le futur se dessine dans notre feuille de route &lt;p&gt;Et ce n&amp;#8217;est que le début ! Le futur se dessine dans notre feuille de route
&lt;a class="footnote-reference" href="#id8" id="id4"&gt;[4]&lt;/a&gt;.&lt;/p&gt; &lt;a class="footnote-reference" href="#footnote-4" id="footnote-reference-4"&gt;[4]&lt;/a&gt;.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id5" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; est une boite à outils pour faciliter l&amp;#8217;implémentation de &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cliquet&lt;/strong&gt; est une boite à outils pour faciliter l&amp;#8217;implémentation de
microservices &lt;span class="caps"&gt;HTTP&lt;/span&gt; tels que les APIs &lt;em&gt;&lt;span class="caps"&gt;REST&lt;/span&gt;&lt;/em&gt; ayant des besoins de microservices &lt;span class="caps"&gt;HTTP&lt;/span&gt; tels que les APIs &lt;em&gt;&lt;span class="caps"&gt;REST&lt;/span&gt;&lt;/em&gt; ayant des besoins de
synchronisation.&lt;/td&gt;&lt;/tr&gt; synchronisation.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id6" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Kinto&lt;/strong&gt; est un service pour stocker, synchroniser et partager des données &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Kinto&lt;/strong&gt; est un service pour stocker, synchroniser et partager des données
arbitraires, attachées à un compte Firefox (mais le système d&amp;#8217;authentification arbitraires, attachées à un compte Firefox (mais le système d&amp;#8217;authentification
est &lt;em&gt;pluggable&lt;/em&gt;).&lt;/td&gt;&lt;/tr&gt; est &lt;em&gt;pluggable&lt;/em&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id7" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-3" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Cliquetis, la bibliothèque JavaScript pour consommer l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt; &lt;span class="caps"&gt;HTTP&lt;/span&gt; de Kinto — &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-3"&gt;[3]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Cliquetis, la bibliothèque JavaScript pour consommer l&amp;#8217;&lt;span class="caps"&gt;API&lt;/span&gt; &lt;span class="caps"&gt;HTTP&lt;/span&gt; de Kinto —
&lt;a class="reference external" href="https://github.com/mozilla-services/cliquetis"&gt;https://github.com/mozilla-services/cliquetis&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="https://github.com/mozilla-services/cliquetis"&gt;https://github.com/mozilla-services/cliquetis&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="id8" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-4" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id4"&gt;[4]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La feuille de route de Kinto: &lt;a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap"&gt;https://github.com/mozilla-services/kinto/wiki/roadmap&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-4"&gt;[4]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La feuille de route de Kinto: &lt;a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap"&gt;https://github.com/mozilla-services/kinto/wiki/roadmap&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
</content><category term="Technologie"></category></entry><entry><title>Service de nuages : Stocker et interroger les permissions avec Kinto</title><link href="https://blog.notmyidea.org/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html" rel="alternate"></link><published>2015-05-26T00:00:00+02:00</published><updated>2015-05-26T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2015-05-26:/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html</id><summary type="html">&lt;p class="first last"&gt;Comment faire pour stocker et interroger la base de données au sujet des permissions avec Kinto&amp;nbsp;?&lt;/p&gt; </content><category term="Technologie"></category></entry><entry><title>Service de nuages : Stocker et interroger les permissions avec Kinto</title><link href="https://blog.notmyidea.org/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html" rel="alternate"></link><published>2015-05-26T00:00:00+02:00</published><updated>2015-05-26T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2015-05-26:/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html</id><summary type="html">&lt;p class="first last"&gt;Comment faire pour stocker et interroger la base de données au sujet des permissions avec Kinto&amp;nbsp;?&lt;/p&gt;
@ -1606,13 +1606,13 @@ avantages (lisibilité, unicité, cohérence avec les&amp;nbsp;URLs)&lt;/p&gt;
&lt;div class="section" id="les-tables"&gt; &lt;div class="section" id="les-tables"&gt;
&lt;h3&gt;Les&amp;nbsp;tables&lt;/h3&gt; &lt;h3&gt;Les&amp;nbsp;tables&lt;/h3&gt;
&lt;p&gt;Pour le stockage des principals et des&amp;nbsp;permissions:&lt;/p&gt; &lt;p&gt;Pour le stockage des principals et des&amp;nbsp;permissions:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;La table &lt;em&gt;perms&lt;/em&gt; va associer des &lt;em&gt;principals&lt;/em&gt; à chaque &lt;em&gt;&lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/em&gt;&amp;nbsp;(e.g.&amp;#8220;/buckets/blog:write&amp;#8220;).&lt;/p&gt; &lt;p&gt;La table &lt;em&gt;perms&lt;/em&gt; va associer des &lt;em&gt;principals&lt;/em&gt; à chaque &lt;em&gt;&lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/em&gt;&amp;nbsp;(e.g.&amp;#8220;/buckets/blog:write&amp;#8220;).&lt;/p&gt;
&lt;p&gt;Pour le stockage des&amp;nbsp;données:&lt;/p&gt; &lt;p&gt;Pour le stockage des&amp;nbsp;données:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt; &lt;span class="k"&gt;TABLE&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt; &lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;write_principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt; &lt;span class="n"&gt;read_principals&lt;/span&gt; &lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;TEXT&lt;/span&gt;&lt;span class="p"&gt;[]);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;La colonne &lt;em&gt;parent_id&lt;/em&gt; permet de savoir à qui appartient l&amp;#8217;objet &lt;p&gt;La colonne &lt;em&gt;parent_id&lt;/em&gt; permet de savoir à qui appartient l&amp;#8217;objet
(e.g. groupe d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, collection d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, &lt;em&gt;record&lt;/em&gt; d&amp;#8217;une (e.g. groupe d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, collection d&amp;#8217;un &lt;em&gt;bucket&lt;/em&gt;, &lt;em&gt;record&lt;/em&gt; d&amp;#8217;une
@ -1620,53 +1620,53 @@ collection,&amp;nbsp;&amp;#8230;).&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="exemple-d-utilisateur"&gt; &lt;div class="section" id="exemple-d-utilisateur"&gt;
&lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;utilisateur&lt;/h3&gt; &lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;utilisateur&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:alexis&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:alexis&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="exemple-d-objets"&gt; &lt;div class="section" id="exemple-d-objets"&gt;
&lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;objets&lt;/h3&gt; &lt;h3&gt;Exemple&amp;nbsp;d&amp;#8217;objets&lt;/h3&gt;
&lt;div class="section" id="bucket"&gt; &lt;div class="section" id="bucket"&gt;
&lt;h4&gt;Bucket&lt;/h4&gt; &lt;h4&gt;Bucket&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;bucket&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;bucket&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;blog&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;blog&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{&amp;quot;fxa:alexis&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;fxa:alexis&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="group"&gt; &lt;div class="section" id="group"&gt;
&lt;h4&gt;Group&lt;/h4&gt; &lt;h4&gt;Group&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/groups/moderators&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/groups/moderators&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;group&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;group&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;moderators&amp;quot;, &amp;quot;members&amp;quot;: [&amp;#39;&lt;/span&gt;&lt;span class="n"&gt;fxa&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="n"&gt;natim&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;]}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;moderators&amp;quot;, &amp;quot;members&amp;quot;: [&amp;#39;&lt;/span&gt;&lt;span class="n"&gt;fxa&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="n"&gt;natim&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;]}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ce groupe peut être gére par &lt;tt class="docutils literal"&gt;fxa:alexis&lt;/tt&gt; puisqu&amp;#8217;il a la permission &lt;p&gt;Ce groupe peut être gére par &lt;tt class="docutils literal"&gt;fxa:alexis&lt;/tt&gt; puisqu&amp;#8217;il a la permission
&lt;tt class="docutils literal"&gt;write&lt;/tt&gt; dans le &lt;em&gt;bucket&lt;/em&gt;&amp;nbsp;parent.&lt;/p&gt; &lt;tt class="docutils literal"&gt;write&lt;/tt&gt; dans le &lt;em&gt;bucket&lt;/em&gt;&amp;nbsp;parent.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="collection"&gt; &lt;div class="section" id="collection"&gt;
&lt;h4&gt;Collection&lt;/h4&gt; &lt;h4&gt;Collection&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;collection&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;collection&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;article&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;article&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;system.Everyone&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;system.Everyone&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;/buckets/blog/groups/moderators&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Cette collection d&amp;#8217;articles peut être lue par tout le monde, &lt;p&gt;Cette collection d&amp;#8217;articles peut être lue par tout le monde,
et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderators&lt;/tt&gt;, ainsi que et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderators&lt;/tt&gt;, ainsi que
@ -1674,56 +1674,56 @@ et gérée par les membres du groupe &lt;tt class="docutils literal"&gt;moderato
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="records"&gt; &lt;div class="section" id="records"&gt;
&lt;h4&gt;Records&lt;/h4&gt; &lt;h4&gt;Records&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt; &lt;span class="k"&gt;INTO&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;VALUES&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/articles&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;quot;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{&amp;quot;name&amp;quot;: &amp;quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&amp;quot;,&lt;/span&gt;
&lt;span class="s1"&gt; &amp;quot;title&amp;quot;: &amp;quot;Stocker les permissions&amp;quot;, ...}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt; &amp;quot;title&amp;quot;: &amp;quot;Stocker les permissions&amp;quot;, ...}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;JSONB&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{}&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="interroger-les-permissions"&gt; &lt;div class="section" id="interroger-les-permissions"&gt;
&lt;h3&gt;Interroger les&amp;nbsp;permissions&lt;/h3&gt; &lt;h3&gt;Interroger les&amp;nbsp;permissions&lt;/h3&gt;
&lt;div class="section" id="id1"&gt; &lt;div class="section" id="obtenir-la-liste-des-principals-d-un-ace-1"&gt;
&lt;h4&gt;Obtenir la liste des &amp;#8220;principals&amp;#8221; d&amp;#8217;un &lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/h4&gt; &lt;h4&gt;Obtenir la liste des &amp;#8220;principals&amp;#8221; d&amp;#8217;un &lt;span class="caps"&gt;ACE&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;Comme vu plus haut, pour vérifier une permission, on fait l&amp;#8217;union des &lt;p&gt;Comme vu plus haut, pour vérifier une permission, on fait l&amp;#8217;union des
&lt;em&gt;principals&lt;/em&gt; requis par les objets hérités, et on teste leur &lt;em&gt;principals&lt;/em&gt; requis par les objets hérités, et on teste leur
intersection avec ceux de&amp;nbsp;l&amp;#8217;utilisateur:&lt;/p&gt; intersection avec ceux de&amp;nbsp;l&amp;#8217;utilisateur:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;WITH&lt;/span&gt; &lt;span class="n"&gt;required_principals&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;WITH&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;required_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;perms&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;perms&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;ace&lt;/span&gt; &lt;span class="k"&gt;IN&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;ace&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;IN&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:write&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article:read&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;user_principals&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;unnest&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;COUNT&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;COUNT&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;user_principals&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;INNER&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;required_principals&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INNER&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;JOIN&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;required_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;ON&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;ON&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt; &lt;/div&gt;
&lt;div class="section" id="filtrer-les-objets-en-fonction-des-permissions"&gt; &lt;div class="section" id="filtrer-les-objets-en-fonction-des-permissions"&gt;
&lt;h4&gt;Filtrer les objets en fonction des&amp;nbsp;permissions&lt;/h4&gt; &lt;h4&gt;Filtrer les objets en fonction des&amp;nbsp;permissions&lt;/h4&gt;
&lt;p&gt;Pour filtrer les objets, on fait une simple intersection de liste &lt;p&gt;Pour filtrer les objets, on fait une simple intersection de liste
(&lt;em&gt;merci PostgreSQL&lt;/em&gt;):&lt;/p&gt; (&lt;em&gt;merci PostgreSQL&lt;/em&gt;):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="k"&gt;data&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;data&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="k"&gt;object&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;user&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;object&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;WHERE&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;record&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article&amp;#39;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;parent_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/buckets/blog/collections/article&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt; &lt;span class="k"&gt;OR&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;OR&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;write_principals&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;principals&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;AND&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;fxa:natim&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt; &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Les listes s&amp;#8217;indexent bien, notamment grâce aux &lt;a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html"&gt;index &lt;span class="caps"&gt;GIN&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Les listes s&amp;#8217;indexent bien, notamment grâce aux &lt;a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html"&gt;index &lt;span class="caps"&gt;GIN&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt; &lt;/div&gt;
@ -2021,7 +2021,7 @@ une réponse satisfaisante à ces&amp;nbsp;besoins.&lt;/p&gt;
&lt;div class="section" id="le-concept-de-principal"&gt; &lt;div class="section" id="le-concept-de-principal"&gt;
&lt;h3&gt;Le concept de « principal&amp;nbsp;»&lt;/h3&gt; &lt;h3&gt;Le concept de « principal&amp;nbsp;»&lt;/h3&gt;
&lt;p&gt;Un &lt;em&gt;principal&lt;/em&gt;, en sécurité informatique, est une entité qui peut être &lt;p&gt;Un &lt;em&gt;principal&lt;/em&gt;, en sécurité informatique, est une entité qui peut être
authentifiée par un système informatique. &lt;a class="footnote-reference" href="#id2" id="id1"&gt;[1]&lt;/a&gt; En Français il s&amp;#8217;agit authentifiée par un système informatique. &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt; En Français il s&amp;#8217;agit
du « commettant », l&amp;#8217;acteur qui commet l&amp;#8217;action (oui, le terme est conceptuel&amp;nbsp;!)&lt;/p&gt; du « commettant », l&amp;#8217;acteur qui commet l&amp;#8217;action (oui, le terme est conceptuel&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;Il peut s&amp;#8217;agir aussi bien d&amp;#8217;un individu, d&amp;#8217;un ordinateur, d&amp;#8217;un &lt;p&gt;Il peut s&amp;#8217;agir aussi bien d&amp;#8217;un individu, d&amp;#8217;un ordinateur, d&amp;#8217;un
service ou d&amp;#8217;un groupe regroupant l&amp;#8217;une de ces entités, ce qui service ou d&amp;#8217;un groupe regroupant l&amp;#8217;une de ces entités, ce qui
@ -2030,10 +2030,10 @@ est plus large que le classique « &lt;em&gt;user id&lt;/em&gt;&amp;nbsp;».&lt;
&lt;p&gt;Par exemple, un utilisateur est identifié de manière unique lors de la &lt;p&gt;Par exemple, un utilisateur est identifié de manière unique lors de la
connexion par le système d&amp;#8217;authentification dont le rôle est de connexion par le système d&amp;#8217;authentification dont le rôle est de
définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisateur se&amp;nbsp;connectant.&lt;/p&gt; définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisateur se&amp;nbsp;connectant.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="id2" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Pour en savoir plus sur les &lt;em&gt;principals&lt;/em&gt; : &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Pour en savoir plus sur les &lt;em&gt;principals&lt;/em&gt; :
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29"&gt;https://en.wikipedia.org/wiki/Principal_%28computer_security%29&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29"&gt;https://en.wikipedia.org/wiki/Principal_%28computer_security%29&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -2042,17 +2042,17 @@ définir une liste de &lt;em&gt;principals&lt;/em&gt; pour l&amp;#8217;utilisate
&lt;h3&gt;La différence entre rôle et&amp;nbsp;groupe&lt;/h3&gt; &lt;h3&gt;La différence entre rôle et&amp;nbsp;groupe&lt;/h3&gt;
&lt;p&gt;De but en blanc, il n&amp;#8217;est pas évident de définir précisément la &lt;p&gt;De but en blanc, il n&amp;#8217;est pas évident de définir précisément la
différence entre ces deux concepts qui permettent d&amp;#8217;associer différence entre ces deux concepts qui permettent d&amp;#8217;associer
des permissions à un groupe de &lt;em&gt;principals&lt;/em&gt;. &lt;a class="footnote-reference" href="#id4" id="id3"&gt;[2]&lt;/a&gt;&lt;/p&gt; des permissions à un groupe de &lt;em&gt;principals&lt;/em&gt;. &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;La différence est principalement sémantique. Mais on peut y voir une &lt;p&gt;La différence est principalement sémantique. Mais on peut y voir une
différence dans la « direction » de la relation entre les deux&amp;nbsp;concepts.&lt;/p&gt; différence dans la « direction » de la relation entre les deux&amp;nbsp;concepts.&lt;/p&gt;
&lt;ul class="simple"&gt; &lt;ul class="simple"&gt;
&lt;li&gt;Un rôle est une liste de permissions que l&amp;#8217;on associe à un &lt;em&gt;principal&lt;/em&gt;.&lt;/li&gt; &lt;li&gt;Un rôle est une liste de permissions que l&amp;#8217;on associe à un &lt;em&gt;principal&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;Un groupe est une liste de &lt;em&gt;principals&lt;/em&gt; que l&amp;#8217;on peut associer à une&amp;nbsp;permission.&lt;/li&gt; &lt;li&gt;Un groupe est une liste de &lt;em&gt;principals&lt;/em&gt; que l&amp;#8217;on peut associer à une&amp;nbsp;permission.&lt;/li&gt;
&lt;/ul&gt; &lt;/ul&gt;
&lt;table class="docutils footnote" frame="void" id="id4" rules="none"&gt; &lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt; &lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#id3"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Plus d&amp;#8217;informations : &lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Plus d&amp;#8217;informations :
&lt;a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference"&gt;http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference"&gt;http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt; &lt;/tbody&gt;
&lt;/table&gt; &lt;/table&gt;
@ -2699,16 +2699,16 @@ terme, et que &lt;em&gt;Remote Storage&lt;/em&gt; devienne une facette de notre&
&lt;p&gt;&lt;a href="http://pouchdb.com/"&gt;PouchDB&lt;/a&gt; est une bibliothèque JavaScript qui &lt;p&gt;&lt;a href="http://pouchdb.com/"&gt;PouchDB&lt;/a&gt; est une bibliothèque JavaScript qui
permet de manipuler des enregistrements en local et de les synchroniser permet de manipuler des enregistrements en local et de les synchroniser
vers une base&amp;nbsp;distante.&lt;/p&gt; vers une base&amp;nbsp;distante.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="n"&gt;PouchDB&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dbname&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PouchDB&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dbname&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;put&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;put&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;dave@gmail.com&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dave@gmail.com&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;David&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;David&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;68&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;68&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;replicate&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://example.com/mydb&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="n"&gt;db&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;replicate&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://example.com/mydb&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Le projet a le vent en poupe, bénéficie de nombreux contributeurs, &lt;p&gt;Le projet a le vent en poupe, bénéficie de nombreux contributeurs,
@ -3133,33 +3133,33 @@ on the server (so you don&amp;#8217;t need to store&amp;nbsp;anything).&lt;/p&gt
finally came up factorizing everything in a library for express, named finally came up factorizing everything in a library for express, named
&lt;a href="https://github.com/mozilla-services/express-hawkauth"&gt;express-hawkauth&lt;/a&gt;.&lt;/p&gt; &lt;a href="https://github.com/mozilla-services/express-hawkauth"&gt;express-hawkauth&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In order to plug it in your application, you&amp;#8217;ll need to use it as a&amp;nbsp;middleware:&lt;/p&gt; &lt;p&gt;In order to plug it in your application, you&amp;#8217;ll need to use it as a&amp;nbsp;middleware:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;javascript&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;express&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;hawk&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express-hawkauth&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;express-hawkauth&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;hawkMiddleware&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawk&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;hawkOptions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkOptions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;getSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;getSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="k"&gt;pass&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;algorithm&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;which&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;pass&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;given&lt;/span&gt; &lt;span class="n"&gt;token&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;First&lt;/span&gt; &lt;span class="n"&gt;argument&lt;/span&gt; &lt;span class="n"&gt;of&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;callback&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;potential&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;given&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;token&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;First&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;argument&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;of&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;callback&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;potential&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;key&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;sha256&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;key&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;algorithm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;sha256&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;createSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;createSession&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="n"&gt;stores&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;session&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;given&lt;/span&gt; &lt;span class="n"&gt;id&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;which&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;stores&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;session&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;given&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;Argument&lt;/span&gt; &lt;span class="n"&gt;returned&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;potential&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Argument&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;returned&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;potential&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb nb-Type"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;setUser&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;setUser&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cb&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;function&lt;/span&gt; &lt;span class="n"&gt;that&lt;/span&gt; &lt;span class="n"&gt;uses&lt;/span&gt; &lt;span class="n"&gt;req&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;hawkId&lt;/span&gt; &lt;span class="n"&gt;when&lt;/span&gt; &lt;span class="n"&gt;they&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;re known so&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;that&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;uses&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;res&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkId&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;when&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;they&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;re known so&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;that&lt;/span&gt; &lt;span class="n"&gt;it&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;tweak&lt;/span&gt; &lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;For&lt;/span&gt; &lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;you&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;store&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;that&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tweak&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;it&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;For&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;instance&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;you&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;store&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;as&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;tokenId&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;/hawk-enabled-endpoint&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;/hawk-enabled-endpoint&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;hawkMiddleware&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;If you pass the createSession parameter, all non-authenticated requests &lt;p&gt;If you pass the createSession parameter, all non-authenticated requests
@ -3463,8 +3463,8 @@ ailleurs, pour finalement déployer la chose chez
&lt;p&gt;Après quelques péripéties, j&amp;#8217;ai réussi à faire tourner le tout, ça à été &lt;p&gt;Après quelques péripéties, j&amp;#8217;ai réussi à faire tourner le tout, ça à été
un peu la bataille au départ pour installer virtualenv (j&amp;#8217;ai du faire un peu la bataille au départ pour installer virtualenv (j&amp;#8217;ai du faire
des changements dans mon &lt;span class="caps"&gt;PATH&lt;/span&gt; pour que ça puisse marcher), voici mon&amp;nbsp;`.bash_profile`:&lt;/p&gt; des changements dans mon &lt;span class="caps"&gt;PATH&lt;/span&gt; pour que ça puisse marcher), voici mon&amp;nbsp;`.bash_profile`:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="n"&gt;PYTHONPATH&lt;/span&gt;&lt;span class="o"&gt;=~/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PYTHONPATH&lt;/span&gt;&lt;span class="o"&gt;=~/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="o"&gt;=$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;bin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt; &lt;span class="k"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="o"&gt;=$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;bin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;HOME&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;modules&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Et après y&amp;#8217;a plus qu&amp;#8217;à installer avec&amp;nbsp;`easy_install`:&lt;/p&gt; &lt;p&gt;Et après y&amp;#8217;a plus qu&amp;#8217;à installer avec&amp;nbsp;`easy_install`:&lt;/p&gt;
@ -3527,7 +3527,7 @@ PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;On peut donc spécifier des &amp;#8220;sauts&amp;#8221; ssh du&amp;nbsp;style:&lt;/p&gt; &lt;p&gt;On peut donc spécifier des &amp;#8220;sauts&amp;#8221; ssh du&amp;nbsp;style:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;root&lt;/span&gt;&lt;span class="mf"&gt;@91.25.25.25&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;192.168.1.1&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;ssh&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;root&lt;/span&gt;&lt;span class="mf"&gt;@91.25.25.25&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;192.168.1.1&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ensuite on peut essayer de&amp;nbsp;rajouter:&lt;/p&gt; &lt;p&gt;Ensuite on peut essayer de&amp;nbsp;rajouter:&lt;/p&gt;
@ -4698,16 +4698,16 @@ $ ant
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Here is a simple example of how to use boilerpipe in Java, from their&amp;nbsp;sources&lt;/p&gt; &lt;p&gt;Here is a simple example of how to use boilerpipe in Java, from their&amp;nbsp;sources&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;de.l3s.boilerpipe.demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;de.l3s.boilerpipe.demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.net.URL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;java.net.URL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;de.l3s.boilerpipe.extractors.ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;de.l3s.boilerpipe.extractors.ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Oneliner&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="kd"&gt;public&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Oneliner&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="kd"&gt;throws&lt;/span&gt; &lt;span class="n"&gt;Exception&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;public&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;static&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;void&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;throws&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Exception&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt; &lt;span class="n"&gt;url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://notmyidea.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://notmyidea.org&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;INSTANCE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getText&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ArticleExtractor&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;INSTANCE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getText&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;To run&amp;nbsp;it:&lt;/p&gt; &lt;p&gt;To run&amp;nbsp;it:&lt;/p&gt;
@ -5021,14 +5021,14 @@ unison .vimrc ssh://notmyidea.org:20006/.vimrc
&lt;p&gt;It is also possible to put all the informations in a config file, and &lt;p&gt;It is also possible to put all the informations in a config file, and
then to only run unison. (fire up vim&amp;nbsp;\~/.unison/default.prf.&lt;/p&gt; then to only run unison. (fire up vim&amp;nbsp;\~/.unison/default.prf.&lt;/p&gt;
&lt;p&gt;Here is my&amp;nbsp;config:&lt;/p&gt; &lt;p&gt;Here is my&amp;nbsp;config:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; &lt;span class="na"&gt;root&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;/home/alexis&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;/home/alexis&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;root&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;ssh://notmyidea.org:20006&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;ssh://notmyidea.org:20006&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;.vimrc&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;.vimrc&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;dotfiles&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;dotfiles&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;dev&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;dev&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="na"&gt;follow&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;Name *&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;follow&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;Name *&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;My vimrc is in fact a symbolic link on my laptop, but I don&amp;#8217;t want to &lt;p&gt;My vimrc is in fact a symbolic link on my laptop, but I don&amp;#8217;t want to
@ -5344,35 +5344,35 @@ $ gnome-background-generator -p ~/Images/walls -s
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Here is a extract of the&amp;nbsp;`&amp;#8212;help`:&lt;/p&gt; &lt;p&gt;Here is a extract of the&amp;nbsp;`&amp;#8212;help`:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;shell&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;shell&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="n"&gt;usage&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;generator&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;simple&lt;/span&gt; &lt;span class="n"&gt;command&lt;/span&gt; &lt;span class="n"&gt;line&lt;/span&gt; &lt;span class="k"&gt;tool&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;generate&lt;/span&gt; &lt;span class="n"&gt;an&lt;/span&gt; &lt;span class="n"&gt;XML&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;use&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;gnome&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;simple&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;command&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;line&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;tool&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;generate&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;an&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;XML&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;use&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;gnome&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;wallpapers&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;have&lt;/span&gt; &lt;span class="n"&gt;dynamic&lt;/span&gt; &lt;span class="n"&gt;walls&lt;/span&gt; &lt;span class="n"&gt;wallpapers&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;have&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;walls&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;optional&lt;/span&gt; &lt;span class="n"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;optional&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="n"&gt;show&lt;/span&gt; &lt;span class="n"&gt;this&lt;/span&gt; &lt;span class="n"&gt;help&lt;/span&gt; &lt;span class="n"&gt;message&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;show&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;this&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;exit&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt; &lt;span class="n"&gt;PATH&lt;/span&gt; &lt;span class="n"&gt;Path&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;look&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;If&lt;/span&gt; &lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;PATH&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;look&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;If&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;no&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;will&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;used&lt;/span&gt; &lt;span class="n"&gt;too&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;outputing&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;used&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;too&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;outputing&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;Default&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;current&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Default&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;current&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;directory&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;directory&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;OUTPUT&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Output&lt;/span&gt; &lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;If&lt;/span&gt; &lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="n"&gt;filename&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Output&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;If&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;no&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;filename&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;specified&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="n"&gt;file&lt;/span&gt; &lt;span class="n"&gt;will&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;generated&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dynamic&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;wallpaper&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;generated&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;path&lt;/span&gt; &lt;span class="n"&gt;containing&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;You&lt;/span&gt; &lt;span class="n"&gt;can&lt;/span&gt; &lt;span class="n"&gt;also&lt;/span&gt; &lt;span class="n"&gt;use&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;-&amp;quot;&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;containing&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;pictures&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;You&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;can&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;also&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;use&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;-&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;display&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;xml&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;stdout&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;xml&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;stdout&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;transition&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt; &lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;transition&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;TRANSITION_TIME&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Time&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;transitions&lt;/span&gt; &lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="n"&gt;last&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;default&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;transitions&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;must&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;last&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;default&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt; &lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;display&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DISPLAY_TIME&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;Time&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;picture&lt;/span&gt; &lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;displayed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="n"&gt;Default&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ow"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;picture&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;must&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;displayed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Default&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="n"&gt;value&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="mi"&gt;900&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="n"&gt;mn&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;900&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="n"&gt;mn&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;&amp;#39;&amp;#39;try to set the background using gnome-appearance-&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="n"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;background&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;#39;&amp;#39;try to set the background using gnome-appearance-&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt; properties&lt;/span&gt; &lt;span class="s1"&gt; properties&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="s1"&gt; -b, --debug&lt;/span&gt; &lt;span class="s1"&gt; -b, --debug&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="Technologie"></category></entry><entry><title>How to install NGINX + PHP 5.3 on FreeBSD.</title><link href="https://blog.notmyidea.org/how-to-install-nginx-php-53-on-freebsd.html" rel="alternate"></link><published>2010-10-10T00:00:00+02:00</published><updated>2010-10-10T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-10:/how-to-install-nginx-php-53-on-freebsd.html</id><summary type="html"> &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="Technologie"></category></entry><entry><title>How to install NGINX + PHP 5.3 on FreeBSD.</title><link href="https://blog.notmyidea.org/how-to-install-nginx-php-53-on-freebsd.html" rel="alternate"></link><published>2010-10-10T00:00:00+02:00</published><updated>2010-10-10T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-10:/how-to-install-nginx-php-53-on-freebsd.html</id><summary type="html">
&lt;ul&gt; &lt;ul&gt;
&lt;li&gt; &lt;li&gt;
@ -5415,30 +5415,30 @@ the&amp;nbsp;server.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s a simple thing in fact, but it could be good to have something &lt;p&gt;That&amp;#8217;s a simple thing in fact, but it could be good to have something
that will work without effort over&amp;nbsp;time.&lt;/p&gt; that will work without effort over&amp;nbsp;time.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s a sample of my&amp;nbsp;configuration:&lt;/p&gt; &lt;p&gt;Here&amp;#8217;s a sample of my&amp;nbsp;configuration:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;server&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;server_name&lt;/span&gt; &lt;span class="err"&gt;ndd&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;server_name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;ndd&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;set&lt;/span&gt; &lt;span class="err"&gt;$path&lt;/span&gt; &lt;span class="err"&gt;/path/to/your/files&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/path/to/your/files&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;root&lt;/span&gt; &lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;root&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;location&lt;/span&gt; &lt;span class="err"&gt;/&lt;/span&gt; &lt;span class="err"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;index&lt;/span&gt; &lt;span class="err"&gt;index.php&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;index&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;index.php&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;location&lt;/span&gt; &lt;span class="o"&gt;~*&lt;/span&gt; &lt;span class="o"&gt;^.+.(&lt;/span&gt;&lt;span class="nt"&gt;jpg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;jpeg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;gif&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;css&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;png&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;js&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;ico&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;xml&lt;/span&gt;&lt;span class="o"&gt;)$&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;~*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;^.+.(&lt;/span&gt;&lt;span class="nt"&gt;jpg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;jpeg&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;gif&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;css&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;png&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;js&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;ico&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="nt"&gt;xml&lt;/span&gt;&lt;span class="o"&gt;)$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;access_log&lt;/span&gt; &lt;span class="err"&gt;off&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;access_log&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;off&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;expires&lt;/span&gt; &lt;span class="err"&gt;30d&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;expires&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;30d&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;location&lt;/span&gt; &lt;span class="o"&gt;~&lt;/span&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;php&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;location&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;php&lt;/span&gt;&lt;span class="o"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;fastcgi_param&lt;/span&gt; &lt;span class="err"&gt;SCRIPT_FILENAME&lt;/span&gt; &lt;span class="err"&gt;$path$fastcgi_script_name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_param&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;SCRIPT_FILENAME&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$path$fastcgi_script_name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;fastcgi_pass&lt;/span&gt; &lt;span class="err"&gt;backend&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_pass&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;backend&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;include&lt;/span&gt; &lt;span class="err"&gt;fastcgi_params&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;include&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;fastcgi_params&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;}&lt;/span&gt; &lt;span class="err"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="nt"&gt;upstream&lt;/span&gt; &lt;span class="nt"&gt;backend&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nt"&gt;upstream&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="err"&gt;server&lt;/span&gt; &lt;span class="err"&gt;127.0.0.1:9000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;127.0.0.1:9000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;And that&amp;#8217;s it&amp;nbsp;!&lt;/p&gt;</content><category term="Technologie"></category></entry><entry><title>Pelican, a simple static blog generator in python</title><link href="https://blog.notmyidea.org/pelican-a-simple-static-blog-generator-in-python.html" rel="alternate"></link><published>2010-10-06T00:00:00+02:00</published><updated>2010-10-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-06:/pelican-a-simple-static-blog-generator-in-python.html</id><summary type="html"> &lt;p&gt;And that&amp;#8217;s it&amp;nbsp;!&lt;/p&gt;</content><category term="Technologie"></category></entry><entry><title>Pelican, a simple static blog generator in python</title><link href="https://blog.notmyidea.org/pelican-a-simple-static-blog-generator-in-python.html" rel="alternate"></link><published>2010-10-06T00:00:00+02:00</published><updated>2010-10-06T00:00:00+02:00</updated><author><name></name></author><id>tag:blog.notmyidea.org,2010-10-06:/pelican-a-simple-static-blog-generator-in-python.html</id><summary type="html">

View file

@ -55,30 +55,30 @@ the&nbsp;server.</p>
<p>That&#8217;s a simple thing in fact, but it could be good to have something <p>That&#8217;s a simple thing in fact, but it could be good to have something
that will work without effort over&nbsp;time.</p> that will work without effort over&nbsp;time.</p>
<p>Here&#8217;s a sample of my&nbsp;configuration:</p> <p>Here&#8217;s a sample of my&nbsp;configuration:</p>
<div class="highlight"><pre><span></span><code><span class="nt">server</span> <span class="p">{</span> <div class="highlight"><pre><span></span><code><span class="nt">server</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="err">server_name</span> <span class="err">ndd</span><span class="p">;</span> <span class="w"> </span><span class="err">server_name</span><span class="w"> </span><span class="err">ndd</span><span class="p">;</span><span class="w"></span>
<span class="err">set</span> <span class="err">$path</span> <span class="err">/path/to/your/files</span><span class="p">;</span> <span class="w"> </span><span class="err">set</span><span class="w"> </span><span class="err">$path</span><span class="w"> </span><span class="err">/path/to/your/files</span><span class="p">;</span><span class="w"></span>
<span class="err">root</span> <span class="err">$path</span><span class="p">;</span> <span class="w"> </span><span class="err">root</span><span class="w"> </span><span class="err">$path</span><span class="p">;</span><span class="w"></span>
<span class="err">location</span> <span class="err">/</span> <span class="err">{</span> <span class="w"> </span><span class="err">location</span><span class="w"> </span><span class="err">/</span><span class="w"> </span><span class="err">{</span><span class="w"></span>
<span class="err">index</span> <span class="err">index.php</span><span class="p">;</span> <span class="w"> </span><span class="err">index</span><span class="w"> </span><span class="err">index.php</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span> <span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="nt">location</span> <span class="o">~*</span> <span class="o">^.+.(</span><span class="nt">jpg</span><span class="o">|</span><span class="nt">jpeg</span><span class="o">|</span><span class="nt">gif</span><span class="o">|</span><span class="nt">css</span><span class="o">|</span><span class="nt">png</span><span class="o">|</span><span class="nt">js</span><span class="o">|</span><span class="nt">ico</span><span class="o">|</span><span class="nt">xml</span><span class="o">)$</span> <span class="p">{</span> <span class="w"> </span><span class="nt">location</span><span class="w"> </span><span class="o">~*</span><span class="w"> </span><span class="o">^.+.(</span><span class="nt">jpg</span><span class="o">|</span><span class="nt">jpeg</span><span class="o">|</span><span class="nt">gif</span><span class="o">|</span><span class="nt">css</span><span class="o">|</span><span class="nt">png</span><span class="o">|</span><span class="nt">js</span><span class="o">|</span><span class="nt">ico</span><span class="o">|</span><span class="nt">xml</span><span class="o">)$</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="err">access_log</span> <span class="err">off</span><span class="p">;</span> <span class="w"> </span><span class="err">access_log</span><span class="w"> </span><span class="err">off</span><span class="p">;</span><span class="w"></span>
<span class="err">expires</span> <span class="err">30d</span><span class="p">;</span> <span class="w"> </span><span class="err">expires</span><span class="w"> </span><span class="err">30d</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span> <span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="nt">location</span> <span class="o">~</span> <span class="p">.</span><span class="nc">php</span><span class="o">$</span> <span class="p">{</span> <span class="w"> </span><span class="nt">location</span><span class="w"> </span><span class="o">~</span><span class="w"> </span><span class="p">.</span><span class="nc">php</span><span class="o">$</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="err">fastcgi_param</span> <span class="err">SCRIPT_FILENAME</span> <span class="err">$path$fastcgi_script_name</span><span class="p">;</span> <span class="w"> </span><span class="err">fastcgi_param</span><span class="w"> </span><span class="err">SCRIPT_FILENAME</span><span class="w"> </span><span class="err">$path$fastcgi_script_name</span><span class="p">;</span><span class="w"></span>
<span class="err">fastcgi_pass</span> <span class="err">backend</span><span class="p">;</span> <span class="w"> </span><span class="err">fastcgi_pass</span><span class="w"> </span><span class="err">backend</span><span class="p">;</span><span class="w"></span>
<span class="err">include</span> <span class="err">fastcgi_params</span><span class="p">;</span> <span class="w"> </span><span class="err">include</span><span class="w"> </span><span class="err">fastcgi_params</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span> <span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="err">}</span> <span class="err">}</span><span class="w"></span>
<span class="nt">upstream</span> <span class="nt">backend</span> <span class="p">{</span> <span class="nt">upstream</span><span class="w"> </span><span class="nt">backend</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="err">server</span> <span class="err">127.0.0.1:9000</span><span class="p">;</span> <span class="w"> </span><span class="err">server</span><span class="w"> </span><span class="err">127.0.0.1:9000</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span> <span class="p">}</span><span class="w"></span>
</code></pre></div> </code></pre></div>
<p>And that&#8217;s it&nbsp;!</p> <p>And that&#8217;s it&nbsp;!</p>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

216
index16.html Normal file
View file

@ -0,0 +1,216 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Alexis Métaireau</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://blog.notmyidea.org/theme/css/main.css" type="text/css" />
<link href="https://blog.notmyidea.org/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Alexis Métaireau ATOM Feed" />
</head>
<body>
<section id="links">
<li>
<a class="selected" href="https://blog.notmyidea.org/" id="site-title">Blog</a>
</li>
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section>
<h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
Jai pensé durant de nombreuses années que je savais gérer le conflit, alors que cétait en fait impensé. Ne pas être en conflit signifie parfois sadapter aux autres, parfois ne pas (assez)...
</section>
<section class="section index">
<time datetime="2021-11-01T00:00:00+01:00">01 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/cooperation-et-travail.html" id="page-title">Coopération et&nbsp;travail</a></h1>
Je parle souvent de coopération, que jimagine comme « un fonctionnement collectif, dans lequel chacun⋅e y trouve son compte ». Or je me rends aujourdhui compte que cette définition mets de côté...
</section>
<section class="section index">
<time datetime="2021-09-13T00:00:00+02:00">13 septembre 2021</time>
<h1><a href="https://blog.notmyidea.org/rentree.html" id="page-title">Rentrée</a></h1>
Trois semaines de vacances mont fait le plus grand bien. Je suis toujours autant étonné par ma capacité à repousser mes limites quand je suis la tête dans le guidon, ce qui était le cas...
</section>
<section class="section index">
<time datetime="2021-08-04T00:00:00+02:00">04 août 2021</time>
<h1><a href="https://blog.notmyidea.org/faire-de-la-musique-sous-linux.html" id="page-title">Faire de la musique sous&nbsp;Linux</a></h1>
Update du 07/08 : ajout des infos sur le noyau temps réel Faire de la musique electronique à été pour moi loccasion de réinstaller Windows pour pouvoir utiliser Ableton Live, un des logiciels les...
</section>
<section class="section index">
<time datetime="2021-05-08T00:00:00+02:00">08 mai 2021</time>
<h1><a href="https://blog.notmyidea.org/vaccination-et-risques.html" id="page-title">Vaccination et&nbsp;risques</a></h1>
Je mintéresse un peu tardivement a la question des différents vaccins, pour pouvoir mieux comprendre comment ceux cis fonctionnent et quels sont les risques liés. Cette réflexion nest en aucun...
</section>
<section class="section index">
<time datetime="2021-01-26T00:00:00+01:00">26 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/facebook-competition-ethique-et-marketing.html" id="page-title">Facebook, compétition, éthique et&nbsp;marketing.</a></h1>
En créant la brasserie du Vieux Singe, le fait de créer une page facebook sest posé comme une évidence. Il sagit de loutil de facto pour communiquer avec son « audience ». Jai donc créé une...
</section>
<section class="section index">
<time datetime="2021-01-25T00:00:00+01:00">25 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/routine.html" id="page-title">Routine</a></h1>
Si vous pensez que laventure est dangereuse, je vous propose dessayer la routine…. Elle est mortelle ! — Paulo Coelho Jai toujours attaché une connotation négative à la routine. La routine,...
</section>
<section class="section index">
<time datetime="2021-01-15T00:00:00+01:00">15 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section>
<section>
<h1>Anciens articles...</h1>
<ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>
<li><a href="https://blog.notmyidea.org/prendre-le-temps.html" rel="bookmark" title="Permalink to Prendre le temps">Prendre le&nbsp;temps</a></li>
<li><a href="https://blog.notmyidea.org/limites-horaires.html" rel="bookmark" title="Permalink to Limites horaires">Limites&nbsp;horaires</a></li>
<li><a href="https://blog.notmyidea.org/prendre-soin.html" rel="bookmark" title="Permalink to Prendre soin">Prendre&nbsp;soin</a></li>
<li><a href="https://blog.notmyidea.org/remettre-les-choses-a-plus-tard.html" rel="bookmark" title="Permalink to Remettre les choses à plus tard">Remettre les choses à plus&nbsp;tard</a></li>
<li><a href="https://blog.notmyidea.org/au-dela-de-la-penetration.html" rel="bookmark" title="Permalink to Au delà de la pénétration">📖 Au delà de la&nbsp;pénétration</a></li>
<li><a href="https://blog.notmyidea.org/la-conjuration-des-egos.html" rel="bookmark" title="Permalink to La conjuration des égos">📖 La conjuration des&nbsp;égos</a></li>
<li><a href="https://blog.notmyidea.org/break-technologique.html" rel="bookmark" title="Permalink to Break technologique">Break&nbsp;technologique</a></li>
<li><a href="https://blog.notmyidea.org/assurance-chomage.html" rel="bookmark" title="Permalink to Assurance chômage">Assurance&nbsp;chômage</a></li>
<li><a href="https://blog.notmyidea.org/prix-libre-et-conscient.html" rel="bookmark" title="Permalink to Prix libre et conscient & culpabilisation">Prix libre et conscient <span class="amp">&amp;</span>&nbsp;culpabilisation</a></li>
<li><a href="https://blog.notmyidea.org/ecran-et-dependances.html" rel="bookmark" title="Permalink to Écran et dépendances">Écran et&nbsp;dépendances</a></li>
<li><a href="https://blog.notmyidea.org/groupe-de-paroles-hommes.html" rel="bookmark" title="Permalink to Groupe de paroles hommes">Groupe de paroles&nbsp;hommes</a></li>
<li><a href="https://blog.notmyidea.org/ignorance-et-vertu.html" rel="bookmark" title="Permalink to Ignorance et vertu">Ignorance et&nbsp;vertu</a></li>
<li><a href="https://blog.notmyidea.org/fatigue-et-competition.html" rel="bookmark" title="Permalink to Fatigue et compétition">Fatigue et&nbsp;compétition</a></li>
<li><a href="https://blog.notmyidea.org/francis-dupuis-deri-democratie.html" rel="bookmark" title="Permalink to Francis Dupuis Déri, Démocratie.">Francis Dupuis Déri,&nbsp;Démocratie.</a></li>
<li><a href="https://blog.notmyidea.org/musique-creation-et-partage.html" rel="bookmark" title="Permalink to Musique, création et partage">Musique, création et&nbsp;partage</a></li>
<li><a href="https://blog.notmyidea.org/elitisme-et-apprentissage.html" rel="bookmark" title="Permalink to Élitisme et apprentissage">Élitisme et&nbsp;apprentissage</a></li>
<li><a href="https://blog.notmyidea.org/travail-passion-et-limites.html" rel="bookmark" title="Permalink to Travail, passion et limites.">Travail, passion et&nbsp;limites.</a></li>
<li><a href="https://blog.notmyidea.org/leffondrement-parlons-en.html" rel="bookmark" title="Permalink to Leffondrement, parlons-en…">📖 L&#8217;effondrement,&nbsp;parlons-en&#8230;</a></li>
<li><a href="https://blog.notmyidea.org/refuser-detre-un-homme.html" rel="bookmark" title="Permalink to Refuser dêtre un homme">📖 Refuser d&#8217;être un&nbsp;homme</a></li>
<li><a href="https://blog.notmyidea.org/antisexisme-ou-antiracisme-un-faux-dilemme.html" rel="bookmark" title="Permalink to Antisexisme ou antiracisme ? Un faux dilemme">📖 Antisexisme ou antiracisme ? Un faux&nbsp;dilemme</a></li>
<li><a href="https://blog.notmyidea.org/egologie.html" rel="bookmark" title="Permalink to Égologie">📖 Égologie</a></li>
<li><a href="https://blog.notmyidea.org/hommes-anarchistes-face-au-feminisme.html" rel="bookmark" title="Permalink to Hommes Anarchistes face au féminisme">📖 Hommes Anarchistes face au&nbsp;féminisme</a></li>
<li><a href="https://blog.notmyidea.org/les-illusions-liberales-individualisme-et-pouvoir-social.html" rel="bookmark" title="Permalink to Les illusions libérales, individualisme et pouvoir social">📖 Les illusions libérales, individualisme et pouvoir&nbsp;social</a></li>
<li><a href="https://blog.notmyidea.org/open-space-technology.html" rel="bookmark" title="Permalink to Open space technology">📖 Open space&nbsp;technology</a></li>
<li><a href="https://blog.notmyidea.org/rupture-anarchiste-et-trahison-pro-feministe.html" rel="bookmark" title="Permalink to Rupture anarchiste et trahison pro-féministe">📖 Rupture anarchiste et trahison&nbsp;pro-féministe</a></li>
<li><a href="https://blog.notmyidea.org/ours.html" rel="bookmark" title="Permalink to Ours">Ours</a></li>
<li><a href="https://blog.notmyidea.org/velo.html" rel="bookmark" title="Permalink to Vélo">Vélo</a></li>
<li><a href="https://blog.notmyidea.org/un-espace-des-communs-rennais.html" rel="bookmark" title="Permalink to Un espace des communs Rennais ?">Un espace des communs Rennais&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/comment-la-non-violence-protege-letat.html" rel="bookmark" title="Permalink to Comment la non-violence protège létat">📖 Comment la non-violence protège&nbsp;l&#8217;état</a></li>
<li><a href="https://blog.notmyidea.org/un-an.html" rel="bookmark" title="Permalink to Brasserie - petit bilan, après un an dexistence">Brasserie - petit bilan, après un an&nbsp;dexistence</a></li>
<li><a href="https://blog.notmyidea.org/de-mozilla-a-la-brasserie-du-vieux-singe.html" rel="bookmark" title="Permalink to De Mozilla à la Brasserie du Vieux Singe">De Mozilla à la Brasserie du Vieux&nbsp;Singe</a></li>
<li><a href="https://blog.notmyidea.org/groupement-dachats-partage-dexperience.html" rel="bookmark" title="Permalink to Groupement dachats & partage dexpérience">Groupement d&#8217;achats <span class="amp">&amp;</span> partage&nbsp;d&#8217;expérience</a></li>
<li><a href="https://blog.notmyidea.org/webnotes.html" rel="bookmark" title="Permalink to Webnotes">Webnotes</a></li>
<li><a href="https://blog.notmyidea.org/faire-moins.html" rel="bookmark" title="Permalink to Faire moins">Faire&nbsp;moins</a></li>
<li><a href="https://blog.notmyidea.org/neipa-3.html" rel="bookmark" title="Permalink to NEIPA #3"><span class="caps">NEIPA</span>&nbsp;#3</a></li>
<li><a href="https://blog.notmyidea.org/neipa-2.html" rel="bookmark" title="Permalink to NEIPA #2"><span class="caps">NEIPA</span>&nbsp;#2</a></li>
<li><a href="https://blog.notmyidea.org/larrivee-du-trouble-ou-comment-faire-des-neipa.html" rel="bookmark" title="Permalink to Larrivée du trouble (ou comment faire des NEIPA ?)">L&#8217;arrivée du trouble (ou comment faire des <span class="caps">NEIPA</span>&nbsp;?)</a></li>
<li><a href="https://blog.notmyidea.org/un-club-des-brasseurs-amateurs-rennais.html" rel="bookmark" title="Permalink to Un club des brasseurs amateurs Rennais">Un club des brasseurs amateurs&nbsp;Rennais</a></li>
<li><a href="https://blog.notmyidea.org/brasserie-du-vieux-singe-installation-en-cours.html" rel="bookmark" title="Permalink to Brasserie du Vieux Singe — Installation en cours.">Brasserie du Vieux Singe — Installation en&nbsp;cours.</a></li>
<li><a href="https://blog.notmyidea.org/comment-est-ce-que-vous-generez-vos-formulaires.html" rel="bookmark" title="Permalink to Comment est-ce que vous générez vos formulaires ?">Comment est-ce que vous générez vos formulaires&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/cloisonnement-des-activites.html" rel="bookmark" title="Permalink to Cloisonnement des activités ?">Cloisonnement des activités&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/avez-vous-confiance-en-ssl.html" rel="bookmark" title="Permalink to Avez vous confiance en SSL?">Avez vous confiance en <span class="caps">SSL</span>?</a></li>
<li><a href="https://blog.notmyidea.org/focusing-on-what-matters.html" rel="bookmark" title="Permalink to Focusing on what matters">Focusing on what&nbsp;matters</a></li>
<li><a href="https://blog.notmyidea.org/retours-sur-un-atelier-zeronet.html" rel="bookmark" title="Permalink to Retours sur un atelier ZeroNet">Retours sur un atelier&nbsp;ZeroNet</a></li>
<li><a href="https://blog.notmyidea.org/lhorizon.html" rel="bookmark" title="Permalink to Lhorizon">L&#8217;horizon</a></li>
<li><a href="https://blog.notmyidea.org/service-de-nuages-garantir-lintegrite-des-donnees-via-des-signatures-fr.html" rel="bookmark" title="Permalink to Service de nuages : Garantir lintégrité des données via des signatures">Service de nuages : Garantir l&#8217;intégrité des données via des&nbsp;signatures</a></li>
<li><a href="https://blog.notmyidea.org/lets-encrypt-haproxy.html" rel="bookmark" title="Permalink to Lets Encrypt + HAProxy">Let&#8217;s Encrypt +&nbsp;HAProxy</a></li>
<li><a href="https://blog.notmyidea.org/ateliers-dautodefense-numerique.html" rel="bookmark" title="Permalink to Ateliers dautodéfense numérique">Ateliers d&#8217;autodéfense&nbsp;numérique</a></li>
<li><a href="https://blog.notmyidea.org/le-mail-doit-il-mourir.html" rel="bookmark" title="Permalink to Le mail doit-il mourir ?">Le mail doit-il mourir&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/rencontres-python-francophones-2015.html" rel="bookmark" title="Permalink to Rencontres python francophones, 2015">Rencontres python francophones,&nbsp;2015</a></li>
<li><a href="https://blog.notmyidea.org/pyconfr-2015-assemblee-generale.html" rel="bookmark" title="Permalink to PyconFR 2015 — Assemblée générale">PyconFR 2015 — Assemblée&nbsp;générale</a></li>
<li><a href="https://blog.notmyidea.org/pyconfr-2015-hospital-des-tests-en-prod.html" rel="bookmark" title="Permalink to PyconFR 2015 — Hospital - des tests en prod">PyconFR 2015 — Hospital - des tests en&nbsp;prod</a></li>
<li><a href="https://blog.notmyidea.org/pyconfr-2015-we-dont-need-your-loop.html" rel="bookmark" title="Permalink to PyconFR 2015 — We dont need your loop">PyconFR 2015 — We don&#8217;t need your&nbsp;loop</a></li>
<li><a href="https://blog.notmyidea.org/pyconfr-2015-cliquet.html" rel="bookmark" title="Permalink to PyconFR 2015 — Cliquet">PyconFR 2015 —&nbsp;Cliquet</a></li>
<li><a href="https://blog.notmyidea.org/pyconfr-2015-geoalchemy.html" rel="bookmark" title="Permalink to PyconFR 2015 — Geoalchemy">PyconFR 2015 —&nbsp;Geoalchemy</a></li>
<li><a href="https://blog.notmyidea.org/pyconfr-2015-sql-alchemy.html" rel="bookmark" title="Permalink to PyconFR 2015 — SQL Alchemy">PyconFR 2015 — <span class="caps">SQL</span>&nbsp;Alchemy</a></li>
<li><a href="https://blog.notmyidea.org/pyconfr-2015-table-ronde-diversite.html" rel="bookmark" title="Permalink to PyconFR 2015 — Table ronde diversité">PyconFR 2015 — Table ronde&nbsp;diversité</a></li>
<li><a href="https://blog.notmyidea.org/web-distribution-signing.html" rel="bookmark" title="Permalink to Web distribution signing">Web distribution&nbsp;signing</a></li>
<li><a href="https://blog.notmyidea.org/pourquoi-cliquet" rel="bookmark" title="Permalink to Service de nuages : Pourquoi avons-nous fait Cliquet ?">Service de nuages : Pourquoi avons-nous fait Cliquet&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/charte-et-evenements-non-mixtes-au-sein-de-lafpy.html" rel="bookmark" title="Permalink to Charte et événements non-mixtes au sein de lAfpy">Charte et événements non-mixtes au sein de&nbsp;l&#8217;Afpy</a></li>
<li><a href="https://blog.notmyidea.org/service-de-nuages-perspectives-pour-lete-fr.html" rel="bookmark" title="Permalink to Service de nuages : Perspectives pour lété">Service de nuages : Perspectives pour&nbsp;l&#8217;été</a></li>
<li><a href="https://blog.notmyidea.org/roles.html" rel="bookmark" title="Permalink to Rôles">Rôles</a></li>
<li><a href="https://blog.notmyidea.org/service-de-nuages-achievement-unlocked-fr.html" rel="bookmark" title="Permalink to Service de nuages : Achievement unlocked">Service de nuages : Achievement&nbsp;unlocked</a></li>
<li><a href="https://blog.notmyidea.org/service-de-nuages-stocker-et-interroger-les-permissions-avec-kinto-fr.html" rel="bookmark" title="Permalink to Service de nuages : Stocker et interroger les permissions avec Kinto">Service de nuages : Stocker et interroger les permissions avec&nbsp;Kinto</a></li>
<li><a href="https://blog.notmyidea.org/les-problemes-de-pgp.html" rel="bookmark" title="Permalink to Les problèmes de PGP">Les problèmes de <span class="caps">PGP</span></a></li>
<li><a href="https://blog.notmyidea.org/travail-et-creativite.html" rel="bookmark" title="Permalink to Travail et créativité">Travail et&nbsp;créativité</a></li>
<li><a href="https://blog.notmyidea.org/simplifier-les-preuves-didentites.html" rel="bookmark" title="Permalink to Simplifier les preuves didentités">Simplifier les preuves&nbsp;d&#8217;identités</a></li>
<li><a href="https://blog.notmyidea.org/phrases-de-passe-et-bonnes-pratiques.html" rel="bookmark" title="Permalink to Phrases de passe et bonnes pratiques">Phrases de passe et bonnes&nbsp;pratiques</a></li>
<li><a href="https://blog.notmyidea.org/chiffrement.html" rel="bookmark" title="Permalink to Chiffrement">Chiffrement</a></li>
<li><a href="https://blog.notmyidea.org/language.html" rel="bookmark" title="Permalink to Language">Language</a></li>
<li><a href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html" rel="bookmark" title="Permalink to Service de nuages : La gestion des permissions">Service de nuages : La gestion des&nbsp;permissions</a></li>
<li><a href="https://blog.notmyidea.org/eco-systeme-et-stockage-generique.html" rel="bookmark" title="Permalink to Eco-système et stockage générique">Eco-système et stockage&nbsp;générique</a></li>
<li><a href="https://blog.notmyidea.org/service-de-nuages-fr.html" rel="bookmark" title="Permalink to Service de nuages !">Service de nuages&nbsp;!</a></li>
<li><a href="https://blog.notmyidea.org/le-secret-du-bonheur.html" rel="bookmark" title="Permalink to Le secret du bonheur">Le secret du&nbsp;bonheur</a></li>
<li><a href="https://blog.notmyidea.org/whats-hawk-and-how-to-use-it.html" rel="bookmark" title="Permalink to Whats Hawk and how to use it?">What&#8217;s Hawk and how to use&nbsp;it?</a></li>
<li><a href="https://blog.notmyidea.org/quel-metier-quelle-utilite.html" rel="bookmark" title="Permalink to Quel métier, quelle utilité ?">Quel métier, quelle utilité&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/retours-sur-deux-ans-a-mozilla.html" rel="bookmark" title="Permalink to Retours sur deux ans à Mozilla">Retours sur deux ans à&nbsp;Mozilla</a></li>
<li><a href="https://blog.notmyidea.org/des-carnets-desquisse.html" rel="bookmark" title="Permalink to Des carnets desquisse">Des carnets&nbsp;d&#8217;esquisse</a></li>
<li><a href="https://blog.notmyidea.org/francois-elie-quelle-ecole-pour-la-societe-de-linformation.html" rel="bookmark" title="Permalink to François Elie : Quelle école pour la société de linformation ?">François Elie : Quelle école pour la société de linformation&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/notes-economie-libidinale-et-economie-politique.html" rel="bookmark" title="Permalink to Notes: Économie libidinale et économie politique">Notes: Économie libidinale et économie&nbsp;politique</a></li>
<li><a href="https://blog.notmyidea.org/le-revenu-de-base.html" rel="bookmark" title="Permalink to Le revenu de base">Le revenu de&nbsp;base</a></li>
<li><a href="https://blog.notmyidea.org/des-profils-de-confiance-partout-et-pour-tout.html" rel="bookmark" title="Permalink to Des profils de confiance partout et pour tout ?">Des profils de confiance partout et pour tout&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/implementing-cors-in-cornice.html" rel="bookmark" title="Permalink to Implementing CORS in Cornice">Implementing <span class="caps">CORS</span> in&nbsp;Cornice</a></li>
<li><a href="https://blog.notmyidea.org/new-year-python-meme-2012.html" rel="bookmark" title="Permalink to New year python meme, 2012">New year python meme,&nbsp;2012</a></li>
<li><a href="https://blog.notmyidea.org/status-board.html" rel="bookmark" title="Permalink to Status board">Status&nbsp;board</a></li>
<li><a href="https://blog.notmyidea.org/habitat-collectif.html" rel="bookmark" title="Permalink to Habitat collectif">Habitat&nbsp;collectif</a></li>
<li><a href="https://blog.notmyidea.org/tricot.html" rel="bookmark" title="Permalink to Tricot">Tricot</a></li>
<li><a href="https://blog.notmyidea.org/astuces-ssh.html" rel="bookmark" title="Permalink to Astuces SSH">Astuces <span class="caps">SSH</span></a></li>
<li><a href="https://blog.notmyidea.org/gnome-3-extensions.html" rel="bookmark" title="Permalink to Gnome 3, extensions">Gnome 3,&nbsp;extensions</a></li>
<li><a href="https://blog.notmyidea.org/groovy.html" rel="bookmark" title="Permalink to “Groovy”"><span class="dquo">&#8220;</span>Groovy&#8221;</a></li>
<li><a href="https://blog.notmyidea.org/notre-dame-des-landes.html" rel="bookmark" title="Permalink to Notre dame des landes">Notre dame des&nbsp;landes</a></li>
<li><a href="https://blog.notmyidea.org/semences-paysannes.html" rel="bookmark" title="Permalink to Semences paysannes">Semences&nbsp;paysannes</a></li>
<li><a href="https://blog.notmyidea.org/languages.html" rel="bookmark" title="Permalink to Languages">Languages</a></li>
<li><a href="https://blog.notmyidea.org/cheese-code-wrap-up.html" rel="bookmark" title="Permalink to Cheese & code - Wrap-up">Cheese <span class="amp">&amp;</span> code -&nbsp;Wrap-up</a></li>
<li><a href="https://blog.notmyidea.org/biere-maison.html" rel="bookmark" title="Permalink to Bière maison !">Bière maison&nbsp;!</a></li>
<li><a href="https://blog.notmyidea.org/motivation-benevolat-et-participation.html" rel="bookmark" title="Permalink to Motivation, bénévolat et participation">Motivation, bénévolat et&nbsp;participation</a></li>
<li><a href="https://blog.notmyidea.org/cheese-code-party-october-20-21.html" rel="bookmark" title="Permalink to Cheese & Code party: October 20-21">Cheese <span class="amp">&amp;</span> Code party: October&nbsp;20-21</a></li>
<li><a href="https://blog.notmyidea.org/circus-sprint-at-pyconfr.html" rel="bookmark" title="Permalink to Circus sprint at PyconFR">Circus sprint at&nbsp;PyconFR</a></li>
<li><a href="https://blog.notmyidea.org/pourquoi-mozilla.html" rel="bookmark" title="Permalink to Pourquoi Mozilla?">Pourquoi&nbsp;Mozilla?</a></li>
<li><a href="https://blog.notmyidea.org/lifestyle.html" rel="bookmark" title="Permalink to Lifestyle">Lifestyle</a></li>
<li><a href="https://blog.notmyidea.org/refactoring-cornice.html" rel="bookmark" title="Permalink to Refactoring Cornice">Refactoring&nbsp;Cornice</a></li>
<li><a href="https://blog.notmyidea.org/bidouille.html" rel="bookmark" title="Permalink to Bidouille">Bidouille</a></li>
<li><a href="https://blog.notmyidea.org/djangocong-2012.html" rel="bookmark" title="Permalink to Djangocong 2012">Djangocong&nbsp;2012</a></li>
<li><a href="https://blog.notmyidea.org/generation-de-formulaires-geolocalises.html" rel="bookmark" title="Permalink to Génération de formulaires, geolocalisés ?">Génération de formulaires, geolocalisés&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/thoughts-about-a-form-generation-service-gis-enabled.html" rel="bookmark" title="Permalink to Thoughts about a form generation service, GIS enabled">Thoughts about a form generation service, <span class="caps">GIS</span>&nbsp;enabled</a></li>
<li><a href="https://blog.notmyidea.org/les-dangers-du-livre-numerique.html" rel="bookmark" title="Permalink to Les dangers du livre numérique">Les dangers du livre&nbsp;numérique</a></li>
<li><a href="https://blog.notmyidea.org/mozilla-first-months.html" rel="bookmark" title="Permalink to Mozilla, first months">Mozilla, first&nbsp;months</a></li>
<li><a href="https://blog.notmyidea.org/introducing-cornice.html" rel="bookmark" title="Permalink to Introducing Cornice">Introducing&nbsp;Cornice</a></li>
<li><a href="https://blog.notmyidea.org/quels-usages-pour-linformatique.html" rel="bookmark" title="Permalink to Quels usages pour linformatique ?">Quels usages pour l&#8217;informatique&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/how-are-you-handling-your-shared-expenses.html" rel="bookmark" title="Permalink to How are you handling your shared expenses?">How are you handling your shared&nbsp;expenses?</a></li>
<li><a href="https://blog.notmyidea.org/la-simplicite-volontaire-contre-le-mythe-de-labondance.html" rel="bookmark" title="Permalink to La simplicité volontaire contre le mythe de labondance">La simplicité volontaire contre le mythe de&nbsp;l&#8217;abondance</a></li>
<li><a href="https://blog.notmyidea.org/using-dbpedia-to-get-languages-influences.html" rel="bookmark" title="Permalink to Using dbpedia to get languages influences">Using dbpedia to get languages&nbsp;influences</a></li>
<li><a href="https://blog.notmyidea.org/pelican-9-months-later.html" rel="bookmark" title="Permalink to Pelican, 9 months later">Pelican, 9 months&nbsp;later</a></li>
<li><a href="https://blog.notmyidea.org/using-jpype-to-bridge-python-and-java.html" rel="bookmark" title="Permalink to Using JPype to bridge python and Java">Using JPype to bridge python and&nbsp;Java</a></li>
<li><a href="https://blog.notmyidea.org/un-coup-de-main-pour-mon-memoire.html" rel="bookmark" title="Permalink to Un coup de main pour mon mémoire !">Un coup de main pour mon mémoire&nbsp;!</a></li>
<li><a href="https://blog.notmyidea.org/travailler-moins-pour-mieux-travailler.html" rel="bookmark" title="Permalink to Travailler moins pour mieux travailler ?">Travailler moins pour mieux travailler&nbsp;?</a></li>
<li><a href="https://blog.notmyidea.org/analyse-users-browsing-context-to-build-up-a-web-recommender.html" rel="bookmark" title="Permalink to Analyse users browsing context to build up a web recommender">Analyse users&#8217; browsing context to build up a web&nbsp;recommender</a></li>
<li><a href="https://blog.notmyidea.org/working-directly-on-your-server-how-to-backup-and-sync-your-dev-environment-with-unison.html" rel="bookmark" title="Permalink to Working directly on your server? How to backup and sync your dev environment with unison">Working directly on your server? How to backup and sync your dev environment with&nbsp;unison</a></li>
<li><a href="https://blog.notmyidea.org/wrap-up-of-the-distutils2-paris-sprint.html" rel="bookmark" title="Permalink to Wrap up of the distutils2 paris sprint">Wrap up of the distutils2 paris&#8217;&nbsp;sprint</a></li>
<li><a href="https://blog.notmyidea.org/pypi-on-couchdb.html" rel="bookmark" title="Permalink to PyPI on CouchDB">PyPI on&nbsp;CouchDB</a></li>
<li><a href="https://blog.notmyidea.org/help-me-to-go-to-the-distutils2-paris-sprint.html" rel="bookmark" title="Permalink to Help me to go to the distutils2 paris sprint">Help me to go to the distutils2 paris&#8217;&nbsp;sprint</a></li>
<li><a href="https://blog.notmyidea.org/fork-you-or-how-the-social-coding-can-help-you.html" rel="bookmark" title="Permalink to Fork you! or how the social coding can help you">Fork you! or how the social coding can help&nbsp;you</a></li>
<li><a href="https://blog.notmyidea.org/how-to-reboot-your-bebox-using-the-cli.html" rel="bookmark" title="Permalink to How to reboot your bebox using the CLI">How to reboot your bebox using the <span class="caps">CLI</span></a></li>
<li><a href="https://blog.notmyidea.org/dynamically-change-your-gnome-desktop-wallpaper.html" rel="bookmark" title="Permalink to Dynamically change your gnome desktop wallpaper">Dynamically change your gnome desktop&nbsp;wallpaper</a></li>
<li><a href="https://blog.notmyidea.org/how-to-install-nginx-php-53-on-freebsd.html" rel="bookmark" title="Permalink to How to install NGINX + PHP 5.3 on FreeBSD.">How to install <span class="caps">NGINX</span> + <span class="caps">PHP</span> 5.3 on&nbsp;FreeBSD.</a></li>
<li><a href="https://blog.notmyidea.org/pelican-a-simple-static-blog-generator-in-python.html" rel="bookmark" title="Permalink to Pelican, a simple static blog generator in python">Pelican, a simple static blog generator in&nbsp;python</a></li>
<li><a href="https://blog.notmyidea.org/an-amazing-summer-of-code-working-on-distutils2.html" rel="bookmark" title="Permalink to An amazing summer of code working on distutils2">An amazing summer of code working on&nbsp;distutils2</a></li>
<li><a href="https://blog.notmyidea.org/sprinting-on-distutils2-in-tours.html" rel="bookmark" title="Permalink to Sprinting on distutils2 in Tours">Sprinting on distutils2 in&nbsp;Tours</a></li>
<li><a href="https://blog.notmyidea.org/introducing-the-distutils2-index-crawlers.html" rel="bookmark" title="Permalink to Introducing the distutils2 index crawlers">Introducing the distutils2 index&nbsp;crawlers</a></li>
<li><a href="https://blog.notmyidea.org/use-restructured-text-rest-to-power-your-presentations.html" rel="bookmark" title="Permalink to Use Restructured Text (ReST) to power your presentations">Use Restructured Text (ReST) to power your&nbsp;presentations</a></li>
<li><a href="https://blog.notmyidea.org/first-week-working-on-distutils2.html" rel="bookmark" title="Permalink to first week working on distutils2">first week working on&nbsp;distutils2</a></li>
<li><a href="https://blog.notmyidea.org/a-distutils2-gsoc.html" rel="bookmark" title="Permalink to A Distutils2 GSoC">A Distutils2&nbsp;GSoC</a></li>
<li><a href="https://blog.notmyidea.org/le-temps-des-graces-courrez-y.html" rel="bookmark" title="Permalink to Le temps des grâces, courrez-y !">Le temps des grâces, courrez-y&nbsp;!</a></li>
<li><a href="https://blog.notmyidea.org/semaine-de-lenvironnement-la-consommation-etudiante.html" rel="bookmark" title="Permalink to Semaine de lenvironnement: La consommation étudiante">Semaine de lenvironnement: La consommation&nbsp;étudiante</a></li>
<li><a href="https://blog.notmyidea.org/python-go.html" rel="bookmark" title="Permalink to Python ? go !">Python ? go&nbsp;!</a></li>
<li><a href="https://blog.notmyidea.org/amap-media-paniers-bio-a-5e.html" rel="bookmark" title="Permalink to AMAP + Média = Paniers bio à 5e ?!"><span class="caps">AMAP</span> + Média = Paniers bio à 5e&nbsp;?!</a></li>
</ul>
</section>
</body>
</html>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -15,6 +15,16 @@
<li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li> <li><a class="" href="https://blog.notmyidea.org/pages/projets.html">Projets</a></li>
</section> </section>
<h1></h1> <h1></h1>
<section class="section index">
<time datetime="2022-05-06T00:00:00+02:00">06 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/fatigue-relationnelle.html" id="page-title">Fatigue&nbsp;relationnelle</a></h1>
Depuis peu, je me retrouve confronté à mon manque denvie dêtre avec dautres personnes. Comme si mon quota dinteractions sociales était plus rapidement atteint quil y a quelques années. Je ne...
</section>
<section class="section index">
<time datetime="2022-05-01T00:00:00+02:00">01 mai 2022</time>
<h1><a href="https://blog.notmyidea.org/accueil-transmission-et-confiance.html" id="page-title">Accueil, transmission et&nbsp;confiance</a></h1>
Nous avons depuis peu une nouvelle recrue à la brasserie. Je men réjouis pour plusieurs raisons : Ma charge de travail devrait baisser de manière considérable et me permettre davancer sur des...
</section>
<section class="section index"> <section class="section index">
<time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time> <time datetime="2021-11-11T00:00:00+01:00">11 novembre 2021</time>
<h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1> <h1><a href="https://blog.notmyidea.org/conflit.html" id="page-title">Conflit</a></h1>
@ -55,19 +65,11 @@
<h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1> <h1><a href="https://blog.notmyidea.org/reconnexion.html" id="page-title">Reconnexion&nbsp;?</a></h1>
Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes... Cela fait un an que jai décidé de me déconnecter pour laisser plus de place à dautres projets. Me détacher de la maintenance de ihatemoney ; Supprimer la plupart des applications sur mes...
</section> </section>
<section class="section index">
<time datetime="2021-01-01T00:00:00+01:00">01 janvier 2021</time>
<h1><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" id="page-title">📖 Un féminisme&nbsp;décolonial</a></h1>
Jai aussi appris très tôt que si lÉtat veut écraser un mouvement ,il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition dune part pour réprimer, dautre part pour...
</section>
<section class="section index">
<time datetime="2020-03-06T00:00:00+01:00">06 mars 2020</time>
<h1><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" id="page-title">Forum ouvert, animation et&nbsp;posture</a></h1>
Début Février jai participé à un Forum Ouvert. Il sagit de la troisième fois, et cette fois ci jétais particulièrement attentif aux procédés mis en place pour sa tenue, puisque je faisais...
</section>
<section> <section>
<h1>Anciens articles...</h1> <h1>Anciens articles...</h1>
<ul> <ul>
<li><a href="https://blog.notmyidea.org/un-feminisme-decolonial.html" rel="bookmark" title="Permalink to Un féminisme décolonial">📖 Un féminisme&nbsp;décolonial</a></li>
<li><a href="https://blog.notmyidea.org/forum-ouvert-animation-et-posture.html" rel="bookmark" title="Permalink to Forum ouvert, animation et posture">Forum ouvert, animation et&nbsp;posture</a></li>
<li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li> <li><a href="https://blog.notmyidea.org/artfevre-2020-defi-artistique-en-fevrier.html" rel="bookmark" title="Permalink to Artfevre 2020 - Défi artistique en février">Artfevre 2020 - Défi artistique en&nbsp;février</a></li>
<li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li> <li><a href="https://blog.notmyidea.org/le-piege-du-developpement-personnel.html" rel="bookmark" title="Permalink to Le piège du développement personnel">Le piège du développement&nbsp;personnel</a></li>
<li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li> <li><a href="https://blog.notmyidea.org/packager-du-python-pour-debian.html" rel="bookmark" title="Permalink to Packager du python pour Debian">Packager du python pour&nbsp;Debian</a></li>

View file

@ -28,7 +28,7 @@
<article> <article>
<p><em>Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&nbsp;Mozilla</em></p> <p><em>Cet article est repris depuis le blog « Service de Nuages » de mon équipe à&nbsp;Mozilla</em></p>
<p>Aujourd&#8217;hui, c&#8217;est jour de fête : nous venons de publier Cliquet <strong>2.0</strong> <p>Aujourd&#8217;hui, c&#8217;est jour de fête : nous venons de publier Cliquet <strong>2.0</strong>
<a class="footnote-reference" href="#id5" id="id1">[1]</a> et Kinto <strong>1.0</strong> <a class="footnote-reference" href="#id6" id="id2">[2]</a>.</p> <a class="footnote-reference" href="#footnote-1" id="footnote-reference-1">[1]</a> et Kinto <strong>1.0</strong> <a class="footnote-reference" href="#footnote-2" id="footnote-reference-2">[2]</a>.</p>
<blockquote class="epigraph"> <blockquote class="epigraph">
<p>L&#8217;aboutissement de 3 années de R&amp;D&nbsp;!</p> <p>L&#8217;aboutissement de 3 années de R&amp;D&nbsp;!</p>
<p class="attribution">&mdash;Rémy</p> <p class="attribution">&mdash;Rémy</p>
@ -49,7 +49,7 @@ fonctionnalités que l&#8217;on attendait depuis longtemps, comme la gestion des
s&#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées, s&#8217;empêcher de voir toutes les choses qui doivent toujours être améliorées,
notamment sur la documentation et les&nbsp;performances.</p> notamment sur la documentation et les&nbsp;performances.</p>
<p>On peut déjà entrevoir à quoi l&#8217;écosystème va ressembler, et c&#8217;est prometteur. <p>On peut déjà entrevoir à quoi l&#8217;écosystème va ressembler, et c&#8217;est prometteur.
Il y a déjà un client JavaScript <a class="footnote-reference" href="#id7" id="id3">[3]</a> dont l&#8217;objectif est de synchroniser les Il y a déjà un client JavaScript <a class="footnote-reference" href="#footnote-3" id="footnote-reference-3">[3]</a> dont l&#8217;objectif est de synchroniser les
données locales du navigateur avec une instance de&nbsp;Kinto.</p> données locales du navigateur avec une instance de&nbsp;Kinto.</p>
<p>N&#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez <p>N&#8217;hésitez vraiment pas à nous solliciter pour discuter avec vous si vous avez
des problématiques proches : nous accueillons avec plaisir toutes sortes de des problématiques proches : nous accueillons avec plaisir toutes sortes de
@ -58,34 +58,34 @@ la solution ou de la manière de communiquer avec le monde extérieur. Si vous
souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous souhaitez nous contacter, vous pouvez laisser un commentaire ici ou nous
contacter sur le canal <a class="reference external" href="irc://irc.mozilla.org/#storage">#storage</a> sur le réseau <span class="caps">IRC</span> de&nbsp;Mozilla.</p> contacter sur le canal <a class="reference external" href="irc://irc.mozilla.org/#storage">#storage</a> sur le réseau <span class="caps">IRC</span> de&nbsp;Mozilla.</p>
<p>Et ce n&#8217;est que le début ! Le futur se dessine dans notre feuille de route <p>Et ce n&#8217;est que le début ! Le futur se dessine dans notre feuille de route
<a class="footnote-reference" href="#id8" id="id4">[4]</a>.</p> <a class="footnote-reference" href="#footnote-4" id="footnote-reference-4">[4]</a>.</p>
<table class="docutils footnote" frame="void" id="id5" rules="none"> <table class="docutils footnote" frame="void" id="footnote-1" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id1">[1]</a></td><td><strong>Cliquet</strong> est une boite à outils pour faciliter l&#8217;implémentation de <tr><td class="label"><a class="fn-backref" href="#footnote-reference-1">[1]</a></td><td><strong>Cliquet</strong> est une boite à outils pour faciliter l&#8217;implémentation de
microservices <span class="caps">HTTP</span> tels que les APIs <em><span class="caps">REST</span></em> ayant des besoins de microservices <span class="caps">HTTP</span> tels que les APIs <em><span class="caps">REST</span></em> ayant des besoins de
synchronisation.</td></tr> synchronisation.</td></tr>
</tbody> </tbody>
</table> </table>
<table class="docutils footnote" frame="void" id="id6" rules="none"> <table class="docutils footnote" frame="void" id="footnote-2" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id2">[2]</a></td><td><strong>Kinto</strong> est un service pour stocker, synchroniser et partager des données <tr><td class="label"><a class="fn-backref" href="#footnote-reference-2">[2]</a></td><td><strong>Kinto</strong> est un service pour stocker, synchroniser et partager des données
arbitraires, attachées à un compte Firefox (mais le système d&#8217;authentification arbitraires, attachées à un compte Firefox (mais le système d&#8217;authentification
est <em>pluggable</em>).</td></tr> est <em>pluggable</em>).</td></tr>
</tbody> </tbody>
</table> </table>
<table class="docutils footnote" frame="void" id="id7" rules="none"> <table class="docutils footnote" frame="void" id="footnote-3" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id3">[3]</a></td><td>Cliquetis, la bibliothèque JavaScript pour consommer l&#8217;<span class="caps">API</span> <span class="caps">HTTP</span> de Kinto — <tr><td class="label"><a class="fn-backref" href="#footnote-reference-3">[3]</a></td><td>Cliquetis, la bibliothèque JavaScript pour consommer l&#8217;<span class="caps">API</span> <span class="caps">HTTP</span> de Kinto —
<a class="reference external" href="https://github.com/mozilla-services/cliquetis">https://github.com/mozilla-services/cliquetis</a></td></tr> <a class="reference external" href="https://github.com/mozilla-services/cliquetis">https://github.com/mozilla-services/cliquetis</a></td></tr>
</tbody> </tbody>
</table> </table>
<table class="docutils footnote" frame="void" id="id8" rules="none"> <table class="docutils footnote" frame="void" id="footnote-4" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id4">[4]</a></td><td>La feuille de route de Kinto: <a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap">https://github.com/mozilla-services/kinto/wiki/roadmap</a></td></tr> <tr><td class="label"><a class="fn-backref" href="#footnote-reference-4">[4]</a></td><td>La feuille de route de Kinto: <a class="reference external" href="https://github.com/mozilla-services/kinto/wiki/roadmap">https://github.com/mozilla-services/kinto/wiki/roadmap</a></td></tr>
</tbody> </tbody>
</table> </table>

View file

@ -69,8 +69,8 @@ obtenir le même résultat à partir de la même&nbsp;entrée.</p>
une collection <span class="caps">JSON</span>. Chaque élément contient un identifiant unique généré sur une collection <span class="caps">JSON</span>. Chaque élément contient un identifiant unique généré sur
le&nbsp;client.</p> le&nbsp;client.</p>
<p>Par exemple, un enregistrement peut ressembler à&nbsp;:</p> <p>Par exemple, un enregistrement peut ressembler à&nbsp;:</p>
<div class="highlight"><pre><span></span><span class="p">{</span><span class="s2">&quot;id&quot;</span><span class="o">:</span> <span class="s2">&quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&quot;</span><span class="p">,</span> <div class="highlight"><pre><span></span><span class="p">{</span><span class="s2">&quot;id&quot;</span><span class="o">:</span><span class="w"> </span><span class="s2">&quot;b7dded96-8df0-8af8-449a-8bc47f71b4c4&quot;</span><span class="p">,</span><span class="w"></span>
<span class="s2">&quot;fingerprint&quot;</span><span class="o">:</span> <span class="s2">&quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&quot;</span><span class="p">}</span> <span class="w"> </span><span class="s2">&quot;fingerprint&quot;</span><span class="o">:</span><span class="w"> </span><span class="s2">&quot;11:D5:D2:0A:9A:F8:D9:FC:23:6E:5C:5C:30:EC:AF:68:F5:68:FB:A3&quot;</span><span class="p">}</span><span class="w"></span>
</pre></div> </pre></div>
<p>Le <em>hash</em> de la collection est ensuite calculé, signé puis envoyé au serveur <p>Le <em>hash</em> de la collection est ensuite calculé, signé puis envoyé au serveur
(voir plus bas pour les&nbsp;détails).</p> (voir plus bas pour les&nbsp;détails).</p>

View file

@ -55,7 +55,7 @@ une réponse satisfaisante à ces&nbsp;besoins.</p>
<div class="section" id="le-concept-de-principal"> <div class="section" id="le-concept-de-principal">
<h3>Le concept de « principal&nbsp;»</h3> <h3>Le concept de « principal&nbsp;»</h3>
<p>Un <em>principal</em>, en sécurité informatique, est une entité qui peut être <p>Un <em>principal</em>, en sécurité informatique, est une entité qui peut être
authentifiée par un système informatique. <a class="footnote-reference" href="#id2" id="id1">[1]</a> En Français il s&#8217;agit authentifiée par un système informatique. <a class="footnote-reference" href="#footnote-1" id="footnote-reference-1">[1]</a> En Français il s&#8217;agit
du « commettant », l&#8217;acteur qui commet l&#8217;action (oui, le terme est conceptuel&nbsp;!)</p> du « commettant », l&#8217;acteur qui commet l&#8217;action (oui, le terme est conceptuel&nbsp;!)</p>
<p>Il peut s&#8217;agir aussi bien d&#8217;un individu, d&#8217;un ordinateur, d&#8217;un <p>Il peut s&#8217;agir aussi bien d&#8217;un individu, d&#8217;un ordinateur, d&#8217;un
service ou d&#8217;un groupe regroupant l&#8217;une de ces entités, ce qui service ou d&#8217;un groupe regroupant l&#8217;une de ces entités, ce qui
@ -64,10 +64,10 @@ est plus large que le classique « <em>user id</em>&nbsp;».</p>
<p>Par exemple, un utilisateur est identifié de manière unique lors de la <p>Par exemple, un utilisateur est identifié de manière unique lors de la
connexion par le système d&#8217;authentification dont le rôle est de connexion par le système d&#8217;authentification dont le rôle est de
définir une liste de <em>principals</em> pour l&#8217;utilisateur se&nbsp;connectant.</p> définir une liste de <em>principals</em> pour l&#8217;utilisateur se&nbsp;connectant.</p>
<table class="docutils footnote" frame="void" id="id2" rules="none"> <table class="docutils footnote" frame="void" id="footnote-1" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id1">[1]</a></td><td>Pour en savoir plus sur les <em>principals</em> : <tr><td class="label"><a class="fn-backref" href="#footnote-reference-1">[1]</a></td><td>Pour en savoir plus sur les <em>principals</em> :
<a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29">https://en.wikipedia.org/wiki/Principal_%28computer_security%29</a></td></tr> <a class="reference external" href="https://en.wikipedia.org/wiki/Principal_%28computer_security%29">https://en.wikipedia.org/wiki/Principal_%28computer_security%29</a></td></tr>
</tbody> </tbody>
</table> </table>
@ -76,17 +76,17 @@ définir une liste de <em>principals</em> pour l&#8217;utilisateur se&nbsp;conne
<h3>La différence entre rôle et&nbsp;groupe</h3> <h3>La différence entre rôle et&nbsp;groupe</h3>
<p>De but en blanc, il n&#8217;est pas évident de définir précisément la <p>De but en blanc, il n&#8217;est pas évident de définir précisément la
différence entre ces deux concepts qui permettent d&#8217;associer différence entre ces deux concepts qui permettent d&#8217;associer
des permissions à un groupe de <em>principals</em>. <a class="footnote-reference" href="#id4" id="id3">[2]</a></p> des permissions à un groupe de <em>principals</em>. <a class="footnote-reference" href="#footnote-2" id="footnote-reference-2">[2]</a></p>
<p>La différence est principalement sémantique. Mais on peut y voir une <p>La différence est principalement sémantique. Mais on peut y voir une
différence dans la « direction » de la relation entre les deux&nbsp;concepts.</p> différence dans la « direction » de la relation entre les deux&nbsp;concepts.</p>
<ul class="simple"> <ul class="simple">
<li>Un rôle est une liste de permissions que l&#8217;on associe à un <em>principal</em>.</li> <li>Un rôle est une liste de permissions que l&#8217;on associe à un <em>principal</em>.</li>
<li>Un groupe est une liste de <em>principals</em> que l&#8217;on peut associer à une&nbsp;permission.</li> <li>Un groupe est une liste de <em>principals</em> que l&#8217;on peut associer à une&nbsp;permission.</li>
</ul> </ul>
<table class="docutils footnote" frame="void" id="id4" rules="none"> <table class="docutils footnote" frame="void" id="footnote-2" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id3">[2]</a></td><td>Plus d&#8217;informations : <tr><td class="label"><a class="fn-backref" href="#footnote-reference-2">[2]</a></td><td>Plus d&#8217;informations :
<a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference">http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference</a></td></tr> <a class="reference external" href="http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference">http://stackoverflow.com/questions/7770728/group-vs-role-any-real-difference</a></td></tr>
</tbody> </tbody>
</table> </table>

View file

@ -105,7 +105,7 @@ concept repose sur <a class="reference external" href="https://fr.wikipedia.org/
<a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05">*Remote Storage*</a>, <a class="reference external" href="https://tools.ietf.org/html/draft-dejong-remotestorage-05">*Remote Storage*</a>,
mais pour l&#8217;instant les cas d&#8217;utilisations ne se sont pas encore présentés&nbsp;officiellement.</p> mais pour l&#8217;instant les cas d&#8217;utilisations ne se sont pas encore présentés&nbsp;officiellement.</p>
</div> </div>
<div class="section" id="id2"> <div class="section" id="a-venir-1">
<h3>À&nbsp;venir</h3> <h3>À&nbsp;venir</h3>
<p>Nous serons probablement amenés à introduire la gestion de la concurrence dans <p>Nous serons probablement amenés à introduire la gestion de la concurrence dans
le client <span class="caps">JS</span>, en complément de ce qui a été fait sur le serveur, pour permettre le client <span class="caps">JS</span>, en complément de ce qui a été fait sur le serveur, pour permettre
@ -120,17 +120,17 @@ que <a class="reference external" href="https://github.com/mozilla-services/kint
<h2>Contenus applicatifs de&nbsp;Firefox</h2> <h2>Contenus applicatifs de&nbsp;Firefox</h2>
<p>Aujourd&#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs <p>Aujourd&#8217;hui Firefox a un cycle de release de six semaines. Un des objectifs
consiste à désolidariser certains contenus applicatifs de ces cycles consiste à désolidariser certains contenus applicatifs de ces cycles
relativement longs (ex. <em>règles de securité, dictionnaires, traductions, &#8230;</em>) <a class="footnote-reference" href="#id4" id="id3">[1]</a>.</p> relativement longs (ex. <em>règles de securité, dictionnaires, traductions, &#8230;</em>) <a class="footnote-reference" href="#footnote-1" id="footnote-reference-1">[1]</a>.</p>
<p>Il s&#8217;agit de données <span class="caps">JSON</span> et binaire qui doivent être versionnées et synchronisées par <p>Il s&#8217;agit de données <span class="caps">JSON</span> et binaire qui doivent être versionnées et synchronisées par
les navigateurs (<em>lecture seule</em>).</p> les navigateurs (<em>lecture seule</em>).</p>
<p>Il y a plusieurs outils officiels qui existent pour gérer ça (<em>Balrog</em>, <em>Shavar</em>, &#8230;), <p>Il y a plusieurs outils officiels qui existent pour gérer ça (<em>Balrog</em>, <em>Shavar</em>, &#8230;),
et pour l&#8217;instant, aucun choix n&#8217;a été fait. Mais lors des conversations avec et pour l&#8217;instant, aucun choix n&#8217;a été fait. Mais lors des conversations avec
l&#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour l&#8217;équipe en charge du projet, ce fût vraiment motivant de voir que même pour
ce genre de besoins internes, <em>Kinto</em> est tout aussi pertinent&nbsp;!</p> ce genre de besoins internes, <em>Kinto</em> est tout aussi pertinent&nbsp;!</p>
<table class="docutils footnote" frame="void" id="id4" rules="none"> <table class="docutils footnote" frame="void" id="footnote-1" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id3">[1]</a></td><td>La bonne nouvelle c&#8217;est que toutes les fonctionnalités <em>third-party</em> qui ont <tr><td class="label"><a class="fn-backref" href="#footnote-reference-1">[1]</a></td><td>La bonne nouvelle c&#8217;est que toutes les fonctionnalités <em>third-party</em> qui ont
été intégrées récemment vont redevenir des <em>add-ons</em> \o/.</td></tr> été intégrées récemment vont redevenir des <em>add-ons</em> \o/.</td></tr>
</tbody> </tbody>
</table> </table>
@ -144,7 +144,7 @@ un prototype pour améliorer <em>Awesome bar</em>, qui fusionnerait <span class=
<p>Nous ne pouvons pas en dire beaucoup plus pour l&#8217;instant, mais les fonctionnalités <p>Nous ne pouvons pas en dire beaucoup plus pour l&#8217;instant, mais les fonctionnalités
de collections d&#8217;enregistrements partagées entre utilisateurs de <em>Kinto</em> de collections d&#8217;enregistrements partagées entre utilisateurs de <em>Kinto</em>
correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&nbsp;:)</p> correspondent parfaitement à ce qui est envisagé pour le futur du navigateur&nbsp;:)</p>
<div class="section" id="id5"> <div class="section" id="a-venir-2">
<h3>À&nbsp;venir</h3> <h3>À&nbsp;venir</h3>
<p>Nous serons donc probablement amenés, avant de la fin de l&#8217;année, à introduire des <p>Nous serons donc probablement amenés, avant de la fin de l&#8217;année, à introduire des
fonctionnalités d&#8217;indexation et de recherche <em>full-text</em> (comprendre <em>ElasticSearch</em>). fonctionnalités d&#8217;indexation et de recherche <em>full-text</em> (comprendre <em>ElasticSearch</em>).
@ -166,7 +166,7 @@ ou un équivalent à <em>Alexa.com Top 500</em> pour fournir la complétion d&#8
interroger le moteur de&nbsp;recherche.</p> interroger le moteur de&nbsp;recherche.</p>
<p>L&#8217;exercice pourrait être poussé jusqu&#8217;à la synchronisation d&#8217;états <em>React</em> <p>L&#8217;exercice pourrait être poussé jusqu&#8217;à la synchronisation d&#8217;états <em>React</em>
entre périphériques (par exemple pour les&nbsp;onglets).</p> entre périphériques (par exemple pour les&nbsp;onglets).</p>
<div class="section" id="id7"> <div class="section" id="a-venir-3">
<h3>À&nbsp;venir</h3> <h3>À&nbsp;venir</h3>
<p>Si <em>browser.html</em> doit stocker des données de navigation, il faudra ajouter <p>Si <em>browser.html</em> doit stocker des données de navigation, il faudra ajouter
des fonctionnalités de chiffrement sur le client <span class="caps">JS</span>. Ça tombe bien, c&#8217;est un des fonctionnalités de chiffrement sur le client <span class="caps">JS</span>. Ça tombe bien, c&#8217;est un

View file

@ -104,7 +104,7 @@ d&#8217;écriture sur une collection&nbsp;d&#8217;enregistrements.</li>
<li><strong>La synchronisation</strong> : une série de leviers pour récupérer et renvoyer des <li><strong>La synchronisation</strong> : une série de leviers pour récupérer et renvoyer des
changements sur les données, sans perte ni collision, en utilisant les&nbsp;timestamps.</li> changements sur les données, sans perte ni collision, en utilisant les&nbsp;timestamps.</li>
<li><strong>Les permissions</strong> : les droits d&#8217;un utilisateur sur une collection ou un enregistrement <li><strong>Les permissions</strong> : les droits d&#8217;un utilisateur sur une collection ou un enregistrement
(<em>encore frais et sur le point d&#8217;être documenté</em>) <a class="footnote-reference" href="#id3" id="id1">[1]</a>.</li> (<em>encore frais et sur le point d&#8217;être documenté</em>) <a class="footnote-reference" href="#footnote-1" id="footnote-reference-1">[1]</a>.</li>
<li><strong>Opérations par lot</strong>: une <span class="caps">URL</span> qui permet d&#8217;envoyer une série de requêtes <li><strong>Opérations par lot</strong>: une <span class="caps">URL</span> qui permet d&#8217;envoyer une série de requêtes
décrites en <span class="caps">JSON</span> et d&#8217;obtenir les réponses&nbsp;respectives.</li> décrites en <span class="caps">JSON</span> et d&#8217;obtenir les réponses&nbsp;respectives.</li>
</ul> </ul>
@ -126,17 +126,17 @@ de <em>Firefox Sync</em> pour la gestion de la concurrence et de&nbsp;l&#8217;«
<p>Il est <a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html">documenté en détail</a>.</p> <p>Il est <a class="reference external" href="http://cliquet.readthedocs.org/en/latest/api/index.html">documenté en détail</a>.</p>
<p>Dans un monde idéal, ce protocole serait versionné, et formalisé dans une <span class="caps">RFC</span>. <p>Dans un monde idéal, ce protocole serait versionné, et formalisé dans une <span class="caps">RFC</span>.
En rêve, il existerait même plusieurs implémentations avec des technologies différentes En rêve, il existerait même plusieurs implémentations avec des technologies différentes
(Python, Go, Node, etc.). <a class="footnote-reference" href="#id4" id="id2">[2]</a></p> (Python, Go, Node, etc.). <a class="footnote-reference" href="#footnote-2" id="footnote-reference-2">[2]</a></p>
<table class="docutils footnote" frame="void" id="id3" rules="none"> <table class="docutils footnote" frame="void" id="footnote-1" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id1">[1]</a></td><td>Voir notre <a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html">article dédié sur les permissions</a></td></tr> <tr><td class="label"><a class="fn-backref" href="#footnote-reference-1">[1]</a></td><td>Voir notre <a class="reference external" href="https://blog.notmyidea.org/service-de-nuages-la-gestion-des-permissions-fr.html">article dédié sur les permissions</a></td></tr>
</tbody> </tbody>
</table> </table>
<table class="docutils footnote" frame="void" id="id4" rules="none"> <table class="docutils footnote" frame="void" id="footnote-2" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id2">[2]</a></td><td>Rappel: nous sommes une toute petite équipe !</td></tr> <tr><td class="label"><a class="fn-backref" href="#footnote-reference-2">[2]</a></td><td>Rappel: nous sommes une toute petite équipe !</td></tr>
</tbody> </tbody>
</table> </table>
</div> </div>
@ -144,7 +144,7 @@ En rêve, il existerait même plusieurs implémentations avec des technologies d
<h2>Le&nbsp;toolkit</h2> <h2>Le&nbsp;toolkit</h2>
<div class="section" id="choix-techniques"> <div class="section" id="choix-techniques">
<h3>Choix&nbsp;techniques</h3> <h3>Choix&nbsp;techniques</h3>
<p><em>Cliquet</em> implémente le protocole en Python (<em>2.7, 3.4+, pypy</em>), avec <a class="reference external" href="http://trypyramid.com/">Pyramid</a> <a class="footnote-reference" href="#id6" id="id5">[3]</a>.</p> <p><em>Cliquet</em> implémente le protocole en Python (<em>2.7, 3.4+, pypy</em>), avec <a class="reference external" href="http://trypyramid.com/">Pyramid</a> <a class="footnote-reference" href="#footnote-3" id="footnote-reference-3">[3]</a>.</p>
<p><strong>Pyramid</strong> est un framework Web qui va prendre en charge tout la partie <span class="caps">HTTP</span>, <p><strong>Pyramid</strong> est un framework Web qui va prendre en charge tout la partie <span class="caps">HTTP</span>,
et qui s&#8217;avère pertinent aussi bien pour des petits projets que des plus&nbsp;ambitieux.</p> et qui s&#8217;avère pertinent aussi bien pour des petits projets que des plus&nbsp;ambitieux.</p>
<p><strong>Cornice</strong> est une extension de <em>Pyramid</em>, écrite en partie par Alexis et Tarek, <p><strong>Cornice</strong> est une extension de <em>Pyramid</em>, écrite en partie par Alexis et Tarek,
@ -157,10 +157,10 @@ rigoureux, gérer les entêtes <span class="caps">CORS</span>, fournir la valida
<p><strong>Cliquet</strong> utilise les deux précédents pour implémenter le protocole et fournir <p><strong>Cliquet</strong> utilise les deux précédents pour implémenter le protocole et fournir
des abstractions, mais on a toujours <em>Pyramid</em> et <em>Cornice</em> sous la main pour des abstractions, mais on a toujours <em>Pyramid</em> et <em>Cornice</em> sous la main pour
aller au delà de ce qui est proposé&nbsp;!</p> aller au delà de ce qui est proposé&nbsp;!</p>
<table class="docutils footnote" frame="void" id="id6" rules="none"> <table class="docutils footnote" frame="void" id="footnote-3" rules="none">
<colgroup><col class="label" /><col /></colgroup> <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top"> <tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id5">[3]</a></td><td>Au tout début nous avons commencé une implémentation avec <em>Python-Eve</em> <tr><td class="label"><a class="fn-backref" href="#footnote-reference-3">[3]</a></td><td>Au tout début nous avons commencé une implémentation avec <em>Python-Eve</em>
(Flask), mais n&#8217;étions pas satisfaits de l&#8217;approche pour la configuration (Flask), mais n&#8217;étions pas satisfaits de l&#8217;approche pour la configuration
de l&#8217;<span class="caps">API</span>. En particulier du côté magique.</td></tr> de l&#8217;<span class="caps">API</span>. En particulier du côté magique.</td></tr>
</tbody> </tbody>
@ -252,18 +252,18 @@ avec <em>Colander</em>, et ensuite déclarer une&nbsp;resource:</p>
<p>Désormais, la resource <span class="caps">CRUD</span> est disponible sur <tt class="docutils literal">/v1/bookmarks</tt>, avec toutes <p>Désormais, la resource <span class="caps">CRUD</span> est disponible sur <tt class="docutils literal">/v1/bookmarks</tt>, avec toutes
les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc. les fonctionnalités de synchronisation, filtrage, tri, pagination, timestamp, etc.
De base les enregistrements sont privés, par&nbsp;utilisateur.</p> De base les enregistrements sont privés, par&nbsp;utilisateur.</p>
<div class="highlight"><pre><span></span><span class="err">$</span> <span class="err">h</span><span class="kc">tt</span><span class="err">p</span> <span class="err">GET</span> <span class="s2">&quot;http://localhost:8000/v1/bookmarks&quot;</span> <div class="highlight"><pre><span></span><span class="err">$</span><span class="w"> </span><span class="err">h</span><span class="kc">tt</span><span class="err">p</span><span class="w"> </span><span class="err">GET</span><span class="w"> </span><span class="s2">&quot;http://localhost:8000/v1/bookmarks&quot;</span><span class="w"></span>
<span class="err">HTTP/</span><span class="mf">1.1</span> <span class="mi">200</span> <span class="err">OK</span> <span class="err">HTTP/</span><span class="mf">1.1</span><span class="w"> </span><span class="mi">200</span><span class="w"> </span><span class="err">OK</span><span class="w"></span>
<span class="err">...</span> <span class="err">...</span><span class="w"></span>
<span class="p">{</span> <span class="p">{</span><span class="w"></span>
<span class="nt">&quot;data&quot;</span><span class="p">:</span> <span class="p">[</span> <span class="w"> </span><span class="nt">&quot;data&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
<span class="p">{</span> <span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="nt">&quot;url&quot;</span><span class="p">:</span> <span class="s2">&quot;http://cliquet.readthedocs.org&quot;</span><span class="p">,</span> <span class="w"> </span><span class="nt">&quot;url&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;http://cliquet.readthedocs.org&quot;</span><span class="p">,</span><span class="w"></span>
<span class="nt">&quot;id&quot;</span><span class="p">:</span> <span class="s2">&quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&quot;</span><span class="p">,</span> <span class="w"> </span><span class="nt">&quot;id&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;cc103eb5-0c80-40ec-b6f5-dad12e7d975e&quot;</span><span class="p">,</span><span class="w"></span>
<span class="nt">&quot;last_modified&quot;</span><span class="p">:</span> <span class="mi">1437034418940</span><span class="p">,</span> <span class="w"> </span><span class="nt">&quot;last_modified&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">1437034418940</span><span class="p">,</span><span class="w"></span>
<span class="p">}</span> <span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">]</span> <span class="w"> </span><span class="p">]</span><span class="w"></span>
<span class="p">}</span> <span class="p">}</span><span class="w"></span>
</pre></div> </pre></div>
</div> </div>
<div class="section" id="etape-3"> <div class="section" id="etape-3">

View file

@ -138,13 +138,13 @@ avantages (lisibilité, unicité, cohérence avec les&nbsp;URLs)</p>
<div class="section" id="les-tables"> <div class="section" id="les-tables">
<h3>Les&nbsp;tables</h3> <h3>Les&nbsp;tables</h3>
<p>Pour le stockage des principals et des&nbsp;permissions:</p> <p>Pour le stockage des principals et des&nbsp;permissions:</p>
<div class="highlight"><pre><span></span><span class="k">CREATE</span> <span class="k">TABLE</span> <span class="k">user</span><span class="p">(</span><span class="n">id</span> <span class="nb">TEXT</span><span class="p">,</span> <span class="n">principals</span> <span class="nb">TEXT</span><span class="p">[]);</span> <div class="highlight"><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">TABLE</span><span class="w"> </span><span class="k">user</span><span class="p">(</span><span class="n">id</span><span class="w"> </span><span class="nb">TEXT</span><span class="p">,</span><span class="w"> </span><span class="n">principals</span><span class="w"> </span><span class="nb">TEXT</span><span class="p">[]);</span><span class="w"></span>
<span class="k">CREATE</span> <span class="k">TABLE</span> <span class="n">perms</span><span class="p">(</span><span class="n">ace</span> <span class="nb">TEXT</span><span class="p">,</span> <span class="n">principals</span> <span class="nb">TEXT</span><span class="p">[]);</span> <span class="k">CREATE</span><span class="w"> </span><span class="k">TABLE</span><span class="w"> </span><span class="n">perms</span><span class="p">(</span><span class="n">ace</span><span class="w"> </span><span class="nb">TEXT</span><span class="p">,</span><span class="w"> </span><span class="n">principals</span><span class="w"> </span><span class="nb">TEXT</span><span class="p">[]);</span><span class="w"></span>
</pre></div> </pre></div>
<p>La table <em>perms</em> va associer des <em>principals</em> à chaque <em><span class="caps">ACE</span></em>&nbsp;(e.g.&#8220;/buckets/blog:write&#8220;).</p> <p>La table <em>perms</em> va associer des <em>principals</em> à chaque <em><span class="caps">ACE</span></em>&nbsp;(e.g.&#8220;/buckets/blog:write&#8220;).</p>
<p>Pour le stockage des&nbsp;données:</p> <p>Pour le stockage des&nbsp;données:</p>
<div class="highlight"><pre><span></span><span class="k">CREATE</span> <span class="k">TABLE</span> <span class="k">object</span><span class="p">(</span><span class="n">id</span> <span class="nb">TEXT</span><span class="p">,</span> <span class="k">type</span> <span class="nb">TEXT</span><span class="p">,</span> <span class="n">parent_id</span> <span class="nb">TEXT</span><span class="p">,</span> <span class="k">data</span> <span class="n">JSONB</span><span class="p">,</span> <div class="highlight"><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">TABLE</span><span class="w"> </span><span class="k">object</span><span class="p">(</span><span class="n">id</span><span class="w"> </span><span class="nb">TEXT</span><span class="p">,</span><span class="w"> </span><span class="k">type</span><span class="w"> </span><span class="nb">TEXT</span><span class="p">,</span><span class="w"> </span><span class="n">parent_id</span><span class="w"> </span><span class="nb">TEXT</span><span class="p">,</span><span class="w"> </span><span class="k">data</span><span class="w"> </span><span class="n">JSONB</span><span class="p">,</span><span class="w"></span>
<span class="n">write_principals</span> <span class="nb">TEXT</span><span class="p">[],</span> <span class="n">read_principals</span> <span class="nb">TEXT</span><span class="p">[]);</span> <span class="w"> </span><span class="n">write_principals</span><span class="w"> </span><span class="nb">TEXT</span><span class="p">[],</span><span class="w"> </span><span class="n">read_principals</span><span class="w"> </span><span class="nb">TEXT</span><span class="p">[]);</span><span class="w"></span>
</pre></div> </pre></div>
<p>La colonne <em>parent_id</em> permet de savoir à qui appartient l&#8217;objet <p>La colonne <em>parent_id</em> permet de savoir à qui appartient l&#8217;objet
(e.g. groupe d&#8217;un <em>bucket</em>, collection d&#8217;un <em>bucket</em>, <em>record</em> d&#8217;une (e.g. groupe d&#8217;un <em>bucket</em>, collection d&#8217;un <em>bucket</em>, <em>record</em> d&#8217;une
@ -152,53 +152,53 @@ collection,&nbsp;&#8230;).</p>
</div> </div>
<div class="section" id="exemple-d-utilisateur"> <div class="section" id="exemple-d-utilisateur">
<h3>Exemple&nbsp;d&#8217;utilisateur</h3> <h3>Exemple&nbsp;d&#8217;utilisateur</h3>
<div class="highlight"><pre><span></span><span class="k">INSERT</span> <span class="k">INTO</span> <span class="k">user</span> <span class="p">(</span><span class="n">id</span><span class="p">,</span> <span class="n">principals</span><span class="p">)</span> <div class="highlight"><pre><span></span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="k">user</span><span class="w"> </span><span class="p">(</span><span class="n">id</span><span class="p">,</span><span class="w"> </span><span class="n">principals</span><span class="p">)</span><span class="w"></span>
<span class="k">VALUES</span> <span class="p">(</span><span class="s1">&#39;fxa:alexis&#39;</span><span class="p">,</span> <span class="s1">&#39;{}&#39;</span><span class="p">);</span> <span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="s1">&#39;fxa:alexis&#39;</span><span class="p">,</span><span class="w"> </span><span class="s1">&#39;{}&#39;</span><span class="p">);</span><span class="w"></span>
<span class="k">INSERT</span> <span class="k">INTO</span> <span class="k">user</span> <span class="p">(</span><span class="n">id</span><span class="p">,</span> <span class="n">principals</span><span class="p">)</span> <span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="k">user</span><span class="w"> </span><span class="p">(</span><span class="n">id</span><span class="p">,</span><span class="w"> </span><span class="n">principals</span><span class="p">)</span><span class="w"></span>
<span class="k">VALUES</span> <span class="p">(</span><span class="s1">&#39;fxa:natim&#39;</span><span class="p">,</span> <span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="s1">&#39;fxa:natim&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{&quot;/buckets/blog/groups/moderators&quot;}&#39;</span><span class="p">);</span> <span class="w"> </span><span class="s1">&#39;{&quot;/buckets/blog/groups/moderators&quot;}&#39;</span><span class="p">);</span><span class="w"></span>
</pre></div> </pre></div>
</div> </div>
<div class="section" id="exemple-d-objets"> <div class="section" id="exemple-d-objets">
<h3>Exemple&nbsp;d&#8217;objets</h3> <h3>Exemple&nbsp;d&#8217;objets</h3>
<div class="section" id="bucket"> <div class="section" id="bucket">
<h4>Bucket</h4> <h4>Bucket</h4>
<div class="highlight"><pre><span></span><span class="k">INSERT</span> <span class="k">INTO</span> <span class="k">object</span> <span class="p">(</span><span class="n">id</span><span class="p">,</span> <span class="k">type</span><span class="p">,</span> <span class="n">parent_id</span><span class="p">,</span> <span class="k">data</span><span class="p">,</span> <div class="highlight"><pre><span></span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="k">object</span><span class="w"> </span><span class="p">(</span><span class="n">id</span><span class="p">,</span><span class="w"> </span><span class="k">type</span><span class="p">,</span><span class="w"> </span><span class="n">parent_id</span><span class="p">,</span><span class="w"> </span><span class="k">data</span><span class="p">,</span><span class="w"></span>
<span class="n">read_principals</span><span class="p">,</span> <span class="n">write_principals</span><span class="p">)</span> <span class="w"> </span><span class="n">read_principals</span><span class="p">,</span><span class="w"> </span><span class="n">write_principals</span><span class="p">)</span><span class="w"></span>
<span class="k">VALUES</span> <span class="p">(</span> <span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;bucket&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;bucket&#39;</span><span class="p">,</span><span class="w"></span>
<span class="k">NULL</span><span class="p">,</span> <span class="w"> </span><span class="k">NULL</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{&quot;name&quot;: &quot;blog&quot;}&#39;</span><span class="p">::</span><span class="n">JSONB</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;{&quot;name&quot;: &quot;blog&quot;}&#39;</span><span class="p">::</span><span class="n">JSONB</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{}&#39;</span><span class="p">,</span> <span class="s1">&#39;{&quot;fxa:alexis&quot;}&#39;</span><span class="p">);</span> <span class="w"> </span><span class="s1">&#39;{}&#39;</span><span class="p">,</span><span class="w"> </span><span class="s1">&#39;{&quot;fxa:alexis&quot;}&#39;</span><span class="p">);</span><span class="w"></span>
</pre></div> </pre></div>
</div> </div>
<div class="section" id="group"> <div class="section" id="group">
<h4>Group</h4> <h4>Group</h4>
<div class="highlight"><pre><span></span><span class="k">INSERT</span> <span class="k">INTO</span> <span class="k">object</span> <span class="p">(</span><span class="n">id</span><span class="p">,</span> <span class="k">type</span><span class="p">,</span> <span class="n">parent_id</span><span class="p">,</span> <span class="k">data</span><span class="p">,</span> <div class="highlight"><pre><span></span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="k">object</span><span class="w"> </span><span class="p">(</span><span class="n">id</span><span class="p">,</span><span class="w"> </span><span class="k">type</span><span class="p">,</span><span class="w"> </span><span class="n">parent_id</span><span class="p">,</span><span class="w"> </span><span class="k">data</span><span class="p">,</span><span class="w"></span>
<span class="n">read_principals</span><span class="p">,</span> <span class="n">write_principals</span><span class="p">)</span> <span class="w"> </span><span class="n">read_principals</span><span class="p">,</span><span class="w"> </span><span class="n">write_principals</span><span class="p">)</span><span class="w"></span>
<span class="k">VALUES</span> <span class="p">(</span> <span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog/groups/moderators&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog/groups/moderators&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;group&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;group&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{&quot;name&quot;: &quot;moderators&quot;, &quot;members&quot;: [&#39;</span><span class="n">fxa</span><span class="p">:</span><span class="n">natim</span><span class="s1">&#39;]}&#39;</span><span class="p">::</span><span class="n">JSONB</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;{&quot;name&quot;: &quot;moderators&quot;, &quot;members&quot;: [&#39;</span><span class="n">fxa</span><span class="p">:</span><span class="n">natim</span><span class="s1">&#39;]}&#39;</span><span class="p">::</span><span class="n">JSONB</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{}&#39;</span><span class="p">,</span> <span class="s1">&#39;{}&#39;</span><span class="p">);</span> <span class="w"> </span><span class="s1">&#39;{}&#39;</span><span class="p">,</span><span class="w"> </span><span class="s1">&#39;{}&#39;</span><span class="p">);</span><span class="w"></span>
</pre></div> </pre></div>
<p>Ce groupe peut être gére par <tt class="docutils literal">fxa:alexis</tt> puisqu&#8217;il a la permission <p>Ce groupe peut être gére par <tt class="docutils literal">fxa:alexis</tt> puisqu&#8217;il a la permission
<tt class="docutils literal">write</tt> dans le <em>bucket</em>&nbsp;parent.</p> <tt class="docutils literal">write</tt> dans le <em>bucket</em>&nbsp;parent.</p>
</div> </div>
<div class="section" id="collection"> <div class="section" id="collection">
<h4>Collection</h4> <h4>Collection</h4>
<div class="highlight"><pre><span></span><span class="k">INSERT</span> <span class="k">INTO</span> <span class="k">object</span> <span class="p">(</span><span class="n">id</span><span class="p">,</span> <span class="k">type</span><span class="p">,</span> <span class="n">parent_id</span><span class="p">,</span> <span class="k">data</span><span class="p">,</span> <div class="highlight"><pre><span></span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="k">object</span><span class="w"> </span><span class="p">(</span><span class="n">id</span><span class="p">,</span><span class="w"> </span><span class="k">type</span><span class="p">,</span><span class="w"> </span><span class="n">parent_id</span><span class="p">,</span><span class="w"> </span><span class="k">data</span><span class="p">,</span><span class="w"></span>
<span class="n">read_principals</span><span class="p">,</span> <span class="n">write_principals</span><span class="p">)</span> <span class="w"> </span><span class="n">read_principals</span><span class="p">,</span><span class="w"> </span><span class="n">write_principals</span><span class="p">)</span><span class="w"></span>
<span class="k">VALUES</span> <span class="p">(</span> <span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog/collections/articles&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog/collections/articles&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;collection&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;collection&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{&quot;name&quot;: &quot;article&quot;}&#39;</span><span class="p">::</span><span class="n">JSONB</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;{&quot;name&quot;: &quot;article&quot;}&#39;</span><span class="p">::</span><span class="n">JSONB</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{&quot;system.Everyone&quot;}&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;{&quot;system.Everyone&quot;}&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{&quot;/buckets/blog/groups/moderators&quot;}&#39;</span><span class="p">);</span> <span class="w"> </span><span class="s1">&#39;{&quot;/buckets/blog/groups/moderators&quot;}&#39;</span><span class="p">);</span><span class="w"></span>
</pre></div> </pre></div>
<p>Cette collection d&#8217;articles peut être lue par tout le monde, <p>Cette collection d&#8217;articles peut être lue par tout le monde,
et gérée par les membres du groupe <tt class="docutils literal">moderators</tt>, ainsi que et gérée par les membres du groupe <tt class="docutils literal">moderators</tt>, ainsi que
@ -206,56 +206,56 @@ et gérée par les membres du groupe <tt class="docutils literal">moderators</tt
</div> </div>
<div class="section" id="records"> <div class="section" id="records">
<h4>Records</h4> <h4>Records</h4>
<div class="highlight"><pre><span></span><span class="k">INSERT</span> <span class="k">INTO</span> <span class="k">object</span> <span class="p">(</span><span class="n">id</span><span class="p">,</span> <span class="k">type</span><span class="p">,</span> <span class="n">parent_id</span><span class="p">,</span> <span class="k">data</span><span class="p">,</span> <div class="highlight"><pre><span></span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="k">object</span><span class="w"> </span><span class="p">(</span><span class="n">id</span><span class="p">,</span><span class="w"> </span><span class="k">type</span><span class="p">,</span><span class="w"> </span><span class="n">parent_id</span><span class="p">,</span><span class="w"> </span><span class="k">data</span><span class="p">,</span><span class="w"></span>
<span class="n">read_principals</span><span class="p">,</span> <span class="n">write_principals</span><span class="p">)</span> <span class="w"> </span><span class="n">read_principals</span><span class="p">,</span><span class="w"> </span><span class="n">write_principals</span><span class="p">)</span><span class="w"></span>
<span class="k">VALUES</span> <span class="p">(</span> <span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog/collections/articles/records/02f3f76f-7059-4ae4-888f-2ac9824e9200&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;record&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;record&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog/collections/articles&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog/collections/articles&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{&quot;name&quot;: &quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&quot;,</span> <span class="w"> </span><span class="s1">&#39;{&quot;name&quot;: &quot;02f3f76f-7059-4ae4-888f-2ac9824e9200&quot;,</span>
<span class="s1"> &quot;title&quot;: &quot;Stocker les permissions&quot;, ...}&#39;</span><span class="p">::</span><span class="n">JSONB</span><span class="p">,</span> <span class="s1"> &quot;title&quot;: &quot;Stocker les permissions&quot;, ...}&#39;</span><span class="p">::</span><span class="n">JSONB</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;{}&#39;</span><span class="p">,</span> <span class="s1">&#39;{}&#39;</span><span class="p">);</span> <span class="w"> </span><span class="s1">&#39;{}&#39;</span><span class="p">,</span><span class="w"> </span><span class="s1">&#39;{}&#39;</span><span class="p">);</span><span class="w"></span>
</pre></div> </pre></div>
</div> </div>
</div> </div>
<div class="section" id="interroger-les-permissions"> <div class="section" id="interroger-les-permissions">
<h3>Interroger les&nbsp;permissions</h3> <h3>Interroger les&nbsp;permissions</h3>
<div class="section" id="id1"> <div class="section" id="obtenir-la-liste-des-principals-d-un-ace-1">
<h4>Obtenir la liste des &#8220;principals&#8221; d&#8217;un <span class="caps">ACE</span></h4> <h4>Obtenir la liste des &#8220;principals&#8221; d&#8217;un <span class="caps">ACE</span></h4>
<p>Comme vu plus haut, pour vérifier une permission, on fait l&#8217;union des <p>Comme vu plus haut, pour vérifier une permission, on fait l&#8217;union des
<em>principals</em> requis par les objets hérités, et on teste leur <em>principals</em> requis par les objets hérités, et on teste leur
intersection avec ceux de&nbsp;l&#8217;utilisateur:</p> intersection avec ceux de&nbsp;l&#8217;utilisateur:</p>
<div class="highlight"><pre><span></span><span class="k">WITH</span> <span class="n">required_principals</span> <span class="k">AS</span> <span class="p">(</span> <div class="highlight"><pre><span></span><span class="k">WITH</span><span class="w"> </span><span class="n">required_principals</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="p">(</span><span class="w"></span>
<span class="k">SELECT</span> <span class="k">unnest</span><span class="p">(</span><span class="n">principals</span><span class="p">)</span> <span class="k">AS</span> <span class="n">p</span> <span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="k">unnest</span><span class="p">(</span><span class="n">principals</span><span class="p">)</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="n">p</span><span class="w"></span>
<span class="k">FROM</span> <span class="n">perms</span> <span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">perms</span><span class="w"></span>
<span class="k">WHERE</span> <span class="n">ace</span> <span class="k">IN</span> <span class="p">(</span> <span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">ace</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="p">(</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog:write&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog:write&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog:read&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog:read&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog/collections/article:write&#39;</span><span class="p">,</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog/collections/article:write&#39;</span><span class="p">,</span><span class="w"></span>
<span class="s1">&#39;/buckets/blog/collections/article:read&#39;</span><span class="p">)</span> <span class="w"> </span><span class="s1">&#39;/buckets/blog/collections/article:read&#39;</span><span class="p">)</span><span class="w"></span>
<span class="p">),</span> <span class="w"> </span><span class="p">),</span><span class="w"></span>
<span class="n">user_principals</span> <span class="k">AS</span> <span class="p">(</span> <span class="w"> </span><span class="n">user_principals</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="p">(</span><span class="w"></span>
<span class="k">SELECT</span> <span class="k">unnest</span><span class="p">(</span><span class="n">principals</span><span class="p">)</span> <span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="k">unnest</span><span class="p">(</span><span class="n">principals</span><span class="p">)</span><span class="w"></span>
<span class="k">FROM</span> <span class="k">user</span> <span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="k">user</span><span class="w"></span>
<span class="k">WHERE</span> <span class="n">id</span> <span class="o">=</span> <span class="s1">&#39;fxa:natim&#39;</span> <span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">&#39;fxa:natim&#39;</span><span class="w"></span>
<span class="p">)</span> <span class="w"> </span><span class="p">)</span><span class="w"></span>
<span class="k">SELECT</span> <span class="k">COUNT</span><span class="p">(</span><span class="o">*</span><span class="p">)</span> <span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="k">COUNT</span><span class="p">(</span><span class="o">*</span><span class="p">)</span><span class="w"></span>
<span class="k">FROM</span> <span class="n">user_principals</span> <span class="n">a</span> <span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">user_principals</span><span class="w"> </span><span class="n">a</span><span class="w"></span>
<span class="k">INNER</span> <span class="k">JOIN</span> <span class="n">required_principals</span> <span class="n">b</span> <span class="w"> </span><span class="k">INNER</span><span class="w"> </span><span class="k">JOIN</span><span class="w"> </span><span class="n">required_principals</span><span class="w"> </span><span class="n">b</span><span class="w"></span>
<span class="k">ON</span> <span class="n">a</span><span class="p">.</span><span class="n">p</span> <span class="o">=</span> <span class="n">b</span><span class="p">.</span><span class="n">p</span><span class="p">;</span> <span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="n">a</span><span class="p">.</span><span class="n">p</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">b</span><span class="p">.</span><span class="n">p</span><span class="p">;</span><span class="w"></span>
</pre></div> </pre></div>
</div> </div>
<div class="section" id="filtrer-les-objets-en-fonction-des-permissions"> <div class="section" id="filtrer-les-objets-en-fonction-des-permissions">
<h4>Filtrer les objets en fonction des&nbsp;permissions</h4> <h4>Filtrer les objets en fonction des&nbsp;permissions</h4>
<p>Pour filtrer les objets, on fait une simple intersection de liste <p>Pour filtrer les objets, on fait une simple intersection de liste
(<em>merci PostgreSQL</em>):</p> (<em>merci PostgreSQL</em>):</p>
<div class="highlight"><pre><span></span><span class="k">SELECT</span> <span class="k">data</span> <div class="highlight"><pre><span></span><span class="k">SELECT</span><span class="w"> </span><span class="k">data</span><span class="w"></span>
<span class="k">FROM</span> <span class="k">object</span> <span class="n">o</span><span class="p">,</span> <span class="k">user</span> <span class="n">u</span> <span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="k">object</span><span class="w"> </span><span class="n">o</span><span class="p">,</span><span class="w"> </span><span class="k">user</span><span class="w"> </span><span class="n">u</span><span class="w"></span>
<span class="k">WHERE</span> <span class="n">o</span><span class="p">.</span><span class="k">type</span> <span class="o">=</span> <span class="s1">&#39;record&#39;</span> <span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">o</span><span class="p">.</span><span class="k">type</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">&#39;record&#39;</span><span class="w"></span>
<span class="k">AND</span> <span class="n">o</span><span class="p">.</span><span class="n">parent_id</span> <span class="o">=</span> <span class="s1">&#39;/buckets/blog/collections/article&#39;</span> <span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">o</span><span class="p">.</span><span class="n">parent_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">&#39;/buckets/blog/collections/article&#39;</span><span class="w"></span>
<span class="k">AND</span> <span class="p">(</span><span class="n">o</span><span class="p">.</span><span class="n">read_principals</span> <span class="o">&amp;&amp;</span> <span class="n">u</span><span class="p">.</span><span class="n">principals</span> <span class="k">OR</span> <span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="p">(</span><span class="n">o</span><span class="p">.</span><span class="n">read_principals</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="n">u</span><span class="p">.</span><span class="n">principals</span><span class="w"> </span><span class="k">OR</span><span class="w"></span>
<span class="n">o</span><span class="p">.</span><span class="n">write_principals</span> <span class="o">&amp;&amp;</span> <span class="n">u</span><span class="p">.</span><span class="n">principals</span><span class="p">)</span> <span class="w"> </span><span class="n">o</span><span class="p">.</span><span class="n">write_principals</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="n">u</span><span class="p">.</span><span class="n">principals</span><span class="p">)</span><span class="w"></span>
<span class="k">AND</span> <span class="n">u</span><span class="p">.</span><span class="n">id</span> <span class="o">=</span> <span class="s1">&#39;fxa:natim&#39;</span><span class="p">;</span> <span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">u</span><span class="p">.</span><span class="n">id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">&#39;fxa:natim&#39;</span><span class="p">;</span><span class="w"></span>
</pre></div> </pre></div>
<p>Les listes s&#8217;indexent bien, notamment grâce aux <a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html">index <span class="caps">GIN</span></a>.</p> <p>Les listes s&#8217;indexent bien, notamment grâce aux <a class="reference external" href="http://www.postgresql.org/docs/current/static/indexes-types.html">index <span class="caps">GIN</span></a>.</p>
</div> </div>

View file

@ -67,8 +67,8 @@ ailleurs, pour finalement déployer la chose chez
<p>Après quelques péripéties, j&#8217;ai réussi à faire tourner le tout, ça à été <p>Après quelques péripéties, j&#8217;ai réussi à faire tourner le tout, ça à été
un peu la bataille au départ pour installer virtualenv (j&#8217;ai du faire un peu la bataille au départ pour installer virtualenv (j&#8217;ai du faire
des changements dans mon <span class="caps">PATH</span> pour que ça puisse marcher), voici mon&nbsp;`.bash_profile`:</p> des changements dans mon <span class="caps">PATH</span> pour que ça puisse marcher), voici mon&nbsp;`.bash_profile`:</p>
<div class="highlight"><pre><span></span><code><span class="k">export</span> <span class="n">PYTHONPATH</span><span class="o">=~/</span><span class="n">modules</span><span class="o">/</span> <div class="highlight"><pre><span></span><code><span class="k">export</span><span class="w"> </span><span class="n">PYTHONPATH</span><span class="o">=~/</span><span class="n">modules</span><span class="o">/</span><span class="w"></span>
<span class="k">export</span> <span class="n">PATH</span><span class="o">=$</span><span class="n">HOME</span><span class="o">/</span><span class="n">modules</span><span class="o">/</span><span class="n">bin</span><span class="p">:</span><span class="o">$</span><span class="n">HOME</span><span class="o">/</span><span class="n">modules</span><span class="o">/</span><span class="p">:</span><span class="o">$</span><span class="n">PATH</span> <span class="k">export</span><span class="w"> </span><span class="n">PATH</span><span class="o">=$</span><span class="n">HOME</span><span class="o">/</span><span class="n">modules</span><span class="o">/</span><span class="n">bin</span><span class="p">:</span><span class="o">$</span><span class="n">HOME</span><span class="o">/</span><span class="n">modules</span><span class="o">/</span><span class="p">:</span><span class="o">$</span><span class="n">PATH</span><span class="w"></span>
</code></pre></div> </code></pre></div>
<p>Et après y&#8217;a plus qu&#8217;à installer avec&nbsp;`easy_install`:</p> <p>Et après y&#8217;a plus qu&#8217;à installer avec&nbsp;`easy_install`:</p>

View file

@ -62,16 +62,16 @@ $ ant
</code></pre></div> </code></pre></div>
<p>Here is a simple example of how to use boilerpipe in Java, from their&nbsp;sources</p> <p>Here is a simple example of how to use boilerpipe in Java, from their&nbsp;sources</p>
<div class="highlight"><pre><span></span><code><span class="kn">package</span> <span class="nn">de.l3s.boilerpipe.demo</span><span class="p">;</span> <div class="highlight"><pre><span></span><code><span class="kn">package</span><span class="w"> </span><span class="nn">de.l3s.boilerpipe.demo</span><span class="p">;</span><span class="w"></span>
<span class="kn">import</span> <span class="nn">java.net.URL</span><span class="p">;</span> <span class="kn">import</span><span class="w"> </span><span class="nn">java.net.URL</span><span class="p">;</span><span class="w"></span>
<span class="kn">import</span> <span class="nn">de.l3s.boilerpipe.extractors.ArticleExtractor</span><span class="p">;</span> <span class="kn">import</span><span class="w"> </span><span class="nn">de.l3s.boilerpipe.extractors.ArticleExtractor</span><span class="p">;</span><span class="w"></span>
<span class="kd">public</span> <span class="kd">class</span> <span class="nc">Oneliner</span> <span class="p">{</span> <span class="kd">public</span><span class="w"> </span><span class="kd">class</span> <span class="nc">Oneliner</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="kd">public</span> <span class="kd">static</span> <span class="kt">void</span> <span class="nf">main</span><span class="p">(</span><span class="kd">final</span> <span class="n">String</span><span class="o">[]</span> <span class="n">args</span><span class="p">)</span> <span class="kd">throws</span> <span class="n">Exception</span> <span class="p">{</span> <span class="w"> </span><span class="kd">public</span><span class="w"> </span><span class="kd">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="kd">final</span><span class="w"> </span><span class="n">String</span><span class="o">[]</span><span class="w"> </span><span class="n">args</span><span class="p">)</span><span class="w"> </span><span class="kd">throws</span><span class="w"> </span><span class="n">Exception</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="kd">final</span> <span class="n">URL</span> <span class="n">url</span> <span class="o">=</span> <span class="k">new</span> <span class="n">URL</span><span class="p">(</span><span class="s">&quot;http://notmyidea.org&quot;</span><span class="p">);</span> <span class="w"> </span><span class="kd">final</span><span class="w"> </span><span class="n">URL</span><span class="w"> </span><span class="n">url</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">URL</span><span class="p">(</span><span class="s">&quot;http://notmyidea.org&quot;</span><span class="p">);</span><span class="w"></span>
<span class="n">System</span><span class="p">.</span><span class="na">out</span><span class="p">.</span><span class="na">println</span><span class="p">(</span><span class="n">ArticleExtractor</span><span class="p">.</span><span class="na">INSTANCE</span><span class="p">.</span><span class="na">getText</span><span class="p">(</span><span class="n">url</span><span class="p">));</span> <span class="w"> </span><span class="n">System</span><span class="p">.</span><span class="na">out</span><span class="p">.</span><span class="na">println</span><span class="p">(</span><span class="n">ArticleExtractor</span><span class="p">.</span><span class="na">INSTANCE</span><span class="p">.</span><span class="na">getText</span><span class="p">(</span><span class="n">url</span><span class="p">));</span><span class="w"></span>
<span class="p">}</span> <span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span> <span class="p">}</span><span class="w"></span>
</code></pre></div> </code></pre></div>
<p>To run&nbsp;it:</p> <p>To run&nbsp;it:</p>

View file

@ -160,33 +160,33 @@ on the server (so you don&#8217;t need to store&nbsp;anything).</p>
finally came up factorizing everything in a library for express, named finally came up factorizing everything in a library for express, named
<a href="https://github.com/mozilla-services/express-hawkauth">express-hawkauth</a>.</p> <a href="https://github.com/mozilla-services/express-hawkauth">express-hawkauth</a>.</p>
<p>In order to plug it in your application, you&#8217;ll need to use it as a&nbsp;middleware:</p> <p>In order to plug it in your application, you&#8217;ll need to use it as a&nbsp;middleware:</p>
<div class="highlight"><pre><span></span><code><span class="n">javascript</span> <div class="highlight"><pre><span></span><code><span class="n">javascript</span><span class="w"></span>
<span class="k">var</span> <span class="n">express</span> <span class="o">=</span> <span class="n">require</span><span class="p">(</span><span class="s2">&quot;express&quot;</span><span class="p">);</span> <span class="k">var</span><span class="w"> </span><span class="n">express</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">require</span><span class="p">(</span><span class="s2">&quot;express&quot;</span><span class="p">);</span><span class="w"></span>
<span class="k">var</span> <span class="n">hawk</span> <span class="o">=</span> <span class="n">require</span><span class="p">(</span><span class="s2">&quot;express-hawkauth&quot;</span><span class="p">);</span> <span class="k">var</span><span class="w"> </span><span class="n">hawk</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">require</span><span class="p">(</span><span class="s2">&quot;express-hawkauth&quot;</span><span class="p">);</span><span class="w"></span>
<span class="n">app</span> <span class="o">=</span> <span class="n">express</span><span class="p">();</span> <span class="n">app</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">express</span><span class="p">();</span><span class="w"></span>
<span class="k">var</span> <span class="n">hawkMiddleware</span> <span class="o">=</span> <span class="n">hawk</span><span class="o">.</span><span class="n">getMiddleware</span><span class="p">({</span> <span class="k">var</span><span class="w"> </span><span class="n">hawkMiddleware</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">hawk</span><span class="o">.</span><span class="n">getMiddleware</span><span class="p">({</span><span class="w"></span>
<span class="n">hawkOptions</span><span class="p">:</span> <span class="p">{},</span> <span class="w"> </span><span class="n">hawkOptions</span><span class="p">:</span><span class="w"> </span><span class="p">{},</span><span class="w"></span>
<span class="n">getSession</span><span class="p">:</span> <span class="n">function</span><span class="p">(</span><span class="n">tokenId</span><span class="p">,</span> <span class="n">cb</span><span class="p">)</span> <span class="p">{</span> <span class="w"> </span><span class="n">getSession</span><span class="p">:</span><span class="w"> </span><span class="n">function</span><span class="p">(</span><span class="n">tokenId</span><span class="p">,</span><span class="w"> </span><span class="n">cb</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="o">//</span> <span class="n">A</span> <span class="n">function</span> <span class="n">which</span> <span class="k">pass</span> <span class="n">to</span> <span class="n">the</span> <span class="n">cb</span> <span class="n">the</span> <span class="n">key</span> <span class="ow">and</span> <span class="n">algorithm</span> <span class="k">for</span> <span class="n">the</span> <span class="w"> </span><span class="o">//</span><span class="w"> </span><span class="n">A</span><span class="w"> </span><span class="n">function</span><span class="w"> </span><span class="n">which</span><span class="w"> </span><span class="k">pass</span><span class="w"> </span><span class="n">to</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">cb</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">key</span><span class="w"> </span><span class="ow">and</span><span class="w"> </span><span class="n">algorithm</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">the</span><span class="w"></span>
<span class="o">//</span> <span class="n">given</span> <span class="n">token</span> <span class="n">id</span><span class="o">.</span> <span class="n">First</span> <span class="n">argument</span> <span class="n">of</span> <span class="n">the</span> <span class="n">callback</span> <span class="k">is</span> <span class="n">a</span> <span class="n">potential</span> <span class="w"> </span><span class="o">//</span><span class="w"> </span><span class="n">given</span><span class="w"> </span><span class="n">token</span><span class="w"> </span><span class="n">id</span><span class="o">.</span><span class="w"> </span><span class="n">First</span><span class="w"> </span><span class="n">argument</span><span class="w"> </span><span class="n">of</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">callback</span><span class="w"> </span><span class="k">is</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="n">potential</span><span class="w"></span>
<span class="o">//</span> <span class="n">error</span><span class="o">.</span> <span class="w"> </span><span class="o">//</span><span class="w"> </span><span class="n">error</span><span class="o">.</span><span class="w"></span>
<span class="n">cb</span><span class="p">(</span><span class="nb nb-Type">null</span><span class="p">,</span> <span class="p">{</span><span class="n">key</span><span class="p">:</span> <span class="s2">&quot;key&quot;</span><span class="p">,</span> <span class="n">algorithm</span><span class="p">:</span> <span class="s2">&quot;sha256&quot;</span><span class="p">});</span> <span class="w"> </span><span class="n">cb</span><span class="p">(</span><span class="nb nb-Type">null</span><span class="p">,</span><span class="w"> </span><span class="p">{</span><span class="n">key</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;key&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">algorithm</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;sha256&quot;</span><span class="p">});</span><span class="w"></span>
<span class="p">},</span> <span class="w"> </span><span class="p">},</span><span class="w"></span>
<span class="n">createSession</span><span class="p">:</span> <span class="n">function</span><span class="p">(</span><span class="n">id</span><span class="p">,</span> <span class="n">key</span><span class="p">,</span> <span class="n">cb</span><span class="p">)</span> <span class="p">{</span> <span class="w"> </span><span class="n">createSession</span><span class="p">:</span><span class="w"> </span><span class="n">function</span><span class="p">(</span><span class="n">id</span><span class="p">,</span><span class="w"> </span><span class="n">key</span><span class="p">,</span><span class="w"> </span><span class="n">cb</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="o">//</span> <span class="n">A</span> <span class="n">function</span> <span class="n">which</span> <span class="n">stores</span> <span class="n">a</span> <span class="n">session</span> <span class="k">for</span> <span class="n">the</span> <span class="n">given</span> <span class="n">id</span> <span class="ow">and</span> <span class="n">key</span><span class="o">.</span> <span class="w"> </span><span class="o">//</span><span class="w"> </span><span class="n">A</span><span class="w"> </span><span class="n">function</span><span class="w"> </span><span class="n">which</span><span class="w"> </span><span class="n">stores</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="n">session</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">given</span><span class="w"> </span><span class="n">id</span><span class="w"> </span><span class="ow">and</span><span class="w"> </span><span class="n">key</span><span class="o">.</span><span class="w"></span>
<span class="o">//</span> <span class="n">Argument</span> <span class="n">returned</span> <span class="k">is</span> <span class="n">a</span> <span class="n">potential</span> <span class="n">error</span><span class="o">.</span> <span class="w"> </span><span class="o">//</span><span class="w"> </span><span class="n">Argument</span><span class="w"> </span><span class="n">returned</span><span class="w"> </span><span class="k">is</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="n">potential</span><span class="w"> </span><span class="n">error</span><span class="o">.</span><span class="w"></span>
<span class="n">cb</span><span class="p">(</span><span class="nb nb-Type">null</span><span class="p">);</span> <span class="w"> </span><span class="n">cb</span><span class="p">(</span><span class="nb nb-Type">null</span><span class="p">);</span><span class="w"></span>
<span class="p">},</span> <span class="w"> </span><span class="p">},</span><span class="w"></span>
<span class="n">setUser</span><span class="p">:</span> <span class="n">function</span><span class="p">(</span><span class="n">req</span><span class="p">,</span> <span class="n">res</span><span class="p">,</span> <span class="n">tokenId</span><span class="p">,</span> <span class="n">cb</span><span class="p">)</span> <span class="p">{</span> <span class="w"> </span><span class="n">setUser</span><span class="p">:</span><span class="w"> </span><span class="n">function</span><span class="p">(</span><span class="n">req</span><span class="p">,</span><span class="w"> </span><span class="n">res</span><span class="p">,</span><span class="w"> </span><span class="n">tokenId</span><span class="p">,</span><span class="w"> </span><span class="n">cb</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="o">//</span> <span class="n">A</span> <span class="n">function</span> <span class="n">that</span> <span class="n">uses</span> <span class="n">req</span> <span class="ow">and</span> <span class="n">res</span><span class="p">,</span> <span class="n">the</span> <span class="n">hawkId</span> <span class="n">when</span> <span class="n">they</span><span class="s1">&#39;re known so</span> <span class="w"> </span><span class="o">//</span><span class="w"> </span><span class="n">A</span><span class="w"> </span><span class="n">function</span><span class="w"> </span><span class="n">that</span><span class="w"> </span><span class="n">uses</span><span class="w"> </span><span class="n">req</span><span class="w"> </span><span class="ow">and</span><span class="w"> </span><span class="n">res</span><span class="p">,</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">hawkId</span><span class="w"> </span><span class="n">when</span><span class="w"> </span><span class="n">they</span><span class="s1">&#39;re known so</span>
<span class="o">//</span> <span class="n">that</span> <span class="n">it</span> <span class="n">can</span> <span class="n">tweak</span> <span class="n">it</span><span class="o">.</span> <span class="n">For</span> <span class="n">instance</span><span class="p">,</span> <span class="n">you</span> <span class="n">can</span> <span class="n">store</span> <span class="n">the</span> <span class="n">tokenId</span> <span class="k">as</span> <span class="n">the</span> <span class="w"> </span><span class="o">//</span><span class="w"> </span><span class="n">that</span><span class="w"> </span><span class="n">it</span><span class="w"> </span><span class="n">can</span><span class="w"> </span><span class="n">tweak</span><span class="w"> </span><span class="n">it</span><span class="o">.</span><span class="w"> </span><span class="n">For</span><span class="w"> </span><span class="n">instance</span><span class="p">,</span><span class="w"> </span><span class="n">you</span><span class="w"> </span><span class="n">can</span><span class="w"> </span><span class="n">store</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">tokenId</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="n">the</span><span class="w"></span>
<span class="o">//</span> <span class="n">user</span><span class="o">.</span> <span class="w"> </span><span class="o">//</span><span class="w"> </span><span class="n">user</span><span class="o">.</span><span class="w"></span>
<span class="n">req</span><span class="o">.</span><span class="n">user</span> <span class="o">=</span> <span class="n">tokenId</span><span class="p">;</span> <span class="w"> </span><span class="n">req</span><span class="o">.</span><span class="n">user</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">tokenId</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span> <span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">});</span> <span class="p">});</span><span class="w"></span>
<span class="n">app</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;/hawk-enabled-endpoint&quot;</span><span class="p">,</span> <span class="n">hawkMiddleware</span><span class="p">);</span> <span class="n">app</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;/hawk-enabled-endpoint&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">hawkMiddleware</span><span class="p">);</span><span class="w"></span>
</code></pre></div> </code></pre></div>
<p>If you pass the createSession parameter, all non-authenticated requests <p>If you pass the createSession parameter, all non-authenticated requests

View file

@ -86,14 +86,14 @@ unison .vimrc ssh://notmyidea.org:20006/.vimrc
<p>It is also possible to put all the informations in a config file, and <p>It is also possible to put all the informations in a config file, and
then to only run unison. (fire up vim&nbsp;\~/.unison/default.prf.</p> then to only run unison. (fire up vim&nbsp;\~/.unison/default.prf.</p>
<p>Here is my&nbsp;config:</p> <p>Here is my&nbsp;config:</p>
<div class="highlight"><pre><span></span><code> <span class="na">root</span> <span class="o">=</span> <span class="s">/home/alexis</span> <div class="highlight"><pre><span></span><code><span class="w"> </span><span class="na">root</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">/home/alexis</span><span class="w"></span>
<span class="na">root</span> <span class="o">=</span> <span class="s">ssh://notmyidea.org:20006</span> <span class="w"> </span><span class="na">root</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">ssh://notmyidea.org:20006</span><span class="w"></span>
<span class="na">path</span> <span class="o">=</span> <span class="s">.vimrc</span> <span class="w"> </span><span class="na">path</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">.vimrc</span><span class="w"></span>
<span class="na">path</span> <span class="o">=</span> <span class="s">dotfiles</span> <span class="w"> </span><span class="na">path</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">dotfiles</span><span class="w"></span>
<span class="na">path</span> <span class="o">=</span> <span class="s">dev</span> <span class="w"> </span><span class="na">path</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">dev</span><span class="w"></span>
<span class="na">follow</span> <span class="o">=</span> <span class="s">Name *</span> <span class="w"> </span><span class="na">follow</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">Name *</span><span class="w"></span>
</code></pre></div> </code></pre></div>
<p>My vimrc is in fact a symbolic link on my laptop, but I don&#8217;t want to <p>My vimrc is in fact a symbolic link on my laptop, but I don&#8217;t want to