trelau / SMESH

Mesh module from the Salome Platform
GNU Lesser General Public License v2.1
52 stars 32 forks source link

Consider reverting back to netgen 6.2.1804 #26

Closed trelau closed 4 years ago

trelau commented 4 years ago

Use netgen 6.2.1804. With 6.2.1808 I'm seeing all kinds of meshing errors in tests in other packages. image

Starting to see why Salome is still just sticking with netgen 5.X...

trelau commented 4 years ago

@looooo i'm not seeing a compelling reason to move SMESH beyond netgen 6.2.1804. Netgen needs to get some api and performance consistency. Adding more netgen tests to SMESH will help detect these sooner as well.

looooo commented 4 years ago

In my mind we need to stay up-to-date with netgen and try to report/solve this kind of issues. The real problem is how these projects are developed. Salome uses a patched netgen and we use a fork from salome smesh. In my eyes this is the real mess! There should be only one smesh and one netgen. Salome seems to not care much about downstream projects, so your smesh repo is the better alternitive. But we cannot cherry-pick versions. The only way to improve the ecosystem is by trying to optimize the latest versions. So please try report these kind of issues to netgen.

trelau commented 4 years ago

ya i wouldn't go back to netgen 5, and agree and will report to netgen once i can isolate some smaller tests.

at the moment, i think i'm stuck in a corner with some projects i'm trying to update (pyocct and afem). i want to use netgen 6.2.1804 (because it seems to be the last version that passes my tests in those projects), but it's built against smesh 8.3.0.2 which is built against occt 7.3.0, and the whole effort was meant to get pyocct up to occt 7.4.0.

so, until netgen issues are isolated and fixed, i am proposing that we build occt 7.4.0 + smesh 8.3.0.3 + netgen 6.2.1804. as we have tests to verify upgrades, then we can start to move to newer netgen versions.

trelau commented 4 years ago

built the above case with netgen 6.2.1804 get the expected result image

looooo commented 4 years ago

We applied the Salome patch on netgen back than. Maybe that's the reason for the failing test: https://github.com/NGSolve/netgen/pull/10

But again we cannot distribute a modified version of netgen on conda-forge.

We need a kind of foundation to get these projects together. There needs much more communication between the different projects (netgen, smesh, freecad, occt, cadquery, ...) The success of any project is definitely dependent on the success of the whole ecosystem...

trelau commented 4 years ago

But again we cannot distribute a modified version of netgen on conda-forge.

Can we build and call it something else? "netgen4smesh"? That PR has been open since 2018, I would like to think a clear issue along with a submitted fix would get merged, but I also don't want the entire ecosystem to be held back by one of them.

I see in this commit the salome patch was removed, resulting in the issues starting in 6.2.1808 https://github.com/conda-forge/netgen-feedstock/commit/ec1b61ce57671a79bcefdec5742a5af68de5dad4#diff-e178b687b10a71a3348107ae3154e44c

can we reapply the patch (it may need updated) and call it something else for now on conda-forge until netgen itself incorporates the fix?

trelau commented 4 years ago

@looooo what do you think about the above? either reapplying the salome patch and calling it something else on conda-forge? or just rolling it back to 6.2.1804? i see you moved 2004 to broken label. to me, 1808 is broken as well without the salome patch. but 1804 isn't built with updated dependencies and python version to use with pyocct 7.4.0.

this is pretty much blocking me from cutting a pyocct 7.4.0 release, and i think it will take a while to get anything incorporated into main netgen repo. so, if nothing changes, i'll probably resurrect my "netgen4smesh" repo and make my own builds available to satisfy pyocct dependencies.

looooo commented 4 years ago

I think it's best to publish any modified versions of netgen on a different channel. We really need to find a way to get all the projects working together.

trelau commented 4 years ago

We really need to find a way to get all the projects working together.

Totally agree. It just will take some time for that to happen. I think a good place to start is helping Netgen with patching up things from Salome (to fix above issues) and building out a test suite.