pushing to a packaging branch can't create a new package

Bug #386596 reported by Robert Collins
24
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Launchpad itself
Critical
Aaron Bentley

Bug Description

bzr push bzr
+ssh://bazaar.launchpad.net/~libcpuinfo-developers/ubuntu/karmic/libcpuinfo/trunk
bzr: ERROR: Permission denied:
"/~libcpuinfo-developers/ubuntu/karmic/libcpuinfo/trunk": : No such
source package: 'libcpuinfo'.

Pushing should simply create the sourcepackagename (as we're looking at removing that table anyway, this is consistent with that, and consistent with the existing dput behaviour (allows new packages from anyone to be created).

Related branches

Revision history for this message
Jonathan Lange (jml) wrote :

On another axis, it's consistently restrictive -- we don't let you create anything other than branches via the SSH server.

I talked to beuno about this (being a user-visible change, it needs a UI review). He suggested that we only create the package when --create-prefix or some other option is passed to bzr, to avoid creating packages as a result of typos.

Another approach, which we didn't discuss, is for the codehosting server to create the branch without any special option, but to trigger some client-side warning saying that it s doing so, and point to a way of moving the branch to the correct package and undoing the creation of the package. This is probably more complicated to implement.

tags: added: codehosting-ssh package-branches
Changed in launchpad-code:
importance: Undecided → Medium
status: New → Triaged
Revision history for this message
Robert Collins (lifeless) wrote : Re: [Bug 386596] Re: pushing to a packaging branch can't create a new package

On Fri, 2009-06-26 at 05:49 +0000, Jonathan Lange wrote:

> On another axis, it's consistently restrictive -- we don't let you
> create anything other than branches via the SSH server.

Sure. However we want to change that don't we? to allow package
builds-from-bzr and so on in the future :).

> I talked to beuno about this (being a user-visible change, it needs a
> UI
> review). He suggested that we only create the package when --create-
> prefix or some other option is passed to bzr, to avoid creating
> packages
> as a result of typos.

I don't understand why creating a package is a problem. Surely a mistake
can be corrected by just deleting the branch and the package?

> Another approach, which we didn't discuss, is for the codehosting
> server
> to create the branch without any special option, but to trigger some
> client-side warning saying that it s doing so, and point to a way of
> moving the branch to the correct package and undoing the creation of
> the
> package. This is probably more complicated to implement.

Pragmatically, stderr on the ssh virtual socket is shown to command line
users. There is a bug open about having something more sophisticated but
I don't recall the number offhand.

I can suggest another option. Due to the machinery involved in
packaging, the content in the packaging branch is tied to the release
and package name; its actually possible to simply check that
debiang/changelog is for the named package. (You could go further and
check for the same release too if desired).

-Rob

Revision history for this message
Jonathan Lange (jml) wrote : Re: [Bug 386596] Re: pushing to a packaging branch can't create a new package

On Fri, Jun 26, 2009 at 4:01 PM, Robert
Collins<email address hidden> wrote:
> On Fri, 2009-06-26 at 05:49 +0000, Jonathan Lange wrote:
>
>> On another axis, it's consistently restrictive -- we don't let you
>> create anything other than branches via the SSH server.
>
> Sure. However we want to change that don't we? to allow package
> builds-from-bzr and so on in the future :).
>
>> I talked to beuno about this (being a user-visible change, it needs a
>> UI
>> review). He suggested that we only create the package when --create-
>> prefix or some other option is passed to bzr, to avoid creating
>> packages
>> as a result of typos.
>
> I don't understand why creating a package is a problem. Surely a mistake
> can be corrected by just deleting the branch and the package?
>

In the following paragraph, I suggested that we point users to a way
of moving the branch to the package they intended and undoing the
creation of the package.

Why does 'bzr push' only create parent directories when
--create-prefix is passed? The directories can be deleted if there was
a mistake in the push location. To me, this seems like a analogous
user interface decision.

>> Another approach, which we didn't discuss, is for the codehosting
>> server
>> to create the branch without any special option, but to trigger some
>> client-side warning saying that it s doing so, and point to a way of
>> moving the branch to the correct package and undoing the creation of
>> the
>> package. This is probably more complicated to implement.
>
> Pragmatically, stderr on the ssh virtual socket is shown to command line
> users. There is a bug open about having something more sophisticated but
> I don't recall the number offhand.

It's still probably more complicated to implement, even with that.

In any case, beuno is the person to convince.

> I can suggest another option. Due to the machinery involved in
> packaging, the content in the packaging branch is tied to the release
> and package name; its actually possible to simply check that
> debiang/changelog is for the named package. (You could go further and
> check for the same release too if desired).
>

That would be still more complicated to implement, I think. If
implemented on the server side, it would make it inconvenient to push
new package branches that lack well-formed debian/changelog files.

jml

Revision history for this message
Robert Collins (lifeless) wrote : Re: [Bug 386596] Re: pushing to a packaging branch can't create a new package

On Fri, 2009-06-26 at 06:23 +0000, Jonathan Lange wrote:
> On Fri, Jun 26, 2009 at 4:01 PM, Robert
> Collins<email address hidden> wrote:

> > I don't understand why creating a package is a problem. Surely a mistake
> > can be corrected by just deleting the branch and the package?
> >
>
> In the following paragraph, I suggested that we point users to a way
> of moving the branch to the package they intended and undoing the
> creation of the package.
>
> Why does 'bzr push' only create parent directories when
> --create-prefix is passed? The directories can be deleted if there was
> a mistake in the push location. To me, this seems like a analogous
> user interface decision.

Thats a good question, and perhaps it should.

> > I can suggest another option. Due to the machinery involved in
> > packaging, the content in the packaging branch is tied to the release
> > and package name; its actually possible to simply check that
> > debiang/changelog is for the named package. (You could go further and
> > check for the same release too if desired).
> >
>
> That would be still more complicated to implement, I think. If
> implemented on the server side, it would make it inconvenient to push
> new package branches that lack well-formed debian/changelog files.

badly formed debian/changelog files prevent deputting the source package
today - it would be no less convenient than it is to get a source
package onto the server today (and in fact it is a good sanity check
that we should perhaps do anyway)

-Rob

Revision history for this message
Robert Collins (lifeless) wrote :

Escalated per sabdfl: we want to be able to create spns ('components') in distros just by pushing a branch (in particular for unpublished distros)

Changed in launchpad:
importance: Medium → Critical
tags: added: escalated
tags: added: stakeholder
description: updated
tags: added: principia
tags: added: not-pie-critical
Revision history for this message
Deryck Hodge (deryck) wrote :

I've added this bug to the next lane for the Orange Squad so someone from my squad should be working on it very soon.

Aaron Bentley (abentley)
Changed in launchpad:
assignee: nobody → Aaron Bentley (abentley)
Revision history for this message
Launchpad QA Bot (lpqabot) wrote :
tags: added: qa-needstesting
Changed in launchpad:
status: Triaged → Fix Committed
Aaron Bentley (abentley)
tags: added: qa-ok
removed: qa-needstesting
Aaron Bentley (abentley)
Changed in launchpad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers