Conversation
trying to use tetgen as an example to figure out a working solution
added tags for repos in cibc-internal and use tags to download src
# Conflicts: # Superbuild/Cleaver2External.cmake # Superbuild/FreetypeExternal.cmake # Superbuild/GlewExternal.cmake # Superbuild/SQLiteExternal.cmake # Superbuild/ZlibExternal.cmake
…those in scirun cmake next
|
🤖 Follow-up from the Claude review (posted via @dcwhite). I empirically verified the "flags preserved" claim from my earlier review: generated Result: warning flags and compiler/codegen flags are byte-for-byte identical across every file. The only deltas are preprocessor defines, all of which are intentional consequences of the Boost/Qt/Python modernization. Full breakdown in the comment below. 👇 |
|
🤖 Empirical verification of compiler flags / warning settings (Claude review, via @dcwhite) Method: built Warning & compiler flags: identical ✅
Boost include treatment: still
|
| Define | Direction | Reason |
|---|---|---|
BOOST_NO_CXX11_ALLOCATOR, BOOST_PYTHON_STATIC_LIB/MODULE |
removed | old variable-based Boost config; superseded by the new no-lib defines |
BOOST_SYSTEM_NO_LIB, BOOST_FILESYSTEM_NO_LIB, BOOST_FILESYSTEM_STATIC_LINK |
added | the new compile definitions in this PR |
QWT_DLL (55 files) |
removed | Qwt switched DLL → static |
QT_SVG_LIB, QT_PRINTSUPPORT_LIB |
added | now propagated automatically from the Qt::Svg / Qt::PrintSupport imported targets |
python3.11 → python3.13 paths |
changed | refactor bumps Python 3.11 → 3.13 (this is exactly why the hardcoded python313.lib matches today — see inline comment) |
Caveat: the baseline tree compared here was a recent non-master feature branch, and the refactor tree includes a later fix-python-test merge. The only 2 files unique to the baseline (OffscreenGLRenderer.cc + its moc_) are a branch-divergence artifact, not a refactor removal.
Net: warning settings and compiler flags are preserved exactly; the refactor changes only which library-selection defines are set, all deliberately.
removed environment specific qt path detection
|
All green! Although first we should merge #2527 to master, then back here, to check the older Mac builds. |
|
Was the Qt UI blip addressed? I just asked Copilot because I found it might be related to the OpenGL rendering I was piping with Vtk. I haven't tried the solution but will do if it's not addressed so far. What you're seeing:
is almost certainly caused by Qt re-creating the underlying OpenGL surface and backing store when your ✅ Why this happens
When added dynamically (like when ViewScene is created), Qt may:
👉 This appears as:
🔴 Why it started happening after removing those flagsBefore, you had: WA_NativeWindow
WA_PaintOnScreenThose forced:
👉 That avoided the surface reconfiguration (but broke rendering) Now: ✅ You're using proper ✅ Most likely triggers in your setup1. Creating the widget late (dynamic insertion)If ViewScene is:
👉 Qt may rebuild the window surface 2. Surface format mismatchIf your OpenGL format differs from the main window: 👉 Qt must recreate the entire context stack 3. Multiple GL widgets or mixed surfacesIf SCIRun uses:
👉 introducing ✅ How to fix / stabilize it✅ Fix 1: Set global surface format early (VERY important)Do this before QApplication is created: QSurfaceFormat fmt;
fmt.setDepthBufferSize(24);
fmt.setStencilBufferSize(8);
fmt.setVersion(3, 3); // match your renderer
fmt.setProfile(QSurfaceFormat::CoreProfile);
QSurfaceFormat::setDefaultFormat(fmt);👉 This avoids runtime surface rebuilds. ✅ Fix 2: Create the widget earlierInstead of creating 👉 Create it upfront (or placeholder it) This avoids dynamic surface changes. ✅ Fix 3: Avoid mixing native + GL widgetsMake sure:
✅ Fix 4: Disable updates during insertion (quick workaround)Wrap creation with: mainWindow->setUpdatesEnabled(false);
// create and insert VtkQWidget
mainWindow->setUpdatesEnabled(true);
mainWindow->update();👉 This suppresses the visible flicker/minimize. ✅ Fix 5 (diagnostic): force repaint behaviorSometimes helps identify the issue: setUpdateBehavior(QOpenGLWidget::NoPartialUpdate);✅ What this is NOTThis is NOT:
👉 It's just Qt rebuilding surfaces correctly. ✅ Practical recommendationFor now: 👉 Ignore the flicker if it only happens once on creation Then continue your pipeline work. Later, refine with:
✅ TL;DR
🚀 Good newsThis actually means: ✅ Your OpenGL path is now correctly configured You’re ready for the next step: If you want, I can now give you a clean, modern texture upload path (no |
|
The issue that main window hides and then shows when viewscene is added has been fixed by adding a dummy OpenGL window. |
I just love these funky Qt hacky fixes. SCIRun is littered with them. |
|
Found concrete crash details across the jobs. Here's the breakdown, grouped by root cause: 1. Missing switch case (dominant failure — ~870 test failures)
Affects 2. Eigen upgrade broke tensor/matrix assumptions (real regressions from this PR's stated goal)Three distinct crashes, all Eigen assertion failures that didn't fire before the version bump:
These three point at the same theme: code that relied on old Eigen internals/behavior needs updating for the new version, in the tensor and sparse-matrix code paths. 3. Python embedding crash (also likely tied to the Python 3.13 bump in this PR)
Something in the interpreter setup registers a module inittab entry per-test instead of once before 4. Pre-existing fragile test path (probably unrelated to this PR)
Bottom line: findings #1–#3 are real regressions introduced by this modernization PR and should block merge until fixed; #4 is a pre-existing CI fragility. None of this shows up in the PR's check marks because of the blanket |
This I will fix so the import tests aren't making so much noise
@jessdtate @basisunus A real regression from a library upgrade. Fix before merge or after?
I already have a fix for this on another branch
Not sure about this one, will wait until 1 is fixed
|
- Mark PR #2463 as merged (2026-07-03), note Intel Mac CI addition - Fix OSPRay version: scirun-build-2.10 (not v2.10.1) - Correct Qt note: 6.3.1+ and 6.10 known to work - Add markdown formatting and table to dependencies.md - Remove stale reference to refactor branch in how-to section Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Built on Windows 10 with Visual Studio 2022.
Runs on Windows.
Some issues with vector out of bound, possibly initialization issues and qt related.