NatronGitHub / Natron

Open-source video compositing software. Node-graph based. Similar in functionalities to Adobe After Effects and Nuke by The Foundry.
http://NatronGitHub.github.io
GNU General Public License v2.0
4.56k stars 333 forks source link

Generate Python bindings with PySide2 5.15.4 #800

Closed YakoYakoYokuYoku closed 2 years ago

YakoYakoYokuYoku commented 2 years ago

Thanks for submitting a pull request! Please provide enough information so that others can review your pull request. Additionally, make sure you've done all of these things:

PR Description

What type of PR is this? (Check one of the boxes below)

What does this pull request do?

Version 5.15.4 of PySide2 has some incompatibilities with previous versions, for instance the absence of the qapp_macro.h header. Compiling Natron with it results in failure, so this PR has the generated sources for this release.

Show a few screenshots (if this is a visual change)

N/A.

Have you tested your changes (if applicable)? If so, how?

By building and running Natron.

Futher details of this pull request

This might or might not work with previous PySide2 releases, so if you are using them check this PR out or revert this change in case of merge.

rodlie commented 2 years ago

So, this will break compatibility with previous PySide2/Qt 5.15 (and older) releases? What are we compatible with before this commit? (IMHO we should try to be compatible with 5.12-5.15, within reason).

YakoYakoYokuYoku commented 2 years ago

I did not test with previous releases so I can't tell and before this commit we were compatible with at least PySide2 5.15.2. But I'm against to provide support with versions previous to Qt 5.15 as all of them have been discontinued (see Qt 5.12.12) and Qt 5.15 is the only version of Qt5 that has open source releases and still being worked on (either officially or in the KDE forks) due to the new Qt licensing of LTS.

devernay commented 2 years ago

PySide 5.15.3 also requires this

devernay commented 2 years ago

The linux docker build image has PySide2 5.15.2.1 installed through pip. We need to check if this PR builds with it.

YakoYakoYokuYoku commented 2 years ago

PySide 5.15.3 also requires this

There's #803 for generating Python bindings inside QMake 5.15 and I prefer that over this PR (QMake 4 seems to not cooperate with it though it works just fine with the in repo sources).

rodlie commented 2 years ago

Ubuntu 22.04 has Qt 5.15.3, but uses PySide 5.15.2. So this might break there, can check.

EDIT: Yes, it breaks on Ubuntu 22.04.

There's https://github.com/NatronGitHub/Natron/pull/803 for generating Python bindings inside QMake 5.15 and I prefer that over this PR

Probably a good idea for Qt5.

YakoYakoYokuYoku commented 2 years ago

Well I'll go forward with #803, closing then.