Slashdot Mirror


Ask Slashdot: How Do You Track Bugs For Personal Software Projects?

An anonymous reader writes "One of my personal software projects grows bigger than I thought and the bugs becomes too many to just remember. I looked around for an open source bugs tracking system but found no ideal solutions. Ideally I wanted a simple system that does not need server setup and extra database setup, and can run under Mac OS X. Another option is a cloud service if it's affordable enough. Any suggestions from Slashdot?"

17 of 221 comments (clear)

  1. Mantis by Anonymous Coward · · Score: 5, Informative

    Been using Mantis for years, easy to install, easy to setup, easy to manage.

  2. Lighthouse by Literaphile · · Score: 4, Informative

    They have a free plan - http://lighthouseapp.com/

  3. bugs.txt by Anonymous Coward · · Score: 5, Insightful

    check it in with your code, add and remove bugs as needed. 5 seconds of setup. Search and has a history.

    1. Re:bugs.txt by Rob+Kaper · · Score: 4, Interesting

      I wrote find-issues.sh, a script that extracts comments of a certain type within the code and then groups them by file. Downside: your code files change when you register a bug. Upside: when done right, your bug description is next to the code that needs fixing.

      Obviously won't work for distributed development, but for single-coder projects, it's really been useful to me.
      Note some assumptions and grep magic to exclude third-party files and other non-code files.

      #!/bin/sh

      LASTFILE=""
      egrep -ri "(WARNING|HACK|FIXME|TODO|BUG)" . | egrep -vi "(\.git|debug|/third-party|/locale|/prettify|doc/|/jquery-|lib/s3.php|/jwysiwyg/|^./(.*)\.(txt|conf|xml):(.*))" | while read LINE ; do
              FILE=`echo "${LINE}" | cut -d":" -f1`
              DATA=`echo "${LINE}" | cut -d":" -f2- | cut -d"/" -f3-`
              LEVEL=`echo "${DATA}" | cut -d":" -f1`
              COMMENT=`echo "${DATA}" | cut -d":" -f2-`

              if [ "x${LASTFILE}" != "x${FILE}" ]; then
                      if [ "x${LASTFILE}" != "x1" ]; then
                              echo
                      fi
                      printf "%s:\n" "${FILE}"
                      LASTFILE=${FILE}
              fi
              printf "%5s:%s\n" "${LEVEL}" "${COMMENT}"
      done

  4. Try Trello by Anonymous Coward · · Score: 5, Interesting

    Try Trello, it is simple enough to use, free and cloud based.

    https://trello.com/

  5. Post a Press Release. by jellomizer · · Score: 5, Funny

    After every bug in my project you post a press release, discrediting the person who found the bug as some subversive agent, and explaining its uses of the bug in a positive light.

    After the press release is done, I like to go into a dark room with a rocking chair, plug my ears and go LA LA LA really loudly until someone else says there is an other bug.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  6. Dead project mining. by TheCycoONE · · Score: 4, Funny

    Find a dead project online, and hijack their bug tracker. Just as long as it's one where you can register without authorization and close your own bugs it should work brilliantly.

    1. Re:Dead project mining. by jellomizer · · Score: 4, Interesting

      Unless the project died from improperly managing bugs...

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    2. Re:Dead project mining. by larry+bagina · · Score: 5, Funny

      sourceforge *is* a dead project.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

  7. Use unfuddle.com by Drake42 · · Score: 4, Informative

    I am not associated with them, nor employed by them. But I've used them for many projects now and been generally happy with the result.

  8. Redmine by Roadmaster · · Score: 4, Informative

    When I need to set up a self-hosted project and bug tracker, I normally use Redmine, which is very easy to use. It's written with Ruby on Rails, and so should be relatively easy to get a local SQLite-backed copy running on Mac OS using Rails' built-in mini web server.

    This post is overly complicated but some of its information may be useful:

    http://www.redmine.org/boards/2/topics/2768

  9. Fossil is the way to go. by Noryungi · · Score: 5, Informative

    Fossil (http://www.fossil-scm.org) is just great: it allows you to manage your code, documentation (wiki) and tickets (bugs).

    It's really small and lightweight, offers its own web interface and can be made to run on a central server with a CGI script. Oh, and it's free and open-source.

    It also scales very well: for instance the entire NetBSD code base has fossil repositories.

    I am currently re-starting some personal projects and I will be using fossil almost exclusively for these. It's simply fantastic.

    --
    The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
  10. Way Too Complicated by MyLongNickName · · Score: 4, Insightful

    Okay, first I'm not given a lot of info about what you are trying to do, so I am forced to make assumptions. First, you are doing this part-time. Second, you have a small amount of users. Third, I assume these users either email you or tell you about problems in person. Fourth, you don't have any need to formally update people on statuses.

    I have a great solution for you. It is called a spreadsheet. The positive is that is it free, easy to use and modify to suit your needs. No, it isn't flashy, but I find that folks tend to use software as a replacement for their own brain and creativity. I've used spreadsheets for a lot of different utilities from project management, to bug tracking to help desk support in small environments. Once the user base sees limitations, they can begin to see what they truly need and it helps immensely in determinng what the desired solution really is versus what the Microsoft shill^h^h^h^h^h consultant tells them they need.

    So, yes, use a spreadsheet. Heck, in your case it really sounds like a text editor would meet your needs.

    --
    See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
  11. Wait a second... by kid_wonder · · Score: 4, Funny

    I'm confused. You actually keep track of problems with your personal projects in the hopes of completing them one day?

    I must be doing it wrong because I start a project and as soon as i get to the first major design issue, or meal time, i quit.

    so i don't really ever have any bugs, per se. but i do have an svn with a sh*tload of half ass projects that i can let you have real cheap.

    --

    "Oh, you hate your job? There's a support group for that, it's called everyone, they meet at the bar."
  12. Turnkey Redmine by PatDev · · Score: 4, Informative

    http://www.turnkeylinux.org/redmine Seriously. I had an issue tracker running in 5 minutes. By 15 minutes I had the settings the way I wanted it. They ship you a virtual machine image. You load it into VirtualBox and click start. The VM loads to a little screen that tells you what IP address the redmine is running at. It also has git i installed, and it was super quick to migrate my git repo into it. Since I use redmine with git, it's really handy because they are already integrated - when I put "refs #32" in my git commit message, it appears on ticket #32.

  13. Re:highlighted comments in source by LodCrappo · · Score: 5, Insightful

    > What happens when you have more bugs than you have time to fix?

    You put a quick note in with a TODO tag

    > How do you choose which to work on first?

    You switch to a view that shows all your TODO tags and take your pick

    > How do you remember which ones lead to data loss, and which ones have a workaround?

    You type those details into the TODO tag

    > How do you remember how to reproduce each bug?

    See above

    > How do you manage patches?

    diff on commit = patch. no big deal.

    > How do you remember which patches are compatible with other patches?

    whatever man, you are really reaching here. make all patches compatible with all others, or pay the price. this is a personal project.

    > How do you track the number of reported occurrences of a bug so you can prioritize your fixes more intelligently?

    again, simply add this type of detail to your TODO tag

    --
    -Lod
  14. Re:todo.txt by NevarMore · · Score: 5, Funny

    I file mine in my todo.txt, which also includes missing features. Since I don't do a release if there are *any* known outstanding bugs, "bugs" and "incomplete features" are essentially the same for me.

    So you never release?