Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 878021 - sci-geosciences/qgis-3.26.3: Won't compile with current dev-python/sip-6.6.2
Summary: sci-geosciences/qgis-3.26.3: Won't compile with current dev-python/sip-6.6.2
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Sci-geo Project
URL:
Whiteboard:
Keywords:
Depends on: 877835
Blocks:
  Show dependency tree
 
Reported: 2022-10-22 16:54 UTC by Bernd Feige
Modified: 2022-10-30 22:43 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bernd Feige 2022-10-22 16:54:19 UTC
Cf. https://bugs.gentoo.org/850787
Just as qgis-9999, qgis-3.26.3 triggers the sip parsing bug
Cf. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1009939
"Querying qmake about your Qt installation...
 These bindings will be built: analysis.
 Generating the analysis bindings...
 sip-build: An internal error occurred..."

That debian bug is against sip-6.6.1 and a fix is speculated to be in "the next version" but sip-6.6.2 is still affected.

sip-6.7.2 is out and fixes this (no change to the ebuild necessary).

Reproducible: Always
Comment 1 Martin Mokrejš 2022-10-30 17:37:56 UTC
I see similar bug with sip-6.6.2 and sci-geosciences/qgis-3.26.3:

Querying qmake about your Qt installation...
These bindings will be built: gui.
Generating the gui bindings...
sip-build: An internal error occurred...
Traceback (most recent call last):
  File "/usr/lib/python-exec/python3.8/sip-build", line 8, in <module>
    sys.exit(main())
  File "/usr/lib/python3.8/site-packages/sipbuild/tools/build.py", line 37, in main
    handle_exception(e)
  File "/usr/lib/python3.8/site-packages/sipbuild/exceptions.py", line 81, in handle_exception
    raise e
  File "/usr/lib/python3.8/site-packages/sipbuild/tools/build.py", line 34, in main
    project.build()
  File "/usr/lib/python3.8/site-packages/sipbuild/project.py", line 244, in build
    self.builder.build()
  File "/usr/lib/python3.8/site-packages/sipbuild/builder.py", line 48, in build
    self._generate_bindings()
  File "/usr/lib/python3.8/site-packages/sipbuild/builder.py", line 277, in _generate_bindings
    buildable = bindings.generate()
  File "/usr/lib/python3.8/site-packages/sipbuild/bindings.py", line 166, in generate
    spec, sip_files = parse(self.sip_file, SIP_VERSION, encoding,
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/parser.py", line 33, in parse
    return ParserManager(
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/parser_manager.py", line 1507, in parse
    self._parser.parse(self._read(sip_file, raw_sip_file),
  File "/usr/lib/python3.8/site-packages/ply/yacc.py", line 331, in parse
    return self.parseopt(input, lexer, debug, tracking, tokenfunc)
  File "/usr/lib/python3.8/site-packages/ply/yacc.py", line 823, in parseopt
    p.callable(pslice)
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/rules.py", line 3029, in p_typedef_decl
    instantiated = pm.instantiate_class_template(p, name_symbol,
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/parser_manager.py", line 1480, in instantiate_class_template
    instantiate_class(p, symbol, fq_cpp_name, tmpl_names, proto_class,
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/instantiations.py", line 131, in instantiate_class
    i_class.ctors = _instantiate_ctors(tmpl_names, proto_class, template,
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/instantiations.py", line 235, in _instantiate_ctors
    i_ctor.py_signature = _instantiate_signature(proto_ctor.py_signature,
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/instantiations.py", line 368, in _instantiate_signature
    i_arg = _instantiate_argument(proto_arg, proto_class, tmpl_names,
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/instantiations.py", line 191, in _instantiate_argument
    i_arg.default_value = [_instantiate_value(v, expansions)
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/instantiations.py", line 191, in <listcomp>
    i_arg.default_value = [_instantiate_value(v, expansions)
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/parser/instantiations.py", line 437, in _instantiate_value
    i_name = ScopedName.parse(template_string(proto_name, expansions))
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/templates.py", line 201, in template_string
    proto_str = proto_str.replace(name, value)
AttributeError: 'ScopedName' object has no attribute 'replace'
ninja: build stopped: subcommand failed.
 * ERROR: sci-geosciences/qgis-3.26.3::gentoo failed (compile phase):


This leads to https://github.com/qgis/QGIS/issues/49214 .

After install sip-6.7.3 I got:

Querying qmake about your Qt installation...
These bindings will be built: gui.
Generating the gui bindings...
Generating the _gui .pyi file...
sip-build: An internal error occurred...
Traceback (most recent call last):
  File "/usr/lib/python-exec/python3.8/sip-build", line 8, in <module>
    sys.exit(main())
  File "/usr/lib/python3.8/site-packages/sipbuild/tools/build.py", line 37, in main
    handle_exception(e)
  File "/usr/lib/python3.8/site-packages/sipbuild/exceptions.py", line 81, in handle_exception
    raise e
  File "/usr/lib/python3.8/site-packages/sipbuild/tools/build.py", line 34, in main
    project.build()
  File "/usr/lib/python3.8/site-packages/sipbuild/project.py", line 244, in build
    self.builder.build()
  File "/usr/lib/python3.8/site-packages/sipbuild/builder.py", line 48, in build
    self._generate_bindings()
  File "/usr/lib/python3.8/site-packages/sipbuild/builder.py", line 277, in _generate_bindings
    buildable = bindings.generate()
  File "/usr/lib/python3.8/site-packages/sipbuild/bindings.py", line 214, in generate
    output_pyi(spec, pyi_path)
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/outputs/pyi.py", line 55, in output_pyi
    _module(pf, spec, module)
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/outputs/pyi.py", line 125, in _module
    _class(pf, spec, module, klass, defined)
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/outputs/pyi.py", line 285, in _class
    _property(pf, spec, module, prop, False, getter, klass.overloads,
  File "/usr/lib/python3.8/site-packages/sipbuild/generator/outputs/pyi.py", line 498, in _property
    s += f'def {prop.name.name}{sinature}: ...\n'
NameError: name 'sinature' is not defined
ninja: build stopped: subcommand failed.
 * ERROR: sci-geosciences/qgis-3.26.3::gentoo failed (compile phase):
 *   ninja -v -j5 -l0 failed


This is a typo for sure.