Skip to content

[FXC-7075] Upgrade ESP 1.28 → 1.29 with EGADS patches#22

Merged
mikeparkflex merged 2 commits into
mainfrom
mike/FXC-7075-upgrade-esp-129
Apr 15, 2026
Merged

[FXC-7075] Upgrade ESP 1.28 → 1.29 with EGADS patches#22
mikeparkflex merged 2 commits into
mainfrom
mike/FXC-7075-upgrade-esp-129

Conversation

@mikeparkflex
Copy link
Copy Markdown
Collaborator

Summary

  • Upgrade default ESP version from 1.28 to 1.29
  • Probe PreBuilts/ before falling back to archive/ for download URL (MIT rotates older releases between the two)
  • Version is now configurable via CLI argument (bash download.sh 128)
  • All version-specific source patches consolidated in download.sh, gated by version
  • Add EGADS patches for ESP 129 (FXC-6881):
    • egadsTopo129.patch: Wrap unprotected BRepAdaptor_Curve2d/D0/D1/D2 calls in EG_getEdgeUVX, EG_getEdgeUVs, EG_getEdgeUVeval, EG_invEdgeUV, and EG_inFaceAlt with try/catch returning EGADS_GEOMERR
    • egadsIO129.patch: Enable INTERIM define, add NULL surface checks during STEP/IGES import — skip bodies with null face surfaces

Jira: https://flow360.atlassian.net/browse/FXC-7075

Test plan

  • Trigger build_and_release.yml workflow on this branch and verify it builds successfully
  • Verify patches apply cleanly and libegads.so compiles without warnings
  • Verify ESP 128 can still be built: bash download.sh 128

🤖 Generated with Claude Code

mikeparkflex and others added 2 commits April 15, 2026 14:08
Update default version to 129 and probe PreBuilts/ before falling
back to archive/, since MIT rotates older releases between the two
locations. Version is now configurable via CLI argument.

Keep ESP128-specific evaluate.c patch so older versions can still
be built.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
egadsTopo129.patch: Wrap unprotected BRepAdaptor_Curve2d/D0/D1/D2
call sites in EG_getEdgeUVX, EG_getEdgeUVs, EG_getEdgeUVeval,
EG_invEdgeUV, and EG_inFaceAlt with try/catch returning EGADS_GEOMERR.
Prevents Standard_NullObject crashes on degenerate geometry.

egadsIO129.patch: Enable INTERIM define and add NULL surface checks
during STEP/IGES import — skip bodies with null face surfaces and
return EGADS_NODATA if all bodies are invalid.

Both patches verified to compile cleanly against ESP 129.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@mikeparkflex mikeparkflex force-pushed the mike/FXC-7075-upgrade-esp-129 branch from 594cab6 to dfd5960 Compare April 15, 2026 14:09
@mikeparkflex mikeparkflex merged commit 7674b08 into main Apr 15, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant