Re: [PyQt] QWidget 'destroyed' signal: possible regression?
Well, you're quite merciless with my amateur programming skills... Anyway, thanks for taking the time to take care of it. For what it's worth, I prefer a rough exception than a silent fail. So your conclusion is fine with me. -Pierre Le 4 mars 2012 à 14:49, Phil Thompson p...@riverbankcomputing.com a écrit : On Sun, 26 Feb 2012 16:23:26 +0100, Pierre Raybaut pierre.rayb...@gmail.com wrote: Hi Phil, I recently found out that a feature succesfully tested with older versions of PyQt was broken (http://code.google.com/p/spyderlib/issues/detail?id=951) and at the same time the Matplotlib developers contacted me for a similar issue (https://github.com/matplotlib/matplotlib/issues/711). To explain our problem, I wrote this test script: #- from PyQt4.QtGui import QApplication, QWidget from PyQt4.QtCore import Qt def print_from_function(): print Callback = Function class TestWidget(QWidget): def __init__(self, parent=None): QWidget.__init__(self, parent) self.destroyed.connect(print_from_function) self.destroyed.connect(self.print_from_method) self.destroyed.connect(self.print_from_static_method) self.destroyed.connect(lambda: self.print_from_lambda_function()) self.setAttribute(Qt.WA_DeleteOnClose) def print_from_method(self): print Callback = method @staticmethod def print_from_static_method(self): print Callback = static method def print_from_lambda_function(self): print Callback = lambda function app = QApplication([]) widget = TestWidget() widget.show() app.exec_() #- The issue with the test script above is that all callbacks connected to the 'destroyed' signal are triggered except for the callback which is a method (bound to the object to be destroyed). So the question is: is this a regression from PyQt v4.8.5? (or earlier) First off I think that connecting the destroyed() signal to a method of the object being destroyed is a bug. There are no guarantees about the state of the object when the signal is emitted. The change in behaviour was introduced in SIP v4.10.3 released July 2010. As far as I can tell the change was made because I thought it was a good idea rather than in response to a bug report. The intent would have been to eliminate any C/C++ object has been deleted exceptions - but, as in this case, the slot may not make any calls that would trigger an exception. With hindsight I think I will back out the change. I dislike the inconsistency in behaviour more than I dislike the buggy application code. Phil ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] QWidget 'destroyed' signal: possible regression?
Hi Phil, I recently found out that a feature succesfully tested with older versions of PyQt was broken (http://code.google.com/p/spyderlib/issues/detail?id=951) and at the same time the Matplotlib developers contacted me for a similar issue (https://github.com/matplotlib/matplotlib/issues/711). To explain our problem, I wrote this test script: #- from PyQt4.QtGui import QApplication, QWidget from PyQt4.QtCore import Qt def print_from_function(): print Callback = Function class TestWidget(QWidget): def __init__(self, parent=None): QWidget.__init__(self, parent) self.destroyed.connect(print_from_function) self.destroyed.connect(self.print_from_method) self.destroyed.connect(self.print_from_static_method) self.destroyed.connect(lambda: self.print_from_lambda_function()) self.setAttribute(Qt.WA_DeleteOnClose) def print_from_method(self): print Callback = method @staticmethod def print_from_static_method(self): print Callback = static method def print_from_lambda_function(self): print Callback = lambda function app = QApplication([]) widget = TestWidget() widget.show() app.exec_() #- The issue with the test script above is that all callbacks connected to the 'destroyed' signal are triggered except for the callback which is a method (bound to the object to be destroyed). So the question is: is this a regression from PyQt v4.8.5? (or earlier) Thanks, -Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Strange bug with QFileDialog static methods and IPython running in a QProcess on win32
Hi Phil, I did a lot of tests about this bug and I still can't understand where it comes from. At least I've succeeded in narrowing down the test cases: * test #1: from PyQt4.QtGui import QFileDialog, QApplication app = QApplication([]) filename = QFileDialog.getSaveFileName(None) * test #2: from PyQt4.QtGui import QFileDialog, QPushButton, QApplication from PyQt4.QtCore import SIGNAL app = QApplication([]) button = QPushButton(Test, None) button.connect(button, SIGNAL(clicked()), lambda: QFileDialog.getSaveFileName(None)) button.show() app.exec_() I'm running these tests in Spyder's external console: this is a console widget (QPlainTextEdit) showing stdin, stdout and stderr of a Python or IPython interpreter running in a QProcess (see this screenshot: http://spyderlib.googlegroups.com/web/ipython.png). Running test #1 is a success in every situation (simple Python interpreter or IPython running). On the contrary, running test #2 gives the following results: * simple Python interpreter: ok * IPython: the GUI freezes when clicking the button, and it unfreezes when sending something in QProcess' stdin (like pressing ENTER in the console). Apparently the only difference between these two tests is that I'm running QApplication's event loop in test #2. But note that this freezing situation is only happening for QFileDialog's static methods (getOpenFileName, getSaveFileName, and so on) and is never happening for other kinds of widgets or dialog boxes... and I remember seeing a message in stdout when using these methods in PyQt v4.3 (something like redirecting in win32 console) suggesting that these methods were doing weird things on stdin/stdout and that it could be related to this bug. I'm stuck with this bug, so I would really appreciate your help! Note that it's excellent news to be able to embed IPython in a PyQt-based IDE: this will be the first time an IDE is able to provide such powerful feature... so this is also great news for PyQt! Thanks, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] [ANN] Spyder v1.0.3 released
Hi all, I'm pleased to announce here that Spyder version 1.0.3 has been released: http://packages.python.org/spyder __Important__ Spyder v1.0.3 is a *critical* bugfix release (bonus: new Apply button in matplotlib's figure options editor). Previously known as Pydee, Spyder (Scientific PYthon Development EnviRonment) is a free open-source Python development environment providing MATLAB-like features in a simple and light-weighted software, available for Windows XP/Vista/7, GNU/Linux and MacOS X: * advanced code editing features (code analysis, ...) * interactive console with MATLAB-like workpace (with GUI-based list, dictionary, tuple, text and array editors -- screenshots: http://packages.python.org/spyder/console.html#the-workspace) and integrated matplotlib figures * external console to open an interpreter or run a script in a separate process (with a global variable explorer providing the same features as the interactive console's workspace) * code analysis with pyflakes and pylint * search in files features * documentation viewer: automatically retrieves docstrings or source code of the function/class called in the interactive/external console * integrated file/directories explorer * MATLAB-like path management ...and more! Spyder is part of spyderlib, a Python module based on PyQt4 and QScintilla2 which provides powerful console-related PyQt4 widgets. - Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] [ANN] Spyder v1.0.2 released
Hi all, I'm pleased to announce here that Spyder version 1.0.2 has been released: http://packages.python.org/spyder Previously known as Pydee, Spyder (Scientific PYthon Development EnviRonment) is a free open-source Python development environment providing MATLAB-like features in a simple and light-weighted software, available for Windows XP/Vista/7, GNU/Linux and MacOS X: * advanced code editing features (code analysis, ...) * interactive console with MATLAB-like workpace (with GUI-based list, dictionary, tuple, text and array editors -- screenshots: http://packages.python.org/spyder/console.html#the-workspace) and integrated matplotlib figures * external console to open an interpreter or run a script in a separate process (with a global variable explorer providing the same features as the interactive console's workspace) * code analysis with pyflakes and pylint * search in files features * documentation viewer: automatically retrieves docstrings or source code of the function/class called in the interactive/external console * integrated file/directories explorer * MATLAB-like path management ...and more! Spyder is part of spyderlib, a Python module based on PyQt4 and QScintilla2 which provides powerful console-related PyQt4 widgets. Spyder v1.0.2 is a bugfix release: * External console: subprocess python calls were using the external console's sitecustomize.py (instead of system sitecustomize.py) * Added workaround for PyQt4 v4.6+ major bug with matplotlib * Added option to customize the way matplotlib figures are embedded (docked or floating window) * Matplotlib's Option dialog box is now supporting subplots * Array editor now supports complex arrays * Editor: replaced Run selection or current line option by Run selection or current block (without selection, this feature is similar to MATLAB's cell mode) * ...and a lot of minor bugfixes. - Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
Re: [PyQt] Regressions on destruction of objects?
FYI, with PyQt4 v4.6.1, the matplotlib's Qt4 backend is no longer usable interactively because the 'destroyed()' signal is not emitted when matplotlib's figure (QMainWindow instance) is closed (and destroyed, thanks to the Qt.WA_DeleteOnClose attribute). In other words, one can only show one figure with matplotlib/PyQt4 v4.6.1. Is there going to be a v4.6.2 release soon with this issue fixed? Thanks, Cheers, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] [ANN] Spyder v1.0.0 released
Hi all, I'm pleased to announce here that Spyder version 1.0.0 has been released: http://packages.python.org/spyder Previously known as Pydee, Spyder (Scientific PYthon Development EnviRonment) is a free open-source Python development environment providing MATLAB-like features in a simple and light-weighted software, available for Windows XP/Vista/7, GNU/Linux and MacOS X: * advanced code editing features (code analysis, ...) * interactive console with MATLAB-like workpace (with GUI-based list, dictionary, tuple, text and array editors -- screenshots: http://packages.python.org/spyder/console.html#the-workspace) and integrated matplotlib figures * external console to open an interpreter or run a script in a separate process (with a global variable explorer providing the same features as the interactive console's workspace) * code analysis with pyflakes and pylint * search in files features * documentation viewer: automatically retrieves docstrings or source code of the function/class called in the interactive/external console * integrated file/directories explorer * MATLAB-like path management ...and more! Spyder is part of spyderlib, a Python module based on PyQt4 and QScintilla2 which provides powerful console-related PyQt4 widgets. I would like to thanks here all the Spyder users and especially the beta testers and contributors: without them, Spyder wouldn't be as stable, easy-to-use and full-featured as it is. - Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
Re: [PyQt] Is QScintilla slower/more buggy than its wxPython counterpart?
2009/8/17 Phil Thompson p...@riverbankcomputing.com: On Sun, 16 Aug 2009 08:56:56 +0200, Pierre Raybaut cont...@pythonxy.com wrote: Hi, Following a bug report on Spyder (PKA Pydee, the Scientific PYthon Development EnviRonment), I've just wrote a simple test with PyQt4 and QScintilla: http://spyderlib.googlecode.com/files/qscitest.py This simple test shows two things (maybe bugs?): 1. QScintilla widget is very slow when writing long lines (it gets better when wrapping is turned on, but it's still far slower than its wxPython counterpart) 2. when a long line is written, horizontal scroll does not allow to see the end of the line... that is quite disappointing. So my questions are: a. Are these issues known bugs? I'll take a look. b. Is there a way to improve performance without switching to QTextEdit...? If QTextEdit is all you need then you should use it. Phil Actually I'm really using QScintilla features like code completion, brace matching, markers and syntax coloring. So switching to QTextEdit would require a lot of work and I'm sure you'll agree that a debugged QScintilla is the best choice for all than to develop another module based on QTextEdit to fit only my needs. Thanks for taking the time to look at this. Cheers, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Is QScintilla slower/more buggy than its wxPython counterpart?
Hi, Following a bug report on Spyder (PKA Pydee, the Scientific PYthon Development EnviRonment), I've just wrote a simple test with PyQt4 and QScintilla: http://spyderlib.googlecode.com/files/qscitest.py This simple test shows two things (maybe bugs?): 1. QScintilla widget is very slow when writing long lines (it gets better when wrapping is turned on, but it's still far slower than its wxPython counterpart) 2. when a long line is written, horizontal scroll does not allow to see the end of the line... that is quite disappointing. So my questions are: a. Are these issues known bugs? b. Is there a way to improve performance without switching to QTextEdit...? Thanks for your help, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Truncated text in menu titles, tabs, and other widgets
Hi all, I had several bug reports for Pydee project (http://code.google.com/p/pydee/) regarding what seems to be a PyQt-related bug: - symptoms: truncated text in menu titles, tabs and other widgets ; - example: http://pydee.googlecode.com/issues/attachment?aid=-9175874176276135624name=Capture.png - apparently, it happens with PyQt 4.4.4 (with Qt 4.4.3 and Python 2.5.2) on Ubuntu 8.10 64bits (not sure it's related to the corresponding debian package though...). Any idea? Thanks, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Bug: PyQt4 4.3.3 with py2exe 0.6.9 and pywin32 2.13 on Python 2.5
Hi all, FYI, here is a viscious bug I found: it may appear if you have installed py2exe 0.6.9, pywin32 2.13 and PyQt4 4.3.3 on Python 2.5 (using the official binaries for each of these packages). Example: #--- from PyQt4.QtGui import QApplication, QFileDialog import sys STDOUT = sys.stdout def file_open(parent=None): File open dialog usable inside/outside a PyQt4 application if QApplication.startingUp(): QApplication([]) # You have to create a QApplication instance first default_dir = # Default directory sys.stdout = None # Avoid the Redirecting output to win32trace # remote collector message from showing in stdout filename = QFileDialog.getOpenFileName(parent, Title, default_dir, All files (*.*)) sys.stdout = STDOUT if filename: return unicode(filename) print file_open() #--- Traceback: Traceback (most recent call last): File boot_com_servers.py, line 21, in module File C:\Python25\lib\site-packages\pythoncom.py, line 3, in module pywintypes.__import_pywin32_system_module__(pythoncom, globals()) File C:\Python25\lib\site-packages\win32\lib\pywintypes.py, line 111, in __import_pywin32_system_module__ mod = imp.load_dynamic(modname, found) ImportError: DLL load failed [...] So, with this configuration, if you call any of the QFileDialog (PyQt4.QtGui) static methods - i.e. getSaveFileName, getExistingDirectory and so on, an exception will be raised showing a message like ImportError: DLL load failed [...]. The reason of this ImportError is quite clear: some PyQt4's DLL are loaded at static memory addresses (that's the way the official binaries have been built), so an import order has to be respected, otherwise when importing pywin32's pywintypes25.dll the memory address is already occupied and the module can't be imported. On the contrary, I have no idea (I must confess that as soon as I found a way to avoid this error, I stop looking for answers) why py2exe's boot_com_servers.py (see traceback below) is executed when calling these QFileDialog methods, causing the pywin32's pythoncom module to be imported. Solution: #--- try: # PyQt4 4.3.3 on Windows (static DLLs) with py2exe and pywin32 installed: # - pythoncom must be imported first, otherwise py2exe's boot_com_servers #will raise an exception (ImportError: DLL load failed) when calling #any of the QFileDialog static methods (getOpenFileName, ...) import pythoncom except ImportError: pass from PyQt4.QtGui import QApplication, QFileDialog import sys STDOUT = sys.stdout def file_open(parent=None): File open dialog usable inside/outside a PyQt4 application if QApplication.startingUp(): QApplication([]) # You have to create a QApplication instance first default_dir = # Default directory sys.stdout = None # Avoid the Redirecting output to win32trace # remote collector message from showing in stdout filename = QFileDialog.getOpenFileName(parent, Title, default_dir, All files (*.*)) sys.stdout = STDOUT if filename: return unicode(filename) print file_open() #--- Bug fixed! (or at least avoided) Cheers, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] AttributeError: installTranslator
Hi, I had a bug report last week on PyQtShell Google Code site and I can't see what's wrong. Here it the traceback (where app is a QApplication instance and qt_translator is a QTranslator instance): traceback: Traceback (most recent call last): File /usr/bin/pydee, line 8, in module load_entry_point('PyQtShell==0.3.14', 'gui_scripts', 'pydee')() File /usr/lib/python2.5/site-packages/PyQtShell-0.3.14-py2.5.egg/PyQtShell/pydee.py, line 595, in main app.installTranslator(qt_translator) AttributeError: installTranslator Any guess? Thanks, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Pydee v0.3.0
Hi all, Two months ago, I made an announcement regarding a little open-source project of mine, PyQtShell -- that is a module providing embeddable console widgets for your PyQt applications (interactive Python shell, workspace, working directory browser, editor, ...) as well as Pydee, a PYthon Development EnvironmEnt based on these widgets (which could become an interesting alternative to IDLE for example). Pydee features have been greatly enhanced these last weeks, and a lot of bugs were fixed thanks to Christopher Brown (thank you again Christopher for your bug reports/feature requests which are always very detailed and constructive). I recently (a few minutes ago actually..) added an interesting feature in Pydee v0.3.0: matplotlib integration (i.e. matplotlib figures can be docked inside Pydee which is quite convenient). See this screenshot for example: http://source.pythonxy.com/PyQtShell/screenshots/ss3.png Other screenshots and informations: http://pypi.python.org/pypi/PyQtShell/ http://code.google.com/p/pyqtshell/ As some of you may have noticed, Pydee is intended to be a mini-MATLAB environment -- that being said, it still at an early stage of development. Cheers, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
Re: [PyQt] PyQtShell
Message: 7 Date: Sun, 18 Jan 2009 22:07:57 -0800 (PST) From: eliben eli...@gmail.com Subject: Re: [PyQt] PyQtShell To: pyqt@riverbankcomputing.com Message-ID: 21537432.p...@talk.nabble.com Content-Type: text/plain; charset=us-ascii Pierre Raybaut wrote: Hi all, I would like to share with you this little open-source project of mine, PyQtShell: http://pypi.python.org/pypi/PyQtShell/ http://code.google.com/p/pyqtshell/ I've just started it a few days ago and I worked on it only a couple of hours at home this week and saturday morning... so do not expect a revolution here. But I thought that some of you might be interested in contributing or simply testing it. Here is an extract from the Google Code website: PyQtShell is intended to be an extension to PyQt4 (module PyQt4.QtShell) providing a console application (see screenshots below) based on independent widgets which interact with each other: - QShell, a Python shell with useful options (like a '-os' switch for importing os and os.path as osp, a '-pylab' switch for importing matplotlib in interactive mode, ...) and advanced features like code completion (requires QScintilla, i.e. module PyQt4.Qsci) - CurrentDirChanger: shows the current directory and allows to change it Not implemented : - GlobalsExplorer: shows globals() list with some properties for each global (e.g. value for int or float, min and max values for arrays, ...) and allows to open an appropriate GUI editor - and other widgets: FileExplorer, CodeEditor, ... Hi Pierre, How can I contact you regarding contributing to the shell's code? Eli I'm very sorry, I completely missed all replies made to my post, I was too busy working on PyQtShell on my free time :) Eli, I see that you've found out how to contact me. The best way to contribute to the code is to use Mercurial, either by creating a clone of the read-only repository at http://source.pythonxy.com/PyQtShell/, or by downloading the source archive (on Google Code: http://code.google.com/p/pyqtshell/). After that, you may update your local repository by doing a Pull from time to time. And if you want to contribute, send me your diff files by e-mail, I'll integrate them with great pleasure. Frederic, I know about pyqonsole (and about Logilab too: we are working together on a project at my research center, CEA/DAM) and PyQtShell is - until now at least - intended to be only emulating the Python interpreter without emulating any kind of terminal (which is a limitation but it has the advantage to simplify greatly the code). Cheers, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] PyQt 4.4.4 win32 binaries for Python 2.5
Hi Phil, I see that PyQt 4.4.4 win32 binaries are still available only for Python 2.6. Have you considered distributing binaries for Python 2.5? I guess that a lot of PyQt users are still depending on Python 2.5, and since building PyQt is not a 5-minutes task (please consider that it's much longer for other people than yourself ;) ) distributing these binaries would be very useful -- I would also distribute them through Python(x,y). Unless the 4.4.4 release is not worth the effort? (I mean when compared to the 4.4.3 release, not from a general point of view!) Thanks, Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] PyQt and 3D visualization
Hi Phil, As I probably already mentioned, I'm very interested in PyQt for scientific GUI programming, i.e. GUI embedding classic widgets as well as 2D and 3D plots. Matplotlib + PyQt can help programming rapidly this kind of GUI. However, when it comes to 3D visualization, it seems that Enthought is a step ahead with TVTK which is using wxPython - adding the missing pythonic interface to VTK *and* ready-to-use widgets for visualization purpose with Trait. I saw on Enthought code website that a Qt backend is being developed for Trait (and I think that you are involved in this project). (Q1) There is not much information on this, so I'm not sure I understand correctly: do you know if this means that, for example, one could use TVTK with a Qt backend? Another related question: (Q2) Is there a way to embend VTK objects in PyQt GUI without reinventing the wheel, i.e. with features similar to those of TVTK (basic tools that one could put in a toolbar: rotation, zoom, projections, ...)? Thanks for your help, Regards, Pierre Raybaut ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
Re: [PyQt] Bug - PyQt 4.4.2 and Matplotlib 0.91.2
Darren Dale a écrit : On Friday 30 May 2008 5:22:44 pm Pierre Raybaut wrote: Hi, I found out a performance bug when embedding a Matplotlib 0.91.2 canvas in a PyQt 4.4.2 object: the pan/zoom feature is very slow (with PyQt 4.3.3, and the exact same scripts, pan/zoom is real-time). I am posting this in Matplotlib mailing-list too, but I thought that maybe some of you could have an idea about this? I don't think it is appropriate to post here unless it can be demonstrated that there is a performance issue specifically related to PyQt and not Matplotlib or Qt. We continue this discussion on the matplotlib mailing list. I thought that it may be useful for people to keep this in mind just in case (one could have experienced a similar problem and have an idea on how to solve it, and then I would have eventually switch to matplotlib mailing-list). I posted this message for PyQt users *information* only: that's why I mentioned that I've posted on the matplotlib mailing-list too (which was obviously the real bug report). ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Bug - PyQt 4.4.2 and Matplotlib 0.91.2
Hi, I found out a performance bug when embedding a Matplotlib 0.91.2 canvas in a PyQt 4.4.2 object: the pan/zoom feature is very slow (with PyQt 4.3.3, and the exact same scripts, pan/zoom is real-time). I am posting this in Matplotlib mailing-list too, but I thought that maybe some of you could have an idea about this? Thanks for your help! Regards, Pierre Raybaut ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Re: PyQt 4.4.2 GPL installer / missing DLL
Date: Sat, 24 May 2008 14:49:33 +0200 From: Thorsten Kampe [EMAIL PROTECTED] Subject: [PyQt] Re: PyQt 4.4.2 GPL installer / missing DLL To: pyqt@riverbankcomputing.com Message-ID: [EMAIL PROTECTED] Content-Type: text/plain; charset=utf-8 * Python(x,y) (Sat, 24 May 2008 09:33:00 +0200) Phil Thompson a écrit : On Friday 23 May 2008 6:47:11 pm Pierre Raybaut wrote: About this missing DLL issue, the main difference between the 4.3.3 and 4.4.x Windows installer releases seems to be about the .dll management. Apparently, since 4.4.1 release, for example, there is not only a QtCore.pyd file but also a QtCore4.dll and so on. Hence the new add to path installer feature, for Windows to find the QtCore4.dll. The problem is that MATLAB for example is also using a QtCore4.dll (which is built with MSVS2005, hence the missing MSVCP80.dll error), and Windows find the MATLAB directory first when searching the PATH environment variable... so, PyQt is currently not compatible with MATLAB for example, which is quite a serious problem for me and a lot of scientific users I know. Unless you have a solution to this PATH conflicting issue? Just add a .bat file around one of them with a specific PATH set up. in order to run MATLAB with a specific PATH set up? If that's what you meant, I really can't do that for two reasons. I had this problem, too (just not with Matlab). I copied the DLLs to the site-packages/PyQt4 folder. Not a clean solution but it works. Another possibility would be to /move/ the exes and DLLs to the pyd folder. But then Qt Assistant might not find the help files. Thorsten Thanks Thorsten, good to know. If it works, why not doing it directly in the PyQt4 GPL installer, Phil? In fact, that would be great if the add directory to PATH thing would not be necessary any more, just like before (with the 4.3.3 release). Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Re: PyQt Digest, Vol 46, Issue 51
If I were you I'd ignore the PyQt installer (in the same way I ignore the Qt installer) and install PyQt from your own installer in a way that suits your users. I could do that... but the main idea of my way of redistributing Python packages was to avoid reinventing the wheel: that's why I chose to run ready-to-install packages silently (distutils .Exe, MSI installers, NSIS installers and so on). Re-packaging installers takes more time, and limits the update rate. So I think I will simply stay with 4.3.3 release... Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Re: PyQt 4.4.2 GPL installer / missing DLL
I know where it comes from: Qt-Eclipse Integration package was interfering with the new PyQt installer... 2008/5/22 Pierre Raybaut [EMAIL PROTECTED]: I didn't have much time to test this, so I must have missed something (sorry!): in fact, on a fresh Windows XP SP2 install, all is working well with Python 2.5.2, PyQt 4.4.2, matplotlib 0.91.2 and NumPy 1.0.4. However, with Python(x,y) distribution installed, when I simply uninstall PyQt 4.3.3 and then install PyQt 4.4.2, I get the missing MSVCP80.dll error when importing QtCore module for example (of course everything is ok with PyQt 4.3.3 even with the whole Python(x,y) distro installed). So, I really don't know how, but it must be related to the new release... Pierre 2008/5/22 Python(x,y) [EMAIL PROTECTED]: 2008/5/21 Phil Thompson [EMAIL PROTECTED]: On Wednesday 21 May 2008 13:45:42 [EMAIL PROTECTED] wrote: BTW, I still get the missing dll error (MSVCP80.DLL) when running Python/PyQt scripts with the 4.4.2 release. Which is MSVC 2005 isn't it? As Python is built with MSVC 2003 and PyQt and Qt are built with MinGW then I don't see how that can happen. Phil Hi Phil, Actually, after testing it on a clean Windows VM, I found out that this missing DLL issue was not entirely related to the new PyQt release. PyQt examples are indeed all working well (BTW, your example launcher is very good-looking!). However, this missing DLL error occurs every time you launch scripts using matplotlib objects embedded in PyQt 4.4.2 GUIs. So I guess that the matplotlib Qt4 backend is not compatible with PyQt 4.4.x. I will post on matplotlib mailing list about this. Anyway, I'll have to wait until this bug is corrected to update Python(x,y) distro. Thanks, Pierre -- Pierre Raybaut Python(x,y) http://www.pythonxy.com ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
Re: [PyQt] PyQt 4.4.2 GPL installer / Silent install not really silent...
2008/5/21 Phil Thompson [EMAIL PROTECTED]: On Wednesday 21 May 2008 12:35:39 Python(x,y) wrote: 2008/5/21 Phil Thompson [EMAIL PROTECTED]: So my question is: would it be possible to update PATH for all users without showing this dialog box when the installer is running in silent mode? I assume it is possible - I'm not an NSIS expert. Phil Actually I meant: would it be possible for you to add a control statement using IfSilent in your NSIS script to skip this dialog box if installer was run in silent mode? What do you want to happen when silent? Add the directory to the current user's PATH? Do nothing? Phil Could you please send a message when PyQt installer can be launched silently? That is the last reason for me to wait before updating PyQt in Python(x,y). Thanks a lot. Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Re: PyQt 4.4.2 GPL installer / missing DLL
About this missing DLL issue, the main difference between the 4.3.3 and 4.4.x Windows installer releases seems to be about the .dll management. Apparently, since 4.4.1 release, for example, there is not only a QtCore.pyd file but also a QtCore4.dll and so on. Hence the new add to path installer feature, for Windows to find the QtCore4.dll. The problem is that MATLAB for example is also using a QtCore4.dll (which is built with MSVS2005, hence the missing MSVCP80.dll error), and Windows find the MATLAB directory first when searching the PATH environment variable... so, PyQt is currently not compatible with MATLAB for example, which is quite a serious problem for me and a lot of scientific users I know. Unless you have a solution to this PATH conflicting issue? Thanks for your help. Pierre ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[PyQt] Re: PyQt 4.4.2 GPL installer / missing DLL
I didn't have much time to test this, so I must have missed something (sorry!): in fact, on a fresh Windows XP SP2 install, all is working well with Python 2.5.2, PyQt 4.4.2, matplotlib 0.91.2 and NumPy 1.0.4. However, with Python(x,y) distribution installed, when I simply uninstall PyQt 4.3.3 and then install PyQt 4.4.2, I get the missing MSVCP80.dll error when importing QtCore module for example (of course everything is ok with PyQt 4.3.3 even with the whole Python(x,y) distro installed). So, I really don't know how, but it must be related to the new release... Pierre 2008/5/22 Python(x,y) [EMAIL PROTECTED]: 2008/5/21 Phil Thompson [EMAIL PROTECTED]: On Wednesday 21 May 2008 13:45:42 [EMAIL PROTECTED] wrote: BTW, I still get the missing dll error (MSVCP80.DLL) when running Python/PyQt scripts with the 4.4.2 release. Which is MSVC 2005 isn't it? As Python is built with MSVC 2003 and PyQt and Qt are built with MinGW then I don't see how that can happen. Phil Hi Phil, Actually, after testing it on a clean Windows VM, I found out that this missing DLL issue was not entirely related to the new PyQt release. PyQt examples are indeed all working well (BTW, your example launcher is very good-looking!). However, this missing DLL error occurs every time you launch scripts using matplotlib objects embedded in PyQt 4.4.2 GUIs. So I guess that the matplotlib Qt4 backend is not compatible with PyQt 4.4.x. I will post on matplotlib mailing list about this. Anyway, I'll have to wait until this bug is corrected to update Python(x,y) distro. Thanks, Pierre -- Pierre Raybaut Python(x,y) http://www.pythonxy.com ___ PyQt mailing listPyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt