Bug 490168

Summary: Error in option spec: "ignore-modules|!=s{,}"
Product: [Developer tools] kdesrc-build Reporter: Milian Wolff <mail>
Component: generalAssignee: Michael Pyne <mpyne>
Status: RESOLVED UNMAINTAINED    
Severity: normal CC: ashark
Priority: NOR    
Version First Reported In: Git   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Milian Wolff 2024-07-12 12:34:07 UTC
SUMMARY

0.437 Encountered an error in the execution of the script.
0.437 --> Error in option spec: "ignore-modules|!=s{,}"
0.437  at /usr/share/perl5/vendor_perl/Getopt/Long.pm line 479.
0.437   Getopt::Long::GetOptionsFromArray(ARRAY(0x60b69afb8b08), HASH(0x60b69af5bcb0), "dependency-tree", "dependency-tree-fullpath", "help|h", "list-installed", "no-metadata|M", "query=s", ...) called at /opt/kdesrc-build/modules/ksb/Cmdline.pm line 279
0.437   ksb::Cmdline::readCommandLineOptionsAndSelectors("--metadata-only") called at /opt/kdesrc-build/modules/ksb/Application.pm line 246
0.437   ksb::Application::generateModuleList(ksb::Application=HASH(0x60b69b376d58), "--metadata-only") called at /opt/kdesrc-build/modules/ksb/Application.pm line 85
0.437   ksb::Application::new("ksb::Application", "--metadata-only") called at ./kdesrc-build line 204
0.437   eval {...} called at ./kdesrc-build line 203
0.437 
0.437 Please submit a bug against kdesrc-build on https://bugs.kde.org/

STEPS TO REPRODUCE
start almalinux container:
```
git pull almalinux:8
git run -it almalinux:8 bash
```

then run:
```
dnf update -y && dnf install -y gcc-toolset-13 perl perl-IO-Socket-SSL perl-YAML git
/opt/rh/gcc-toolset-13/enable
export PATH=/opt/rh/gcc-toolset-13/root/bin:$PATH
cpan YAML::Syck JSON::XS YAML::XS
cd /opt
git clone https://invent.kde.org/sdk/kdesrc-build.git
cd kdesrc-build
./kdesrc-build --metadata-only
Encountered an error in the execution of the script.
--> Error in option spec: "ignore-modules|!=s{,}"
 at /usr/share/perl5/vendor_perl/Getopt/Long.pm line 479.
        Getopt::Long::GetOptionsFromArray(ARRAY(0x60711a8eda98), HASH(0x60711a888960), "dependency-tree", "dependency-tree-fullpath", "help|h", "list-installed", "no-metadata|M", "query=s", ...) called at /opt/kdesrc-build/modules/ksb/Cmdline.pm line 279
        ksb::Cmdline::readCommandLineOptionsAndSelectors("--metadata-only") called at /opt/kdesrc-build/modules/ksb/Application.pm line 246
        ksb::Application::generateModuleList(ksb::Application=HASH(0x60711acacde8), "--metadata-only") called at /opt/kdesrc-build/modules/ksb/Application.pm line 85
        ksb::Application::new("ksb::Application", "--metadata-only") called at ./kdesrc-build line 204
        eval {...} called at ./kdesrc-build line 203

Please submit a bug against kdesrc-build on https://bugs.kde.org/
```

OBSERVED RESULT
see above

EXPECTED RESULT
no error, works

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: almalinux 8 (in docker)
Comment 1 Milian Wolff 2024-07-14 18:16:40 UTC
workaround for now:

    sed -i "s/ignore-modules|!=/ignore-modules|=/" modules/ksb/Cmdline.pm
Comment 2 Andrew Shark 2025-11-14 11:33:19 UTC
Correct workaround. This won't go to the repo however, as development moved to kde-builder. Another solution - upgrade perl.