Comment 3 for bug 259275

Revision history for this message
John A Meinel (jameinel) wrote :

For 1.6 I just disabled the autodetection of 'stack-on' from a containing bzrdir.

The specific issue is that "sprout()" was updated to automatically upgrade the Branch when it automatically upgraded the repository. But clone() was not given the same treatment. (so bzr push breaks, but bzr branch works.)

I think *a* correct fix is to only pay attention to the containing policy when the source format supports it.

Another possible fix is to automatically upgrade during "push" as well as during "branch". (The current code in bzr.dev will upgrade the repository without upgrading the branch.)
However, that seems a bit iffy. It is arguably true if the user explicitly set the 'default_stack_on' value.

It interacts badly with LP if LP sets that value by default. (Since then pushing to LP would automatically upgrade your branches in a non-backwards-compatible manner.)

We could blame LP for that, but really I think we want bzr + LP to work together nicely. (It could be an LP whitelist, etc.)

Either way, a fix is still needed for bzr.dev, 1.6 is taking the easy way out and just disabling the feature. So at least LP won't have to deal with having some clients respond incorrectly to the setting.

In the end, we need to decide as a project what should happen, so I'll bring it up on the mailing list.