Bzr Traffic #1
James Blackwell
jblack at merconline.com
Thu Sep 29 04:35:26 BST 2005
Welcome to Bzr traffic #1. This paper summarizes the Bazaar-NG mailing list for
the week of 21-28 September, 2005. Any summary, by definition will be lossy.
Resonable care has been taken.
= Bazaar-NG web server =
The built in web server conversation wrapped up this week. This conversation
ended with the all-too-common disagreement over things everyone agrees about.
The end result was the following:
* A built in webserver is either OK or a Good Thing.
* The server should not run by default. Instead, the web server should be
enabled by running a command (the strawman example was "bzr webserver").
The conversation then shifted to details involved in displaying revisions in
the webserver plugin design.
= Options representation =
Robey Pointer had a bit of difficulty figuring out how to use the cset
(that's a changeset command for those that don't speak RCS as a native
language). He made a suggestion or two for bzr behavior that was ironically
a perfect definition of current behavior. Apparently Pointer hadn't tried to
use bzr in the way that he had suggested. ;)
The conversation then moved across to changeset conflation (conflation is
when two or more changesets get munged together into a super-changeset with
one description). Again, it looked as if Bzr already supported the requested
behavior. After a couple more discussions on the topic, the thread has died
out
= Executable bit tracking in NG =
Gustavo Niemeyer reopened the conversation on tracking the executable bit in
Bazaar-NG reopened this week. John Meinel referenced some old code that might
still have some use. After several lengthy discussions, the consensus was that
the executable bit would be stored independantly in the branch.
A significant part of this conversation involved something called "properties".
Properties are a kind of metadata about files and branches that the NG tracks
along with files, directories and branches that bzr may or may not use
directly. The significant portions of the conversation seems to revolve around
three issues: Whether intrinsic data (revision ids, file ids, et al) are
properties, the amount and complexity of the code required to support the
merging of properities and whether or not it matters if NG can handle
properties that the tool doesn't use directly.
In a later thread, Niemeyer supplied a patch that Meinel seemed to like, which
has not been responded to yet by Bzr developers.
= Graph distance patch =
Abentley wrote, and Robert Collins accepted, a patch to fix the selection
of the proper ancestor for merging.
= The stablest branch =
A conversation about a minor bug in the development branch of NG spawned a
question about whether Collin's integration branch is safer to follow. Collins
explained that occasionally the development branch (maintained by Pool)
sometimes fell a little behind the Collins integration branch when Pool was
heavily focused on complicated issues like weave.
= 3rd party usage of NG =
An off-list person named Johann Borck mailed an email to James Blackwell asking
for information on using NG as a third party python library. Blackwell
forwarded this request to the list, provided several responses to on the issue
which were mailed back to Borck. For all intensive purposes, Borck was told
that NG was meant to be useable as a library and that if he ran into any
problems that they would be considered bugs.
= Using ElementTree =
A short thread opened up about how to properly import ElemenTree for NG usage.
The thread petered out without any sort of solid resolution
= Weave coming soon to a branch near you! =
Pool announced on 22 Sept that weave was nearly ready for merging into the
development tree. He pointed users at his weave branch and asked users to
give it a try and see what they thought. This resulted in a hodge-podge of
replies ranging from bugfixes to questions about the storage format.
= Bzr test failing on non-linux platforms =
Alexander Belchenko noticed that bzr selftest was failing on cygwin.
Meinel chimed in that the same problem seemed to exist on Mac OS-X as well and
supplied a fix for both systems. Collins reviewed the patch and accepted it
into integration.
= Graphing History =
The latent artist in Aaron Bentley resurfaced this week. Bentley invested a
bit of time into showing the relationships between branches that merge back
and forth by prettifying the graphs creatable in bzrtools. This lead to quite
a bit of conversation about minor representation details (which colors to use
in the graph, how to weight individual components to convince dot to represent
meaning well, etc).
Apparently Bzr has roots in Kentucky, as one person commented that the graph
ends up "*very* convoluted" and incestuous.
As a side note, this is typical of distributed revision control systems. Once
a group of people have the ability to merge from anywhere to anywhere, they
tend to take liberal use of the feature.
= Meld support for Bzr =
Niemeyer wrote a patch for meld this week. Meld is a tool that is useful for
showing the differences between two trees. If a better way to to convey the
meaning in the differences between two trees then it is a secret. Several
people were thrilled with this news and cheered Niemeyer on.
= Formating diffs properly =
A problem surfaced again this week, this time in bzrtools, about tucking away
useful information in a way that doesn't trick naive third party tools. The
crux of the problem is that "***" is supposed to be a descriptive field of
some time. Tools have gotten used to treating the data there as if it were
more than a comment and bomb miserably whenever a tool uses it for a different
type of comment.
= Bzr status --revision =
Collins accepted a patch from Heikki Paajanen this week that gives one the
capability to get the status from between any two revisions. The thread
wound up with a short conversation on coding guidlines between Collins and
Meinel.
= Several fixes =
Collins then merged a couple small fixes/features into integration for the log
and status command.
= Bzr on Windows =
A medium sized thread still under active discussion opened this week. Alexander
Belchenko wrote a pile of fixes for Bzr under windows, most of which was
accepted by Collins. Belchenko was asked to update the remaining parts of the
patches which do not merge cleanly. This was followed by more fixes, again
only some of which cleanly applied.
This thread wrapped up in an amusing twist. As part of Collin's suggestions for
fixes to Belchenko's work, he requested a certain type of documentation format
for python called "PEP8". Collins provided a nice example of the proper way
to do this type of documentation. As has happened to all of us, somebody (in
this case Andrew Bennetts) popped out of the woodwork and said the correct
example was wrong too. If Collin's response is any indication, there's a mutt
out in Australia that's being beaten by a short heavy stick right now.
= Bzr on NFS =
Collins accepted into integration a patch from Harald Meland that will fix
locking issues for NG under NFS.
= Uncommit for Bzr =
Meinel launched a large thread this week over the bzr uncommit plugin. Martin
apparently like what he saw so much that he suggested that the plugin be
integrated into NG directly. Meinel went right to work.
The thread then broke into the next thread.
= Abandoning older history on branch =
Apparently frustrated by the number of workarounds for Bzr's current heavy
history model, Bentley wrote a patch for an option to branch that will skip
old history when branching. After a little bit of discussion between Bentley
and Meinel, Collins took the patch into integration.
A big part of the discussion involved the paucitity of support for hardlinks
in Windows and Mac-OSX. Mac-OSX emulates them very poorly and Windows can
actually get a bit schitzophrenic with certain tools or actions.
= Bzr 0.0.9 out =
Pool released 0.0.9 this week. Included were mostly things from the above
threads; i.e. several fixes, a minor feature and one internal change. The next
planned version of Bzr is 0.1
Source mage was updated to use 0.0.9
The windows release was updated
= Bzr pull not chatty enough =
Meinel mentioned that bzr pull was a strong-but-silent type that doesn't tell
the user whether or not pull changed anything or not. After a short discussion
between Mark Rosenstand and Meinel, the thread petered out.
= Append only weaves =
The current planned weave implementation does not just add to the RCS data --
it modifies the weaves as well. Both Meinel and Bentley are working on seperate
implementations to weave to implement append only.
= Bzr mv =
Another short thread, this time between Meinel and Johan Rydberg. Rydberg had
trouble with moving files with the "mv" command, realizing that he should have
used "bzr move" instead and then having to move them back and use bzr.
One of the suggestions was a flag to tell bzr move that the files had already
been moved and to just update the inventory.
= I18N =
There was a bit of a thread regarding I18N this week between several people
about handling i18n in bzr this week. The group came up with a workaround that
seemed to please everyone.
= Improved Help to be Delayed =
Magnus Therning, who was working on a new help system for the bzr help command,
apparently mistook his laptop for his kitty and gave his laptop entirely too
much milk. e sadly reported that he probably wouldn't be able to work on the
new help system for awhile.
= apply_changeset not quite right =
Bentley and Meinel engaged in a complicated discussion about figuring out the
right parent changeset for which to use when working with changesets. It seems
that the current behavior is usually, but not always right. The two of them
have gone back and forth for quite a bit over the last few days in a search for
the right way to do things. This thread still looks active.
= Adding support for unknown files in status =
Heikki Paajanen worked up a patch to show unknown files in the status command.
Collins provided some gentle guidance on how to rewrite part of the patch so
that it was more eloquent.
= Keywords in source code =
One of the more popular features of CVS is the ability to place in keywords
like autohr and date into source code. Bzr doesn't support this yet. George
Young came up with an external hack to provide some marginal support for this
and asked if a better way existed. Bentley and Meinel both replied that his
way was the right approach to take.
= NG export partially broken =
Wouter Bolsterlee reported that the tbz export method for bzr creates the
wrong directory name. He later replied to himself with a patch.
= Bzrweb support =
Jordan Breeding asked for bzr init <location> which was followed up by a patch
by Meinel. Chris McCormick popped in and explained that he had python
dependancy problems on many of his servers that precluded using bzr on those
machines. He was, however, able to upload a newer version that fixed the
problems Jordan had.
--
James Blackwell | Try out the blog planet for revision control
Tell someone a joke! | at http://planet.revisioncontrol.net
----------------------------------------------------------------------
GnuPG (ID 06357400) AAE4 8C76 58DA 5902 761D 247A 8A55 DA73 0635 7400
More information about the bazaar
mailing list