Boost logo

Boost :

Subject: Re: [boost] [Git] Boost Filesystem now has public GitHub repository
From: wash (admin_at_[hidden])
Date: 2011-02-13 13:42:42

Hash: SHA1

On Sun, 13 Feb 2011 11:15:55 -0500
Beman Dawes <bdawes_at_[hidden]> wrote:
> The point of this public repo is to gain actual use experience with
> Git and with a modularized Boost library.

Oh boy.

On Sun, 13 Feb 2011 11:15:55 -0500
Beman Dawes <bdawes_at_[hidden]> wrote:
> So far this whole experiment has been very reassuring. No problems and
> everything worked instantly.

How do you plan to get your changes back into Boost SVN, without loosing
versioning information? The setup you've described looks incredibly painful.
You've decided to completely forgo the use of developed cross-VCS tools in
favor of applying patches locally? Why have VCS at all, then?

The Spirit developers considered moving Spirit development outside of the Boost
SVN. I was the person who did most of the research on the implementation of such
a move. The extensive research I did into Git, Mercurial, BZR and downstream SVN
mirrors all brought me to the same conclusion: that the sort of workflow you're
describing is a PITA.

On Sun, 13 Feb 2011 11:15:55 -0500
Beman Dawes <bdawes_at_[hidden]> wrote:
> When it comes time to apply the changes to the Boost repo, I'm
> applying the diffs locally and then committing.

You mean, you are going to manually commit each git commit to svn (resulting in
two commits for every actual revision)? Or are you just going to squash your
git commits and apply them at once?

On Sun, 13 Feb 2011 10:02:33 -0500 (EST)
bdawes_at_[hidden] wrote:
> Author: bemandawes
> Date: 2011-02-13 10:02:27 EST (Sun, 13 Feb 2011)
> New Revision: 68837
> URL:
> Log:
> Merge changes from Important changes
> include fix for serious Windows reparse point bug, code cleanup, reference
> doc fixes and addition of missing functions, and the addition of
> symlink_option for recursive_directory_iterator. Added:
> trunk/libs/filesystem/v3/test/msvc10/tut5/
> trunk/libs/filesystem/v3/test/msvc10/tut5/tut5.vcxproj (contents, props
> changed) trunk/libs/filesystem/v3/test/msvc10/tut6a/
> trunk/libs/filesystem/v3/test/msvc10/tut6a/tut6a.vcxproj (contents, props
> changed) trunk/libs/filesystem/v3/test/msvc10/tut6b/
> trunk/libs/filesystem/v3/test/msvc10/tut6b/tut6b.vcxproj (contents, props
> changed) trunk/libs/filesystem/v3/test/msvc10/tut6c/
> trunk/libs/filesystem/v3/test/msvc10/tut6c/tut6c.vcxproj (contents, props
> changed) Text files modified:
> trunk/boost/filesystem/v3/operations.hpp | 81 +++++++--
> trunk/libs/filesystem/v3/doc/path_table.cpp | 2
> trunk/libs/filesystem/v3/doc/reference.html | 260
> +++++++++++++++++++++++---------
> trunk/libs/filesystem/v3/src/operations.cpp | 25 ++
> trunk/libs/filesystem/v3/test/msvc10/filesystem-v3.sln | 10 +
> trunk/libs/filesystem/v3/test/operations_test.cpp | 311
> ++++++++++++++++++++++++++++----------- 6 files changed, 500 insertions(+),
> 189 deletions(-)

So you're just going to squash git commits and apply them at once :(?
It is in bad form in the Boost world to commit multiple changes at once, as
this makes it harder to track down breaking changes.

It seems clear to me that this is a violation of our Boost SVN policies and
culture. Where is the list discussion about this change?

Commits should be made atomically. And you should not squash commits together -
if there is a problem with a change you make, it becomes harder for others (or
yourself) to revert it. This is a mistake that I myself have made in the
past. Steven was reverting changes that I made to Boost.Config - other, valid
changes to Boost configuration were also changed in the same commit.

On Sun, 13 Feb 2011 09:48:03 -0500 (EST)
bdawes_at_[hidden] wrote:
> Author: bemandawes
> Date: 2011-02-13 09:48:01 EST (Sun, 13 Feb 2011)
> New Revision: 68836
> URL:
> Log:
> Initial commit; bitmask.hpp is needed by upcoming filesystem changes
> Added:
> trunk/boost/detail/bitmask.hpp (contents, props changed)

Where is the list discussion about this speculative addition to the
Boost detail headers? Why is this not in filesystem, if it is code that
filesystem needs?

- --
Bryce Lelbach aka wash
Version: GnuPG v1.4.9 (GNU/Linux)


Boost list run by bdawes at, gregod at, cpdaniel at, john at