Trac

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 18:35, 16 июня 2018.
Trac
Trac.png
Разработчики: Edgewall Software
Выпущена: 23 February 2004 года; 17 years ago (2004-02-23)
Написана на: Python
Операционная система: Windows, OS X, Linux, BSD
Локализация: Языков доступно: 48
Тип ПО: Project management software, bug tracking system
Лицензия: Modified BSD license
Веб-сайт trac.edgewall.org
Trac — средство управления проектами и отслеживания ошибок в программном обеспечении.

Trac является открытым программным обеспечением, разработанным и поддерживаемым компанией Edgewall Software (не путать с TrackStudio Enterprise и Track+, другими системами аналогичного назначения)[Источник 1].

Trac использует минималистичный веб-интерфейс, основанный на технологии Wiki, и позволяет организовать перекрёстные гиперссылки между базой данных зарегистрированных ошибок, системой управления версиями и вики-страницами. Это даёт возможность использовать Trac в том числе и как веб-интерфейс для доступа к системе контроля версий Subversion и Git а также, через плагины, к Mercurial, Bazaar и другим.

Поддерживаются базы данных SQLite, PostgreSQL, MySQL и MariaDB.

Trac написан на языке программирования Python и в настоящее время распространяется по модифицированной лицензии BSD. В качестве системы HTML-шаблонов веб-интерфейса Trac до версии 0.11 использовал ClearSilver. Новые версии, начиная с 0.11, используют разработанную в Edgewall систему шаблонов Genshi, при этом совместимость с плагинами, использующими ClearSilver, будет оставлена ещё в течение нескольких версий.

История

Вдохновленные CVSTrac, Бергстом Джонас и Даниэль Лундин из Edgewall начали писать svntrac в августе 2003 года, используя SQLite. В декабре 2003 года они переименовали ее в Trac. В феврале 2004 года версия проф впервые был изменен от 0.0.1 до 0,1 и от 0,1 до 0,5. Что релиз состоялся в марте 2004 года на 0,6 и 0,7, и 0,8 в ноябре 2004 года.

Edgewall Software была небольшой консалтинговой компанией, а сегодня она уже не предлагает какие-либо разработки программного обеспечения, консалтинга и услуг поддержки. Это теперь исключительно "зонтичная" организация проведения edgewall.org сообщества для совместной работы и разработке программного обеспечения с открытым кодом на языке Python. Некоторые из первых членов сообщества для совместной работы в проектах с открытым исходным кодом Trac Рокки Берт в марте 2004 года, Кристофер Ленц и Франсуа Харви в мае 2004 года, Кристиан Боос и Отавио Сальвадор в декабре 2004 года и Марк Роу марта 2005 года.

В августе 2005 года лицензия была изменена от стандартной общественной лицензии GNU на модифицированную лицензию BSD. Первым релизом была лицензия Trac 0.9 в октябре 2005 года. В ней введена поддержка баз данных PostgreSQL.

Trac 0.10, выпущенный в сентябре 2006 года, был важным релизом, который впервые ввел компоненты системы, которая по сей день позволяет плагинам для расширения добавлять новые функции в ядро Trac. Сам Trac состоит в основном из дополнительных компонентов плагина, который может быть отключен или полностью заменен. Поддержка базы данных MySQL добавляется в качестве одного из таких основных компонентов. В этом выпуске добавлена поддержка для систем контроля версий. (Поддержки mercurial осуществлялось через отдельный плагин из-за своей лицензии ограничения лицензии GPL.). Trac 0.11, выпущенный в июне 2008 года, изменил систему HTML-шаблон из ClearSilver к Genshi, ломая совместимость со многими старыми плагинами.

Trac 0.12 был выпущен в июне 2010 года и стал стабильным релизом долгосрочной последней версии 0.12.7 с июля 2015 года. Она добавила, интернационализацию и поддержку локализации с помощью babel, и позволяет использовать несколько версий сразу.

Trac 0.13 никогда не был выпущен, а вместо этого его превратили в Trac 1.0 в сентябре 2012 года, предыдущий стабильный долгосрочный поддерживаемой версии с последней версии 1.0.13 от cентября 2016 года. В нее вошли ранее внешний плагин для управления версиями git поддержки.

По разделу 1.1.1 с февраля 2013 года по 1.1.6 с июля 2015 года выпускает без долгосрочной поддержки и гарантий совместимости, которые превратились в Trac 1.2 с ноября 2016 года, последний стабильный релиз.

Trac 1.3.1 с декабря 2016 года Текущая версия развития без долгосрочной поддержки, которая превратится в итоге в Trac 1.4.

Принцип работы

Архитектура

Система достаточно мультиплатформенная, т.к. для своей работы требует наличие Python, на котором написана и одной из СУБД: [[SQLite, PostgreSQL или MySQL. Веб-сервер используется по умолчанию встроенный (модуль на Python), но может быть подключен Apache. Также нужен SVN. Все эти системные средства портированы на множество платформ. Для нас интересно что trac можно установить на FreeBSD, Linux, Windows.

Администрирование

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

Настройка проектов

Есть понятия проекта, компонента, вехи, приоритета, типа задачи, уровня сложности, версии. Этот набор сущностей фиксирован, но внутренности можно настраивать.

Права пользователей

Есть пользователи и роли. У одного пользователя - может быть несколько ролей. Права выдаются ролям или пользователям на проект в целом. Это нормально для OpenSource проектов, но неправильно для коммерческих, когда нужно скрыть часть проекта для некоторых пользователей. И это можно считать серьезным недостатком!

Атрибуты задачи

Задача в этой системе названа "Ticket" (билет). Фиксированная часть: номер, задание, состояние, пользователи (репортер, исполнитель, проверяющий), приоритет, компонент, сложность, веха, версия, затраченное кол-во часов, комментарии. Дополнительно, при помощи плагинов можно добавить набор атрибутов. Например удалось прикрутить поле для добавления времени и признак "оплачиваемо", вычислимое поле "всего потрачено времени".

Основные характеристики

Главной положительной чертой чертой о которой упоминают везде, является степень интеграции с базой знаний проектной документации и системой контроля версий. Wiki и SVN изначально были встроены в ядро этой системы и степень их интеграции была очень высокой на момент появления это системы (примерно 2005). Сейчас по данным параметрам коммерческие системы догнали trac и бесплатные конкуренты тоже подбираются. Но популярность trac все еще достаточно высока, чтобы серьезно расчитывать на ее дальнейшее развитие.

Вторым по значимости плюсом trac считается сообщество занимающееся написанием плагинов - написано действительно много всего и при желании можно нарастить изначально не очень мощный функционально trac до приличных высот.

Дополнительные функции управления проектом включают группировку авиабилетов в вехи и "дорожную карту", где вехами и их прогресс представлены и визуализированы. Недавняя активность отображается на странице хронология, пользователи будут уведомлены по электронной почте или могут подписаться на RSS или анонсы каналов.

Функции

  • Управление проектомразделение проекта на этапы (milestones)
  • контроль выполнения (roadmap)
  • все изменения по проекту заносятся на временную шкалу (timeline)
  • поддержка rss
  • Tickets
  • Стандартная функциональность — учет ошибок, замечаний, пожеланий с возможностью фильтрации и занесение соответсвенно в milestone, roadmap.
  • Просмотр репозитория. Достаточно удобный модуль по просмотру Subversion репозитория проекта. Позволяет просматривать исходный код с учетом ревизии, а также изменений.
  • Функциональность может быть расширена за счет дополнительных модулей.
  • Управление пользователями. Простая система — что могут делать пользователи, а что нет.
  • WiKi. В trac встроена система WiKi с возможностью делать ссылки на milestone, roadmap, ticket. Органично вписывается и удобна в использовании при ведении проекта.

Дополнительные возможности

Trac имеет плагин, который предлагает множество дополнительных функций и интеграций с внешними инструментами, и держит ядро системы в простом и удобном использовании. Помимо основной SVN и поддержки git, Trac может подключаться через плагин для многих других систем контроля версий, в том числе:

Установка

Примечания

  1. Trac // Википедия [2002–2018]. Дата изменения: 24.08.2018. URL: https://ru.wikipedia.org/wiki/Trac (Дата обращения: 25.05.2018).

Ссылки