better heuristic for default distribution in 'bzr merge-upstream'

Bug #768640 reported by Barry Warsaw
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Ubuntu Distributed Development
Triaged
Medium
Unassigned
brz-debian
Triaged
Medium
Unassigned
bzr-builddeb
Triaged
Medium
Unassigned

Bug Description

The new watch file support in merge-upstream is awesome. However, I'm thinking that the defaults for distribution and the changelog entry version number should be different to better support Ubuntu development. Here's the use case:

We have foo-1.2-1 in Debian and Ubuntu. Upstream has released foo-2.0 but the Debian maintainer hasn't upgraded that package yet. Because we want to get foo-2.0 into Ubuntu in the meantime, and because we're almost definitely doing development *for* Ubuntu if we're using UDD, when I do `bzr merge-upstream` I would expect the changelog entry to be targeted for the current Ubuntu development version, using a version number like foo-2.0-0ubuntu1. That way, when foo-2.0 appears in Debian and we do a sync request, Debian's foo-2.0-1 will be later than ours.

Revision history for this message
Jelmer Vernooij (jelmer) wrote : Re: [Bug 768640] [NEW] bzr merge-upstream should have more Ubuntu-appropriate defaults

On Thu, 2011-04-21 at 22:18 +0000, Barry Warsaw wrote:
> Public bug reported:
>
> The new watch file support in merge-upstream is awesome. However, I'm
> thinking that the defaults for distribution and the changelog entry
> version number should be different to better support Ubuntu development.
> Here's the use case:
>
> We have foo-1.2-1 in Debian and Ubuntu. Upstream has released foo-2.0
> but the Debian maintainer hasn't upgraded that package yet. Because we
> want to get foo-2.0 into Ubuntu in the meantime, and because we're
> almost definitely doing development *for* Ubuntu if we're using UDD,
> when I do `bzr merge-upstream` I would expect the changelog entry to be
> targeted for the current Ubuntu development version, using a version
> number like foo-2.0-0ubuntu1. That way, when foo-2.0 appears in Debian
> and we do a sync request, Debian's foo-2.0-1 will be later than ours.

   summary "Use -XubuntuY debian revision when target distribution is
Ubuntu"
   affects bzr-builddeb
   status triaged
   tags +merge-upstream

summary: - bzr merge-upstream should have more Ubuntu-appropriate defaults
+ Use -XubuntuY debian revision when target distribution is
Revision history for this message
Jelmer Vernooij (jelmer) wrote : Re: Use -XubuntuY debian revision when target distribution is

Actually, we already appear to do this. However, at the moment the default distribution defaults to the last distribution that we uploaded to as indicated the changelog. Should we change this?

Changed in bzr-builddeb:
importance: Undecided → Medium
Changed in udd:
status: New → Triaged
summary: - Use -XubuntuY debian revision when target distribution is
+ better heuristic for default distribution in 'bzr merge-upstream'
Revision history for this message
Jelmer Vernooij (jelmer) wrote :

Sorry, that was a bit vague. With "we already appear to do this" I meant that we already add the right version suffix when the distroseries is a Ubuntu distroseries.

The heuristic to determine the default distroseries currently just looks at the last changelog entry and assumes the current upload will also be to that distroseries (it can always be overridden with --distribution). This works well for me, as I do quite a bit of Debian development on Ubuntu. I can see how it's incorrect for your use case.

Revision history for this message
Barry Warsaw (barry) wrote :

Ah, thanks for the clarification. I guess the current default makes sense in that we encourage folks to submit changes to Debian first. Maybe all we really need is an update to merge-upstream's --help docs. Here's some suggested text for the middle two paragraphs:

"If the package has a debian/watch file, merge-upstream will look for a new upstream source at the specified url, using uscan(1). If the new upstream version number cannot be automatically determined, or if you want to specify a different upstream version, use the --version option.

The distroseries shown in the top changelog entry will be used as the default distroseries for the new changelog entry. You can override this with the --distribution option. The distroseries is used to guess the version number suffix for the new changelog entry."

Does that help?

Revision history for this message
Jelmer Vernooij (jelmer) wrote : Re: [Bug 768640] Re: better heuristic for default distribution in 'bzr merge-upstream'

On Sat, 2011-04-23 at 17:38 +0000, Barry Warsaw wrote:
> Ah, thanks for the clarification. I guess the current default makes
> sense in that we encourage folks to submit changes to Debian first.
> Maybe all we really need is an update to merge-upstream's --help docs.
> Here's some suggested text for the middle two paragraphs:
>
> "If the package has a debian/watch file, merge-upstream will look for a
> new upstream source at the specified url, using uscan(1). If the new
> upstream version number cannot be automatically determined, or if you
> want to specify a different upstream version, use the --version option.
>
> The distroseries shown in the top changelog entry will be used as the
> default distroseries for the new changelog entry. You can override this
> with the --distribution option. The distroseries is used to guess the
> version number suffix for the new changelog entry."
>
> Does that help?
Yeah, I think that would be a useful improvement; let's at least make
that change.

It would be nice if we could still fix the default distribution to be
correct in more cases. Or perhaps we could at least suggest
--distribution to the user if we make a guess?

Cheers,

Jelmer

Changed in udd:
importance: Undecided → Medium
Jelmer Vernooij (jelmer)
Changed in brz-debian:
status: New → Triaged
importance: Undecided → Medium
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.