[Finally DONE] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

This subforum is specifically to discuss packaging issues on different platforms (windows, mac, linux), and using different packaging systems (conda, etc...)
Post Reply
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

[Finally DONE] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by looo »

Placeholder for tracking the migration to new versions of vtk / occt / boost and other libraries. I think to work on this during the wintertime. So 0.19 release should be with older deps (not doing this mistake again and update deps during release is happening).

[x] python3.9 https://github.com/conda-forge/python-f ... k/pull/395
[x] vtk9 https://github.com/conda-forge/vtk-feedstock/pull/127
[x] occt7.5 https://github.com/conda-forge/occt-feedstock/pull/58
[x] opencamlib with boost1.74: https://github.com/conda-forge/opencaml ... ock/pull/5
[x] opencamlib with python3.9: https://github.com/conda-forge/opencaml ... ock/pull/6
[x] smesh + vtk9 https://forum.freecadweb.org/viewtopic. ... 9&start=30

[x] start occt-migration link
[x] smesh https://github.com/conda-forge/smesh-feedstock/pull/42
[x] netgen https://github.com/conda-forge/netgen-feedstock/pull/38
[x] gmsh (failing windows build) https://github.com/conda-forge/gmsh-feedstock/pull/39
[x] ifcopenshell https://github.com/conda-forge/ifcopens ... ck/pull/17
[x] freecad
[x] python-occ not yet ready: https://github.com/tpaviot/pythonocc-core/issues/917
[x] smesh crash on osx (reproduce by creating a mesh with netgen)

[x] weekly builds updated to vtk9 / occt7.5 /python3.9
[x] Appimage updated to vtk9 / occt7.5 /python3.9
Last edited by looo on Thu Oct 07, 2021 7:01 am, edited 17 times in total.
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: [WIP] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by sgrogan »

looo wrote: Mon Nov 09, 2020 10:51 am laceholder for tracking the migration to new versions of vtk / occt / boost and other libraries. I think to work on this during the wintertime. So 0.19 release should be with older deps (not doing this mistake again and update deps during release is happening).
Nice! Does nglib survive the migration to occt 7.5.0?
"fight the good fight"
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: [WIP] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by looo »

sgrogan wrote: Mon Nov 09, 2020 11:38 pm
looo wrote: Mon Nov 09, 2020 10:51 am laceholder for tracking the migration to new versions of vtk / occt / boost and other libraries. I think to work on this during the wintertime. So 0.19 release should be with older deps (not doing this mistake again and update deps during release is happening).
Nice! Does nglib survive the migration to occt 7.5.0?
good question, didn't thought about netgen yet. Maybe first get things updated to vtk9 / python3.9 and then try occt7.5...
User avatar
hobbes1069
Posts: 291
Joined: Wed Nov 09, 2011 3:49 pm
Location: Southaven, MS

Re: [WIP] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by hobbes1069 »

I am updating Fedora Rawhide to OCC 7.5.0. I'm actually just waiting on the last build to complete so I can push an update. I'm building FreeCAD 0.19 from latest master as of yesterday.

Now I'm working on VTK 9.0.1 with it's maintainer. We have setup a COPR to do test builds outside of the Fedora ecosphere:

https://copr.fedorainfracloud.org/coprs/orion/vtk9.0/

It doesn't look like FreeCAD has been migrated yet:

https://copr-be.cloud.fedoraproject.org ... ild.log.gz

Thanks,
Richard
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: [WIP] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by Kunda1 »

Thank you all so much!
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: [WIP] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by looo »

packages are ready for testing at conda-forge. There are builds available for py3.8 / py3.9 - vtk9 - boost1.74 - occt7.4 - linux / osx / win. You can create an environment with one of these packages by:

Code: Select all

conda create -n freecad_vtk9 freecad  vtk=9 -c conda-forge/label/smesh_rc -c freecad/label/dev  -c conda-forge
py3.9 should be default but it still has some issues. So you can also test with py3.8 by specifying the version:

Code: Select all

conda create -n freecad_vtk9 freecad vtk=9 python=3.8 -c conda-forge/label/smesh_rc -c freecad/label/dev  -c conda-forge
Would be nice if some people can test and help with fixing the remaining issues. Once this is done I will go ahead and start with the occt7.5 migration.
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: [WIP] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by sgrogan »

looo wrote: Thu Jan 21, 2021 2:21 pm Would be nice if some people can test and help with fixing the remaining issues.
FEM tests have a hard dependency on matplotlib. After installing this I get 3 self test errors related to MeshGroups. I will investigate.
I also get 1 error related to the StartGui, I also get this on all other builds from master.

OS: Windows 10 (10.0)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23738 (Git)
Build type: Release
Branch: master
Hash: 7a08b7aad25f19eab6f297409f42f7d174412af0
Python version: 3.9.1
Qt version: 5.12.9
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/United States (en_US)
"fight the good fight"
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: [WIP] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by sgrogan »

I get the same FEM test errors with the PY3.8 version, so it must be SMESH/vtk9 releated?

OS: Windows 10 (10.0)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23739 (Git)
Build type: Release
Branch: master
Hash: 020e5bc7093a8a07b89edd92e6c12496457b7ad6
Python version: 3.8.6
Qt version: 5.12.9
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/United States (en_US)
bernd wrote: pinged by pinger macro
First error

Code: Select all

Traceback (most recent call last):
  File "C:\Users\Chris\Miniconda3\envs\freecad_vtk9-py38\lib\unittest\case.py", line 60, in testPartExecutor
    yield
  File "C:\Users\Chris\Miniconda3\envs\freecad_vtk9-py38\lib\unittest\case.py", line 676, in run
    self._callTestMethod(testMethod)
  File "C:\Users\Chris\Miniconda3\envs\freecad_vtk9-py38\lib\unittest\case.py", line 633, in _callTestMethod
    method()
  File "C:\Users\Chris\Miniconda3\envs\freecad_vtk9-py38\Library\Mod\Fem\femtest\app\test_mesh.py", line 695, in test_add_group_elements
    fm.addGroupElements(myid, elements_to_be_added)
Base.FreeCADError: AddGroupElements: No group for given id.
I can package Win build(s) if it helps.
"fight the good fight"
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: [WIP] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by looo »

sgrogan wrote: Fri Jan 22, 2021 8:07 pm I get the same FEM test errors with the PY3.8 version, so it must be SMESH/vtk9 releated?
should be fixed with the latest py3.9 build. See @wmayers comment here: https://github.com/trelau/SMESH/pull/31 ... -766358432

I think we can go directly to py3.9 and occt7.5 and keep the old builds py3.8 / occt7.4 / vtk8 until the 0.19 release. But first the smesh packages needs to be packaged for conda-forge. I wait for @trelau to decide when this is the case.

What is still remaining with the py3.9 / vtk9 builds is this test error:

Code: Select all

Traceback (most recent call last):
  File "/home/lo/miniconda3/envs/freecad_vtk9/lib/python3.9/unittest/case.py", line 59, in testPartExecutor
    yield
  File "/home/lo/miniconda3/envs/freecad_vtk9/lib/python3.9/unittest/case.py", line 593, in run
    self._callTestMethod(testMethod)
  File "/home/lo/miniconda3/envs/freecad_vtk9/lib/python3.9/unittest/case.py", line 550, in _callTestMethod
    method()
  File "/home/lo/miniconda3/envs/freecad_vtk9/lib/python3.9/unittest/loader.py", line 34, in testFailure
    raise self._exception
ImportError: Failed to import test module: TestStartGui
Traceback (most recent call last):
  File "/home/lo/miniconda3/envs/freecad_vtk9/lib/python3.9/unittest/loader.py", line 154, in loadTestsFromName
    module = __import__(module_name)
  File "/home/lo/miniconda3/envs/freecad_vtk9/Mod/Start/TestStartGui.py", line 25, in <module>
    from TestStart.TestStartPage import TestStartPage
ModuleNotFoundError: No module named 'TestStart'
and one crash after creating a PartFeature (gear) and closing FreeCAD.

Code: Select all

Program received signal SIGSEGV, Segmentation fault.
#0  /lib/x86_64-linux-gnu/libc.so.6(+0x3f040) [0x7f9b83686040]
#1  /home/lo/miniconda3/envs/freecad_vtk9/bin/../lib/libpython3.9.so.1.0(PyObject_GC_Del+0x1b) [0x7f9b8587944b]
#2  0x7f9b862ff388 in Gui::ViewProviderPythonFeatureImp::~ViewProviderPythonFeatureImp() from /home/lo/miniconda3/envs/freecad_vtk9/bin/../lib/libFreeCADGui.so+0x208
#3  0x7f9a4f8f034d in Gui::ViewProviderPythonFeatureT<PartGui::ViewProviderPart>::~ViewProviderPythonFeatureT() from /home/lo/miniconda3/envs/freecad_vtk9/lib/PartGui.so+0x2d
#4  0x7f9b85f5fc34 in Gui::Document::~Document() from /home/lo/miniconda3/envs/freecad_vtk9/bin/../lib/libFreeCADGui.so+0x294
#5  0x7f9b85f6038a in Gui::Document::~Document() from /home/lo/miniconda3/envs/freecad_vtk9/bin/../lib/libFreeCADGui.so+0xa

User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: [WIP] conda: vtk9 / occt7.5 / python3.9 / boost1.74 migration

Post by sgrogan »

looo wrote: Tue Jan 26, 2021 1:01 pm What is still remaining with the py3.9 / vtk9 builds is this test error:
This is because of PCH
-DFREECAD_USE_PCH=TRUE will remove the error,
It's not specific to conda.
"fight the good fight"
Post Reply