<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Oct 29, 2013 at 6:42 PM, "C. Bergström" <span dir="ltr"><<a href="mailto:cbergstrom@pathscale.com" target="_blank" class="cremed">cbergstrom@pathscale.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 10/30/13 08:24 AM, Richard Smith wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
May I humbly propose you create a c++11-development branch<br>
now/later/anytime and let people start using that. In parallel to<br>
that let people know that pieces of the c++11 branch will<br>
potentially start merging Feb 1st 2014. (roughly 3 months from<br>
today). This gives people time to review things before they hit<br>
trunk, test, discuss and experiment in a way that virtual<br>
discussions simply can't flush out. This hopefully won't hurt your<br>
target of the release-after-next using more modern toolchains and<br>
is *hopefully* a win-win in your view.<br>
<br>
<br>
I don't see how this helps anything. We don't /want/ to have the hassle of some people developing on a branch and some on trunk, so we would essentially have trunk stagnating and everyone developing on the branch. And then we'd merge the branch back again. Net result: exactly the same as if the people who aren't ready for c++11 stick with the 3.4 release.<br>
</blockquote></div>
No its entirely not the same<br>
<br>
1) Branch development is very common - I can't imagine *everyone* will use c++11 immediately and it causing some instant stall on trunk if a branch was made<br></blockquote><div><br></div><div>It is not common in LLVM.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
2) As stated before - a branch lets a *real* discussion happen *before* it hits trunk. With any big feature change - isn't it best to be a little conservative instead of potentially break 1st and fix-it-later approach.<br>
<br>
Right now we're having a virtual discussion about things which may/may not happen. A branch with code is a tangible which can allow *real* testing and feedback. I think it's being worked on independently, but I haven't even seen an updated style guide. I don't even know what's exactly being proposed at this time. "c++11" is still fuzzy...<br>
</blockquote><div><br></div><div>Many of the folks discussing this and indeed many of the contributors have worked on reasonable size code bases with C++11 features. We also have a sub-project using those C++11 features. I think there is nothing fuzzy and nothing objectionable here.</div>
<div><br></div><div>I don't think your objection is significantly concerning, and frankly, the consensus (weighted by contribution to the projects) still seems strongly supportive, and so I'm moving forward.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
clang/llvm has been around for 10 years?? Will waiting an extra month or doing some work in a branch 1st really kill anyone?</blockquote><div><br></div><div>No, it simply won't happen. That's why we don't use branches often.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> Doesn't google and friends already use a branch model for development/test before it's merged.<br>
</blockquote><div><br></div><div>Many people maintain branches for internal code that doesn't get contributed (often because it's not useful, or just not ready). But when they go to contribute it, they work to integrate it into the mainline as-if developed against head. Andy's recent work on the support for patching running code etc is a great example.</div>
<div><br></div><div>Please don't make this about Google, Apple, or other companies, as it isn't. This is about the LLVM open source project, and what the body of active contributors think the *right* direction for the project is. I think we have some pretty strong agreement thus far: C++11.</div>
</div></div></div>