<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Nov 22, 2013 at 6:28 PM, Monty Taylor <span dir="ltr"><<a href="mailto:mordred@inaugust.com" target="_blank">mordred@inaugust.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><br>
<br>
On 11/22/2013 06:55 PM, Mark Washenberger wrote:<br>
><br>
><br>
><br>
> On Fri, Nov 22, 2013 at 1:13 PM, Robert Collins<br>
</div><div>> <<a href="mailto:robertc@robertcollins.net" target="_blank">robertc@robertcollins.net</a> <mailto:<a href="mailto:robertc@robertcollins.net" target="_blank">robertc@robertcollins.net</a>>> wrote:<br>

><br>
>     On 22 November 2013 22:31, Thierry Carrez <<a href="mailto:thierry@openstack.org" target="_blank">thierry@openstack.org</a><br>
</div><div><div>>     <mailto:<a href="mailto:thierry@openstack.org" target="_blank">thierry@openstack.org</a>>> wrote:<br>
>     > Robert Collins wrote:<br>
>     >> I don't understand why branches would be needed here *if* the<br>
>     breaking<br>
>     >> changes don't impact any supported release of OpenStack.<br>
>     ><br>
>     > Right -- the trick is what does "supported" mean in that case.<br>
>     ><br>
>     > When the client libraries were first established as separate<br>
>     > deliverables, they came up with a blanket statement that the latest<br>
>     > version could always be used with *any* version of openstack you may<br>
>     > have. The idea being, if some public cloud was still stuck in<br>
>     pre-diablo<br>
>     > times, you could still use the same library to address both this<br>
>     public<br>
>     > cloud and the one which was 2 weeks behind Havana HEAD.<br>
><br>
>     Huh. There are two different directions we use the client in.<br>
><br>
>     Client install -> cloud API (of arbitrary version A)<br>
><br>
>     Server install (of arbitrary version B) using the Python library -><br>
>     cloud API (version B)<br>
><br>
>     From a gating perspective I think we want to check<br>
>     that:<br>
>      - we can use the client against some set of cloud versions A<br>
>      - that some set of version B where servers running cloud version B<br>
>     can use the client against cloud version B<br>
><br>
>     But today we don't test against ancient versions of A or B.<br>
><br>
>     If we were to add tests for such scenarios, I'd strongly argue that we<br>
>     only add then for case A. Where we are using the client lib in an<br>
>     installed cloud, we don't need to test that it can still be used<br>
>     against pre-diablo etc: such installed clouds can keep using the old<br>
>     client lib.<br>
><br>
><br>
> I'm afraid that if a critical bug is found in the old client lib, the<br>
> current path for fixing it is to ask people to update to the latest<br>
> client version, even internally to their old cloud. So would that cause<br>
> a branch for backporting fixes?<br>
<br>
</div></div>The plan is that the current client libs should always be installable.<br>
So we would not (and never have) make a branch for backporting fixes.<br></blockquote><div><br></div><div>Yes. I think wires are a bit crossed here, but you and I agree. It seemed to me that Robert was suggesting that old clouds can internally keep using old versions of client libs. Which seems wrong since we don't do backports, so old clouds using old libs would never get security updates.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><br>
> FWIW, I don't think the changes glanceclient needs in v1 will break the<br>
> 'B' case above. But it does raise a question--if they did, would it be<br>
> sufficient to backport a change to adapt old supported stable B versions<br>
> of, say, Nova, to work with the v1 client? Honestly asking, a big ol' NO<br>
> is okay.<br>
<br>
</div>I'm not sure I follow all the pronouns. Could you re-state this again, I<br>
think I know what you're asking, but I'd like to be sure.<br></blockquote><div><br></div><div>Sorry for being so vague. I'll try to be specific.</div><div><br></div><div>Branch nova/stable/folsom depends on python-glanceclient/master. Suppose we find that nova/stable/folsom testing is broken when we stage (hopefully before merging) the breaking changes that are part of the python-glanceclient v1.0.0 release. Would it be acceptable in this case to have a compatibility patch to nova/stable/folsom? Or will the only option be to modify the python-glanceclient patch to maintain compatibility?</div>
<div><br></div><div><br></div><div>Thanks!</div></div></div></div>