Project

General

Profile

Actions

action #122110

closed

Fix https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Crypt-HSXKPasswd/SLE_15/x86_64 size:S

Added by okurz over 1 year ago. Updated about 1 year ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
Start date:
2022-12-17
Due date:
% Done:

0%

Estimated time:

Description

https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Crypt-HSXKPasswd/SLE_15/x86_64

[   31s] t/01-defined-constants.t ... ok
[   32s] 
[   32s] #   Failed test 'password generation with named argument 'dictionary_list''
[   32s] #   at t/02-generate-passwords.t line 28.
[   32s] 
[   32s] #   Failed test 'password generation with named argument 'dictionary_file''
[   32s] #   at t/02-generate-passwords.t line 35.
[   32s] 
[   32s] #   Failed test 'password generation with named arguments 'dictionary_file' & 'dictionary_file_encoding''
[   32s] #   at t/02-generate-passwords.t line 41.
[   32s] # Looks like you failed 3 tests of 10.
[   32s] t/02-generate-passwords.t .. 

Acceptance Criteria

AC1: Package is building again

Suggestions

Actions #1

Updated by dheidler over 1 year ago

  • Subject changed from Fix https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Crypt-HSXKPasswd/SLE_15/x86_64 to Fix https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Crypt-HSXKPasswd/SLE_15/x86_64 size:S
  • Description updated (diff)
  • Status changed from New to Workable
Actions #2

Updated by tinita over 1 year ago

  • Status changed from Workable to In Progress
  • Assignee set to tinita
Actions #3

Updated by tinita over 1 year ago

This happens due to a bug in Type::Tiny it seems.
I can reproduce the failure with installing all modules from CPAN in perl 5.36, and when I install the older https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/Type-Tiny-1.016010.tar.gz then it passes.
Installing the latest developer version of Type-Tiny did not help.

It is a bit hard to debug because the test t/02-generate-passwords.t does not output $@ when it fails.

This is the content of $@:

ERROR - Crypt::HSXKPasswd::hsxkpasswd(): Failed to generate password with the following error: Can't use an undefined value as a subroutine reference at /tmp/Crypt-HSXKPasswd-v3.6/blib/lib/Crypt/HSXKPasswd/Dictionary/Basic.pm line 221

So it fails here: https://metacpan.org/release/BARTB/Crypt-HSXKPasswd-v3.6/source/lib/Crypt/HSXKPasswd/Dictionary/Basic.pm#L221
And $args_check is supposed to be a coderef created by the multisig call above.
But it is undef. It has something to do with the state function (because multisig does actually return a coderef), but I wasn't able so far to replace the state function with a simple
my variable declared outside of the sub.
https://perldoc.pl/perlsub#Persistent-Private-Variables

I can comment out the test in OBS, but it seems to me the module itself is (partially) broken now, not only the test.

Testers matrix is currently down http://matrix.cpantesters.org/?dist=Crypt-HSXKPasswd+v3.6
There is this bug report: https://rt.cpan.org/Ticket/Display.html?id=144672
but it is a different bug, though (but might be related to the same change).

Actions #4

Updated by openqa_review over 1 year ago

  • Due date set to 2023-01-03

Setting due date based on mean cycle time of SUSE QE Tools

Actions #5

Updated by tinita over 1 year ago

  • Status changed from In Progress to Feedback

Additionally to https://rt.cpan.org/Ticket/Display.html?id=144672 I now created an issue here: https://github.com/tobyink/p5-type-tiny/issues/127

I think we can now wait. This doesn't seem very urgent, and I'm not sure where we are using the module.

Actions #6

Updated by tinita over 1 year ago

Toby replied: https://github.com/tobyink/p5-type-tiny/issues/127#issuecomment-1361215023
So it might be a regression in Type::Tiny

Actions #7

Updated by okurz over 1 year ago

  • Due date changed from 2023-01-03 to 2023-01-20

christmas grace due date bump :)

Actions #8

Updated by tinita over 1 year ago

So, according to Toby it is a bug in Crypt-HSXKPasswd
https://github.com/tobyink/p5-type-tiny/issues/127#issuecomment-1361326742
https://rt.cpan.org/Transaction/Display.html?id=2408451

I'll try to add a patch in OBS.

Actions #9

Updated by tinita over 1 year ago

Actions #11

Updated by okurz over 1 year ago

  • Status changed from Resolved to Feedback

You might have missed my comment in the SR about SLE_12_SP4, see https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Crypt-HSXKPasswd/SLE_12_SP4/x86_64 failing:

[   15s] + /usr/bin/patch -p1 -sfind . -type f '!' -path '*/t/*' '!' -name '*.pl' '!' -path '*/bin/*' '!' -path '*/script/*' '!' -name configure -print0
[   15s] /usr/bin/patch: invalid option -- 'y'
[   15s] /usr/bin/patch: Try '/usr/bin/patch --help' for more information.

Maybe a different macro needs to be called. If you don't find a solution we can also exclude the build of the package for that SLE version

Actions #12

Updated by tinita over 1 year ago

@okurz: How important is this ticket? I never saw the problem that the patch doesn't work with the %autosetup makro.

Where are we using this module?

Actions #13

Updated by okurz over 1 year ago

tinita wrote:

@okurz: How important is this ticket?

Not very important

I never saw the problem that the patch doesn't work with the %autosetup makro.

Yes, me neither but here it fails

Where are we using this module?

I an using it whenever I generate a new pronounceable password, e.g. for our openQA workers IPMI access

Actions #14

Updated by tinita over 1 year ago

I was able to fix it by adding a blank line between the autosetup and the following find command.

New request: https://build.opensuse.org/request/show/1046617

Fixed cpanspec: https://github.com/openSUSE/cpanspec/pull/42

Actions #15

Updated by okurz over 1 year ago

Now it seems we have a new problem in build in https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Crypt-HSXKPasswd/SLE_12_SP4/x86_64

[   27s] 
[   27s] #   Failed test 'password generation with named argument 'preset''
[   27s] #   at t/02-generate-passwords.t line 84.
[   27s] # Looks like you failed 1 test of 10.
[   27s] t/02-generate-passwords.t .. 
[   27s] Dubious, test returned 1 (wstat 256, 0x100)
[   27s] Failed 1/10 subtests 

maybe exclude the test again unless you can fix it

Actions #16

Updated by tinita over 1 year ago

I cannot even reproduce this when branching.
https://build.opensuse.org/package/live_build_log/home:tinita:branches:devel:languages:perl/perl-Crypt-HSXKPasswd/SLE_12_SP4/x86_64
And in the previous case it was not just a test failure, but the module was broken.
But since I can't reproduce it, I can't even print out $@ to see what exactly is going wrong in that eval in line 84.

So yeah, maybe exclude this for SLE12

Actions #17

Updated by okurz over 1 year ago

  • Due date deleted (2023-01-20)
  • Status changed from Feedback to Resolved

Ok, in https://build.opensuse.org/package/meta/devel:languages:perl/perl-Crypt-HSXKPasswd
I added:

<package name="perl-Crypt-HSXKPasswd" project="devel:languages:perl">
  <build>
    <disable repository="SLE_12_SP4"/>
  </build>

and an according description. All remaining build results passed. This should be good enough.

Thanks for your work.

Actions #18

Updated by tinita over 1 year ago

  • Status changed from Resolved to Feedback

It's not resolved yet, I still have to merge and deploy https://github.com/openSUSE/cpanspec/pull/42 and ideally make a new package.

Actions #19

Updated by okurz over 1 year ago

  • Tags set to reactive work
Actions #20

Updated by livdywan over 1 year ago

tinita wrote:

It's not resolved yet, I still have to merge and deploy https://github.com/openSUSE/cpanspec/pull/42 and ideally make a new package.

The package still needs to be updated

Actions #21

Updated by tinita about 1 year ago

Request for Factory: https://build.opensuse.org/request/show/1060487 (cpanspec)

Actions #22

Updated by tinita about 1 year ago

  • Status changed from Feedback to Resolved

Request accepted

Actions

Also available in: Atom PDF