Autogenerated release v3.1.3.249
44f4765
| OS | Dev |
|---|---|
| Windows x64 (Visual Studio 2019) | zip |
| Windows x64 (Visual Studio 2022) | zip |
| Windows x64 (Visual Studio 2026) | zip |
| Ubuntu 22 LTS x64 | deb |
| Ubuntu 22 LTS arm64 | deb |
| Ubuntu 24 LTS x64 | deb |
| Ubuntu 24 LTS arm64 | deb |
| Linux vcpkg (glibc 2.28) x64 | tar.xz |
| Linux vcpkg (glibc 2.28) arm64 | tar.xz |
| macOS x64 (Intel) | x64 pkg |
| macOS Arm (Apple Silicon) | arm pkg |
| Emscripten multi-thread (web environment) | zip |
| Emscripten single-thread (web environment) | zip |
| Emscripten multi-thread Wasm64 (web environment) | zip |
What's Changed
- ci: fix windows test-distribution download pattern by @Fedr in #6054
- docs(thirdparty): list MRMcp / MRMCPGateway in Doxygen ThirdpartyList by @Grantim in #6056
- ci(windows): trim vcpkg cache and skip clean+checkout on cache hit by @Fedr in #6010
- thirdparty/install.bat: add --extra-requirements , default --recurse by @Fedr in #6032
- ci(emscripten): run unit tests on host runner, drop firefox from image by @Fedr in #6043
- macos: strip non-extern symbols at link time (CMake + mrbind) by @Grantim in #6058
- ci: add 10-minute timeout to Unit Tests steps in all workflows by @Fedr in #6059
- Reduce addMeshPart calls in boolean by @Grantim in #6062
- IPC: new ignoreBdTgts parameter by @Fedr in #6066
- Mesh Component traverse Edges instead of Faces by @Grantim in #6064
- deps: strip brew dylibs on macOS at install time by @Grantim in #6070
- deps: strip third-party libs at link time on Linux (vcpkg triplet) by @Grantim in #6063
- chore(ci): pass python -u to run_python_test_script.py callsites by @Fedr in #6071
- ci: verify meshlib.mrmeshpy import before Unit Tests by @Fedr in #6069
- Add webrequest module for correct error code processing and support file operations in single thread WASM by @gorbovskoy-evg in #6040
- Update mrbind. by @adalisk-emikhaylov in #6075
- optimize MeshTopology::deleteFaces by @Fedr in #6074
- CMake: silence CMP0167 from MRViewer Boost::locale lookup by @Fedr in #6076
- ci: replace PATs with GITHUB_TOKEN in CI workflows by @Grantim in #6073
- ci(unity): grant contents:write so unity-nuget-test can see draft releases by @Fedr in #6081
- ci(windows): generate_win.bat — fail loudly when MSYS2 isn't installed by @Fedr in #6082
- ci(mrbind): drop msys2_package_urls.txt; derive URLs from hashes lockfile by @Fedr in #6083
- chore(deps): bump aws-actions/configure-aws-credentials from 6.1.0 to 6.1.1 by @dependabot[bot] in #6085
- chore(deps): bump mikepenz/action-gh-release from 2.0.0 to 3.0.0 by @dependabot[bot] in #6084
- ci(windows): replace S3 MSYS2 zip with cached pacman install of clang 18.1.8 by @Fedr in #6060
- Fix build with GCC 16 by @oitel in #6086
- i18n: Add support of cross-domain translations by @oitel in #6089
- windows: use vcpkg laz-perf, drop local laz-perf vcxproj by @Fedr in #6090
- ci(mrbind): cache thirdparty/mrbind/build across all workflows via reusable action by @Fedr in #6087
- MRTestC2: less voxels in testThickenMesh for faster execution by @Fedr in #6095
- Fix building without i18n support by @oitel in #6096
- windows: use vcpkg openctm, drop local OpenCTM vcxproj by @Fedr in #6092
- thirdparty(GDCM): bump submodule to v3.2.6 by @Fedr in #6097
- ci(windows): use Ninja for cpp/c-examples, align with main Build step by @Fedr in #6094
- ci(mrbind): make build-mrbind work without bash on PATH (Python SHA step + pwsh on Windows for Trim/Strip) by @Fedr in #6093
- ci(mrbind): re-apply bashless-Windows fix via pwsh/bash split (no Python) by @Fedr in #6099
- ci(windows): do not copy release zlib1.dll in debug by @Fedr in #6102
- Fix incorrect pass/fail highlighting of QC points. by @adalisk-emikhaylov in #6104
- ci(macos): cache thirdparty lib/include outputs across runs by @Fedr in #6100
- ci(pip-build): respect disable-build-* labels for ubuntu / macos by @Fedr in #6091
- CI: Add action for advanced matrix manipulations by @oitel in #6105
- docker(rockylinux8-vcpkg): pin Clang to the 21.x line by @Fedr in #6106
- ci(linux): key mrbind cache on Dockerfile hash, not docker_image_tag by @Fedr in #6108
- ci(linux-vcpkg): only collect artifact stats when an artifact exists by @Fedr in #6107
- Fix findSignedDistance crash when upDistLimitSq sentinel is returned by @Fedr in #6110
- mrbind(linux): pad PHT against patchelf overrun via -z separate-loadable-segments by @Fedr in #6109
- Bump vcpkg to 2026.04.27 by @MaxRayskiy in #6015
- Prevent HoleFillPlanner re-entry under nested ParallelFor by @Grantim in #6111
- ubuntu-x64 CI: pass CMAKE_C_COMPILER to the Build step by @Fedr in #6113
- macos: bundle Homebrew dylibs into the .pkg framework; cover arm64 .pkg in test-distribution by @Fedr in #6098
- pip-build CI: consolidate per-py-version Windows/macOS test jobs by @Fedr in #6114
- macOS CI: extract thirdparty install into reusable composite action (share cache with pip-build) by @Fedr in #6116
- fix invalid proj result in MeshMesh findSignedDistance by @Grantim in #6115
- ci: also run macos-pip-test on self-hosted x64 / arm runners by @Fedr in #6112
- i18n: Translate undo/redo action names in UI by @oitel in #6119
- add mesh parts over given vacant elements by @Fedr in #6120
- i18n: Tune msgmerge arguments for less file changes by @oitel in #6123
- i18n: Fix brush undo/redo translations by @oitel in #6122
- Planar filling with plan by @Grantim in #6121
- ci: make MRBind build cache non-fatal by @Fedr in #6125
- mrbind generate.mk: re-tier NUM_FRAGMENTS / JOBS by cores and RAM by @Fedr in #6117
- Get rid of mrbind's
--buggy-substitute-default-template-args. by @adalisk-emikhaylov in #6118 - ci(windows): pin clang 22 for MRBind (vs master's clang 18) by @Fedr in #6021
- optimize MeshTopology::addPartByMask by @Fedr in #6126
- CI: Upgrade Node.js version for matrix-builder by @oitel in #6124
- macos: drop unused llvm@14 from requirements by @Fedr in #6127
- Move MRMeshBoolean gtests to MRTest project by @Fedr in #6132
- ci: move pip requirements into its own subdir by @Fedr in #6131
- Disable verbose logging for mrbind. by @adalisk-emikhaylov in #6135
- Small Boolean Speedups by @Grantim in #6134
- ci: widen macos-pip-test coverage to macos-15/26 and macos-26-intel by @Fedr in #6137
- wasm/better-process-empty-drops by @Grantim in #6139
- macos: pin CMAKE_OSX_DEPLOYMENT_TARGET to 12.7 by @Fedr in #6141
- ci: install pkg to user home on runners without passwordless sudo by @Fedr in #6142
- Port MRFixSelfIntersections tests from MRTestC2 to MRTest by @Fedr in #6145
- CI: Recompile matrix-builder with upgraded dependencies by @oitel in #6146
- i18n: Translate history action's complex names by @oitel in #6144
- emscripten: enable WebAssembly SIMD (-msimd128) by default by @Grantim in #6147
- ci(macOS): build Release on gihub runner by @Fedr in #6143
- ci: widen test-distribution macos-test Intel coverage; bump fastmcpp by @Fedr in #6148
- optimize Boolean operations by @Fedr in #6128
- Add unit tests for find distance by @gorbovskoy-evg in #6140
- emscripten: opt-out toggle to link with mimalloc (default ON) by @Grantim in #6149
- MCP: rename tool ids from dot- to underscore-namespacing by @Grantim in #6150
- ci(macos): wider testing of arm packages by @Fedr in #6152
- MCP: image / resource content blocks for screenshot + getObject (with /api/ mode parity) by @Grantim in #6151
- ci(macos): rename self-hosted pkg runners; add arm test on macos-13 by @Fedr in #6154
- ci(macos): retry Download Distributive on transient gh-api 401 by @Fedr in #6155
- ci: gate Collect artifact stats to match the upload step by @Fedr in #6156
- chore(deps): bump docker/login-action from 4.1.0 to 4.2.0 by @dependabot[bot] in #6158
- Docs: update ThirdpartyList — OpenVDB Apache-2.0, hidapi link fix by @DmitryLambin in #6130
- ci(macos): bump brew clang toolchain from llvm@18 to llvm@22 by @Fedr in #6153
- ci(macos): retry Download Distributive via scripts/retry.sh (auth and download separately) by @Fedr in #6157
- C API: remove unnecessary upcasts in examples and tests by @adalisk-emikhaylov in #6136
- Add getGlfwKeyDelete() helper for platform-specific Delete key by @meshinspector-agent[bot] in #6161
- docker(rockylinux8-vcpkg): trim image 4.4 GB -> 1.1 GB (drop nvidia/cuda devel base) by @Fedr in #6160
- ci(windows): tolerate transient MSYS2 cache restore errors by @Fedr in #6164
- fix double underline for iconed buttons with hotkey by @Grantim in #6162
- Brush: rename undo label "Brush: Patch" to "Brush: Fix" by @meshinspector-agent[bot] in #6163
- docker(ubuntu24): trim CUDA via NVIDIA sbsa repo (3.8 GB -> 1.2 GB on arm64) by @Fedr in #6165
- C tests/examples: inline Id construction at call sites by @Fedr in #6167
- ci(windows): tolerate transient CUDA cache restore errors by @Fedr in #6168
- mrbind/generate.mk: pass -isysroot at link time too (host-independent lld) by @Fedr in #6169
- Auto-colorize colorless STEP imports by @meshinspector-agent[bot] in #6170
- CI(macos): silence example-build ld deployment-target warnings in test-distribution by @Fedr in #6159
- Move all gtests out of MRMesh into MRTest; drop MRMesh's GTest dependency by @Fedr in #6171
- Link mimalloc with EXE-level redirect on Windows (MeshViewer, MRTest) by @Grantim in #6172
- Support the Windows CMake build for the mimalloc redirect by @Grantim in #6173
- macOS: use Homebrew googletest instead of submodule build by @Fedr in #6174
- Ubuntu: use apt googletest instead of submodule build by @Fedr in #6175
- Prepend mimalloc lib in EXE link order; add MRTest gate by @Grantim in #6176
- mrbind: auto-install MSYS2 when missing; switch to clang 22 package set by @Fedr in #6177
- ci(windows): resolve VS install path via vswhere instead of hardcoding by @Fedr in #6180
- ci(windows): derive vcpkg & CUDA versions from compiler, drop matrix keys by @Fedr in #6184
- Make 3mf slice decimation max error configurable by @meshinspector-agent[bot] in #6185
- Add macOS Cocoa drag&drop handler for drop-zone highlight by @meshinspector-agent[bot] in #6181
- CI(Windows): pin msvc-2022 toolset to v143 / vcvars_ver=14.4 by @Fedr in #6186
- CI: derive Windows test_artifacts_path from matrix fields by @Fedr in #6187
- x64-windows-vs2022-meshlib triplet introduced by @Fedr in #6188
- Migrate Windows CI to windows-2025 runners by @Fedr in #6189
- CI: archive Windows binaries with 7z (.7z) instead of zip by @Fedr in #6182
- ci(pip-build): scope vcpkg & CUDA env vars to the Windows job by @Fedr in #6191
- ci(windows): add MSVC 2026 build/test jobs by @Fedr in #6190
- get-aws-instance-type: add 2s timeout to Windows metadata requests by @Fedr in #6192
- Bump vcpkg to 2026.05.25 by @MaxRayskiy in #6179
- ci(windows): package C# NuGet bindings on msvc-2026 job (fixes unity-nuget-test) by @Fedr in #6193
- CI: archive Windows binaries as zip instead of 7z (faster compression) by @Fedr in #6195
- ci(unity): run unity-nuget-test on full-ci PRs, not only nightly by @Fedr in #6194
- CI: speed up Windows "Setup python" by skipping redundant Chocolatey install by @Fedr in #6196
- chore(deps): bump aws-actions/configure-aws-credentials from 6.1.1 to 6.1.3 by @dependabot[bot] in #6198
- ci(vcpkg): rebuild from source when restored cache is empty by @Fedr in #6199
- CI: fetch regression test data from MeshLibTestData submodule instead of S3 by @Fedr in #6197
- fix: quote URL in OpenLink so query strings survive the shell by @Grantim in #6202
- CI: macOS: Move dylib stripping from install script by @oitel in #6200
- Use shared precompiled header in more projects by @Fedr in #6203
- MSBuild: move warnings settings in common.props by @Fedr in #6204
- Update openctm vcpkg port to OpenCTM master HEAD (throw() -> noexcept) by @Fedr in #6205
- Boolean: Fill only required side of cut by @Grantim in #6207
- Raise warning level to /Wall on MSVC and -Wdeprecated on GCC/Clang by @Fedr in #6201
- MRCuda: use PCH in MSBuild by @Fedr in #6210
- i18n: Translate controller cube labels by @oitel in #6209
- Build face connected-components UnionFind in parallel (lock-free) by @Grantim in #6208
- CI: speed up Linux vcpkg image builds with shared S3 binary cache (OIDC) by @Fedr in #6206
- permit precompiled header for TBB-free projects on MSVC (CMake + MSBuild) by @Fedr in #6211
- Use here-docs for Dockerfiles by @oitel in #6214
- CI: use setup-vcpkg-windows action in prepare-images Windows job by @Fedr in #6217
- Bump vcpkg to 2026.06.01 by @MaxRayskiy in #6213
- Add
debugSaveMesh_for diagnostics by @Grantim in #6218 - printStacktraceOnCrash improvements for Windows by @Fedr in #6219
- chore(deps): bump astral-sh/setup-uv from 8.1.0 to 8.2.0 by @dependabot[bot] in #6221
- ci(macos): upload artifacts directly, drop Wandalen/wretry.action by @Fedr in #6222
- chore(deps): bump aws-actions/configure-aws-credentials from 6.1.3 to 6.2.0 by @dependabot[bot] in #6220
- ci: extract setup-cuda composite action by @Fedr in #6223
- ci: pass 3-part CUDA semver to install-cuda action by @Fedr in #6224
- Add UI::TestEngine::TreeGuard RAII helper for pushTree/popTree by @meshinspector-agent[bot] in #6225
- CudaBasic: do not include during kernels' compilation by @Fedr in #6227
- CUDA: do not include in kernels by @Fedr in #6229
- CI: Add base stage to Docker images by @oitel in #6216
- Update mrbind-pybind11 by @oitel in #6228
- Unite SweepLineQueue Params by @Grantim in #6232
- Add "Hide scene overlays" toggle to Capture screenshot dialog by @meshinspector-agent[bot] in #6231
- Add experimental vcpkg manifest file by @oitel in #6230
- ci(vcpkg): survive a failed cache restore, not just an empty one by @Fedr in #6234
- CI: skip distribution upload & tests when a build failed by @Fedr in #6235
- MRCuda: use v143 toolset + CUDA 12.0 under VS2026 (MSBuild) by @Fedr in #6233
- ci(windows): build pip wheel with VS2026 by @Fedr in #6237
- docs: rewrite plugin install/troubleshooting guide by @DmitryLambin in #6079
- CI: unify per-OS steps in build-mrbind, fix stale MSYS2 hashes cache key by @Fedr in #6239
- Mrbind wasm trick by @adalisk-emikhaylov in #6226
- Define MR_PCH_USE_EXTRA_HEADERS in macOS CI builds by @Fedr in #6242
- Build generated C bindings with MSBuild by @Fedr in #6238
- Size C bindings unity batches as one batch per CPU core (capped at 256 files) by @Fedr in #6241
- Add five most frequently included MRMesh headers to PCH extra headers by @Fedr in #6244
- Preserve _DEBUG around the pybind11 include baked into the bindings PCH by @Fedr in #6252
- CI: keep CBindings artifact so failed build jobs can be re-run by @Fedr in #6257
- CI: build C CUDA bindings (MeshLibC2Cuda) with MSBuild on Windows by @Fedr in #6260
- ci(win): generate C# bindings using MSBuild by @Fedr in #6258
- Fix meshconv crash/failure on multi-object scene files by @Fedr in #6261
- Enable lean precompiled header for GCC builds by @Fedr in #6248
- Deduplicate binding fragment codegen via -fpch-codegen (link the PCH object) by @Fedr in #6255
- Fix zero byteStride in vertColorMap for gltf format by @Grantim in #6264
- Refactor STEP file children retrieval by @VoRodin in #6240
- Add Python regression test for multi-body STEP loading by @Fedr in #6265
- CI: generate C bindings in a dedicated image (drop per-run emsdk install) by @Fedr in #6259
- ci(win): produce separate VS2019/VS2022/VS2026 developer distributives by @Fedr in #6263
- CMake: Enable vcpkg manifest support by @oitel in #6262
- CMake: Fix problems with GCC and PCH on Linux by @oitel in #6268
- CI(windows): fail fast in cmd generate steps with
|| exit /b 1by @Fedr in #6269 - CI: Upgrade matrix-builder dependencies by @oitel in #6276
- MSVC: cache MeshLib headers in the precompiled header (~11% faster Windows build) by @Fedr in #6278
- CI: overlap build-test jobs with generate-c-bindings via a reusable wait-for-job action by @Fedr in #6279
- Add to MRStdlib.h precompiled header by @Fedr in #6280
- ci: log precompiled-header (.gch) size on ubuntu-x64 by @Fedr in #6282
- Reduce codegen: extern template common MRSceneStateCheck instantiations by @Fedr in #6285
- CI: fix wait-for-job matching the wrong job (substring -> exact) by @Fedr in #6289
- Reduce codegen: extern template common UI::drag<> instantiations by @Fedr in #6287
- Use lightweight instead of stream headers by @Fedr in #6290
- Cache OpenVDB in the precompiled header on MSVC by @Fedr in #6293
- MROpenVDB.h: move from MRVoxels to MRPch project by @Fedr in #6296
- chore(deps): bump actions/checkout from 6 to 7 by @dependabot[bot] in #6297
- PCH: enable MR_PCH_USE_EXTRA_HEADERS only in CI (off by default for local builds) by @Fedr in #6295
- PlanarTriangulation: injectable sweep-line predicates + tbb::parallel_sort by @Grantim in #6294
- projectSpline: project a spline onto a mesh surface by @Fedr in #6277
- Detect real ARM processor name in GetCpuId() by @Fedr in #6300
- projectSpline: fix self-intersecting projection; add cut-by-spline regression test by @Fedr in #6301
- PlanarTriangulation: decouple SweepLineQueue from Contours2f by @Grantim in #6306
- CI: Upgrade matrix-builder action's deps by @oitel in #6308
- MRCuda: add getRuntimeInfo() returning Expected; deprecate isCudaAvailable() by @Fedr in #6307
- fillContours2D: add tilted-plane regression test by @Grantim in #6310
- PlanarTriangulation: triangulate mesh hole loops in input space by @Grantim in #6309
- MRCuda: rename RuntimeInfo to DeviceInfo; report GPU name and total memory by @Fedr in #6314
- CI: retry collect_ci_stats and report API errors clearly by @Fedr in #6311
- Reduce telemetry STL-header noise for three more exporters by @Fedr in #6315
- Reduce PLY comment telemetry noise by @Fedr in #6316
- A dotnet-wasm distribution by @adalisk-emikhaylov in #6271
- Reduce OBJ comment telemetry noise by @Fedr in #6317
- detectTunnelFaces: improvements and classification by @Fedr in #6318
New Contributors
- @gorbovskoy-evg made their first contribution in #6040
- @DmitryLambin made their first contribution in #6130
- @meshinspector-agent[bot] made their first contribution in #6161
- @VoRodin made their first contribution in #6240
Full Changelog: v3.1.2.192...v3.1.3.249