Mantis Bug Tracker
Mantis Bug Tracker (MantisBT) — це безкоштовна система відстеження помилок з відкритим вихідним кодом. Розповсюджується за ліцензією GNU General Public License 2. Система використовується для загальних потреб відстеження запитів (англ. issue management system), управління проєктами, та, найчастіше, для відстеження помилок в програмному забезпеченні. Інтерфейс користувача — вебсайт.
| |
Тип | баг-трекер |
---|---|
Автор(и) | Kenzaburo Ito (2000-2002), Victor Boctor (з 2002) |
Перший випуск | 2000 |
Версії | 2.25.2 (17 червня 2021)[1] |
Репозиторій | github.com/mantisbt/mantisbt |
Операційна система | різні |
Мова програмування | PHP |
Доступні мови | існує українська локалізація (49) |
Стан розробки | активний |
Ліцензія | GNU General Public License version 2 |
Вебсайт | www.mantisbt.org |
Mantis Bug Tracker у Вікісховищі |
Назва Mantis та логотип проєкту являють собою англомовний каламбур. Mantis (укр. богомол) відомий, зокрема, тим, що відстежує та їсть інших комах (англ. bug). А слово «bug» також загально відоме як помилка в програмному забезпеченні. Замість повної назви, часто використовують MantisBT чи просто Mantis.
Історія
Кензабуро Іто почав розробку проєкту Mantis в 2000 році. В 2002 році Віктор Боктор став основним розробником проєкту.
Можливості
Додатки
Підтримка додатків (плаґінів) була представлена в версії 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]
Дизайн
Мови розробки
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]
Див. також
Примітки
- Release 2.25.2 — 2021.
- Mantis 1.0.0 (stable) Released. MantisBT announcements mailing list. SourceForge.net. 4 лютого 2006.
- Mantis 1.1.0 Released. Mantis Bug Tracker Blog. Mantisbt.org. 20 грудня 2007.
- MantisBT 1.2.0 Released. Mantis Bug Tracker Blog. Mantisbt.org. 22 лютого 2010.
- Moving from SVN to Git. Mantisbt-dev mailing list. Sourceforge.net. November 4, 2008.
- John Reese (10 листопада 2008). First MantisBT Git commit. Github.com.
- MantisBT Moving to Github. MantisBT announcements mailing list. SourceForge.net. 12 липня 2011.
- MantisBT 1.2.0rc1 Release Candidate 1. Mantis Bug Tracker Blog. Mantisbt.org. 23 червня 2009.
- Mantis bugtracker plugins. Deboutv.free.fr. Процитовано 14 липня 2010.
- Reese, John (7 січня 2009). Integrating Git and SVN with the Mantis Bug Tracker. NoSwap.com. Процитовано 11 листопада 2013.
- http://tononlabview.blogspot.fr/2011/07/connecting-mantis-with-rhodecode.html
- Mantis Feature List. MantisBT wiki. Mantisbt.org. 25 вересня 2012. Процитовано 11 листопада 2013.
- Languages. Ohloh.net. Процитовано 12 листопада 2013.
- MantisBT source code. GitHub.com. 11 червня 2009.
- MantisBT source code. GitHub.com. 6 лютого 2008.
- Mantis Bug Tracker Administration Guide. Архів оригіналу за грудень 2, 2013. Процитовано 11 листопада 2013.
- Mantis Bug Tracker | Requirements. Mantisbt.org. Архів оригіналу за 5 вересня 2012. Процитовано 12 листопада 2013.