This page is mostly out of date: rosters have been part of mainline monotone since the 0.26 release.

There is a mailing list post by NJS explaining what rosters are.

grep -E "FIXME.ROSTER" *.cc *.hh

Todo before real release

  • tests for roster_merge
  • make sure db check is good?
  • basic root dir stuff, so people can import sutured root dirs
  • cvs_import branch reconstruction would be very nice, but not a blocker
  • merge via working dir would be very nice, but not a blocker

Still needed for baseline functionality

  • we need to figure out what to do about cvs_import -- that it does not connect branches makes it much less useful than we would like!
  • what's the status of db check?

Unit Tests Needed:

  • simple cset tests
    • ordering of complex renames handled correctly - some tests done, perhaps add more
  • cset reading tests
    • detect non-normalized-whitespace-ness - tricky, requires teaching the parser about whitespace ??
  • test equal_up_to_renumbering
  • RostersTodo/MarkAndMergeTests

Smaller tweaks:

  • review docs to see if anything needs changing

Would be nice

(read: "work on this is cool, but don't expect someone else to do it, and before doing it think about whether there's anything above you can do first")

  • interactive conflict resolution for tree rearrangements (for now, rename conflicts etc. still fault)
  • docs on merge algorithm for advanced users
  • restrictions code is a horrible mess -- make_restricted_cset(roster_t, roster_t, cset&)?
  • change restriction semantics to make sense now that we have directories -- yadda-yadda-yadda wildcards? ("commit foo" vs. "commit foo/...")?
  • attribute hooks that are called on attr changes, rather than every time we squint at the working dir funny
  • split_path and file_path distinction is seeming sillier and sillier
  • some sort of state tracking for temp/non-temp and insane/sane rosters?


  • MergeViaWorkingDir
  • git_import (unless pasky wakes up and tells us what's going on with it)
Quick Links:    -     Downloads    -     Documentation    -     Wiki    -     Code Forge    -     Build Status