Journal Sprint CPython en ligne ce week-end (17/18 déc.)

Posté par (page perso) .
Tags :
25
13
déc.
2011

Ce week-end (samedi 17 et dimanche 18 décembre), je vous invite à participer à un sprint CPython en ligne. CPython est l'implémentation Python de référence, elle est écrite en C.

Le sprint débutera samedi après-midi par la mise en place d'un environnement de développement, d'un tour d'horizon du bug tracker, et plus généralement des outils utilisés pour développer Python. Je proposerai ensuite des tickets facile à corriger, selon le niveau de chacun, ou bien d'autres idées de contribution. L'idéal étant que vous ayez déjà une idée de ce que vous voulez hacker.

L'idée est surtout de vous accompagner pendant deux jours pour entrer dans le projet, et vous démontrer que bien qu'il ait un long historique et qu'il soit assez gros (nombre de lignes de code et nombre d'auteurs), il est tout à fait possible d'y contribuer.

Le code de CPython est écrit à 40% en C, mais aussi à 60% en Python : 600.000 lignes. Il y a de quoi faire si vous ne parlez pas le C ! Si vous n'êtes ni à l'aise en Python, ni en C, les 183.000 lignes de documentation attendent vos relectures, suggestions et corrections.


Si vous êtes souhaitez participer, dites moi quels sont les parties (modules) qui vous intéressent et quel est votre niveau en développement (C/Python), histoire que je puisse préparer au mieux ce sprint. Vous pouvez lire le guide de développement en attendant.

Pour vous faire une idée de ce qu'est CPython, vous pouvez également consulter le PDF de la présentation que j'ai donnée à Pycon FR 2011.

Côté pratique, j'ai crée le salon IRC #python-dev-fr sur le serveur Freenode (irc.freenode.net) pour l'occasion, vous pouvez le rejoindre dès à présent. Le sprint se déroulera essentiellement samedi après-midi et dimanche après-midi. Je serai sûrement disponible de vendredi soir à dimanche soir.

Mes objectifs sont de vous former rapidement pour hacker CPython, et également de récolter le maximum de contributions sur un week-end. Ayant le droit de commit, je devrais pouvoir pousser moi-même une partie des patchs pendant le week-end. Je vais tâcher de faire venir d'autres core developer Python pour m'aider.

  • # Intéressé

    Posté par . Évalué à 2.

    Salut, je m'intéresse au module math, je voulais à une époque mettre à jour la documentation.

    Est-ce que ce serait possible ?

    Sinon, je veux bien contribuer à quoi que ce soit, du code C ou python.

    Je suis bbear sur #python-dev-fr . Mon prénom c'est david.

    À bientôt.

    Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.

    • [^] # Re: Intéressé

      Posté par . Évalué à 4.

      Salut, je m'intéresse au module math, je voulais à une époque mettre à jour la documentation.

      Est-ce que ce serait possible ?

      Oui bien sûr. La documentation est dans l'arbre de sources (géré avec Mercurial). Elle est écrite en reStructuredText. Donc si tu clones http://hg.python.org/cpython, tu trouveras la doc du module math dans Doc/library/math.rst.

      Pour construire la doc, fais make html dans le répertoire Doc. Les fichiers de sortie se trouveront dans Doc/build/html (et notamment Doc/build/html/library/math.html pour le module qui t'intéresse).

      Une fois ton patch écrit, tu peux le proposer sur http://bugs.python.org

      Si tu n'as pas envie d'écrire un patch entier et que tu veux juste proposer quelques petits changements, tu peux aussi écrire à docs@python.org

      Tout est expliqué en détail ici : http://docs.python.org/dev/documenting/

      (au fait, la documentation actuelle est à http://docs.python.org/dev/library/math.html )

    • [^] # Re: Intéressé

      Posté par (page perso) . Évalué à 2.

      je voulais à une époque mettre à jour la documentation

      Tu veux dire que la documentation n'est pas complète ou désuette ? Bien sûr que c'est un bon sujet pour le sprint.

  • # Dépêche ?

    Posté par (page perso) . Évalué à 3.

    Tu pourrais peut-être proposer ton journal en dépêche, pour toucher un public plus large.

  • # Quelques suggestions

    Posté par . Évalué à 6.

    On a un très bon niveau de support de plusieurs systèmes d'exploitation (Linux, Windows, FreeBSD, Solaris, OS X, etc), grâce à un certain nombre de contributeurs actifs et la disponibilité de buildbots (http://www.python.org/dev/buildbot/all/waterfall).
    Par contre, certaines plates-formes sont moins bien supportées, principalement par manque de contributeurs/testeurs : OpenBSD, NetBSD, HP-UX, AIX, etc.
    Donc pour ceux qui utilisent un de ces OS et qui sont motivés, je pense qu'il pourrait y avoir du boulot intéressant.
    La première étape serait de récupérer la branche default (future 3.3), et d'essayer de la compiler.
    Ensuite, lancer l'ensemble des tests de non-régression ("make test"), et voir ce qui foire.
    Vous pouvez aussi lancer une recherche dans le bug tracker, par exemple http://bugs.python.org/issue?@columns=id%2Cactivity%2Ctitle%2Ccreator%2Cassignee%2Cstatus%2Ctype&@sort=-activity&@filter=status&@action=searchid&ignore=file%3Acontent&@search_text=openbsd&status=-1%2C1%2C3

    Je vais probablement traîner sur #python-dev-fr histoire d'aider Victor, donc rendez-vous ce week-end !

    • [^] # Re: Quelques suggestions

      Posté par . Évalué à 1.

      Une machine virtuelle, c'est le pied pour faire ce genre de test, non ?

      Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.

      • [^] # Re: Quelques suggestions

        Posté par . Évalué à 2.

        Probablement mais il faut de toute façon des gens motivés pour ça.

        • [^] # Re: Quelques suggestions

          Posté par . Évalué à 1.

          Je vais tester avec open et netbsd.

          Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.

      • [^] # Re: Quelques suggestions

        Posté par . Évalué à 3.

        Oui, mais :
        - ma machine personnelle n'est pas assez puissante (j'ai accès à plein de machines au boulot, mais je ne peux pas me permettre de les utiliser pour ça)
        - comme l'explique Antoine, il faut être motivé : personnellement, je suis assez motivé pour écrire des patchs et committer ceux que des contributeurs ponctuels me soumettent pour ces plates-formes, mais pas assez pour mettre en place des VMs, les configurer et les mettre à jour (parce que c'est bien beau d'avoir un OpenBSD en VM, mais avec une version 3.1 tu ne vas pas aller loin).
        Avoir des contributeurs/testeurs intéressés et si possibles réguliers est bien plus intéressant.
        Par exemple, même si je ne connais quasiment rien à Windows et que je n'en ai pas chez moi, j'ai toujours la possibilité d'utiliser les buildbots pour tester mes patchs, et vérifier qu'ils n'ont pas tout cassé.

        • [^] # Re: Quelques suggestions

          Posté par . Évalué à 1.

          Pas de problème, j'ai justement acheté un i3-2100 + 4Go de RAM :)

          Je pense que ça va le faire pour faire tourner les tests requis. Ceci dit c'est vrai que ça demande une bonne machine pour être fait correctement :) Je suis bien d'accord et c'est pour ça que je mets la mienne à contribution ...

          Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.