Как я уже писал, 6 апреля будет Kyiv.py #10, на который уже зарегистрировались два докладчика: Ростислав Дзинько (Sockets from the ground up) и Тарас Ляпун (Cython - close to the metal python). Приходите, будет интересно.
А 7 апреля (да-да, на следующий день) во Львове пройдёт спринт по Питону, который организовывает Юля Савьюк @juljetta. Моя роль в этом мероприятии — sprint leader.
Регистрация, место и время
UPD:Форма регистрации: здесь.
Место проведения: офис Lohika, Лемківська 15, 3 этаж.
Начало в 11.00. Заканчиваем когда устанет последний боец. Реально, думаю, часов через шесть.
Что такое sprint?
Это практически субботник — сознательный организованный бесплатный труд на благо общества в свободное от работы время. Работать предлагается над CPython. Берем готовую issue в багтрекере или создаём свою новую. Если есть трудности с выбором — я помогу и поскажу. Когда вся работа будет сделана — я просматриваю код и, если всё хорошо, тут же делаю push в hg.python.org.
Зачем это делается? Не для того, чтобы решить большую серьёзную проблему. Главное — показать процесс работы над Питоном, объяснить и рассказать. Спринт — отличная возможность для новичка стать python contributor.
Обычная проблема Open Source: нужно довольно долго переписываться, при этом работа может затухнуть сама собой просто потому что вам никто не отвечает.
Наличие sprint leader (т.е. меня в данном случае) позволяет максимально всё ускорить.
В результате — приятное чувство: решил проблему (пусть и небольшую) и принёс пользу Python Community. Хочется продолжать работать дальше в том же духе.
Инструкция
Чтобы спринт был удачным, к нему нужно подготовиться.Приходим со своими ноутбуками (думаю, это не проблема).
На ноуте может быть любая система: Linux, Windows, Mac OS X.
Нужно установить компилятор С
- gcc на Линуксе идет в комплекте
- на Маке не знаю (там вроде бы можно еще и clang использовать, Питон должен его понимать)
- для Windows нужно установить Visual Studio, Visual Studio Express доступна для бесплатного скачивания и использования. Для работы нужны обе версии 2008 и 2010.
Также требуется Mercurial HG: http://mercurial.selenic.com/
Работа ведется над CPython repo, установленный из коробки Питон не подходит.
Подробные инструкции на английском языке здесь: http://docs.python.org/devguide/
Делаем:
$ hg clone http://hg.python.org/cpython
$ cd cpython
$ ./configure --with-pydebug
$ make -j4
make install делать не нужно
Далее. Чтобы не тратить время зря советую зарегистрироваться на bugs.python.org и просмотреть заранее список issues.
Выбирайте помеченные как easy — они как правило действительно простые.
Если у вас уже есть темы, над которыми хотите поработать — добро пожаловать.
Если не сможете определиться — тоже не беда, я подскажу.
Работа выглядит так:
- создается issue или берется готовая
- готовятся исправления
- делается патч: $ hg diff > issueXXX.diff
- он заливается через форму на bugs.python.org Там же добавляете меня (asvetlov) в nosy list
- я закачиваю патч и применяю его: $ curl http://path-to-patch|patch -p1
- если всё нормально — делаю push в repo
У Питона сейчас открыты для патчей четыре ветки: 2.7, 3.2, 3.3, default (3.4).
Новые фичи принимаются в default, баги и правки по документации могут попасть и в остальные три.
Если кто не знает как работать с ветками — я покажу на месте.
Юниттесты запускаются так:
$ make test
или
$ ./python Lib/test/regrtest.py
Отдельный тест можно запустить
$ ./python Lib/test/test_xxx.py
Перед отсылкой патча настоятельно рекомендую запускать чекер
$ make patchcheck
Эта процедура как минимум убирает лишние пробелы — постоянная головная боль при приеме патчей.
Привет, а не проведешь ли ты как-то мастер-класс по сетевым приложениям, подобный тому, что был на пайкон.ру?
ОтветитьУдалитьПривет. Хочется, чтобы это было во Львове? Можно обсудить. Но точно не 7 апреля.
УдалитьВ Киеве я делал Advanced Learning Python, там сетям было посвящено семь уроков по два часа каждый + домашние задания.
Только сейчас узнал из твитера... До которого часа мероприятие?
ОтветитьУдалитьС 11.00 и до «пока не надоест», рассчитываю часов на шесть примерно. Выйдет дольше — не беда.
УдалитьЭтот комментарий был удален автором.
УдалитьСпринты — только в выходные (7 апреля — воскресенье если что).
УдалитьЭтот комментарий был удален автором.
Удалить