Mantis Bug Tracker

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Mantis Bug Tracker
MantisBT
Тип баг-трекер
Автор(и) Kenzaburo Ito (2000-2002), Victor Boctor (з 2002)
Перший випуск 2000
Версії
Репозиторій github.com/mantisbt/mantisbt
Операційна система різні
Написано на PHP
Доступні мови існує українська локалізація  (49)
Стан розробки активний
Ліцензія GNU General Public License version 2
www.mantisbt.org

Mantis Bug Tracker (MantisBT) — це безкоштовна система відстеження помилок з відкритим вихідним кодом. Розповсюджується за ліцензією GNU General Public License 2. Система використовується для загальних потреб відстеження запитів (англ. issue management system), управління проектами, та, найчастіше, для відстеження помилок в програмному забезпеченні. Інтерфейс користувача — веб-сайт.

Назва Mantis та логотип проекту являють собою англомовний каламбур. Mantis (укр. богомол) відомий, зокрема, тим, що відстежує та їсть інших комах (англ. bug). А слово «bug» також загально відоме як помилка в програмному забезпеченні. Замість повної назви, часто використовують MantisBT чи просто Mantis.

Історія[ред. | ред. код]

Кензабуро Іто почав розробку проекту Mantis в 2000 році. В 2002 році Віктор Боктор став основним розробником проекту.

Історія версій[ред. | ред. код]

Дата Номер версії
2006] 1.1.0[2]
2007] 1.1.0[3]
2010] 1.2.0[4]

В листопаді 2008 року, після довгої дискусії[5], проект змінив систему контролю версій з Subversion на Git. В липні 2012, офіційний репозиторій коду був розміщений на сервісі GitHub.[6][7]

Можливості[ред. | ред. код]

Додатки[ред. | ред. код]

Підтримка додатків (плаґінів) була представлена в версії 1.2.0.[8] Запропоноване рішення дозволяє розширювати Mantis як офіційними, так і сторонніми додатками. На листопад 2013, на офіційній сторінці Mantis на GitHub доступно більше 50-ти додатків.

Можливість розширювати систему існувала і до версії 1.2.0, вона була розроблена разом з багатьма додатками.[9] Це рішення не підтримувалось офіційно і, починаючи з версії 1.2.0, є несумісним з Mantis.

Сповіщення[ред. | ред. код]

Mantis підтримує сповіщення про зміни в системі електронною поштою. Користувачі можуть вказати тип листів, які вони хочуть отримувати від системи та налаштувати фільтри. Наприклад, можна налаштувати систему на сповіщення тільки про зміни в важливих та критичних запитах. Також користувачі можуть просто підписатися на зміни будь-якого запиту.

Також, система підтримує RSS та інтегрується в Твіттер за допомогою додатку. Система додатків дозволяє розширювати систему сповіщення на розсуд розробника (наприклад, відправлення SMS чи комунікація з іншим ПЗ).

Інтеграція з системами контролю версій[ред. | ред. код]

До версії 1.2.0 Mantis міг обмежено інтегруватися з CVS. Після появи можливості розширювати Mantis, інтеграція з системи контролю версій була перероблена в складі додатку SourceIntegration plugin.

Перша версія цього додатку підтримувала GitHub, GitWeb, SourceForge and WebSVN.[10] З часом були додані два додаткових модулі та станом на листопад 2013 року, Mantis може бути інтегрований з наступними системами:

  • cgit, веб-інтерфейс для git-репозиторіїв, реалізований мовою С;
  • Gitweb, відкритий веб-інтерфейс для git-репозиторіїв;
  • GitHub, відкритий хостинг git-репозиторіїв;
  • HgWeb, веб-інтерфейс для Mercurial-репозиторіїв;
  • SourceForge, відкритий хостинг для SVN-репозиторіїв;
  • WebSVN, відкритий веб-інтерфейс для Subversion-репозиторіїв;
  • RhodeCode, відкритий веб-інтерфейс для репозиторіїв Mercurial та Git.[11]

Системи контролю версій дозволяють розробнику налаштувати їх таким чином, щоб вони повідомляли Mantis про зміни в репозиторії проекту. GitHub також надає можливість повідомляти Mantis про зміни.

Інтеграція з системами контролю версій може зберегти час розробника. Наприклад, додаток SourceIntegration дає можливість автоматично переводити запити в стан «виправлено», якщо в описі останніх змін в репозиторії він зустрів схожий текст: «Fixed #12345».

Другорядні можливості[ред. | ред. код]

На додаток до вже перелічених можливостей, Mantis так підтримує:[12]

  • Повнотекстовий пошук;
  • Протокол (лоґ) змін, зроблених в запиті;
  • Контроль версій запитів;
  • Дорожні карти;
  • Підсумок змін (changelog);
  • Візуалізація зв'язків між запитами;
  • Інтеграція з Wiki-системами (DokuWiki, MediaWiki, TWiki, WikkaWiki, XWiki).

Дизайн[ред. | ред. код]

Мови розробки[ред. | ред. код]

Mantis написаний мовою PHP та використовує SQL для доступу до бази даних. Веб-інтерфейс системи дуже простий та реалізований за допомогою «чистих» HTML та CSS.[13]

Інструменти розробників та білд-скрипти реалізовані на Python, скриптами терміналу (shell scripts) та PHP. Оскільки, проект почався тоді, коли PHP не мав повноцінної підтримки ООП, Mantis багато використовує принципи процедурного програмування.[14][15]

База даних[ред. | ред. код]

Інформація зберігається в реляційний СКБД. Mantis підтримує MySQL, в той час, як підтримка інших баз даних вважається проблемною. Розробники планують вирішити цю проблему в версії 2.0.[16]

Вимоги[ред. | ред. код]

Система потребує налаштований веб-сервер, інтерпретатор мови PHP, бібліотеку ADOdb та реляційну базу даних.

Стабільні версії системи потребують PHP 5.1.0 чи більше. Для розроблюваних версій, мінімальна версія PHP — 5.3.2.[17]

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. Release 2.17.0 — 2018.
  2. Mantis 1.0.0 (stable) Released. MantisBT announcements mailing list. SourceForge.net. February 4, 2006. 
  3. Mantis 1.1.0 Released. Mantis Bug Tracker Blog. Mantisbt.org. December 20, 2007. 
  4. MantisBT 1.2.0 Released. Mantis Bug Tracker Blog. Mantisbt.org. February 22, 2010. 
  5. Moving from SVN to Git. Mantisbt-dev mailing list. Sourceforge.net. November 4, 2008. 
  6. John Reese (November 10, 2008). First MantisBT Git commit. Github.com. 
  7. MantisBT Moving to Github. MantisBT announcements mailing list. SourceForge.net. July 12, 2011. 
  8. MantisBT 1.2.0rc1 Release Candidate 1. Mantis Bug Tracker Blog. Mantisbt.org. June 23, 2009. 
  9. Mantis bugtracker plugins. Deboutv.free.fr. Процитовано July 14, 2010. 
  10. Reese, John (January 7, 2009). Integrating Git and SVN with the Mantis Bug Tracker. NoSwap.com. Процитовано November 11, 2013. 
  11. http://tononlabview.blogspot.fr/2011/07/connecting-mantis-with-rhodecode.html
  12. Mantis Feature List. MantisBT wiki. Mantisbt.org. September 25, 2012. Процитовано November 11, 2013. 
  13. Languages. Ohloh.net. Процитовано November 12, 2013. 
  14. MantisBT source code. GitHub.com. June 11, 2009. 
  15. MantisBT source code. GitHub.com. February 6, 2008. 
  16. Mantis Bug Tracker Administration Guide. Процитовано November 11, 2013. 
  17. Mantis Bug Tracker | Requirements. Mantisbt.org. Процитовано November 12, 2013. 

Посилання[ред. | ред. код]