Closed thopiekar closed 2 years ago
Yes @thopiekar a lot of our external sources became unreliable lately. But that won't an issue much longer, we are switching to managing our dependencies with Conan.
Ok, but is that going to happen in short term or is my PR useful for you still?
I just switched to the Git version for our PyQt6 upgrade https://github.com/Ultimaker/cura-build-environment/tree/CURA-8640_PyQt6_upgrade In the meantime.
We expect to merge that branch quickly.
In the meantime I see no harm in merging your suggested source. Thank you.
No problem 👍
Btw. are there going to be big breakages due to the upgrade to pyqt6? I'm not that deep into this topic.
Will be implemented probably within two months after the 5.0 release.
I myself already work with Conan on my Linux, Mac and Windows machine on a personal basis.
Some third-party recipes of dependencies (also python modules) can be found here https://github.com/Ultimaker/conan-ultimaker-index/tree/master/recipes
And for our normal repo's you can check the conan/master branches. These are my proof of concepts. But they are a bit out of sync atm. Since I been buried head deap on the build server working on the PyQt6 upgrade.
The idea is that setting up cura from source or building is basically a one liner per dependencies. Not huge multilayered build scripts.
Yeah the PyQt6 upgrade will have some impact, mostly how libArcus, libSavitar en pynest are build and compiled. But ofcourse also on the GUI side. There multiple small differences in types and classes moving in and out of namespaces.
If you do a diff over CURA-8640_PyQt6 branch against master on Cura and Uranium it will become fairly visible what those shifts will be.
But from a build perspective check the CURA-8640_PyQt6_upgrade branches on Savitar, arcus and pynest. We had to do some big changes on how we create the sip bindings. We now use only sip-build 6.5.0 for generating the code and use cmake for compiling and linking. I could be good to check if the symbols etc are the exported correctly on those branches.
Feel free to ask some more indepth question about some of the choices we made and why via email j.spijker@ultimaker.com Don't want it to break to much on the side of our community developers, but this upgrade proofed quite challenging so there is bound to be some breakage.
Also moving away from cx-freeze to pyinstaller, since cx-freeze didn't traverse the shared libraries correctly, while pyinstaller seems to do that trick much better
The URL got invalid in the last couple of days. Looks like everything that is not the most recent version is placed in "fossils". However, the most recent version is located there, too. To improve the liveness of CBE, I would recommend downloading from there any time.
Signed-off-by: Thomas Karl Pietrowski thopiekar@gmail.com