Упрощает процесс создания и выпуска новых версий приложений на Python.
Некоторые особенности:

  • Создание скелета приложения одной командой;
  • Автоматическая инициализация VCS-репозитория;
  • Проверка использования имени приложения;
  • Поддержка пользовательских шаблонов скелетов приложений;
  • Поддержка хранения часто используемых опций создания приложений в конфигурационных файлах;
  • Встроенный механизм для ведения changelog-файла (история изменений);
  • Публикация новых версий в VCS и PyPI одной командой.

Для развёртывания скелета приложения используются шаблоны. Несколько шаблонов можно использовать одновременно. Пользователь сам может создать шаблон для своих приложений. При этом в комплекте makeapp идут следующие:
  • Приложение с интерфейсом командной строки, использующее click;
  • Приложение, использующее для тестирования каркас pytest;
  • Подключаемое расширение (плагин) для pytest;
  • Подключаемое приложение для каркаса Django;
  • Проект webscaff.

Скелет приложения разворачивается командой new:

    $ makeapp new my_app -d "My application." --author "The Librarian" -t click here/

Запуск команды приведёт к созданию скелета в директории here/, с использованием шаблона с click. Скелет будет включать разумные настройки и базовые файлы (setup.py, документация, тесты, проч.). Помимо этого, в директории будет инициализирован Git репозиторий.

После того как скелет создан, можно пробежаться по файлам и внести дополнительные коррективы, если они требуются, и приступить к разработке.

Когда работа над очередной частью изменений завершена, можно зафиксировать их в системе контроля версий, а также в файле изменений при помощи команды change:

    $ makeapp change "+ Приложение теперь умеет X"

В сообщениях в качестве префикса можно использовать следующие символы, дающие дополнительную информацию о характере изменения (она будет влияеть на вычисление следующего номера версии; см. команду release).

+Нововведение.Увеличивает минорую часть номера версии: 0.X.0.
!Важное улучшение, исправление.Увеличивает часть патча: 0.0.X.
-Удаление/устаревание функциональности.Увеличивает часть патча.
*Небольшое улучшение, исправление (этот префикс добавляется автоматически, если не указан другойУвеличивает часть патча.

Если приложение готово к выпуску, значит пора использовать команду release:

    $ makeapp release

; Вручную поднять мажорный компонент номер версии X.0.0:
$ makeapp release --increment major

За более подробным описанием и примерами обратитесь к документации (англ.).

Смотрите также:
На заметку
Читайте нас в Twitter. Ссылка в самом низу страницы.