PySide in Spyder

679 views
Skip to first unread message

anatoly techtonik

unread,
Dec 28, 2015, 6:04:33 PM12/28/15
to spyder
https://github.com/spyder-ide/spyder/pull/2886

Hey guys, where is the discussion about that?
I am just curios - does anybody is getting paid
to make Spyder work only with PyQt4?

Yes. PySide needs more companies interested
in this binding to support this initiative, but the
project is far from being dead.

Carlos Córdoba

unread,
Dec 28, 2015, 10:55:14 PM12/28/15
to spyd...@googlegroups.com
Hi all,

Since today, we officially stopped to support PySide in the Spyder master branch (i.e. in the future Spyder 3.0, Spyder 2.3 still works fine with it though). This means that:

1. If PySide is found in your system, and PyQt5 nor PyQt4 are installed, Spyder will try to use it. But at the moment, our master branch has several crashes with PySide that we don't plan to solve (at least not me, other core developers have shown interest in doing that but nothing has happened so far :-).
2. We're not going to solve more bugs related to PySide in the future (again, at least not me :-)
3. Support for it will have to come from the community.

The reasons for taking this decision are explained in the link referenced by Anatoly, in case someone wants to know them. Nobody is getting paid to support only PyQt (4 or 5). It was just a pragmatic decision based on the amount of time the development team has to support several Python Qt bindings. Given that we're now supporting PyQt5 (and that PyQt5 is going to be our default choice for Spyder 3.0), we don't have time to support both PyQt4 and PySide. And because of the uncertainty of PySide's future, we decided to not support it anymore.


Cheers,
Carlos

El 28/12/15 a las 18:04, anatoly techtonik escribió:
--
You received this message because you are subscribed to the Google Groups "spyder" group.
To unsubscribe from this group and stop receiving emails from it, send an email to spyderlib+...@googlegroups.com.
To post to this group, send email to spyd...@googlegroups.com.
Visit this group at https://groups.google.com/group/spyderlib.
For more options, visit https://groups.google.com/d/optout.

Ronan Paixão

unread,
Mar 20, 2016, 9:14:58 PM3/20/16
to spyd...@googlegroups.com
Have you considered the licensing implications? PyQt is GPL, and actually *depending* on it (instead of using it as one of two possible options) would require Spyder itself to be released as GPL, wouldn't it?

Carlos Córdoba

unread,
Mar 20, 2016, 10:37:55 PM3/20/16
to spyd...@googlegroups.com
Hi,

Nop, that's not true. The only requirement imposed by PyQt to open source projects depending on it is that their licenses be compatible with the GPL. This is clearly mentioned in the PyQt wiki:

https://wiki.python.org/moin/PyQt/PyQtLicensing


Cheers,
Carlos

El 20/03/16 a las 20:14, Ronan Paixão escribió:

anatoly techtonik

unread,
Mar 21, 2016, 5:05:26 AM3/21/16
to spyd...@googlegroups.com
But then you can not use your plugins for Spyder that are not open
source with PyQt4 license.
> You received this message because you are subscribed to a topic in the
> Google Groups "spyder" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/spyderlib/s2L5NHSkm68/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> spyderlib+...@googlegroups.com.
> To post to this group, send email to spyd...@googlegroups.com.
> Visit this group at https://groups.google.com/group/spyderlib.
> For more options, visit https://groups.google.com/d/optout.



--
anatoly t.

Ghislain Vaillant

unread,
Mar 21, 2016, 7:09:27 AM3/21/16
to spyder
Quoting the Riverbank FAQ [1]:

Q.

What are the implications of using the GPL version of PyQt?

A.

To understand your obligations when using GPL code with your application see the GPL FAQ.


[1] https://www.riverbankcomputing.com/commercial/license-faq

So, using PyQt5 makes you abide to the GPL (v3). A release of Spyder which depends on PyQt5 (which is GPL) would then be considered a combined work and need to be licensed under the GPL too.

The situation was different with PyQt4, because of the added exceptions Carlos is referring to. However, these are absent in PyQt5.

Ghis

Carlos Córdoba

unread,
Mar 21, 2016, 9:15:55 AM3/21/16
to spyd...@googlegroups.com
@Anatoly: If you want to use your closed source plugins with Spyder, please help us to fix our PySide support, that's all. I said this to you several times, I don't know why you make me to repeat it: PySide support is not gone, it just will have to come from the community. We don't have time to support three different Python Qt bindings (specially one that it's not ready for Qt5), so we're relying on the community for the least used one.

@Ghislain: You're referencing the *commercial* section of the PyQt licensing page, not the open source one. The wiki page I cited before is quite clear about the licenses allowed for projects that depend on PyQt, and it doesn't make a distinction between PyQt4 and PyQt5. Please stop spreading FUD.


Cheers,
Carlos

El 21/03/16 a las 06:09, Ghislain Vaillant escribió:

Ronan Paixão

unread,
Mar 21, 2016, 8:32:22 PM3/21/16
to spyd...@googlegroups.com
A quote from the GPL FAQ:

All GNU GPL versions permit such combinations privately; they also permit distribution of such combinations provided the combination is released under the same GNU GPL version. The other license is compatible with the GPL if it permits this too.

I interpret this to mean: you must license the combination as GPL. So, Spyder itself can be developed in another license, but if used in conjunction with PyQt, any distribution must be done as GPL. Non-open plugins can be used privately (but not distributed as closed). I don't really thinkg there's much difference between PyQt4 and PyQt5 GPL licensing. I don't see exceptions either (the non-Commercial exception in the wiki is only for Qt 2.3.0 on Windows).

I wouldn't take a page from the Python wiki (not from Riverbank) as authoritative on the matter. The Riverbank license FAQ refers pretty clearly to the GPL FAQ above.

josef...@gmail.com

unread,
Mar 21, 2016, 8:50:00 PM3/21/16
to spyd...@googlegroups.com
Isn't this all independent of Spyder? Spyder doesn't bundle PyQt, AFAIK. And if you distribute PyQt not as GPL, then you need a commercial license whether it include Spyder or something else.

Having spyder as BSD allows free sharing of related code among python packages which are dominantly BSD compatible in the scientific area.

Josef

Ronan Paixão

unread,
Mar 21, 2016, 9:17:03 PM3/21/16
to spyd...@googlegroups.com
I started this conversation in the half-wrong assumption that Spyder should change license if dropping PySide.

The assumption was half-wrong because Spyder may be licensed as whatever the devs want. I personally like it being BSD, so that I can also contribute to it (I don't much like the GPL anymore). However, if using the GPL version of PyQt (which most of us are doing, unless someone out there has a commercial license to PyQt), then Spyder must be distributed under the GPL to comply with is as a derivative work.

That means that if people write closed-source plugins, they cannot distribute them outside their own organization unless they have a commercial license to PyQt or distribute the whole package as GPL.

With PySide support that was not a concern, since PySide is LGPL.

Also, Carlos is right. He can't deal with PySide's quirks alone. Either someone else steps up to support PySide or we all just hope PySide2 gets its things together (it does seem to have some support for Qt5, contrary to popular belief).

Carlos Córdoba

unread,
Mar 21, 2016, 9:40:07 PM3/21/16
to spyd...@googlegroups.com
Hi Ronan,

My answers:

1. Spyder is MIT licensed, not GPL (as your last email seems to imply).
2. Spyder doesn't need to be re-licensed GPL just because it depends on PyQt (4 or 5). This has been asked before to Phil Thompson (PyQt author), and he answered that there are no issues with other licenses. Please read this thread for his answer:

    https://riverbankcomputing.com/pipermail/pyqt/2014-February/033843.html

3. Closed source plugins could be a problem in the future. However, if companies want to support them, then they can help us to fix our PySide support.

So, even if we stopped to *officially* support PySide (although Spyder can still be used with it if PyQt is not found), there's no need to relicense it as a GPL project because we are using a GPL-compatible license.

Lastly, I reached the link I referenced before (on the Python wiki) from the Riberbank website itself (the company behind PyQt). That's why I brought it up to this discussion, and why I consider it Riberbank official postiion on this matter.


Cheers,
Carlos

El 21/03/16 a las 20:16, Ronan Paixão escribió:

Ronan Paixão

unread,
Mar 22, 2016, 6:13:06 AM3/22/16
to spyd...@googlegroups.com
Hi Carlos,

1. I do know that Spyder is MIT (even though I mistakenly called it as BSD-licensed in my previous e-mail: thanks for the About box for the clarification).
2. Thanks for the link! It can't be clearer than this!

Naveen Michaud-Agrawal

unread,
Sep 12, 2016, 11:27:33 AM9/12/16
to spyder
Sorry to resurrect this thread, but doesn't Spyder depend on Rope (which is GPL licensed and doesn't have the same GPL_EXCEPTION.txt as Qt/PyQt)?

Naveen

Ronan Paixão

unread,
Sep 23, 2016, 9:34:44 AM9/23/16
to spyd...@googlegroups.com
AFAIK rope is an optional dependency (at least it is included in the Help->Optional dependencies... dialog). This means that Spyder does work without it, hardly making it a "derived work".

IANAL, but I think in this case you may distribute it without binding, especially since the MIT License is compatible with the GPL License.

To unsubscribe from this group and stop receiving emails from it, send an email to spyderlib+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages