Bug#953629: Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
[This is the policy bug.] Hi, On Mon, Jun 15, 2020 at 5:18 PM Sean Whitton wrote: > > the relevant sentence of Policy ... was intended to be > informative, not normative. Just a brief post scriptum: I had to disable a test in Lintian due to new restrictions on version strings in Dpkg. The commit message has more documentation: https://salsa.debian.org/lintian/lintian/-/commit/5f0333ebc6e3ba144717eca1ef0bddfd39413df0 Kind regards Felix Lechner
Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Hi, On Mon, Jun 15, 2020 at 5:18 PM Sean Whitton wrote: > > the relevant sentence of Policy ... was intended to be > informative, not normative. Just a brief post scriptum: I had to disable a test in Lintian due to new restrictions on version strings in Dpkg. The commit message has more documentation: https://salsa.debian.org/lintian/lintian/-/commit/5f0333ebc6e3ba144717eca1ef0bddfd39413df0 Kind regards Felix Lechner
Bug#953629: Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
control: tag -1 +pending Hello Ian, On Tue 16 Jun 2020 at 12:11PM +01, Ian Jackson wrote: > I think "native package versions" refers to "versionn numbers which > are supposed to be Debian-native", not "the version numbers of > native-format packages". > > Can I suggest that this sentence might be clarified as follows > > remember that hyphen (-) cannot be used in > native {-package versions-}{+version numbers+} > > ? Thanks, applied this change. -- Sean Whitton
Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Sean Whitton writes ("Re: Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]"): > I believe that the relevant sentence of Policy, added in policy.git > commit eee39aecef3a6a5f9927211b5c847e645e927cbd, was intended to be > informative, not normative. It does not use one of the Policy normative > magic words, is not in the subsection in which it would be natural to > place such a restriction, and occurs in a "hey, don't forget that ..." > clause. Oh yes. I hadn't read this sentence from 3.2.1 in context. I think "native package versions" refers to "versionn numbers which are supposed to be Debian-native", not "the version numbers of native-format packages". Can I suggest that this sentence might be clarified as follows remember that hyphen (-) cannot be used in native {-package versions-}{+version numbers+} ? > Thus the only Policy issue here could be the addition of an explicit > permission to use Debian revisions with 1.0 native packages. As > discussion is ongoing in the context of Lintian, that seems premature, > however. Ideally I would like to see such an explicit permission. It ought to go into the section on source packages. But it ought to have some caveats (eg about size, perhaps, and about tracking changes to upstream parts some other way eg via git). I suspect that discussion would be dispropornately long and fractious and inconclusive, compared to the value to be gained. > So I think we can close the clone of this bug against Policy for now. The bugs seem very confusing to me. A sprawling mass of partially-duplicated stuff. See my comment above for a suggested wording clarification. Ian. -- Ian JacksonThese opinions are my own. Pronouns: they/he. If I emailed you from @fyvzl.net or @evade.org.uk, that is a private address which bypasses my fierce spamfilter.
Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Felix Lechner writes ("Re: Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]"): > Hi Sean, ... > Based on your note, however, Lintian will stop warning about such > version mismatches. Perhaps it will gradually pave the way for a > constructive policy debate. Thanks! This may seem strange and like I'm changing sides, but: I was convinced by the argument that people might do this by mistake, especially with format 1.0 source packages, where you can get a native package by accident simply by failing to have the orig tarball in the right place. So I think it would be best if lintian would warn about 1.0 format native source packages with non-native versions, with a suitable explantion which will encourage the maintainer to override the warning if they did this on purpose. Ian. -- Ian JacksonThese opinions are my own. Pronouns: they/he. If I emailed you from @fyvzl.net or @evade.org.uk, that is a private address which bypasses my fierce spamfilter.
Bug#953629: Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Hi Sean, On Mon, Jun 15, 2020 at 5:18 PM Sean Whitton wrote: > > As > discussion is ongoing in the context of Lintian, that seems premature, > however. The Lintian discussion was merged into a bug Guillem had filed to further enshrine the division between native and non-native packages Bug#944155 was about reminding maintainers to use a hyphen, or not. Based on your note, however, Lintian will stop warning about such version mismatches. Perhaps it will gradually pave the way for a constructive policy debate. Thanks! > So I think we can close the clone of this bug against Policy for now. Totally agree, for now. Kind regards Felix Lechner
Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Hello, On Wed 11 Mar 2020 at 12:30PM GMT, Ian Jackson wrote: > Felix Lechner writes ("Re: Bug#953554: Please permit Debian revisions with > 1.0 native packages [and 1 more messages]"): >> On Wed, Mar 11, 2020 at 4:58 AM Ian Jackson >> wrote: >> > >> > It works today. The only problem is the lintian warning. >> >> Doesn't policy stand in the way too? > ... >> Is it permitted now? Policy 3.2.1 states "hyphen (-) cannot be used in >> native package versions." I believe that the relevant sentence of Policy, added in policy.git commit eee39aecef3a6a5f9927211b5c847e645e927cbd, was intended to be informative, not normative. It does not use one of the Policy normative magic words, is not in the subsection in which it would be natural to place such a restriction, and occurs in a "hey, don't forget that ..." clause. Thus the only Policy issue here could be the addition of an explicit permission to use Debian revisions with 1.0 native packages. As discussion is ongoing in the context of Lintian, that seems premature, however. So I think we can close the clone of this bug against Policy for now. -- Sean Whitton
Bug#953554: Re: Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Hi Ian, On Wed, Mar 11, 2020 at 5:37 AM Ian Jackson wrote: > > I hope that whatever occurs more widely, this particular message can > be downgraded appropriately so that by default it is an warning rather > than an error. That's all I'm asking for in this bug. Unless someone objects, I will downgrade your situation to a warning when I rework the version parsing. It was already on my list. > Can we perhaps go back to >hyphen-in-native-debian-changelog-version Yes, that is #944155. I was merely busy with something else in Lintian. Please note it is Guillem's bug, so whatever your differences may have been in the past, both of you are on common ground for an important part of the version string issues! Kind regards Felix Lechner
Bug#953554: Re: Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Chris Lamb writes ("Re: Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]"): > Ian Jackson wrote: > > I have no problem with this being a lintian warning. In this bug I am > > requesting this "error" to be returned to its previous status as a > > warning. > > It was not previously clear to me that this was the case. > > > I have indeed used an override. But I am worried. I perceive this as > > part of a campaign to abolish one of my workflows. > > … from the Lintian maintainers' point of view I am absolutely > confident that this is not the case. Thanks very much for that clarification. It is very reassuring. > If you believe there is such a > campaign, I gently request that you continue this sub-conversation > outside of this Lintian bug. Of course. > If it helps, IIRC the version parsing was refactored by Felix in > recent past to fix or otherwise better support some other version > parsing issues and I highly suspect this got flipped in the process. I see. > I would very much encourage you to not read too much into this, if > anything. See #935706 for my wider thoughts on the social problems > that appear to stem from our "certainty" field, and I suspect similar > can be said between the often-inprecise relationship between errors/ > warnings and Debian bug severities. Interesting. I hope that whatever occurs more widely, this particular message can be downgraded appropriately so that by default it is an warning rather than an error. That's all I'm asking for in this bug. Also it would be good to separate it out from entirely the "version number is mangled" tag. Can we perhaps go back to hyphen-in-native-debian-changelog-version which some of the affected packages presumably already have overrides for ? Ian. -- Ian JacksonThese opinions are my own. If I emailed you from an address @fyvzl.net or @evade.org.uk, that is a private address which bypasses my fierce spamfilter.
Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Control: clone -1 -2 Control: reassign -2 debian-policy Felix Lechner writes ("Re: Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]"): > On Wed, Mar 11, 2020 at 4:58 AM Ian Jackson > wrote: > > > > It works today. The only problem is the lintian warning. > > Doesn't policy stand in the way too? ... > Is it permitted now? Policy 3.2.1 states "hyphen (-) cannot be used in > native package versions." I wasn't aware of that. I wonder when that was added. As stated, it is false. > > I think that Previously lintian reported this situation as > > "hyphen-in-native-debian-changelog-version" > > which was a warning. > > Please don't be scared. I am happy to downgrade the tag to a warning > if we can reach a consensus among Lintian and Dpkg maintainers. Thank you. ISTM that some people (like me) feel this packaging practice is vastly underused and some people (like Guillem) feel it should be abolished. Perhaps we can go back to the previous uneasy stalemate where we all lived with it being (merely) warned about, and contested when it is discussed on mailing lists. Ian. -- Ian JacksonThese opinions are my own. If I emailed you from an address @fyvzl.net or @evade.org.uk, that is a private address which bypasses my fierce spamfilter.
Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Ian Jackson wrote: > I have no problem with this being a lintian warning. In this bug I am > requesting this "error" to be returned to its previous status as a > warning. It was not previously clear to me that this was the case. > I have indeed used an override. But I am worried. I perceive this as > part of a campaign to abolish one of my workflows. … from the Lintian maintainers' point of view I am absolutely confident that this is not the case. If you believe there is such a campaign, I gently request that you continue this sub-conversation outside of this Lintian bug. If it helps, IIRC the version parsing was refactored by Felix in recent past to fix or otherwise better support some other version parsing issues and I highly suspect this got flipped in the process. But even if this is not strictly the case, there is no specific vendetta against this workflow despite personally not recommending it to others. > Having to override a "certainty: certain, severity: serious" warning > for this is very worrying to me. I would very much encourage you to not read too much into this, if anything. See #935706 for my wider thoughts on the social problems that appear to stem from our "certainty" field, and I suspect similar can be said between the often-inprecise relationship between errors/ warnings and Debian bug severities. Regards, -- ,''`. : :' : Chris Lamb `. `'` la...@debian.org chris-lamb.co.uk `-
Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Hi Ian, On Wed, Mar 11, 2020 at 4:58 AM Ian Jackson wrote: > > It works today. The only problem is the lintian warning. Doesn't policy stand in the way too? > I perceive this as > part of a campaign to abolish one of my workflows. I am scared that > in the future an attempt may be made to actually forbid this practice. Is it permitted now? Policy 3.2.1 states "hyphen (-) cannot be used in native package versions." > I think that Previously lintian reported this situation as > "hyphen-in-native-debian-changelog-version" > which was a warning. Please don't be scared. I am happy to downgrade the tag to a warning if we can reach a consensus among Lintian and Dpkg maintainers. Kind regards Felix Lechner
Bug#953554: Please permit Debian revisions with 1.0 native packages [and 1 more messages]
Felix Lechner writes ("Re: Bug#953554: Please permit Debian revisions with 1.0 native packages"): > On Tue, Mar 10, 2020 at 7:51 AM Ian Jackson > wrote: > > I am packaging a small program for which I am the upstream. It does > > not make sense to use a complicated source format; 1.0 native is > > perfect. > > I too would like to see versions decoupled from the native/non-native > question, but I think there are big technical hurdles. There are no technical hurdles with using native formats with non-native versions. Everything works completely correctly. The problems are entirely ideological/philosophical. They result in the following practical problems: * lintian complains (at one point it didn't care, then for a long time it was a warning, now it is an error) * dpkg-source refuses entirely to make a `3.0 (native)' package so you have to use `1.0' * Using a `1.0' source format causes further warnings from various tools telling you that 1.0 is deprecated. IMO there is no good reason for this either. The *only* effect of all of the above is having to suppress or ignore warnings. Then there is one other infelicity: * Using a 1.0 source format prevents you using better compression than gzip. This is not an inherent technical limitation of the 1.0 format; it's just that support for better compression is not implemented. My understanding is that patches to implement better compression for 1.0 would be rejected. This infelicity results solely from the refusal of successive dpkg-source maintainers to fix it. But it is not typically of any significance for the kinds of packages where (i) there is an upstream but (ii) using a plain tarball is appropriate, since such packages are typically small. > Maybe one day all version strings will be legal, even when a native > format was declared. It would not work with format 1.0, which contains > no such declaration. It works today. The only problem is the lintian warning. Mattia Rizzolo wrote: > In my opinion your statements here doesn't make any sense: using a > Debian revision when you are not relying on a single upstream tarball > (i.e., non-native) really is going against the implied meaning of a > Debian revision: something that is not supposed to change the upstream > part. Most packages are maintained in git nowadays. It is usual to have a separate git branch for Debian and upstream work. In such a situation it makes perfect sense to have an upstream version number which corresponds to an upstream tag. For packages with a very small (or zero) Debian delta to the upstream files, it makes sense to maintain these git branches using `git merge' rather than as a stack of patches. However, there are serious inherent problems with all of the non-native source formats. There are many that can occur in git repositories which are not representable in non-native packages. For example, changes to symlinks. Worse, one must either choose `3.0 (quilt)' which involves patch files within the git tree and a great deal of complexity to manage those; or 1.0-with-diff which has an even more restricted set of things it can represent. Using a single-tarball source package makes all of these problems go away. The only downsides are: (i) Debian-only changes involve re-shipping all the upstream code via the archive - but for a small package this is not a concern; (ii) it does not ship a pristine upstream tarball - but upstreams often don't provide tarballs, and even when they do reusing pristine upstream tarballs is not mandatory in Debian, and can be bad idea depending what they contain compared to upstream git. So there are no real downsides. Other than having to constantly whack warnings. Chris Lamb writes ("Re: Bug#953554: Please permit Debian revisions with 1.0 native packages"): > However, I would be minded to not adjust Lintian in this particular > case regardless of the above: I suspect in the overwhelming majority > of cases where this tag is emitted it is due to a temporary mistake > such as a typo on behalf of the maintainer which is then immediately > corrected locally. Indeed, I am often guilty of "dch -v 1.0-1" for > packages where I definitely do not intend this suffix and I would very > much like to see that prior to an upload. I have no problem with this being a lintian warning. In this bug I am requesting this "error" to be returned to its previous status as a warning. Right now, I have a package where I have to suppress this: O: [package] source: malformed-debian-changelog-version 1.0-1 (for native) (package name elided) This corresponds to this: https://lintian.debian.org/tags/malformed-debian-changelog-version.html What this says is that lintian is certain it has detected a release-critical bug in my package. That is clearly not true. > Have you considered adding a (commented!) override for this particular > package? I suspect your response may be to suggest we allow this for > 1.0 version