python3-pyqt5.qsci not built against python3-pyqt5 on Ubuntu Utopic

Bug #1391056 reported by Davy39 on 2014-11-10
24
This bug affects 3 people
Affects Status Importance Assigned to Milestone
qscintilla2 (Ubuntu)
Medium
Dmitry Shachnev
Utopic
Undecided
Dmitry Shachnev
Vivid
Medium
Dmitry Shachnev
Wily
Undecided
Unassigned

Bug Description

## Impact
Package python3-pyqt5.qsci is broken in Utopic and Vivid:

>>> import PyQt5.Qsci
python3: siplib.c:11993: sipEnumType_alloc: Assertion `(((currentType)->td_flags & 0x0007) == 0x0003)' failed.

Affects all apps depending on that package (i.e. Eric IDE).

## Test Case
Import PyQt5.Qsci module from Python 3.

## Proposed Fix
A simple rebuild fixes this.

## Regression Potential
Close to zero because it's just a rebuild.

## Upstream Discussions
http://die-offenbachs.homelinux.org:48888/issues/issue162
http://www.riverbankcomputing.com/pipermail/pyqt/2015-May/035895.html
http://www.riverbankcomputing.com/pipermail/pyqt/2015-May/035896.html

Scott Kitterman (kitterman) wrote :

Please provide the SRU information described in https://wiki.ubuntu.com/StableReleaseUpdates#SRU_Bug_Template and then we'll see about a rebuild.

no longer affects: pyqt5 (Ubuntu)
Changed in qscintilla2 (Ubuntu):
importance: Undecided → Medium
status: New → Triaged
Davy39 (davy39) wrote :

[Impact]

 * An explanation of the effects of the bug on users :

Eric IDE, a pyqt5.qsci based software crash on startup

 * justification for backporting the fix to the stable release :

After rebuilding PyQt5.qsci from source, this bug disapear.

[Test Case]

 * Detailed instructions how to reproduce the bug :

# On a fresh Ubuntu Utopic 64bits installation
sudo apt-get install qt5-default qtbase5-dev qttools5-dev-tools libqt5scintilla2-11 python3-pyqt5.qtwebkit python3-pyqt5.qtsvg python3-pyqt5.qtsql python3-pyqt5.qsci
#Buid Eric IDE (for pyqt5 based app devellopement)
hg clone http://die-offenbachs.homelinux.org:48888/hg/eric
cd eric
sudo python3 install.py
#Try to run Eric6
eric6
# Getting "<class 'TypeError'>" "QsciLexerPython(QObject parent=None): argument 1 has unexpected type 'Shell'"
#More detail about this bug here : http://die-offenbachs.homelinux.org:48888/issues/msg575

 * these should allow someone who is not familiar with the affected package to reproduce the bug and verify that the updated package fixes the problem :

# By rebuilding PyQt5.qsci from sources, I get rid of this error
sudo apt-get sources python3-pyqt5.qsci
cd qscintilla2-2.8.3+dfsg/Python
python3 configure.py --pyqt=PyQt5 -q /usr/lib/x86_64-linux-gnu/qt5/bin/qmake
make
sudo make install
#Launch the same app
eric6
# -> OK

[Regression Potential]

 * discussion of how regressions are most likely to manifest as a result of this change :

I don't see any chances of regressions

[Other Info]
  Fell free to ask for more details.

Davy39 (davy39) wrote :

Sorry i made a mistake in previous post, the complete build instruction is (I forgot -d /usr/lib/python3/dist-packages/PyQt5) :

#Build PyQt5.qsci from sources
sudo apt-get sources python3-pyqt5.qsci
cd qscintilla2-2.8.3+dfsg/Python
python3 configure.py --pyqt=PyQt5 -q /usr/lib/x86_64-linux-gnu/qt5/bin/qmake -d /usr/lib/python3/dist-packages/PyQt5
make
sudo make install

Dominique Cyprès (lunasspecto) wrote :

I am having some trouble with the workaround provided by davy39 in Comment #2 and Comment #3. I followed the suggested steps, with a small substitution for the i386 platform, so the command I used to invoke the configure script was this:

python3 configure.py --pyqt=PyQt5 -q /usr/lib/i386-linux-gnu/qt5/bin/qmake -d /usr/lib/python3/dist-packages/PyQt5

The Pyqt5.Qsci configuration script failed with the following output:

Configuring QScintilla 2.8.3...
QScintilla None is being used.
The QScintilla .sip files will be installed in /usr/share/sip/PyQt5.
The QScintilla module will be installed in
/usr/lib/python3/dist-packages/PyQt5.
PyQt 5.3.2 is being used.
Qt 5.3.0 is being used.
sip 4.16.3 is being used.
The sip executable is /usr/bin/sip.
The QScintilla module is being built with 'protected' redefined as 'public'.
The QScintilla API file will be installed in /usr/share/qt5/api/python.
Generating the C++ source for the Qsci module...
Error: Unable to create the C++ code.

Gustavo A. Díaz (gdiaz) wrote :

Dominique: thats cause you need to have pyqt5-dev installed.

Gustavo A. Díaz (gdiaz) wrote :

After compile Pyqt5.Qsci from source (as Davy39 suggested) still I can't run Eric IDE (v6):

Error information:
--------------------------------------------------------------------------------
2015-01-06, 13:39:17
--------------------------------------------------------------------------------
&lt;class 'TypeError'&gt;:
QsciLexerPython(QObject parent=None): argument 1 has unexpected type 'Shell'
--------------------------------------------------------------------------------
  File "/usr/lib/python3/dist-packages/eric6/eric6.py", line 327, in &lt;module&gt;
    main()
  File "/usr/lib/python3/dist-packages/eric6/eric6.py", line 324, in main
    raise err
  File "/usr/lib/python3/dist-packages/eric6/eric6.py", line 307, in main
    restartArgs)
  File "/usr/lib/python3/dist-packages/eric6/UI/UserInterface.py", line 227, in __init__
    self.__createLayout(debugServer)
  File "/usr/lib/python3/dist-packages/eric6/UI/UserInterface.py", line 620, in __createLayout
    self.__createSidebarsLayout(debugServer)
  File "/usr/lib/python3/dist-packages/eric6/UI/UserInterface.py", line 853, in __createSidebarsLayout
    ShellAssembly(debugServer, self.viewmanager, True)
  File "/usr/lib/python3/dist-packages/eric6/QScintilla/Shell.py", line 48, in __init__
    self.__shell = Shell(dbs, vm, self)
  File "/usr/lib/python3/dist-packages/eric6/QScintilla/Shell.py", line 236, in __init__
    self.__bindLexer()
  File "/usr/lib/python3/dist-packages/eric6/QScintilla/Shell.py", line 308, in __bindLexer
    self.lexer_ = Lexers.getLexer(self.language, self)
  File "/usr/lib/python3/dist-packages/eric6/QScintilla/Lexers/__init__.py", line 209, in getLexer
    return LexerPython(language, parent)
  File "/usr/lib/python3/dist-packages/eric6/QScintilla/Lexers/LexerPython.py", line 31, in __init__
    QsciLexerPython.__init__(self, parent)

--------------------------------------------------------------------------------
Version Numbers:
  Python 3.4.2
  Qt 5.3.0
  PyQt5 5.3.2
  sip 4.16.3
  QScintilla 2.8.3
  WebKit 538.1
  eric6 6.0.0 (rev. 0d50185d365b)

Platform: linux
3.4.2 (default, Oct 8 2014, 13:08:17)
[GCC 4.9.1]
--------------------------------------------------------------------------------
Distribution Info:
  /etc/lsb-release
  DISTRIB_ID=Ubuntu
  DISTRIB_RELEASE=14.10
  DISTRIB_CODENAME=utopic
  DISTRIB_DESCRIPTION="Ubuntu 14.10"

  /etc/os-release
  NAME="Ubuntu"
  VERSION="14.10 (Utopic Unicorn)"
  ID=ubuntu
  ID_LIKE=debian
  PRETTY_NAME="Ubuntu 14.10"
  VERSION_ID="14.10"
  HOME_URL="http://www.ubuntu.com/"
  SUPPORT_URL="http://help.ubuntu.com/"
  BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"

Dominique Cyprès (lunasspecto) wrote :

In response to gdiaz in Comment #5: the output I provided in Comment #4 is from a system that does have pyqt5-dev installed.

KaIkuN (kaktus-w-h) wrote :

Hey, I had the same error like Dominique in comment #4 when I try to install Davy's way.

(sudo python3 configure.py --pyqt=PyQt5 -q /usr/lib/x86_64-linux-gnu/qt5/bin/qmake --qsci-incdir /home/kaikun/Eric_Python_IDE/QScintilla-gpl-2.8.4/Qt4Qt5/ -d /usr/lib/python3/dist-packages/PyQt5)

when I removed python3-pyqt5.qsci , pyqt5-dev was removed as well so I reinstalled it.
Now I get an error in the next step, doing make:

g++ -c -m64 -pipe -fno-exceptions -O2 -Wall -W -D_REENTRANT -fPIC -DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_NO_DEBUG -DQT_PLUGIN -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I. -I../Qt4Qt5 -isystem /usr/include/python3.4m -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I. -o sipQsciQsciLexerBash.o sipQsciQsciLexerBash.cpp
In file included from sipQsciQsciLexerBash.cpp:29:0:
sipAPIQsci.h:35:21: fatal error: QMetaType: Datei oder Verzeichnis nicht gefunden
 #include <QMetaType>
                     ^
compilation terminated.
Makefile:448: recipe for target 'sipQsciQsciLexerBash.o' failed
make: *** [sipQsciQsciLexerBash.o] Error 1

In usr/include/x86_64-linux-gnu is no directory qt5 ..

I dont know just trying to install eric6 since two days, first got the error in #6 so I try dave's way now.

I also have this bug (or similar) in new FRESH INSTALL kubuntu 15.04. (I've only added leafpad and aptitude)

To produce this bug:

install new kubuntu 15.04 (probably all ???buntu 15.04)
sudo apt-get update
sudo apt-get dist-upgrade

#now install python3-pyqt5.qsci
sudo apt-get python3-pyqt5.qsci

#open python3 consolle and "from PyQt5 import Qsci" The result is:

Python 3.4.3 (default, Mar 26 2015, 22:03:40)
[GCC 4.9.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from PyQt5 import Qsci
python3: siplib.c:11993: sipEnumType_alloc: Assertion `(((currentType)->td_flags & 0
x0007) == 0x0003)' failed.
Annullato (core dump creato)

My version of interested program.
Versioni
aptitude show python3-sip
Pacchetto: python3-sip
Stato: installato
Installato automaticamente: no
Versione: 4.16.6+dfsg-1

aptitude show python3-pyqt5.qsci
Pacchetto: python3-pyqt5.qsci
Stato: installato
Installato automaticamente: no
Versione: 2.8.4+dfsg-1

Same for me, I just (for now) ended installing Qt (with their own
installer) and compilled PyQt, SIP and QScintilla by hand and works
perfectly.

Cheers.

--

Gustavo A. Díaz
GDNet - www.gdnet.com.ar
"Diseñando tus ideas, desarrollando tus proyectos"

2015-04-29 8:24 GMT-03:00 bertuzzi.claudio <email address hidden>:

> I also have this bug (or similar) in new FRESH INSTALL kubuntu 15.04.
> (I've only added leafpad and aptitude)
>
> To produce this bug:
>
> install new kubuntu 15.04 (probably all ???buntu 15.04)
> sudo apt-get update
> sudo apt-get dist-upgrade
>
> #now install python3-pyqt5.qsci
> sudo apt-get python3-pyqt5.qsci
>
> #open python3 consolle and "from PyQt5 import Qsci" The result is:
>
> Python 3.4.3 (default, Mar 26 2015, 22:03:40)
> [GCC 4.9.2] on linux
> Type "help", "copyright", "credits" or "license" for more information.
> >>> from PyQt5 import Qsci
> python3: siplib.c:11993: sipEnumType_alloc: Assertion
> `(((currentType)->td_flags & 0
> x0007) == 0x0003)' failed.
> Annullato (core dump creato)
>
> My version of interested program.
> Versioni
> aptitude show python3-sip
> Pacchetto: python3-sip
> Stato: installato
> Installato automaticamente: no
> Versione: 4.16.6+dfsg-1
>
> aptitude show python3-pyqt5.qsci
> Pacchetto: python3-pyqt5.qsci
> Stato: installato
> Installato automaticamente: no
> Versione: 2.8.4+dfsg-1
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1391056
>
> Title:
> python3-pyqt5.qsci not built against python3-pyqt5 on Ubuntu Utopic
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/ubuntu/+source/qscintilla2/+bug/1391056/+subscriptions
>

Dmitry Shachnev (mitya57) wrote :

For Wily this will be fixed via a Debian upload, which will also add an autopkgtest to catch such issues.

description: updated
Changed in qscintilla2 (Ubuntu Utopic):
status: New → In Progress
Changed in qscintilla2 (Ubuntu Vivid):
status: Triaged → In Progress
Changed in qscintilla2 (Ubuntu Utopic):
assignee: nobody → Dmitry Shachnev (mitya57)
Changed in qscintilla2 (Ubuntu Vivid):
assignee: nobody → Dmitry Shachnev (mitya57)

Hello Davy39, or anyone else affected,

Accepted into vivid-proposed. The package will build now and be available in a few hours in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in qscintilla2 (Ubuntu Vivid):
status: In Progress → Fix Committed
tags: added: verification-needed
Changed in qscintilla2 (Ubuntu Utopic):
status: In Progress → Fix Committed

thank's! Work for me :-)

I've tested (for now in a UNclean 15.04 ubuntu PC sorry).
I've enable proposed following the example of the page you suggested
sudo apt-get update
sudo apt-get install python3-pyqt5.qsci/vivid-proposed

and now this command:

python3 -c "from PyQt5 import Qsci"

work with non crash
Also eric6 work! Thank's a lot!

This evening I will install a new machine and try this "proposed" on a clean install

tags: added: verification-done-vivid verification-needed-trusty
removed: verification-needed
tags: added: verification-needed-utopic
removed: verification-needed-trusty
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in qscintilla2 (Ubuntu Wily):
status: New → Confirmed
juanjux (juanjux) wrote :

I was having the same problem, the proposed update fixed the problem for me too on two computers and a VM.

On Wednesday, May 06, 2015 08:21:06 AM you wrote:
> I was having the same problem, the proposed update fixed the problem for
> me too on two computers and a VM.

On Utopic or Vivid?

juanjux (juanjux) wrote :

> On Utopic or Vivid?

Vivid (Kubuntu).

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qscintilla2 - 2.8.3+dfsg-3build0.1

---------------
qscintilla2 (2.8.3+dfsg-3build0.1) utopic; urgency=medium

  * No-change rebuild to make python3-pyqt5.qsci working (LP: #1391056).

 -- Dmitry Shachnev <email address hidden> Mon, 04 May 2015 21:50:29 +0300

Changed in qscintilla2 (Ubuntu Utopic):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for qscintilla2 has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qscintilla2 - 2.8.4+dfsg-1build0.1

---------------
qscintilla2 (2.8.4+dfsg-1build0.1) vivid; urgency=medium

  * No-change rebuild to make python3-pyqt5.qsci working (LP: #1391056).

 -- Dmitry Shachnev <email address hidden> Mon, 04 May 2015 21:50:29 +0300

Changed in qscintilla2 (Ubuntu Vivid):
status: Fix Committed → Fix Released
Changed in qscintilla2 (Ubuntu Wily):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers