Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-11 Thread Philip Rinn

Hi Andreas,


Hi Andreas,

Am Sat, Dec 10, 2022 at 11:41:11AM +0100 schrieb Andreas Metzler:


I have given this a a little bit of time. This seems to work:

1. Copy configure.ac from upstream's 2.3.2h2 branch.


Seems in tag 2.3.2h2 happened what I tried with 2.3.2[1] at least
the resulting configure.ac is identical after
autoupdate && autoreconf -f -i


2. Add 'export AUTOHEADER = true' to debian/rules.


I tried this, but the build fails for me and Salsa CI[2] with

  configure.ac:479: the top level
  sh: 1: Syntax error: Unterminated quoted string
  autoreconf: error: true' failed with exit status: 2

I admit I can't find that unterminated quoted string near line 479.



that's not surprising as you indeed have an unterminated "'" in 
https://salsa.debian.org/med-team/hmmer2/-/blob/master/debian/rules#L12


Best regards
Philip


OpenPGP_signature
Description: OpenPGP digital signature


Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-11 Thread Andreas Tille
Am Sun, Dec 11, 2022 at 10:43:37AM -0500 schrieb Boyuan Yang:
> 
> Not sure if it is the root cause, but there's an obvious typo with quote at
> L12:
> https://salsa.debian.org/med-team/hmmer2/-/blob/423388accbb8c622edb663c845f1f5a6336256e1/debian/rules#L12
> .

Ahhh, thanks - I was seeking for the quoting issue inside configure.ac!

Thanks a lot
   Andreas.

-- 
http://fam-tille.de



Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-11 Thread Boyuan Yang
Hi,

在 2022-12-11星期日的 16:35 +0100,Andreas Tille写道:
> Hi Andreas,
> 
> Am Sat, Dec 10, 2022 at 11:41:11AM +0100 schrieb Andreas Metzler:
> > 
> > I have given this a a little bit of time. This seems to work:
> > 
> > 1. Copy configure.ac from upstream's 2.3.2h2 branch.
> 
> Seems in tag 2.3.2h2 happened what I tried with 2.3.2[1] at least
> the resulting configure.ac is identical after
>     autoupdate && autoreconf -f -i
> 
> > 2. Add 'export AUTOHEADER = true' to debian/rules.
> 
> I tried this, but the build fails for me and Salsa CI[2] with
> 
>   configure.ac:479: the top level
>   sh: 1: Syntax error: Unterminated quoted string
>   autoreconf: error: true' failed with exit status: 2
> 
> I admit I can't find that unterminated quoted string near line 479.

Not sure if it is the root cause, but there's an obvious typo with quote at
L12:
https://salsa.debian.org/med-team/hmmer2/-/blob/423388accbb8c622edb663c845f1f5a6336256e1/debian/rules#L12
.



> Thanks for the attempt to help anyway
> 
>     Andreas.
> 
> [1]
> https://salsa.debian.org/med-team/hmmer2/-/blob/master/debian/rules#L25-L26 
> [2] https://salsa.debian.org/med-team/hmmer2/-/jobs/3642966#L917

Thanks,
Boyuan Yang


signature.asc
Description: This is a digitally signed message part


Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-11 Thread Andreas Tille
Hi Andreas,

Am Sat, Dec 10, 2022 at 11:41:11AM +0100 schrieb Andreas Metzler:
> 
> I have given this a a little bit of time. This seems to work:
> 
> 1. Copy configure.ac from upstream's 2.3.2h2 branch.

Seems in tag 2.3.2h2 happened what I tried with 2.3.2[1] at least
the resulting configure.ac is identical after
autoupdate && autoreconf -f -i

> 2. Add 'export AUTOHEADER = true' to debian/rules.

I tried this, but the build fails for me and Salsa CI[2] with

  configure.ac:479: the top level
  sh: 1: Syntax error: Unterminated quoted string
  autoreconf: error: true' failed with exit status: 2

I admit I can't find that unterminated quoted string near line 479.

Thanks for the attempt to help anyway

Andreas.

[1] https://salsa.debian.org/med-team/hmmer2/-/blob/master/debian/rules#L25-L26 
[2] https://salsa.debian.org/med-team/hmmer2/-/jobs/3642966#L917

-- 
http://fam-tille.de



Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-10 Thread Andreas Metzler
On 2022-12-09 Andreas Tille  wrote:
[...]
> Thanks to Alexander Sulfrian who pointed out the Git repository
> featuring old tags that were obviously taken over from SVN I was proven
> wrong with the statement that there is no configure.ac any more.

> Unfortunately this is no simple drop-in with modern autoconf tools
> and my weak attempt in Git to use this failed.[1]
[...]

Hello,

I have given this a a little bit of time. This seems to work:

1. Copy configure.ac from upstream's 2.3.2h2 branch.
2. Add 'export AUTOHEADER = true' to debian/rules.

cu Andreas
-- 
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'



Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-09 Thread Paul Wise
On Fri, 2022-12-09 at 13:14 +0100, Andreas Tille wrote:

> Is an autogenerated configure shell script non-editable source

[Short-winded way of saying something similar to Russ]

In general I don't think such a situation meets DFSG item 2 nor the
GPL "preferred form for modification", for the reasons outlined here:

https://lists.debian.org/msgid-search/50184a59271c953a3f9a3c99bb193dc05e61f2aa.ca...@debian.org

In this case, it does seem like a DFSG violation that the source file
(configure.ac) is not available in Debian but is available upstream.

Once the configure.ac is included, the current lack of ability to
rebuild configure from it would probably cause an FTBFS bug too,
since by default debhelper will automatically run autoreconf.

-- 
bye,
pabs

https://wiki.debian.org/PaulWise


signature.asc
Description: This is a digitally signed message part


Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-09 Thread Bart Martens
On Fri, Dec 09, 2022 at 04:07:30PM +0100, Alexander Sulfrian wrote:
> Hi,
> 
> On Fri, Dec 09, 2022 at 01:14:40PM +0100, Andreas Tille wrote:
> > I would consider asking upstream about this for sure but the code is in
> > maintenance mode and there is no Git repository to step back in history.
> > The only way to go would be to take configure.ac from a later version
> > and find out how it can be tweaked to create some working configure
> > file from it.  I do not consider my time well spent in doing so except
> > if there is some consensus here on the list that configure files without
> > configure.ac are "missing source".
> 
> isn't the matching configure.ac available here?
> 
> https://github.com/MichiganTech/hmmer/blob/2.3.2/configure.ac
> 
> This repository is at least referenced in debian/upstream/metadata and
> the package version seems to match the git tag.

That file may be available online for this particular software. The debate is
about whether such configure.ac file must be included in the distributed
package for making the package dfsg. And more in general, about where to draw
the line on how easily editable (think: time well spent) the included source
code must be for making the package dfsg. In my opinion there is no sharp line,
and ftpmaster is well positioned for making fair choices in a +/- uniform way
for all packages. And there is always be room for questioning those choices and
allowing the meaning of dfsg evolve over time. Back to configure.ac, I'd
support a choice of making a missing configure.ac an 'important' bug, and not
enough for rejecting the package as non-dfsg.

> 
> 
> Alex
> 



Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-09 Thread Andreas Tille
Hi Marco

Am Fri, Dec 09, 2022 at 03:33:38PM +0100 schrieb Marco d'Itri:
> On Dec 09, Andreas Tille  wrote:
> 
> > I would consider asking upstream about this for sure but the code is in
> > maintenance mode and there is no Git repository to step back in history.
> > The only way to go would be to take configure.ac from a later version
> > and find out how it can be tweaked to create some working configure
> > file from it.  I do not consider my time well spent in doing so except
> > if there is some consensus here on the list that configure files without
> > configure.ac are "missing source".
> If there is no surviving configure.ac which can generate the current 
> configure file then it is quite obvious that this is not a DFSG issue, 
> because no such source exists.

Thanks to Alexander Sulfrian who pointed out the Git repository
featuring old tags that were obviously taken over from SVN I was proven
wrong with the statement that there is no configure.ac any more.

Unfortunately this is no simple drop-in with modern autoconf tools
and my weak attempt in Git to use this failed.[1]

> But if your package contains a manually edited configure file then this
> is a bad practice, and experience shows that sooner or later you will 
> have to deal with the resulting bugs.

I have no reasons to assume that the provided configure was manually
edited.  Its definitely created by old Autoconf (2.57) and can't be
recreated with recent autoconf tools.  But the build works fine with the
configure that is provided.

> Clearly, the severity of these bugs is different, at least as long as 
> your package builds.

This is actually my main point.  Helmut and I have obviously different
opinions about the relevance of the problem regarding DFSG and the
resulting implication for the severity of the bug.  Helmut have stated
good reasons why a recent configure.ac is helpful / important for him
(injecting PKG_CHECK_MODULES) and I would agree with severity important
(to get progress ongoing).  However, waving with the big club DFSG is
IMHO a bit too much in the case of a shell script (no matter how badly
it is written for the intended purpose).

I moved the discussion to debian-devel not primarily for this specific
case (which I intend to fix no matter what severity this bug might
have).  My main point is that we should find some consensus about the
severity of this bug to be clear in other cases we definitely have in
our archive.

Kind regards
   Andreas.

[1] 
https://salsa.debian.org/med-team/hmmer2/-/commit/d1f5b3d08391efd66b69090e544803d6bd0f6638

-- 
http://fam-tille.de



Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-09 Thread Alexander Sulfrian
Hi,

On Fri, Dec 09, 2022 at 01:14:40PM +0100, Andreas Tille wrote:
> I would consider asking upstream about this for sure but the code is in
> maintenance mode and there is no Git repository to step back in history.
> The only way to go would be to take configure.ac from a later version
> and find out how it can be tweaked to create some working configure
> file from it.  I do not consider my time well spent in doing so except
> if there is some consensus here on the list that configure files without
> configure.ac are "missing source".

isn't the matching configure.ac available here?

https://github.com/MichiganTech/hmmer/blob/2.3.2/configure.ac

This repository is at least referenced in debian/upstream/metadata and
the package version seems to match the git tag.


Alex



Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-09 Thread Marco d'Itri
On Dec 09, Andreas Tille  wrote:

> I would consider asking upstream about this for sure but the code is in
> maintenance mode and there is no Git repository to step back in history.
> The only way to go would be to take configure.ac from a later version
> and find out how it can be tweaked to create some working configure
> file from it.  I do not consider my time well spent in doing so except
> if there is some consensus here on the list that configure files without
> configure.ac are "missing source".
If there is no surviving configure.ac which can generate the current 
configure file then it is quite obvious that this is not a DFSG issue, 
because no such source exists.

But if your package contains a manually edited configure file then this
is a bad practice, and experience shows that sooner or later you will 
have to deal with the resulting bugs.

Clearly, the severity of these bugs is different, at least as long as 
your package builds.

-- 
ciao,
Marco


signature.asc
Description: PGP signature


Re: Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-09 Thread Helmut Grohne
Hi Andreas,

On Fri, Dec 09, 2022 at 01:14:40PM +0100, Andreas Tille wrote:
> This "prominent" example was heavily discussed and IMHO its not really
> an example for the current case.  If you look at the configure file of
> hmmer2[1] it surely claims that it is autogenerated.  However, its
> perfectly simple and straightforward shell text with sensibly named
> variables so it is editable code.  Calling this piece of shell source
> code "missing source" is IMHO an over-interpretation of the letters of
> DFSG.

Unsurprisingly, I respectfully disagree. A typical change you'd want to
do to configure is replace a bare pkg-config invocation with
PKG_CHECK_MODULES. Doing this to your configure script is quite similar
in experience to patching a binary. Another very common task is updating
macros from old version, because they contain bugfixes. Being macros,
you'd be chasing down every single interpolation.

Your comparison to compressed javascript (in your earlier reply) is also
interesting. A major aspect of minification is removal of spaces.
Looking into the generated configure script, indentation is total
garbage. Then minification tends to mangle variables. While configure
doesn't really have mangled variables, it only has global variables and
since it doesn't use functions, it establishes scope using *_save
variables. The resulting mess of variables isn't any better than that in
compressed javascript.

So yeah, maybe the comparison to binary is not exactly right, but
comparing it to disassembly certainly is. If you were to ship an
assembly file compiled from a C file without the C source, that would
quite certainly count as missing source.

And then, we also have DFSG #3, which primarily talks about the license
allowing derivative works, but if the "source" renders derivative works
infeasible, then having a license to do so is kinda useless.

Helmut



Is an autogenerated configure shell script non-editable source (Was: Bug#1025739: hmmer2: missing source for configure)

2022-12-09 Thread Andreas Tille
Hi Helmut,

IMHO this should be discussed more widely.

Am Thu, Dec 08, 2022 at 08:09:22PM +0100 schrieb Helmut Grohne:
> Control: tags -1 - moreinfo
> 
> On Thu, Dec 08, 2022 at 05:56:18PM +0100, Andreas Tille wrote:
> > I agree that this configure script looks auto generated but IMHO it can
> > be considered machine readable and editable with some effort.  I could
> > imagine that it is hard to edit for your cross-building effort.
> > However, this is the first time a FTBFS bug is filed for the lack of
> > some configure.ac file.  Am I missing something our should this be
> > discussed on debian-devel list first since this might end up in a MBF.
> 
> This is not a FTBFS bug. It's a DFSG bug.

Sorry for the typo.  I've got that you claim its DFSG.

> Packages are so frequently rejected from NEW for this reason that it
> made it to the reject FAQ:
> 
> https://ftp-master.debian.org/REJECT-FAQ.html -> "Source missing"

I've seen rejections for compressed JS scripts so far and this item is
not unknown.

> I think the most prominent example is #762638.

This "prominent" example was heavily discussed and IMHO its not really
an example for the current case.  If you look at the configure file of
hmmer2[1] it surely claims that it is autogenerated.  However, its
perfectly simple and straightforward shell text with sensibly named
variables so it is editable code.  Calling this piece of shell source
code "missing source" is IMHO an over-interpretation of the letters of
DFSG.

I would consider asking upstream about this for sure but the code is in
maintenance mode and there is no Git repository to step back in history.
The only way to go would be to take configure.ac from a later version
and find out how it can be tweaked to create some working configure
file from it.  I do not consider my time well spent in doing so except
if there is some consensus here on the list that configure files without
configure.ac are "missing source".

Kind regards
Andreas.

[1] https://salsa.debian.org/med-team/hmmer2/-/blob/master/configure

-- 
http://fam-tille.de