POSS Appendix

De Framalang Wiki.

Retour à la page du projet

Pseudo Code Rôle Statut
Olivier, Coeurgan, bflorat Relecture/refonte en cours
Relecture/refonte En cours
Validation


--Olivier 6 mai 2007 à 12:40 (CEST): Je ne savais pas que cette partie serait si technique quand je m'y suis lancé, la traduction aura besoin d'un gros effort de relecture parce quelqu'un familier avec les termes employés. Faites les corrections directement dans la texte, pas besoin de soumettre des propositions, je ne saurai pas les discuter de toute façon.
--Coeurgan 5 février 2008 à 13:58 (CET):J'essaie de reprendre
--Bflorat 3 septembre 2008 à 19:52 (CEST): je relis cette partie


Sommaire

Annexe A. Solutions libres de gestion de versions

Appendix A. Free Version Control Systems

Annexe A. Solutions libres de gestion de versions

$1

These are all the open source version control systems I was aware of as of mid-2007. The only one I use on a regular basis is Subversion. I have little or no experience with most of these systems, except for Subversion and CVS; the information here is taken from their web sites. See also http://en.wikipedia.org/wiki/List_of_revision_control_software.
Voici une liste de tous les logiciels Open Source de gestion de versions a ma connaissance à la mi-2007. Le seul que j'utilise régulièrement est Subversion. Mon expérience avec ces systèmes est limitée, voir inexistante, Subversion et CVS mis à part. Les informations présentées ici sont tirées des sites Web des logiciels. Voir également http://en.wikipedia.org/wiki/List_of_revision_control_software en anglais ou http://fr.wikipedia.org/wiki/Logiciel_de_gestion_de_versions en français.

$1.1

CVS has been around for a long time, and many developers are already familiar with it. In its day it was revolutionary: it was the first open source version control system with wide-area network access for developers (as far as I know), and the first to offer anonymous read-only checkouts, which gave new developers an easy way to get involved in projects. CVS versions files only, not directories; it offers branching, tagging, and good client-side performance, but doesn't handle large files or binary files very well. It also does not support atomic commits.[Disclaimer: I was active in CVS development for about five years, before helping to start the Subversion project to replace it.]
Ça fait quelques temps maintenant que CVS existe, de nombreux développeurs le connaissent déjà bien. À son époque il était révolutionnaire : ce fut le premier logiciel de gestion de versions Open Source à proposer aux développeurs un large accès réseau (à ma connaissance) et aussi le premier à permettre aux utilisateurs anonymes d'extraire le code, ainsi les nouveaux développeurs pouvaient s'impliquer en douceur dans un projet. CVS ne versionne que des fichiers, pas des dossiers ; il permet de créer des branches, des étiquettes et propose des bonnes performances côté client, mais il ne gère pas très bien les gros fichiers ou les fichiers binaires. Les commits atomiques ne sont pas non plus pris en charge. [Note : j'ai participé au développement de CVS pendant cinq ans environ, jusqu'à ce que je ne rejoigne le projet Subversion créé pour le remplacer.

$2

Subversion was written first and foremost to be a replacement for CVS—that is, to approach version control in roughly the same way CVS does, but without the problems and feature omissions that most frequently annoy users of CVS. One of Subversion's goals is for people already accustomed to CVS to find the transition to Subversion relatively smooth. There is not space here to go into detail about Sub- version's features; see its web site for more information. [Disclaimer: I am involved in Subversion

development, and it is the only one of these systems that I use on a regular basis.]

L'objectif premier de Subversion est de remplacer CVS. Il possède sensiblement la même approche du contrôle de versions, mais en corrigeant les problèmes que rencontraient fréquemment les utilisateurs de CVS et en le dotant de plus de fonctionnalités. L'un des buts de Subversion est de ne pas brusquer les habitués de CVS. Je ne m'attarde pas ici sur les fonctionnalités de Subversion, consultez le site Web du projet pour plus d'informations.

[Note : Je suis impliqué dans le développement de Subversion et c'est le seul système parmi ceux listés ici que j'utilise régulièrement.]

$3

Although it is built on top of Subversion, SVK probably resembles Arch more than it does Subversion. SVK supports distributed (non-centralized) development, sophisticated change merging, and the ability

to mirror trees from non-SVK version control systems. See the web site for details.

Bien que basé sur Subversion, SVK ressemble probablement d'avantage à Arch.

SVK supporte le développement distribué (non-centralisé), un système de fusion des modifications intelligent et la capacité de copier des dépôts provenant de systèmes de gestion de version autres que SNK. Voir le site Web pour plus de détails.
--Coeurgan 5 février 2008 à 15:38 (CET): « sophisticated change merging » à voir
--bflorat 3 septembre 2008 : "système de fusion des modifications intelligent" me semble OK

$

Mercurial is a distributed version control system that offers, among other things, « complete cross-indexing of files and changesets; bandwidth and CPU efficient HTTP and SSH sync protocols; arbitrary merging between developer branches; integrated stand-alone web interface; [portability to] UNIX, MacOS X, and Windows » and more (the preceding feature list was paraphrased from the Mercurial web site).
Mercurial est un système de contrôle de versions distribué qui offre, entre autre, « un indexage croisé complet des fichiers et des ensembles de modifications, de protocoles de synchronisation HTTP et SSH optimisant l'utilisation de bande passante et de CPU, un système de fusion arbitraire entre branches, une interface Web indépendante. Il est de plus portable entre Unix, MacOS X et Windows » (la précédente liste de fonctionnalités est tirée du site Web de Mercurial).

$

GIT is a project started by Linus Torvalds to manage the Linux kernel source tree. It is very narrowly focused on the needs of kernel development, and was still under development as of this writing. It doesn't appear to have a home page yet, but check the Wikipedia page above for updates.
GIT est un projet initié par Linus Torvalds pour gérer l'arborescence du noyau Linux. Il cible très précisément les besoins du développement d'un noyau et était toujours en développement au moment de l'écriture de ce livre. Il ne semble pas encore disposer d'un site Web mais consultez l'entrée Wikipedia ci-dessus pour des informations plus récentes.

$

Bazaar is still under development. It will be an implementation of the GNU Arch protocol, will retain compatability with the GNU Arch protocol as it evolves, and work with the GNU Arch community process for any protocol changes that might be required for user friendliness.
Bazaar est encore en développement. Il sera une implémentation du protocole GNU Arch, en assurera la compatible à mesure qu'il évoluera et travaillera avec le groupe de travail de la communauté GNU Arch pour toute modification du protocole qui pourrait être nécessaire aux utilisateurs.

$8

« David's Advanced Revision Control System is yet another replacement for CVS. It is written in

Haskell, and has been used on Linux, MacOS X, FreeBSD, OpenBSD and Microsoft Windows. Darcs includes a cgi script, which can be used to view the contents of your repository. »
« David's Advances Revision Control System est un nième remplaçant de CVS. Il est écrit en Haskell et portable sous Linux, MacOs X, FreeBSD, OpenBSD et Microsoft Windows. Darcs inclut un script cgi qui peut être utilisé pour visionner le contenu de votre dépôt. »

$4

GNU Arch supports both distributed and centralized development. Developers commit their changes to an « archive », which may be local, and the changes can be pushed and pulled to other archives as the managers of those archives see fit. As such a methodology implies, Arch has more sophisticated merge support than CVS. Arch also allows one to easily make branches of archives to which one does not have commit access. This is only a brief summary; see the Arch web pages for details.
GNU Arch supporte à la fois le développement distribué et centralisé. Les dévelopeurs commitent leurs modifications dans une « archive » qui peut être locale et les modifications peuvent être poussées ou insérées vers d'autres archives, selon les décisions du responsable de ces archives. Il en découle qu'Arch dispose d'un support de fusions plus sophistiqué que CVS. Arch permet également à une personne de facilement créer des branches pour des archives sur lesquelles elle n'a pas les droits de commit. Ceci n'est qu'un simple aperçu des fonctionnalités de Arch, voir les pages Web du projet pour plus de détails.

$

« monotone is a free distributed version control system. it provides a simple, single-file transactional version store, with fully disconnected operation and an efficient peer-to-peer synchronization protocol. It understands history-sensitive merging, lightweight branches, integrated code review and 3rd party testing. it uses cryptographic version naming and client-side RSA certificates. it has good internationaliza tion support, has no external dependencies, runs on linux, solaris, OSX, and windows, and is licensed

under the GNU GPL. »


« Monotone est un système de gestion de versions libre. Il fournit un système de « stockage de version » simple, utilisant un fichier unique et des transactions. Les opération se font hors ligne et le système fournit un protocole de synchronisation pair-à-pair efficace. Il supporte la fusion de versions basée sur l'historique, un système de branches simplifié, la vérification de code intégrée et les tests externes. Il utilise des algorithmes de hashage pour l'identification des versions et des certificats RSA coté client. L'internationalisation est poussée et le programme ne possède pas de dépendances externes (fonctionne sous Linux, Solaris, OSX et Windows). Il est placé sous licence GNU GPL. »
--Olivier 2 mai 2007 à 16:31 (CEST): Là j'avoue que je ne sais vraiment pas comment traduire. Help !
--Coeurgan 6 février 2008 à 15:01 (CET): En effet c'est assez intéressant, je ne suis pas sûr de comprendre toutes les notions donc la traduction actuelle est vraiment un premier jet.
--Utilisateur:bflorat 5 septembre 2008: J'ai revu ce paragraphe. Une bonne partie de la difficulité à traduire venait de la faible qualité du texte anglais. Pour la question du chiffrement des versions, j'ai fini par comprendre en lisant http://monotone.ca/docs/Versions-of-files.html#Versions-of-files
--Olivier 20 avril 2009 à 10:31 (CEST): Merci :)

$6

« Why yet another version control system? All other version control systems require that you keep careful track of the relationships between branches so as not have to repeatedly merge the same conflicts. Codeville is much more anarchic. It allows you to update from or commit to any repository at any time with no unnecessary re-merges. »

« Codeville works by creating an identifier for each change which is done, and remembering the list of all changes which have been applied to each file and the last change which modified each line in each file. When there's a conflict, it checks to see if one of the two sides has already been applied to the other one, and if so makes the other side win automatically. When there's an actual not automatically mergeable version conflict, Codeville behaves in almost exactly the same way as CVS. »

« Pourquoi un système de contrôle de versions de plus ? Tous les autres systèmes de contrôle de versions vous demandent de suivre consciencieusement les différentes branches pour ne pas avoir à fusionner plusieurs fois les mêmes conflits. Codeville est beaucoup plus anarchique. Il vous permet de mettre à jour ou de valider des modifications depuis n'importe quel dépôt, n'importe quand, sans fusions inutiles. »

« Codeville crée un identifiant pour tout changement apporté et en garde en mémoire la liste de tous les changements appliqués à chaque ficher et le dernier changement pour chaque fichier et pour chaque ligne. Quand il y a un conflit, il vérifie si l'un des deux côtés a déjà été appliqué à l'autre et, si c'est le cas, déclare vainqueur l'autre côté automatiquement. Quand il y a effectivement un conflit de versions non fusionnable automatiquement, Codeville se comporte presque exactement comme CVS. »

$7

« Vesta is a portable SCM [Software Configuration Management] system targeted at supporting development of software systems of almost any size, from fairly small (under 10,000 source lines) to very large (10,000,000 source lines). »

« Vesta is a mature system. It is the result of over 10 years of research and development at the Compaq/Digital Systems Research Center, and it was in production use by Compaq's Alpha microprocessor group for over two and a half years. The Alpha group had over 150 active developers at two sites thousands of miles apart, on the east and west coasts of the United States. The group used Vesta to manage builds with as much as 130 MB of source data, each producing 1.5 GB of derived data. The builds done at the eastern site in an average day produced about 10-15 GB of derived data, all managed by Vesta. Although Vesta was designed with software development in mind, the Alpha group demonstrated the system's flexibility by using it for hardware development, checking their hardware description language files into Vesta's source code control facility and building simulators and other derived objects with Vesta's builder. The members of the former Alpha group, now a part of Intel, are continuing to use Vesta today in a new microprocessor project. »

« Vesta est un système GCL (Gestion de Configuration Logicielle) portable qui vise à accompagner le développement de logiciels quelle que soit leur taille, des plus petits (moins de 10 000 lignes de code) aux très gros (10 000 000 de lignes de code). » « Vesta est un système mature, résultat de dix années de recherche et développement au centre de recherche Compaq/Digital System et a été employé par le groupe Compaq's Alpha Microprocessor pendant deux ans et demi. Le groupe Alpha comprenait alors plus de 150 développeurs répartis sur deux sites à des milliers de kilomètres l'un de l'autre, sur les côtes Est et Ouest des États-Unis. Ont ainsi été gérées des distributions contenant jusqu'à 130 MO de données sources, chacune produisant 1,5 GO de données dérivées. Les versions compilées sur le site de la côte Est produisaient environ 10-15 GO de données dérivées par jour, toutes gérées par Vesta.

Bien que Vesta ait été construit en visant le développement de logiciel, le groupe Alpha a démontré la flexibilité du système en l'utilisant pour développer du matériel informatique, alimentant l'outil avec les fichiers de données matériel en langage spécifique puis en construisant des simulateurs et d'autres objets dérivés avec l'outil de développement adossé à Vesta. Les membres de l'ancien groupe Alpha (incorporé à Intel maintenant) continuent à utiliser cet outil dans le cadre d'un nouveau projet de microprocesseur. »

$9

« Aegis is a transaction-based software configuration management system. It provides a framework within which a team of developers may work on many changes to a program independently, and Aegis coordinates integrating these changes back into the master source of the program, with as little disruption as possible. »
« Aegis est un système de gestion de configuration transactionnel. Il fournit un cadre de travail dans lequel une équipe de développement peut travailler indépendamment sur de nombreuses modifications d'un programme, Aegis prenant en charge l'intégration de ces modifications dans les sources de référence avec aussi peu de perturbations que possible. »
--Olivier 5 mai 2007 à 15:04 (CEST): je sais pas vraiment comment traduire a transaction-based software configuration management system
--Utilisateur:bflorat 6 sept 2008: système de gestion de configuration transactionnel me semble correct

$

« CVSNT is an advanced multiplatform version control system. Compatible with the industry standard CVS protocol it now supports many more features. ... CVSNT is Open Source, Free software licensed under the GNU General Public License. » Its feature list includes authentication via all standard CVS protocols, plus Windows specific SSPI and Active Directory; secure transport support, via sserver or encrypted SSPI; cross platform (runs in Windows or Unix environments); NT version is fully integrated with Win32 system; MergePoint processing means no more tagging to merge; under active development.
« CVSNT est un système de contrôle de version multi-plateforme avancé. Compatible avec CVS, la référence en entreprise, il le complète de nombreuses fonctionnalités. ...CVSNT est Open Source (logiciel libre en licence GNU General Public License). » Ses fonctionnalités incluent l'authentification via tous les protocoles standards de CVS auxquelles s'ajoutent les SSPI spécifiques Windows et Active Directory ; les échanges sécurisés par sserver ou SSPI chiffrés ; il est multi-plateforme (supporté en environnement Windows et Unix) ; la version NT est totalement intégrée avec les systèmes Win32 ; le système MergePoint supprime le besoin de baliser avant de fusionner ; bénéficie d'un développement actif.
--Olivier 5 mai 2007 à 15:04 (CEST): Là encore, j'suis un peu perdu dans la traduction
--Utilisateur:bflorat 6 sept 2008: Fait. Cette traduction nécessite une expérience comme utilisateur de GCL

$

« Meta-CVS is a version control system built around CVS. Although it retains most of the features of CVS, including all of the networking support, it is more capable than CVS, and easier to use. » The features listed on META-CVS's web site include: directory structure versioning, improved file type handling, simpler and more user-friendly branching and merging, support for symbolic links, property lists attached to versioned data, improved third-party data importing, and easy upgrading from stock CVS.
« Meta-CVS est un système de contrôle de version construit autour de CVS. Bien qu'il conserve la plupart des fonctionnalités de CVS, y compris son protocole réseau, il est plus performant que CVS et plus simple. » Les fonctionnalités listées sur le site Web de META-CVS comprennent : le versionnement de la structure des dossiers, une gestion améliorée des types de fichiers, un système de branche et de fusion plus simple et agréable, le support des liens symboliques, des listes de propriétés attachées aux données versionnées, un système d'import de données extérieures et de migration depuis un référentiel CVS.
--Olivier 6 mai 2007 à 12:40 (CEST): pareil
--Utilisateur:bflorat 6 sept 2008: Fait. Pour la derniere phrase, je suis pas 100% sûr mais il me semble qu'il s'agisse de la reprise d'un repository cvs

$

« OpenCM is designed as a secure, high-integrity replacement for CVS. A list of the key features can be found on the features page. While not as 'feature rich' as CVS, it supports some useful things that CVS lacks. Briefly, OpenCM provides first-class support for renames and configuration, cryptographic authentication and access control, and first-class branches. »
« OpenCM a été conçu pour être un substitut sécurisé à CVS en assurant un haut niveau d'intégrité des transactions. Une liste des fonctionnalités clés se trouve sur la page des fonctionnalités. Bien qu'il ne soit pas aussi complet que CVS, il supporte quelques trucs utiles qui manquent à CVS. Pour faire court, OpenCM fournit un support de qualité pour renommer et configurer, une authentification et contrôle d'accès chiffrés et un support avancé des banches. »

$

« PRCS, the Project Revision Control System, is the front end to a set of tools that (like CVS) provide a way to deal with sets of files and directories as an entity, preserving coherent versions of the entire set. ... Its purpose is similar to that of SCCS, RCS, and CVS, but (according to its authors, at least), it is

much simpler than any of those systems. »

« PRCS, le Project Revision Control System, est l'interface d'un ensemble d'outils qui, comme CVS, permettent de gérer des ensembles de fichiers et de dossiers comme une entité propre et en leur assurant une cohérence de version.

... Son but est proche de celui de SCCS, RCS et CVS, mais (d'après leurs auteurs en tout cas), il est beaucoup plus accessible que n'importe lequel de ces systèmes.

$

ArX is a distributed version control system offering branching and merging features, cryptographic data integrity verification, and the ability to publish archives easily on any HTTP server.
ArX est un système de contrôle distribué proposant des fonctionnalités pour gérer les branches et les fusions ou pour assurer l'intégrité des données par chiffrement et qui permet de publier facilement des archives sur un simple serveur HTTP.

$

« SourceJammer is a source control and versioning system written in Java. It consists of a server-side component that maintains the files and version history, and handles check-in, check-out, etc. and other commands; and a client-side component that makes requests of the server and manages the files on the client-side file system. »
« SourceJammer est un système de contrôle de sources et de versions écrit en Java. Il consiste en un composant serveur qui gère les fichiers et l'historique de version et traite les réservations, validations et autres commandes ainsi que d'un composant client qui exécute les requêtes du serveur et gère les fichiers sur le système de fichier du client. »

$

« A 'modern' system that uses changesets over file revisions and distributed operation rather than centralized control. As long as you have an e-mail account you can use FastCST. For larger distribution you only need an FTP server and/or an HTTP server or use the built in 'serve' command to serve your stuff up directly. All changesets are universally unique and have tons of meta-data so you can reject anything you don't [want] before you try it. Merging is done by comparing a merged changeset against the current directory contents, rather than trying to merge it with another changeset. »
« FastCST est un système « moderne » qui manipule des révisions de fichiers groupées et utilise des opérations distribuées plutôt qu'un contrôle centralisé. Il suffit d'une adresse e-mail pour utiliser FastCST. Pour les configurations plus importantes, vous n'avez besoin que d'un simple serveur FTP et/ou d'un serveur HTTP ou d'utiliser la commande intégrée « serve » pour exposer directement votre référentiel. Tous les ensembles de modifications sont totalement uniques et renferment des tonnes de meta-données pour pouvoir rejeter tout ce dont vous ne voulez pas avant d'importer les données. La fusion s'opère par comparaison d'un ensemble de modifications à fusionner avec le contenu actuel du référentiel plutôt qu'avec un autre ensemble de modifications. »

$

« Superversion is a multi-user distributed version control system based on change sets. It aims to be an industrial-strength, open source alternative to commercial solutions that is equally easy to use (or even easier) and similarly powerful. In fact, intuitive and efficient usability has been one of the top priorities in Superversion's development from the very beginning. »

« Supervision est un système de contrôle de versions distribué et multi-utilisateur basé sur les ensembles de modifications. Son but est de proposer une alternative Open Source et de niveau professionnel aux solutions commerciales, aussi simple à utiliser (voire même plus simple) et tout aussi puissante. De fait, une prise en main intuitive et efficace a été l'une des grandes priorités dans le développement de Supervision et ce dès le début du projet.

Appendix B. Free Bug Trackers / Annexe B. Systèmes libres de suivi de bogues

1

No matter what bug tracker a project uses, some developers always like to complain about it. This seems to be more true of bug trackers than of any other standard development tool. I think it's because bug trackers are so visual and so interactive that it's easy to imagine the improvements one would make (if one only had the time), and to describe those improvements out loud. Take the inevitable complaints with a grain of salt—many of the trackers below are pretty good.
Quel que soit le système de suivi de bogues qu'un projet choisit, il y a aura toujours quelqu'un pour s'en plaindre. Ce phénomène existe pour tous les outils de développement classiques, mais il est encore plus présent dans ce cas particulier. Je pense que cela est dû au fait qu'un tel outil est très visuel et interactif et il est donc facile d'imaginer les améliorations qu'on pourrait y apporter (si seulement on en avait le temps) et de les décrire à tout le monde. Il vous faudra donc accepter les inévitables griefs avec un peu de philosophie. La plupart des systèmes proposés ci-dessous sont plutôt bons.

2

Throughout these listings, the word « issue » is used to refer to the items the trackers track. But remember that each system may have its own terminology, in which the corresponding term might be « artifact » or « bug » or something else.
Tout au long de cette liste, le mot « problème » sera utilisé pour décrire les objets suivis par le système de suivi. Mais souvenez vous que chaque système peut employer sa propre terminologie, ainsi vous pourrez également retrouver « artéfact » ou « bogue » ou encore d'autres termes.

3

Bugzilla — http://www.bugzilla.org/

Bugzilla is very popular, actively maintained, and seems to make its users pretty happy. I've been using a modified variant of it in my work for four years now, and like it. It's not highly customizable, but in a odd way, that may be one of its features: Bugzilla installations tend to look pretty much the same wherever they are found, which means many developers are already accustomed to its interface and will feel they are in familiar territory.

Bugzilla — http://www.bugzilla.org/

Bugzilla est très populaire et maintenu activement et semble apprécié des utilisateurs. J'en utilise depuis maintenant quatre ans une version modifiéee et cet outil me plait. Il n'est pas très personnalisable, mais c'est peut-être étrangement l'un de ses avantages : les installations de Bugzilla sont à peu près similaires un peu partout, ce qui signifie que les développeurs sont déjà habitués à son interface et restent donc en terrain connu.

4

GNATS — http://www.gnu.org/software/gnats/

GNU GNATS is one of the oldest open source bug trackers, and is widely used. Its biggest strengths are interface diversity (it can be used not just through a web browser, but also through email or command-line tools), and plaintext issue storage. The fact that all issue data is stored in text files on disk makes it easier to write custom tools to trawl and parse the data (for example, to generate statistical reports). GNATS can also absorb emails automatically by various means, and add them to the appropriate issues based on patterns in the email headers, which makes logging user/developer conversations very easy.

GNATS - http://www.gnu.org/software/gnats/

GNU GNATS est l'un des systèmes de suivi de bogues les plus anciens et est largement utilisé. Son plus gros avantage est la diversité des moyens d'interaction avec le programme (il peut être utilisé non seulement grâce à un navigateur Web, mais aussi par e-mail ou en ligne de commande), ainsi que le stockage des problèmes en texte brut. Le fait que tous les problèmes soient stockés sous forme de fichiers textes sur disque rend plus aisée l'écriture d'outils d'analyse des données (par exemple afin de générer des rapports statistiques). GNATS peut aussi traiter les e-mails par différents moyens et les mettre en relation avec les problèmes correspondants en se basant sur un canevas de l'en-tête, ce qui rend l'enregistrement des conversations utilisateurs/développeurs très simple.

5

RequestTracker (RT) — http://www.bestpractical.com/rt/

RT's web site says « RT is an enterprise-grade ticketing system which enables a group of people to intelligently and efficiently manage tasks, issues, and requests submitted by a community of users, » and that about sums it up. RT has a fairly polished web interface, and seems to have a pretty wide installed base. The interface is a bit visually complex, but that becomes less distracting as you get used to it. RT is licenced under the GNU GPL (for some reason, their web site doesn't make this clear).


RequestTracker (RT) - http://www.bestpractical.com/rt/

RT est présenté comme « un système de niveau professionnel permettant à un groupe de personnes de gérer intelligemment et efficacement les tâches, les problèmes et les demandes émanant de la communauté des utilisateurs », ce qui est un plutôt bon résumé. RT dispose d'une interface Web assez léchée et semble bénéficier d'une large base d'utilisateurs. L'interface est un peu complexe visuellement mais on s'y habitue et elle gêne moins avec le temps. RT est sous licence GNU GPL (ce n'est étrangement pas clairement affiché sur le site Web).

6

Trac — http://trac.edgewall.com/

Trac is a bit more than a bug tracker: it's really an integrated wiki and bug tracking system. It uses wiki linking to connect issues, files, version control changesets, and plain wiki pages. It's fairly simple to set up, and integrates with Subversion (see Appendix A, Free Version Control Systems).

Trac — http://trac.edgewall.com/

Trac est un peu plus qu'un système de suivi de bogues : c'est plutôt un wiki couplé à un système de référencement de bogues. Il utilise les liens wiki pour connecter les problèmes, les fichiers, les modifications sous contrôle de version et les pages wiki classiques. Il est simple à mettre en œuvre et s'intègre avec Subversion (voir l'Annexe A. Solutions libres de gestion de versions).

7

Roundup — http://roundup.sourceforge.net/

Roundup is pretty easy to install (only Python 2.1 or higher is required), and simple to use. It has web, email, and command-line interfaces. The issue data templates and web interface are customizable, as is some of its state-transition logic.

Roundup — http://roundup.sourceforge.net/

Roundup est assez simple à installer (le seul pré-requis est Python 2.1 ou supérieur) et simple d'utilisation. Il possède des interface Web, e-mail et par ligne de commande. Les formulaires de données des incidents et l'interface Web sont personnalisables tout comme une partie de sa logique de changement d'état.

8

Mantis — http://www.mantisbt.org/

Mantis is a web-based bug tracking system, written in PHP, and using MySQL database for storage. It has the features you'd expect. Personally, I find the web interface clean, intuitive, and easy on the eyes.

Mantis — http://www.mantisbt.org/

Mantis est une application Web de système de suivi de bogues écrite en PHP et utilisant MySQL pour le stockage des données. Elle possède les fonctionnalités que vous attendez d'un système de référencement de bogues. Personnellement je trouve l'interface propre, intuitive et agréable à l'œil.

9

Flyspray — http://www.flyspray.org/

Flyspray is a web-based bug tracking system written in PHP. Its web pages describe it as « uncomplicated », and the list of features includes: multiple database support (currently MySQL and PGSQL); multiple projects; 'watching' tasks, with notification of changes (via email or Jabber); comprehensive task history; CSS theming; file attachments; advanced search features (though easy to use); RSS/Atom feeds; wiki and plaintext input; voting; dependency graphs.


Flyspray — http://www.flyspray.org/

Flyspray est une application Web de suivi de bogues écrite en PHP. Sur sa page Web elle est décrite comme « décompliqué » et parmi ses fonctionnalités on retrouve : le support de bases de données multiples (MySQL et PGSQL actuellement), la gestion de projets multiples, la surveillance de tâches avec des alertes de modifications (par e-mail ou Jabber), un historique complet des tâches, des thèmes par feuilles de style CSS, l'ajout de pièces jointes, des outils de recherche avancés (mais toujours simple à utiliser), le support des flux RSS/Atom, la saisie au format wiki ou texte brut, le vote et la représentation graphique des dépendances.

10

Scarab — http://scarab.tigris.org/

Scarab is meant to be a highly customizable, full-featured bug tracker, offering more or less the union of the features offered by other bug trackers: data entry, queries, reports, notifications to interested parties, collaborative accumulation of comments, and dependency tracking.


Scarab - http://scarab.tigris.org/

L'idée de base de Scarab est d'offrir un système de suivi de bogues très complet et personnalisable. Il propose plus ou moins de rassembler les fonctionnalités assurées par les autres systèmes de référencement de bogues : l'entrée de données, les requêtes, les rapports, les notifications aux personnes concernées, la gestion collaborative des commentaires et le suivi des dépendances.


11

It is customizable through administrative web pages. You can have multiple « modules » (projects) active in a single Scarab installation. Within a given module, you can create new issue types (defects, enhancements, tasks, support requests, etc.), and add arbitrary attributes, to tune the tracker to your project's specific requirements.

As of late 2004, Scarab was getting close to its 1.0 release.


La personnalisation se fait au travers de pages Web administratives. Vous pouvez multiplier les « modules » (projets) actifs au sein d'une même installation de Scarab. Dans un module donné vous pouvez créer de nouveaux types de problèmes (défauts, améliorations, tâches, requêtes de support, etc.) et ajouter des attributs arbitraires pour adapter le système de référencement aux besoins spécifiques de votre projet.

Vers fin 2004, Scarab se rapprochait de la sortie de sa version 1.0.

12

Debian Bug Tracking System (DBTS) — http://www.chiark.greenend.org.uk/~ian/debbugs/

The Debian Bug Tracking System is unusual in that all input and manipulation of issues is done via email: each issue gets its own dedicated email address. The DBTS scales pretty well: http://bugs.debian.org/ has 277,741 issues, for example.

Since interaction is done via regular mail clients, an environment which is familiar and easily accessible to most people, the DBTS is good for handling high volumes of incoming reports that need quick classification and response. There are disadvantages too, of course. Developers must invest the time needed to learn the email command system, and users must write their bug reports without a web form to guide them in choosing what information to write. There are tools available to help users send better bug reports, such as the command-line reportbug program or the debbugs-el package for Emacs. But most people won't use these tools; they'll just write email manually, and they may or may not follow the bug reporting guidelines posted by your project.

The DBTS has a read-only web interface, for viewing and querying issues.


Debian Bug Tracking System (DBTS) - http://www.chiark.greenend.org.uk/~ian/debbugs/

Le Debian Bug Tracking System est surprenant par le fait que toutes les saisies ou manipulations de problèmes se font par email : chaque problème se voit attribuer sa propre adresse email. Le DBTS s'adapte très bien à la taille de n'importe quel projet, http://bugs.debian.org/ recense par exemple 277 741 problèmes.

Comme toutes les interactions se font par le client de messagerie classique, un environnement familier et facilement accessible pour la plupart des gens, le DBTS est très adapté à l'enregistrement de nombreux rapports qui nécessitent un tri et une action rapide. Il n'est pas exempt de défaut non plus évidemment. Les développeurs doivent passer par une étape d'apprentissage du système de commande par email et les utilisateurs doivent écrire leurs rapports de bogue sans pouvoir s'appuyer sur un formulaire en ligne pour les assister vis à vis des informations à transmettre. Il existe des outils pour aider les utilisateurs à envoyer de meilleurs rapports de bogues tels que le programme de rapport de bogue en ligne de commande ou le paquet debbugs-el pour Emacs. Mais la plupart des gens n'utiliseront pas ces outils, ils se contenteront d'écrire les emails à la main et ils suivront (ou pas) les consignes pour écrire un bon rapport de bogue données par votre projet.

Le DBTS propose une interface Web en lecture seule pour la consultation et la recherche de problèmes.

14

Trouble-Ticket Trackers

These are more oriented toward help desk ticket tracking than software bug tracking. You'll probably do better with a regular bug tracker, but these are listed for the sake of completeness, and because there could conceivably be unusual projects for which a trouble-ticket system might be more appropriate than a traditional bug tracker.


Suivi des dossiers d'incident

Ces programmes sont plus axés sur le suivi de l'assistance que sur le suivi des bogues. Un système de référencement de bogues sera sans aucun doute plus adapté, mais je vais aussi lister ces programmes afin d'être exhaustif et parce qu'il n'est pas inconcevable qu'un projet exotique tire meilleur parti d'un système de suivi des dossiers d'incident que d'un système de référencement de bogues classique.

15

Bluetail Ticket Tracker (BTT) — http://btt.sourceforge.net/

BTT is somewhere between a standard trouble-ticket tracker and a bug tracker. It offers privacy features that are somewhat unusual among open source bug trackers: users of the system are categorized as Staff, Friend, Customer, or Anonymous, and more or less data is available depending on one's category. It offers some email integration, a command-line interface, and mechanisms for converting emails into tickets. It also has features for maintaining information not associated with any specific ticket, such as internal documentation or FAQs.

Bluetail Ticket Tracker (BTT) — http://btt.sourceforge.net/

BTT se trouve à mi-chemin entre un suivi des dossiers d'incident et un système de référencement de bogues. Il propose des options de confidentialité qui sont plutôt rares parmi les systèmes de référencement de bogues libres : les utilisateurs sont rangés dans les catégories Personnel, Ami, Client et Anonyme et la quantité d'information disponible dépend de la catégorie à laquelle vous appartenez. On retrouve l'intégration des emails, une interface en ligne de commande et des mécanismes de conversion des emails en dossiers. Il propose également des outils pour suivre des informations qui ne sont pas liées à des dossiers particuliers comme la documentation interne ou les FAQs.

Appendix C. Why Should I Care What Color the Bikeshed Is? / Annexe C. Pourquoi je devrais me soucier de la couleur de l'abri à vélo ?

You shouldn't; it doesn't really matter, and you have better things to spend your time on.

Poul-Henning Kamp's famous « bikeshed » post (an excerpt from which appears in Chapter 6, Communications) is an eloquent disquisition on what tends to go wrong in group discussions. It is reprinted here with his permission. The orginal URL is
http://www.freebsd.org/cgi/getmsg.cgi?fetch=506636+517178+/usr/local/www/db/text/1999/freebsd-hackers/19991003.freebsd-hackers.

Subject: A bike shed (any colour will do) on greener grass...

From: Poul-Henning Kamp <phk@freebsd.org>

Date: Sat, 02 Oct 1999 16:14:10 +0200

Message-ID: <18238.938873650@critter.freebsd.dk>

Sender: phk@critter.freebsd.dk

Bcc: Blind Distribution List: ;

MIME-Version: 1.0

[bcc'ed to committers, hackers]


Vous ne devriez pas ; c'est pas vraiment important et vous avez mieux à faire.

Le fameux message « L'abri à vélo » de Poul-Henning Kamp (dont un extrait apparaît dans le Chapitre 6, Communication) est une métaphore éloquente de ce qui peut mal tourner dans une discussion de groupe. Il est reproduit ici avec son autorisation. L'adresse originale est
http://www.freebsd.org/cgi/getmsg.cgi?fetch=506636+517178+/usr/local/www/db/text/1999/freebsd-hackers/19991003.freebsd-hackers.


Sujet : Un abri à vélo (peu importe la couleur) sur de l'herbe plus verte...

De : Poul-Henning Kamp <phk@freebsd.org>

Date : Samedi, 2 Oct 1999 16:14:10 +0200

Message-ID: <18238.938873650@critter.freebsd.dk>

Expéditeur : phk@critter.freebsd.dk

Bcc: Liste de distribution invisible ;

MIME-Version: 1.0

[copie envoyée aux committers et hackers]


My last pamphlet was sufficiently well received that I was not scared away from sending another one, and today I have the time

and inclination to do so.


Mon dernier pamphlet a été suffisamment bien reçu pour ne pas me décourager d'en pondre un autre et aujourd'hui j'ai le temps et l'envie de le faire.

I've had a little trouble with deciding on the right distribution of this kind of stuff, this time it is bcc'ed to committers and hackers, that is probably the best I can do. I'm not subscribed

to hackers myself but more on that later.


J'ai eu un peu de mal à décider des destinataires de ce genre d'e-mail, cette fois j'ai mis en copie tous les committers et les hackers, c'est certainement ce que je peux faire de mieux. Je ne suis pas inscrit sur la liste des hackers, mais on en reparlera.

The thing which have triggered me this time is the « sleep(1) should do fractional seconds » thread, which have pestered our lives for many days now, it's probably already a couple of weeks, I can't

even be bothered to check.


Ce qui vous vaut ce mail cette fois est le sujet « sleep(1) devrait faire des secondes fractionnées » qui nous pourrit la vie depuis plusieurs jours maintenant, voire même plusieurs semaines, j'ai même pas envie de prendre la peine de vérifier.
To those of you who have missed this particular thread: Congratulations.


Si vous avez manqué ce sujet : Félicitations.

It was a proposal to make sleep(1) DTRT if given a non-integer argument that set this particular grass-fire off. I'm not going to say anymore about it than that, because it is a much smaller item than one would expect from the length of the thread, and it has already received far more attention than some of the *problems*

we have around here.


C'est une proposition de rendre sleep(1) DTRT si l'argument entré n'est pas un nombre entier qui a mis le feu aux poudres. Je n'en dirai pas plus parce que c'est vraiment pas aussi important que ne le laisse penser la longueur du sujet et il a déjà reçu bien plus d'attention que certain des « problèmes » qu'on a ici.

The sleep(1) saga is the most blatant example of a bike shed discussion we have had ever in FreeBSD. The proposal was well thought out, we would gain compatibility with OpenBSD and NetBSD,

and still be fully compatible with any code anyone ever wrote.


La saga sleep(1) est l'exemple le plus marquant de discussion sur la couleur de l'abri à vélo que nous aillons eu sur FreeBSD. La proposition en elle-même est bonne, cela nous permettrait d'être compatible avec OpenBSD et NetBSD tout en gardant la compatibilité avec chaque morceau de code déjà écrit.

Yet so many objections, proposals and changes were raised and launched that one would think the change would have plugged all the holes in swiss cheese or changed the taste of Coca Cola or

something similar serious.


Et pourtant il y a eu tellement d'objections, de propositions et de modifications soulevées et proposées qu'on aurait cru qu'on était en train de décider de boucher les trous de l'emmenthal ou de modifier le goût du Coca Cola ou quelque chose d'autre d'aussi grave.
« What is it about this bike shed ? » Some of you have asked me.
« Que vient faire là l'abri à vélo ? » m'a-t-on demandé.

It's a long story, or rather it's an old story, but it is quite short actually. C. Northcote Parkinson wrote a book in the early 1960'ies, called « Parkinson's Law », which contains a lot of insight

into the dynamics of management.
C'est une longue histoire, ou plutôt une vieille histoire, mais très brève en réalité. C. Northcote Parkinson a écrit un livre dans les années 60 intitulé « La Loi de Parkinson » qui contient des opinions intéressantes sur la dynamique du management.

You can find it on Amazon, and maybe also in your dads book-shelf, it is well worth its price and the time to read it either way,

if you like Dilbert, you'll like Parkinson.
Vous pouvez le trouver sur Amazon et peut-être dans la bibliothèque de votre père. En tout cas il vaut bien son prix et vous ne regretterez pas le temps passé à le lire et si vous aimez Dilbert vous aimerez Parkinson.

Somebody recently told me that he had read it and found that only about 50% of it applied these days. That is pretty darn good I would say, many of the modern management books have hit-rates a

lot lower than that, and this one is 35+ years old.
Quelqu'un ma récemment dit qu'il l'a lu et qu'il trouve que seulement environ 50% de ce qu'il y a trouvé s'applique aujourd'hui. Moi je trouve ça plutôt pas mal, beaucoup de livres modernes sur le management sont moins précis que ça et ce livre à plus de 35 ans.

In the specific example involving the bike shed, the other vital component is an atomic power-plant, I guess that illustrates the

age of the book.
Dans cet exemple précis concernant l'abri à vélos l'autre élément important est une centrale nucléaire, pour vous donner une idée de l'âge de l'ouvrage.

Parkinson shows how you can go in to the board of directors and get approval for building a multi-million or even billion dollar atomic power plant, but if you want to build a bike shed you will

be tangled up in endless discussions.
Parkinson montre comment vous pouvez obtenir du bureau exécutif l'accord pour construire une centrale nucléaire qui coûte plusieurs millions, voire un milliard de dollars, mais si vous voulez construire un abri à vélos, vous voilà embarqué dans des discussions sans fin.

Parkinson explains that this is because an atomic plant is so vast, so expensive and so complicated that people cannot grasp it, and rather than try, they fall back on the assumption that somebody else checked all the details before it got this far. Richard P. Feynmann gives a couple of interesting, and very much to the point,

examples relating to Los Alamos in his books.
Parkinson explique que c'est parce que la centrale nucléaire est tellement vaste, tellement chère et tellement complexe que les gens ne peuvent pas l'appréhender et, plutôt que de s'y essayer, ils préfèrent supposer que quelqu'un d'autre a pris la peine de vérifier tous les détails avant d'aller plus loin. Richard P. Feynmann donne dans son livre quelques exemples intéressants et très pertinents concernant Los Alamos.

A bike shed on the other hand. Anyone can build one of those over a weekend, and still have time to watch the game on TV. So no matter how well prepared, no matter how reasonable you are with your proposal, somebody will seize the chance to show that he is

doing his job, that he is paying attention, that he is *here*.
De l'autre côté, nous avons l'abri à vélos. N'importe qui peut en construire un en un week-end, tout en ayant le temps d'aller regarder le match à la télé. Aussi bien préparée et raisonnable que soit votre proposition, quelqu'un saisira cette opportunité pour montrer qu'il fait son boulot, qu'il veille au grain, qu'il est bien présent.

In Denmark we call it « setting your fingerprint ». It is about personal pride and prestige, it is about being able to point somewhere and say « There! *I* did that. » It is a strong trait in politicians, but present in most people given the chance. Just

think about footsteps in wet cement.
Au Danemark on appelle ça laisser son empreinte. C'est une question d'amour propre et de prestige qui consiste à désigner quelque chose du doigt en disant : « Voilà ! C'est moi qui l'ai fait. » C'est une caractéristique très présente chez les politiciens, mais également chez toute personne à qui on en donne l'occasion. Il n'y a qu'à voir les traces de pas dans le ciment frais.

I bow my head in respect to the original proposer because he stuck to his guns through this carpet blanking from the peanut gallery, and the change is in our tree today. I would have turned my back and walked away after less than a handful of messages in that

thread.
Je suis en admiration devant celui qui a proposé l'idée à l'origine car il a défendu sa vision becs et ongles et la modification est intégrée dans notre arbre maintenant. J'aurai abandonné après seulement quelques messages dans ce sujet.

And that brings me, as I promised earlier, to why I am not subscribed

to -hackers:
Ce qui nous amène à, comme promis précédemment, la raison pour laquelle je me désincris de -hackers :

I un-subscribed from -hackers several years ago, because I could not keep up with the email load. Since then I have dropped off

several other lists as well for the very same reason.
Je me suis désinscrit de -hackers il y a quelques années parce que je ne pouvais plus suivre la quantité d'e-mails reçus. Depuis j'ai quitté d'autres listes pour la même raison.

And I still get a lot of email. A lot of it gets routed to /dev/null by filters: People like [omitted] will never make it onto my screen, commits to documents in languages I don't understand likewise, commits to ports as such. All these things and more go

the winter way without me ever even knowing about it.
Et je reçois toujours beaucoup d'e-mails. Une grande partie est directement redirigée vers /dev/null par des filtres : des gens comme [masqué] n'apparaîtront jamais sur mon écran, les ajouts à des documents dans les langages que je ne comprends pas non plus, les ajouts à des portages : idem. Toutes ces choses passent sans que je ne les vois jamais.

But despite these sharp teeth under my mailbox I still get too much

email.
Mais malgré ces pièges acérés devant ma boîte aux lettres je reçois toujours trop d'e-mails.
This is where the greener grass comes into the picture:
J'en arrive donc à l'herbe plus verte :

I wish we could reduce the amount of noise in our lists and I wish we could let people build a bike shed every so often, and I don't

really care what colour they paint it.
J'aimerai que l'on puisse réduire le bruit de fond sur nos listes et j'aimerai qu'on laisse les gens construire des abris à vélo de temps en temps et je me fous pas mal de la couleur qu'ils utiliseront pour les peindre.

The first of these wishes is about being civil, sensitive and

intelligent in our use of email.
Le premier de mes souhaits relève de la civilité, de la compréhension et de l'intelligence dans notre usage des e-mails.

If I could concisely and precisely define a set of criteria for when one should and when one should not reply to an email so that everybody would agree and abide by it, I would be a happy man, but

I am too wise to even attempt that.
Si je pouvais définir un ensemble de critères de manière précise et concise pour que les gens sachent quand répondre ou ne pas répondre à un e-mail et que tout le monde soit d'accord et s'y tienne je serai un homme heureux, mais la sagesse me dit que je perdrais mon temps.

But let me suggest a few pop-up windows I would like to see mail-programs implement whenever people send or reply to email

to the lists they want me to subscribe to:
Mais je peux vous suggérer quelques pop-ups que j'aimerai voir apparaître dans les outils de messagerie qui s'ouvriraient quand les gens envoient ou répondent à un e-mail sur une liste à laquelle je devrais m'inscrire :
     +------------------------------------------------------------+
     | Your email is about to be sent to several hundred thousand |
     | people, who will have to spend at least 10 seconds reading |
     | it before they can decide if it is interesting.  At least  |
     | two man-weeks will be spent reading your email.  Many of   |
     | the recipients will have to pay to download your email.    |
     |                                                            |
     | Are you absolutely sure that your email is of sufficient   |
     | importance to bother all these people ?                    |
     |                                                            |
     |                  [YES]  [REVISE]  [CANCEL]                 |
     +------------------------------------------------------------+


     +-------------------------------------------------------------+
     | Votre email va être envoyé à plusieurs centaines de milliers |
     | de personnes qui devront prendre au moins 10 secondes pour  |
     | décider de son intérêt. Cela représente l'équivalent de deux|
     | semaines de lecture. La plupart des destinataires devront   |
     | en plus payer pour télécharger votre email.                 |
     |                                                             |
     | Êtes-vous vraiment sûr que votre email est d'une importance |
     | suffisante pour déranger tous ces gens ?                    |
     |                                                             |
     |                  [OUI]  [MODIFIER]  [ANNULER]               |
     +-------------------------------------------------------------+



     +------------------------------------------------------------+
     | Warning:  You have not read all emails in this thread yet. |
     | Somebody else may already have said what you are about to  |
     | say in your reply.  Please read the entire thread before   |
     | replying to any email in it.                               |
     |                                                            |
     |                      [CANCEL]                              |
     +------------------------------------------------------------+


     +------------------------------------------------------------+
     | Attention :  Vous n'avez peut-être encore pas lu tous les  |
     | emails de ce sujet. Quelqu'un d'autre peut déjà avoir dit  |
     | ce que vous vous apprêtez à dire dans votre réponse.       |
     | Veuillez lire le sujet entièrement avant de répondre.      |
     |                                                            |
     |                      [ANNULER]                             |
     +------------------------------------------------------------+


     +------------------------------------------------------------+
     | Warning:  Your mail program have not even shown you the    |
     | entire message yet.  Logically it follows that you cannot  |
     | possibly have read it all and understood it.               |
     |                                                            |
     | It is not polite to reply to an email until you have       |
     | read it all and thought about it.                          |
     |                                                            |
     | A cool off timer for this thread will prevent you from     |
     | replying to any email in this thread for the next one hour |
     |                                                            |
     |                       [Cancel]                             |
     +------------------------------------------------------------+


     +------------------------------------------------------------+
     | Attention :  Votre programme de messagerie ne vous a même  |
     | pas encore montré tout le message. Il en découle que vous  |
     | n'avez pas pu le lire et le comprendre entièrement.        |
     |                                                            |
     | Il n'est pas poli de répondre à un e-mail avant de l'avoir |
     | entièrement lu et d'y avoir réfléchi.                      |
     |                                                            |
     | Un minuteur sur ce sujet vous empêchera de répondre à ce   |
     | sujet dans l'heure qui suit.                               |
     |                                                            |
     |                       [Annuler]                            |
     +------------------------------------------------------------+


     +------------------------------------------------------------+
     | You composed this email at a rate of more than N.NN cps    |
     | It is generally not possible to think and type at a rate   |
     | faster than A.AA cps, and therefore you reply is likely to |
     | incoherent, badly thought out and/or emotional.            |
     |                                                            |
     | A cool off timer will prevent you from sending any email   |
     | for the next one hour.                                     |
     |                                                            |
     |                       [Cancel]                             |
     +------------------------------------------------------------+


     +----------------------------------------------------------+
     | Vous avez composé cet email à une vitesse supérieure à   |
     | x.xx cps. On ne peut normalement pas penser et écrire à  |
     | une vitesse supérieure à y.yy cps, il est donc probable  |
     | que votre réponse soit incohérente, mal conçue et/ou     |
     | écrite sous le coup de l'émotion.                        |                                        
     |                                                          |
     | Un minuteur vous empêchera d'envoyer un autre email      |
     | pendant l'heure qui suit.                                |
     |                                                          |
     |                       [Annuler]                          |
     +----------------------------------------------------------+

The second part of my wish is more emotional. Obviously, the capacities we had manning the unfriendly fire in the sleep(1) thread, despite their many years with the project, never cared enough to do this tiny deed, so why are they suddenly so enflamed

by somebody else so much their junior doing it ?
La deuxième partie de mon souhait est plus émotionnelle. Évidemment, les anciens qui auraient dû calmer les débats sur le sujet sleep(1), malgré leurs années d'expérience sur le projet, n'ont jamais pris la peine de faire cette tâche toute simple, alors pourquoi montent-ils sur leurs grands chevaux quand quelqu'un de beaucoup plus novice qu'eux le fait ?

I wish I knew.

I do know that reasoning will have no power to stop such « reactionaire conservatism ». It may be that these people are frustrated about their own lack of tangible contribution lately or it may be a bad

case of « we're old and grumpy, WE know how youth should behave ».

Si seulement je savais.

Ce que je sais par contre c'est que le raisonnement ne pourra pas arrêter un tel « conservatisme réactionnaire ». Il est possible que ces personnes soient frustrées par leur propre manque de contribution ces derniers temps ou alors on pourrait avoir affaire à un mauvais cas de « nous sommes vieux et grognons, NOUS savons comment les jeunes devraient se comporter ».

Either way it is very unproductive for the project, but I have no suggestions for how to stop it. The best I can suggest is to refrain from fuelling the monsters that lurk in the mailing lists: Ignore

them, don't answer them, forget they're there.
Dans un cas comme dans l'autre c'est carrément contre productif mais je n'ai aucune suggestion à faire pour y remédier. Je pense que la meilleure chose à faire est de ne pas nourrir les trolls qui rodent dans les listes de diffusion : ignorez les, n'y répondez pas, oubliez leur existence.

I hope we can get a stronger and broader base of contributors in FreeBSD, and I hope we together can prevent the grumpy old men and the [omitted]s of the world from chewing them up, spitting them out and scaring them away before they ever get a leg to the

ground.
J'espère que l'on pourra développer une base de contributeurs plus large et plus forte pour FreeBSD et j'espère qu'ensemble nous pourrons éviter que les vieux grincheux et que les [censuré] les mâchent, les recrachent et les fassent fuir avant même qu'ils n'atterrissent vraiment sur le projet.

For the people who have been lurking out there, scared away from participating by the gargoyles: I can only apologise and encourage you to try anyway, this is not the way I want the environment in the project to be.

Poul-Henning

À tous ceux qui traînent dans l'ombre, qui ne participent pas car trop effrayés par les gargouilles : je ne peux que vous présenter nos excuses et vous encourager à essayer malgré tout, si ça ne tenez qu'à moi l'ambiance dans le projet ne serait pas telle qu'elle l'est.

Poul-Henning

Appendix D. Example Instructions for Reporting Bugs / Exemple d'instructions pour les rapports de bogues

This is a lightly-edited copy of the Subversion project's online instructions to new users on how to report bugs. See the section called « Treat Every User as a Potential Volunteer » in Chapter 8, Managing Volunteers for why it is important that a project have such instructions. The original document is located at http://svn.collab.net/repos/svn/trunk/www/bugs.html.
Ceci est une version légèrement modifiée des instructions destinées aux nouveaux utilisateurs pour les rapports de bogues que l'on peut trouver sur le site du projet Subversion. Reportez vous à la partie « Considérez tous les utilisateurs comme des volontaires potentiels » dans le Chapitre 8, Encadrer les volontaires pour plus de détails sur l'importance de telles instructions. Vous pouvez retrouver ce document dans sa version originale à l'adresse http://svn.collab.net/repos/svn/trunk/www/bugs.html.


Reporting Bugs in Subversion


Rapporter un bogue dans Subversion


This document tells how and where to report bugs. (It is not a list of all outstanding bugs — you can get that here instead.)
Ce document vous indique comment et où rapporter les bogues (Ce n'est pas une liste de bogues, vous pouvez la trouver ici par contre).


Where To Report A Bug


Où rapporter un bogue


  • If the bug is in Subversion itself, send mail to users@subversion.tigris.org. Once it's confirmed as a bug, someone, possibly you, can enter it into the issue tracker. (Or if you're pretty sure about the bug, go ahead and post directly to our development list, dev@subversion.tigris.org. But if you're not sure, it's better to post to users@ first; someone there can tell you whether the behavior you encountered is expected or not.)
  • Si le bogue est dans Subversion lui-même, envoyez un mail à users@subversion.tigris.org. Une fois que le bogue est confirmé, quelqu'un, peut-être vous, peut l'inscrire dans le suivi des problèmes. (Ou si vous êtes surs de vous, envoyez le directement à notre liste de développement : dev@subversion.tigris.org. Mais si vous n'êtes pas certain, il vaut mieux l'envoyer à users@ en premier, quelqu'un sera capable de vous dire si le comportement que vous avez rencontré est normal ou pas.)
  • If the bug is in the APR library, please report it to both of these mailing lists: dev@apr.apache.org, dev@subversion.tigris.org.
  • Si le bogue se trouve dans une librairie APR, rapportez le s'il vous plaît à ces deux listes de diffusions : dev@apr.apache.org et dev@subversion.tigris.org.
  • If the bug is in the Neon HTTP library, please report it to: neon@webdav.org, dev@subversion.tigris.org.
  • Si le bogue concerne la librairie Neon HTTP, rapportez le s'il vous plaît à : neon@webdav.org et dev@subversion.tigris.org.
  • If the bug is in Apache HTTPD 2.0, please report it to both of these mailing lists: dev@httpd.apache.org, dev@subversion.tigris.org. The Apache httpd developer mailing list is high-traffic, so your bug report post has the possibility to be overlooked. You may also file a bug report at http://httpd.apache.org/bug_report.html.
  • Si le bogue est dans Apache HTTPD 2.0, rapportez le s'il vous plaît à ces deux listes de diffusion : dev@httpd.apache.org et dev@subversion.tigris.org. La liste de diffusion Apache httpd génère beaucoup de trafic et il est possible que votre rapport de bogue passe inaperçu. Vous pouvez également enregistrer un rapport de bogue à l'adresse http://httpd.apache.org/bug_report.html.
  • If the bug is in your rug, please give it a hug and keep it snug.
  • If the bug is in your rug, please give it a hug and keep it snug. [Si l'insecte (bug) est sous votre tapis, faites lui un gros câlin et gardez le bien au chaud]


How To Report A Bug



Comment rapporter un bogue



First, make sure it's a bug. If Subversion does not behave the way you expect, look in the documentation and mailing list archives for evidence that it should behave the way you expect. Of course, if it's a common-sense thing, like Subversion just destroyed your data and caused smoke to pour out of your monitor, then you can trust your judgement. But if you're not sure, go ahead and ask on the users mailing list first, users@subversion.tigris.org, or ask in IRC,

irc.freenode.net, channel #svn.
Assurez vous déjà que c'est bien un bogue. Si Subversion ne réagit pas comme vous l'attendiez, vérifiez dans la documentation ou dans les archives des listes de diffusion des indices prouvant qu'il devrait réagir comme vous l'attendiez. Évidemment si l'anomalie est évidente, par exemple si Subversion a détruit vos données et a fait fumer votre moniteur vous pouvez vous fier à votre jugement. Mais en cas de doute n'hésitez pas à poser votre question sur la liste de diffusion en premier, users@subversion.tigris.org, ou sur IRC, irc.freenode.net dans la canal #svn.

Once you've established that it's a bug, the most important thing you can do is come up with a simple description and reproduction

recipe. For example, if the bug, as you initially found it, involves five files over ten commits, try to make it happen with just one file and one commit. The simpler the reproduction recipe, the more likely a developer is to successfully reproduce the bug and fix it.
Quand vous êtes sûr et certain que c'est un bogue, la meilleure chose que vous puissiez faire est d'en faire un description simple en présentant une méthode de reproduction. Par exemple, si la première fois que vous avez découvert le bogue il affectait cinq fichiers sur dix commits essayez de le reproduire avec seulement un fichier et un commit. Plus la méthode de reproduction est simple plus il y a de chance qu'un développeur arrive à le reproduire et le corrige.

When you write up the reproduction recipe, don't just write a prose description of what you did to make the bug happen. Instead, give a

literal transcript of the exact series of commands you ran, and their output. Use cut-and-paste to do this. If there are files involved, be sure to include the names of the files, and even their content if you think it might be relevant. The very best thing is to package your reproduction recipe as a script, that helps us a lot.
Lorsque vous rédigez la méthode de reproduction, ne vous contentez pas d'écrire une prose décrivant ce que vous faisiez qui a déclenché le bogue. Il vaut mieux que vous retranscriviez exactement la série de commandes que vous avez utilisées et leurs résultats. Servez-vous du copier/coller pour ça. Si des fichiers sont impliqués, prenez bien soin d'ajouter leur nom voir même leur contenu si vous pensez que cela peut être important. Le mieux que vous puissiez faire est de créer un script avec votre méthode de reproduction, ça nous aide beaucoup.

Quick sanity check: you *are* running the most recent version of Subversion, right? :-) Possibly the bug has already been fixed; you

should test your reproduction recipe against the most recent Subversion development tree.
Juste comme ça : vous êtes sûr d'utiliser la toute dernière version de Subversion, non ? :-) Il est possible que le bogue ait été corrigé, vous devriez tester votre méthode de reproduction avec l'arbre de développement de Subversion le plus récent.

In addition to the reproduction recipe, we'll also need a complete description of the environment in which you reproduced the bug. That

means:
En plus de la méthode de reproduction nous aurons également besoin d'une description complète de l'environnement sous lequel vous avez reproduit le bogue. C'est-à-dire :
  • Your operating system
  • The release and/or revision of Subversion
  • The compiler and configuration options you built Subversion with
  • Any private modifications you made to your Subversion
  • The version of Berkeley DB you're running Subversion with, if any
  • Anything else that could possibly be relevant. Err on the sideof too much information, rather than too little.
  • Votre système d'exploitation
  • La version et/ou la révision de Subversion
  • Le compileur et les options de configuration que vous avez utilisés pour compiler Subversion
  • Toute modification que vous avez apportée à Subversion
  • La version de la Berkeley DB que vous utilisez avec Subversion le cas échéant
  • Tout autre chose qui pourrait être importante. Il vaut mieux recevoir trop d'informations que pas assez.

Once you have all this, you're ready to write the report. Start out with a clear description of what the bug is. That is, say how you expected Subversion to behave, and contrast that with how it actually behaved. While the bug may seem obvious to you, it may not be so

obvious to someone else, so it's best to avoid a guessing game. Follow that with the environment description, and the reproduction recipe. If you also want to include speculation as to the cause, and even a patch to fix the bug, that's great — see http://svn.collab.net/repos/svn/trunk/www/hacking.html#patches for instructions on sending patches.
Une fois que vous aurez réuni tous ces éléments vous serez prêt à rédiger le rapport. Commencez en donnant une description claire de ce en quoi consiste le bogue. C'est à dire que vous devez décrire comment vous attendiez que Subversion se comporte et confrontez cela au comportement que vous avez effectivement remarqué. Même si le bogue peut vous sembler évident, il ne l'est pas forcément pour quelqu'un d'autre, il vaut donc mieux éviter de jouer aux devinettes. Continuez ensuite avec la description de l'environnement et avec la méthode de reproduction. Si vous voulez inclure des idées quant à la cause ou même un correctif pour le bogue c'est génial, voir http://svn.collab.net/repos/svn/trunk/www/hacking.html#patches pour les instructions pour l'envoi de correctifs.

Post all of this information to dev@subversion.tigris.org, or if you have already been there and been asked to file an issue, then go to the Issue Tracker and follow the instructions there. Thanks. We know it's a lot of work to file an effective bug report,but a good report can save hours of a developer's time, and make the

bug much more likely to get fixed.

Envoyez toutes ces informations à dev@subversion.tigris.org, ou, si vous avez déjà contacté la liste de développeurs et qu'on vous a demandé de rapporter le problème rendez vous sur le système de référencement de problèmes et suivez les instructions.

Merci. Nous savons que cela demande beaucoup de travail de faire un rapport de bogue efficace, mais un bon rapport de bogue fait gagner à nos développeurs beaucoup de temps et augmente la probabilité que le bogue soit corrigé.

Appendix E. Copyright / Annexe E. Copyright

This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. A summary of the license is given below, followed by the full legal text. If you wish to distribute some or all of this work under different terms, please contact the author, Karl Fogel

<kfogel@red-bean.com>.

Ce travail est publié sous licence Creative Commons Attribution-ShareAlike License. Pour obtenir une copie de cette licence, visitez http://creativecommons.org/licenses/by-sa/2.0/fr/legalcode ou envoyez un courrier à Creative Commons Gipsstrasse 12 10119 Berlin Germany ou Creative Commons 171 Second St, Suite 300 San Francisco, CA 94105 USA. Un résumé de cette licence se trouve ci-dessous, suivi par le texte légal complet. Si vous souhaitez distribuer cette œuvre sous des termes différents, en partie ou en entier, veuillez contacter l'auteur, Karl Fogel

<kfogel@red-bean.com>.

-*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*-

Vous êtes libres :

   * de reproduire, distribuer et communiquer cette création au public
   * de modifier cette création

Selon les conditions suivantes :

   * Paternité. Vous devez citer le nom de l'auteur original de la manière indiquée par l'auteur de l'œuvre ou le titulaire des droits qui vous confère cette autorisation (mais pas d'une manière qui suggèrerait qu'ils vous soutiennent ou approuvent votre utilisation de l'œuvre).
   * Partage des Conditions Initiales à l'Identique. Si vous modifiez, transformez ou adaptez cette création, vous n'avez le droit de distribuer la création qui en résulte que sous un contrat identique à celui-ci.
   * À chaque réutilisation ou distribution de cette création, vous devez faire apparaître clairement au public les conditions contractuelles de sa mise à disposition. La meilleure manière de procéder est d'apposer un lien vers cette page Web.
   * Chacune de ces conditions peut être levée si vous obtenez l'autorisation du titulaire des droits sur cette œuvre.
   * Rien dans ce contrat ne diminue ou ne restreint le droit moral de l'auteur ou des auteurs.


-*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*- -*-

  Creative Commons Legal Code:   Paternité - Partage Des Conditions Initiales A l'Identique 2.0


Creative Commons n'est pas un cabinet d'avocats et ne fournit pas de services de conseil juridique. La distribution de la présente version de ce contrat ne crée aucune relation juridique entre les parties au contrat présenté ci-après et Creative Commons. Creative Commons fournit cette offre de contrat-type en l'état, à seule fin d'information. Creative Commons ne saurait être tenu responsable des éventuels préjudices résultant du contenu ou de l'utilisation de ce contrat.

Contrat

L'Œuvre (telle que définie ci-dessous) est mise à disposition selon les termes du présent contrat appelé Contrat Public Creative Commons (dénommé ici « CPCC » ou « Contrat »). L'Œuvre est protégée par le droit de la propriété littéraire et artistique (droit d'auteur, droits voisins, droits des producteurs de bases de données) ou toute autre loi applicable. Toute utilisation de l'Œuvre autrement qu'explicitement autorisée selon ce Contrat ou le droit applicable est interdite.

L'exercice sur l'Œuvre de tout droit proposé par le présent contrat vaut acceptation de celui-ci. Selon les termes et les obligations du présent contrat, la partie Offrante propose à la partie Acceptante l'exercice de certains droits présentés ci-après, et l'Acceptant en approuve les termes et conditions d'utilisation.

1. Définitions

  1. « Œuvre » : œuvre de l'esprit protégeable par le droit de la propriété littéraire et artistique ou toute loi applicable et qui est mise à disposition selon les termes du présent Contrat.
  2. « Œuvre dite Collective » : une œuvre dans laquelle l'œuvre, dans sa forme intégrale et non modifiée, est assemblée en un ensemble collectif avec d'autres contributions qui constituent en elles-mêmes des œuvres séparées et indépendantes. Constituent notamment des Œuvres dites Collectives les publications périodiques, les anthologies ou les encyclopédies. Aux termes de la présente autorisation, une œuvre qui constitue une Œuvre dite Collective ne sera pas considérée comme une Œuvre dite Dérivée (telle que définie ci-après).
  3. « Œuvre dite Dérivée » : une œuvre créée soit à partir de l'Œuvre seule, soit à partir de l'Œuvre et d'autres œuvres préexistantes. Constituent notamment des Œuvres dites Dérivées les traductions, les arrangements musicaux, les adaptations théâtrales, littéraires ou cinématographiques, les enregistrements sonores, les reproductions par un art ou un procédé quelconque, les résumés, ou toute autre forme sous laquelle l'Œuvre puisse être remaniée, modifiée, transformée ou adaptée, à l'exception d'une œuvre qui constitue une Œuvre dite Collective. Une Œuvre dite Collective ne sera pas considérée comme une Œuvre dite Dérivée aux termes du présent Contrat. Dans le cas où l'Œuvre serait une composition musicale ou un enregistrement sonore, la synchronisation de l'œuvre avec une image animée sera considérée comme une Œuvre dite Dérivée pour les propos de ce Contrat.
  4. « Auteur original » : la ou les personnes physiques qui ont créé l'Œuvre.
  5. « Offrant » : la ou les personne(s) physique(s) ou morale(s) qui proposent la mise à disposition de l'Œuvre selon les termes du présent Contrat.
  6. « Acceptant » : la personne physique ou morale qui accepte le présent contrat et exerce des droits sans en avoir violé les termes au préalable ou qui a reçu l'autorisation expresse de l'Offrant d'exercer des droits dans le cadre du présent contrat malgré une précédente violation de ce contrat.
  7. « Options du Contrat » : les attributs génériques du Contrat tels qu'ils ont été choisis par l'Offrant et indiqués dans le titre de ce Contrat : Paternité - Pas d'Utilisation Commerciale - Partage Des Conditions Initiales A l'Identique.

2. Exceptions aux droits exclusifs. Aucune disposition de ce contrat n'a pour intention de réduire, limiter ou restreindre les prérogatives issues des exceptions aux droits, de l'épuisement des droits ou d'autres limitations aux droits exclusifs des ayants droit selon le droit de la propriété littéraire et artistique ou les autres lois applicables.

3. Autorisation. Soumis aux termes et conditions définis dans cette autorisation, et ceci pendant toute la durée de protection de l'Œuvre par le droit de la propriété littéraire et artistique ou le droit applicable, l'Offrant accorde à l'Acceptant l'autorisation mondiale d'exercer à titre gratuit et non exclusif les droits suivants :

  1. reproduire l'Œuvre, incorporer l'Œuvre dans une ou plusieurs Œuvres dites Collectives et reproduire l'Œuvre telle qu'incorporée dans lesdites Œuvres dites Collectives;
  2. créer et reproduire des Œuvres dites Dérivées;
  3. distribuer des exemplaires ou enregistrements, présenter, représenter ou communiquer l'Œuvre au public par tout procédé technique, y compris incorporée dans des Œuvres Collectives;
  4. distribuer des exemplaires ou phonogrammes, présenter, représenter ou communiquer au public des Œuvres dites Dérivées par tout procédé technique;
  5. lorsque l'Œuvre est une base de données, extraire et réutiliser des parties substantielles de l'Œuvre.

Les droits mentionnés ci-dessus peuvent être exercés sur tous les supports, médias, procédés techniques et formats. Les droits ci-dessus incluent le droit d'effectuer les modifications nécessaires techniquement à l'exercice des droits dans d'autres formats et procédés techniques. L'exercice de tous les droits qui ne sont pas expressément autorisés par l'Offrant ou dont il n'aurait pas la gestion demeure réservé, notamment les mécanismes de gestion collective obligatoire applicables décrits à l'article 4(d).

4. Restrictions. L'autorisation accordée par l'article 3 est expressément assujettie et limitée par le respect des restrictions suivantes :

  1. L'Acceptant peut reproduire, distribuer, représenter ou communiquer au public l'Œuvre y compris par voie numérique uniquement selon les termes de ce Contrat. L'Acceptant doit inclure une copie ou l'adresse Internet (Identifiant Uniforme de Ressource) du présent Contrat à toute reproduction ou enregistrement de l'Œuvre que l'Acceptant distribue, représente ou communique au public y compris par voie numérique. L'Acceptant ne peut pas offrir ou imposer de conditions d'utilisation de l'Œuvre qui altèrent ou restreignent les termes du présent Contrat ou l'exercice des droits qui y sont accordés au bénéficiaire. L'Acceptant ne peut pas céder de droits sur l'Œuvre. L'Acceptant doit conserver intactes toutes les informations qui renvoient à ce Contrat et à l'exonération de responsabilité. L'Acceptant ne peut pas reproduire, distribuer, représenter ou communiquer au public l'Œuvre, y compris par voie numérique, en utilisant une mesure technique de contrôle d'accès ou de contrôle d'utilisation qui serait contradictoire avec les termes de cet Accord contractuel. Les mentions ci-dessus s'appliquent à l'Œuvre telle qu'incorporée dans une Œuvre dite Collective, mais, en dehors de l'Œuvre en elle-même, ne soumettent pas l'Œuvre dite Collective, aux termes du présent Contrat. Si l'Acceptant crée une Œuvre dite Collective, à la demande de tout Offrant, il devra, dans la mesure du possible, retirer de l'Œuvre dite Collective toute référence au dit Offrant, comme demandé. Si l'Acceptant crée une Œuvre dite Collective, à la demande de tout Auteur, il devra, dans la mesure du possible, retirer de l'Œuvre dite Collective toute référence au dit Auteur, comme demandé. Si l'Acceptant crée une Œuvre dite Dérivée, à la demande de tout Offrant, il devra, dans la mesure du possible, retirer de l'Œuvre dite Dérivée toute référence au dit Offrant, comme demandé. Si l'Acceptant crée une Œuvre dite Dérivée, à la demande de tout Auteur, il devra, dans la mesure du possible, retirer de l'Œuvre dite Dérivée toute référence au dit Auteur, comme demandé.
  2. L'Acceptant peut reproduire, distribuer, représenter ou communiquer au public une Œuvre dite Dérivée y compris par voie numérique uniquement sous les termes de ce Contrat, ou d'une version ultérieure de ce Contrat comprenant les mêmes Options du Contrat que le présent Contrat, ou un Contrat Creative Commons iCommons comprenant les mêmes Options du Contrat que le présent Contrat (par exemple Paternité - Pas d'Utilisation Commerciale - Partage Des Conditions Initiales A l'Identique 2.0 Japon). L'Acceptant doit inclure une copie ou l'adresse Internet (Identifiant Uniforme de Ressource) du présent Contrat, ou d'un autre Contrat tel que décrit à la phrase précédente, à toute reproduction ou enregistrement de l'Œuvre dite Dérivée que l'Acceptant distribue, représente ou communique au public y compris par voie numérique. L'Acceptant ne peut pas offrir ou imposer de conditions d'utilisation sur l'Œuvre dite Dérivée qui altèrent ou restreignent les termes du présent Contrat ou l'exercice des droits qui y sont accordés au bénéficiaire, et doit conserver intactes toutes les informations qui renvoient à ce Contrat et à l'avertissement sur les garanties. L'Acceptant ne peut pas reproduire, distribuer, représenter ou communiquer au public y compris par voie numérique l'Œuvre dite Dérivée en utilisant une mesure technique de contrôle d'accès ou de contrôle d'utilisation qui serait contradictoire avec les termes de cet Accord contractuel. Les mentions ci-dessus s'appliquent à l'Œuvre dite Dérivée telle qu'incorporée dans une Œuvre dite Collective, mais, en dehors de l'Œuvre dite Dérivée en elle-même, ne soumettent pas l'Œuvre Collective, aux termes du présent Contrat.
  3. Si l'Acceptant reproduit, distribue, représente ou communique au public, y compris par voie numérique, l'Œuvre ou toute Œuvre dite Dérivée ou toute Œuvre dite Collective, il doit conserver intactes toutes les informations sur le régime des droits et en attribuer la paternité à l'Auteur Original, de manière raisonnable au regard au médium ou au moyen utilisé. Il doit communiquer le nom de l'Auteur Original ou son éventuel pseudonyme s'il est indiqué ; le titre de l'Œuvre Originale s'il est indiqué ; dans la mesure du possible, l'adresse Internet ou Identifiant Uniforme de Ressource (URI), s'il existe, spécifié par l'Offrant comme associé à l'Œuvre, à moins que cette adresse ne renvoie pas aux informations légales (paternité et conditions d'utilisation de l'Œuvre). Dans le cas d'une Œuvre dite Dérivée, il doit indiquer les éléments identifiant l'utilisation l'Œuvre dans l'Œuvre dite Dérivée par exemple « Traduction anglaise de l'Œuvre par l'Auteur Original » ou « Scénario basé sur l'Œuvre par l'Auteur Original ». Ces obligations d'attribution de paternité doivent être exécutées de manière raisonnable. Cependant, dans le cas d'une Œuvre dite Dérivée ou d'une Œuvre dite Collective, ces informations doivent, au minimum, apparaître à la place et de manière aussi visible que celles à laquelle apparaissent les informations de même nature.
  4. Dans le cas où une utilisation de l'Œuvre serait soumise à un régime légal de gestion collective obligatoire, l'Offrant se réserve le droit exclusif de collecter ces redevances par l'intermédiaire de la société de perception et de répartition des droits compétente. Sont notamment concernés la radiodiffusion et la communication dans un lieu public de phonogrammes publiés à des fins de commerce, certains cas de retransmission par câble et satellite, la copie privée d'Œuvres fixées sur phonogrammes ou vidéogrammes, la reproduction par reprographie.

5. Garantie et exonération de responsabilité

  1. En mettant l'Œuvre à la disposition du public selon les termes de ce Contrat, l'Offrant déclare de bonne foi qu'à sa connaissance et dans les limites d'une enquête raisonnable :
        1. L'Offrant a obtenu tous les droits sur l'Œuvre nécessaires pour pouvoir autoriser l'exercice des droits accordés par le présent Contrat, et permettre la jouissance paisible et l'exercice licite de ces droits, ceci sans que l'Acceptant n'ait aucune obligation de verser de rémunération ou tout autre paiement ou droits, dans la limite des mécanismes de gestion collective obligatoire applicables décrits à l'article 4(e);
        2. L'Œuvre n'est constitutive ni d'une violation des droits de tiers, notamment du droit de la propriété littéraire et artistique, du droit des marques, du droit de l'information, du droit civil ou de tout autre droit, ni de diffamation, de violation de la vie privée ou de tout autre préjudice délictuel à l'égard de toute tierce partie.
  2. A l'exception des situations expressément mentionnées dans le présent Contrat ou dans un autre accord écrit, ou exigées par la loi applicable, l'Œuvre est mise à disposition en l'état sans garantie d'aucune sorte, qu'elle soit expresse ou tacite, y compris à l'égard du contenu ou de l'exactitude de l'Œuvre.

6. Limitation de responsabilité. A l'exception des garanties d'ordre public imposées par la loi applicable et des réparations imposées par le régime de la responsabilité vis-à-vis d'un tiers en raison de la violation des garanties prévues par l'article 5 du présent contrat, l'Offrant ne sera en aucun cas tenu responsable vis-à-vis de l'Acceptant, sur la base d'aucune théorie légale ni en raison d'aucun préjudice direct, indirect, matériel ou moral, résultant de l'exécution du présent Contrat ou de l'utilisation de l'Œuvre, y compris dans l'hypothèse où l'Offrant avait connaissance de la possible existence d'un tel préjudice.

7. Résiliation

  1. Tout manquement aux termes du contrat par l'Acceptant entraîne la résiliation automatique du Contrat et la fin des droits qui en découlent. Cependant, le contrat conserve ses effets envers les personnes physiques ou morales qui ont reçu de la part de l'Acceptant, en exécution du présent contrat, la mise à disposition d'Œuvres dites Dérivées, ou d'Œuvres dites Collectives, ceci tant qu'elles respectent pleinement leurs obligations. Les sections 1, 2, 5, 6 et 7 du contrat continuent à s'appliquer après la résiliation de celui-ci.
  2. Dans les limites indiquées ci-dessus, le présent Contrat s'applique pendant toute la durée de protection de l'Œuvre selon le droit applicable. Néanmoins, l'Offrant se réserve à tout moment le droit d'exploiter l'Œuvre sous des conditions contractuelles différentes, ou d'en cesser la diffusion; cependant, le recours à cette option ne doit pas conduire à retirer les effets du présent Contrat (ou de tout contrat qui a été ou doit être accordé selon les termes de ce Contrat), et ce Contrat continuera à s'appliquer dans tous ses effets jusqu'à ce que sa résiliation intervienne dans les conditions décrites ci-dessus.

8. Divers

  1. A chaque reproduction ou communication au public par voie numérique de l'Œuvre ou d'une Œuvre dite Collective par l'Acceptant, l'Offrant propose au bénéficiaire une offre de mise à disposition de l'Œuvre dans des termes et conditions identiques à ceux accordés à la partie Acceptante dans le présent Contrat.
  2. A chaque reproduction ou communication au public par voie numérique d'une Œuvre dite Dérivée par l'Acceptant, l'Offrant propose au bénéficiaire une offre de mise à disposition du bénéficiaire de l'Œuvre originale dans des termes et conditions identiques à ceux accordés à la partie Acceptante dans le présent Contrat.
  3. La nullité ou l'inapplicabilité d'une quelconque disposition de ce Contrat au regard de la loi applicable n'affecte pas celle des autres dispositions qui resteront pleinement valides et applicables. Sans action additionnelle par les parties à cet accord, lesdites dispositions devront être interprétées dans la mesure minimum nécessaire à leur validité et leur applicabilité.
  4. Aucune limite, renonciation ou modification des termes ou dispositions du présent Contrat ne pourra être acceptée sans le consentement écrit et signé de la partie compétente.
  5. Ce Contrat constitue le seul accord entre les parties à propos de l'Œuvre mise ici à disposition. Il n'existe aucun élément annexe, accord supplémentaire ou mandat portant sur cette Œuvre en dehors des éléments mentionnés ici. L'Offrant ne sera tenu par aucune disposition supplémentaire qui pourrait apparaître dans une quelconque communication en provenance de l'Acceptant. Ce Contrat ne peut être modifié sans l'accord mutuel écrit de l'Offrant et de l'Acceptant.
  6. Le droit applicable est le droit français.

Creative Commons n'est pas partie à ce Contrat et n'offre aucune forme de garantie relative à l'Œuvre. Creative Commons décline toute responsabilité à l'égard de l'Acceptant ou de toute autre partie, quel que soit le fondement légal de cette responsabilité et quel que soit le préjudice subi, direct, indirect, matériel ou moral, qui surviendrait en rapport avec le présent Contrat. Cependant, si Creative Commons s'est expressément identifié comme Offrant pour mettre une Œuvre à disposition selon les termes de ce Contrat, Creative Commons jouira de tous les droits et obligations d'un Offrant.

A l'exception des fins limitées à informer le public que l'Œuvre est mise à disposition sous CPCC, aucune des parties n'utilisera la marque « Creative Commons » ou toute autre indication ou logo afférent sans le consentement préalable écrit de Creative Commons. Toute utilisation autorisée devra être effectuée en conformité avec les lignes directrices de Creative Commons à jour au moment de l'utilisation, telles qu'elles sont disponibles sur son site Internet ou sur simple demande.

Creative Commons peut être contacté à http://creativecommons.org/.