Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-06 Thread Pau Garcia i Quiles
On Sat, Apr 2, 2011 at 4:25 PM, Michael Terry
 wrote:
> On 02/04/11 09:56, Scott Ritchie wrote:
>>
>> This has long been "good practice" for a variety of reasons
>
> I agree with all your reasons, but tend to prefer ~lucid1, ~maverick1, etc.
> in case the same package is available for multiple releases.

I may be a rare specimen but I combine both:

debianversion~series~ppaNUMBER

For instance:

3.1.8-2~maverick~pgquiles1


-- 
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-05 Thread Max Bowsher
On 02/04/11 14:56, Scott Ritchie wrote:
> This has long been "good practice" for a variety of reasons
> 
> 1) Independent PPA packages of new upstream versions can be
> automatically replaced when a proper distro update occurs.
> 2) If the PPA package itself gets promoted to the archive, it can be
> replaced by just dropping the ~ppa
> 3) It makes the version string more meaningful, as it prevents the
> possibility of an official and PPA package having the same version
> 4) If you are branching foo-0ubuntu1 and need multiple iterations you
> now have a proper number to increment without implying you've rebased
> off foo-0ubuntu2.
> 
> Making such a change would have other value:
> 
> 1) It makes it much easier to detect nonstandard packages on a system.
> This can be done with automated tools too without fear of false
> positives (in bug reports, with apport, with update manager, etc)
> 2) If all PPA packages were so branded, it would be much easier to
> implement a "remove all PPA packages" type of feature.
> 
> 
> Thoughts?

No, please no, this would be incredibly annoying?

I pretty much agree with all the points in your "good practice" list,
but the strict string "~ppa(number)" isn't the only way to satisfy them,
and there are those of us out there who do understand Debian versioning
and can pick reasonable strings ourselves.

Whilst I think the widespread promotion of "~ppa1" has overall been a
good thing, it has led to one negative effect - people who don't truly
understand why it works seem to view "~" as a generic separator
character rather than understanding its true meaning.

In regards to your "other value" points, it really should not be that
hard to implement those features in a more elegant and ultimately more
useful way based on APT package lists and Origin metadata, rather than
hacking it via substring matching on version strings.


That said, I can totally see that it could be a good thing to implement
a safety net in Launchpad which denies the ability to upload version
strings that "look like" primary archive versions, unless the PPA owner
clicks through an "I know what I am doing" questionnaire.

Max.



signature.asc
Description: OpenPGP digital signature
-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-03 Thread Loïc Minier
 I don't mind some safe heuristics like ~ppa being stripped for you if
 you say you're uploading to Ubuntu instead of a PPA, or vice-versa.
   But there are many different uses for PPA packages, so I wouldn't
 want a specific scheme to be required.  I would propose that we try to
 discuss how to improve specific workflows and work from them.

 To take a couple of examples:
 * we had the case of people uploading to a PPA without a ~ in the
   version or people uploading to the archive something which was meant
   to be uploaded to the distro; I personally use a small dput wrapper
   (attached) which isn't too nice but does the job for me: it asks for
   confirmation if the version in the upload contains "ppa", a ~, or
   "dooz" (which is just what I use when uploading to my own PPAs -- I
   sometimes use ~linaro for Linaro PPAs, but sometimes ~lucid for
   backports)
 * another common request is identifying packages which come from PPAs;
   we could automatically include this information in .debs via some
   pkgbinarymangler trick, or via Launchpad; something like Built-In:
   ubuntu/lucid, Built-In: ppa:lool/ppa/ubuntu/lucid etc.  This would
   likely be easier to implement globally.

 There are also packages which don't like special version numbers; I had
 cases of build failures when certain chars appear in the version or
 there is the case of the linux source package which puts very specific
 meaning behind versions, so it's not practical to impose a specific
 version scheming to all PPA packages immediately.

-- 
Loïc Minier
#!/bin/sh
# dput - wrapper for /usr/bin/dput asking for confirmation on some uploads
# Copyright (C) 2008 Loïc Minier 
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
# SOFTWARE IN THE PUBLIC INTEREST, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR
# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
# Except as contained in this notice, the name of the author shall not be used
# in advertising or otherwise to promote the sale, use or other dealings in
# this Software without prior written authorization from the author.
#
# depends: dput

set -e

log() {
echo "$*" >&2
}

log_i() {
log "I:" "$@"
}

die() {
log "E:" "$@"
exit 1
}

yes_no_prompt() {
local prompt="$1"
local answer

while read -p "$1" answer; do
case "$answer" in
  Y|y|yes)
return 0
  ;;
  N|n|no)
return 1
  ;;
  "")
return 2
  ;;
esac
done
}

changes=""
host=""
for arg; do
case "$arg" in
  -*)
:
  ;;
  *.changes)
changes="$changes $arg"
  ;;
  *)
if [ -n "$host" ]; then
die "Host $host already given but found $arg in args"
fi
host="$arg"
  ;;
esac
done

confirm=no
for change in $changes; do
version="`sed -n '/^Format:/,/^$/s/^Version: *//p' "$change"`"
if [ -z "$version" ]; then
die "No Version header in $change"
fi

case "$host" in
  debian|ubuntu)
case "$version" in
  *dooz*|*~*|*ppa*)
log_i "Uploading $change with version $version to host $host 
requires confirmation"
confirm=yes
:
  ;;
  *)
# doesn't need confirmation
:
  ;;
esac
  ;;
  ppa:*|ppa-*)
# doesn't need confirmation
:
  ;;
  *)
log_i "Uploading to unknown host $host requires confirmation"
confirm=yes
  ;;
esac
done

if [ "$confirm" != no ]; then
if ! yes_no_prompt "Confirm this upload? [y/N] "; then
die "Upload aborted"
fi
fi

exec /usr/bin/dput "$@"
-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Raphaël Pinson
2011/4/2 Scott Ritchie :
> Of course things like apt pinning are going to be the ultimate arbiter,
> but it would be nice to do what we can within the naming standards since
> it's so much simpler to deal with.  At the very least we can have some
> defaults to expect (eg ppas will be replaced by packports unless the ppa
> specifies a release version)
>

Right, I agree. If we can come to an agreement, it would even be
better to publish a policy for it, and many indicate when a PPA
follows it, so users can actually expect the given PPA to follow these
rules and trust that the versions on this PPA will play nice with the
official and backported packages.


Raphaël

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Scott Ritchie
On 04/02/2011 08:29 AM, Raphaël Pinson wrote:
> On Sat, Apr 2, 2011 at 5:19 PM, Scott Ritchie  wrote:
>> On 04/02/2011 08:08 AM, Felix Geyer wrote:
>>> On 02.04.2011 16:36, Scott Kitterman wrote:
 My practice is to us ~ppa1 when targeting the development release and
 ~release1~ppa1 for previous releases.  This has the advantage of naturally
 upgrading to an official backport if one is done since they use a ~releaseX
 numbering scheme.  For all the reasons Scott argued for ~ppaX, I think
 ~release1~ppaX is the right answer for non-development releases
>>>
>>> That version scheme breaks once we are in the q-series as the p-codename
>>> might be > "ppa".
>>>
>>>
>>
>> Shouldn't official backports replace ppa packages anyway?
>>
> 
> That release depends on the goal of the PPA. If it's just to provide
> backport versions, then sure, that makes sense. But if the PPA
> provides additional features (some bindings activated, a compilation
> flag set, etc.), then no. I think though that it's the sysadmins' task
> to set their apt_preferences correctly in order to ensure that they
> get the version they consider to be prioritary. Backports and PPAs
> provide versions, but it's up to the machine admin to choose which
> version to install.
> 
> 

Of course things like apt pinning are going to be the ultimate arbiter,
but it would be nice to do what we can within the naming standards since
it's so much simpler to deal with.  At the very least we can have some
defaults to expect (eg ppas will be replaced by packports unless the ppa
specifies a release version)

-Scott Ritchie

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Matthias Klose
On 02.04.2011 15:56, Scott Ritchie wrote:
> This has long been "good practice" for a variety of reasons
> 
> 1) Independent PPA packages of new upstream versions can be
> automatically replaced when a proper distro update occurs.
> 2) If the PPA package itself gets promoted to the archive, it can be
> replaced by just dropping the ~ppa
> 3) It makes the version string more meaningful, as it prevents the
> possibility of an official and PPA package having the same version
> 4) If you are branching foo-0ubuntu1 and need multiple iterations you
> now have a proper number to increment without implying you've rebased
> off foo-0ubuntu2.
> 
> Making such a change would have other value:
> 
> 1) It makes it much easier to detect nonstandard packages on a system.
> This can be done with automated tools too without fear of false
> positives (in bug reports, with apport, with update manager, etc)
> 2) If all PPA packages were so branded, it would be much easier to
> implement a "remove all PPA packages" type of feature.

PPA's are used to prepare uploads for the distribution too. In this case you
don't want to have a ~ppaN suffix.

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Raphaël Pinson
On Sat, Apr 2, 2011 at 5:19 PM, Scott Ritchie  wrote:
> On 04/02/2011 08:08 AM, Felix Geyer wrote:
>> On 02.04.2011 16:36, Scott Kitterman wrote:
>>> My practice is to us ~ppa1 when targeting the development release and
>>> ~release1~ppa1 for previous releases.  This has the advantage of naturally
>>> upgrading to an official backport if one is done since they use a ~releaseX
>>> numbering scheme.  For all the reasons Scott argued for ~ppaX, I think
>>> ~release1~ppaX is the right answer for non-development releases
>>
>> That version scheme breaks once we are in the q-series as the p-codename
>> might be > "ppa".
>>
>>
>
> Shouldn't official backports replace ppa packages anyway?
>

That release depends on the goal of the PPA. If it's just to provide
backport versions, then sure, that makes sense. But if the PPA
provides additional features (some bindings activated, a compilation
flag set, etc.), then no. I think though that it's the sysadmins' task
to set their apt_preferences correctly in order to ensure that they
get the version they consider to be prioritary. Backports and PPAs
provide versions, but it's up to the machine admin to choose which
version to install.


Raphaël

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Dustin Kirkland
On Sat, Apr 2, 2011 at 9:44 AM, Clint Byrum  wrote:
> Excerpts from Scott Ritchie's message of Sat Apr 02 06:56:04 -0700 2011:
>> This has long been "good practice" for a variety of reasons
>>
>> 1) Independent PPA packages of new upstream versions can be
>> automatically replaced when a proper distro update occurs.
>> 2) If the PPA package itself gets promoted to the archive, it can be
>> replaced by just dropping the ~ppa
>> 3) It makes the version string more meaningful, as it prevents the
>> possibility of an official and PPA package having the same version
>> 4) If you are branching foo-0ubuntu1 and need multiple iterations you
>> now have a proper number to increment without implying you've rebased
>> off foo-0ubuntu2.
>>
>> Making such a change would have other value:
>>
>> 1) It makes it much easier to detect nonstandard packages on a system.
>> This can be done with automated tools too without fear of false
>> positives (in bug reports, with apport, with update manager, etc)
>> 2) If all PPA packages were so branded, it would be much easier to
>> implement a "remove all PPA packages" type of feature.
>
> Session or no, +1 from me. I have forgotten the ~ppaX a few times and
> then been confused when the package doesn't update. I don't thin its
> all that critical, but it would definitely prevent mistakes.
>
> If there is push back for some reason, it might make sense to have it
> turned on by default but provide a checkbox to disable it.

+1 to all what Clint said.

I have also found myself training new Ubuntu packagers from time to
time, and advising them on how to use PPAs, insisting that they use
~ppa1 or such on their packages, for all the reasons above.
Occasionally they'll get advice from someone else who has a similar
but slightly different scheme, perhaps the ~lucid1 model (which makes
a lot of sense, too).

So some standards here would be phenomenal.  And if it's enforced by
the archive, with a really useful/helpful source package rejection
message would be awesome!

-- 
:-Dustin

Dustin Kirkland
Ubuntu Core Developer

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Scott Ritchie
On 04/02/2011 08:08 AM, Felix Geyer wrote:
> On 02.04.2011 16:36, Scott Kitterman wrote:
>> My practice is to us ~ppa1 when targeting the development release and 
>> ~release1~ppa1 for previous releases.  This has the advantage of naturally 
>> upgrading to an official backport if one is done since they use a ~releaseX 
>> numbering scheme.  For all the reasons Scott argued for ~ppaX, I think 
>> ~release1~ppaX is the right answer for non-development releases
> 
> That version scheme breaks once we are in the q-series as the p-codename
> might be > "ppa".
> 
> 

Shouldn't official backports replace ppa packages anyway?

So if I forgo making foo-0ubuntu1~qrelease1~ppa1 and instead just do
foo-0ubuntu1~ppa1, and then there's a q-release backport named
foo-0ubuntu1~qrelease1, shouldn't that q-release backport replace my ppa
package?

If said backport already existed when I made my PPA, then I would have
had to have the full ~qrelease1~ppa1 suffix to make it install anyway.

Heck, maybe it's a problem that we aren't yet in Q-release ;)  Perhaps
Mark could be encouraged to name a P adjective that somehow comes later
than ppa, which I guess implies starting with the letters PU.

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Raphaël Pinson
I tend to use ~pparaphink1 for the current devel release,
~pparaphink1~release1 for backports. For named PPAs, such as Augeas, I
would use ~ppaaugeas1 and ~ppaaugeas1~release1.

That allows me to easily find the source of the packages on my system.


Raphaël

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Felix Geyer
On 02.04.2011 16:36, Scott Kitterman wrote:
> My practice is to us ~ppa1 when targeting the development release and 
> ~release1~ppa1 for previous releases.  This has the advantage of naturally 
> upgrading to an official backport if one is done since they use a ~releaseX 
> numbering scheme.  For all the reasons Scott argued for ~ppaX, I think 
> ~release1~ppaX is the right answer for non-development releases

That version scheme breaks once we are in the q-series as the p-codename
might be > "ppa".


-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Scott Ritchie
On 04/02/2011 07:36 AM, Scott Kitterman wrote:
> On Saturday, April 02, 2011 10:25:31 AM Michael Terry wrote:
>> On 02/04/11 09:56, Scott Ritchie wrote:
>>> This has long been "good practice" for a variety of reasons
>>
>> I agree with all your reasons, but tend to prefer ~lucid1, ~maverick1,
>> etc. in case the same package is available for multiple releases.
>> -mt
> 
> My practice is to us ~ppa1 when targeting the development release and 
> ~release1~ppa1 for previous releases.  This has the advantage of naturally 
> upgrading to an official backport if one is done since they use a ~releaseX 
> numbering scheme.  For all the reasons Scott argued for ~ppaX, I think 
> ~release1~ppaX is the right answer for non-development releases.
> 
> I believe this is a best practice that should be documented somewhere in the 
> Launchpad documentation.  I don't think PPA use is something we need a UDS 
> session for.
> 

My thought was that if we made it a forced standard, we could improve
the official ubuntu tools based on the new assumption.

I see bug reports where PPA packages are installed that still managed to
pass apport, for instance.

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Clint Byrum
Excerpts from Scott Ritchie's message of Sat Apr 02 06:56:04 -0700 2011:
> This has long been "good practice" for a variety of reasons
> 
> 1) Independent PPA packages of new upstream versions can be
> automatically replaced when a proper distro update occurs.
> 2) If the PPA package itself gets promoted to the archive, it can be
> replaced by just dropping the ~ppa
> 3) It makes the version string more meaningful, as it prevents the
> possibility of an official and PPA package having the same version
> 4) If you are branching foo-0ubuntu1 and need multiple iterations you
> now have a proper number to increment without implying you've rebased
> off foo-0ubuntu2.
> 
> Making such a change would have other value:
> 
> 1) It makes it much easier to detect nonstandard packages on a system.
> This can be done with automated tools too without fear of false
> positives (in bug reports, with apport, with update manager, etc)
> 2) If all PPA packages were so branded, it would be much easier to
> implement a "remove all PPA packages" type of feature.

Session or no, +1 from me. I have forgotten the ~ppaX a few times and
then been confused when the package doesn't update. I don't thin its
all that critical, but it would definitely prevent mistakes.

If there is push back for some reason, it might make sense to have it
turned on by default but provide a checkbox to disable it.

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Barry Warsaw
On Apr 02, 2011, at 10:36 AM, Scott Kitterman wrote:

>My practice is to us ~ppa1 when targeting the development release and 
>~release1~ppa1 for previous releases.

I've been doing something very similar to this, so I think I'll start doing
exactly this from now on.

-Barry


signature.asc
Description: PGP signature
-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Scott Kitterman
On Saturday, April 02, 2011 10:25:31 AM Michael Terry wrote:
> On 02/04/11 09:56, Scott Ritchie wrote:
> > This has long been "good practice" for a variety of reasons
> 
> I agree with all your reasons, but tend to prefer ~lucid1, ~maverick1,
> etc. in case the same package is available for multiple releases.
> -mt

My practice is to us ~ppa1 when targeting the development release and 
~release1~ppa1 for previous releases.  This has the advantage of naturally 
upgrading to an official backport if one is done since they use a ~releaseX 
numbering scheme.  For all the reasons Scott argued for ~ppaX, I think 
~release1~ppaX is the right answer for non-development releases.

I believe this is a best practice that should be documented somewhere in the 
Launchpad documentation.  I don't think PPA use is something we need a UDS 
session for.

Scott K

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Michael Terry

On 02/04/11 09:56, Scott Ritchie wrote:

This has long been "good practice" for a variety of reasons


I agree with all your reasons, but tend to prefer ~lucid1, ~maverick1, 
etc. in case the same package is available for multiple releases.

-mt

--
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Should PPAs be forced to specify a ~ppa1 or similar in the package version?

2011-04-02 Thread Scott Ritchie
This has long been "good practice" for a variety of reasons

1) Independent PPA packages of new upstream versions can be
automatically replaced when a proper distro update occurs.
2) If the PPA package itself gets promoted to the archive, it can be
replaced by just dropping the ~ppa
3) It makes the version string more meaningful, as it prevents the
possibility of an official and PPA package having the same version
4) If you are branching foo-0ubuntu1 and need multiple iterations you
now have a proper number to increment without implying you've rebased
off foo-0ubuntu2.

Making such a change would have other value:

1) It makes it much easier to detect nonstandard packages on a system.
This can be done with automated tools too without fear of false
positives (in bug reports, with apport, with update manager, etc)
2) If all PPA packages were so branded, it would be much easier to
implement a "remove all PPA packages" type of feature.


Thoughts?

Worthy of a session?

-Scott Ritchie

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel