Выпуск распределённой системы управления версиями Mercurial 4.0

2016-11-02

Доступен релиз распределённой системы управления версиями Mercurial 4.0. Выпуск 4.0 не связан внесением кардинальных изменений или новшеств, он лишь является следствием смены первой цифры в рамках используемой проектом десятичной схемы нумерации, в соответствии с которой после 3.9 следует версия 4.0, а не 3.10. Код Mercurial написан на языке Python (требующие высокой производительности части оформлены в виде модулей на Си) и распространяется под лицензией GPLv2+. Среди проектов, использующих Mercurial, можно выделить следующие: Mozilla, OpenOffice.org, OpenSolaris, NetBeans, OpenJDK, Nginx, Xine и W3C.

Основные изменения:

  • В команды 'hg version', 'hg grep' и 'hg config' добавлена экспериментальная поддержка фильтра formatter для преобразования списка в произвольный формат;
  • Добавлено новое ключевое слово termwidth и функции для работы с шаблонами mod(a, b) и relpath(path);
  • Реализована возможность применения в шаблонах простых арифметических операций, например "termwidth - 10";
  • В функцию выбора ревизии follow() добавлен параметр startrev;
  • В сценарии автодополнения для bash обеспечена возможность пропуска аргументов, приводящих к ресурсоёмким операциям 'hg status', в случае установки переменной окружения;
  • Внесены изменения в код отслеживания операций перемещения и копирования файлов, позволяющие гарантировать сохранение информации о копировании и перемещении при выполнении команд, подобных 'hg graft';
  • Значительно улучшена поддержка Python 3;
  • Увеличена производительность zlib в hgweb и добавлена возможность выбора уровня сжатия через опцию server.zliblevel.