OT: Distributed bug tracking?

Marcin Kasperski Marcin.Kasperski at softax.com.pl
Thu Jan 3 09:23:48 CST 2008


I made a few simple tests. Nothing sophisticated, but work smoothly.

*) Installation:

  sudo apt-get install bzr  # or install bazaar in some other way
  bzr clone http://panoramicfeedback.com/opensource/bzr/be/
  cd be
  sudo python setup.py install

*) Preliminary testing

be uses itself to track some things so while being in 'be' directory
one may use

   be list
   be show 179

etc. Also you may look inside .be subdir to see what be creates

*) Mercurial testing

I did simple testing 

  $ mkdir blah
  $ cd blah
  $ hg init
  # create and commit some irrelevant file, just in case
  $ echo "aaaa" > a.txt; hg add a.txt; hg ci -m 'SomeThing'
  # This creates .be subdirectory, mercurial is properly autodetected
  be set-root .
  Using hg for revision control.
  Directory initialized.
  # hg statu
  A .be/settings
  A .be/version
  # As be does not commit itself, I will do it
  $ hg commit -m "Be backend initialized"

  # create some issue
  $ be new "I need more money"
  TRPC_CAT:1515: WARN: Could not find network address in /etc/hostsTRPC_CAT:1516: WARN: Using default address 00.00.00.00
  Created bug with ID F

  # I have no clue what is the warning above about, but it seems it
  # does not harm

  # edit issue further
  $ be comment F "My wife wants a car"
  TRPC_CAT:1515: WARN: Could not find network address in /etc/hostsTRPC_CAT:1516: WARN: Using default address 00.00.00.00

  $ be comment F
  # $EDITOR spawns where longer comment may be written,
  # unicode works properly

  $ hg status
  A .be/bugs/F46716B0-77DA-111F-9F1A-000000000000/comments/1CE42376-77DB-111F-975D-000000000000/body
  A .be/bugs/F46716B0-77DA-111F-9F1A-000000000000/comments/1CE42376-77DB-111F-975D-000000000000/values
  A .be/bugs/F46716B0-77DA-111F-9F1A-000000000000/comments/4E7DB97E-77DB-111F-86FE-000000000000/body
  A .be/bugs/F46716B0-77DA-111F-9F1A-000000000000/comments/4E7DB97E-77DB-111F-86FE-000000000000/values
  A .be/bugs/F46716B0-77DA-111F-9F1A-000000000000/values

  $ hg commit -m 'Some bug added'

  $ be list
  Unassigned bugs
  ===============
     F: I need more money

  $ be show F
    ID: F
    Severity: minor
  
    Creator: marcink
  I need more money
  Created: Thu, 03 Jan 2008 16:02 (Thu, 03 Jan 2008 15:02:01 +0000)
  --------- Comment ---------
  Name: F:1
  From: marcink
  Date: Thu, 03 Jan 2008 15:03:08 +0000
  
  My wife wants a car
  --------- Comment ---------
  Name: F:2
  From: marcink
  Date: Thu, 03 Jan 2008 15:04:32 +0000
  
  Preferable models:
  - Porsche
  - Jaguar
  - good old Rolls

  # It works also from subdirectory, in sync with hg
  $ mkdir subdir
  $ cd subdir
  $ be list
  Unassigned bugs
  ===============
     F: I need more money

  $ be close F
  $ be list
  No matching bugs found
  $ be list -c
  Unassigned bugs
  ===============
     F: I need more money

  $ hg ci -m 'closing bug'

  # There is some oops but on ugly command
  $ be diff
  Traceback (most recent call last):
  (...)
  ValueError: invalid literal for int(): "3"

  # Help works sufficiently
  $ be help
  (... list of commands with short description ...)
  $ be help list
  (... switches and detailed desc ...)

  $ be severity F fatal
  $ be assign F marcink
  $ hg status
  M .be/bugs/F46716B0-77DA-111F-9F1A-000000000000/values

  # I failed to guess what "be inprogress" does, maybe
  # it has something to do with "be set target ...."


*) My summary

It looks like the whole integration with mercurial is just
issuing 'hg add' for new bugs. But it is not that easy to
suggest anything more. Hmm, maybe good-old-commit-messages-handling
(detecting texts like 
        fixes 127
or
        related 128
and making appropriate comments in the issues)

In general, I kinda of like this tool. It is simple, similar in spirit
with mercurial command line, light and better than ToDo.txt or sth
similar. It does not seem suitable for larger projects with a lot of
bugs or very long discussions, but for simple projects it is light
and easy solution without bloat.

And - indeed I can imagine such a Mercurial extension.

(which would make one more reason for
http://www.selenic.com/mercurial/wiki/index.cgi/NewIdeas#head-328ec3601a81efa202d24955e0e07086e1f5b43e )





 

-- 
----------------------------------------------------------------------
| Marcin Kasperski   | You have the right to produce quality work
| http://mekk.waw.pl |          at all the times. (Beck)
|                    |
----------------------------------------------------------------------



More information about the Mercurial mailing list