Product Review: Mantis Bug Tracker
Having fiddled with Bugzilla and experiencing the pain that comes from setting the monster up for the first time, I was interested when pointed in the direction of Mantis, a fairly lightweight bug tracker written in PHP4 and MySQL. Mantis is advertised to run on Linux, *BSD, Solaris, Mac OS, OS/2 and even Win32, so long as the web server supports PHP4, and PHP4 can access a MySQL database somewhere. The software is GPL and runs on any Pentium-class machine with enough RAM to avoid thrashing. (The author's development box is a P-233 with 128MB of RAM.)
After poking around Mantis' fairly well laid out web site, I popped over to the Debian packages page and discovered that Mantis already has made it into Woody. This should be easy, I thought--apt-get install mantis. I'll spare you the pain and leave you with the following caveats: you want to have mysql-server up and running before you begin, and you also want to grab PHP4, not PHP3. If you're using dselect or better instead of pure apt-get, it should give you this option. Also, Debian does not auto-enable PHP4 in Apache, nor does it auto-enable MySQL in PHP when you install php4-mysql. These points are in no way a reflection on Mantis, but simply a way to spare you, the readers, some considerable pain.
Once I finally got a login screen, though, the pain level dropped considerably. Per Mantis' installation instructions, I logged in as administrator, made a new admin login, deleted the old one (with the canned password) and was up and running. Performance was pretty darn snappy on my 256MB 1GHz Duron desktop box, which runs my entire desktop under KDE. Like any good administrator, I first created a normal user, using the Sign Me Up link on the login page. E-mail promptly was dispatched to the appropriate address, the password was retrieved and I was in. Time to report a bug, but I needed a project on which to report a bug. Log out and then back in as the admin user so you can make a project. Back on as my lowly reporter-class user, I find I can't fill in the required Category field. Then I remembered that the documents said, "Remember to add at least one category for your project! Otherwise, you won't be able to enter bug reports." Right. So, I went to Manage projects, created a category named General, flipped back to the other user and, presto, I had a bug.
The View bugs page is color-coded according to bug status. In the version I tested (0.17.1-2.5), they were hard-coded with a rainbow of colors, from a pale red for new through blue-green for resolved and the traditional grey for closed. I am told the newer versions, which can be obtained as tarballs, are quite a bit more configurable. The pages are fairly plain but quite readable, and good use of shading, bold and italic text, borders and other graphics-light but effective visual cues made the system a pleasure to use.
The Report Bug page, presumably the one most used by inexperienced users, has links from all but the Upload File fields to the appropriate places in the documentation. A copy of this is kept under the local installation so you're not dependent on a third party for help. A link to the master documentation page can be found on the navigation bar across the top, which then has links to both Mantis' own documentation and project documentation; users of sufficient status can upload new documentation to the project. In all, there are six levels of access: viewer, reporter, updater, developer, manager and administrator, in order of increasing access level.
Users have a number of choices as to what data they see, both in the system and in e-mail. They can choose to default to Advanced screens on reporting, viewing and updating screens. They also can choose which events trigger an e-mail to them, as well as set up a default project. Mantis supports multiple projects, each with its own set of defaults and security arrangements. Users can choose even which language Mantis speaks to them from more than a dozen options, including two dialects each of Portuguese and French. All of these abilities are impressive for a relatively lightweight web application. A fairly complete statistics page is available that sorts by almost every category Mantis handles, including per-developer and per-reporter statistics. This statistic page doesn't export to CSV yet, but it does practically everything else. The View Bugs page, though, does export to CSV, so you can access the raw data. And the View Bugs page filters and sorts by most categories as well, making it a statistician's dream.
Administrators can edit site news, which appears on the main page after you log in. News items, shown in quasi-blog format, can be for a single project or site-wide. Administrators also can add users without needing them to sign up over e-mail, as well as all the other munging of the site one would expect. Other user levels have lesser privileges; the levels are not as well documented as I would like, but I expect the documentation to improve as the project continues.
Which brings me to versioning. Debian Stable (Woody), as is often the case, contains an older version of Mantis. Although I used and reviewed 0.17.1-2.5, version 0.18.0a4 currently is listed as the latest version; it's the Alpha 4 release leading up to version 0.18.0. A number of minor bugs and some security issues have been fixed in the newer version, while performance enhancements and the ability to upgrade from older versions have been added. The latest Mantis-designated stable version, 0.17.5-4, is available as a .deb package from the Debian Testing (Sarge) archives. If you want security but really want to stay with Debian-approved packages, use it. For those unafraid of the bleeding edge, grab the tarball and have fun. One might even consider rolling one's own .deb from it, but even I haven't gotten that far yet.
Speaking of fun, once I got past Debian's packaging issues, exploring Mantis was pretty darn fun. The only unexpected things either were defined clearly in the documentation--make a category--or were marked as fixed in later versions on the site's web page. Mantis' layout offers what I like in a bug tracker: almost zero eye-candy and a whole lot of functionality. Plus, it's easy for a newbie to navigate Mantis effectively. It even works well in Links--high praise from an old command-line codger like me. Overall, I rate it a provisional 9, subject to grabbing the tarball and testing their bug fixes. In short, Bugzilla had best watch out, because this little six-legger could be its replacement in short order.
Glenn Stone is a Red Hat Certified Engineer, sysadmin, technical writer, cover model and general Linux flunkie. He has been hand-building computers for fun and profit since 1999, and he is a happy denizen of the Pacific Northwest.
|Dynamic DNS—an Object Lesson in Problem Solving||May 21, 2013|
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
|Non-Linux FOSS: Seashore||May 10, 2013|
- Dynamic DNS—an Object Lesson in Problem Solving
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Using Salt Stack and Vagrant for Drupal Development
- New Products
- A Topic for Discussion - Open Source Feature-Richness?
- RSS Feeds
- Drupal Is a Framework: Why Everyone Needs to Understand This
- Validate an E-Mail Address with PHP, the Right Way
- Readers' Choice Awards
- The Secret Password Is...
- All the articles you talked
2 hours 21 min ago
- All the articles you talked
2 hours 24 min ago
- All the articles you talked
2 hours 26 min ago
6 hours 50 min ago
- Keeping track of IP address
8 hours 41 min ago
- Roll your own dynamic dns
13 hours 55 min ago
- Please correct the URL for Salt Stack's web site
17 hours 6 min ago
- Android is Linux -- why no better inter-operation
19 hours 22 min ago
- Connecting Android device to desktop Linux via USB
19 hours 50 min ago
- Find new cell phone and tablet pc
20 hours 48 min ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?