<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Hoa Forum]]></title>
	<link rel="self" href="http://forum.hoa-project.net/feed/atom/"/>
	<updated>2012-05-15T07:09:43Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.hoa-project.net/</id>
		<entry>
			<title type="html"><![CDATA[Aspect framework, un proof-of-concept]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/585/aspect-framework-un-proofofconcept/new/posts/"/>
			<summary type="html"><![CDATA[tchô ;

[quote] vers le fait que l'utilisateur sait et comprend [b]parfalient[/b][/quote]

A remplacer par

[quote]vers le fait que l'utilisateur sait et comprend [b]parfaitement[/b][/quote]


MaitrePylos]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/108/</uri>
			</author>
			<updated>2012-05-15T07:09:43Z</updated>
			<id>http://forum.hoa-project.net/topic/585/aspect-framework-un-proofofconcept/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[hoa.io]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/584/hoaio/new/posts/"/>
			<summary type="html"><![CDATA[Hey :),

Les projets autour de Hoa avancent vite et c'est super ! Je suis content de voir de l'activité de la part des contributeurs.
Mais sinon, avant d'en dire plus, je voulais vous signaler que hoa.io vient de naître. C'est un raccourci bête et méchant vers hoa-project.net, avec tous les sous-domaines. Donc [url]http://hg.hoa.io[/url] fonctionne par exemple (mais aussi download.* & co.). On l'utilisera entre nous pour aller plus vite ou pendant des conférences, sur Twitter etc. (bref, quand on a besoin de gagner de la place). hoa-project.net reste l'adresse officielle, mais je voulais avoir un nom de domaine cool/geek/court avec uniquement « hoa » dedans. C'est fait.

Maintenant, retournons au travail ;).]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/2/</uri>
			</author>
			<updated>2012-05-04T10:32:59Z</updated>
			<id>http://forum.hoa-project.net/topic/584/hoaio/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[XYL asynchrone]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/563/xyl-asynchrone/new/posts/"/>
			<summary type="html"><![CDATA[Voici l'ébauche de spéc écrite par Hywan : [url]http://wiki.hoathis.net/xyl_sync[/url]

Le sujet est donc ouvert pour en discuter !]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/1717/</uri>
			</author>
			<updated>2012-04-27T12:19:19Z</updated>
			<id>http://forum.hoa-project.net/topic/563/xyl-asynchrone/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Hoa au ForumPHP'12]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/579/hoa-au-forumphp12/new/posts/"/>
			<summary type="html"><![CDATA[Hey :),

L'AFUP me fait l'honneur d'être conférencier une fois de plus, mais cette fois-ci pour le [url=http://www.afup.org/pages/forumphp2012/index.php]ForumPHP'12[/url]. Je présenterai une [url=http://www.afup.org/pages/forumphp2012/sessions.php#673]conférence[/url] avec Frédéric Hardy. [url=http://blog.mageekbox.net/?post/2012/04/11/Je-serais-conferencier-au-Forum-PHP-2012]Il a écrit un billet[/url] qui résume bien la situation que je vous invite à lire (je ne dirai pas mieux). Je me permets juste de rappeler que l'AFUP propose des tarifs « [i]EarlyBirds[/i] » pour les premiers inscrits alors profitez-en !

[img]http://www.afup.org/templates/forumphp2012/img/logo.png[/img]]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/2/</uri>
			</author>
			<updated>2012-04-26T08:10:20Z</updated>
			<id>http://forum.hoa-project.net/topic/579/hoa-au-forumphp12/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Reflexions sur la forme (et le fond) de la documentation]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/564/reflexions-sur-la-forme-et-le-fond-de-la-documentation/new/posts/"/>
			<summary type="html"><![CDATA[[i][note]Ce post est un retour qui n'a été pour le moment approuvé ni par Cyrano, ni par Hywan. N'hésitez pas à me faire des retours afin que je l'amende en fonction de mes oublis / déformations[/note][/i]
[i][note]Voir les réponses de Cyrano et de Hywan plus bas. Les termes de contributeurs et utilisateurs ont été utilisés.[/note][/i]

Suite à une remontée de Cyrano, et à une discussion avec Hywan sur IRC, quelques retours sur la forme et le fond de la documentation.

Je vais tenter de retranscrire ici les points de vue exprimés, mais le but est de permettre de mieux définir les axes de rédaction de la documentation, alors n'hésitez pas à apporter votre grain de sel :)

Le point de départ remonté par Cyrano est que la documentation ne cible ni directement les [b]développeurs[/b], ni directement les [b]utilisateurs[/b]:
[list=*]
[*]Les [b]développeurs (ou plutôt "contributeurs")[/b] (ce sont ceux qui vont contribuer au développement de Hoa, l'étendre) attendent
[list=1]
[*]Une API[/*]
[*]Un HackBook (terme piqué à Hywan)[/*]
[/list][/*]
[*]Les [b]utilisateurs[/b] (ceux qui vont builder des applications au moyen de Hoa) attendent
[list=1]
[*]Une architecture (architecture de départ, ainsi que comment la modifier)[/*]
[*]Une liste de fonctionnalités[/*]
[/list][/*]
[/list]

Actuellement, la roadmap énoncée par Hywan pour la documentation est
[list=1]
[*]Finir le manuel d'apprentissage: Ce manuel doit donner un aperçu de ce que peut faire Hoa, en construisant pas à pas le Gordon's blog. Le but n'est pas de rentrer dans Hoa en détails, mais de comprendre la philosophie, et de savoir ce qu'il permet de faire[/*]
[*]Attaquer le HackBook: son but est de comprendre les rouages internes de Hoa, pour les curieux, les Hackers, les bidouilleurs (et les autres aussi :))[/*]
[*]en parallèle au HackBook, mettre en place une API documentée et navigable: Cette api, un peu à l'imag ede celle de PHP serait alimentée par des exemples (à compléter par la communauté au fil de l'eau)[/*]
[*]Faire le buzz avec un blog (ou équivalent) donnant régulièrement des tips du genre "comment qu'on fait…"[/*]
[/list]

Quel est votre point de vue sur cette roadMap? Correspond-elle à vos attentes? de quoi auriez-vous besoin? Que seriez-vous prêts à faire? autant de questions qui se posent, et pour lesquelles on vous attend :cool:

-------------------------------------------------------------------------------------------------------------------------------

Quelques références dont on peut s'inspirer (en notant cependant que [b]Hoa reste avant tout une librairie, et pas un framework, même si cet aspect existe[/b]):
[list=*]
[*][url=http://www.symfony-project.org/jobeet/1_4/Propel/en/]jobeet[/url][/*]
[/list]]]></summary>
			<author>
				<name><![CDATA[MaitrePylos]]></name>
				<uri>http://forum.hoa-project.net/user/7274/</uri>
			</author>
			<updated>2012-04-25T14:38:19Z</updated>
			<id>http://forum.hoa-project.net/topic/564/reflexions-sur-la-forme-et-le-fond-de-la-documentation/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Nouveau projet dans Sandbox : PHP live execution !]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/581/nouveau-projet-dans-sandbox-php-live-execution/new/posts/"/>
			<summary type="html"><![CDATA[Hey les ami(e)s :),

Un nouveau projet a fait son apparition dans Sandbox : [i]PHP live execution[/i].
L'objectif premier est de voir PHP s'exécuter en temps réel pour illustrer facilement certains concepts. C'est avant tout orienté pédagogie !

Pour l'utiliser, il suffit de démarrer PHP FastCGI puis le serveur Websocket : [code]$ php-cgi -b 127.0.0.1:9000&
$ php Server.php[/code] et enfin, on ouvre la page index.html.

Vous trouverez à gauche votre éditeur, et à droite le résultat.

Un exemple de sorties avec un echo et un var_dump :
[url=http://twitpic.com/9bqq8n][img]http://twitpic.com/show/full/9bqq8n.png[/img][/url]
Nous remarquons que les sorties apparaissent bien là où on s'y attend.

Un autre exemple où cette fois-ci c'est une exception qui est capturée (la sortie est préfixée par « caught: ») :
[url=http://twitpic.com/9bqqcv][img]http://twitpic.com/show/full/9bqqcv.png[/img][/url]

Encore un exemple avec une erreur, qui est indiquée dans la marge, et le message accompagnant l'erreur en [i]tooltip[/i] :
[url=http://twitpic.com/9bqqg4][img]http://twitpic.com/show/full/9bqqg4.png[/img][/url]

Et enfin, lorsque la connexion Websocket est coupée (ce qui arrive de temps en temps quand même) :
[url=http://twitpic.com/9bqqjd][img]http://twitpic.com/show/full/9bqqjd.png[/img][/url]

C'est avant tout un POC que je distribue. Il permet de manipuler un peu les fichiers dans Hoa, un serveur Websocket, une communication FastCGI, on a un peu tout mélangé et c'est plutôt sympa. Ça pourrait être un petit IDE très léger pour donner des cours ou introduire PHP. Personnellement, je m'en sers pour élaborer des petits scripts avec Hoa : j'inclus Core.php et après je peux travailler avec Hoa, top.

CodeMirror est un sous-dépôt Git. Il est bien géré par Mercurial mais le mirroir Git (sur Github) est un peu en peine. Je vais essayer de régler ça mais pour l'instant essayez de passer à travers hg.hoa-project.net/Sandbox uniquement.

Du coup, j'ai créé une chaîne spécialement pour les POC sur Viméo : [url]https://vimeo.com/channels/hoaprojectpoc[/url]. Vous pourrez y apprécier la vidéo de PHP live execution :).

Enfin, je tiens à préciser que tout ça tourne avec seulement 269 lignes de code (PHP + HTML + Javascript). Je ne compte ni CodeMirror, ni le CSS. Et pour les curieux : pas d'analyse statique non plus.

Votre avis ?]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/2/</uri>
			</author>
			<updated>2012-04-25T12:52:05Z</updated>
			<id>http://forum.hoa-project.net/topic/581/nouveau-projet-dans-sandbox-php-live-execution/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Communication autour de Hoa]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/582/communication-autour-de-hoa/new/posts/"/>
			<summary type="html"><![CDATA[Des discussions ont eu lieu sur le chan IRC à propos de la communication autour de Hoa.

Je rapporte ici dans un premier temps les éléments en vrac, puis je parlerai en détail des discussions autour d'un éventuel blog:

[list=*]
[*]Twitter :[list=*]
[*]Le fait que les comptes de Hywan et de Hoa soient mélangés n'est pas forcément une bonne chose[/*]
[*]Les tweets sont fréquents (2-3 par semaine), mais un tweet est vite "oublié"[/*]
[/list][/*]
[*]Le forum[list=*]
[*]en raison d'un gros volume de spam, il a été nécessaire de fermer les inscriptions [/*]
[*]il est lourd à maintenir/utiliser[/*]
[*]Il a été envisagé de passer sur une solution de type combo Mailing-list + forum (je ne sais pas si des solutions précises sont envisagées: google groups? nabble? autre?)[/*]
[/list][/*]
[*]Le chan IRC[list=*]
[*]Il n'est fréquenté que par les habitués, et n'est pas logué, du coup, beaucoup de choses "se perdent"[/*]
[/list][/*]
[*]Le blog[list=*]
[*]Les discussions ont terminé sur la nécessité de mettre en place un blog, pour pérenniser tout ce contenu, et maintenir l'activité autour de Hoa.[/*]
[/list][/*]
[/list]

À propos du blog:

De façon pragmatique, nous nous sommes donnés des exigences simples, et une dead-line à court terme, afin de mettre en place un blog pour Hoa.
L'objectif est de le mettre en ligne pour le 15 mai, avec à-minima les fonctionnalités suivantes:
[list=*]
[*]Backend minimaliste[list=*]
[*]Rédaction de billets[/*]
[/list][/*]
[*]Interface de consultation[list=*]
[*]Liste des posts[/*]
[*]Flux RSS[/*]
[/list][/*]
[/list]

Ce blog serait basé sur le Gordon's Blog, qui nécessite quelques petites améliorations pour correspondre à cette liste d'exigences. Cependant, le but premier est de permettre à Hywan de publier des articles à raison de 1-2 par semaine, et ce dès le 15 mai pour informer de l'évolution de Hoa (ce qui rentre dans central, par exemple) et autour de Hoa (HoaThis, projets périphériques, activité de la communauté, événements, etc.)

Plusieurs membres de la communauté ont proposé de passer un peu de leur temps sur ce développement, et je pense qu'il faut pour cela que Hywan découpe ces exigences en quelques tâches à se répartir.]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/7274/</uri>
			</author>
			<updated>2012-04-22T13:01:18Z</updated>
			<id>http://forum.hoa-project.net/topic/582/communication-autour-de-hoa/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Hoa à A-MOST/ICST]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/580/hoa-a-amosticst/new/posts/"/>
			<summary type="html"><![CDATA[Hello,

Hier je suis arrivé à Montréal (Canada) pour participer à [i]The 8th Workshop on Advances in Model Based Testing[/i] ([url=http://sites.google.com/site/amost2012/]A-MOST[/url]) et à [i]Fifth IEEE International Conference on Software Testing, Verification and Validation[/i] ([url=icst2012.soccerlab.polymtl.ca]ICST[/url]).

[img]http://icst2012.soccerlab.polymtl.ca/logos/ICST-logo.jpg[/img]

Actuellement, je suis en [i]coffee break[/i] et je parle dans moins d'une heure. Titre de ma conférence : [i]Grammar-based Testing using Realistic Domains in PHP[/i]. J'y présente mes derniers travaux à l'[url=http://www.inria.fr]INRIA[/url] et au [url=http://www.femto-st.fr/fr/Departements-de-recherche/DISC/Presentation/]DISC[/url]. Ça concerne Hoa car (comme tout le monde le sait maintenant) Hoa est un pont entre le monde de la recherche et de l'industrie. Sont impactés les paquetages : Hoa\Test, Hoa\Compiler et Hoa\Realdom.

Je reste sur Montréal jusqu'à dimanche (soit une durée totale de 7 jours). Si des contributeurs Hoa ou PHP sont dans le coin, ce sera un plaisir d'échanger ! C'est plutôt rare que je me balade de ce côté de la planète … alors autant en profiter.

Mes soirées seront longues et j'ai prévu de coder sur Hoa toutes les nuits. J'espère vous voir sur IRC malgré les -6h de décalage avec Paris.]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/2/</uri>
			</author>
			<updated>2012-04-17T23:15:44Z</updated>
			<id>http://forum.hoa-project.net/topic/580/hoa-a-amosticst/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Enregistrement du groupe sur freenode]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/578/enregistrement-du-groupe-sur-freenode/new/posts/"/>
			<summary type="html"><![CDATA[Il serait pas mal d'enregistrer le groupe sur freenode. L'enregistrement permet
[list=*]
[*]de réserver un namespace (tous les chan en <namespace>-*)[/*]
[*]d'offrir un [url=http://freenode.net/faq.shtml#projectcloak]cloak[/url] à nos membres[/*]
[*]d'apparaitre sur la [url=http://freenode.net/primary_groups.shtml]liste officielle des groupes freenode[/url][/*]
[/list]

Je voulais récupérer #hoa, mais c'est déjà pris par un projet open source (pour les curieux, c'est le projet [url=http://heroofathene.webs.com/]Hero Of Athene[/url]) et j'ai parlé avec le détenteur du chan, qui souhaite le garder.
Par soucis de respect, je propose de s'enregisttrer en tant que hoaproject et de réserver hoaproject-* (si on insiste, on devrait pouvoir récupérer hoa, mais après avoir discuté avec le détenteur actuel de hoa, ce serait vraiment pas cool)

Pour remplir cette procédure, qui peut durer quelques semaines, il faut que Hywan remplisse ce formulaire: [url]http://freenode.net/grf-f.php[/url] (les explications sont [url=http://blog.freenode.net/2011/09/new-grf-freenode-process/]ici[/url])

@Hywan: je te laisse remplir le formulaire (vérifie avant tout que ton nickname est asocié à une adresse mail, sinon tu devras commencer par [url=http://freenode.net/faq.shtml#userregistration]t'enregistrer[/url]. Une fois ce premier formulaire rempli, ping moi, je ferai le second pour être contact secondaire.

Il faudra ensuite relancer un peu les gends de #freenode après une ou 2 semaines.
Une fois ce formulaire rempli, je propose de m'enregistrter en tant que secondary contact afin de le soulager dans les taches diverses d'administration, notamment l'attribution des cloaks

Une fois l'enregistrement confirmé, on pourra opérer une migration vers #hoaproject]]></summary>
			<author>
				<name><![CDATA[raphael]]></name>
				<uri>http://forum.hoa-project.net/user/7274/</uri>
			</author>
			<updated>2012-04-17T20:41:11Z</updated>
			<id>http://forum.hoa-project.net/topic/578/enregistrement-du-groupe-sur-freenode/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Hoa sur Composer et Packagist]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/576/hoa-sur-composer-et-packagist/new/posts/"/>
			<summary type="html"><![CDATA[Hey :),

Depuis peu, nous trouvons un fichier composer.json à la racine de /Central (uniquement), ce qui nous permet d'être intégrer à [url=http://getcomposer.org/]Composer[/url] !
[img]http://getcomposer.org/img/logo-composer-transparent.png[/img]
Je ne suis pas un fou furieux de Composer, j'ai même personnellement beaucoup de reproches à lui faire, mais comme l'a dit [url=http://blog.mageekbox.net/]mageekguy[/url] sur l'[url=irc://irc.freenode.org#hoa_php]IRC de Hoa[/url] tout à l'heure : « ce que utilisateur veut qui ne soit pas stupide techniquement, utilisateur a ». On me l'a effectivement demandé en novembre dernier lors de l'événement PHPTour (voir [url=http://hoa-project.net/Literature/Keynote/PHPTour11.html]la présentation[/url] au passage), donc le voilà. De plus, le reste de la communauté de Hoa n'est pas farouchement contre non plus.

Pour finir l'intégration, j'ai enregistré /Central auprès de [url=http://packagist.org/]Packagist[/url].
[img]http://packagist.org/bundles/packagistweb/img/logo.png[/img]
Ainsi, chercher simplement « hoa » et vous aurez les informations que vous désirez.

Un petit test pour la route avec un bête composer.json dans votre projet : [code]{
    "require": {
        "hoa/central": "*"
    }
}[/code] suivi de [code]$ php composer.phar update # or install[/code] et le tour sera joué. Note : la documentation sera mise à jour bientôt.

Pour l'instant, une limitation connue est que /Central, aka « hoa/central » (comme il est nommé dans Composer), contient l'ensemble de toutes les bibliothèques. Malheureusement, il est très difficile pour l'instant (à cause de Composer, pour ne pas citer de coupable) d'avoir chaque bibliothèque à part (comme hoa/websocket, hoa/stream, hoa/xyl etc.). Ça ne saurait tarder mais ce n'est pas une priorité car je vous avouerais qu'au sein de Hoa, on n'est pas forcément convaincu de la top-priorité de cet outil (aux vues de ce qu'on vous prépare :)). Toutefois, si une âme charitable connait la solution, la discussion et les contributions sont ouvertes !

Bonne fin de journée à tous et ++$a; !]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/2/</uri>
			</author>
			<updated>2012-03-27T14:28:28Z</updated>
			<id>http://forum.hoa-project.net/topic/576/hoa-sur-composer-et-packagist/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Hoa\Websocket adopte la RFC6455]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/575/hoawebsocket-adopte-la-rfc6455/new/posts/"/>
			<summary type="html"><![CDATA[Hey les amis :),

Hoa\Websocket a été mis à jour pour supporter la [url=http://tools.ietf.org/html/rfc6455]RFC6455[/url] (spécification officielle et finalisée du protocole WebSocket). Aurevoir donc Hybi07 (spécification intermédiaire) mais Hybi00 est conservée (car utilisée par Flash, malgré les problèmes de sécurité).

[i]A contrario[/i] du protocole, l'[url=http://w3.org/TR/websockets/]API WebSocket[/url] côté client (dans le navigateur par exemple) n'est pas encore finalisée par le W3C. J'attends de voir comment elle va évoluer pour finaliser l'API côté serveur (dans Hoa\Websocket). En effet, nous pouvons spécifier des protocoles et autres options mais il est souhaitable d'avoir des API se ressemblant pour faciliter l'apprentissage.

SoChatty (dans /Sandbox) a été mis à jour et fonctionne très bien. Je vous invite à le tester sur vos navigateurs préférés en suivant le fichier README (rien n'a changé).

Voilà pour ce soir :).]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/2/</uri>
			</author>
			<updated>2012-03-20T22:57:53Z</updated>
			<id>http://forum.hoa-project.net/topic/575/hoawebsocket-adopte-la-rfc6455/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Support de Composer ou .hgsub vers .gitmodules]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/574/support-de-composer-ou-hgsub-vers-gitmodules/new/posts/"/>
			<summary type="html"><![CDATA[Hey :),

Je suis en train de rendre Hoa compatible avec Composer comme vous le savez. Je crois que nous serons obligés de déporter toutes les bibliothèques dans des dépôts. Ça va être très chiant pour la maintenance mais ça implique surtout de gérer correctement les .hgsub et leurs versions Git à savoir .gitmodules.

J'ouvre ce sujet pour lancer des idées, des liens etc.]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/2/</uri>
			</author>
			<updated>2012-03-19T11:31:55Z</updated>
			<id>http://forum.hoa-project.net/topic/574/support-de-composer-ou-hgsub-vers-gitmodules/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Hoa sur Github]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/573/hoa-sur-github/new/posts/"/>
			<summary type="html"><![CDATA[Hey les ami(e)s :),

Malgré le fait que la beta8 est repoussée de quelques semaines, Hoa ne gagnera pas que du code et de la documentation mais aussi de la visibilité. En effet, suite à plusieurs remarques (sur IRC et sur [url=http://forum.hoa-project.net/topic/569/hoa-et-ses-repositories/]le forum[/url]), j'ai le plaisir de vous annoncer que [b][url=https://github.com/hoaproject]Hoa débarque sur Github[/url] ![/b]
[img]https://a248.e.akamai.net/assets.github.com/images/modules/about_page/octocat.png?1306884371[/img]

Hoa ne migre pourtant pas sur Git mais reste bel et bien sur Mercurial. Nous nous servons de Github comme d'un miroir Git mais aussi pour être au contact avec une plus grande communauté de développeurs. Le système de [i]pull request[/i] fonctionne très bien et ce sera le moyen principal de contributions pour les utilisateurs de Git (plus facile pour eux). Impossible donc de faire des [i]pushes[/i] depuis Git mais comme le nombre de [i]commiters[/i] est volontairement réduit et qu'ils sont (au moins) sur Mercurial, ça ne pose pas de problèmes.

Je vous invite donc à « forker » Hoa, à le suivre et à y contribuer ! Vos dépôts préférés seront peut-être [i]Central[/i] et [i]Literature[/i] :) ?

Mais nous n'allons pas nous arrêter là ! L'idée a été lancée de faire la même chose avec [url=https://bitbucket.org/]Bitbucket[/url]. De plus, d'autres travaux ont commencé, comme l'intégration de chaque bibliothèque de Hoa dans [url=http://packagist.org/]Composer et Packagist[/url] (et bien sûr, le mécanisme sera étendu à vos propres bibliothèques Hoathis).

Bref. Nous espérons que ce débarquement sur Github apportera plus que de l'intérêt pour Hoa : des contributions. À vos claviers donc et bonne lecture :).
Merci aux contributeurs qui s'impliquent dans Hoa et qui me poussent en avant tous les jours :).]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/2/</uri>
			</author>
			<updated>2012-03-09T12:21:35Z</updated>
			<id>http://forum.hoa-project.net/topic/573/hoa-sur-github/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Hoa et ses repositories…]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/569/hoa-et-ses-repositories/new/posts/"/>
			<summary type="html"><![CDATA[Oui oui, je parle bien au pluriel :)

Je fais suite ici à une discussion avec Hywan sur le forum: il se demandait s'il est "mieux d'utiliser hg ou git" pour hoa.

Suite à nos échanges, je vais essayer de faire un petit retour de nos échanges, avec des liens.

Je commence par une citation de Hywan: 
[quote="Hywan"]J'aime hg car c'est bien codé, c'est simple et ça reste hackable.
J'ai beaucoup de mal avec git, je ne sais pas pourquoi.
Et j'adore Github, super soft, MAIS je le déteste aussi car c'est fermé, t'as pas les sources (même si tu peux héberger ton dépôt Git chez toi, ce que je ferais peut-être pour Hoa du coup).[/quote]

Pour ma part, je suis assez familier de git et de github. Mes arguments sont les suivants:
Github offre une visibilité pour un projet comme Hoa, et facilite les contributions. Par contributions, je ne parle pas des Hoathis, mais bien de contributions au core, à la documentation, etc.

Utilisant fréquemment github, je vais essayer de montrer ici comment ça se passe en reprenant le cas des corrections de la documentation, si on avait été sur github: (Je sais que ce processus est familier à certains, mais ce sera un éclairage pour ceux qui ne maîtrisent pas le sujet)
[list=*]
[*]La documentation est dans un repo officiel github, détenu par Hoa.[/*]
[*]Les personnes qui veulent contribuer peuvent "forker" le projet, ce qui veut dire qu'ils ont alors le repo à leur tour. À ce moment là, chacun fait ses corrections, en local, se débrouille avec ses branches, etc.[/*]
[*]Une fois qu'on a fini nos corrections, on peut faire une "pull request".[/*]
[*]Cette pull request propose alors à Hywan un patch, avec un bouton pour l'appliquer directement s'il n'y a pas de conflit. Mais comme Hywan est quelqu'un de compliqué, il faut lui offrir d'autres possibilités:[list=*]
[*]d'abord, il n'est pas obligé d'utiliser ce bouton dans l'interface, il peut intégrer les changements en ligne de commande[/*]
[*]Ensuite, il peut ne pas intégrer la demande directement, mais commenter le diff, ligne à ligne, voire demander des changements. Il peut ainsi y avoir autant d'échanges que nécessaire, impliquant Hywan, l'auteur de la pull request, mais aussi tout autre personne de bonne volonté, et permettant à l'auteur de la pull request de mettre à jour son code avant intégration.[/*]
[*]Hywan peut alors intégrer les corrections qui lui conviennent[/*]
[/list][/*]
[/list]
Ainsi, on a permis aux contributeurs d'apporter leur pierre à l'édifice, mais sans leur ouvrir d'accès en écriture sur le repo de la documentation.

Évidemment, je n'ai pas d'actions chez github, et je vais donc être un peu plus ouvert que ça: pour répondre à l'objection pleinement justifiée de Hywan sur le coté fermé de github, je propose de regarder gitlabhq ( [url]http://gitlabhq.com[/url]/ )  qui offre des fonctionnalités plus que similaires, mais est open source, et très actif en ce moment.

Enfin, puisque je ne suis pas non plus marié avec git, que les repo hg et lurs utilisateurs existent, et aussi parce que'il me semble que hg est plus agréable que git sous windows, je termine avec un moyen de mirrorer un repo hg vers un repo git, avec en prime un moyen de gérer les contributions des utilisateurs de git: [url]http://hgtip.com/tips/advanced/2009-11-09-create-a-git-mirror/[/url]

Pour conclure, je suggère donc une approche comme ceci:
[list=1]
[*]Le repo principal reste en hg, puisque maîtrisé et apprécié par Hywan[/*]
[*]un miroir git est créé et géré par gitlabhq sur les serveurs de hoa[/*]
[*][i](facultatif) un miroir git est créé sur github, parce que c'est là qu'est le plus grand nombre de contributeurs potentiels. Cependant, il peut devenir plus complexe de gérer un troisième repo pour les contributions[/i][/*]
[/list]
Je terminerai juste en demandant : [i]pourquoi vouloir se gérer un repo sous gitlabhq alors que github fonctionne bien?[/i] Je m'explique: Certes, github est closed-source, et pas auto-hébergé, mais dans la mesure où ce n'est qu'un miroir, où est le problème? Ainsi, ma conclusion deviendrait plutôt:
[list=1]
[*]Le repo principal reste en hg, puisque maîtrisé et apprécié par Hywan[/*]
[*]un miroir git est créé sur github, parce que c'est là qu'est le plus grand nombre de contributeurs potentiels.[/*]
[*]Les contributions se font directement sous hg, ou depuis github, et sont reversées dans le repo hg au moyen de la procédure du lien cité plus haut[/*]
[/list]

PS: je ne savais pas trop où mettre ce post, n'hésitez pas à le bouger s'il n'est pas à sa place]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/7274/</uri>
			</author>
			<updated>2012-03-09T09:03:24Z</updated>
			<id>http://forum.hoa-project.net/topic/569/hoa-et-ses-repositories/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[[Xyl] Ajout d'une balise <comment> pour les commentaires conditionnels]]></title>
			<link rel="alternate" href="http://forum.hoa-project.net/topic/571/xyl-ajout-dune-balise-comment-pour-les-commentaires-conditionnels/new/posts/"/>
			<summary type="html"><![CDATA[Bonsoir,

Suite à cette discussion : [url]http://forum.hoa-project.net/topic/568/xyl-questions-diverses/[/url]

Je propose un diff pour l'implémentation de la balise Xyl <comment /> :
[code]diff -r 5cd4ac555170 Library/Xyl/Interpreter/Html/Comment.php
--- /dev/null    Thu Jan 01 00:00:00 1970 +0000
+++ b/Library/Xyl/Interpreter/Html/Comment.php    Tue Mar 06 20:20:57 2012 +0100
@@ -0,0 +1,103 @@
+<?php
+
+/**
+ * Hoa
+ *
+ *
+ * @license
+ *
+ * New BSD License
+ *
+ * Copyright © 2007-2012, Ivan Enderlin. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in the
+ *       documentation and/or other materials provided with the distribution.
+ *     * Neither the name of the Hoa nor the names of its contributors may be
+ *       used to endorse or promote products derived from this software without
+ *       specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+namespace {
+
+from('Hoa')
+
+/**
+ * \Hoa\Xyl\Interpreter\Html\GenericPhrasing
+ */
+-> import('Xyl.Interpreter.Html.GenericPhrasing')
+
+/**
+ * \Hoa\Xyl\Element\Executable
+ */
+-> import('Xyl.Element.Executable');
+
+}
+
+namespace Hoa\Xyl\Interpreter\Html {
+
+/**
+ * Class \Hoa\Xyl\Interpreter\Html\Code.
+ *
+ * The <code /> component.
+ *
+ * @author     Ivan Enderlin <ivan.enderlin@hoa-project.net>
+ * @copyright  Copyright © 2007-2012 Ivan Enderlin.
+ * @license    New BSD License
+ */
+
+class Comment extends GenericPhrasing {
+
+    /**
+     * Attributes description.
+     *
+     * @var \Hoa\Xyl\Interpreter\Html\Input array
+     */
+    protected static $_attributes        = array(
+        'condition' => parent::ATTRIBUTE_TYPE_NORMAL
+    );
+
+    /**
+     * Attributes mapping between XYL and HTML.
+     *
+     * @var \Hoa\Xyl\Interpreter\Html\Input array
+     */
+    protected static $_attributesMapping = null;
+
+
+
+    /**
+     * Paint the element.
+     *
+     * @access  protected
+     * @param   \Hoa\Stream\IStream\Out  $out    Out stream.
+     * @return  void
+     */
+    protected function paint ( \Hoa\Stream\IStream\Out $out ) {
+
+
+        $out->writeAll('<!--[' . $this->abstract->readAttribute('condition') . ']>');
+        $this->computeValue($out);
+        $out->writeAll('<![endif]-->');
+
+        return;
+    }
+}
+
+}
diff -r 5cd4ac555170 Library/Xyl/Interpreter/Html/Html.php
--- a/Library/Xyl/Interpreter/Html/Html.php    Mon Feb 13 12:29:17 2012 +0100
+++ b/Library/Xyl/Interpreter/Html/Html.php    Tue Mar 06 20:20:57 2012 +0100
@@ -85,6 +85,8 @@
         // Script.
         'script'          => '\Hoa\Xyl\Interpreter\Html\Script',
         'noscript'        => '\Hoa\Xyl\Interpreter\Html\Generic',
+        
+        'comment'         => '\Hoa\Xyl\Interpreter\Html\Comment',
 
         // Sections.
         'section'         => '\Hoa\Xyl\Interpreter\Html\Generic',
[/code]

Le code semble bien fonctionner, je n'ai simplement pas tester de grosse encapsulation...
Les balises s'utilisent ensuite comme ceci :
[code]<comment condition="if IE"><p>Vous utilisez IE</p></comment>[/code]

Je vous laisse juger en revanche de l'endroit où insérer la ligne : [code]'comment'         => '\Hoa\Xyl\Interpreter\Html\Comment',[/code] dans l'interpreter Html, je vous laisse également juger du nom de la balise et de son unique attribut :)

Merci !]]></summary>
			<author>
				<name><![CDATA[Hywan]]></name>
				<uri>http://forum.hoa-project.net/user/20/</uri>
			</author>
			<updated>2012-03-09T09:01:20Z</updated>
			<id>http://forum.hoa-project.net/topic/571/xyl-ajout-dune-balise-comment-pour-les-commentaires-conditionnels/new/posts/</id>
		</entry>
</feed>

