Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] occt: update to 7.9.0.
@ 2025-02-23 17:48 ii8
  2025-02-23 18:45 ` [PR PATCH] [Updated] " ii8
                   ` (12 more replies)
  0 siblings, 13 replies; 14+ messages in thread
From: ii8 @ 2025-02-23 17:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 520 bytes --]

There is a new pull request by ii8 against master on the void-packages repository

https://github.com/ii8/void-packages occt
https://github.com/void-linux/void-packages/pull/54462

occt: update to 7.9.0.
#### Testing the changes
- I tested the changes in this PR: **YES**

#### Local build testing
- I built this PR locally for my native architecture, x86_64-musl

This version fixes myriad segmentation faults in FreeCAD.

A patch file from https://github.com/void-linux/void-packages/pull/54462.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-occt-54462.patch --]
[-- Type: text/x-diff, Size: 13026 bytes --]

From 059f2af0dc72aaa3071aeb50f9ba1ed23ecd70c7 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 17:44:19 +0000
Subject: [PATCH] occt: update to 7.9.0.

---
 common/shlibs                              | 122 ++++++++++-----------
 srcpkgs/occt/patches/fix-cmake-regex.patch |   2 +-
 srcpkgs/occt/patches/fix-install-dir.patch |   2 +-
 srcpkgs/occt/patches/fix-osd-host.patch    |  14 +--
 srcpkgs/occt/patches/musl-fenv.patch       |  38 +++----
 srcpkgs/occt/patches/musl-mallinfo.patch   |  45 +++++---
 srcpkgs/occt/template                      |  13 +--
 7 files changed, 123 insertions(+), 113 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 62699b94ca3f19..5f94090fe4daff 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3454,67 +3454,67 @@ libvtkkissfft-9.3.so.1 vtk-9.3.0_1
 libvolume_key.so.1 volume_key-0.3.9_1
 libxxhash.so.0 libxxHash-0.6.5_2
 libcapnp_c.so.0 c-capnproto-0.3_1
-libTKernel.so.7.7 occt-7.7.1_1
-libTKXmlXCAF.so.7.7 occt-7.7.1_1
-libTKXmlTObj.so.7.7 occt-7.7.1_1
-libTKXmlL.so.7.7 occt-7.7.1_1
-libTKXml.so.7.7 occt-7.7.1_1
-libTKXSDRAW.so.7.7 occt-7.7.1_1
-libTKXSBase.so.7.7 occt-7.7.1_1
-libTKXMesh.so.7.7 occt-7.7.1_1
-libTKXDESTEP.so.7.7 occt-7.7.1_1
-libTKXDEIGES.so.7.7 occt-7.7.1_1
-libTKXDEDRAW.so.7.7 occt-7.7.1_1
-libTKXDECascade.so.7.7 occt-7.7.1_1
-libTKXDE.so.7.7 occt-7.7.1_1
-libTKXCAF.so.7.7 occt-7.7.1_1
-libTKViewerTest.so.7.7 occt-7.7.1_1
-libTKVRML.so.7.7 occt-7.7.1_1
-libTKVCAF.so.7.7 occt-7.7.1_1
-libTKV3d.so.7.7 occt-7.7.1_1
-libTKTopTest.so.7.7 occt-7.7.1_1
-libTKTopAlgo.so.7.7 occt-7.7.1_1
-libTKTObjDRAW.so.7.7 occt-7.7.1_1
-libTKTObj.so.7.7 occt-7.7.1_1
-libTKStdL.so.7.7 occt-7.7.1_1
-libTKStd.so.7.7 occt-7.7.1_1
-libTKShHealing.so.7.7 occt-7.7.1_1
-libTKService.so.7.7 occt-7.7.1_1
-libTKSTL.so.7.7 occt-7.7.1_1
-libTKSTEPBase.so.7.7 occt-7.7.1_1
-libTKSTEPAttr.so.7.7 occt-7.7.1_1
-libTKSTEP209.so.7.7 occt-7.7.1_1
-libTKSTEP.so.7.7 occt-7.7.1_1
-libTKRWMesh.so.7.7 occt-7.7.1_1
-libTKQADraw.so.7.7 occt-7.7.1_1
-libTKPrim.so.7.7 occt-7.7.1_1
-libTKOpenGlTest.so.7.7 occt-7.7.1_1
-libTKOpenGl.so.7.7 occt-7.7.1_1
-libTKOffset.so.7.7 occt-7.7.1_1
-libTKMeshVS.so.7.7 occt-7.7.1_1
-libTKMesh.so.7.7 occt-7.7.1_1
-libTKMath.so.7.7 occt-7.7.1_1
-libTKLCAF.so.7.7 occt-7.7.1_1
-libTKIGES.so.7.7 occt-7.7.1_1
-libTKHLR.so.7.7 occt-7.7.1_1
-libTKGeomBase.so.7.7 occt-7.7.1_1
-libTKGeomAlgo.so.7.7 occt-7.7.1_1
-libTKG3d.so.7.7 occt-7.7.1_1
-libTKG2d.so.7.7 occt-7.7.1_1
-libTKFillet.so.7.7 occt-7.7.1_1
-libTKFeat.so.7.7 occt-7.7.1_1
-libTKExpress.so.7.7 occt-7.7.1_1
-libTKDraw.so.7.7 occt-7.7.1_1
-libTKDCAF.so.7.7 occt-7.7.1_1
-libTKCDF.so.7.7 occt-7.7.1_1
-libTKCAF.so.7.7 occt-7.7.1_1
-libTKBool.so.7.7 occt-7.7.1_1
-libTKBinXCAF.so.7.7 occt-7.7.1_1
-libTKBinTObj.so.7.7 occt-7.7.1_1
-libTKBinL.so.7.7 occt-7.7.1_1
-libTKBin.so.7.7 occt-7.7.1_1
-libTKBRep.so.7.7 occt-7.7.1_1
-libTKBO.so.7.7 occt-7.7.1_1
+libTKernel.so.7.9 occt-7.9.0_1
+libTKXmlXCAF.so.7.9 occt-7.9.0_1
+libTKXmlTObj.so.7.9 occt-7.9.0_1
+libTKXmlL.so.7.9 occt-7.9.0_1
+libTKXml.so.7.9 occt-7.9.0_1
+libTKXSDRAW.so.7.9 occt-7.9.0_1
+libTKXSBase.so.7.9 occt-7.9.0_1
+libTKXMesh.so.7.9 occt-7.9.0_1
+libTKXDESTEP.so.7.9 occt-7.9.0_1
+libTKXDEIGES.so.7.9 occt-7.9.0_1
+libTKXDEDRAW.so.7.9 occt-7.9.0_1
+libTKXDECascade.so.7.9 occt-7.9.0_1
+libTKXDE.so.7.9 occt-7.9.0_1
+libTKXCAF.so.7.9 occt-7.9.0_1
+libTKViewerTest.so.7.9 occt-7.9.0_1
+libTKVRML.so.7.9 occt-7.9.0_1
+libTKVCAF.so.7.9 occt-7.9.0_1
+libTKV3d.so.7.9 occt-7.9.0_1
+libTKTopTest.so.7.9 occt-7.9.0_1
+libTKTopAlgo.so.7.9 occt-7.9.0_1
+libTKTObjDRAW.so.7.9 occt-7.9.0_1
+libTKTObj.so.7.9 occt-7.9.0_1
+libTKStdL.so.7.9 occt-7.9.0_1
+libTKStd.so.7.9 occt-7.9.0_1
+libTKShHealing.so.7.9 occt-7.9.0_1
+libTKService.so.7.9 occt-7.9.0_1
+libTKSTL.so.7.9 occt-7.9.0_1
+libTKSTEPBase.so.7.9 occt-7.9.0_1
+libTKSTEPAttr.so.7.9 occt-7.9.0_1
+libTKSTEP209.so.7.9 occt-7.9.0_1
+libTKSTEP.so.7.9 occt-7.9.0_1
+libTKRWMesh.so.7.9 occt-7.9.0_1
+libTKQADraw.so.7.9 occt-7.9.0_1
+libTKPrim.so.7.9 occt-7.9.0_1
+libTKOpenGlTest.so.7.9 occt-7.9.0_1
+libTKOpenGl.so.7.9 occt-7.9.0_1
+libTKOffset.so.7.9 occt-7.9.0_1
+libTKMeshVS.so.7.9 occt-7.9.0_1
+libTKMesh.so.7.9 occt-7.9.0_1
+libTKMath.so.7.9 occt-7.9.0_1
+libTKLCAF.so.7.9 occt-7.9.0_1
+libTKIGES.so.7.9 occt-7.9.0_1
+libTKHLR.so.7.9 occt-7.9.0_1
+libTKGeomBase.so.7.9 occt-7.9.0_1
+libTKGeomAlgo.so.7.9 occt-7.9.0_1
+libTKG3d.so.7.9 occt-7.9.0_1
+libTKG2d.so.7.9 occt-7.9.0_1
+libTKFillet.so.7.9 occt-7.9.0_1
+libTKFeat.so.7.9 occt-7.9.0_1
+libTKExpress.so.7.9 occt-7.9.0_1
+libTKDraw.so.7.9 occt-7.9.0_1
+libTKDCAF.so.7.9 occt-7.9.0_1
+libTKCDF.so.7.9 occt-7.9.0_1
+libTKCAF.so.7.9 occt-7.9.0_1
+libTKBool.so.7.9 occt-7.9.0_1
+libTKBinXCAF.so.7.9 occt-7.9.0_1
+libTKBinTObj.so.7.9 occt-7.9.0_1
+libTKBinL.so.7.9 occt-7.9.0_1
+libTKBin.so.7.9 occt-7.9.0_1
+libTKBRep.so.7.9 occt-7.9.0_1
+libTKBO.so.7.9 occt-7.9.0_1
 libargon2.so.1 libargon2-20171227_1
 libdazzle-1.0.so.0 libdazzle-3.28.0_1
 libjsonrpc-glib-1.0.so.1 jsonrpc-glib-3.28.0_1
diff --git a/srcpkgs/occt/patches/fix-cmake-regex.patch b/srcpkgs/occt/patches/fix-cmake-regex.patch
index f38e0108ac7089..6cc5918bd28960 100644
--- a/srcpkgs/occt/patches/fix-cmake-regex.patch
+++ b/srcpkgs/occt/patches/fix-cmake-regex.patch
@@ -3,7 +3,7 @@
 
 --- a/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 00:18:42.763819658 -0500
 +++ b/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 23:40:32.872489521 -0500
-@@ -26,7 +26,7 @@
+@@ -27,7 +27,7 @@
  if (OpenCASCADE_INSTALL_PREFIX MATCHES "/cmake$")
    get_filename_component (OpenCASCADE_INSTALL_PREFIX "${OpenCASCADE_INSTALL_PREFIX}" PATH)
  endif()
diff --git a/srcpkgs/occt/patches/fix-install-dir.patch b/srcpkgs/occt/patches/fix-install-dir.patch
index 931587bef99048..0dc6660f0a10f2 100644
--- a/srcpkgs/occt/patches/fix-install-dir.patch
+++ b/srcpkgs/occt/patches/fix-install-dir.patch
@@ -1,7 +1,7 @@
 diff --color -upr occt-7.7.1.orig/adm/cmake/occt_macros.cmake occt-7.7.1/adm/cmake/occt_macros.cmake
 --- occt-7.7.1.orig/adm/cmake/occt_macros.cmake	2023-05-31 20:05:47.619869450 +0200
 +++ occt-7.7.1/adm/cmake/occt_macros.cmake	2023-05-31 20:07:25.611036417 +0200
-@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
+@@ -762,7 +762,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
  
    install (CODE
    "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
diff --git a/srcpkgs/occt/patches/fix-osd-host.patch b/srcpkgs/occt/patches/fix-osd-host.patch
index ef705c7291381d..922f61072619db 100644
--- a/srcpkgs/occt/patches/fix-osd-host.patch
+++ b/srcpkgs/occt/patches/fix-osd-host.patch
@@ -2,12 +2,12 @@
 
 --- a/src/OSD/OSD_Host.cxx
 +++ b/src/OSD/OSD_Host.cxx
-@@ -124,7 +124,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+@@ -140,7 +140,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+   TCollection_AsciiString result, host;
  
-  host = HostName();
-  memcpy(&internet_address,
--        gethostbyname(host.ToCString()),
-+        gethostbyname("localhost"),
-         sizeof(struct hostent));
+   host = HostName();
+-  memcpy(&internet_address, gethostbyname(host.ToCString()), sizeof(struct hostent));
++  memcpy(&internet_address, gethostbyname("localhost"), sizeof(struct hostent));
  
-  // Gets each bytes into integers
+   // Gets each bytes into integers
+   a = (unsigned char)internet_address.h_addr_list[0][0];
diff --git a/srcpkgs/occt/patches/musl-fenv.patch b/srcpkgs/occt/patches/musl-fenv.patch
index a8a776ce29a9d0..9756cca207bbac 100644
--- a/srcpkgs/occt/patches/musl-fenv.patch
+++ b/srcpkgs/occt/patches/musl-fenv.patch
@@ -5,32 +5,32 @@ is probably wrong, but I don't have a replacement for the
 non-posix functions fegetexcept(3) and feenableexcept(3).
 """
 
---- a/src/OSD/OSD_signal.cxx.orig	2022-07-22 10:53:38.000000000 +0200
-+++ b/src/OSD/OSD_signal.cxx	2022-10-06 09:19:02.286414340 +0200
-@@ -761,7 +761,7 @@ typedef void (* SIG_PFV) (int);
+--- a/src/OSD/OSD_signal.cxx
++++ b/src/OSD/OSD_signal.cxx
+@@ -769,7 +769,7 @@ typedef void (*SIG_PFV)(int);
  
- #include <signal.h>
+   #include <signal.h>
  
--#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
-+#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) &&  defined(__GLIBC__)
-   #include <sys/signal.h>
- #endif
+-  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
++  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) && defined(__GLIBC__)
+     #include <sys/signal.h>
+   #endif
  
-@@ -977,7 +977,7 @@ static void SegvHandler(const int theSig
- //=======================================================================
- void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
+@@ -994,7 +994,7 @@ static void SegvHandler(const int              theSignal,
+ 
+ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
-   feclearexcept (FE_ALL_EXCEPT);
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
+   feclearexcept(FE_ALL_EXCEPT);
    if (theFloatingSignal)
    {
-@@ -1010,7 +1010,7 @@ void OSD::SetFloatingSignal (Standard_Bo
- //=======================================================================
+@@ -1025,7 +1025,7 @@ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
+ 
  Standard_Boolean OSD::ToCatchFloatingSignals()
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
    return (fegetexcept() & _OSD_FPX) != 0;
- #else
+   #else
    return Standard_False;
diff --git a/srcpkgs/occt/patches/musl-mallinfo.patch b/srcpkgs/occt/patches/musl-mallinfo.patch
index 1ce5b16b793f95..158d954fe9c52f 100644
--- a/srcpkgs/occt/patches/musl-mallinfo.patch
+++ b/srcpkgs/occt/patches/musl-mallinfo.patch
@@ -1,21 +1,32 @@
-In musl libc there is no struct mallinfo and no function mallinf()
-
---- a/src/OSD/OSD_MemInfo.cxx.orig	2022-10-06 09:21:55.466236104 +0200
-+++ b/src/OSD/OSD_MemInfo.cxx	2022-10-06 09:25:34.105323581 +0200
-@@ -188,12 +188,16 @@ void OSD_MemInfo::Update()
+--- a/src/OSD/OSD_MemInfo.cxx
++++ b/src/OSD/OSD_MemInfo.cxx
+@@ -165,18 +165,23 @@ void OSD_MemInfo::Update()
+   #elif (defined(__linux__) || defined(__linux))
+   if (IsActive(MemHeapUsage))
+   {
+-    #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+-      #if __GLIBC_PREREQ(2, 33)
++    #if defined(__GLIBC__)
++      #define HAS_MALLINFO
++      #if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 33)
+         #define HAS_MALLINFO2
+       #endif
      #endif
-   #endif
  
-+  #if defined(__GLIBC__)
-   #ifdef HAS_MALLINFO2
-     const struct mallinfo2 aMI = mallinfo2();
-   #else
-     const struct mallinfo aMI = mallinfo();
-   #endif
-     myCounters[MemHeapUsage] = aMI.uordblks;
-+  #else
-+    myCounters[MemHeapUsage] = 0;
-+  #endif
+-    #ifdef HAS_MALLINFO2
+-    const struct mallinfo2 aMI = mallinfo2();
++    #ifdef HAS_MALLINFO
++      #ifdef HAS_MALLINFO2
++      const struct mallinfo2 aMI = mallinfo2();
++      #else
++      const struct mallinfo aMI = mallinfo();
++      #endif
++      myCounters[MemHeapUsage] = aMI.uordblks;
+     #else
+-    const struct mallinfo aMI = mallinfo();
++      myCounters[MemHeapUsage] = 0;
+     #endif
+-    myCounters[MemHeapUsage] = aMI.uordblks;
    }
  
-   if (!IsActive (MemVirtual)
+   if (!IsActive(MemVirtual) && !IsActive(MemWorkingSet) && !IsActive(MemWorkingSetPeak)
diff --git a/srcpkgs/occt/template b/srcpkgs/occt/template
index 296a52de5a1b5a..8cc77ee02439fe 100644
--- a/srcpkgs/occt/template
+++ b/srcpkgs/occt/template
@@ -1,14 +1,13 @@
 # Template file for 'occt'
 pkgname=occt
-version=7.7.1
+version=7.9.0
 revision=1
 _gittag="V${version//./_}"
 build_style=cmake
-# XXX: re-enable -DUSE_TBB=ON if possible when updating
-configure_args="-DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
- -DINSTALL_SAMPLES=ON"
-makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tcl-devel
- tk-devel"
+configure_args="-DUSE_TBB=ON -DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
+ -DUSE_XLIB=OFF -DINSTALL_SAMPLES=ON"
+makedepends="tbb-devel freetype-devel glu-devel freeimage-devel gl2ps-devel
+ tcl-devel tk-devel"
 short_desc="OpenCASCADE Technology - library for CAD/CAM/CAE applications"
 maintainer="Piraty <mail@piraty.dev>"
 license="custom:LGPL-2.1-only-with-exceptions"
@@ -16,7 +15,7 @@ homepage="https://www.opencascade.com"
 # distfile: use git instead of official tarball, which requires registration
 # see https://www.opencascade.com/content/packaging-again-debian
 distfiles="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/${_gittag};sf=tgz>occt-${_gittag}.tar.gz"
-checksum=f413d30a8a06d6164e94860a652cbc96ea58fe262df36ce4eaa92a9e3561fd12
+checksum=ff118a524ec451867e8f0ac3b631522c98f2b4353c7dbf2786bf239589909ec6
 conflicts="oce>=0"
 if [ "$XBPS_TARGET_LIBC" = musl ]; then
 	makedepends+=" libexecinfo-devel"

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PR PATCH] [Updated] occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
@ 2025-02-23 18:45 ` ii8
  2025-02-23 20:09 ` ii8
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: ii8 @ 2025-02-23 18:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 525 bytes --]

There is an updated pull request by ii8 against master on the void-packages repository

https://github.com/ii8/void-packages occt
https://github.com/void-linux/void-packages/pull/54462

occt: update to 7.9.0.
#### Testing the changes
- I tested the changes in this PR: **YES**

#### Local build testing
- I built this PR locally for my native architecture, x86_64-musl

This version fixes myriad segmentation faults in FreeCAD.

A patch file from https://github.com/void-linux/void-packages/pull/54462.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-occt-54462.patch --]
[-- Type: text/x-diff, Size: 17119 bytes --]

From 5e7571ff439daabc8de8567ec20e92e4446d070b Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 17:44:19 +0000
Subject: [PATCH 1/7] occt: update to 7.9.0.

---
 common/shlibs                              | 122 ++++++++++-----------
 srcpkgs/occt/patches/fix-cmake-regex.patch |   2 +-
 srcpkgs/occt/patches/fix-install-dir.patch |   2 +-
 srcpkgs/occt/patches/fix-osd-host.patch    |  14 +--
 srcpkgs/occt/patches/musl-fenv.patch       |  38 +++----
 srcpkgs/occt/patches/musl-mallinfo.patch   |  45 +++++---
 srcpkgs/occt/template                      |  13 +--
 7 files changed, 123 insertions(+), 113 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 62699b94ca3f19..5f94090fe4daff 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3454,67 +3454,67 @@ libvtkkissfft-9.3.so.1 vtk-9.3.0_1
 libvolume_key.so.1 volume_key-0.3.9_1
 libxxhash.so.0 libxxHash-0.6.5_2
 libcapnp_c.so.0 c-capnproto-0.3_1
-libTKernel.so.7.7 occt-7.7.1_1
-libTKXmlXCAF.so.7.7 occt-7.7.1_1
-libTKXmlTObj.so.7.7 occt-7.7.1_1
-libTKXmlL.so.7.7 occt-7.7.1_1
-libTKXml.so.7.7 occt-7.7.1_1
-libTKXSDRAW.so.7.7 occt-7.7.1_1
-libTKXSBase.so.7.7 occt-7.7.1_1
-libTKXMesh.so.7.7 occt-7.7.1_1
-libTKXDESTEP.so.7.7 occt-7.7.1_1
-libTKXDEIGES.so.7.7 occt-7.7.1_1
-libTKXDEDRAW.so.7.7 occt-7.7.1_1
-libTKXDECascade.so.7.7 occt-7.7.1_1
-libTKXDE.so.7.7 occt-7.7.1_1
-libTKXCAF.so.7.7 occt-7.7.1_1
-libTKViewerTest.so.7.7 occt-7.7.1_1
-libTKVRML.so.7.7 occt-7.7.1_1
-libTKVCAF.so.7.7 occt-7.7.1_1
-libTKV3d.so.7.7 occt-7.7.1_1
-libTKTopTest.so.7.7 occt-7.7.1_1
-libTKTopAlgo.so.7.7 occt-7.7.1_1
-libTKTObjDRAW.so.7.7 occt-7.7.1_1
-libTKTObj.so.7.7 occt-7.7.1_1
-libTKStdL.so.7.7 occt-7.7.1_1
-libTKStd.so.7.7 occt-7.7.1_1
-libTKShHealing.so.7.7 occt-7.7.1_1
-libTKService.so.7.7 occt-7.7.1_1
-libTKSTL.so.7.7 occt-7.7.1_1
-libTKSTEPBase.so.7.7 occt-7.7.1_1
-libTKSTEPAttr.so.7.7 occt-7.7.1_1
-libTKSTEP209.so.7.7 occt-7.7.1_1
-libTKSTEP.so.7.7 occt-7.7.1_1
-libTKRWMesh.so.7.7 occt-7.7.1_1
-libTKQADraw.so.7.7 occt-7.7.1_1
-libTKPrim.so.7.7 occt-7.7.1_1
-libTKOpenGlTest.so.7.7 occt-7.7.1_1
-libTKOpenGl.so.7.7 occt-7.7.1_1
-libTKOffset.so.7.7 occt-7.7.1_1
-libTKMeshVS.so.7.7 occt-7.7.1_1
-libTKMesh.so.7.7 occt-7.7.1_1
-libTKMath.so.7.7 occt-7.7.1_1
-libTKLCAF.so.7.7 occt-7.7.1_1
-libTKIGES.so.7.7 occt-7.7.1_1
-libTKHLR.so.7.7 occt-7.7.1_1
-libTKGeomBase.so.7.7 occt-7.7.1_1
-libTKGeomAlgo.so.7.7 occt-7.7.1_1
-libTKG3d.so.7.7 occt-7.7.1_1
-libTKG2d.so.7.7 occt-7.7.1_1
-libTKFillet.so.7.7 occt-7.7.1_1
-libTKFeat.so.7.7 occt-7.7.1_1
-libTKExpress.so.7.7 occt-7.7.1_1
-libTKDraw.so.7.7 occt-7.7.1_1
-libTKDCAF.so.7.7 occt-7.7.1_1
-libTKCDF.so.7.7 occt-7.7.1_1
-libTKCAF.so.7.7 occt-7.7.1_1
-libTKBool.so.7.7 occt-7.7.1_1
-libTKBinXCAF.so.7.7 occt-7.7.1_1
-libTKBinTObj.so.7.7 occt-7.7.1_1
-libTKBinL.so.7.7 occt-7.7.1_1
-libTKBin.so.7.7 occt-7.7.1_1
-libTKBRep.so.7.7 occt-7.7.1_1
-libTKBO.so.7.7 occt-7.7.1_1
+libTKernel.so.7.9 occt-7.9.0_1
+libTKXmlXCAF.so.7.9 occt-7.9.0_1
+libTKXmlTObj.so.7.9 occt-7.9.0_1
+libTKXmlL.so.7.9 occt-7.9.0_1
+libTKXml.so.7.9 occt-7.9.0_1
+libTKXSDRAW.so.7.9 occt-7.9.0_1
+libTKXSBase.so.7.9 occt-7.9.0_1
+libTKXMesh.so.7.9 occt-7.9.0_1
+libTKXDESTEP.so.7.9 occt-7.9.0_1
+libTKXDEIGES.so.7.9 occt-7.9.0_1
+libTKXDEDRAW.so.7.9 occt-7.9.0_1
+libTKXDECascade.so.7.9 occt-7.9.0_1
+libTKXDE.so.7.9 occt-7.9.0_1
+libTKXCAF.so.7.9 occt-7.9.0_1
+libTKViewerTest.so.7.9 occt-7.9.0_1
+libTKVRML.so.7.9 occt-7.9.0_1
+libTKVCAF.so.7.9 occt-7.9.0_1
+libTKV3d.so.7.9 occt-7.9.0_1
+libTKTopTest.so.7.9 occt-7.9.0_1
+libTKTopAlgo.so.7.9 occt-7.9.0_1
+libTKTObjDRAW.so.7.9 occt-7.9.0_1
+libTKTObj.so.7.9 occt-7.9.0_1
+libTKStdL.so.7.9 occt-7.9.0_1
+libTKStd.so.7.9 occt-7.9.0_1
+libTKShHealing.so.7.9 occt-7.9.0_1
+libTKService.so.7.9 occt-7.9.0_1
+libTKSTL.so.7.9 occt-7.9.0_1
+libTKSTEPBase.so.7.9 occt-7.9.0_1
+libTKSTEPAttr.so.7.9 occt-7.9.0_1
+libTKSTEP209.so.7.9 occt-7.9.0_1
+libTKSTEP.so.7.9 occt-7.9.0_1
+libTKRWMesh.so.7.9 occt-7.9.0_1
+libTKQADraw.so.7.9 occt-7.9.0_1
+libTKPrim.so.7.9 occt-7.9.0_1
+libTKOpenGlTest.so.7.9 occt-7.9.0_1
+libTKOpenGl.so.7.9 occt-7.9.0_1
+libTKOffset.so.7.9 occt-7.9.0_1
+libTKMeshVS.so.7.9 occt-7.9.0_1
+libTKMesh.so.7.9 occt-7.9.0_1
+libTKMath.so.7.9 occt-7.9.0_1
+libTKLCAF.so.7.9 occt-7.9.0_1
+libTKIGES.so.7.9 occt-7.9.0_1
+libTKHLR.so.7.9 occt-7.9.0_1
+libTKGeomBase.so.7.9 occt-7.9.0_1
+libTKGeomAlgo.so.7.9 occt-7.9.0_1
+libTKG3d.so.7.9 occt-7.9.0_1
+libTKG2d.so.7.9 occt-7.9.0_1
+libTKFillet.so.7.9 occt-7.9.0_1
+libTKFeat.so.7.9 occt-7.9.0_1
+libTKExpress.so.7.9 occt-7.9.0_1
+libTKDraw.so.7.9 occt-7.9.0_1
+libTKDCAF.so.7.9 occt-7.9.0_1
+libTKCDF.so.7.9 occt-7.9.0_1
+libTKCAF.so.7.9 occt-7.9.0_1
+libTKBool.so.7.9 occt-7.9.0_1
+libTKBinXCAF.so.7.9 occt-7.9.0_1
+libTKBinTObj.so.7.9 occt-7.9.0_1
+libTKBinL.so.7.9 occt-7.9.0_1
+libTKBin.so.7.9 occt-7.9.0_1
+libTKBRep.so.7.9 occt-7.9.0_1
+libTKBO.so.7.9 occt-7.9.0_1
 libargon2.so.1 libargon2-20171227_1
 libdazzle-1.0.so.0 libdazzle-3.28.0_1
 libjsonrpc-glib-1.0.so.1 jsonrpc-glib-3.28.0_1
diff --git a/srcpkgs/occt/patches/fix-cmake-regex.patch b/srcpkgs/occt/patches/fix-cmake-regex.patch
index f38e0108ac7089..6cc5918bd28960 100644
--- a/srcpkgs/occt/patches/fix-cmake-regex.patch
+++ b/srcpkgs/occt/patches/fix-cmake-regex.patch
@@ -3,7 +3,7 @@
 
 --- a/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 00:18:42.763819658 -0500
 +++ b/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 23:40:32.872489521 -0500
-@@ -26,7 +26,7 @@
+@@ -27,7 +27,7 @@
  if (OpenCASCADE_INSTALL_PREFIX MATCHES "/cmake$")
    get_filename_component (OpenCASCADE_INSTALL_PREFIX "${OpenCASCADE_INSTALL_PREFIX}" PATH)
  endif()
diff --git a/srcpkgs/occt/patches/fix-install-dir.patch b/srcpkgs/occt/patches/fix-install-dir.patch
index 931587bef99048..0dc6660f0a10f2 100644
--- a/srcpkgs/occt/patches/fix-install-dir.patch
+++ b/srcpkgs/occt/patches/fix-install-dir.patch
@@ -1,7 +1,7 @@
 diff --color -upr occt-7.7.1.orig/adm/cmake/occt_macros.cmake occt-7.7.1/adm/cmake/occt_macros.cmake
 --- occt-7.7.1.orig/adm/cmake/occt_macros.cmake	2023-05-31 20:05:47.619869450 +0200
 +++ occt-7.7.1/adm/cmake/occt_macros.cmake	2023-05-31 20:07:25.611036417 +0200
-@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
+@@ -762,7 +762,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
  
    install (CODE
    "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
diff --git a/srcpkgs/occt/patches/fix-osd-host.patch b/srcpkgs/occt/patches/fix-osd-host.patch
index ef705c7291381d..922f61072619db 100644
--- a/srcpkgs/occt/patches/fix-osd-host.patch
+++ b/srcpkgs/occt/patches/fix-osd-host.patch
@@ -2,12 +2,12 @@
 
 --- a/src/OSD/OSD_Host.cxx
 +++ b/src/OSD/OSD_Host.cxx
-@@ -124,7 +124,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+@@ -140,7 +140,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+   TCollection_AsciiString result, host;
  
-  host = HostName();
-  memcpy(&internet_address,
--        gethostbyname(host.ToCString()),
-+        gethostbyname("localhost"),
-         sizeof(struct hostent));
+   host = HostName();
+-  memcpy(&internet_address, gethostbyname(host.ToCString()), sizeof(struct hostent));
++  memcpy(&internet_address, gethostbyname("localhost"), sizeof(struct hostent));
  
-  // Gets each bytes into integers
+   // Gets each bytes into integers
+   a = (unsigned char)internet_address.h_addr_list[0][0];
diff --git a/srcpkgs/occt/patches/musl-fenv.patch b/srcpkgs/occt/patches/musl-fenv.patch
index a8a776ce29a9d0..9756cca207bbac 100644
--- a/srcpkgs/occt/patches/musl-fenv.patch
+++ b/srcpkgs/occt/patches/musl-fenv.patch
@@ -5,32 +5,32 @@ is probably wrong, but I don't have a replacement for the
 non-posix functions fegetexcept(3) and feenableexcept(3).
 """
 
---- a/src/OSD/OSD_signal.cxx.orig	2022-07-22 10:53:38.000000000 +0200
-+++ b/src/OSD/OSD_signal.cxx	2022-10-06 09:19:02.286414340 +0200
-@@ -761,7 +761,7 @@ typedef void (* SIG_PFV) (int);
+--- a/src/OSD/OSD_signal.cxx
++++ b/src/OSD/OSD_signal.cxx
+@@ -769,7 +769,7 @@ typedef void (*SIG_PFV)(int);
  
- #include <signal.h>
+   #include <signal.h>
  
--#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
-+#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) &&  defined(__GLIBC__)
-   #include <sys/signal.h>
- #endif
+-  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
++  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) && defined(__GLIBC__)
+     #include <sys/signal.h>
+   #endif
  
-@@ -977,7 +977,7 @@ static void SegvHandler(const int theSig
- //=======================================================================
- void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
+@@ -994,7 +994,7 @@ static void SegvHandler(const int              theSignal,
+ 
+ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
-   feclearexcept (FE_ALL_EXCEPT);
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
+   feclearexcept(FE_ALL_EXCEPT);
    if (theFloatingSignal)
    {
-@@ -1010,7 +1010,7 @@ void OSD::SetFloatingSignal (Standard_Bo
- //=======================================================================
+@@ -1025,7 +1025,7 @@ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
+ 
  Standard_Boolean OSD::ToCatchFloatingSignals()
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
    return (fegetexcept() & _OSD_FPX) != 0;
- #else
+   #else
    return Standard_False;
diff --git a/srcpkgs/occt/patches/musl-mallinfo.patch b/srcpkgs/occt/patches/musl-mallinfo.patch
index 1ce5b16b793f95..158d954fe9c52f 100644
--- a/srcpkgs/occt/patches/musl-mallinfo.patch
+++ b/srcpkgs/occt/patches/musl-mallinfo.patch
@@ -1,21 +1,32 @@
-In musl libc there is no struct mallinfo and no function mallinf()
-
---- a/src/OSD/OSD_MemInfo.cxx.orig	2022-10-06 09:21:55.466236104 +0200
-+++ b/src/OSD/OSD_MemInfo.cxx	2022-10-06 09:25:34.105323581 +0200
-@@ -188,12 +188,16 @@ void OSD_MemInfo::Update()
+--- a/src/OSD/OSD_MemInfo.cxx
++++ b/src/OSD/OSD_MemInfo.cxx
+@@ -165,18 +165,23 @@ void OSD_MemInfo::Update()
+   #elif (defined(__linux__) || defined(__linux))
+   if (IsActive(MemHeapUsage))
+   {
+-    #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+-      #if __GLIBC_PREREQ(2, 33)
++    #if defined(__GLIBC__)
++      #define HAS_MALLINFO
++      #if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 33)
+         #define HAS_MALLINFO2
+       #endif
      #endif
-   #endif
  
-+  #if defined(__GLIBC__)
-   #ifdef HAS_MALLINFO2
-     const struct mallinfo2 aMI = mallinfo2();
-   #else
-     const struct mallinfo aMI = mallinfo();
-   #endif
-     myCounters[MemHeapUsage] = aMI.uordblks;
-+  #else
-+    myCounters[MemHeapUsage] = 0;
-+  #endif
+-    #ifdef HAS_MALLINFO2
+-    const struct mallinfo2 aMI = mallinfo2();
++    #ifdef HAS_MALLINFO
++      #ifdef HAS_MALLINFO2
++      const struct mallinfo2 aMI = mallinfo2();
++      #else
++      const struct mallinfo aMI = mallinfo();
++      #endif
++      myCounters[MemHeapUsage] = aMI.uordblks;
+     #else
+-    const struct mallinfo aMI = mallinfo();
++      myCounters[MemHeapUsage] = 0;
+     #endif
+-    myCounters[MemHeapUsage] = aMI.uordblks;
    }
  
-   if (!IsActive (MemVirtual)
+   if (!IsActive(MemVirtual) && !IsActive(MemWorkingSet) && !IsActive(MemWorkingSetPeak)
diff --git a/srcpkgs/occt/template b/srcpkgs/occt/template
index 296a52de5a1b5a..8cc77ee02439fe 100644
--- a/srcpkgs/occt/template
+++ b/srcpkgs/occt/template
@@ -1,14 +1,13 @@
 # Template file for 'occt'
 pkgname=occt
-version=7.7.1
+version=7.9.0
 revision=1
 _gittag="V${version//./_}"
 build_style=cmake
-# XXX: re-enable -DUSE_TBB=ON if possible when updating
-configure_args="-DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
- -DINSTALL_SAMPLES=ON"
-makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tcl-devel
- tk-devel"
+configure_args="-DUSE_TBB=ON -DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
+ -DUSE_XLIB=OFF -DINSTALL_SAMPLES=ON"
+makedepends="tbb-devel freetype-devel glu-devel freeimage-devel gl2ps-devel
+ tcl-devel tk-devel"
 short_desc="OpenCASCADE Technology - library for CAD/CAM/CAE applications"
 maintainer="Piraty <mail@piraty.dev>"
 license="custom:LGPL-2.1-only-with-exceptions"
@@ -16,7 +15,7 @@ homepage="https://www.opencascade.com"
 # distfile: use git instead of official tarball, which requires registration
 # see https://www.opencascade.com/content/packaging-again-debian
 distfiles="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/${_gittag};sf=tgz>occt-${_gittag}.tar.gz"
-checksum=f413d30a8a06d6164e94860a652cbc96ea58fe262df36ce4eaa92a9e3561fd12
+checksum=ff118a524ec451867e8f0ac3b631522c98f2b4353c7dbf2786bf239589909ec6
 conflicts="oce>=0"
 if [ "$XBPS_TARGET_LIBC" = musl ]; then
 	makedepends+=" libexecinfo-devel"

From 0bbea48707b24a8c060f172740a5f26baf77fd88 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 2/7] freecad: rebuild for occt-7.9.0.

---
 srcpkgs/freecad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/freecad/template b/srcpkgs/freecad/template
index 06d5f0fa09ad45..8b9e44300ce144 100644
--- a/srcpkgs/freecad/template
+++ b/srcpkgs/freecad/template
@@ -1,7 +1,7 @@
 # Template file for 'freecad'
 pkgname=freecad
 version=1.0.0
-revision=2
+revision=3
 _pycxx_ver=7.1.8
 _ondsel_ver=91f70382beeb58b32432b5a82da3802e4c19199c
 build_style=cmake

From 709a6f95c7259389eeb7ac70c5b429ac2acb53d5 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 3/7] gmsh: rebuild for occt-7.9.0.

---
 srcpkgs/gmsh/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gmsh/template b/srcpkgs/gmsh/template
index c3727d90e4c93b..371b2f5cfc9c31 100644
--- a/srcpkgs/gmsh/template
+++ b/srcpkgs/gmsh/template
@@ -1,7 +1,7 @@
 # Template file for 'gmsh'
 pkgname=gmsh
 version=4.8.4
-revision=2
+revision=3
 build_style=cmake
 configure_args="-DENABLE_SYSTEM_CONTRIB=ON
  -DENABLE_HXT=$(vopt_if hxt ON OFF)

From c0fe7556a24f794cbfc79a729a47d2c7b3e5fc8e Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 4/7] horizon: rebuild for occt-7.9.0.

---
 srcpkgs/horizon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/horizon/template b/srcpkgs/horizon/template
index 16bbf70822d672..160df13f96fae3 100644
--- a/srcpkgs/horizon/template
+++ b/srcpkgs/horizon/template
@@ -1,7 +1,7 @@
 # Template file for 'horizon'
 pkgname=horizon
 version=2.5.0
-revision=3
+revision=4
 build_style=gnu-makefile
 make_build_args="GOLD="
 make_install_target="install install-man"

From 5a498fed09a712a008daa9bb1fd97ed8b3ccb247 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 5/7] kicad: rebuild for occt-7.9.0.

---
 srcpkgs/kicad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/kicad/template b/srcpkgs/kicad/template
index 1587e00209f05b..3c13aa75e7ca2e 100644
--- a/srcpkgs/kicad/template
+++ b/srcpkgs/kicad/template
@@ -2,7 +2,7 @@
 # XXX: keep in sync with kicad-doc
 pkgname=kicad
 version=9.0.0
-revision=1
+revision=2
 build_style=cmake
 build_helper="cmake-wxWidgets-gtk3"
 configure_args="-DKICAD_SCRIPTING_WXPYTHON=ON -DKICAD_USE_EGL=ON -DKICAD_BUILD_QA_TESTS=OFF

From bfc0cf836b482cce36d4a833c06238fc942890c0 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 6/7] librepcb: rebuild for occt-7.9.0.

---
 srcpkgs/librepcb/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/librepcb/template b/srcpkgs/librepcb/template
index eb46149e284e57..aa32d7f1ad2237 100644
--- a/srcpkgs/librepcb/template
+++ b/srcpkgs/librepcb/template
@@ -1,7 +1,7 @@
 # Template file for 'librepcb'
 pkgname=librepcb
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_QTQUICK_TEST=OFF"
 hostmakedepends="unzip qt5-qmake qt5-host-tools"

From 9fb91bf428f072c3fcb3e9a6254601712af67dc3 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:34 +0000
Subject: [PATCH 7/7] python3-occ: rebuild for occt-7.9.0.

---
 srcpkgs/python3-occ/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/python3-occ/template b/srcpkgs/python3-occ/template
index 1d02354f2c41c2..085a8e39794fea 100644
--- a/srcpkgs/python3-occ/template
+++ b/srcpkgs/python3-occ/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-occ'
 pkgname=python3-occ
 version=7.7.0
-revision=3
+revision=4
 archs="i686* x86_64* armv7l* aarch64* ppc*"
 build_style=cmake
 configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None"

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
  2025-02-23 18:45 ` [PR PATCH] [Updated] " ii8
@ 2025-02-23 20:09 ` ii8
  2025-03-15 16:30 ` Luciogi
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: ii8 @ 2025-02-23 20:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 450 bytes --]

New comment by ii8 on void-packages repository

https://github.com/void-linux/void-packages/pull/54462#issuecomment-2677090531

Comment:
FreeCAD needs OCCT 7.9 to work, python3-occ is pinned to exact OCCT versions and doesn't support OCCT 7.9, wat do?
Looks like python3-occ is a library and not used by anything, and it's homepage is a little odd lel: http://pythonocc.org
It's also named incorrectly it seems, should probably be python3-occ-core

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
  2025-02-23 18:45 ` [PR PATCH] [Updated] " ii8
  2025-02-23 20:09 ` ii8
@ 2025-03-15 16:30 ` Luciogi
  2025-03-15 16:31 ` Luciogi
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: Luciogi @ 2025-03-15 16:30 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 209 bytes --]

New comment by Luciogi on void-packages repository

https://github.com/void-linux/void-packages/pull/54462#issuecomment-2726769807

Comment:
Try occt version 7.8.1, which is compatible with pythonocct 7.8.1.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (2 preceding siblings ...)
  2025-03-15 16:30 ` Luciogi
@ 2025-03-15 16:31 ` Luciogi
  2025-03-15 16:33 ` Luciogi
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: Luciogi @ 2025-03-15 16:31 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 245 bytes --]

New comment by Luciogi on void-packages repository

https://github.com/void-linux/void-packages/pull/54462#issuecomment-2726769807

Comment:
Try occt version 7.8.1, which is compatible with pythonocct 7.8.1.1, also update python3-occ to 7.8.1.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (3 preceding siblings ...)
  2025-03-15 16:31 ` Luciogi
@ 2025-03-15 16:33 ` Luciogi
  2025-03-15 18:37 ` ii8
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: Luciogi @ 2025-03-15 16:33 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

New comment by Luciogi on void-packages repository

https://github.com/void-linux/void-packages/pull/54462#issuecomment-2726771379

Comment:
link #53291 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (4 preceding siblings ...)
  2025-03-15 16:33 ` Luciogi
@ 2025-03-15 18:37 ` ii8
  2025-03-19 15:27 ` Luciogi
                   ` (6 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: ii8 @ 2025-03-15 18:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 661 bytes --]

New comment by ii8 on void-packages repository

https://github.com/void-linux/void-packages/pull/54462#issuecomment-2726924920

Comment:
Are you sure? It seems a bit strange to me that packages have to be held back because another that depends on it requires an exact version but is behind. The latest version of OCCT 7.9 has bugfixes which we want. python3-occ should either be always up to date or forward compatible with never versions of occt otherwise it doesn't fit with the kind of versioning system that's used here.

I would consider removing this python3-occ package unless there's some reason it's needed, just waiting for input from a maintainer.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (5 preceding siblings ...)
  2025-03-15 18:37 ` ii8
@ 2025-03-19 15:27 ` Luciogi
  2025-04-16 20:20 ` [PR PATCH] [Updated] " ii8
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: Luciogi @ 2025-03-19 15:27 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 171 bytes --]

New comment by Luciogi on void-packages repository

https://github.com/void-linux/void-packages/pull/54462#issuecomment-2737067241

Comment:
umm you can remove python pkg

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PR PATCH] [Updated] occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (6 preceding siblings ...)
  2025-03-19 15:27 ` Luciogi
@ 2025-04-16 20:20 ` ii8
  2025-04-16 21:21 ` ii8
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: ii8 @ 2025-04-16 20:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 525 bytes --]

There is an updated pull request by ii8 against master on the void-packages repository

https://github.com/ii8/void-packages occt
https://github.com/void-linux/void-packages/pull/54462

occt: update to 7.9.0.
#### Testing the changes
- I tested the changes in this PR: **YES**

#### Local build testing
- I built this PR locally for my native architecture, x86_64-musl

This version fixes myriad segmentation faults in FreeCAD.

A patch file from https://github.com/void-linux/void-packages/pull/54462.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-occt-54462.patch --]
[-- Type: text/x-diff, Size: 142849 bytes --]

From b0aee68d66a945148f82a419c6b68f31ca43f253 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 17:44:19 +0000
Subject: [PATCH 1/8] occt: update to 7.9.0.

---
 common/shlibs                              | 122 ++++++++++-----------
 srcpkgs/occt/patches/fix-cmake-regex.patch |   2 +-
 srcpkgs/occt/patches/fix-install-dir.patch |   2 +-
 srcpkgs/occt/patches/fix-osd-host.patch    |  14 +--
 srcpkgs/occt/patches/musl-fenv.patch       |  38 +++----
 srcpkgs/occt/patches/musl-mallinfo.patch   |  45 +++++---
 srcpkgs/occt/template                      |  13 +--
 7 files changed, 123 insertions(+), 113 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index bec2f470613330..3cd61c02039fdf 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3453,67 +3453,67 @@ libvtkkissfft-9.3.so.1 vtk-9.3.0_1
 libvolume_key.so.1 volume_key-0.3.9_1
 libxxhash.so.0 libxxHash-0.6.5_2
 libcapnp_c.so.0 c-capnproto-0.3_1
-libTKernel.so.7.7 occt-7.7.1_1
-libTKXmlXCAF.so.7.7 occt-7.7.1_1
-libTKXmlTObj.so.7.7 occt-7.7.1_1
-libTKXmlL.so.7.7 occt-7.7.1_1
-libTKXml.so.7.7 occt-7.7.1_1
-libTKXSDRAW.so.7.7 occt-7.7.1_1
-libTKXSBase.so.7.7 occt-7.7.1_1
-libTKXMesh.so.7.7 occt-7.7.1_1
-libTKXDESTEP.so.7.7 occt-7.7.1_1
-libTKXDEIGES.so.7.7 occt-7.7.1_1
-libTKXDEDRAW.so.7.7 occt-7.7.1_1
-libTKXDECascade.so.7.7 occt-7.7.1_1
-libTKXDE.so.7.7 occt-7.7.1_1
-libTKXCAF.so.7.7 occt-7.7.1_1
-libTKViewerTest.so.7.7 occt-7.7.1_1
-libTKVRML.so.7.7 occt-7.7.1_1
-libTKVCAF.so.7.7 occt-7.7.1_1
-libTKV3d.so.7.7 occt-7.7.1_1
-libTKTopTest.so.7.7 occt-7.7.1_1
-libTKTopAlgo.so.7.7 occt-7.7.1_1
-libTKTObjDRAW.so.7.7 occt-7.7.1_1
-libTKTObj.so.7.7 occt-7.7.1_1
-libTKStdL.so.7.7 occt-7.7.1_1
-libTKStd.so.7.7 occt-7.7.1_1
-libTKShHealing.so.7.7 occt-7.7.1_1
-libTKService.so.7.7 occt-7.7.1_1
-libTKSTL.so.7.7 occt-7.7.1_1
-libTKSTEPBase.so.7.7 occt-7.7.1_1
-libTKSTEPAttr.so.7.7 occt-7.7.1_1
-libTKSTEP209.so.7.7 occt-7.7.1_1
-libTKSTEP.so.7.7 occt-7.7.1_1
-libTKRWMesh.so.7.7 occt-7.7.1_1
-libTKQADraw.so.7.7 occt-7.7.1_1
-libTKPrim.so.7.7 occt-7.7.1_1
-libTKOpenGlTest.so.7.7 occt-7.7.1_1
-libTKOpenGl.so.7.7 occt-7.7.1_1
-libTKOffset.so.7.7 occt-7.7.1_1
-libTKMeshVS.so.7.7 occt-7.7.1_1
-libTKMesh.so.7.7 occt-7.7.1_1
-libTKMath.so.7.7 occt-7.7.1_1
-libTKLCAF.so.7.7 occt-7.7.1_1
-libTKIGES.so.7.7 occt-7.7.1_1
-libTKHLR.so.7.7 occt-7.7.1_1
-libTKGeomBase.so.7.7 occt-7.7.1_1
-libTKGeomAlgo.so.7.7 occt-7.7.1_1
-libTKG3d.so.7.7 occt-7.7.1_1
-libTKG2d.so.7.7 occt-7.7.1_1
-libTKFillet.so.7.7 occt-7.7.1_1
-libTKFeat.so.7.7 occt-7.7.1_1
-libTKExpress.so.7.7 occt-7.7.1_1
-libTKDraw.so.7.7 occt-7.7.1_1
-libTKDCAF.so.7.7 occt-7.7.1_1
-libTKCDF.so.7.7 occt-7.7.1_1
-libTKCAF.so.7.7 occt-7.7.1_1
-libTKBool.so.7.7 occt-7.7.1_1
-libTKBinXCAF.so.7.7 occt-7.7.1_1
-libTKBinTObj.so.7.7 occt-7.7.1_1
-libTKBinL.so.7.7 occt-7.7.1_1
-libTKBin.so.7.7 occt-7.7.1_1
-libTKBRep.so.7.7 occt-7.7.1_1
-libTKBO.so.7.7 occt-7.7.1_1
+libTKernel.so.7.9 occt-7.9.0_1
+libTKXmlXCAF.so.7.9 occt-7.9.0_1
+libTKXmlTObj.so.7.9 occt-7.9.0_1
+libTKXmlL.so.7.9 occt-7.9.0_1
+libTKXml.so.7.9 occt-7.9.0_1
+libTKXSDRAW.so.7.9 occt-7.9.0_1
+libTKXSBase.so.7.9 occt-7.9.0_1
+libTKXMesh.so.7.9 occt-7.9.0_1
+libTKXDESTEP.so.7.9 occt-7.9.0_1
+libTKXDEIGES.so.7.9 occt-7.9.0_1
+libTKXDEDRAW.so.7.9 occt-7.9.0_1
+libTKXDECascade.so.7.9 occt-7.9.0_1
+libTKXDE.so.7.9 occt-7.9.0_1
+libTKXCAF.so.7.9 occt-7.9.0_1
+libTKViewerTest.so.7.9 occt-7.9.0_1
+libTKVRML.so.7.9 occt-7.9.0_1
+libTKVCAF.so.7.9 occt-7.9.0_1
+libTKV3d.so.7.9 occt-7.9.0_1
+libTKTopTest.so.7.9 occt-7.9.0_1
+libTKTopAlgo.so.7.9 occt-7.9.0_1
+libTKTObjDRAW.so.7.9 occt-7.9.0_1
+libTKTObj.so.7.9 occt-7.9.0_1
+libTKStdL.so.7.9 occt-7.9.0_1
+libTKStd.so.7.9 occt-7.9.0_1
+libTKShHealing.so.7.9 occt-7.9.0_1
+libTKService.so.7.9 occt-7.9.0_1
+libTKSTL.so.7.9 occt-7.9.0_1
+libTKSTEPBase.so.7.9 occt-7.9.0_1
+libTKSTEPAttr.so.7.9 occt-7.9.0_1
+libTKSTEP209.so.7.9 occt-7.9.0_1
+libTKSTEP.so.7.9 occt-7.9.0_1
+libTKRWMesh.so.7.9 occt-7.9.0_1
+libTKQADraw.so.7.9 occt-7.9.0_1
+libTKPrim.so.7.9 occt-7.9.0_1
+libTKOpenGlTest.so.7.9 occt-7.9.0_1
+libTKOpenGl.so.7.9 occt-7.9.0_1
+libTKOffset.so.7.9 occt-7.9.0_1
+libTKMeshVS.so.7.9 occt-7.9.0_1
+libTKMesh.so.7.9 occt-7.9.0_1
+libTKMath.so.7.9 occt-7.9.0_1
+libTKLCAF.so.7.9 occt-7.9.0_1
+libTKIGES.so.7.9 occt-7.9.0_1
+libTKHLR.so.7.9 occt-7.9.0_1
+libTKGeomBase.so.7.9 occt-7.9.0_1
+libTKGeomAlgo.so.7.9 occt-7.9.0_1
+libTKG3d.so.7.9 occt-7.9.0_1
+libTKG2d.so.7.9 occt-7.9.0_1
+libTKFillet.so.7.9 occt-7.9.0_1
+libTKFeat.so.7.9 occt-7.9.0_1
+libTKExpress.so.7.9 occt-7.9.0_1
+libTKDraw.so.7.9 occt-7.9.0_1
+libTKDCAF.so.7.9 occt-7.9.0_1
+libTKCDF.so.7.9 occt-7.9.0_1
+libTKCAF.so.7.9 occt-7.9.0_1
+libTKBool.so.7.9 occt-7.9.0_1
+libTKBinXCAF.so.7.9 occt-7.9.0_1
+libTKBinTObj.so.7.9 occt-7.9.0_1
+libTKBinL.so.7.9 occt-7.9.0_1
+libTKBin.so.7.9 occt-7.9.0_1
+libTKBRep.so.7.9 occt-7.9.0_1
+libTKBO.so.7.9 occt-7.9.0_1
 libargon2.so.1 libargon2-20171227_1
 libdazzle-1.0.so.0 libdazzle-3.28.0_1
 libjsonrpc-glib-1.0.so.1 jsonrpc-glib-3.28.0_1
diff --git a/srcpkgs/occt/patches/fix-cmake-regex.patch b/srcpkgs/occt/patches/fix-cmake-regex.patch
index f38e0108ac7089..6cc5918bd28960 100644
--- a/srcpkgs/occt/patches/fix-cmake-regex.patch
+++ b/srcpkgs/occt/patches/fix-cmake-regex.patch
@@ -3,7 +3,7 @@
 
 --- a/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 00:18:42.763819658 -0500
 +++ b/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 23:40:32.872489521 -0500
-@@ -26,7 +26,7 @@
+@@ -27,7 +27,7 @@
  if (OpenCASCADE_INSTALL_PREFIX MATCHES "/cmake$")
    get_filename_component (OpenCASCADE_INSTALL_PREFIX "${OpenCASCADE_INSTALL_PREFIX}" PATH)
  endif()
diff --git a/srcpkgs/occt/patches/fix-install-dir.patch b/srcpkgs/occt/patches/fix-install-dir.patch
index 931587bef99048..0dc6660f0a10f2 100644
--- a/srcpkgs/occt/patches/fix-install-dir.patch
+++ b/srcpkgs/occt/patches/fix-install-dir.patch
@@ -1,7 +1,7 @@
 diff --color -upr occt-7.7.1.orig/adm/cmake/occt_macros.cmake occt-7.7.1/adm/cmake/occt_macros.cmake
 --- occt-7.7.1.orig/adm/cmake/occt_macros.cmake	2023-05-31 20:05:47.619869450 +0200
 +++ occt-7.7.1/adm/cmake/occt_macros.cmake	2023-05-31 20:07:25.611036417 +0200
-@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
+@@ -762,7 +762,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
  
    install (CODE
    "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
diff --git a/srcpkgs/occt/patches/fix-osd-host.patch b/srcpkgs/occt/patches/fix-osd-host.patch
index ef705c7291381d..922f61072619db 100644
--- a/srcpkgs/occt/patches/fix-osd-host.patch
+++ b/srcpkgs/occt/patches/fix-osd-host.patch
@@ -2,12 +2,12 @@
 
 --- a/src/OSD/OSD_Host.cxx
 +++ b/src/OSD/OSD_Host.cxx
-@@ -124,7 +124,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+@@ -140,7 +140,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+   TCollection_AsciiString result, host;
  
-  host = HostName();
-  memcpy(&internet_address,
--        gethostbyname(host.ToCString()),
-+        gethostbyname("localhost"),
-         sizeof(struct hostent));
+   host = HostName();
+-  memcpy(&internet_address, gethostbyname(host.ToCString()), sizeof(struct hostent));
++  memcpy(&internet_address, gethostbyname("localhost"), sizeof(struct hostent));
  
-  // Gets each bytes into integers
+   // Gets each bytes into integers
+   a = (unsigned char)internet_address.h_addr_list[0][0];
diff --git a/srcpkgs/occt/patches/musl-fenv.patch b/srcpkgs/occt/patches/musl-fenv.patch
index a8a776ce29a9d0..9756cca207bbac 100644
--- a/srcpkgs/occt/patches/musl-fenv.patch
+++ b/srcpkgs/occt/patches/musl-fenv.patch
@@ -5,32 +5,32 @@ is probably wrong, but I don't have a replacement for the
 non-posix functions fegetexcept(3) and feenableexcept(3).
 """
 
---- a/src/OSD/OSD_signal.cxx.orig	2022-07-22 10:53:38.000000000 +0200
-+++ b/src/OSD/OSD_signal.cxx	2022-10-06 09:19:02.286414340 +0200
-@@ -761,7 +761,7 @@ typedef void (* SIG_PFV) (int);
+--- a/src/OSD/OSD_signal.cxx
++++ b/src/OSD/OSD_signal.cxx
+@@ -769,7 +769,7 @@ typedef void (*SIG_PFV)(int);
  
- #include <signal.h>
+   #include <signal.h>
  
--#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
-+#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) &&  defined(__GLIBC__)
-   #include <sys/signal.h>
- #endif
+-  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
++  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) && defined(__GLIBC__)
+     #include <sys/signal.h>
+   #endif
  
-@@ -977,7 +977,7 @@ static void SegvHandler(const int theSig
- //=======================================================================
- void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
+@@ -994,7 +994,7 @@ static void SegvHandler(const int              theSignal,
+ 
+ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
-   feclearexcept (FE_ALL_EXCEPT);
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
+   feclearexcept(FE_ALL_EXCEPT);
    if (theFloatingSignal)
    {
-@@ -1010,7 +1010,7 @@ void OSD::SetFloatingSignal (Standard_Bo
- //=======================================================================
+@@ -1025,7 +1025,7 @@ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
+ 
  Standard_Boolean OSD::ToCatchFloatingSignals()
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
    return (fegetexcept() & _OSD_FPX) != 0;
- #else
+   #else
    return Standard_False;
diff --git a/srcpkgs/occt/patches/musl-mallinfo.patch b/srcpkgs/occt/patches/musl-mallinfo.patch
index 1ce5b16b793f95..158d954fe9c52f 100644
--- a/srcpkgs/occt/patches/musl-mallinfo.patch
+++ b/srcpkgs/occt/patches/musl-mallinfo.patch
@@ -1,21 +1,32 @@
-In musl libc there is no struct mallinfo and no function mallinf()
-
---- a/src/OSD/OSD_MemInfo.cxx.orig	2022-10-06 09:21:55.466236104 +0200
-+++ b/src/OSD/OSD_MemInfo.cxx	2022-10-06 09:25:34.105323581 +0200
-@@ -188,12 +188,16 @@ void OSD_MemInfo::Update()
+--- a/src/OSD/OSD_MemInfo.cxx
++++ b/src/OSD/OSD_MemInfo.cxx
+@@ -165,18 +165,23 @@ void OSD_MemInfo::Update()
+   #elif (defined(__linux__) || defined(__linux))
+   if (IsActive(MemHeapUsage))
+   {
+-    #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+-      #if __GLIBC_PREREQ(2, 33)
++    #if defined(__GLIBC__)
++      #define HAS_MALLINFO
++      #if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 33)
+         #define HAS_MALLINFO2
+       #endif
      #endif
-   #endif
  
-+  #if defined(__GLIBC__)
-   #ifdef HAS_MALLINFO2
-     const struct mallinfo2 aMI = mallinfo2();
-   #else
-     const struct mallinfo aMI = mallinfo();
-   #endif
-     myCounters[MemHeapUsage] = aMI.uordblks;
-+  #else
-+    myCounters[MemHeapUsage] = 0;
-+  #endif
+-    #ifdef HAS_MALLINFO2
+-    const struct mallinfo2 aMI = mallinfo2();
++    #ifdef HAS_MALLINFO
++      #ifdef HAS_MALLINFO2
++      const struct mallinfo2 aMI = mallinfo2();
++      #else
++      const struct mallinfo aMI = mallinfo();
++      #endif
++      myCounters[MemHeapUsage] = aMI.uordblks;
+     #else
+-    const struct mallinfo aMI = mallinfo();
++      myCounters[MemHeapUsage] = 0;
+     #endif
+-    myCounters[MemHeapUsage] = aMI.uordblks;
    }
  
-   if (!IsActive (MemVirtual)
+   if (!IsActive(MemVirtual) && !IsActive(MemWorkingSet) && !IsActive(MemWorkingSetPeak)
diff --git a/srcpkgs/occt/template b/srcpkgs/occt/template
index 296a52de5a1b5a..acef04045566bc 100644
--- a/srcpkgs/occt/template
+++ b/srcpkgs/occt/template
@@ -1,14 +1,13 @@
 # Template file for 'occt'
 pkgname=occt
-version=7.7.1
+version=7.9.0
 revision=1
 _gittag="V${version//./_}"
 build_style=cmake
-# XXX: re-enable -DUSE_TBB=ON if possible when updating
-configure_args="-DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
- -DINSTALL_SAMPLES=ON"
-makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tcl-devel
- tk-devel"
+configure_args="-DUSE_TBB=ON -DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
+ -DUSE_XLIB=ON -DINSTALL_SAMPLES=ON"
+makedepends="tbb-devel freetype-devel glu-devel freeimage-devel gl2ps-devel
+ tcl-devel tk-devel"
 short_desc="OpenCASCADE Technology - library for CAD/CAM/CAE applications"
 maintainer="Piraty <mail@piraty.dev>"
 license="custom:LGPL-2.1-only-with-exceptions"
@@ -16,7 +15,7 @@ homepage="https://www.opencascade.com"
 # distfile: use git instead of official tarball, which requires registration
 # see https://www.opencascade.com/content/packaging-again-debian
 distfiles="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/${_gittag};sf=tgz>occt-${_gittag}.tar.gz"
-checksum=f413d30a8a06d6164e94860a652cbc96ea58fe262df36ce4eaa92a9e3561fd12
+checksum=ff118a524ec451867e8f0ac3b631522c98f2b4353c7dbf2786bf239589909ec6
 conflicts="oce>=0"
 if [ "$XBPS_TARGET_LIBC" = musl ]; then
 	makedepends+=" libexecinfo-devel"

From 2e93e039aa2a6889d63a3c95582125be0b89667c Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Wed, 16 Apr 2025 21:12:22 +0100
Subject: [PATCH 2/8] swig: update to 4.3.0.

---
 srcpkgs/swig/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/swig/template b/srcpkgs/swig/template
index bffc4e91ffb355..994b7acbb8b8f2 100644
--- a/srcpkgs/swig/template
+++ b/srcpkgs/swig/template
@@ -1,6 +1,6 @@
 # Template file for 'swig'
 pkgname=swig
-version=4.1.1
+version=4.3.0
 revision=1
 build_style=gnu-configure
 configure_args="--with-pcre2-prefix=${XBPS_CROSS_BASE}/usr"
@@ -11,4 +11,4 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="http://www.swig.org"
 distfiles="${SOURCEFORGE_SITE}/swig/swig-${version}.tar.gz"
-checksum=2af08aced8fcd65cdb5cc62426768914bedc735b1c250325203716f78e39ac9b
+checksum=f7203ef796f61af986c70c05816236cbd0d31b7aa9631e5ab53020ab7804aa9e

From 52fc68647a5a504a629cb37d9f1e60f670e65f8e Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:34 +0000
Subject: [PATCH 3/8] python3-occ: update to 7.9.0.

---
 srcpkgs/python3-occ/patches/occt-7.7.1.patch | 2561 ------------------
 srcpkgs/python3-occ/template                 |   11 +-
 2 files changed, 6 insertions(+), 2566 deletions(-)
 delete mode 100644 srcpkgs/python3-occ/patches/occt-7.7.1.patch

diff --git a/srcpkgs/python3-occ/patches/occt-7.7.1.patch b/srcpkgs/python3-occ/patches/occt-7.7.1.patch
deleted file mode 100644
index 70861a77853b69..00000000000000
--- a/srcpkgs/python3-occ/patches/occt-7.7.1.patch
+++ /dev/null
@@ -1,2561 +0,0 @@
-From 6ba4509edb333494d35a40c01192ab5e236acdda Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Mon, 3 Apr 2023 14:01:20 +0200
-Subject: [PATCH 1/4] update swig files to occt-771
-
----
- src/SWIG_files/common/EnumTemplates.i      |   1 -
- src/SWIG_files/headers/AIS_module.hxx      |   2 +
- src/SWIG_files/headers/BRepFill_module.hxx |   1 +
- src/SWIG_files/wrapper/AIS.i               | 127 ++++++++----
- src/SWIG_files/wrapper/AIS.pyi             |  12 +-
- src/SWIG_files/wrapper/BRepAlgo.i          |  26 +++
- src/SWIG_files/wrapper/BRepAlgo.pyi        |   2 +
- src/SWIG_files/wrapper/BRepBlend.i         |  44 +++--
- src/SWIG_files/wrapper/BRepBlend.pyi       |  14 +-
- src/SWIG_files/wrapper/BRepExtrema.i       | 218 +++++----------------
- src/SWIG_files/wrapper/BRepExtrema.pyi     |  23 +--
- src/SWIG_files/wrapper/BRepFill.i          |  48 +++++
- src/SWIG_files/wrapper/BRepFill.pyi        |  19 ++
- src/SWIG_files/wrapper/BRepOffset.i        |   3 +
- src/SWIG_files/wrapper/BRepOffset.pyi      |   2 +
- src/SWIG_files/wrapper/BRepOffsetAPI.i     |  11 ++
- src/SWIG_files/wrapper/BRepOffsetAPI.pyi   |   1 +
- src/SWIG_files/wrapper/BSplCLib.i          |  23 +++
- src/SWIG_files/wrapper/BSplCLib.pyi        |   3 +
- src/SWIG_files/wrapper/ChFiDS.i            |  14 ++
- src/SWIG_files/wrapper/ChFiDS.pyi          |   3 +
- src/SWIG_files/wrapper/GeomInt.i           |  23 +++
- src/SWIG_files/wrapper/GeomInt.pyi         |   5 +
- src/SWIG_files/wrapper/STEPCAFControl.i    | 140 ++++++-------
- src/SWIG_files/wrapper/STEPCAFControl.pyi  |  32 +--
- src/SWIG_files/wrapper/STEPConstruct.i     |  26 +++
- src/SWIG_files/wrapper/STEPConstruct.pyi   |   2 +
- src/SWIG_files/wrapper/ShapeUpgrade.i      |   1 +
- src/SWIG_files/wrapper/StdPrs.i            |  12 +-
- src/SWIG_files/wrapper/StdPrs.pyi          |   4 +-
- src/SWIG_files/wrapper/StepToGeom.i        |  16 --
- src/SWIG_files/wrapper/XCAFDoc.i           |  78 +++++---
- src/SWIG_files/wrapper/XCAFDoc.pyi         |  56 ++++--
- src/SWIG_files/wrapper/XCAFPrs.i           |  10 +-
- 34 files changed, 592 insertions(+), 410 deletions(-)
-
-diff --git a/src/SWIG_files/common/EnumTemplates.i b/src/SWIG_files/common/EnumTemplates.i
-index b66537d8..69af927f 100644
---- a/src/SWIG_files/common/EnumTemplates.i
-+++ b/src/SWIG_files/common/EnumTemplates.i
-@@ -15,7 +15,6 @@ ENUM_OUTPUT_TYPEMAPS(BRepOffset_Status);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_DisplayPriority);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_NameOfMaterial);
- ENUM_OUTPUT_TYPEMAPS(GeomAbs_Shape);
--ENUM_OUTPUT_TYPEMAPS(ProxPnt_Status);
- ENUM_OUTPUT_TYPEMAPS(Aspect_TypeOfLine);
- ENUM_OUTPUT_TYPEMAPS(PrsDim_KindOfSurface);
- ENUM_OUTPUT_TYPEMAPS(DsgPrs_ArrowSide);
-diff --git a/src/SWIG_files/headers/AIS_module.hxx b/src/SWIG_files/headers/AIS_module.hxx
-index ee7050ea..97fb3b69 100644
---- a/src/SWIG_files/headers/AIS_module.hxx
-+++ b/src/SWIG_files/headers/AIS_module.hxx
-@@ -22,12 +22,14 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<AIS.hxx>
- #include<AIS_AngleDimension.hxx>
- #include<AIS_Animation.hxx>
-+#include<AIS_AnimationAxisRotation.hxx>
- #include<AIS_AnimationCamera.hxx>
- #include<AIS_AnimationObject.hxx>
- #include<AIS_AnimationTimer.hxx>
- #include<AIS_AttributeFilter.hxx>
- #include<AIS_Axis.hxx>
- #include<AIS_BadEdgeFilter.hxx>
-+#include<AIS_BaseAnimationObject.hxx>
- #include<AIS_C0RegularityFilter.hxx>
- #include<AIS_CameraFrustum.hxx>
- #include<AIS_Chamf2dDimension.hxx>
-diff --git a/src/SWIG_files/headers/BRepFill_module.hxx b/src/SWIG_files/headers/BRepFill_module.hxx
-index 73975e24..ef638100 100644
---- a/src/SWIG_files/headers/BRepFill_module.hxx
-+++ b/src/SWIG_files/headers/BRepFill_module.hxx
-@@ -67,6 +67,7 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<BRepFill_SequenceOfSection.hxx>
- #include<BRepFill_ShapeLaw.hxx>
- #include<BRepFill_Sweep.hxx>
-+#include<BRepFill_ThruSectionErrorStatus.hxx>
- #include<BRepFill_TransitionStyle.hxx>
- #include<BRepFill_TrimEdgeTool.hxx>
- #include<BRepFill_TrimShellCorner.hxx>
-diff --git a/src/SWIG_files/wrapper/AIS.i b/src/SWIG_files/wrapper/AIS.i
-index bf1f6b10..8f58d69a 100644
---- a/src/SWIG_files/wrapper/AIS.i
-+++ b/src/SWIG_files/wrapper/AIS.i
-@@ -577,8 +577,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TrihedronOwner)
- %wrap_handle(AIS_TypeFilter)
- %wrap_handle(AIS_AnimationCamera)
--%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_Axis)
-+%wrap_handle(AIS_BaseAnimationObject)
- %wrap_handle(AIS_Circle)
- %wrap_handle(AIS_ColorScale)
- %wrap_handle(AIS_ConnectedInteractive)
-@@ -595,6 +595,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TextLabel)
- %wrap_handle(AIS_Triangulation)
- %wrap_handle(AIS_Trihedron)
-+%wrap_handle(AIS_AnimationAxisRotation)
-+%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_ColoredShape)
- %wrap_handle(AIS_TexturedShape)
- /* end handles declaration */
-@@ -8532,41 +8534,6 @@ opencascade::handle<V3d_View>
- 	}
- };
- 
--/****************************
--* class AIS_AnimationObject *
--****************************/
--class AIS_AnimationObject : public AIS_Animation {
--	public:
--		/****************** AIS_AnimationObject ******************/
--		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
--		%feature("compactdefaultargs") AIS_AnimationObject;
--		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param theanimationname animation identifier @param thecontext interactive context where object have been displayed @param theobject object to apply local transformation @param thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param thetrsfend local transformation at the end of animation.
--
--Parameters
------------
--theAnimationName: TCollection_AsciiString
--theContext: AIS_InteractiveContext
--theObject: AIS_InteractiveObject
--theTrsfStart: gp_Trsf
--theTrsfEnd: gp_Trsf
--
--Returns
---------
--None
--") AIS_AnimationObject;
--		 AIS_AnimationObject(const TCollection_AsciiString & theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
--
--};
--
--
--%make_alias(AIS_AnimationObject)
--
--%extend AIS_AnimationObject {
--	%pythoncode {
--	__repr__ = _dumps_object
--	}
--};
--
- /*****************
- * class AIS_Axis *
- *****************/
-@@ -8855,6 +8822,23 @@ None
- 	}
- };
- 
-+/********************************
-+* class AIS_BaseAnimationObject *
-+********************************/
-+%nodefaultctor AIS_BaseAnimationObject;
-+class AIS_BaseAnimationObject : public AIS_Animation {
-+	public:
-+};
-+
-+
-+%make_alias(AIS_BaseAnimationObject)
-+
-+%extend AIS_BaseAnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /**************************
- * class AIS_CameraFrustum *
- **************************/
-@@ -16143,6 +16127,77 @@ Standard_ShortReal
- 	}
- };
- 
-+/**********************************
-+* class AIS_AnimationAxisRotation *
-+**********************************/
-+class AIS_AnimationAxisRotation : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationAxisRotation ******************/
-+		/**** md5 signature: 819427e2c422233cc067da4633992952 ****/
-+		%feature("compactdefaultargs") AIS_AnimationAxisRotation;
-+		%feature("autodoc", "Constructor with initialization. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply rotation @param[in] theaxis rotation axis @param[in] theanglestart rotation angle at the start of animation @param[in] theangleend rotation angle at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theAxis: gp_Ax1
-+theAngleStart: float
-+theAngleEnd: float
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationAxisRotation;
-+		 AIS_AnimationAxisRotation(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Ax1 & theAxis, const Standard_Real theAngleStart, const Standard_Real theAngleEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationAxisRotation)
-+
-+%extend AIS_AnimationAxisRotation {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
-+/****************************
-+* class AIS_AnimationObject *
-+****************************/
-+class AIS_AnimationObject : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationObject ******************/
-+		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
-+		%feature("compactdefaultargs") AIS_AnimationObject;
-+		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply local transformation @param[in] thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param[in] thetrsfend local transformation at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theTrsfStart: gp_Trsf
-+theTrsfEnd: gp_Trsf
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationObject;
-+		 AIS_AnimationObject(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationObject)
-+
-+%extend AIS_AnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /*************************
- * class AIS_ColoredShape *
- *************************/
-diff --git a/src/SWIG_files/wrapper/AIS.pyi b/src/SWIG_files/wrapper/AIS.pyi
-index a75ef4ba..da4a3977 100644
---- a/src/SWIG_files/wrapper/AIS.pyi
-+++ b/src/SWIG_files/wrapper/AIS.pyi
-@@ -1021,9 +1021,6 @@ class AIS_AnimationCamera(AIS_Animation):
-     def SetView(self, theView: V3d_View) -> None: ...
-     def View(self) -> V3d_View: ...
- 
--class AIS_AnimationObject(AIS_Animation):
--    def __init__(self, theAnimationName: TCollection_AsciiString, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
--
- class AIS_Axis(AIS_InteractiveObject):
-     @overload
-     def __init__(self, aComponent: Geom_Line) -> None: ...
-@@ -1050,6 +1047,9 @@ class AIS_Axis(AIS_InteractiveObject):
-     def UnsetColor(self) -> None: ...
-     def UnsetWidth(self) -> None: ...
- 
-+class AIS_BaseAnimationObject(AIS_Animation):
-+    pass
-+
- class AIS_CameraFrustum(AIS_InteractiveObject):
-     def __init__(self) -> None: ...
-     def AcceptDisplayMode(self, theMode: int) -> bool: ...
-@@ -1652,6 +1652,12 @@ class AIS_XRTrackedDevice(AIS_InteractiveObject):
-     def SetUnitFactor(self, theFactor: float) -> None: ...
-     def UnitFactor(self) -> float: ...
- 
-+class AIS_AnimationAxisRotation(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theAxis: gp_Ax1, theAngleStart: float, theAngleEnd: float) -> None: ...
-+
-+class AIS_AnimationObject(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
-+
- class AIS_ColoredShape(AIS_Shape):
-     @overload
-     def __init__(self, theShape: TopoDS_Shape) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.i b/src/SWIG_files/wrapper/BRepAlgo.i
-index 3860648e..bd9e2f38 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.i
-+++ b/src/SWIG_files/wrapper/BRepAlgo.i
-@@ -921,6 +921,17 @@ None
- ") CutEdge;
- 		void CutEdge(const TopoDS_Edge & E, const TopTools_ListOfShape & VonE, TopTools_ListOfShape & NE);
- 
-+		/****************** GetTolConf ******************/
-+		/**** md5 signature: 7e9f7b87eb3b20edee9e3a86157928cd ****/
-+		%feature("compactdefaultargs") GetTolConf;
-+		%feature("autodoc", "Get maximal tolerance used for comparing distaces between vertices. .
-+
-+Returns
-+-------
-+float
-+") GetTolConf;
-+		Standard_Real GetTolConf();
-+
- 		/****************** GetVerticesForSubstitute ******************/
- 		/**** md5 signature: 3b0ea732ecf076dde3f931f0997c07aa ****/
- 		%feature("compactdefaultargs") GetVerticesForSubstitute;
-@@ -1014,6 +1025,21 @@ None
- ") SetImageVV;
- 		void SetImageVV(const BRepAlgo_Image & theImageVV);
- 
-+		/****************** SetTolConf ******************/
-+		/**** md5 signature: 1c312d5c00a3d856c91eb31857ae32c6 ****/
-+		%feature("compactdefaultargs") SetTolConf;
-+		%feature("autodoc", "Set maximal tolerance used for comparing distaces between vertices. .
-+
-+Parameters
-+----------
-+theTolConf: float
-+
-+Returns
-+-------
-+None
-+") SetTolConf;
-+		void SetTolConf(const Standard_Real theTolConf);
-+
- 		/****************** UpdateVEmap ******************/
- 		/**** md5 signature: 491681c63af221fbd7247e01d389bbc0 ****/
- 		%feature("compactdefaultargs") UpdateVEmap;
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.pyi b/src/SWIG_files/wrapper/BRepAlgo.pyi
-index 5ee7ab94..20ecddc9 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.pyi
-+++ b/src/SWIG_files/wrapper/BRepAlgo.pyi
-@@ -86,6 +86,7 @@ class BRepAlgo_Loop:
-     def AddConstEdges(self, LE: TopTools_ListOfShape) -> None: ...
-     def AddEdge(self, E: TopoDS_Edge, LV: TopTools_ListOfShape) -> None: ...
-     def CutEdge(self, E: TopoDS_Edge, VonE: TopTools_ListOfShape, NE: TopTools_ListOfShape) -> None: ...
-+    def GetTolConf(self) -> float: ...
-     def GetVerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def Init(self, F: TopoDS_Face) -> None: ...
-     def NewEdges(self, E: TopoDS_Edge) -> TopTools_ListOfShape: ...
-@@ -93,6 +94,7 @@ class BRepAlgo_Loop:
-     def NewWires(self) -> TopTools_ListOfShape: ...
-     def Perform(self) -> None: ...
-     def SetImageVV(self, theImageVV: BRepAlgo_Image) -> None: ...
-+    def SetTolConf(self, theTolConf: float) -> None: ...
-     def UpdateVEmap(self, theVEmap: TopTools_IndexedDataMapOfShapeListOfShape) -> None: ...
-     def VerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def WiresToFaces(self) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepBlend.i b/src/SWIG_files/wrapper/BRepBlend.i
-index 509a2525..b8131099 100644
---- a/src/SWIG_files/wrapper/BRepBlend.i
-+++ b/src/SWIG_files/wrapper/BRepBlend.i
-@@ -3508,7 +3508,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: e410fc1bc97982de557150e942b13c80 ****/
-+		/**** md5 signature: 5c6445d58f45808f7c3defd1db894a35 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3522,9 +3522,9 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -3533,10 +3533,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 78e8905aafd910d0fa3a7b23c096467b ****/
-+		/**** md5 signature: 452fb9b79df54fb801f2f70d066f611b ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3550,7 +3550,7 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecRst1: bool
- RecP1: bool
-@@ -3562,7 +3562,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5559,7 +5559,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 3ebeca31e507208cd42bab74df3ed6e3 ****/
-+		/**** md5 signature: 86cf3650fa597d7655c244c1866126f2 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5572,9 +5572,10 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5583,10 +5584,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 691664aa4fe132192d2ccf25ba05720a ****/
-+		/**** md5 signature: 429fbdc03f84a4a14fbebef94ad27ee5 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5599,7 +5600,8 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- RecRst: bool
- RecP: bool
-@@ -5610,7 +5612,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5795,7 +5797,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: ef3b3700f467db4ea875b65f539d9955 ****/
-+		/**** md5 signature: 6d94e3dcc7c71857d2c24ced3358703f ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5806,9 +5808,9 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5817,10 +5819,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: a2bca51a10d7f020b86504fe9860626e ****/
-+		/**** md5 signature: 92db8d0914da0712dd54b302697b3aa3 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5829,7 +5831,7 @@ Parameters
- F: Blend_Function
- Pdep: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- Pos1: TopAbs_State
- Pos2: TopAbs_State
-@@ -5838,10 +5840,10 @@ Returns
- -------
- bool
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 39c72a7c59d31a28e720252eee26feee ****/
-+		/**** md5 signature: 7464aaa5cedcb060541546a3a1ff5540 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5852,7 +5854,7 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecOnS1: bool
- RecOnS2: bool
-@@ -5862,7 +5864,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- 		/****************** SetDomainsToRecadre ******************/
- 		/**** md5 signature: 10664ebffbd6ed784502d7d4acfa5a93 ****/
-diff --git a/src/SWIG_files/wrapper/BRepBlend.pyi b/src/SWIG_files/wrapper/BRepBlend.pyi
-index 03deabc7..cbe9c845 100644
---- a/src/SWIG_files/wrapper/BRepBlend.pyi
-+++ b/src/SWIG_files/wrapper/BRepBlend.pyi
-@@ -346,8 +346,8 @@ class BRepBlend_RstRstLineBuilder:
-     def Decroch2Start(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_SurfCurvConstRadInv(Blend_SurfCurvFuncInv):
-     def __init__(self, S: Adaptor3d_Surface, C: Adaptor3d_Curve, Cg: Adaptor3d_Curve) -> None: ...
-@@ -519,8 +519,8 @@ class BRepBlend_SurfRstLineBuilder:
-     def DecrochStart(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, Tol2d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, Tol2d: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_Walking:
-     def __init__(self, Surf1: Adaptor3d_Surface, Surf2: Adaptor3d_Surface, Domain1: Adaptor3d_TopolTool, Domain2: Adaptor3d_TopolTool, HGuide: ChFiDS_ElSpine) -> None: ...
-@@ -536,11 +536,11 @@ class BRepBlend_Walking:
-     def Continu(self, F: Blend_Function, FInv: Blend_FuncInv, P: float, OnS1: bool) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-+    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-     def SetDomainsToRecadre(self, RecDomain1: Adaptor3d_TopolTool, RecDomain2: Adaptor3d_TopolTool) -> None: ...
-     def TwistOnS1(self) -> bool: ...
-     def TwistOnS2(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.i b/src/SWIG_files/wrapper/BRepExtrema.i
-index bc15b17e..18a48b42 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.i
-+++ b/src/SWIG_files/wrapper/BRepExtrema.i
-@@ -48,6 +48,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<gp_module.hxx>
- #include<Bnd_module.hxx>
- #include<BVH_module.hxx>
-+#include<Poly_module.hxx>
- #include<GeomAdaptor_module.hxx>
- #include<Geom_module.hxx>
- #include<Geom2d_module.hxx>
-@@ -55,6 +56,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<Adaptor2d_module.hxx>
- #include<TopLoc_module.hxx>
- #include<Message_module.hxx>
-+#include<TShort_module.hxx>
- #include<TColgp_module.hxx>
- #include<TColStd_module.hxx>
- #include<TCollection_module.hxx>
-@@ -68,6 +70,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- %import gp.i
- %import Bnd.i
- %import BVH.i
-+%import Poly.i
- 
- %pythoncode {
- from enum import IntEnum
-@@ -1645,7 +1648,7 @@ None
- 		 BRepExtrema_ProximityDistTool();
- 
- 		/****************** BRepExtrema_ProximityDistTool ******************/
--		/**** md5 signature: b9731e05e5136c7110e50a313b036c02 ****/
-+		/**** md5 signature: b080844c8fa666dae8c0e8db8d27e87e ****/
- 		%feature("compactdefaultargs") BRepExtrema_ProximityDistTool;
- 		%feature("autodoc", "Creates new tool for the given element sets.
- 
-@@ -1653,6 +1656,8 @@ Parameters
- ----------
- theSet1: BRepExtrema_TriangleSet
- theNbSamples1: int
-+theAddVertices1: BVH_Array3d
-+theAddStatus1: NCollection_Vector<ProxPnt_Status>
- theSet2: BRepExtrema_TriangleSet
- theShapeList1: BRepExtrema_ShapeList
- theShapeList2: BRepExtrema_ShapeList
-@@ -1661,7 +1666,7 @@ Returns
- -------
- None
- ") BRepExtrema_ProximityDistTool;
--		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
-+		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const BVH_Array3d & theAddVertices1, const NCollection_Vector<ProxPnt_Status> & theAddStatus1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
- 
- 		/****************** Accept ******************/
- 		/**** md5 signature: 47868288da8d60ae3574004f3eef6f3b ****/
-@@ -1679,6 +1684,40 @@ bool
- ") Accept;
- 		virtual Standard_Boolean Accept(const Standard_Integer theSgmIdx, const Standard_Real &);
- 
-+		/****************** IsEdgeOnBorder ******************/
-+		/**** md5 signature: 7f2df1d45fe4dd10cb81da19c83428fd ****/
-+		%feature("compactdefaultargs") IsEdgeOnBorder;
-+		%feature("autodoc", "Returns true if the edge is on the boarder.
-+
-+Parameters
-+----------
-+theTrgIdx: int
-+theFirstEdgeNodeIdx: int
-+theSecondEdgeNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsEdgeOnBorder;
-+		static Standard_Boolean IsEdgeOnBorder(const Standard_Integer theTrgIdx, const Standard_Integer theFirstEdgeNodeIdx, const Standard_Integer theSecondEdgeNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
-+		/****************** IsNodeOnBorder ******************/
-+		/**** md5 signature: 6a6c9031bf497d7acf6e95de1f2784f6 ****/
-+		%feature("compactdefaultargs") IsNodeOnBorder;
-+		%feature("autodoc", "Returns true if the node is on the boarder.
-+
-+Parameters
-+----------
-+theNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsNodeOnBorder;
-+		static Standard_Boolean IsNodeOnBorder(const Standard_Integer theNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
- 		/****************** LoadShapeLists ******************/
- 		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
- 		%feature("compactdefaultargs") LoadShapeLists;
-@@ -1787,178 +1826,10 @@ theMetric: float
- %extend BRepExtrema_ProximityDistTool {
- 	%pythoncode {
- 	__repr__ = _dumps_object
--	}
--};
--
--/***************************************
--* class BRepExtrema_ProximityValueTool *
--***************************************/
--class BRepExtrema_ProximityValueTool {
--	public:
--typedef typename BRepExtrema_ProximityDistTool ::ProxPnt_Status ProxPnt_Status;
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: f01190ce189b90d5b9278fbee66731a1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new unitialized proximity tool.
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool();
--
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: 457895b0f954d4aa93c3b2011e47f0e1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new proximity tool for the given element sets.
--
--Parameters
------------
--theSet1: BRepExtrema_TriangleSet
--theSet2: BRepExtrema_TriangleSet
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** Distance ******************/
--		/**** md5 signature: d47317206a0fb34e540004324dbfafd8 ****/
--		%feature("compactdefaultargs") Distance;
--		%feature("autodoc", "Returns the computed distance.
--
--Returns
---------
--float
--") Distance;
--		Standard_Real Distance();
--
--		/****************** IsDone ******************/
--		/**** md5 signature: e385477ab1bec806154173d4a550fd68 ****/
--		%feature("compactdefaultargs") IsDone;
--		%feature("autodoc", "Is proximity test completed?.
--
--Returns
---------
--bool
--") IsDone;
--		Standard_Boolean IsDone();
--
--		/****************** LoadShapeLists ******************/
--		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
--		%feature("compactdefaultargs") LoadShapeLists;
--		%feature("autodoc", "Loads the given list of subshapes into the proximity tool.
--
--Parameters
------------
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") LoadShapeLists;
--		void LoadShapeLists(const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** LoadTriangleSets ******************/
--		/**** md5 signature: 3a94a7860b973acbc6838bfe75b5b812 ****/
--		%feature("compactdefaultargs") LoadTriangleSets;
--		%feature("autodoc", "Loads the given element sets into the proximity tool.
--
--Parameters
------------
--theSet1: Handle ( BRepExtrema_TriangleSet )
--theSet2: Handle ( BRepExtrema_TriangleSet )
--
--Returns
---------
--None
--") LoadTriangleSets;
--		void LoadTriangleSets(const Handle ( BRepExtrema_TriangleSet ) & theSet1, const Handle ( BRepExtrema_TriangleSet ) & theSet2);
--
--		/****************** MarkDirty ******************/
--		/**** md5 signature: bd3f3e7de1b3b6a0c1da3082319fae2e ****/
--		%feature("compactdefaultargs") MarkDirty;
--		%feature("autodoc", "Marks test results as outdated.
--
--Returns
---------
--None
--") MarkDirty;
--		void MarkDirty();
--
--		/****************** Perform ******************/
--		/**** md5 signature: c2c8700606b770cff797eb33824bf0aa ****/
--		%feature("compactdefaultargs") Perform;
--		%feature("autodoc", "Performs the computation of the proximity value.
--
--Parameters
------------
--
--Returns
---------
--theTolerance: float
--") Perform;
--		void Perform(Standard_Real &OutValue);
--
--		/****************** ProximityPoints ******************/
--		/**** md5 signature: 4ddc607867ad4f349b192d8bb4196f92 ****/
--		%feature("compactdefaultargs") ProximityPoints;
--		%feature("autodoc", "Returns points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--thePoint1: gp_Pnt
--thePoint2: gp_Pnt
- 
--Returns
---------
--None
--") ProximityPoints;
--		void ProximityPoints(gp_Pnt & thePoint1, gp_Pnt & thePoint2);
--
--		/****************** ProximityPointsStatus ******************/
--		/**** md5 signature: cbb67aeda5a68bd79cbb58089638d3f8 ****/
--		%feature("compactdefaultargs") ProximityPointsStatus;
--		%feature("autodoc", "Returns status of points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--
--Returns
---------
--thePointStatus1: ProxPnt_Status
--thePointStatus2: ProxPnt_Status
--") ProximityPointsStatus;
--		void ProximityPointsStatus(ProxPnt_Status &OutValue, ProxPnt_Status &OutValue);
--
--		/****************** SetNbSamplePoints ******************/
--		/**** md5 signature: 200898431f5ab55f6d0477df1f50c3b9 ****/
--		%feature("compactdefaultargs") SetNbSamplePoints;
--		%feature("autodoc", "Sets number of sample points used for proximity calculation for each shape. if number is less or equal zero, all triangulation nodes are used.
--
--Parameters
------------
--theSamples1: int,optional
--	default value is 0
--theSamples2: int,optional
--	default value is 0
--
--Returns
---------
--None
--") SetNbSamplePoints;
--		void SetNbSamplePoints(const Standard_Integer theSamples1 = 0, const Standard_Integer theSamples2 = 0);
--
--};
--
--
--%extend BRepExtrema_ProximityValueTool {
--	%pythoncode {
--	__repr__ = _dumps_object
-+	@methodnotwrapped
-+	def LoadAdditionalPointsFirstSet(self):
-+		pass
- 	}
- };
- 
-@@ -1967,7 +1838,6 @@ None
- ***********************************/
- class BRepExtrema_ShapeProximity {
- 	public:
--typedef typename BRepExtrema_ProximityValueTool ::ProxPnt_Status ProxPnt_Status;
- 		/****************** BRepExtrema_ShapeProximity ******************/
- 		/**** md5 signature: 73b29b290349b3955b499c712de97888 ****/
- 		%feature("compactdefaultargs") BRepExtrema_ShapeProximity;
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.pyi b/src/SWIG_files/wrapper/BRepExtrema.pyi
-index 0738ed63..749fc5ef 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.pyi
-+++ b/src/SWIG_files/wrapper/BRepExtrema.pyi
-@@ -9,6 +9,7 @@ from OCC.Core.Message import *
- from OCC.Core.gp import *
- from OCC.Core.Bnd import *
- from OCC.Core.BVH import *
-+from OCC.Core.Poly import *
- 
- #the following typedef cannot be wrapped as is
- BRepExtrema_ShapeList = NewType('BRepExtrema_ShapeList', Any)
-@@ -163,8 +164,10 @@ class BRepExtrema_Poly:
- class BRepExtrema_ProximityDistTool():
-     @overload
-     def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theNbSamples1: int, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-+    @staticmethod
-+    def IsEdgeOnBorder(theTrgIdx: int, theFirstEdgeNodeIdx: int, theSecondEdgeNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-+    @staticmethod
-+    def IsNodeOnBorder(theNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-     def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-     def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
-     def Perform(self) -> None: ...
-@@ -172,20 +175,6 @@ class BRepExtrema_ProximityDistTool():
-     def ProximityPoints(self, thePoint1: BVH_Vec3d, thePoint2: BVH_Vec3d) -> None: ...
-     def RejectNode(self, theCornerMin: BVH_Vec3d, theCornerMax: BVH_Vec3d) -> Tuple[bool, float]: ...
- 
--class BRepExtrema_ProximityValueTool:
--    @overload
--    def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def Distance(self) -> float: ...
--    def IsDone(self) -> bool: ...
--    def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
--    def MarkDirty(self) -> None: ...
--    def Perform(self) -> float: ...
--    def ProximityPoints(self, thePoint1: gp_Pnt, thePoint2: gp_Pnt) -> None: ...
--    def SetNbSamplePoints(self, theSamples1: Optional[int] = 0, theSamples2: Optional[int] = 0) -> None: ...
--
- class BRepExtrema_ShapeProximity:
-     @overload
-     def __init__(self, theTolerance: Optional[float] = precision_Infinite()) -> None: ...
-@@ -271,3 +260,5 @@ class BRepExtrema_OverlapTool: ...
- # hsequence classes
- 
- BRepExtrema_Poly_Distance = BRepExtrema_Poly.Distance
-+BRepExtrema_ProximityDistTool_IsEdgeOnBorder = BRepExtrema_ProximityDistTool.IsEdgeOnBorder
-+BRepExtrema_ProximityDistTool_IsNodeOnBorder = BRepExtrema_ProximityDistTool.IsNodeOnBorder
-diff --git a/src/SWIG_files/wrapper/BRepFill.i b/src/SWIG_files/wrapper/BRepFill.i
-index 1b12746f..0281ab54 100644
---- a/src/SWIG_files/wrapper/BRepFill.i
-+++ b/src/SWIG_files/wrapper/BRepFill.i
-@@ -105,6 +105,16 @@ from OCC.Core.Exception import *
- };
- 
- /* public enums */
-+enum BRepFill_ThruSectionErrorStatus {
-+	BRepFill_ThruSectionErrorStatus_Done = 0,
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1,
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2,
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3,
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4,
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5,
-+	BRepFill_ThruSectionErrorStatus_Failed = 6,
-+};
-+
- enum BRepFill_TypeOfContact {
- 	BRepFill_NoContact = 0,
- 	BRepFill_Contact = 1,
-@@ -122,6 +132,22 @@ enum BRepFill_TransitionStyle {
- /* python proxy classes for enums */
- %pythoncode {
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+	BRepFill_ThruSectionErrorStatus_Done = 0
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5
-+	BRepFill_ThruSectionErrorStatus_Failed = 6
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
- 	BRepFill_NoContact = 0
- 	BRepFill_Contact = 1
-@@ -575,6 +601,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Edge & SubSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "No available documentation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 217046dd3125fb37abc6e15803e209f1 ****/
- 		%feature("compactdefaultargs") Init;
-@@ -1816,6 +1853,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Shape & SSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns status of the operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** IsMutableInput ******************/
- 		/**** md5 signature: 2df16e5a957577cfce65832aa2d90512 ****/
- 		%feature("compactdefaultargs") IsMutableInput;
-diff --git a/src/SWIG_files/wrapper/BRepFill.pyi b/src/SWIG_files/wrapper/BRepFill.pyi
-index b73b54f3..412b53b2 100644
---- a/src/SWIG_files/wrapper/BRepFill.pyi
-+++ b/src/SWIG_files/wrapper/BRepFill.pyi
-@@ -83,6 +83,23 @@ class BRepFill_SequenceOfSection:
-     def Value(self, theIndex: int) -> BRepFill_Section: ...
-     def SetValue(self, theIndex: int, theValue: BRepFill_Section) -> None: ...
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+    BRepFill_ThruSectionErrorStatus_Done: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotDone: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotSameTopology: int = ...
-+    BRepFill_ThruSectionErrorStatus_ProfilesInconsistent: int = ...
-+    BRepFill_ThruSectionErrorStatus_WrongUsage: int = ...
-+    BRepFill_ThruSectionErrorStatus_Null3DCurve: int = ...
-+    BRepFill_ThruSectionErrorStatus_Failed: int = ...
-+
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
-     BRepFill_NoContact: int = ...
-     BRepFill_Contact: int = ...
-@@ -139,6 +156,7 @@ class BRepFill_CompatibleWires:
-     def __init__(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SubSection: TopoDS_Edge) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def IsDegeneratedFirstSection(self) -> bool: ...
-     def IsDegeneratedLastSection(self) -> bool: ...
-@@ -255,6 +273,7 @@ class BRepFill_Generator:
-     def AddWire(self, Wire: TopoDS_Wire) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SSection: TopoDS_Shape) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def IsMutableInput(self) -> bool: ...
-     def Perform(self) -> None: ...
-     def ResultShape(self, theShape: TopoDS_Shape) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BRepOffset.i b/src/SWIG_files/wrapper/BRepOffset.i
-index d6800998..05add5f2 100644
---- a/src/SWIG_files/wrapper/BRepOffset.i
-+++ b/src/SWIG_files/wrapper/BRepOffset.i
-@@ -131,6 +131,7 @@ enum BRepOffset_Error {
- 	BRepOffset_CannotFuseVertices = 7,
- 	BRepOffset_CannotExtentEdge = 8,
- 	BRepOffset_UserBreak = 9,
-+	BRepOffset_MixedConnectivity = 10,
- };
- 
- enum BRepOffsetSimple_Status {
-@@ -171,6 +172,7 @@ class BRepOffset_Error(IntEnum):
- 	BRepOffset_CannotFuseVertices = 7
- 	BRepOffset_CannotExtentEdge = 8
- 	BRepOffset_UserBreak = 9
-+	BRepOffset_MixedConnectivity = 10
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
- BRepOffset_BadNormalsOnGeometry = BRepOffset_Error.BRepOffset_BadNormalsOnGeometry
-@@ -181,6 +183,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
- 	BRepOffsetSimple_OK = 0
-diff --git a/src/SWIG_files/wrapper/BRepOffset.pyi b/src/SWIG_files/wrapper/BRepOffset.pyi
-index 89a5e3e1..fd6f7478 100644
---- a/src/SWIG_files/wrapper/BRepOffset.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffset.pyi
-@@ -43,6 +43,7 @@ class BRepOffset_Error(IntEnum):
-     BRepOffset_CannotFuseVertices: int = ...
-     BRepOffset_CannotExtentEdge: int = ...
-     BRepOffset_UserBreak: int = ...
-+    BRepOffset_MixedConnectivity: int = ...
- 
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
-@@ -54,6 +55,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
-     BRepOffsetSimple_OK: int = ...
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.i b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-index 1f9ad1dd..df26f708 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.i
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-@@ -2558,6 +2558,17 @@ TopoDS_Shape
- ") GeneratedFace;
- 		TopoDS_Shape GeneratedFace(const TopoDS_Shape & Edge);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns the status of thrusection operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 82b061dc05f66b08422610d2d7504487 ****/
- 		%feature("compactdefaultargs") Init;
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-index 042de45f..815ee7e1 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-@@ -260,6 +260,7 @@ class BRepOffsetAPI_ThruSections(BRepBuilderAPI_MakeShape):
-     def FirstShape(self) -> TopoDS_Shape: ...
-     def Generated(self, S: TopoDS_Shape) -> TopTools_ListOfShape: ...
-     def GeneratedFace(self, Edge: TopoDS_Shape) -> TopoDS_Shape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, isSolid: Optional[bool] = False, ruled: Optional[bool] = False, pres3d: Optional[float] = 1.0e-06) -> None: ...
-     def IsMutableInput(self) -> bool: ...
-     def LastShape(self) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BSplCLib.i b/src/SWIG_files/wrapper/BSplCLib.i
-index f0b6635f..80aa4d80 100644
---- a/src/SWIG_files/wrapper/BSplCLib.i
-+++ b/src/SWIG_files/wrapper/BSplCLib.i
-@@ -2001,6 +2001,29 @@ InversionProblem: int
- ") Interpolate;
- 		static void Interpolate(const Standard_Integer Degree, const TColStd_Array1OfReal & FlatKnots, const TColStd_Array1OfReal & Parameters, const TColStd_Array1OfInteger & ContactOrderArray, const Standard_Integer ArrayDimension, Standard_Real &OutValue, Standard_Real &OutValue, Standard_Integer &OutValue);
- 
-+		/****************** Intervals ******************/
-+		/**** md5 signature: 6005dd7b642eb153ae7f9293cf41ffb5 ****/
-+		%feature("compactdefaultargs") Intervals;
-+		%feature("autodoc", "Splits the given range to bspline intervals of given continuity @param[in] theknots the knots of bspline @param[in] themults the knots' multiplicities @param[in] thedegree the degree of bspline @param[in] isperiodic the periodicity of bspline @param[in] thecontinuity the target interval's continuity @param[in] thefirst the begin of the target range @param[in] thelast the end of the target range @param[in] thetolerance the tolerance @param[in,out] theintervals the array to store intervals if isn't nullptr returns the number of intervals.
-+
-+Parameters
-+----------
-+theKnots: TColStd_Array1OfReal
-+theMults: TColStd_Array1OfInteger
-+theDegree: int
-+isPeriodic: bool
-+theContinuity: int
-+theFirst: float
-+theLast: float
-+theTolerance: float
-+theIntervals: TColStd_Array1OfReal *
-+
-+Returns
-+-------
-+int
-+") Intervals;
-+		static Standard_Integer Intervals(const TColStd_Array1OfReal & theKnots, const TColStd_Array1OfInteger & theMults, Standard_Integer theDegree, Standard_Boolean isPeriodic, Standard_Integer theContinuity, Standard_Real theFirst, Standard_Real theLast, Standard_Real theTolerance, TColStd_Array1OfReal * theIntervals);
-+
- 		/****************** IsRational ******************/
- 		/**** md5 signature: 5ee1bb4d64e0a78acc3cb994f1afcefa ****/
- 		%feature("compactdefaultargs") IsRational;
-diff --git a/src/SWIG_files/wrapper/BSplCLib.pyi b/src/SWIG_files/wrapper/BSplCLib.pyi
-index b8ac4682..671f76a0 100644
---- a/src/SWIG_files/wrapper/BSplCLib.pyi
-+++ b/src/SWIG_files/wrapper/BSplCLib.pyi
-@@ -278,6 +278,8 @@ class bsplclib:
-     @staticmethod
-     def Interpolate(Degree: int, FlatKnots: TColStd_Array1OfReal, Parameters: TColStd_Array1OfReal, ContactOrderArray: TColStd_Array1OfInteger, ArrayDimension: int) -> Tuple[float, float, int]: ...
-     @staticmethod
-+    def Intervals(theKnots: TColStd_Array1OfReal, theMults: TColStd_Array1OfInteger, theDegree: int, isPeriodic: bool, theContinuity: int, theFirst: float, theLast: float, theTolerance: float, theIntervals: TColStd_Array1OfReal) -> int: ...
-+    @staticmethod
-     def IsRational(Weights: TColStd_Array1OfReal, I1: int, I2: int, Epsilon: Optional[float] = 0.0) -> bool: ...
-     @staticmethod
-     def KnotAnalysis(Degree: int, Periodic: bool, CKnots: TColStd_Array1OfReal, CMults: TColStd_Array1OfInteger, KnotForm: GeomAbs_BSplKnotDistribution) -> int: ...
-@@ -566,6 +568,7 @@ bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
-+bsplclib_Intervals = bsplclib.Intervals
- bsplclib_IsRational = bsplclib.IsRational
- bsplclib_KnotAnalysis = bsplclib.KnotAnalysis
- bsplclib_KnotForm = bsplclib.KnotForm
-diff --git a/src/SWIG_files/wrapper/ChFiDS.i b/src/SWIG_files/wrapper/ChFiDS.i
-index d60e552a..b8096939 100644
---- a/src/SWIG_files/wrapper/ChFiDS.i
-+++ b/src/SWIG_files/wrapper/ChFiDS.i
-@@ -121,6 +121,7 @@ enum ChFiDS_TypeOfConcavity {
- 	ChFiDS_Tangential = 2,
- 	ChFiDS_FreeBound = 3,
- 	ChFiDS_Other = 4,
-+	ChFiDS_Mixed = 5,
- };
- 
- /* end public enums declaration */
-@@ -178,11 +179,13 @@ class ChFiDS_TypeOfConcavity(IntEnum):
- 	ChFiDS_Tangential = 2
- 	ChFiDS_FreeBound = 3
- 	ChFiDS_Other = 4
-+	ChFiDS_Mixed = 5
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- };
- /* end python proxy for enums */
- 
-@@ -2029,6 +2032,17 @@ TopoDS_Vertex
- ") FirstVertex;
- 		TopoDS_Vertex FirstVertex();
- 
-+		/****************** GetTolesp ******************/
-+		/**** md5 signature: 217c13748b3cb2bf2cc59e96cafe8207 ****/
-+		%feature("compactdefaultargs") GetTolesp;
-+		%feature("autodoc", "Return tolesp parameter.
-+
-+Returns
-+-------
-+float
-+") GetTolesp;
-+		Standard_Real GetTolesp();
-+
- 		/****************** GetType ******************/
- 		/**** md5 signature: 6d4e6ae7972633971ba343e8afc91aa1 ****/
- 		%feature("compactdefaultargs") GetType;
-diff --git a/src/SWIG_files/wrapper/ChFiDS.pyi b/src/SWIG_files/wrapper/ChFiDS.pyi
-index 6543ea1a..d1884594 100644
---- a/src/SWIG_files/wrapper/ChFiDS.pyi
-+++ b/src/SWIG_files/wrapper/ChFiDS.pyi
-@@ -192,12 +192,14 @@ class ChFiDS_TypeOfConcavity(IntEnum):
-     ChFiDS_Tangential: int = ...
-     ChFiDS_FreeBound: int = ...
-     ChFiDS_Other: int = ...
-+    ChFiDS_Mixed: int = ...
- 
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- 
- class ChFiDS_CircSection:
-     def __init__(self) -> None: ...
-@@ -351,6 +353,7 @@ class ChFiDS_Spine(Standard_Transient):
-     def FirstParameter(self, IndexSpine: int) -> float: ...
-     def FirstStatus(self) -> ChFiDS_State: ...
-     def FirstVertex(self) -> TopoDS_Vertex: ...
-+    def GetTolesp(self) -> float: ...
-     def GetType(self) -> GeomAbs_CurveType: ...
-     def GetTypeOfConcavity(self) -> ChFiDS_TypeOfConcavity: ...
-     def HasFirstTgt(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/GeomInt.i b/src/SWIG_files/wrapper/GeomInt.i
-index a01b7841..9d84060c 100644
---- a/src/SWIG_files/wrapper/GeomInt.i
-+++ b/src/SWIG_files/wrapper/GeomInt.i
-@@ -936,6 +936,29 @@ opencascade::handle<Geom_Curve>
- ") Boundary;
- 		const opencascade::handle<Geom_Curve> & Boundary(const Standard_Integer Index);
- 
-+		/****************** BuildPCurves ******************/
-+		/**** md5 signature: 6965f43fd020f13216b45cd065743faa ****/
-+		%feature("compactdefaultargs") BuildPCurves;
-+		%feature("autodoc", "Creates 2d-curve on given surface from given 3d-curve.
-+
-+Parameters
-+----------
-+theFirst: float
-+theLast: float
-+theUmin: float
-+theUmax: float
-+theVmin: float
-+theVmax: float
-+theSurface: Geom_Surface
-+theCurve: Geom_Curve
-+theCurve2d: Geom2d_Curve
-+
-+Returns
-+-------
-+theTol: float
-+") BuildPCurves;
-+		static void BuildPCurves(const Standard_Real theFirst, const Standard_Real theLast, const Standard_Real theUmin, const Standard_Real theUmax, const Standard_Real theVmin, const Standard_Real theVmax, Standard_Real &OutValue, const opencascade::handle<Geom_Surface> & theSurface, const opencascade::handle<Geom_Curve> & theCurve, opencascade::handle<Geom2d_Curve> & theCurve2d);
-+
- 		/****************** BuildPCurves ******************/
- 		/**** md5 signature: 2c2bdb53423075c70323712785098b12 ****/
- 		%feature("compactdefaultargs") BuildPCurves;
-diff --git a/src/SWIG_files/wrapper/GeomInt.pyi b/src/SWIG_files/wrapper/GeomInt.pyi
-index eae46ba0..c6076fec 100644
---- a/src/SWIG_files/wrapper/GeomInt.pyi
-+++ b/src/SWIG_files/wrapper/GeomInt.pyi
-@@ -110,6 +110,10 @@ class GeomInt_IntSS:
-     @overload
-     def __init__(self, S1: Geom_Surface, S2: Geom_Surface, Tol: float, Approx: Optional[bool] = True, ApproxS1: Optional[bool] = False, ApproxS2: Optional[bool] = False) -> None: ...
-     def Boundary(self, Index: int) -> Geom_Curve: ...
-+    @overload
-+    @staticmethod
-+    def BuildPCurves(theFirst: float, theLast: float, theUmin: float, theUmax: float, theVmin: float, theVmax: float, theSurface: Geom_Surface, theCurve: Geom_Curve, theCurve2d: Geom2d_Curve) -> float: ...
-+    @overload
-     @staticmethod
-     def BuildPCurves(f: float, l: float, S: Geom_Surface, C: Geom_Curve, C2d: Geom2d_Curve) -> float: ...
-     def HasLineOnS1(self, Index: int) -> bool: ...
-@@ -525,6 +529,7 @@ class GeomInt_WLApprox: ...
- 
- geomint_AdjustPeriodic = geomint.AdjustPeriodic
- GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
-+GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
- GeomInt_IntSS_MakeBSpline = GeomInt_IntSS.MakeBSpline
- GeomInt_IntSS_MakeBSpline2d = GeomInt_IntSS.MakeBSpline2d
- GeomInt_IntSS_TreatRLine = GeomInt_IntSS.TreatRLine
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.i b/src/SWIG_files/wrapper/STEPCAFControl.i
-index 3ddc1ba8..9372c840 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.i
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.i
-@@ -1849,24 +1849,24 @@ None
- 		 STEPCAFControl_Writer();
- 
- 		/****************** STEPCAFControl_Writer ******************/
--		/**** md5 signature: 70a513d4d628947fa1e98ed8e35359d9 ****/
-+		/**** md5 signature: dedf68dbebf4d519616966632e9764a8 ****/
- 		%feature("compactdefaultargs") STEPCAFControl_Writer;
- 		%feature("autodoc", "Creates a reader tool and attaches it to an already existing session clears the session if it was not yet set for step clears the internal data structures.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") STEPCAFControl_Writer;
--		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** ChangeWriter ******************/
--		/**** md5 signature: 9719ebc8336482d007d450c0e3b00713 ****/
-+		/**** md5 signature: acee09144e4dec42ed602fde52975129 ****/
- 		%feature("compactdefaultargs") ChangeWriter;
- 		%feature("autodoc", "Returns basic reader for root file.
- 
-@@ -1877,39 +1877,39 @@ STEPControl_Writer
- 		STEPControl_Writer & ChangeWriter();
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: 4f90b7104efa0649e14f70ad09ab8e61 ****/
-+		/**** md5 signature: 0769b22e71152aabd75dace01164fc2b ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its original label returns false if no external file with given name is read.
- 
- Parameters
- ----------
--L: TDF_Label
--ef: STEPCAFControl_ExternFile
-+theLabel: TDF_Label
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const TDF_Label & L, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(const TDF_Label & theLabel, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: ad0d6b0b3be01575d180dd24c55cd264 ****/
-+		/**** md5 signature: f77e0b8157371b505bc136b8bd33443e ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its name returns false if no external file with given name is read.
- 
- Parameters
- ----------
--name: char *
--ef: STEPCAFControl_ExternFile
-+theName: str
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const char * name, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(Standard_CString theName, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFiles ******************/
--		/**** md5 signature: 1154c88bc3253c7291077317c11363ab ****/
-+		/**** md5 signature: 08a0b41df731275c7119f8910e47970c ****/
- 		%feature("compactdefaultargs") ExternFiles;
- 		%feature("autodoc", "Returns data on external files returns null handle if no external files are read.
- 
-@@ -1920,7 +1920,7 @@ NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_
- 		const NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_ExternFile>> & ExternFiles();
- 
- 		/****************** GetColorMode ******************/
--		/**** md5 signature: 010da6a8a0e8a61fdb607fd6faba2b56 ****/
-+		/**** md5 signature: cddb885e605f1794a5a6486023f65736 ****/
- 		%feature("compactdefaultargs") GetColorMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1931,7 +1931,7 @@ bool
- 		Standard_Boolean GetColorMode();
- 
- 		/****************** GetDimTolMode ******************/
--		/**** md5 signature: 2eed8e0bb30a6f85d0c500a8d4b9e16c ****/
-+		/**** md5 signature: 5f3c2fc2e581a2ea711f9607cd0a817a ****/
- 		%feature("compactdefaultargs") GetDimTolMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1942,7 +1942,7 @@ bool
- 		Standard_Boolean GetDimTolMode();
- 
- 		/****************** GetLayerMode ******************/
--		/**** md5 signature: d677385c303e067613f92bc738509727 ****/
-+		/**** md5 signature: b6b1458608d2429d13e63a07c0b392d8 ****/
- 		%feature("compactdefaultargs") GetLayerMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1953,7 +1953,7 @@ bool
- 		Standard_Boolean GetLayerMode();
- 
- 		/****************** GetMaterialMode ******************/
--		/**** md5 signature: cda125e3ff8f835393b9894e3f229aea ****/
-+		/**** md5 signature: 2057a4ef866086868ba91cb34e6ad09a ****/
- 		%feature("compactdefaultargs") GetMaterialMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1964,7 +1964,7 @@ bool
- 		Standard_Boolean GetMaterialMode();
- 
- 		/****************** GetNameMode ******************/
--		/**** md5 signature: 2dd32a893d6f5f4666ac3752ace2d12f ****/
-+		/**** md5 signature: 1097f532a68b4625a0108cddc8366238 ****/
- 		%feature("compactdefaultargs") GetNameMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1975,7 +1975,7 @@ bool
- 		Standard_Boolean GetNameMode();
- 
- 		/****************** GetPropsMode ******************/
--		/**** md5 signature: 3b2f4c2b61084d1e067d83421e0ea81d ****/
-+		/**** md5 signature: 99cee0ed60040ac88dbf6e950f82a10e ****/
- 		%feature("compactdefaultargs") GetPropsMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1986,7 +1986,7 @@ bool
- 		Standard_Boolean GetPropsMode();
- 
- 		/****************** GetSHUOMode ******************/
--		/**** md5 signature: 74c5f048b04741ef5abfe259b5c453cd ****/
-+		/**** md5 signature: 4e3a3a7f89647ad6b4f35f24a42234d6 ****/
- 		%feature("compactdefaultargs") GetSHUOMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1997,31 +1997,31 @@ bool
- 		Standard_Boolean GetSHUOMode();
- 
- 		/****************** Init ******************/
--		/**** md5 signature: 13544ae418c98602c6eaed6faea8f526 ****/
-+		/**** md5 signature: e7d3f870615865a6686f75c3aa077ff3 ****/
- 		%feature("compactdefaultargs") Init;
- 		%feature("autodoc", "Clears the internal data structures and attaches to a new session clears the session if it was not yet set for step.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") Init;
--		void Init(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		void Init(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 82a9ff51a493dfcaea368ecaef792fdb ****/
-+		/**** md5 signature: 624f8c3670df66af47c4a9af2967eb2a ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: TCollection_AsciiString
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2029,17 +2029,17 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const TCollection_AsciiString & filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, TCollection_AsciiString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 1ef00b1bd520cd3b05cc4f00e91c494d ****/
-+		/**** md5 signature: 90b76d8d692f1926baa1d9dd3db9018b ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "Transfers a document and writes it to a step file returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: char *
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2047,124 +2047,124 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const char * filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, Standard_CString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** SetColorMode ******************/
--		/**** md5 signature: e8d41838c31a9460a1c83d84b1f572a1 ****/
-+		/**** md5 signature: f341158b4cc5262e2e5cb7b941cc9031 ****/
- 		%feature("compactdefaultargs") SetColorMode;
- 		%feature("autodoc", "Set colormode for indicate write colors or not.
- 
- Parameters
- ----------
--colormode: bool
-+theColorMode: bool
- 
- Returns
- -------
- None
- ") SetColorMode;
--		void SetColorMode(const Standard_Boolean colormode);
-+		void SetColorMode(const Standard_Boolean theColorMode);
- 
- 		/****************** SetDimTolMode ******************/
--		/**** md5 signature: 18d408609aea9a67d1d1e15d923773db ****/
-+		/**** md5 signature: 08cd53498196841f3c3a5c0e281a464f ****/
- 		%feature("compactdefaultargs") SetDimTolMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--dimtolmode: bool
-+theDimTolMode: bool
- 
- Returns
- -------
- None
- ") SetDimTolMode;
--		void SetDimTolMode(const Standard_Boolean dimtolmode);
-+		void SetDimTolMode(const Standard_Boolean theDimTolMode);
- 
- 		/****************** SetLayerMode ******************/
--		/**** md5 signature: 3ec21c8de4b114a83bb0b34cb3b98662 ****/
-+		/**** md5 signature: d164352478699d01fe5d59c680c2a74d ****/
- 		%feature("compactdefaultargs") SetLayerMode;
- 		%feature("autodoc", "Set layermode for indicate write layers or not.
- 
- Parameters
- ----------
--layermode: bool
-+theLayerMode: bool
- 
- Returns
- -------
- None
- ") SetLayerMode;
--		void SetLayerMode(const Standard_Boolean layermode);
-+		void SetLayerMode(const Standard_Boolean theLayerMode);
- 
- 		/****************** SetMaterialMode ******************/
--		/**** md5 signature: ef4abdfa06b076742a69b17150f91d88 ****/
-+		/**** md5 signature: 932571d6d0df2e34fd2487f6025f4956 ****/
- 		%feature("compactdefaultargs") SetMaterialMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--matmode: bool
-+theMaterialMode: bool
- 
- Returns
- -------
- None
- ") SetMaterialMode;
--		void SetMaterialMode(const Standard_Boolean matmode);
-+		void SetMaterialMode(const Standard_Boolean theMaterialMode);
- 
- 		/****************** SetNameMode ******************/
--		/**** md5 signature: 43ccb5d3fb024d8191f251ee74d0f6ba ****/
-+		/**** md5 signature: a24984c6ce274882f02601c13cf73b9a ****/
- 		%feature("compactdefaultargs") SetNameMode;
- 		%feature("autodoc", "Set namemode for indicate write name or not.
- 
- Parameters
- ----------
--namemode: bool
-+theNameMode: bool
- 
- Returns
- -------
- None
- ") SetNameMode;
--		void SetNameMode(const Standard_Boolean namemode);
-+		void SetNameMode(const Standard_Boolean theNameMode);
- 
- 		/****************** SetPropsMode ******************/
--		/**** md5 signature: 97f3b34eb7a1e38c6cf17d5c26f938a6 ****/
-+		/**** md5 signature: fbb288fb7a76bf6b9cd3acd70d056a7f ****/
- 		%feature("compactdefaultargs") SetPropsMode;
- 		%feature("autodoc", "Propsmode for indicate write validation properties or not.
- 
- Parameters
- ----------
--propsmode: bool
-+thePropsMode: bool
- 
- Returns
- -------
- None
- ") SetPropsMode;
--		void SetPropsMode(const Standard_Boolean propsmode);
-+		void SetPropsMode(const Standard_Boolean thePropsMode);
- 
- 		/****************** SetSHUOMode ******************/
--		/**** md5 signature: ad06ed8b923731ee7b75bf3d7074f299 ****/
-+		/**** md5 signature: 39955bf97fe8d6a6d6b3b211a859f216 ****/
- 		%feature("compactdefaultargs") SetSHUOMode;
- 		%feature("autodoc", "Set shuo mode for indicate write shuo or not.
- 
- Parameters
- ----------
--shuomode: bool
-+theSHUOMode: bool
- 
- Returns
- -------
- None
- ") SetSHUOMode;
--		void SetSHUOMode(const Standard_Boolean shuomode);
-+		void SetSHUOMode(const Standard_Boolean theSHUOMode);
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 2616e7e1bc1f8548fb5e464651c0f720 ****/
-+		/**** md5 signature: dd7ebbdc1c22d7845ad531885273adee ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Transfers a document (or single label) to a step model the mode of translation of shape is asis if multi is not null pointer, it switches to multifile mode (with external refs), and string pointed by <multi> gives prefix for names of extern files (can be empty string) returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--mode: STEPControl_StepModelType,optional
-+theDoc: TDocStd_Document
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2173,19 +2173,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & doc, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & theDoc, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 3230c3763f234bd8211762a290f20e3d ****/
-+		/**** md5 signature: 40f710aeab310ab1eff9bbdbe733b162 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Method to transfer part of the document specified by label.
- 
- Parameters
- ----------
--L: TDF_Label
--mode: STEPControl_StepModelType,optional
-+theLabel: TDF_Label
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2194,19 +2194,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_Label & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_Label & theLabel, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 7533cb05eb0d45c4c5142f45de14069a ****/
-+		/**** md5 signature: 4e3f0900d966cc07a5e2191b2b4ba7a6 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Mehod to writing sequence of root assemblies or part of the file specified by use by one label .
- 
- Parameters
- ----------
--L: TDF_LabelSequence
--mode: STEPControl_StepModelType,optional
-+theLabelSeq: TDF_LabelSequence
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2215,7 +2215,7 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_LabelSequence & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_LabelSequence & theLabelSeq, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Write ******************/
- 		/**** md5 signature: 14544d6ececf228a5871ef6afa0279ae ****/
-@@ -2248,7 +2248,7 @@ IFSelect_ReturnStatus
- 		IFSelect_ReturnStatus WriteStream(std::ostream & theStream);
- 
- 		/****************** Writer ******************/
--		/**** md5 signature: 70b6d632350a5ba6ff972c4b437432a0 ****/
-+		/**** md5 signature: 056d4f3221d283b7d58d92ddd5c40dd7 ****/
- 		%feature("compactdefaultargs") Writer;
- 		%feature("autodoc", "Returns basic reader as const.
- 
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.pyi b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-index 896eedcf..9160ffa9 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.pyi
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-@@ -175,12 +175,12 @@ class STEPCAFControl_Writer:
-     @overload
-     def __init__(self) -> None: ...
-     @overload
--    def __init__(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def __init__(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     def ChangeWriter(self) -> STEPControl_Writer: ...
-     @overload
--    def ExternFile(self, L: TDF_Label, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theLabel: TDF_Label, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     @overload
--    def ExternFile(self, name: str, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theName: str, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     def ExternFiles(self) -> False: ...
-     def GetColorMode(self) -> bool: ...
-     def GetDimTolMode(self) -> bool: ...
-@@ -189,24 +189,24 @@ class STEPCAFControl_Writer:
-     def GetNameMode(self) -> bool: ...
-     def GetPropsMode(self) -> bool: ...
-     def GetSHUOMode(self) -> bool: ...
--    def Init(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def Init(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: TCollection_AsciiString, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
--    def SetColorMode(self, colormode: bool) -> None: ...
--    def SetDimTolMode(self, dimtolmode: bool) -> None: ...
--    def SetLayerMode(self, layermode: bool) -> None: ...
--    def SetMaterialMode(self, matmode: bool) -> None: ...
--    def SetNameMode(self, namemode: bool) -> None: ...
--    def SetPropsMode(self, propsmode: bool) -> None: ...
--    def SetSHUOMode(self, shuomode: bool) -> None: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def SetColorMode(self, theColorMode: bool) -> None: ...
-+    def SetDimTolMode(self, theDimTolMode: bool) -> None: ...
-+    def SetLayerMode(self, theLayerMode: bool) -> None: ...
-+    def SetMaterialMode(self, theMaterialMode: bool) -> None: ...
-+    def SetNameMode(self, theNameMode: bool) -> None: ...
-+    def SetPropsMode(self, thePropsMode: bool) -> None: ...
-+    def SetSHUOMode(self, theSHUOMode: bool) -> None: ...
-     @overload
--    def Transfer(self, doc: TDocStd_Document, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theDoc: TDocStd_Document, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_Label, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabel: TDF_Label, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_LabelSequence, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabelSeq: TDF_LabelSequence, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     def Write(self, theFileName: str) -> IFSelect_ReturnStatus: ...
-     def Writer(self) -> STEPControl_Writer: ...
- 
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.i b/src/SWIG_files/wrapper/STEPConstruct.i
-index f1221c33..d9eaffc8 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.i
-+++ b/src/SWIG_files/wrapper/STEPConstruct.i
-@@ -2598,6 +2598,17 @@ opencascade::handle<StepVisual_PresentationStyleAssignment>
- ") MakeColorPSA;
- 		opencascade::handle<StepVisual_PresentationStyleAssignment> MakeColorPSA(const opencascade::handle<StepRepr_RepresentationItem> & item, const opencascade::handle<StepVisual_Colour> & SurfCol, const opencascade::handle<StepVisual_Colour> & CurveCol, const opencascade::handle<StepVisual_Colour> & RenderCol, const Standard_Real RenderTransp, const Standard_Boolean isForNAUO = Standard_False);
- 
-+		/****************** NbRootStyles ******************/
-+		/**** md5 signature: 4bb6a5a6f49e5abb7085f5ef57337a5a ****/
-+		%feature("compactdefaultargs") NbRootStyles;
-+		%feature("autodoc", "Returns number of override styles.
-+
-+Returns
-+-------
-+int
-+") NbRootStyles;
-+		Standard_Integer NbRootStyles();
-+
- 		/****************** NbStyles ******************/
- 		/**** md5 signature: 9f5fbd515247307ce70e63c6f585ddb7 ****/
- 		%feature("compactdefaultargs") NbStyles;
-@@ -2609,6 +2620,21 @@ int
- ") NbStyles;
- 		Standard_Integer NbStyles();
- 
-+		/****************** RootStyle ******************/
-+		/**** md5 signature: 97e67ad6592e4e36a6444e18652921fc ****/
-+		%feature("compactdefaultargs") RootStyle;
-+		%feature("autodoc", "Returns override style with given index.
-+
-+Parameters
-+----------
-+i: int
-+
-+Returns
-+-------
-+opencascade::handle<StepVisual_StyledItem>
-+") RootStyle;
-+		opencascade::handle<StepVisual_StyledItem> RootStyle(const Standard_Integer i);
-+
- 		/****************** Style ******************/
- 		/**** md5 signature: e152f39ac13e328dca6d350a6f881da8 ****/
- 		%feature("compactdefaultargs") Style;
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.pyi b/src/SWIG_files/wrapper/STEPConstruct.pyi
-index ca04fc33..0f3aa64d 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.pyi
-+++ b/src/SWIG_files/wrapper/STEPConstruct.pyi
-@@ -253,7 +253,9 @@ class STEPConstruct_Styles(STEPConstruct_Tool):
-     def LoadInvisStyles(self, InvSyles: TColStd_HSequenceOfTransient) -> bool: ...
-     def LoadStyles(self) -> bool: ...
-     def MakeColorPSA(self, item: StepRepr_RepresentationItem, SurfCol: StepVisual_Colour, CurveCol: StepVisual_Colour, RenderCol: StepVisual_Colour, RenderTransp: float, isForNAUO: Optional[bool] = False) -> StepVisual_PresentationStyleAssignment: ...
-+    def NbRootStyles(self) -> int: ...
-     def NbStyles(self) -> int: ...
-+    def RootStyle(self, i: int) -> StepVisual_StyledItem: ...
-     def Style(self, i: int) -> StepVisual_StyledItem: ...
- 
- class STEPConstruct_ValidationProps(STEPConstruct_Tool):
-diff --git a/src/SWIG_files/wrapper/ShapeUpgrade.i b/src/SWIG_files/wrapper/ShapeUpgrade.i
-index 1fd11ef9..b3c16c8c 100644
---- a/src/SWIG_files/wrapper/ShapeUpgrade.i
-+++ b/src/SWIG_files/wrapper/ShapeUpgrade.i
-@@ -1064,6 +1064,7 @@ None
- class ShapeUpgrade_UnifySameDomain : public Standard_Transient {
- 	public:
- typedef NCollection_DataMap<TopoDS_Shape , opencascade ::handle<Geom_Plane>, TopTools_ShapeMapHasher> DataMapOfFacePlane;
-+typedef NCollection_DataMap<TopoDS_Shape , TopTools_MapOfShape , TopTools_ShapeMapHasher> DataMapOfShapeMapOfShape;
- 		/****************** ShapeUpgrade_UnifySameDomain ******************/
- 		/**** md5 signature: 81e68dd91fd764ff95aa62b12dc88ed6 ****/
- 		%feature("compactdefaultargs") ShapeUpgrade_UnifySameDomain;
-diff --git a/src/SWIG_files/wrapper/StdPrs.i b/src/SWIG_files/wrapper/StdPrs.i
-index 0d01b154..bcdbf6c2 100644
---- a/src/SWIG_files/wrapper/StdPrs.i
-+++ b/src/SWIG_files/wrapper/StdPrs.i
-@@ -1220,7 +1220,7 @@ int
- class StdPrs_ShadedShape : public Prs3d_Root {
- 	public:
- 		/****************** Add ******************/
--		/**** md5 signature: 4361c97ebfd2d178620c977d5eabb386 ****/
-+		/**** md5 signature: eb25cffb7e72ca49100cdcc43a05ee8c ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape>. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1231,15 +1231,17 @@ theShape: TopoDS_Shape
- theDrawer: Prs3d_Drawer
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** Add ******************/
--		/**** md5 signature: c21dc028b4eb82bb3707a6e95d6e5c3b ****/
-+		/**** md5 signature: c2784d9b78f332340fcb1d6c9293a2a1 ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape> with texture coordinates. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1254,12 +1256,14 @@ theUVRepeat: gp_Pnt2d
- theUVScale: gp_Pnt2d
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** AddWireframeForFacesWithoutTriangles ******************/
- 		/**** md5 signature: 2399101e036cd3b0540bfa37732d6fc1 ****/
-diff --git a/src/SWIG_files/wrapper/StdPrs.pyi b/src/SWIG_files/wrapper/StdPrs.pyi
-index 3a01af7b..4df76eb5 100644
---- a/src/SWIG_files/wrapper/StdPrs.pyi
-+++ b/src/SWIG_files/wrapper/StdPrs.pyi
-@@ -156,10 +156,10 @@ class StdPrs_PoleCurve(Prs3d_Root):
- class StdPrs_ShadedShape(Prs3d_Root):
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @staticmethod
-     def AddWireframeForFacesWithoutTriangles(thePrs: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer) -> None: ...
-     @staticmethod
-diff --git a/src/SWIG_files/wrapper/StepToGeom.i b/src/SWIG_files/wrapper/StepToGeom.i
-index a91cc710..f4ab236f 100644
---- a/src/SWIG_files/wrapper/StepToGeom.i
-+++ b/src/SWIG_files/wrapper/StepToGeom.i
-@@ -808,22 +808,6 @@ opencascade::handle<Geom2d_VectorWithMagnitude>
- ") MakeVectorWithMagnitude2d;
- 		static opencascade::handle<Geom2d_VectorWithMagnitude> MakeVectorWithMagnitude2d(const opencascade::handle<StepGeom_Vector> & SV);
- 
--		/****************** MakeYprRotation ******************/
--		/**** md5 signature: de9dc847a92c9949d29654e63b9eb686 ****/
--		%feature("compactdefaultargs") MakeYprRotation;
--		%feature("autodoc", "No available documentation.
--
--Parameters
------------
--SR: StepKinematics_SpatialRotation
--theCntxt: StepRepr_GlobalUnitAssignedContext
--
--Returns
---------
--opencascade::handle<TColStd_HArray1OfReal>
--") MakeYprRotation;
--		static opencascade::handle<TColStd_HArray1OfReal> MakeYprRotation(const StepKinematics_SpatialRotation & SR, const opencascade::handle<StepRepr_GlobalUnitAssignedContext> & theCntxt);
--
- };
- 
- 
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.i b/src/SWIG_files/wrapper/XCAFDoc.i
-index 791919dd..e5c716a9 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.i
-+++ b/src/SWIG_files/wrapper/XCAFDoc.i
-@@ -2317,7 +2317,7 @@ TDF_Label
- 		TDF_Label FindColor(const Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: be86e43f2f2ac06163dce467a9739527 ****/
-+		/**** md5 signature: 7092ec33c89b067e1ceab0d67b5ed02d ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2330,10 +2330,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: a7a6506d3132240934c87e97ec6b28ed ****/
-+		/**** md5 signature: 7252a98dd463a84602d0b7516d6cfc04 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2346,7 +2346,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 869ec12dba73e125e4d66d2a85d2d496 ****/
-@@ -2366,7 +2366,7 @@ bool
- 		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, TDF_Label & colorL);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: 5801253cfaf9cc63278aa2d80d15b2c3 ****/
-+		/**** md5 signature: 9f42bc515522bf5857381b8ed56f5af6 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2380,10 +2380,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: f56e146c8c1c603ab9bcf2d6c801e3b4 ****/
-+		/**** md5 signature: 175af0eadf13dd6e8e7059280dcebe1e ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2397,7 +2397,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 6e439ce30113cabaadf18ee4ce1d0971 ****/
-@@ -2599,7 +2599,7 @@ bool
- 		Standard_Boolean IsSet(const TopoDS_Shape & S, const XCAFDoc_ColorType type);
- 
- 		/****************** IsVisible ******************/
--		/**** md5 signature: e84f73aaf1ac293dea741c71b9f10a4b ****/
-+		/**** md5 signature: bcc14ce19df050eb884b5911b48c4b59 ****/
- 		%feature("compactdefaultargs") IsVisible;
- 		%feature("autodoc", "Return true if object on this label is visible, false if invisible.
- 
-@@ -2611,7 +2611,7 @@ Returns
- -------
- bool
- ") IsVisible;
--		Standard_Boolean IsVisible(const TDF_Label & L);
-+		static Standard_Boolean IsVisible(const TDF_Label & L);
- 
- 		/****************** RemoveColor ******************/
- 		/**** md5 signature: 3e1749f5696dd21fe53c3eb3d8e77952 ****/
-@@ -3477,7 +3477,7 @@ None
- 		void GetDatumLabels(TDF_LabelSequence & Labels);
- 
- 		/****************** GetDatumOfTolerLabels ******************/
--		/**** md5 signature: ed65059da2973245ec5c0f5e0dfd7526 ****/
-+		/**** md5 signature: 581e63a0a9642866e1575d216f9b4d3d ****/
- 		%feature("compactdefaultargs") GetDatumOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels defined for thedimtoll label.
- 
-@@ -3490,10 +3490,10 @@ Returns
- -------
- bool
- ") GetDatumOfTolerLabels;
--		Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDatumWithObjectOfTolerLabels ******************/
--		/**** md5 signature: da94437dec84c797c8bab6e76d5e373f ****/
-+		/**** md5 signature: d5f3a53d01bb6038ce1c82b7e4989ce4 ****/
- 		%feature("compactdefaultargs") GetDatumWithObjectOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels with xcafdimtolobjects_datumobject defined for label thedimtoll.
- 
-@@ -3506,7 +3506,7 @@ Returns
- -------
- bool
- ") GetDatumWithObjectOfTolerLabels;
--		Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDimTol ******************/
- 		/**** md5 signature: 5f2928d077835acfc683c0b7e312ac72 ****/
-@@ -3646,7 +3646,7 @@ bool
- 		Standard_Boolean GetRefGeomToleranceLabels(const TDF_Label & theShapeL, TDF_LabelSequence & theDimTols);
- 
- 		/****************** GetRefShapeLabel ******************/
--		/**** md5 signature: e25d6989472f0a0e102c1daa5f739a29 ****/
-+		/**** md5 signature: b09dac51ded70edf3dd23cc545931b1a ****/
- 		%feature("compactdefaultargs") GetRefShapeLabel;
- 		%feature("autodoc", "Gets all shape labels referred by thel label of the gd&t table. returns false if there are no shape labels added to the sequences.
- 
-@@ -3660,7 +3660,7 @@ Returns
- -------
- bool
- ") GetRefShapeLabel;
--		Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
-+		static Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
- 
- 		/****************** GetTolerOfDatumLabels ******************/
- 		/**** md5 signature: b4d4047d58bcf3d1d31d5586d788da7e ****/
-@@ -5490,20 +5490,20 @@ opencascade::handle<TColStd_HSequenceOfExtendedString>
- 		opencascade::handle<TColStd_HSequenceOfExtendedString> GetLayers(const TopoDS_Shape & Sh);
- 
- 		/****************** GetShapesOfLayer ******************/
--		/**** md5 signature: 8b01d3b5f0a0832996031f609b876e7c ****/
-+		/**** md5 signature: 2bcd2de1711ebf8ae0d1ddf5d01dce52 ****/
- 		%feature("compactdefaultargs") GetShapesOfLayer;
- 		%feature("autodoc", "Return sequanese of shape labels that assigned with layers to <shlabels>.
- 
- Parameters
- ----------
--layerL: TDF_Label
--ShLabels: TDF_LabelSequence
-+theLayerL: TDF_Label
-+theShLabels: TDF_LabelSequence
- 
- Returns
- -------
- None
- ") GetShapesOfLayer;
--		void GetShapesOfLayer(const TDF_Label & layerL, TDF_LabelSequence & ShLabels);
-+		static void GetShapesOfLayer(const TDF_Label & theLayerL, TDF_LabelSequence & theShLabels);
- 
- 		/****************** ID ******************/
- 		/**** md5 signature: 4697ce8a095fa6dcef0217708d19718f ****/
-@@ -6456,7 +6456,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 806c54e68af730f31f3353b2ba682bd0 ****/
-+		/**** md5 signature: cf930e538eb371f96b92c4f439c49612 ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material assigned to <matl> returns false if no such material is assigned.
- 
-@@ -6472,7 +6472,7 @@ Returns
- -------
- aDensity: float
- ") GetMaterial;
--		Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> & aName, opencascade::handle<TCollection_HAsciiString> & aDescription, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> & aDensName, opencascade::handle<TCollection_HAsciiString> & aDensValType);
-+		static Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue);
- 
- 		/****************** GetMaterialLabels ******************/
- 		/**** md5 signature: cd3883adc849957e7e10d763ad936071 ****/
-@@ -8152,6 +8152,32 @@ opencascade::handle<TDataStd_NamedData>
- ") GetNamedProperties;
- 		opencascade::handle<TDataStd_NamedData> GetNamedProperties(const TopoDS_Shape & theShape, const Standard_Boolean theToCreate = Standard_False);
- 
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 3215690f7fd49b341401d78832c630e0 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of shape's labels @param[in] thelabels a sequence of labels to get shapes from returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Parameters
-+----------
-+theLabels: TDF_LabelSequence
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		static TopoDS_Shape GetOneShape(const TDF_LabelSequence & theLabels);
-+
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 5c1df85e1e2a72b0b93fde509f26a709 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of all top-level shapes which are free returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		TopoDS_Shape GetOneShape();
-+
- 		/****************** GetReferredShape ******************/
- 		/**** md5 signature: 63acc4d5460c835c166b1fc0b2913030 ****/
- 		%feature("compactdefaultargs") GetReferredShape;
-@@ -9844,7 +9870,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 83194336f7abcf51085de62960d38361 ****/
-+		/**** md5 signature: 694e93123423187642f68fe8d4e64f2a ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material defined by specified label, or null if the label is not in material table.
- 
-@@ -9856,7 +9882,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
- 
- 		/****************** GetMaterials ******************/
- 		/**** md5 signature: a96d68af36051bd063fefc1e10aabb79 ****/
-@@ -9890,7 +9916,7 @@ bool
- 		static Standard_Boolean GetShapeMaterial(const TDF_Label & theShapeLabel, TDF_Label & theMaterialLabel);
- 
- 		/****************** GetShapeMaterial ******************/
--		/**** md5 signature: 86335bfdea98c720bcf3af0fe4fb0fe0 ****/
-+		/**** md5 signature: 04847c1ad68cdd465933ffa2a713f244 ****/
- 		%feature("compactdefaultargs") GetShapeMaterial;
- 		%feature("autodoc", "Returns material assigned to the shape label.
- 
-@@ -9902,7 +9928,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetShapeMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
- 
- 		/****************** GetShapeMaterial ******************/
- 		/**** md5 signature: b4d2560c50c52f8b49c713aa67731929 ****/
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.pyi b/src/SWIG_files/wrapper/XCAFDoc.pyi
-index b3036a2f..9fed3910 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.pyi
-+++ b/src/SWIG_files/wrapper/XCAFDoc.pyi
-@@ -299,16 +299,20 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     @overload
-     def FindColor(self, col: Quantity_ColorRGBA) -> TDF_Label: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     @staticmethod
-     def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     def GetColor(self, S: TopoDS_Shape, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
-@@ -330,7 +334,8 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     def IsSet(self, L: TDF_Label, type: XCAFDoc_ColorType) -> bool: ...
-     @overload
-     def IsSet(self, S: TopoDS_Shape, type: XCAFDoc_ColorType) -> bool: ...
--    def IsVisible(self, L: TDF_Label) -> bool: ...
-+    @staticmethod
-+    def IsVisible(L: TDF_Label) -> bool: ...
-     def RemoveColor(self, lab: TDF_Label) -> None: ...
-     def ReverseChainsOfTreeNodes(self) -> bool: ...
-     @staticmethod
-@@ -418,9 +423,11 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def FindDimTol(self, theKind: int, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> TDF_Label: ...
-     def GetDatum(self, theDatumL: TDF_Label, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString, theIdentification: TCollection_HAsciiString) -> bool: ...
-     def GetDatumLabels(self, Labels: TDF_LabelSequence) -> None: ...
--    def GetDatumOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDatumWithObjectOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> Tuple[bool, int]: ...
-+    @staticmethod
-+    def GetDatumOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetDatumWithObjectOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal) -> Tuple[bool, int, str, str]: ...
-     def GetDimTolLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def GetDimensionLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-     def GetGeomToleranceLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-@@ -429,7 +436,8 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def GetRefDatumLabel(self, theShapeL: TDF_Label, theDatum: TDF_LabelSequence) -> bool: ...
-     def GetRefDimensionLabels(self, theShapeL: TDF_Label, theDimensions: TDF_LabelSequence) -> bool: ...
-     def GetRefGeomToleranceLabels(self, theShapeL: TDF_Label, theDimTols: TDF_LabelSequence) -> bool: ...
--    def GetRefShapeLabel(self, theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetRefShapeLabel(theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-     def GetTolerOfDatumLabels(self, theDatumL: TDF_Label, theTols: TDF_LabelSequence) -> bool: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsDatum(self, lab: TDF_Label) -> bool: ...
-@@ -629,7 +637,8 @@ class XCAFDoc_LayerTool(TDataStd_GenericEmpty):
-     def GetLayers(self, Sh: TopoDS_Shape, aLayerLS: TDF_LabelSequence) -> bool: ...
-     @overload
-     def GetLayers(self, Sh: TopoDS_Shape) -> TColStd_HSequenceOfExtendedString: ...
--    def GetShapesOfLayer(self, layerL: TDF_Label, ShLabels: TDF_LabelSequence) -> None: ...
-+    @staticmethod
-+    def GetShapesOfLayer(theLayerL: TDF_Label, theShLabels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsLayer(self, lab: TDF_Label) -> bool: ...
-     @overload
-@@ -731,7 +740,8 @@ class XCAFDoc_MaterialTool(TDataStd_GenericEmpty):
-     def GetDensityForShape(ShapeL: TDF_Label) -> float: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, MatL: TDF_Label, aName: TCollection_HAsciiString, aDescription: TCollection_HAsciiString, aDensName: TCollection_HAsciiString, aDensValType: TCollection_HAsciiString) -> Tuple[bool, float]: ...
-+    @staticmethod
-+    def GetMaterial(MatL: TDF_Label) -> Tuple[bool, str, str, float, str, str]: ...
-     def GetMaterialLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsMaterial(self, lab: TDF_Label) -> bool: ...
-@@ -899,6 +909,11 @@ class XCAFDoc_ShapeTool(TDataStd_GenericEmpty):
-     def GetNamedProperties(self, theLabel: TDF_Label, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-     @overload
-     def GetNamedProperties(self, theShape: TopoDS_Shape, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-+    @overload
-+    @staticmethod
-+    def GetOneShape(theLabels: TDF_LabelSequence) -> TopoDS_Shape: ...
-+    @overload
-+    def GetOneShape(self) -> TopoDS_Shape: ...
-     @staticmethod
-     def GetReferredShape(L: TDF_Label, Label: TDF_Label) -> bool: ...
-     @staticmethod
-@@ -1058,13 +1073,15 @@ class XCAFDoc_VisMaterialTool(TDF_Attribute):
-     def BaseLabel(self) -> TDF_Label: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetMaterial(theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     def GetMaterials(self, Labels: TDF_LabelSequence) -> None: ...
-     @overload
-     @staticmethod
-     def GetShapeMaterial(theShapeLabel: TDF_Label, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
--    def GetShapeMaterial(self, theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetShapeMaterial(theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     @overload
-     def GetShapeMaterial(self, theShape: TopoDS_Shape, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
-@@ -1209,7 +1226,12 @@ XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_ColorTool_AutoNaming = XCAFDoc_ColorTool.AutoNaming
- XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
- XCAFDoc_ColorTool_GetID = XCAFDoc_ColorTool.GetID
-+XCAFDoc_ColorTool_IsVisible = XCAFDoc_ColorTool.IsVisible
- XCAFDoc_ColorTool_Set = XCAFDoc_ColorTool.Set
- XCAFDoc_ColorTool_SetAutoNaming = XCAFDoc_ColorTool.SetAutoNaming
- XCAFDoc_Datum_GetID = XCAFDoc_Datum.GetID
-@@ -1217,7 +1239,10 @@ XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_DimTol_GetID = XCAFDoc_DimTol.GetID
- XCAFDoc_DimTol_Set = XCAFDoc_DimTol.Set
-+XCAFDoc_DimTolTool_GetDatumOfTolerLabels = XCAFDoc_DimTolTool.GetDatumOfTolerLabels
-+XCAFDoc_DimTolTool_GetDatumWithObjectOfTolerLabels = XCAFDoc_DimTolTool.GetDatumWithObjectOfTolerLabels
- XCAFDoc_DimTolTool_GetID = XCAFDoc_DimTolTool.GetID
-+XCAFDoc_DimTolTool_GetRefShapeLabel = XCAFDoc_DimTolTool.GetRefShapeLabel
- XCAFDoc_DimTolTool_Set = XCAFDoc_DimTolTool.Set
- XCAFDoc_Dimension_GetID = XCAFDoc_Dimension.GetID
- XCAFDoc_Dimension_Set = XCAFDoc_Dimension.Set
-@@ -1268,6 +1293,7 @@ XCAFDoc_GraphNode_GetDefaultGraphID = XCAFDoc_GraphNode.GetDefaultGraphID
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_LayerTool_GetID = XCAFDoc_LayerTool.GetID
-+XCAFDoc_LayerTool_GetShapesOfLayer = XCAFDoc_LayerTool.GetShapesOfLayer
- XCAFDoc_LayerTool_Set = XCAFDoc_LayerTool.Set
- XCAFDoc_LengthUnit_GetID = XCAFDoc_LengthUnit.GetID
- XCAFDoc_LengthUnit_Set = XCAFDoc_LengthUnit.Set
-@@ -1279,6 +1305,7 @@ XCAFDoc_Material_GetID = XCAFDoc_Material.GetID
- XCAFDoc_Material_Set = XCAFDoc_Material.Set
- XCAFDoc_MaterialTool_GetDensityForShape = XCAFDoc_MaterialTool.GetDensityForShape
- XCAFDoc_MaterialTool_GetID = XCAFDoc_MaterialTool.GetID
-+XCAFDoc_MaterialTool_GetMaterial = XCAFDoc_MaterialTool.GetMaterial
- XCAFDoc_MaterialTool_Set = XCAFDoc_MaterialTool.Set
- XCAFDoc_Note_Get = XCAFDoc_Note.Get
- XCAFDoc_Note_IsMine = XCAFDoc_Note.IsMine
-@@ -1294,6 +1321,7 @@ XCAFDoc_ShapeTool_GetComponents = XCAFDoc_ShapeTool.GetComponents
- XCAFDoc_ShapeTool_GetExternRefs = XCAFDoc_ShapeTool.GetExternRefs
- XCAFDoc_ShapeTool_GetID = XCAFDoc_ShapeTool.GetID
- XCAFDoc_ShapeTool_GetLocation = XCAFDoc_ShapeTool.GetLocation
-+XCAFDoc_ShapeTool_GetOneShape = XCAFDoc_ShapeTool.GetOneShape
- XCAFDoc_ShapeTool_GetReferredShape = XCAFDoc_ShapeTool.GetReferredShape
- XCAFDoc_ShapeTool_GetSHUO = XCAFDoc_ShapeTool.GetSHUO
- XCAFDoc_ShapeTool_GetSHUONextUsage = XCAFDoc_ShapeTool.GetSHUONextUsage
-@@ -1320,6 +1348,8 @@ XCAFDoc_ViewTool_GetID = XCAFDoc_ViewTool.GetID
- XCAFDoc_ViewTool_Set = XCAFDoc_ViewTool.Set
- XCAFDoc_VisMaterial_GetID = XCAFDoc_VisMaterial.GetID
- XCAFDoc_VisMaterialTool_GetID = XCAFDoc_VisMaterialTool.GetID
-+XCAFDoc_VisMaterialTool_GetMaterial = XCAFDoc_VisMaterialTool.GetMaterial
-+XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_Set = XCAFDoc_VisMaterialTool.Set
- XCAFDoc_Volume_Get = XCAFDoc_Volume.Get
-diff --git a/src/SWIG_files/wrapper/XCAFPrs.i b/src/SWIG_files/wrapper/XCAFPrs.i
-index 51f661e0..efa0d4b0 100644
---- a/src/SWIG_files/wrapper/XCAFPrs.i
-+++ b/src/SWIG_files/wrapper/XCAFPrs.i
-@@ -1019,7 +1019,7 @@ None
- class XCAFPrs_Texture : public Graphic3d_Texture2D {
- 	public:
- 		/****************** XCAFPrs_Texture ******************/
--		/**** md5 signature: f9dbe9d0fe880b67c047fad8716af896 ****/
-+		/**** md5 signature: 000bd876aad38ca74535015d5e9463d7 ****/
- 		%feature("compactdefaultargs") XCAFPrs_Texture;
- 		%feature("autodoc", "Constructor.
- 
-@@ -1032,7 +1032,7 @@ Returns
- -------
- None
- ") XCAFPrs_Texture;
--		 XCAFPrs_Texture(const Image_Texture & theImageSource, const Graphic3d_TextureUnit theUnit);
-+		 XCAFPrs_Texture(const opencascade::handle<Image_Texture> & theImageSource, const Graphic3d_TextureUnit theUnit);
- 
- 		/****************** GetCompressedImage ******************/
- 		/**** md5 signature: bad0c95151f5a884e9dbc72217977538 ****/
-@@ -1065,15 +1065,15 @@ opencascade::handle<Image_PixMap>
- 		virtual opencascade::handle<Image_PixMap> GetImage(const opencascade::handle<Image_SupportedFormats> & theSupported);
- 
- 		/****************** GetImageSource ******************/
--		/**** md5 signature: 1fa59174d8d0d408df072137f5b3fe0e ****/
-+		/**** md5 signature: c24f99a1f3e5bf7521b240aa232d6d28 ****/
- 		%feature("compactdefaultargs") GetImageSource;
- 		%feature("autodoc", "Return image source.
- 
- Returns
- -------
--Image_Texture
-+opencascade::handle<Image_Texture>
- ") GetImageSource;
--		const Image_Texture & GetImageSource();
-+		const opencascade::handle<Image_Texture> & GetImageSource();
- 
- };
- 
-
-From 44af64d633d315e52e3f18247ff8e26d0619effb Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Tue, 4 Apr 2023 03:57:57 +0200
-Subject: [PATCH 2/4] bump occt version to 7.7.1
-
----
- CMakeLists.txt          | 6 +++---
- ci/conda/meta.yaml      | 6 +++---
- src/PkgBase/__init__.py | 2 +-
- 3 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 14a60d09..8cef86b0 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -21,8 +21,8 @@ project(PYTHONOCC)
- 
- # set pythonOCC version
- set(PYTHONOCC_VERSION_MAJOR 7)
--set(PYTHONOCC_VERSION_MINOR 6)
--set(PYTHONOCC_VERSION_PATCH 3)
-+set(PYTHONOCC_VERSION_MINOR 7)
-+set(PYTHONOCC_VERSION_PATCH 1)
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- set(PYTHONOCC_VERSION_DEVEL )
-@@ -147,7 +147,7 @@ if(DEFINED OCE_INCLUDE_PATH)
- # if OCE_INCLUDE_PATH is not passed at command line,
- # find OCE automatically
- else(OCE_INCLUDE_PATH)
--  find_package(OpenCASCADE 7.7.0 REQUIRED)
-+  find_package(OpenCASCADE 7.7.1 REQUIRED)
-   if(OpenCASCADE_FOUND)
-     message(STATUS "OpenCASCADE version found: " ${OpenCASCADE_MAJOR_VERSION} "." ${OpenCASCADE_MINOR_VERSION} "." ${OpenCASCADE_MAINTENANCE_VERSION})
-     message(STATUS "OpenCASCADE include directory: " ${OpenCASCADE_INCLUDE_DIR})
-diff --git a/ci/conda/meta.yaml b/ci/conda/meta.yaml
-index 33d91edc..8ca381de 100644
---- a/ci/conda/meta.yaml
-+++ b/ci/conda/meta.yaml
-@@ -1,4 +1,4 @@
--{% set version = "7.7.0" %}
-+{% set version = "7.7.1" %}
- 
- package:
-   name: pythonocc-core
-@@ -26,11 +26,11 @@ requirements:
- 
-   host:
-     - python {{ python }}
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - numpy >=1.17
- 
-   run:
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - six
-     - numpy >=1.17
- 
-diff --git a/src/PkgBase/__init__.py b/src/PkgBase/__init__.py
-index 898fb48e..e90690b0 100644
---- a/src/PkgBase/__init__.py
-+++ b/src/PkgBase/__init__.py
-@@ -1,6 +1,6 @@
- PYTHONOCC_VERSION_MAJOR = 7
- PYTHONOCC_VERSION_MINOR = 7
--PYTHONOCC_VERSION_PATCH = 0
-+PYTHONOCC_VERSION_PATCH = 1
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- PYTHONOCC_VERSION_DEVEL = ''
-
-From 6ec7cc9095631de070573fc26164578f2e2c87bf Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 16:40:05 +0200
-Subject: [PATCH 3/4] remove xvfb tests from conda build
-
----
- ci/conda/run_test.sh | 7 -------
- 1 file changed, 7 deletions(-)
-
-diff --git a/ci/conda/run_test.sh b/ci/conda/run_test.sh
-index 8d0acf0a..6610b84e 100644
---- a/ci/conda/run_test.sh
-+++ b/ci/conda/run_test.sh
-@@ -2,10 +2,3 @@
- cd ../work/test
- python run_tests.py
- mypy test_mypy_classic_occ_bottle.py
--
--if [ $(uname) == Linux ]; then
--    # start xvfb
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyqt5_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyside2_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_wx_unittest.py
--fi
-
-From bcd7a2c2e0b12801416db9c0d73f2c01992e8ab5 Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 17:08:51 +0200
-Subject: [PATCH 4/4] Fix DataEchange load colrs
-
----
- src/Extend/DataExchange.py | 15 ++++++++-------
- 1 file changed, 8 insertions(+), 7 deletions(-)
-
-diff --git a/src/Extend/DataExchange.py b/src/Extend/DataExchange.py
-index 20f0c9b8..6545d83a 100644
---- a/src/Extend/DataExchange.py
-+++ b/src/Extend/DataExchange.py
-@@ -41,6 +41,7 @@ from OCC.Core.TDocStd import TDocStd_Document
- from OCC.Core.XCAFDoc import (
-     XCAFDoc_DocumentTool_ShapeTool,
-     XCAFDoc_DocumentTool_ColorTool,
-+    XCAFDoc_ColorTool,
- )
- from OCC.Core.STEPCAFControl import STEPCAFControl_Reader
- from OCC.Core.TDF import TDF_LabelSequence, TDF_Label
-@@ -62,6 +63,7 @@ try:
- except ImportError:
-     HAVE_SVGWRITE = False
- 
-+
- ##########################
- # Step import and export #
- ##########################
-@@ -280,11 +282,10 @@ def read_step_file_with_names_colors(filename):
- 
-             if not color_set:
-                 if (
--                    color_tool.GetColor(lab, 0, c)
--                    or color_tool.GetColor(lab, 1, c)
--                    or color_tool.GetColor(lab, 2, c)
-+                    XCAFDoc_ColorTool.GetColor(lab, 0, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 1, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 2, c)
-                 ):
--
-                     color_tool.SetInstanceColor(shape, 0, c)
-                     color_tool.SetInstanceColor(shape, 1, c)
-                     color_tool.SetInstanceColor(shape, 2, c)
-@@ -330,9 +331,9 @@ def read_step_file_with_names_colors(filename):
- 
-                 if not color_set:
-                     if (
--                        color_tool.GetColor(lab_subs, 0, c)
--                        or color_tool.GetColor(lab_subs, 1, c)
--                        or color_tool.GetColor(lab_subs, 2, c)
-+                        XCAFDoc_ColorTool.GetColor(lab_subs, 0, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 1, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 2, c)
-                     ):
-                         color_tool.SetInstanceColor(shape, 0, c)
-                         color_tool.SetInstanceColor(shape, 1, c)
diff --git a/srcpkgs/python3-occ/template b/srcpkgs/python3-occ/template
index 1d02354f2c41c2..22a75a5f04b560 100644
--- a/srcpkgs/python3-occ/template
+++ b/srcpkgs/python3-occ/template
@@ -1,16 +1,17 @@
 # Template file for 'python3-occ'
 pkgname=python3-occ
-version=7.7.0
-revision=3
+version=7.9.0
+revision=1
 archs="i686* x86_64* armv7l* aarch64* ppc*"
 build_style=cmake
-configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None"
+configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None
+ -DPython3_NumPy_INCLUDE_DIRS=${XBPS_CROSS_BASE}/${py3_sitelib}/numpy/_core/include"
 hostmakedepends="python3 python3-setuptools swig"
 makedepends="python3-devel occt-devel freetype-devel swig rapidjson"
 depends="python3 occt freetype"
 short_desc="Industrial strength 3D CAD Python3 package"
 maintainer="Karl Nilsson <karl.robert.nilsson@gmail.com>"
 license="LGPL-3.0-or-later"
-homepage="http://pythonocc.org"
+homepage="https://github.com/tpaviot/pythonocc-core"
 distfiles="https://github.com/tpaviot/pythonocc-core/archive/${version}.tar.gz"
-checksum=9b27003b87799badfae04f8cacd03b8faa1309600c9de8021434d7511e718f82
+checksum=98e53657f54e8a9c3477a81c0b4a11bc6659d5f60123e263419521b42a8e111f

From be34b910f4bb02695e432beed30061d6c3ddd736 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 4/8] freecad: rebuild for occt-7.9.0.

---
 srcpkgs/freecad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/freecad/template b/srcpkgs/freecad/template
index 06d5f0fa09ad45..8b9e44300ce144 100644
--- a/srcpkgs/freecad/template
+++ b/srcpkgs/freecad/template
@@ -1,7 +1,7 @@
 # Template file for 'freecad'
 pkgname=freecad
 version=1.0.0
-revision=2
+revision=3
 _pycxx_ver=7.1.8
 _ondsel_ver=91f70382beeb58b32432b5a82da3802e4c19199c
 build_style=cmake

From b512b6f7d9531e3803f2daab3b9748a40e682722 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 5/8] gmsh: rebuild for occt-7.9.0.

---
 srcpkgs/gmsh/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gmsh/template b/srcpkgs/gmsh/template
index c3727d90e4c93b..371b2f5cfc9c31 100644
--- a/srcpkgs/gmsh/template
+++ b/srcpkgs/gmsh/template
@@ -1,7 +1,7 @@
 # Template file for 'gmsh'
 pkgname=gmsh
 version=4.8.4
-revision=2
+revision=3
 build_style=cmake
 configure_args="-DENABLE_SYSTEM_CONTRIB=ON
  -DENABLE_HXT=$(vopt_if hxt ON OFF)

From 5a7701d1c87900a42b831e97d71cd3a04bfc1213 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 6/8] horizon: rebuild for occt-7.9.0.

---
 srcpkgs/horizon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/horizon/template b/srcpkgs/horizon/template
index 16bbf70822d672..160df13f96fae3 100644
--- a/srcpkgs/horizon/template
+++ b/srcpkgs/horizon/template
@@ -1,7 +1,7 @@
 # Template file for 'horizon'
 pkgname=horizon
 version=2.5.0
-revision=3
+revision=4
 build_style=gnu-makefile
 make_build_args="GOLD="
 make_install_target="install install-man"

From d5456f1293b91a229e49e782cccc4fe90bdd4b9f Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 7/8] kicad: rebuild for occt-7.9.0.

---
 srcpkgs/kicad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/kicad/template b/srcpkgs/kicad/template
index 34df918edabea4..6cb7e771efb8b6 100644
--- a/srcpkgs/kicad/template
+++ b/srcpkgs/kicad/template
@@ -2,7 +2,7 @@
 # XXX: keep in sync with kicad-doc
 pkgname=kicad
 version=9.0.1
-revision=1
+revision=2
 build_style=cmake
 build_helper="cmake-wxWidgets-gtk3"
 configure_args="-DKICAD_SCRIPTING_WXPYTHON=ON -DKICAD_USE_EGL=ON -DKICAD_BUILD_QA_TESTS=OFF

From ae7e9ac82d9b5c504e9f8d6b199fa1067fabd6b3 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 8/8] librepcb: rebuild for occt-7.9.0.

---
 srcpkgs/librepcb/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/librepcb/template b/srcpkgs/librepcb/template
index eb46149e284e57..aa32d7f1ad2237 100644
--- a/srcpkgs/librepcb/template
+++ b/srcpkgs/librepcb/template
@@ -1,7 +1,7 @@
 # Template file for 'librepcb'
 pkgname=librepcb
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_QTQUICK_TEST=OFF"
 hostmakedepends="unzip qt5-qmake qt5-host-tools"

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PR PATCH] [Updated] occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (7 preceding siblings ...)
  2025-04-16 20:20 ` [PR PATCH] [Updated] " ii8
@ 2025-04-16 21:21 ` ii8
  2025-04-17  9:02 ` ii8
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: ii8 @ 2025-04-16 21:21 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 525 bytes --]

There is an updated pull request by ii8 against master on the void-packages repository

https://github.com/ii8/void-packages occt
https://github.com/void-linux/void-packages/pull/54462

occt: update to 7.9.0.
#### Testing the changes
- I tested the changes in this PR: **YES**

#### Local build testing
- I built this PR locally for my native architecture, x86_64-musl

This version fixes myriad segmentation faults in FreeCAD.

A patch file from https://github.com/void-linux/void-packages/pull/54462.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-occt-54462.patch --]
[-- Type: text/x-diff, Size: 143006 bytes --]

From b0aee68d66a945148f82a419c6b68f31ca43f253 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 17:44:19 +0000
Subject: [PATCH 1/8] occt: update to 7.9.0.

---
 common/shlibs                              | 122 ++++++++++-----------
 srcpkgs/occt/patches/fix-cmake-regex.patch |   2 +-
 srcpkgs/occt/patches/fix-install-dir.patch |   2 +-
 srcpkgs/occt/patches/fix-osd-host.patch    |  14 +--
 srcpkgs/occt/patches/musl-fenv.patch       |  38 +++----
 srcpkgs/occt/patches/musl-mallinfo.patch   |  45 +++++---
 srcpkgs/occt/template                      |  13 +--
 7 files changed, 123 insertions(+), 113 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index bec2f470613330..3cd61c02039fdf 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3453,67 +3453,67 @@ libvtkkissfft-9.3.so.1 vtk-9.3.0_1
 libvolume_key.so.1 volume_key-0.3.9_1
 libxxhash.so.0 libxxHash-0.6.5_2
 libcapnp_c.so.0 c-capnproto-0.3_1
-libTKernel.so.7.7 occt-7.7.1_1
-libTKXmlXCAF.so.7.7 occt-7.7.1_1
-libTKXmlTObj.so.7.7 occt-7.7.1_1
-libTKXmlL.so.7.7 occt-7.7.1_1
-libTKXml.so.7.7 occt-7.7.1_1
-libTKXSDRAW.so.7.7 occt-7.7.1_1
-libTKXSBase.so.7.7 occt-7.7.1_1
-libTKXMesh.so.7.7 occt-7.7.1_1
-libTKXDESTEP.so.7.7 occt-7.7.1_1
-libTKXDEIGES.so.7.7 occt-7.7.1_1
-libTKXDEDRAW.so.7.7 occt-7.7.1_1
-libTKXDECascade.so.7.7 occt-7.7.1_1
-libTKXDE.so.7.7 occt-7.7.1_1
-libTKXCAF.so.7.7 occt-7.7.1_1
-libTKViewerTest.so.7.7 occt-7.7.1_1
-libTKVRML.so.7.7 occt-7.7.1_1
-libTKVCAF.so.7.7 occt-7.7.1_1
-libTKV3d.so.7.7 occt-7.7.1_1
-libTKTopTest.so.7.7 occt-7.7.1_1
-libTKTopAlgo.so.7.7 occt-7.7.1_1
-libTKTObjDRAW.so.7.7 occt-7.7.1_1
-libTKTObj.so.7.7 occt-7.7.1_1
-libTKStdL.so.7.7 occt-7.7.1_1
-libTKStd.so.7.7 occt-7.7.1_1
-libTKShHealing.so.7.7 occt-7.7.1_1
-libTKService.so.7.7 occt-7.7.1_1
-libTKSTL.so.7.7 occt-7.7.1_1
-libTKSTEPBase.so.7.7 occt-7.7.1_1
-libTKSTEPAttr.so.7.7 occt-7.7.1_1
-libTKSTEP209.so.7.7 occt-7.7.1_1
-libTKSTEP.so.7.7 occt-7.7.1_1
-libTKRWMesh.so.7.7 occt-7.7.1_1
-libTKQADraw.so.7.7 occt-7.7.1_1
-libTKPrim.so.7.7 occt-7.7.1_1
-libTKOpenGlTest.so.7.7 occt-7.7.1_1
-libTKOpenGl.so.7.7 occt-7.7.1_1
-libTKOffset.so.7.7 occt-7.7.1_1
-libTKMeshVS.so.7.7 occt-7.7.1_1
-libTKMesh.so.7.7 occt-7.7.1_1
-libTKMath.so.7.7 occt-7.7.1_1
-libTKLCAF.so.7.7 occt-7.7.1_1
-libTKIGES.so.7.7 occt-7.7.1_1
-libTKHLR.so.7.7 occt-7.7.1_1
-libTKGeomBase.so.7.7 occt-7.7.1_1
-libTKGeomAlgo.so.7.7 occt-7.7.1_1
-libTKG3d.so.7.7 occt-7.7.1_1
-libTKG2d.so.7.7 occt-7.7.1_1
-libTKFillet.so.7.7 occt-7.7.1_1
-libTKFeat.so.7.7 occt-7.7.1_1
-libTKExpress.so.7.7 occt-7.7.1_1
-libTKDraw.so.7.7 occt-7.7.1_1
-libTKDCAF.so.7.7 occt-7.7.1_1
-libTKCDF.so.7.7 occt-7.7.1_1
-libTKCAF.so.7.7 occt-7.7.1_1
-libTKBool.so.7.7 occt-7.7.1_1
-libTKBinXCAF.so.7.7 occt-7.7.1_1
-libTKBinTObj.so.7.7 occt-7.7.1_1
-libTKBinL.so.7.7 occt-7.7.1_1
-libTKBin.so.7.7 occt-7.7.1_1
-libTKBRep.so.7.7 occt-7.7.1_1
-libTKBO.so.7.7 occt-7.7.1_1
+libTKernel.so.7.9 occt-7.9.0_1
+libTKXmlXCAF.so.7.9 occt-7.9.0_1
+libTKXmlTObj.so.7.9 occt-7.9.0_1
+libTKXmlL.so.7.9 occt-7.9.0_1
+libTKXml.so.7.9 occt-7.9.0_1
+libTKXSDRAW.so.7.9 occt-7.9.0_1
+libTKXSBase.so.7.9 occt-7.9.0_1
+libTKXMesh.so.7.9 occt-7.9.0_1
+libTKXDESTEP.so.7.9 occt-7.9.0_1
+libTKXDEIGES.so.7.9 occt-7.9.0_1
+libTKXDEDRAW.so.7.9 occt-7.9.0_1
+libTKXDECascade.so.7.9 occt-7.9.0_1
+libTKXDE.so.7.9 occt-7.9.0_1
+libTKXCAF.so.7.9 occt-7.9.0_1
+libTKViewerTest.so.7.9 occt-7.9.0_1
+libTKVRML.so.7.9 occt-7.9.0_1
+libTKVCAF.so.7.9 occt-7.9.0_1
+libTKV3d.so.7.9 occt-7.9.0_1
+libTKTopTest.so.7.9 occt-7.9.0_1
+libTKTopAlgo.so.7.9 occt-7.9.0_1
+libTKTObjDRAW.so.7.9 occt-7.9.0_1
+libTKTObj.so.7.9 occt-7.9.0_1
+libTKStdL.so.7.9 occt-7.9.0_1
+libTKStd.so.7.9 occt-7.9.0_1
+libTKShHealing.so.7.9 occt-7.9.0_1
+libTKService.so.7.9 occt-7.9.0_1
+libTKSTL.so.7.9 occt-7.9.0_1
+libTKSTEPBase.so.7.9 occt-7.9.0_1
+libTKSTEPAttr.so.7.9 occt-7.9.0_1
+libTKSTEP209.so.7.9 occt-7.9.0_1
+libTKSTEP.so.7.9 occt-7.9.0_1
+libTKRWMesh.so.7.9 occt-7.9.0_1
+libTKQADraw.so.7.9 occt-7.9.0_1
+libTKPrim.so.7.9 occt-7.9.0_1
+libTKOpenGlTest.so.7.9 occt-7.9.0_1
+libTKOpenGl.so.7.9 occt-7.9.0_1
+libTKOffset.so.7.9 occt-7.9.0_1
+libTKMeshVS.so.7.9 occt-7.9.0_1
+libTKMesh.so.7.9 occt-7.9.0_1
+libTKMath.so.7.9 occt-7.9.0_1
+libTKLCAF.so.7.9 occt-7.9.0_1
+libTKIGES.so.7.9 occt-7.9.0_1
+libTKHLR.so.7.9 occt-7.9.0_1
+libTKGeomBase.so.7.9 occt-7.9.0_1
+libTKGeomAlgo.so.7.9 occt-7.9.0_1
+libTKG3d.so.7.9 occt-7.9.0_1
+libTKG2d.so.7.9 occt-7.9.0_1
+libTKFillet.so.7.9 occt-7.9.0_1
+libTKFeat.so.7.9 occt-7.9.0_1
+libTKExpress.so.7.9 occt-7.9.0_1
+libTKDraw.so.7.9 occt-7.9.0_1
+libTKDCAF.so.7.9 occt-7.9.0_1
+libTKCDF.so.7.9 occt-7.9.0_1
+libTKCAF.so.7.9 occt-7.9.0_1
+libTKBool.so.7.9 occt-7.9.0_1
+libTKBinXCAF.so.7.9 occt-7.9.0_1
+libTKBinTObj.so.7.9 occt-7.9.0_1
+libTKBinL.so.7.9 occt-7.9.0_1
+libTKBin.so.7.9 occt-7.9.0_1
+libTKBRep.so.7.9 occt-7.9.0_1
+libTKBO.so.7.9 occt-7.9.0_1
 libargon2.so.1 libargon2-20171227_1
 libdazzle-1.0.so.0 libdazzle-3.28.0_1
 libjsonrpc-glib-1.0.so.1 jsonrpc-glib-3.28.0_1
diff --git a/srcpkgs/occt/patches/fix-cmake-regex.patch b/srcpkgs/occt/patches/fix-cmake-regex.patch
index f38e0108ac7089..6cc5918bd28960 100644
--- a/srcpkgs/occt/patches/fix-cmake-regex.patch
+++ b/srcpkgs/occt/patches/fix-cmake-regex.patch
@@ -3,7 +3,7 @@
 
 --- a/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 00:18:42.763819658 -0500
 +++ b/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 23:40:32.872489521 -0500
-@@ -26,7 +26,7 @@
+@@ -27,7 +27,7 @@
  if (OpenCASCADE_INSTALL_PREFIX MATCHES "/cmake$")
    get_filename_component (OpenCASCADE_INSTALL_PREFIX "${OpenCASCADE_INSTALL_PREFIX}" PATH)
  endif()
diff --git a/srcpkgs/occt/patches/fix-install-dir.patch b/srcpkgs/occt/patches/fix-install-dir.patch
index 931587bef99048..0dc6660f0a10f2 100644
--- a/srcpkgs/occt/patches/fix-install-dir.patch
+++ b/srcpkgs/occt/patches/fix-install-dir.patch
@@ -1,7 +1,7 @@
 diff --color -upr occt-7.7.1.orig/adm/cmake/occt_macros.cmake occt-7.7.1/adm/cmake/occt_macros.cmake
 --- occt-7.7.1.orig/adm/cmake/occt_macros.cmake	2023-05-31 20:05:47.619869450 +0200
 +++ occt-7.7.1/adm/cmake/occt_macros.cmake	2023-05-31 20:07:25.611036417 +0200
-@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
+@@ -762,7 +762,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
  
    install (CODE
    "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
diff --git a/srcpkgs/occt/patches/fix-osd-host.patch b/srcpkgs/occt/patches/fix-osd-host.patch
index ef705c7291381d..922f61072619db 100644
--- a/srcpkgs/occt/patches/fix-osd-host.patch
+++ b/srcpkgs/occt/patches/fix-osd-host.patch
@@ -2,12 +2,12 @@
 
 --- a/src/OSD/OSD_Host.cxx
 +++ b/src/OSD/OSD_Host.cxx
-@@ -124,7 +124,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+@@ -140,7 +140,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+   TCollection_AsciiString result, host;
  
-  host = HostName();
-  memcpy(&internet_address,
--        gethostbyname(host.ToCString()),
-+        gethostbyname("localhost"),
-         sizeof(struct hostent));
+   host = HostName();
+-  memcpy(&internet_address, gethostbyname(host.ToCString()), sizeof(struct hostent));
++  memcpy(&internet_address, gethostbyname("localhost"), sizeof(struct hostent));
  
-  // Gets each bytes into integers
+   // Gets each bytes into integers
+   a = (unsigned char)internet_address.h_addr_list[0][0];
diff --git a/srcpkgs/occt/patches/musl-fenv.patch b/srcpkgs/occt/patches/musl-fenv.patch
index a8a776ce29a9d0..9756cca207bbac 100644
--- a/srcpkgs/occt/patches/musl-fenv.patch
+++ b/srcpkgs/occt/patches/musl-fenv.patch
@@ -5,32 +5,32 @@ is probably wrong, but I don't have a replacement for the
 non-posix functions fegetexcept(3) and feenableexcept(3).
 """
 
---- a/src/OSD/OSD_signal.cxx.orig	2022-07-22 10:53:38.000000000 +0200
-+++ b/src/OSD/OSD_signal.cxx	2022-10-06 09:19:02.286414340 +0200
-@@ -761,7 +761,7 @@ typedef void (* SIG_PFV) (int);
+--- a/src/OSD/OSD_signal.cxx
++++ b/src/OSD/OSD_signal.cxx
+@@ -769,7 +769,7 @@ typedef void (*SIG_PFV)(int);
  
- #include <signal.h>
+   #include <signal.h>
  
--#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
-+#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) &&  defined(__GLIBC__)
-   #include <sys/signal.h>
- #endif
+-  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
++  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) && defined(__GLIBC__)
+     #include <sys/signal.h>
+   #endif
  
-@@ -977,7 +977,7 @@ static void SegvHandler(const int theSig
- //=======================================================================
- void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
+@@ -994,7 +994,7 @@ static void SegvHandler(const int              theSignal,
+ 
+ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
-   feclearexcept (FE_ALL_EXCEPT);
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
+   feclearexcept(FE_ALL_EXCEPT);
    if (theFloatingSignal)
    {
-@@ -1010,7 +1010,7 @@ void OSD::SetFloatingSignal (Standard_Bo
- //=======================================================================
+@@ -1025,7 +1025,7 @@ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
+ 
  Standard_Boolean OSD::ToCatchFloatingSignals()
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
    return (fegetexcept() & _OSD_FPX) != 0;
- #else
+   #else
    return Standard_False;
diff --git a/srcpkgs/occt/patches/musl-mallinfo.patch b/srcpkgs/occt/patches/musl-mallinfo.patch
index 1ce5b16b793f95..158d954fe9c52f 100644
--- a/srcpkgs/occt/patches/musl-mallinfo.patch
+++ b/srcpkgs/occt/patches/musl-mallinfo.patch
@@ -1,21 +1,32 @@
-In musl libc there is no struct mallinfo and no function mallinf()
-
---- a/src/OSD/OSD_MemInfo.cxx.orig	2022-10-06 09:21:55.466236104 +0200
-+++ b/src/OSD/OSD_MemInfo.cxx	2022-10-06 09:25:34.105323581 +0200
-@@ -188,12 +188,16 @@ void OSD_MemInfo::Update()
+--- a/src/OSD/OSD_MemInfo.cxx
++++ b/src/OSD/OSD_MemInfo.cxx
+@@ -165,18 +165,23 @@ void OSD_MemInfo::Update()
+   #elif (defined(__linux__) || defined(__linux))
+   if (IsActive(MemHeapUsage))
+   {
+-    #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+-      #if __GLIBC_PREREQ(2, 33)
++    #if defined(__GLIBC__)
++      #define HAS_MALLINFO
++      #if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 33)
+         #define HAS_MALLINFO2
+       #endif
      #endif
-   #endif
  
-+  #if defined(__GLIBC__)
-   #ifdef HAS_MALLINFO2
-     const struct mallinfo2 aMI = mallinfo2();
-   #else
-     const struct mallinfo aMI = mallinfo();
-   #endif
-     myCounters[MemHeapUsage] = aMI.uordblks;
-+  #else
-+    myCounters[MemHeapUsage] = 0;
-+  #endif
+-    #ifdef HAS_MALLINFO2
+-    const struct mallinfo2 aMI = mallinfo2();
++    #ifdef HAS_MALLINFO
++      #ifdef HAS_MALLINFO2
++      const struct mallinfo2 aMI = mallinfo2();
++      #else
++      const struct mallinfo aMI = mallinfo();
++      #endif
++      myCounters[MemHeapUsage] = aMI.uordblks;
+     #else
+-    const struct mallinfo aMI = mallinfo();
++      myCounters[MemHeapUsage] = 0;
+     #endif
+-    myCounters[MemHeapUsage] = aMI.uordblks;
    }
  
-   if (!IsActive (MemVirtual)
+   if (!IsActive(MemVirtual) && !IsActive(MemWorkingSet) && !IsActive(MemWorkingSetPeak)
diff --git a/srcpkgs/occt/template b/srcpkgs/occt/template
index 296a52de5a1b5a..acef04045566bc 100644
--- a/srcpkgs/occt/template
+++ b/srcpkgs/occt/template
@@ -1,14 +1,13 @@
 # Template file for 'occt'
 pkgname=occt
-version=7.7.1
+version=7.9.0
 revision=1
 _gittag="V${version//./_}"
 build_style=cmake
-# XXX: re-enable -DUSE_TBB=ON if possible when updating
-configure_args="-DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
- -DINSTALL_SAMPLES=ON"
-makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tcl-devel
- tk-devel"
+configure_args="-DUSE_TBB=ON -DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
+ -DUSE_XLIB=ON -DINSTALL_SAMPLES=ON"
+makedepends="tbb-devel freetype-devel glu-devel freeimage-devel gl2ps-devel
+ tcl-devel tk-devel"
 short_desc="OpenCASCADE Technology - library for CAD/CAM/CAE applications"
 maintainer="Piraty <mail@piraty.dev>"
 license="custom:LGPL-2.1-only-with-exceptions"
@@ -16,7 +15,7 @@ homepage="https://www.opencascade.com"
 # distfile: use git instead of official tarball, which requires registration
 # see https://www.opencascade.com/content/packaging-again-debian
 distfiles="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/${_gittag};sf=tgz>occt-${_gittag}.tar.gz"
-checksum=f413d30a8a06d6164e94860a652cbc96ea58fe262df36ce4eaa92a9e3561fd12
+checksum=ff118a524ec451867e8f0ac3b631522c98f2b4353c7dbf2786bf239589909ec6
 conflicts="oce>=0"
 if [ "$XBPS_TARGET_LIBC" = musl ]; then
 	makedepends+=" libexecinfo-devel"

From e3ff157eded40ba07e0e1d1ba5669ac220f78442 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Wed, 16 Apr 2025 21:12:22 +0100
Subject: [PATCH 2/8] swig: update to 4.3.0.

---
 srcpkgs/swig/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/swig/template b/srcpkgs/swig/template
index bffc4e91ffb355..f9d4c65f1f2fd4 100644
--- a/srcpkgs/swig/template
+++ b/srcpkgs/swig/template
@@ -1,14 +1,14 @@
 # Template file for 'swig'
 pkgname=swig
-version=4.1.1
+version=4.3.0
 revision=1
 build_style=gnu-configure
 configure_args="--with-pcre2-prefix=${XBPS_CROSS_BASE}/usr"
 hostmakedepends="bison"
-makedepends="zlib-devel pcre2-devel"
+makedepends="zlib-devel pcre2-devel boost-devel"
 short_desc="Simplified Wrapper and Interface Generator"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="http://www.swig.org"
 distfiles="${SOURCEFORGE_SITE}/swig/swig-${version}.tar.gz"
-checksum=2af08aced8fcd65cdb5cc62426768914bedc735b1c250325203716f78e39ac9b
+checksum=f7203ef796f61af986c70c05816236cbd0d31b7aa9631e5ab53020ab7804aa9e

From 7566756384e96e1cb90a22d5a30ab250c2db5bd7 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:34 +0000
Subject: [PATCH 3/8] python3-occ: update to 7.9.0.

---
 srcpkgs/python3-occ/patches/occt-7.7.1.patch | 2561 ------------------
 srcpkgs/python3-occ/template                 |   11 +-
 2 files changed, 6 insertions(+), 2566 deletions(-)
 delete mode 100644 srcpkgs/python3-occ/patches/occt-7.7.1.patch

diff --git a/srcpkgs/python3-occ/patches/occt-7.7.1.patch b/srcpkgs/python3-occ/patches/occt-7.7.1.patch
deleted file mode 100644
index 70861a77853b69..00000000000000
--- a/srcpkgs/python3-occ/patches/occt-7.7.1.patch
+++ /dev/null
@@ -1,2561 +0,0 @@
-From 6ba4509edb333494d35a40c01192ab5e236acdda Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Mon, 3 Apr 2023 14:01:20 +0200
-Subject: [PATCH 1/4] update swig files to occt-771
-
----
- src/SWIG_files/common/EnumTemplates.i      |   1 -
- src/SWIG_files/headers/AIS_module.hxx      |   2 +
- src/SWIG_files/headers/BRepFill_module.hxx |   1 +
- src/SWIG_files/wrapper/AIS.i               | 127 ++++++++----
- src/SWIG_files/wrapper/AIS.pyi             |  12 +-
- src/SWIG_files/wrapper/BRepAlgo.i          |  26 +++
- src/SWIG_files/wrapper/BRepAlgo.pyi        |   2 +
- src/SWIG_files/wrapper/BRepBlend.i         |  44 +++--
- src/SWIG_files/wrapper/BRepBlend.pyi       |  14 +-
- src/SWIG_files/wrapper/BRepExtrema.i       | 218 +++++----------------
- src/SWIG_files/wrapper/BRepExtrema.pyi     |  23 +--
- src/SWIG_files/wrapper/BRepFill.i          |  48 +++++
- src/SWIG_files/wrapper/BRepFill.pyi        |  19 ++
- src/SWIG_files/wrapper/BRepOffset.i        |   3 +
- src/SWIG_files/wrapper/BRepOffset.pyi      |   2 +
- src/SWIG_files/wrapper/BRepOffsetAPI.i     |  11 ++
- src/SWIG_files/wrapper/BRepOffsetAPI.pyi   |   1 +
- src/SWIG_files/wrapper/BSplCLib.i          |  23 +++
- src/SWIG_files/wrapper/BSplCLib.pyi        |   3 +
- src/SWIG_files/wrapper/ChFiDS.i            |  14 ++
- src/SWIG_files/wrapper/ChFiDS.pyi          |   3 +
- src/SWIG_files/wrapper/GeomInt.i           |  23 +++
- src/SWIG_files/wrapper/GeomInt.pyi         |   5 +
- src/SWIG_files/wrapper/STEPCAFControl.i    | 140 ++++++-------
- src/SWIG_files/wrapper/STEPCAFControl.pyi  |  32 +--
- src/SWIG_files/wrapper/STEPConstruct.i     |  26 +++
- src/SWIG_files/wrapper/STEPConstruct.pyi   |   2 +
- src/SWIG_files/wrapper/ShapeUpgrade.i      |   1 +
- src/SWIG_files/wrapper/StdPrs.i            |  12 +-
- src/SWIG_files/wrapper/StdPrs.pyi          |   4 +-
- src/SWIG_files/wrapper/StepToGeom.i        |  16 --
- src/SWIG_files/wrapper/XCAFDoc.i           |  78 +++++---
- src/SWIG_files/wrapper/XCAFDoc.pyi         |  56 ++++--
- src/SWIG_files/wrapper/XCAFPrs.i           |  10 +-
- 34 files changed, 592 insertions(+), 410 deletions(-)
-
-diff --git a/src/SWIG_files/common/EnumTemplates.i b/src/SWIG_files/common/EnumTemplates.i
-index b66537d8..69af927f 100644
---- a/src/SWIG_files/common/EnumTemplates.i
-+++ b/src/SWIG_files/common/EnumTemplates.i
-@@ -15,7 +15,6 @@ ENUM_OUTPUT_TYPEMAPS(BRepOffset_Status);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_DisplayPriority);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_NameOfMaterial);
- ENUM_OUTPUT_TYPEMAPS(GeomAbs_Shape);
--ENUM_OUTPUT_TYPEMAPS(ProxPnt_Status);
- ENUM_OUTPUT_TYPEMAPS(Aspect_TypeOfLine);
- ENUM_OUTPUT_TYPEMAPS(PrsDim_KindOfSurface);
- ENUM_OUTPUT_TYPEMAPS(DsgPrs_ArrowSide);
-diff --git a/src/SWIG_files/headers/AIS_module.hxx b/src/SWIG_files/headers/AIS_module.hxx
-index ee7050ea..97fb3b69 100644
---- a/src/SWIG_files/headers/AIS_module.hxx
-+++ b/src/SWIG_files/headers/AIS_module.hxx
-@@ -22,12 +22,14 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<AIS.hxx>
- #include<AIS_AngleDimension.hxx>
- #include<AIS_Animation.hxx>
-+#include<AIS_AnimationAxisRotation.hxx>
- #include<AIS_AnimationCamera.hxx>
- #include<AIS_AnimationObject.hxx>
- #include<AIS_AnimationTimer.hxx>
- #include<AIS_AttributeFilter.hxx>
- #include<AIS_Axis.hxx>
- #include<AIS_BadEdgeFilter.hxx>
-+#include<AIS_BaseAnimationObject.hxx>
- #include<AIS_C0RegularityFilter.hxx>
- #include<AIS_CameraFrustum.hxx>
- #include<AIS_Chamf2dDimension.hxx>
-diff --git a/src/SWIG_files/headers/BRepFill_module.hxx b/src/SWIG_files/headers/BRepFill_module.hxx
-index 73975e24..ef638100 100644
---- a/src/SWIG_files/headers/BRepFill_module.hxx
-+++ b/src/SWIG_files/headers/BRepFill_module.hxx
-@@ -67,6 +67,7 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<BRepFill_SequenceOfSection.hxx>
- #include<BRepFill_ShapeLaw.hxx>
- #include<BRepFill_Sweep.hxx>
-+#include<BRepFill_ThruSectionErrorStatus.hxx>
- #include<BRepFill_TransitionStyle.hxx>
- #include<BRepFill_TrimEdgeTool.hxx>
- #include<BRepFill_TrimShellCorner.hxx>
-diff --git a/src/SWIG_files/wrapper/AIS.i b/src/SWIG_files/wrapper/AIS.i
-index bf1f6b10..8f58d69a 100644
---- a/src/SWIG_files/wrapper/AIS.i
-+++ b/src/SWIG_files/wrapper/AIS.i
-@@ -577,8 +577,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TrihedronOwner)
- %wrap_handle(AIS_TypeFilter)
- %wrap_handle(AIS_AnimationCamera)
--%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_Axis)
-+%wrap_handle(AIS_BaseAnimationObject)
- %wrap_handle(AIS_Circle)
- %wrap_handle(AIS_ColorScale)
- %wrap_handle(AIS_ConnectedInteractive)
-@@ -595,6 +595,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TextLabel)
- %wrap_handle(AIS_Triangulation)
- %wrap_handle(AIS_Trihedron)
-+%wrap_handle(AIS_AnimationAxisRotation)
-+%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_ColoredShape)
- %wrap_handle(AIS_TexturedShape)
- /* end handles declaration */
-@@ -8532,41 +8534,6 @@ opencascade::handle<V3d_View>
- 	}
- };
- 
--/****************************
--* class AIS_AnimationObject *
--****************************/
--class AIS_AnimationObject : public AIS_Animation {
--	public:
--		/****************** AIS_AnimationObject ******************/
--		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
--		%feature("compactdefaultargs") AIS_AnimationObject;
--		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param theanimationname animation identifier @param thecontext interactive context where object have been displayed @param theobject object to apply local transformation @param thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param thetrsfend local transformation at the end of animation.
--
--Parameters
------------
--theAnimationName: TCollection_AsciiString
--theContext: AIS_InteractiveContext
--theObject: AIS_InteractiveObject
--theTrsfStart: gp_Trsf
--theTrsfEnd: gp_Trsf
--
--Returns
---------
--None
--") AIS_AnimationObject;
--		 AIS_AnimationObject(const TCollection_AsciiString & theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
--
--};
--
--
--%make_alias(AIS_AnimationObject)
--
--%extend AIS_AnimationObject {
--	%pythoncode {
--	__repr__ = _dumps_object
--	}
--};
--
- /*****************
- * class AIS_Axis *
- *****************/
-@@ -8855,6 +8822,23 @@ None
- 	}
- };
- 
-+/********************************
-+* class AIS_BaseAnimationObject *
-+********************************/
-+%nodefaultctor AIS_BaseAnimationObject;
-+class AIS_BaseAnimationObject : public AIS_Animation {
-+	public:
-+};
-+
-+
-+%make_alias(AIS_BaseAnimationObject)
-+
-+%extend AIS_BaseAnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /**************************
- * class AIS_CameraFrustum *
- **************************/
-@@ -16143,6 +16127,77 @@ Standard_ShortReal
- 	}
- };
- 
-+/**********************************
-+* class AIS_AnimationAxisRotation *
-+**********************************/
-+class AIS_AnimationAxisRotation : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationAxisRotation ******************/
-+		/**** md5 signature: 819427e2c422233cc067da4633992952 ****/
-+		%feature("compactdefaultargs") AIS_AnimationAxisRotation;
-+		%feature("autodoc", "Constructor with initialization. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply rotation @param[in] theaxis rotation axis @param[in] theanglestart rotation angle at the start of animation @param[in] theangleend rotation angle at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theAxis: gp_Ax1
-+theAngleStart: float
-+theAngleEnd: float
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationAxisRotation;
-+		 AIS_AnimationAxisRotation(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Ax1 & theAxis, const Standard_Real theAngleStart, const Standard_Real theAngleEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationAxisRotation)
-+
-+%extend AIS_AnimationAxisRotation {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
-+/****************************
-+* class AIS_AnimationObject *
-+****************************/
-+class AIS_AnimationObject : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationObject ******************/
-+		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
-+		%feature("compactdefaultargs") AIS_AnimationObject;
-+		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply local transformation @param[in] thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param[in] thetrsfend local transformation at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theTrsfStart: gp_Trsf
-+theTrsfEnd: gp_Trsf
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationObject;
-+		 AIS_AnimationObject(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationObject)
-+
-+%extend AIS_AnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /*************************
- * class AIS_ColoredShape *
- *************************/
-diff --git a/src/SWIG_files/wrapper/AIS.pyi b/src/SWIG_files/wrapper/AIS.pyi
-index a75ef4ba..da4a3977 100644
---- a/src/SWIG_files/wrapper/AIS.pyi
-+++ b/src/SWIG_files/wrapper/AIS.pyi
-@@ -1021,9 +1021,6 @@ class AIS_AnimationCamera(AIS_Animation):
-     def SetView(self, theView: V3d_View) -> None: ...
-     def View(self) -> V3d_View: ...
- 
--class AIS_AnimationObject(AIS_Animation):
--    def __init__(self, theAnimationName: TCollection_AsciiString, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
--
- class AIS_Axis(AIS_InteractiveObject):
-     @overload
-     def __init__(self, aComponent: Geom_Line) -> None: ...
-@@ -1050,6 +1047,9 @@ class AIS_Axis(AIS_InteractiveObject):
-     def UnsetColor(self) -> None: ...
-     def UnsetWidth(self) -> None: ...
- 
-+class AIS_BaseAnimationObject(AIS_Animation):
-+    pass
-+
- class AIS_CameraFrustum(AIS_InteractiveObject):
-     def __init__(self) -> None: ...
-     def AcceptDisplayMode(self, theMode: int) -> bool: ...
-@@ -1652,6 +1652,12 @@ class AIS_XRTrackedDevice(AIS_InteractiveObject):
-     def SetUnitFactor(self, theFactor: float) -> None: ...
-     def UnitFactor(self) -> float: ...
- 
-+class AIS_AnimationAxisRotation(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theAxis: gp_Ax1, theAngleStart: float, theAngleEnd: float) -> None: ...
-+
-+class AIS_AnimationObject(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
-+
- class AIS_ColoredShape(AIS_Shape):
-     @overload
-     def __init__(self, theShape: TopoDS_Shape) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.i b/src/SWIG_files/wrapper/BRepAlgo.i
-index 3860648e..bd9e2f38 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.i
-+++ b/src/SWIG_files/wrapper/BRepAlgo.i
-@@ -921,6 +921,17 @@ None
- ") CutEdge;
- 		void CutEdge(const TopoDS_Edge & E, const TopTools_ListOfShape & VonE, TopTools_ListOfShape & NE);
- 
-+		/****************** GetTolConf ******************/
-+		/**** md5 signature: 7e9f7b87eb3b20edee9e3a86157928cd ****/
-+		%feature("compactdefaultargs") GetTolConf;
-+		%feature("autodoc", "Get maximal tolerance used for comparing distaces between vertices. .
-+
-+Returns
-+-------
-+float
-+") GetTolConf;
-+		Standard_Real GetTolConf();
-+
- 		/****************** GetVerticesForSubstitute ******************/
- 		/**** md5 signature: 3b0ea732ecf076dde3f931f0997c07aa ****/
- 		%feature("compactdefaultargs") GetVerticesForSubstitute;
-@@ -1014,6 +1025,21 @@ None
- ") SetImageVV;
- 		void SetImageVV(const BRepAlgo_Image & theImageVV);
- 
-+		/****************** SetTolConf ******************/
-+		/**** md5 signature: 1c312d5c00a3d856c91eb31857ae32c6 ****/
-+		%feature("compactdefaultargs") SetTolConf;
-+		%feature("autodoc", "Set maximal tolerance used for comparing distaces between vertices. .
-+
-+Parameters
-+----------
-+theTolConf: float
-+
-+Returns
-+-------
-+None
-+") SetTolConf;
-+		void SetTolConf(const Standard_Real theTolConf);
-+
- 		/****************** UpdateVEmap ******************/
- 		/**** md5 signature: 491681c63af221fbd7247e01d389bbc0 ****/
- 		%feature("compactdefaultargs") UpdateVEmap;
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.pyi b/src/SWIG_files/wrapper/BRepAlgo.pyi
-index 5ee7ab94..20ecddc9 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.pyi
-+++ b/src/SWIG_files/wrapper/BRepAlgo.pyi
-@@ -86,6 +86,7 @@ class BRepAlgo_Loop:
-     def AddConstEdges(self, LE: TopTools_ListOfShape) -> None: ...
-     def AddEdge(self, E: TopoDS_Edge, LV: TopTools_ListOfShape) -> None: ...
-     def CutEdge(self, E: TopoDS_Edge, VonE: TopTools_ListOfShape, NE: TopTools_ListOfShape) -> None: ...
-+    def GetTolConf(self) -> float: ...
-     def GetVerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def Init(self, F: TopoDS_Face) -> None: ...
-     def NewEdges(self, E: TopoDS_Edge) -> TopTools_ListOfShape: ...
-@@ -93,6 +94,7 @@ class BRepAlgo_Loop:
-     def NewWires(self) -> TopTools_ListOfShape: ...
-     def Perform(self) -> None: ...
-     def SetImageVV(self, theImageVV: BRepAlgo_Image) -> None: ...
-+    def SetTolConf(self, theTolConf: float) -> None: ...
-     def UpdateVEmap(self, theVEmap: TopTools_IndexedDataMapOfShapeListOfShape) -> None: ...
-     def VerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def WiresToFaces(self) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepBlend.i b/src/SWIG_files/wrapper/BRepBlend.i
-index 509a2525..b8131099 100644
---- a/src/SWIG_files/wrapper/BRepBlend.i
-+++ b/src/SWIG_files/wrapper/BRepBlend.i
-@@ -3508,7 +3508,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: e410fc1bc97982de557150e942b13c80 ****/
-+		/**** md5 signature: 5c6445d58f45808f7c3defd1db894a35 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3522,9 +3522,9 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -3533,10 +3533,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 78e8905aafd910d0fa3a7b23c096467b ****/
-+		/**** md5 signature: 452fb9b79df54fb801f2f70d066f611b ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3550,7 +3550,7 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecRst1: bool
- RecP1: bool
-@@ -3562,7 +3562,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5559,7 +5559,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 3ebeca31e507208cd42bab74df3ed6e3 ****/
-+		/**** md5 signature: 86cf3650fa597d7655c244c1866126f2 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5572,9 +5572,10 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5583,10 +5584,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 691664aa4fe132192d2ccf25ba05720a ****/
-+		/**** md5 signature: 429fbdc03f84a4a14fbebef94ad27ee5 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5599,7 +5600,8 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- RecRst: bool
- RecP: bool
-@@ -5610,7 +5612,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5795,7 +5797,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: ef3b3700f467db4ea875b65f539d9955 ****/
-+		/**** md5 signature: 6d94e3dcc7c71857d2c24ced3358703f ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5806,9 +5808,9 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5817,10 +5819,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: a2bca51a10d7f020b86504fe9860626e ****/
-+		/**** md5 signature: 92db8d0914da0712dd54b302697b3aa3 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5829,7 +5831,7 @@ Parameters
- F: Blend_Function
- Pdep: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- Pos1: TopAbs_State
- Pos2: TopAbs_State
-@@ -5838,10 +5840,10 @@ Returns
- -------
- bool
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 39c72a7c59d31a28e720252eee26feee ****/
-+		/**** md5 signature: 7464aaa5cedcb060541546a3a1ff5540 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5852,7 +5854,7 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecOnS1: bool
- RecOnS2: bool
-@@ -5862,7 +5864,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- 		/****************** SetDomainsToRecadre ******************/
- 		/**** md5 signature: 10664ebffbd6ed784502d7d4acfa5a93 ****/
-diff --git a/src/SWIG_files/wrapper/BRepBlend.pyi b/src/SWIG_files/wrapper/BRepBlend.pyi
-index 03deabc7..cbe9c845 100644
---- a/src/SWIG_files/wrapper/BRepBlend.pyi
-+++ b/src/SWIG_files/wrapper/BRepBlend.pyi
-@@ -346,8 +346,8 @@ class BRepBlend_RstRstLineBuilder:
-     def Decroch2Start(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_SurfCurvConstRadInv(Blend_SurfCurvFuncInv):
-     def __init__(self, S: Adaptor3d_Surface, C: Adaptor3d_Curve, Cg: Adaptor3d_Curve) -> None: ...
-@@ -519,8 +519,8 @@ class BRepBlend_SurfRstLineBuilder:
-     def DecrochStart(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, Tol2d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, Tol2d: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_Walking:
-     def __init__(self, Surf1: Adaptor3d_Surface, Surf2: Adaptor3d_Surface, Domain1: Adaptor3d_TopolTool, Domain2: Adaptor3d_TopolTool, HGuide: ChFiDS_ElSpine) -> None: ...
-@@ -536,11 +536,11 @@ class BRepBlend_Walking:
-     def Continu(self, F: Blend_Function, FInv: Blend_FuncInv, P: float, OnS1: bool) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-+    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-     def SetDomainsToRecadre(self, RecDomain1: Adaptor3d_TopolTool, RecDomain2: Adaptor3d_TopolTool) -> None: ...
-     def TwistOnS1(self) -> bool: ...
-     def TwistOnS2(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.i b/src/SWIG_files/wrapper/BRepExtrema.i
-index bc15b17e..18a48b42 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.i
-+++ b/src/SWIG_files/wrapper/BRepExtrema.i
-@@ -48,6 +48,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<gp_module.hxx>
- #include<Bnd_module.hxx>
- #include<BVH_module.hxx>
-+#include<Poly_module.hxx>
- #include<GeomAdaptor_module.hxx>
- #include<Geom_module.hxx>
- #include<Geom2d_module.hxx>
-@@ -55,6 +56,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<Adaptor2d_module.hxx>
- #include<TopLoc_module.hxx>
- #include<Message_module.hxx>
-+#include<TShort_module.hxx>
- #include<TColgp_module.hxx>
- #include<TColStd_module.hxx>
- #include<TCollection_module.hxx>
-@@ -68,6 +70,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- %import gp.i
- %import Bnd.i
- %import BVH.i
-+%import Poly.i
- 
- %pythoncode {
- from enum import IntEnum
-@@ -1645,7 +1648,7 @@ None
- 		 BRepExtrema_ProximityDistTool();
- 
- 		/****************** BRepExtrema_ProximityDistTool ******************/
--		/**** md5 signature: b9731e05e5136c7110e50a313b036c02 ****/
-+		/**** md5 signature: b080844c8fa666dae8c0e8db8d27e87e ****/
- 		%feature("compactdefaultargs") BRepExtrema_ProximityDistTool;
- 		%feature("autodoc", "Creates new tool for the given element sets.
- 
-@@ -1653,6 +1656,8 @@ Parameters
- ----------
- theSet1: BRepExtrema_TriangleSet
- theNbSamples1: int
-+theAddVertices1: BVH_Array3d
-+theAddStatus1: NCollection_Vector<ProxPnt_Status>
- theSet2: BRepExtrema_TriangleSet
- theShapeList1: BRepExtrema_ShapeList
- theShapeList2: BRepExtrema_ShapeList
-@@ -1661,7 +1666,7 @@ Returns
- -------
- None
- ") BRepExtrema_ProximityDistTool;
--		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
-+		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const BVH_Array3d & theAddVertices1, const NCollection_Vector<ProxPnt_Status> & theAddStatus1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
- 
- 		/****************** Accept ******************/
- 		/**** md5 signature: 47868288da8d60ae3574004f3eef6f3b ****/
-@@ -1679,6 +1684,40 @@ bool
- ") Accept;
- 		virtual Standard_Boolean Accept(const Standard_Integer theSgmIdx, const Standard_Real &);
- 
-+		/****************** IsEdgeOnBorder ******************/
-+		/**** md5 signature: 7f2df1d45fe4dd10cb81da19c83428fd ****/
-+		%feature("compactdefaultargs") IsEdgeOnBorder;
-+		%feature("autodoc", "Returns true if the edge is on the boarder.
-+
-+Parameters
-+----------
-+theTrgIdx: int
-+theFirstEdgeNodeIdx: int
-+theSecondEdgeNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsEdgeOnBorder;
-+		static Standard_Boolean IsEdgeOnBorder(const Standard_Integer theTrgIdx, const Standard_Integer theFirstEdgeNodeIdx, const Standard_Integer theSecondEdgeNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
-+		/****************** IsNodeOnBorder ******************/
-+		/**** md5 signature: 6a6c9031bf497d7acf6e95de1f2784f6 ****/
-+		%feature("compactdefaultargs") IsNodeOnBorder;
-+		%feature("autodoc", "Returns true if the node is on the boarder.
-+
-+Parameters
-+----------
-+theNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsNodeOnBorder;
-+		static Standard_Boolean IsNodeOnBorder(const Standard_Integer theNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
- 		/****************** LoadShapeLists ******************/
- 		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
- 		%feature("compactdefaultargs") LoadShapeLists;
-@@ -1787,178 +1826,10 @@ theMetric: float
- %extend BRepExtrema_ProximityDistTool {
- 	%pythoncode {
- 	__repr__ = _dumps_object
--	}
--};
--
--/***************************************
--* class BRepExtrema_ProximityValueTool *
--***************************************/
--class BRepExtrema_ProximityValueTool {
--	public:
--typedef typename BRepExtrema_ProximityDistTool ::ProxPnt_Status ProxPnt_Status;
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: f01190ce189b90d5b9278fbee66731a1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new unitialized proximity tool.
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool();
--
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: 457895b0f954d4aa93c3b2011e47f0e1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new proximity tool for the given element sets.
--
--Parameters
------------
--theSet1: BRepExtrema_TriangleSet
--theSet2: BRepExtrema_TriangleSet
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** Distance ******************/
--		/**** md5 signature: d47317206a0fb34e540004324dbfafd8 ****/
--		%feature("compactdefaultargs") Distance;
--		%feature("autodoc", "Returns the computed distance.
--
--Returns
---------
--float
--") Distance;
--		Standard_Real Distance();
--
--		/****************** IsDone ******************/
--		/**** md5 signature: e385477ab1bec806154173d4a550fd68 ****/
--		%feature("compactdefaultargs") IsDone;
--		%feature("autodoc", "Is proximity test completed?.
--
--Returns
---------
--bool
--") IsDone;
--		Standard_Boolean IsDone();
--
--		/****************** LoadShapeLists ******************/
--		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
--		%feature("compactdefaultargs") LoadShapeLists;
--		%feature("autodoc", "Loads the given list of subshapes into the proximity tool.
--
--Parameters
------------
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") LoadShapeLists;
--		void LoadShapeLists(const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** LoadTriangleSets ******************/
--		/**** md5 signature: 3a94a7860b973acbc6838bfe75b5b812 ****/
--		%feature("compactdefaultargs") LoadTriangleSets;
--		%feature("autodoc", "Loads the given element sets into the proximity tool.
--
--Parameters
------------
--theSet1: Handle ( BRepExtrema_TriangleSet )
--theSet2: Handle ( BRepExtrema_TriangleSet )
--
--Returns
---------
--None
--") LoadTriangleSets;
--		void LoadTriangleSets(const Handle ( BRepExtrema_TriangleSet ) & theSet1, const Handle ( BRepExtrema_TriangleSet ) & theSet2);
--
--		/****************** MarkDirty ******************/
--		/**** md5 signature: bd3f3e7de1b3b6a0c1da3082319fae2e ****/
--		%feature("compactdefaultargs") MarkDirty;
--		%feature("autodoc", "Marks test results as outdated.
--
--Returns
---------
--None
--") MarkDirty;
--		void MarkDirty();
--
--		/****************** Perform ******************/
--		/**** md5 signature: c2c8700606b770cff797eb33824bf0aa ****/
--		%feature("compactdefaultargs") Perform;
--		%feature("autodoc", "Performs the computation of the proximity value.
--
--Parameters
------------
--
--Returns
---------
--theTolerance: float
--") Perform;
--		void Perform(Standard_Real &OutValue);
--
--		/****************** ProximityPoints ******************/
--		/**** md5 signature: 4ddc607867ad4f349b192d8bb4196f92 ****/
--		%feature("compactdefaultargs") ProximityPoints;
--		%feature("autodoc", "Returns points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--thePoint1: gp_Pnt
--thePoint2: gp_Pnt
- 
--Returns
---------
--None
--") ProximityPoints;
--		void ProximityPoints(gp_Pnt & thePoint1, gp_Pnt & thePoint2);
--
--		/****************** ProximityPointsStatus ******************/
--		/**** md5 signature: cbb67aeda5a68bd79cbb58089638d3f8 ****/
--		%feature("compactdefaultargs") ProximityPointsStatus;
--		%feature("autodoc", "Returns status of points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--
--Returns
---------
--thePointStatus1: ProxPnt_Status
--thePointStatus2: ProxPnt_Status
--") ProximityPointsStatus;
--		void ProximityPointsStatus(ProxPnt_Status &OutValue, ProxPnt_Status &OutValue);
--
--		/****************** SetNbSamplePoints ******************/
--		/**** md5 signature: 200898431f5ab55f6d0477df1f50c3b9 ****/
--		%feature("compactdefaultargs") SetNbSamplePoints;
--		%feature("autodoc", "Sets number of sample points used for proximity calculation for each shape. if number is less or equal zero, all triangulation nodes are used.
--
--Parameters
------------
--theSamples1: int,optional
--	default value is 0
--theSamples2: int,optional
--	default value is 0
--
--Returns
---------
--None
--") SetNbSamplePoints;
--		void SetNbSamplePoints(const Standard_Integer theSamples1 = 0, const Standard_Integer theSamples2 = 0);
--
--};
--
--
--%extend BRepExtrema_ProximityValueTool {
--	%pythoncode {
--	__repr__ = _dumps_object
-+	@methodnotwrapped
-+	def LoadAdditionalPointsFirstSet(self):
-+		pass
- 	}
- };
- 
-@@ -1967,7 +1838,6 @@ None
- ***********************************/
- class BRepExtrema_ShapeProximity {
- 	public:
--typedef typename BRepExtrema_ProximityValueTool ::ProxPnt_Status ProxPnt_Status;
- 		/****************** BRepExtrema_ShapeProximity ******************/
- 		/**** md5 signature: 73b29b290349b3955b499c712de97888 ****/
- 		%feature("compactdefaultargs") BRepExtrema_ShapeProximity;
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.pyi b/src/SWIG_files/wrapper/BRepExtrema.pyi
-index 0738ed63..749fc5ef 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.pyi
-+++ b/src/SWIG_files/wrapper/BRepExtrema.pyi
-@@ -9,6 +9,7 @@ from OCC.Core.Message import *
- from OCC.Core.gp import *
- from OCC.Core.Bnd import *
- from OCC.Core.BVH import *
-+from OCC.Core.Poly import *
- 
- #the following typedef cannot be wrapped as is
- BRepExtrema_ShapeList = NewType('BRepExtrema_ShapeList', Any)
-@@ -163,8 +164,10 @@ class BRepExtrema_Poly:
- class BRepExtrema_ProximityDistTool():
-     @overload
-     def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theNbSamples1: int, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-+    @staticmethod
-+    def IsEdgeOnBorder(theTrgIdx: int, theFirstEdgeNodeIdx: int, theSecondEdgeNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-+    @staticmethod
-+    def IsNodeOnBorder(theNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-     def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-     def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
-     def Perform(self) -> None: ...
-@@ -172,20 +175,6 @@ class BRepExtrema_ProximityDistTool():
-     def ProximityPoints(self, thePoint1: BVH_Vec3d, thePoint2: BVH_Vec3d) -> None: ...
-     def RejectNode(self, theCornerMin: BVH_Vec3d, theCornerMax: BVH_Vec3d) -> Tuple[bool, float]: ...
- 
--class BRepExtrema_ProximityValueTool:
--    @overload
--    def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def Distance(self) -> float: ...
--    def IsDone(self) -> bool: ...
--    def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
--    def MarkDirty(self) -> None: ...
--    def Perform(self) -> float: ...
--    def ProximityPoints(self, thePoint1: gp_Pnt, thePoint2: gp_Pnt) -> None: ...
--    def SetNbSamplePoints(self, theSamples1: Optional[int] = 0, theSamples2: Optional[int] = 0) -> None: ...
--
- class BRepExtrema_ShapeProximity:
-     @overload
-     def __init__(self, theTolerance: Optional[float] = precision_Infinite()) -> None: ...
-@@ -271,3 +260,5 @@ class BRepExtrema_OverlapTool: ...
- # hsequence classes
- 
- BRepExtrema_Poly_Distance = BRepExtrema_Poly.Distance
-+BRepExtrema_ProximityDistTool_IsEdgeOnBorder = BRepExtrema_ProximityDistTool.IsEdgeOnBorder
-+BRepExtrema_ProximityDistTool_IsNodeOnBorder = BRepExtrema_ProximityDistTool.IsNodeOnBorder
-diff --git a/src/SWIG_files/wrapper/BRepFill.i b/src/SWIG_files/wrapper/BRepFill.i
-index 1b12746f..0281ab54 100644
---- a/src/SWIG_files/wrapper/BRepFill.i
-+++ b/src/SWIG_files/wrapper/BRepFill.i
-@@ -105,6 +105,16 @@ from OCC.Core.Exception import *
- };
- 
- /* public enums */
-+enum BRepFill_ThruSectionErrorStatus {
-+	BRepFill_ThruSectionErrorStatus_Done = 0,
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1,
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2,
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3,
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4,
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5,
-+	BRepFill_ThruSectionErrorStatus_Failed = 6,
-+};
-+
- enum BRepFill_TypeOfContact {
- 	BRepFill_NoContact = 0,
- 	BRepFill_Contact = 1,
-@@ -122,6 +132,22 @@ enum BRepFill_TransitionStyle {
- /* python proxy classes for enums */
- %pythoncode {
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+	BRepFill_ThruSectionErrorStatus_Done = 0
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5
-+	BRepFill_ThruSectionErrorStatus_Failed = 6
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
- 	BRepFill_NoContact = 0
- 	BRepFill_Contact = 1
-@@ -575,6 +601,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Edge & SubSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "No available documentation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 217046dd3125fb37abc6e15803e209f1 ****/
- 		%feature("compactdefaultargs") Init;
-@@ -1816,6 +1853,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Shape & SSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns status of the operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** IsMutableInput ******************/
- 		/**** md5 signature: 2df16e5a957577cfce65832aa2d90512 ****/
- 		%feature("compactdefaultargs") IsMutableInput;
-diff --git a/src/SWIG_files/wrapper/BRepFill.pyi b/src/SWIG_files/wrapper/BRepFill.pyi
-index b73b54f3..412b53b2 100644
---- a/src/SWIG_files/wrapper/BRepFill.pyi
-+++ b/src/SWIG_files/wrapper/BRepFill.pyi
-@@ -83,6 +83,23 @@ class BRepFill_SequenceOfSection:
-     def Value(self, theIndex: int) -> BRepFill_Section: ...
-     def SetValue(self, theIndex: int, theValue: BRepFill_Section) -> None: ...
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+    BRepFill_ThruSectionErrorStatus_Done: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotDone: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotSameTopology: int = ...
-+    BRepFill_ThruSectionErrorStatus_ProfilesInconsistent: int = ...
-+    BRepFill_ThruSectionErrorStatus_WrongUsage: int = ...
-+    BRepFill_ThruSectionErrorStatus_Null3DCurve: int = ...
-+    BRepFill_ThruSectionErrorStatus_Failed: int = ...
-+
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
-     BRepFill_NoContact: int = ...
-     BRepFill_Contact: int = ...
-@@ -139,6 +156,7 @@ class BRepFill_CompatibleWires:
-     def __init__(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SubSection: TopoDS_Edge) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def IsDegeneratedFirstSection(self) -> bool: ...
-     def IsDegeneratedLastSection(self) -> bool: ...
-@@ -255,6 +273,7 @@ class BRepFill_Generator:
-     def AddWire(self, Wire: TopoDS_Wire) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SSection: TopoDS_Shape) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def IsMutableInput(self) -> bool: ...
-     def Perform(self) -> None: ...
-     def ResultShape(self, theShape: TopoDS_Shape) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BRepOffset.i b/src/SWIG_files/wrapper/BRepOffset.i
-index d6800998..05add5f2 100644
---- a/src/SWIG_files/wrapper/BRepOffset.i
-+++ b/src/SWIG_files/wrapper/BRepOffset.i
-@@ -131,6 +131,7 @@ enum BRepOffset_Error {
- 	BRepOffset_CannotFuseVertices = 7,
- 	BRepOffset_CannotExtentEdge = 8,
- 	BRepOffset_UserBreak = 9,
-+	BRepOffset_MixedConnectivity = 10,
- };
- 
- enum BRepOffsetSimple_Status {
-@@ -171,6 +172,7 @@ class BRepOffset_Error(IntEnum):
- 	BRepOffset_CannotFuseVertices = 7
- 	BRepOffset_CannotExtentEdge = 8
- 	BRepOffset_UserBreak = 9
-+	BRepOffset_MixedConnectivity = 10
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
- BRepOffset_BadNormalsOnGeometry = BRepOffset_Error.BRepOffset_BadNormalsOnGeometry
-@@ -181,6 +183,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
- 	BRepOffsetSimple_OK = 0
-diff --git a/src/SWIG_files/wrapper/BRepOffset.pyi b/src/SWIG_files/wrapper/BRepOffset.pyi
-index 89a5e3e1..fd6f7478 100644
---- a/src/SWIG_files/wrapper/BRepOffset.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffset.pyi
-@@ -43,6 +43,7 @@ class BRepOffset_Error(IntEnum):
-     BRepOffset_CannotFuseVertices: int = ...
-     BRepOffset_CannotExtentEdge: int = ...
-     BRepOffset_UserBreak: int = ...
-+    BRepOffset_MixedConnectivity: int = ...
- 
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
-@@ -54,6 +55,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
-     BRepOffsetSimple_OK: int = ...
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.i b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-index 1f9ad1dd..df26f708 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.i
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-@@ -2558,6 +2558,17 @@ TopoDS_Shape
- ") GeneratedFace;
- 		TopoDS_Shape GeneratedFace(const TopoDS_Shape & Edge);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns the status of thrusection operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 82b061dc05f66b08422610d2d7504487 ****/
- 		%feature("compactdefaultargs") Init;
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-index 042de45f..815ee7e1 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-@@ -260,6 +260,7 @@ class BRepOffsetAPI_ThruSections(BRepBuilderAPI_MakeShape):
-     def FirstShape(self) -> TopoDS_Shape: ...
-     def Generated(self, S: TopoDS_Shape) -> TopTools_ListOfShape: ...
-     def GeneratedFace(self, Edge: TopoDS_Shape) -> TopoDS_Shape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, isSolid: Optional[bool] = False, ruled: Optional[bool] = False, pres3d: Optional[float] = 1.0e-06) -> None: ...
-     def IsMutableInput(self) -> bool: ...
-     def LastShape(self) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BSplCLib.i b/src/SWIG_files/wrapper/BSplCLib.i
-index f0b6635f..80aa4d80 100644
---- a/src/SWIG_files/wrapper/BSplCLib.i
-+++ b/src/SWIG_files/wrapper/BSplCLib.i
-@@ -2001,6 +2001,29 @@ InversionProblem: int
- ") Interpolate;
- 		static void Interpolate(const Standard_Integer Degree, const TColStd_Array1OfReal & FlatKnots, const TColStd_Array1OfReal & Parameters, const TColStd_Array1OfInteger & ContactOrderArray, const Standard_Integer ArrayDimension, Standard_Real &OutValue, Standard_Real &OutValue, Standard_Integer &OutValue);
- 
-+		/****************** Intervals ******************/
-+		/**** md5 signature: 6005dd7b642eb153ae7f9293cf41ffb5 ****/
-+		%feature("compactdefaultargs") Intervals;
-+		%feature("autodoc", "Splits the given range to bspline intervals of given continuity @param[in] theknots the knots of bspline @param[in] themults the knots' multiplicities @param[in] thedegree the degree of bspline @param[in] isperiodic the periodicity of bspline @param[in] thecontinuity the target interval's continuity @param[in] thefirst the begin of the target range @param[in] thelast the end of the target range @param[in] thetolerance the tolerance @param[in,out] theintervals the array to store intervals if isn't nullptr returns the number of intervals.
-+
-+Parameters
-+----------
-+theKnots: TColStd_Array1OfReal
-+theMults: TColStd_Array1OfInteger
-+theDegree: int
-+isPeriodic: bool
-+theContinuity: int
-+theFirst: float
-+theLast: float
-+theTolerance: float
-+theIntervals: TColStd_Array1OfReal *
-+
-+Returns
-+-------
-+int
-+") Intervals;
-+		static Standard_Integer Intervals(const TColStd_Array1OfReal & theKnots, const TColStd_Array1OfInteger & theMults, Standard_Integer theDegree, Standard_Boolean isPeriodic, Standard_Integer theContinuity, Standard_Real theFirst, Standard_Real theLast, Standard_Real theTolerance, TColStd_Array1OfReal * theIntervals);
-+
- 		/****************** IsRational ******************/
- 		/**** md5 signature: 5ee1bb4d64e0a78acc3cb994f1afcefa ****/
- 		%feature("compactdefaultargs") IsRational;
-diff --git a/src/SWIG_files/wrapper/BSplCLib.pyi b/src/SWIG_files/wrapper/BSplCLib.pyi
-index b8ac4682..671f76a0 100644
---- a/src/SWIG_files/wrapper/BSplCLib.pyi
-+++ b/src/SWIG_files/wrapper/BSplCLib.pyi
-@@ -278,6 +278,8 @@ class bsplclib:
-     @staticmethod
-     def Interpolate(Degree: int, FlatKnots: TColStd_Array1OfReal, Parameters: TColStd_Array1OfReal, ContactOrderArray: TColStd_Array1OfInteger, ArrayDimension: int) -> Tuple[float, float, int]: ...
-     @staticmethod
-+    def Intervals(theKnots: TColStd_Array1OfReal, theMults: TColStd_Array1OfInteger, theDegree: int, isPeriodic: bool, theContinuity: int, theFirst: float, theLast: float, theTolerance: float, theIntervals: TColStd_Array1OfReal) -> int: ...
-+    @staticmethod
-     def IsRational(Weights: TColStd_Array1OfReal, I1: int, I2: int, Epsilon: Optional[float] = 0.0) -> bool: ...
-     @staticmethod
-     def KnotAnalysis(Degree: int, Periodic: bool, CKnots: TColStd_Array1OfReal, CMults: TColStd_Array1OfInteger, KnotForm: GeomAbs_BSplKnotDistribution) -> int: ...
-@@ -566,6 +568,7 @@ bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
-+bsplclib_Intervals = bsplclib.Intervals
- bsplclib_IsRational = bsplclib.IsRational
- bsplclib_KnotAnalysis = bsplclib.KnotAnalysis
- bsplclib_KnotForm = bsplclib.KnotForm
-diff --git a/src/SWIG_files/wrapper/ChFiDS.i b/src/SWIG_files/wrapper/ChFiDS.i
-index d60e552a..b8096939 100644
---- a/src/SWIG_files/wrapper/ChFiDS.i
-+++ b/src/SWIG_files/wrapper/ChFiDS.i
-@@ -121,6 +121,7 @@ enum ChFiDS_TypeOfConcavity {
- 	ChFiDS_Tangential = 2,
- 	ChFiDS_FreeBound = 3,
- 	ChFiDS_Other = 4,
-+	ChFiDS_Mixed = 5,
- };
- 
- /* end public enums declaration */
-@@ -178,11 +179,13 @@ class ChFiDS_TypeOfConcavity(IntEnum):
- 	ChFiDS_Tangential = 2
- 	ChFiDS_FreeBound = 3
- 	ChFiDS_Other = 4
-+	ChFiDS_Mixed = 5
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- };
- /* end python proxy for enums */
- 
-@@ -2029,6 +2032,17 @@ TopoDS_Vertex
- ") FirstVertex;
- 		TopoDS_Vertex FirstVertex();
- 
-+		/****************** GetTolesp ******************/
-+		/**** md5 signature: 217c13748b3cb2bf2cc59e96cafe8207 ****/
-+		%feature("compactdefaultargs") GetTolesp;
-+		%feature("autodoc", "Return tolesp parameter.
-+
-+Returns
-+-------
-+float
-+") GetTolesp;
-+		Standard_Real GetTolesp();
-+
- 		/****************** GetType ******************/
- 		/**** md5 signature: 6d4e6ae7972633971ba343e8afc91aa1 ****/
- 		%feature("compactdefaultargs") GetType;
-diff --git a/src/SWIG_files/wrapper/ChFiDS.pyi b/src/SWIG_files/wrapper/ChFiDS.pyi
-index 6543ea1a..d1884594 100644
---- a/src/SWIG_files/wrapper/ChFiDS.pyi
-+++ b/src/SWIG_files/wrapper/ChFiDS.pyi
-@@ -192,12 +192,14 @@ class ChFiDS_TypeOfConcavity(IntEnum):
-     ChFiDS_Tangential: int = ...
-     ChFiDS_FreeBound: int = ...
-     ChFiDS_Other: int = ...
-+    ChFiDS_Mixed: int = ...
- 
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- 
- class ChFiDS_CircSection:
-     def __init__(self) -> None: ...
-@@ -351,6 +353,7 @@ class ChFiDS_Spine(Standard_Transient):
-     def FirstParameter(self, IndexSpine: int) -> float: ...
-     def FirstStatus(self) -> ChFiDS_State: ...
-     def FirstVertex(self) -> TopoDS_Vertex: ...
-+    def GetTolesp(self) -> float: ...
-     def GetType(self) -> GeomAbs_CurveType: ...
-     def GetTypeOfConcavity(self) -> ChFiDS_TypeOfConcavity: ...
-     def HasFirstTgt(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/GeomInt.i b/src/SWIG_files/wrapper/GeomInt.i
-index a01b7841..9d84060c 100644
---- a/src/SWIG_files/wrapper/GeomInt.i
-+++ b/src/SWIG_files/wrapper/GeomInt.i
-@@ -936,6 +936,29 @@ opencascade::handle<Geom_Curve>
- ") Boundary;
- 		const opencascade::handle<Geom_Curve> & Boundary(const Standard_Integer Index);
- 
-+		/****************** BuildPCurves ******************/
-+		/**** md5 signature: 6965f43fd020f13216b45cd065743faa ****/
-+		%feature("compactdefaultargs") BuildPCurves;
-+		%feature("autodoc", "Creates 2d-curve on given surface from given 3d-curve.
-+
-+Parameters
-+----------
-+theFirst: float
-+theLast: float
-+theUmin: float
-+theUmax: float
-+theVmin: float
-+theVmax: float
-+theSurface: Geom_Surface
-+theCurve: Geom_Curve
-+theCurve2d: Geom2d_Curve
-+
-+Returns
-+-------
-+theTol: float
-+") BuildPCurves;
-+		static void BuildPCurves(const Standard_Real theFirst, const Standard_Real theLast, const Standard_Real theUmin, const Standard_Real theUmax, const Standard_Real theVmin, const Standard_Real theVmax, Standard_Real &OutValue, const opencascade::handle<Geom_Surface> & theSurface, const opencascade::handle<Geom_Curve> & theCurve, opencascade::handle<Geom2d_Curve> & theCurve2d);
-+
- 		/****************** BuildPCurves ******************/
- 		/**** md5 signature: 2c2bdb53423075c70323712785098b12 ****/
- 		%feature("compactdefaultargs") BuildPCurves;
-diff --git a/src/SWIG_files/wrapper/GeomInt.pyi b/src/SWIG_files/wrapper/GeomInt.pyi
-index eae46ba0..c6076fec 100644
---- a/src/SWIG_files/wrapper/GeomInt.pyi
-+++ b/src/SWIG_files/wrapper/GeomInt.pyi
-@@ -110,6 +110,10 @@ class GeomInt_IntSS:
-     @overload
-     def __init__(self, S1: Geom_Surface, S2: Geom_Surface, Tol: float, Approx: Optional[bool] = True, ApproxS1: Optional[bool] = False, ApproxS2: Optional[bool] = False) -> None: ...
-     def Boundary(self, Index: int) -> Geom_Curve: ...
-+    @overload
-+    @staticmethod
-+    def BuildPCurves(theFirst: float, theLast: float, theUmin: float, theUmax: float, theVmin: float, theVmax: float, theSurface: Geom_Surface, theCurve: Geom_Curve, theCurve2d: Geom2d_Curve) -> float: ...
-+    @overload
-     @staticmethod
-     def BuildPCurves(f: float, l: float, S: Geom_Surface, C: Geom_Curve, C2d: Geom2d_Curve) -> float: ...
-     def HasLineOnS1(self, Index: int) -> bool: ...
-@@ -525,6 +529,7 @@ class GeomInt_WLApprox: ...
- 
- geomint_AdjustPeriodic = geomint.AdjustPeriodic
- GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
-+GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
- GeomInt_IntSS_MakeBSpline = GeomInt_IntSS.MakeBSpline
- GeomInt_IntSS_MakeBSpline2d = GeomInt_IntSS.MakeBSpline2d
- GeomInt_IntSS_TreatRLine = GeomInt_IntSS.TreatRLine
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.i b/src/SWIG_files/wrapper/STEPCAFControl.i
-index 3ddc1ba8..9372c840 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.i
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.i
-@@ -1849,24 +1849,24 @@ None
- 		 STEPCAFControl_Writer();
- 
- 		/****************** STEPCAFControl_Writer ******************/
--		/**** md5 signature: 70a513d4d628947fa1e98ed8e35359d9 ****/
-+		/**** md5 signature: dedf68dbebf4d519616966632e9764a8 ****/
- 		%feature("compactdefaultargs") STEPCAFControl_Writer;
- 		%feature("autodoc", "Creates a reader tool and attaches it to an already existing session clears the session if it was not yet set for step clears the internal data structures.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") STEPCAFControl_Writer;
--		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** ChangeWriter ******************/
--		/**** md5 signature: 9719ebc8336482d007d450c0e3b00713 ****/
-+		/**** md5 signature: acee09144e4dec42ed602fde52975129 ****/
- 		%feature("compactdefaultargs") ChangeWriter;
- 		%feature("autodoc", "Returns basic reader for root file.
- 
-@@ -1877,39 +1877,39 @@ STEPControl_Writer
- 		STEPControl_Writer & ChangeWriter();
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: 4f90b7104efa0649e14f70ad09ab8e61 ****/
-+		/**** md5 signature: 0769b22e71152aabd75dace01164fc2b ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its original label returns false if no external file with given name is read.
- 
- Parameters
- ----------
--L: TDF_Label
--ef: STEPCAFControl_ExternFile
-+theLabel: TDF_Label
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const TDF_Label & L, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(const TDF_Label & theLabel, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: ad0d6b0b3be01575d180dd24c55cd264 ****/
-+		/**** md5 signature: f77e0b8157371b505bc136b8bd33443e ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its name returns false if no external file with given name is read.
- 
- Parameters
- ----------
--name: char *
--ef: STEPCAFControl_ExternFile
-+theName: str
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const char * name, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(Standard_CString theName, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFiles ******************/
--		/**** md5 signature: 1154c88bc3253c7291077317c11363ab ****/
-+		/**** md5 signature: 08a0b41df731275c7119f8910e47970c ****/
- 		%feature("compactdefaultargs") ExternFiles;
- 		%feature("autodoc", "Returns data on external files returns null handle if no external files are read.
- 
-@@ -1920,7 +1920,7 @@ NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_
- 		const NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_ExternFile>> & ExternFiles();
- 
- 		/****************** GetColorMode ******************/
--		/**** md5 signature: 010da6a8a0e8a61fdb607fd6faba2b56 ****/
-+		/**** md5 signature: cddb885e605f1794a5a6486023f65736 ****/
- 		%feature("compactdefaultargs") GetColorMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1931,7 +1931,7 @@ bool
- 		Standard_Boolean GetColorMode();
- 
- 		/****************** GetDimTolMode ******************/
--		/**** md5 signature: 2eed8e0bb30a6f85d0c500a8d4b9e16c ****/
-+		/**** md5 signature: 5f3c2fc2e581a2ea711f9607cd0a817a ****/
- 		%feature("compactdefaultargs") GetDimTolMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1942,7 +1942,7 @@ bool
- 		Standard_Boolean GetDimTolMode();
- 
- 		/****************** GetLayerMode ******************/
--		/**** md5 signature: d677385c303e067613f92bc738509727 ****/
-+		/**** md5 signature: b6b1458608d2429d13e63a07c0b392d8 ****/
- 		%feature("compactdefaultargs") GetLayerMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1953,7 +1953,7 @@ bool
- 		Standard_Boolean GetLayerMode();
- 
- 		/****************** GetMaterialMode ******************/
--		/**** md5 signature: cda125e3ff8f835393b9894e3f229aea ****/
-+		/**** md5 signature: 2057a4ef866086868ba91cb34e6ad09a ****/
- 		%feature("compactdefaultargs") GetMaterialMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1964,7 +1964,7 @@ bool
- 		Standard_Boolean GetMaterialMode();
- 
- 		/****************** GetNameMode ******************/
--		/**** md5 signature: 2dd32a893d6f5f4666ac3752ace2d12f ****/
-+		/**** md5 signature: 1097f532a68b4625a0108cddc8366238 ****/
- 		%feature("compactdefaultargs") GetNameMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1975,7 +1975,7 @@ bool
- 		Standard_Boolean GetNameMode();
- 
- 		/****************** GetPropsMode ******************/
--		/**** md5 signature: 3b2f4c2b61084d1e067d83421e0ea81d ****/
-+		/**** md5 signature: 99cee0ed60040ac88dbf6e950f82a10e ****/
- 		%feature("compactdefaultargs") GetPropsMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1986,7 +1986,7 @@ bool
- 		Standard_Boolean GetPropsMode();
- 
- 		/****************** GetSHUOMode ******************/
--		/**** md5 signature: 74c5f048b04741ef5abfe259b5c453cd ****/
-+		/**** md5 signature: 4e3a3a7f89647ad6b4f35f24a42234d6 ****/
- 		%feature("compactdefaultargs") GetSHUOMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1997,31 +1997,31 @@ bool
- 		Standard_Boolean GetSHUOMode();
- 
- 		/****************** Init ******************/
--		/**** md5 signature: 13544ae418c98602c6eaed6faea8f526 ****/
-+		/**** md5 signature: e7d3f870615865a6686f75c3aa077ff3 ****/
- 		%feature("compactdefaultargs") Init;
- 		%feature("autodoc", "Clears the internal data structures and attaches to a new session clears the session if it was not yet set for step.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") Init;
--		void Init(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		void Init(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 82a9ff51a493dfcaea368ecaef792fdb ****/
-+		/**** md5 signature: 624f8c3670df66af47c4a9af2967eb2a ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: TCollection_AsciiString
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2029,17 +2029,17 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const TCollection_AsciiString & filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, TCollection_AsciiString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 1ef00b1bd520cd3b05cc4f00e91c494d ****/
-+		/**** md5 signature: 90b76d8d692f1926baa1d9dd3db9018b ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "Transfers a document and writes it to a step file returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: char *
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2047,124 +2047,124 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const char * filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, Standard_CString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** SetColorMode ******************/
--		/**** md5 signature: e8d41838c31a9460a1c83d84b1f572a1 ****/
-+		/**** md5 signature: f341158b4cc5262e2e5cb7b941cc9031 ****/
- 		%feature("compactdefaultargs") SetColorMode;
- 		%feature("autodoc", "Set colormode for indicate write colors or not.
- 
- Parameters
- ----------
--colormode: bool
-+theColorMode: bool
- 
- Returns
- -------
- None
- ") SetColorMode;
--		void SetColorMode(const Standard_Boolean colormode);
-+		void SetColorMode(const Standard_Boolean theColorMode);
- 
- 		/****************** SetDimTolMode ******************/
--		/**** md5 signature: 18d408609aea9a67d1d1e15d923773db ****/
-+		/**** md5 signature: 08cd53498196841f3c3a5c0e281a464f ****/
- 		%feature("compactdefaultargs") SetDimTolMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--dimtolmode: bool
-+theDimTolMode: bool
- 
- Returns
- -------
- None
- ") SetDimTolMode;
--		void SetDimTolMode(const Standard_Boolean dimtolmode);
-+		void SetDimTolMode(const Standard_Boolean theDimTolMode);
- 
- 		/****************** SetLayerMode ******************/
--		/**** md5 signature: 3ec21c8de4b114a83bb0b34cb3b98662 ****/
-+		/**** md5 signature: d164352478699d01fe5d59c680c2a74d ****/
- 		%feature("compactdefaultargs") SetLayerMode;
- 		%feature("autodoc", "Set layermode for indicate write layers or not.
- 
- Parameters
- ----------
--layermode: bool
-+theLayerMode: bool
- 
- Returns
- -------
- None
- ") SetLayerMode;
--		void SetLayerMode(const Standard_Boolean layermode);
-+		void SetLayerMode(const Standard_Boolean theLayerMode);
- 
- 		/****************** SetMaterialMode ******************/
--		/**** md5 signature: ef4abdfa06b076742a69b17150f91d88 ****/
-+		/**** md5 signature: 932571d6d0df2e34fd2487f6025f4956 ****/
- 		%feature("compactdefaultargs") SetMaterialMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--matmode: bool
-+theMaterialMode: bool
- 
- Returns
- -------
- None
- ") SetMaterialMode;
--		void SetMaterialMode(const Standard_Boolean matmode);
-+		void SetMaterialMode(const Standard_Boolean theMaterialMode);
- 
- 		/****************** SetNameMode ******************/
--		/**** md5 signature: 43ccb5d3fb024d8191f251ee74d0f6ba ****/
-+		/**** md5 signature: a24984c6ce274882f02601c13cf73b9a ****/
- 		%feature("compactdefaultargs") SetNameMode;
- 		%feature("autodoc", "Set namemode for indicate write name or not.
- 
- Parameters
- ----------
--namemode: bool
-+theNameMode: bool
- 
- Returns
- -------
- None
- ") SetNameMode;
--		void SetNameMode(const Standard_Boolean namemode);
-+		void SetNameMode(const Standard_Boolean theNameMode);
- 
- 		/****************** SetPropsMode ******************/
--		/**** md5 signature: 97f3b34eb7a1e38c6cf17d5c26f938a6 ****/
-+		/**** md5 signature: fbb288fb7a76bf6b9cd3acd70d056a7f ****/
- 		%feature("compactdefaultargs") SetPropsMode;
- 		%feature("autodoc", "Propsmode for indicate write validation properties or not.
- 
- Parameters
- ----------
--propsmode: bool
-+thePropsMode: bool
- 
- Returns
- -------
- None
- ") SetPropsMode;
--		void SetPropsMode(const Standard_Boolean propsmode);
-+		void SetPropsMode(const Standard_Boolean thePropsMode);
- 
- 		/****************** SetSHUOMode ******************/
--		/**** md5 signature: ad06ed8b923731ee7b75bf3d7074f299 ****/
-+		/**** md5 signature: 39955bf97fe8d6a6d6b3b211a859f216 ****/
- 		%feature("compactdefaultargs") SetSHUOMode;
- 		%feature("autodoc", "Set shuo mode for indicate write shuo or not.
- 
- Parameters
- ----------
--shuomode: bool
-+theSHUOMode: bool
- 
- Returns
- -------
- None
- ") SetSHUOMode;
--		void SetSHUOMode(const Standard_Boolean shuomode);
-+		void SetSHUOMode(const Standard_Boolean theSHUOMode);
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 2616e7e1bc1f8548fb5e464651c0f720 ****/
-+		/**** md5 signature: dd7ebbdc1c22d7845ad531885273adee ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Transfers a document (or single label) to a step model the mode of translation of shape is asis if multi is not null pointer, it switches to multifile mode (with external refs), and string pointed by <multi> gives prefix for names of extern files (can be empty string) returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--mode: STEPControl_StepModelType,optional
-+theDoc: TDocStd_Document
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2173,19 +2173,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & doc, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & theDoc, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 3230c3763f234bd8211762a290f20e3d ****/
-+		/**** md5 signature: 40f710aeab310ab1eff9bbdbe733b162 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Method to transfer part of the document specified by label.
- 
- Parameters
- ----------
--L: TDF_Label
--mode: STEPControl_StepModelType,optional
-+theLabel: TDF_Label
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2194,19 +2194,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_Label & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_Label & theLabel, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 7533cb05eb0d45c4c5142f45de14069a ****/
-+		/**** md5 signature: 4e3f0900d966cc07a5e2191b2b4ba7a6 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Mehod to writing sequence of root assemblies or part of the file specified by use by one label .
- 
- Parameters
- ----------
--L: TDF_LabelSequence
--mode: STEPControl_StepModelType,optional
-+theLabelSeq: TDF_LabelSequence
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2215,7 +2215,7 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_LabelSequence & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_LabelSequence & theLabelSeq, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Write ******************/
- 		/**** md5 signature: 14544d6ececf228a5871ef6afa0279ae ****/
-@@ -2248,7 +2248,7 @@ IFSelect_ReturnStatus
- 		IFSelect_ReturnStatus WriteStream(std::ostream & theStream);
- 
- 		/****************** Writer ******************/
--		/**** md5 signature: 70b6d632350a5ba6ff972c4b437432a0 ****/
-+		/**** md5 signature: 056d4f3221d283b7d58d92ddd5c40dd7 ****/
- 		%feature("compactdefaultargs") Writer;
- 		%feature("autodoc", "Returns basic reader as const.
- 
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.pyi b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-index 896eedcf..9160ffa9 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.pyi
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-@@ -175,12 +175,12 @@ class STEPCAFControl_Writer:
-     @overload
-     def __init__(self) -> None: ...
-     @overload
--    def __init__(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def __init__(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     def ChangeWriter(self) -> STEPControl_Writer: ...
-     @overload
--    def ExternFile(self, L: TDF_Label, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theLabel: TDF_Label, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     @overload
--    def ExternFile(self, name: str, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theName: str, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     def ExternFiles(self) -> False: ...
-     def GetColorMode(self) -> bool: ...
-     def GetDimTolMode(self) -> bool: ...
-@@ -189,24 +189,24 @@ class STEPCAFControl_Writer:
-     def GetNameMode(self) -> bool: ...
-     def GetPropsMode(self) -> bool: ...
-     def GetSHUOMode(self) -> bool: ...
--    def Init(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def Init(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: TCollection_AsciiString, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
--    def SetColorMode(self, colormode: bool) -> None: ...
--    def SetDimTolMode(self, dimtolmode: bool) -> None: ...
--    def SetLayerMode(self, layermode: bool) -> None: ...
--    def SetMaterialMode(self, matmode: bool) -> None: ...
--    def SetNameMode(self, namemode: bool) -> None: ...
--    def SetPropsMode(self, propsmode: bool) -> None: ...
--    def SetSHUOMode(self, shuomode: bool) -> None: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def SetColorMode(self, theColorMode: bool) -> None: ...
-+    def SetDimTolMode(self, theDimTolMode: bool) -> None: ...
-+    def SetLayerMode(self, theLayerMode: bool) -> None: ...
-+    def SetMaterialMode(self, theMaterialMode: bool) -> None: ...
-+    def SetNameMode(self, theNameMode: bool) -> None: ...
-+    def SetPropsMode(self, thePropsMode: bool) -> None: ...
-+    def SetSHUOMode(self, theSHUOMode: bool) -> None: ...
-     @overload
--    def Transfer(self, doc: TDocStd_Document, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theDoc: TDocStd_Document, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_Label, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabel: TDF_Label, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_LabelSequence, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabelSeq: TDF_LabelSequence, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     def Write(self, theFileName: str) -> IFSelect_ReturnStatus: ...
-     def Writer(self) -> STEPControl_Writer: ...
- 
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.i b/src/SWIG_files/wrapper/STEPConstruct.i
-index f1221c33..d9eaffc8 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.i
-+++ b/src/SWIG_files/wrapper/STEPConstruct.i
-@@ -2598,6 +2598,17 @@ opencascade::handle<StepVisual_PresentationStyleAssignment>
- ") MakeColorPSA;
- 		opencascade::handle<StepVisual_PresentationStyleAssignment> MakeColorPSA(const opencascade::handle<StepRepr_RepresentationItem> & item, const opencascade::handle<StepVisual_Colour> & SurfCol, const opencascade::handle<StepVisual_Colour> & CurveCol, const opencascade::handle<StepVisual_Colour> & RenderCol, const Standard_Real RenderTransp, const Standard_Boolean isForNAUO = Standard_False);
- 
-+		/****************** NbRootStyles ******************/
-+		/**** md5 signature: 4bb6a5a6f49e5abb7085f5ef57337a5a ****/
-+		%feature("compactdefaultargs") NbRootStyles;
-+		%feature("autodoc", "Returns number of override styles.
-+
-+Returns
-+-------
-+int
-+") NbRootStyles;
-+		Standard_Integer NbRootStyles();
-+
- 		/****************** NbStyles ******************/
- 		/**** md5 signature: 9f5fbd515247307ce70e63c6f585ddb7 ****/
- 		%feature("compactdefaultargs") NbStyles;
-@@ -2609,6 +2620,21 @@ int
- ") NbStyles;
- 		Standard_Integer NbStyles();
- 
-+		/****************** RootStyle ******************/
-+		/**** md5 signature: 97e67ad6592e4e36a6444e18652921fc ****/
-+		%feature("compactdefaultargs") RootStyle;
-+		%feature("autodoc", "Returns override style with given index.
-+
-+Parameters
-+----------
-+i: int
-+
-+Returns
-+-------
-+opencascade::handle<StepVisual_StyledItem>
-+") RootStyle;
-+		opencascade::handle<StepVisual_StyledItem> RootStyle(const Standard_Integer i);
-+
- 		/****************** Style ******************/
- 		/**** md5 signature: e152f39ac13e328dca6d350a6f881da8 ****/
- 		%feature("compactdefaultargs") Style;
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.pyi b/src/SWIG_files/wrapper/STEPConstruct.pyi
-index ca04fc33..0f3aa64d 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.pyi
-+++ b/src/SWIG_files/wrapper/STEPConstruct.pyi
-@@ -253,7 +253,9 @@ class STEPConstruct_Styles(STEPConstruct_Tool):
-     def LoadInvisStyles(self, InvSyles: TColStd_HSequenceOfTransient) -> bool: ...
-     def LoadStyles(self) -> bool: ...
-     def MakeColorPSA(self, item: StepRepr_RepresentationItem, SurfCol: StepVisual_Colour, CurveCol: StepVisual_Colour, RenderCol: StepVisual_Colour, RenderTransp: float, isForNAUO: Optional[bool] = False) -> StepVisual_PresentationStyleAssignment: ...
-+    def NbRootStyles(self) -> int: ...
-     def NbStyles(self) -> int: ...
-+    def RootStyle(self, i: int) -> StepVisual_StyledItem: ...
-     def Style(self, i: int) -> StepVisual_StyledItem: ...
- 
- class STEPConstruct_ValidationProps(STEPConstruct_Tool):
-diff --git a/src/SWIG_files/wrapper/ShapeUpgrade.i b/src/SWIG_files/wrapper/ShapeUpgrade.i
-index 1fd11ef9..b3c16c8c 100644
---- a/src/SWIG_files/wrapper/ShapeUpgrade.i
-+++ b/src/SWIG_files/wrapper/ShapeUpgrade.i
-@@ -1064,6 +1064,7 @@ None
- class ShapeUpgrade_UnifySameDomain : public Standard_Transient {
- 	public:
- typedef NCollection_DataMap<TopoDS_Shape , opencascade ::handle<Geom_Plane>, TopTools_ShapeMapHasher> DataMapOfFacePlane;
-+typedef NCollection_DataMap<TopoDS_Shape , TopTools_MapOfShape , TopTools_ShapeMapHasher> DataMapOfShapeMapOfShape;
- 		/****************** ShapeUpgrade_UnifySameDomain ******************/
- 		/**** md5 signature: 81e68dd91fd764ff95aa62b12dc88ed6 ****/
- 		%feature("compactdefaultargs") ShapeUpgrade_UnifySameDomain;
-diff --git a/src/SWIG_files/wrapper/StdPrs.i b/src/SWIG_files/wrapper/StdPrs.i
-index 0d01b154..bcdbf6c2 100644
---- a/src/SWIG_files/wrapper/StdPrs.i
-+++ b/src/SWIG_files/wrapper/StdPrs.i
-@@ -1220,7 +1220,7 @@ int
- class StdPrs_ShadedShape : public Prs3d_Root {
- 	public:
- 		/****************** Add ******************/
--		/**** md5 signature: 4361c97ebfd2d178620c977d5eabb386 ****/
-+		/**** md5 signature: eb25cffb7e72ca49100cdcc43a05ee8c ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape>. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1231,15 +1231,17 @@ theShape: TopoDS_Shape
- theDrawer: Prs3d_Drawer
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** Add ******************/
--		/**** md5 signature: c21dc028b4eb82bb3707a6e95d6e5c3b ****/
-+		/**** md5 signature: c2784d9b78f332340fcb1d6c9293a2a1 ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape> with texture coordinates. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1254,12 +1256,14 @@ theUVRepeat: gp_Pnt2d
- theUVScale: gp_Pnt2d
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** AddWireframeForFacesWithoutTriangles ******************/
- 		/**** md5 signature: 2399101e036cd3b0540bfa37732d6fc1 ****/
-diff --git a/src/SWIG_files/wrapper/StdPrs.pyi b/src/SWIG_files/wrapper/StdPrs.pyi
-index 3a01af7b..4df76eb5 100644
---- a/src/SWIG_files/wrapper/StdPrs.pyi
-+++ b/src/SWIG_files/wrapper/StdPrs.pyi
-@@ -156,10 +156,10 @@ class StdPrs_PoleCurve(Prs3d_Root):
- class StdPrs_ShadedShape(Prs3d_Root):
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @staticmethod
-     def AddWireframeForFacesWithoutTriangles(thePrs: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer) -> None: ...
-     @staticmethod
-diff --git a/src/SWIG_files/wrapper/StepToGeom.i b/src/SWIG_files/wrapper/StepToGeom.i
-index a91cc710..f4ab236f 100644
---- a/src/SWIG_files/wrapper/StepToGeom.i
-+++ b/src/SWIG_files/wrapper/StepToGeom.i
-@@ -808,22 +808,6 @@ opencascade::handle<Geom2d_VectorWithMagnitude>
- ") MakeVectorWithMagnitude2d;
- 		static opencascade::handle<Geom2d_VectorWithMagnitude> MakeVectorWithMagnitude2d(const opencascade::handle<StepGeom_Vector> & SV);
- 
--		/****************** MakeYprRotation ******************/
--		/**** md5 signature: de9dc847a92c9949d29654e63b9eb686 ****/
--		%feature("compactdefaultargs") MakeYprRotation;
--		%feature("autodoc", "No available documentation.
--
--Parameters
------------
--SR: StepKinematics_SpatialRotation
--theCntxt: StepRepr_GlobalUnitAssignedContext
--
--Returns
---------
--opencascade::handle<TColStd_HArray1OfReal>
--") MakeYprRotation;
--		static opencascade::handle<TColStd_HArray1OfReal> MakeYprRotation(const StepKinematics_SpatialRotation & SR, const opencascade::handle<StepRepr_GlobalUnitAssignedContext> & theCntxt);
--
- };
- 
- 
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.i b/src/SWIG_files/wrapper/XCAFDoc.i
-index 791919dd..e5c716a9 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.i
-+++ b/src/SWIG_files/wrapper/XCAFDoc.i
-@@ -2317,7 +2317,7 @@ TDF_Label
- 		TDF_Label FindColor(const Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: be86e43f2f2ac06163dce467a9739527 ****/
-+		/**** md5 signature: 7092ec33c89b067e1ceab0d67b5ed02d ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2330,10 +2330,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: a7a6506d3132240934c87e97ec6b28ed ****/
-+		/**** md5 signature: 7252a98dd463a84602d0b7516d6cfc04 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2346,7 +2346,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 869ec12dba73e125e4d66d2a85d2d496 ****/
-@@ -2366,7 +2366,7 @@ bool
- 		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, TDF_Label & colorL);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: 5801253cfaf9cc63278aa2d80d15b2c3 ****/
-+		/**** md5 signature: 9f42bc515522bf5857381b8ed56f5af6 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2380,10 +2380,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: f56e146c8c1c603ab9bcf2d6c801e3b4 ****/
-+		/**** md5 signature: 175af0eadf13dd6e8e7059280dcebe1e ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2397,7 +2397,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 6e439ce30113cabaadf18ee4ce1d0971 ****/
-@@ -2599,7 +2599,7 @@ bool
- 		Standard_Boolean IsSet(const TopoDS_Shape & S, const XCAFDoc_ColorType type);
- 
- 		/****************** IsVisible ******************/
--		/**** md5 signature: e84f73aaf1ac293dea741c71b9f10a4b ****/
-+		/**** md5 signature: bcc14ce19df050eb884b5911b48c4b59 ****/
- 		%feature("compactdefaultargs") IsVisible;
- 		%feature("autodoc", "Return true if object on this label is visible, false if invisible.
- 
-@@ -2611,7 +2611,7 @@ Returns
- -------
- bool
- ") IsVisible;
--		Standard_Boolean IsVisible(const TDF_Label & L);
-+		static Standard_Boolean IsVisible(const TDF_Label & L);
- 
- 		/****************** RemoveColor ******************/
- 		/**** md5 signature: 3e1749f5696dd21fe53c3eb3d8e77952 ****/
-@@ -3477,7 +3477,7 @@ None
- 		void GetDatumLabels(TDF_LabelSequence & Labels);
- 
- 		/****************** GetDatumOfTolerLabels ******************/
--		/**** md5 signature: ed65059da2973245ec5c0f5e0dfd7526 ****/
-+		/**** md5 signature: 581e63a0a9642866e1575d216f9b4d3d ****/
- 		%feature("compactdefaultargs") GetDatumOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels defined for thedimtoll label.
- 
-@@ -3490,10 +3490,10 @@ Returns
- -------
- bool
- ") GetDatumOfTolerLabels;
--		Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDatumWithObjectOfTolerLabels ******************/
--		/**** md5 signature: da94437dec84c797c8bab6e76d5e373f ****/
-+		/**** md5 signature: d5f3a53d01bb6038ce1c82b7e4989ce4 ****/
- 		%feature("compactdefaultargs") GetDatumWithObjectOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels with xcafdimtolobjects_datumobject defined for label thedimtoll.
- 
-@@ -3506,7 +3506,7 @@ Returns
- -------
- bool
- ") GetDatumWithObjectOfTolerLabels;
--		Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDimTol ******************/
- 		/**** md5 signature: 5f2928d077835acfc683c0b7e312ac72 ****/
-@@ -3646,7 +3646,7 @@ bool
- 		Standard_Boolean GetRefGeomToleranceLabels(const TDF_Label & theShapeL, TDF_LabelSequence & theDimTols);
- 
- 		/****************** GetRefShapeLabel ******************/
--		/**** md5 signature: e25d6989472f0a0e102c1daa5f739a29 ****/
-+		/**** md5 signature: b09dac51ded70edf3dd23cc545931b1a ****/
- 		%feature("compactdefaultargs") GetRefShapeLabel;
- 		%feature("autodoc", "Gets all shape labels referred by thel label of the gd&t table. returns false if there are no shape labels added to the sequences.
- 
-@@ -3660,7 +3660,7 @@ Returns
- -------
- bool
- ") GetRefShapeLabel;
--		Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
-+		static Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
- 
- 		/****************** GetTolerOfDatumLabels ******************/
- 		/**** md5 signature: b4d4047d58bcf3d1d31d5586d788da7e ****/
-@@ -5490,20 +5490,20 @@ opencascade::handle<TColStd_HSequenceOfExtendedString>
- 		opencascade::handle<TColStd_HSequenceOfExtendedString> GetLayers(const TopoDS_Shape & Sh);
- 
- 		/****************** GetShapesOfLayer ******************/
--		/**** md5 signature: 8b01d3b5f0a0832996031f609b876e7c ****/
-+		/**** md5 signature: 2bcd2de1711ebf8ae0d1ddf5d01dce52 ****/
- 		%feature("compactdefaultargs") GetShapesOfLayer;
- 		%feature("autodoc", "Return sequanese of shape labels that assigned with layers to <shlabels>.
- 
- Parameters
- ----------
--layerL: TDF_Label
--ShLabels: TDF_LabelSequence
-+theLayerL: TDF_Label
-+theShLabels: TDF_LabelSequence
- 
- Returns
- -------
- None
- ") GetShapesOfLayer;
--		void GetShapesOfLayer(const TDF_Label & layerL, TDF_LabelSequence & ShLabels);
-+		static void GetShapesOfLayer(const TDF_Label & theLayerL, TDF_LabelSequence & theShLabels);
- 
- 		/****************** ID ******************/
- 		/**** md5 signature: 4697ce8a095fa6dcef0217708d19718f ****/
-@@ -6456,7 +6456,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 806c54e68af730f31f3353b2ba682bd0 ****/
-+		/**** md5 signature: cf930e538eb371f96b92c4f439c49612 ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material assigned to <matl> returns false if no such material is assigned.
- 
-@@ -6472,7 +6472,7 @@ Returns
- -------
- aDensity: float
- ") GetMaterial;
--		Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> & aName, opencascade::handle<TCollection_HAsciiString> & aDescription, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> & aDensName, opencascade::handle<TCollection_HAsciiString> & aDensValType);
-+		static Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue);
- 
- 		/****************** GetMaterialLabels ******************/
- 		/**** md5 signature: cd3883adc849957e7e10d763ad936071 ****/
-@@ -8152,6 +8152,32 @@ opencascade::handle<TDataStd_NamedData>
- ") GetNamedProperties;
- 		opencascade::handle<TDataStd_NamedData> GetNamedProperties(const TopoDS_Shape & theShape, const Standard_Boolean theToCreate = Standard_False);
- 
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 3215690f7fd49b341401d78832c630e0 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of shape's labels @param[in] thelabels a sequence of labels to get shapes from returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Parameters
-+----------
-+theLabels: TDF_LabelSequence
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		static TopoDS_Shape GetOneShape(const TDF_LabelSequence & theLabels);
-+
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 5c1df85e1e2a72b0b93fde509f26a709 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of all top-level shapes which are free returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		TopoDS_Shape GetOneShape();
-+
- 		/****************** GetReferredShape ******************/
- 		/**** md5 signature: 63acc4d5460c835c166b1fc0b2913030 ****/
- 		%feature("compactdefaultargs") GetReferredShape;
-@@ -9844,7 +9870,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 83194336f7abcf51085de62960d38361 ****/
-+		/**** md5 signature: 694e93123423187642f68fe8d4e64f2a ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material defined by specified label, or null if the label is not in material table.
- 
-@@ -9856,7 +9882,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
- 
- 		/****************** GetMaterials ******************/
- 		/**** md5 signature: a96d68af36051bd063fefc1e10aabb79 ****/
-@@ -9890,7 +9916,7 @@ bool
- 		static Standard_Boolean GetShapeMaterial(const TDF_Label & theShapeLabel, TDF_Label & theMaterialLabel);
- 
- 		/****************** GetShapeMaterial ******************/
--		/**** md5 signature: 86335bfdea98c720bcf3af0fe4fb0fe0 ****/
-+		/**** md5 signature: 04847c1ad68cdd465933ffa2a713f244 ****/
- 		%feature("compactdefaultargs") GetShapeMaterial;
- 		%feature("autodoc", "Returns material assigned to the shape label.
- 
-@@ -9902,7 +9928,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetShapeMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
- 
- 		/****************** GetShapeMaterial ******************/
- 		/**** md5 signature: b4d2560c50c52f8b49c713aa67731929 ****/
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.pyi b/src/SWIG_files/wrapper/XCAFDoc.pyi
-index b3036a2f..9fed3910 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.pyi
-+++ b/src/SWIG_files/wrapper/XCAFDoc.pyi
-@@ -299,16 +299,20 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     @overload
-     def FindColor(self, col: Quantity_ColorRGBA) -> TDF_Label: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     @staticmethod
-     def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     def GetColor(self, S: TopoDS_Shape, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
-@@ -330,7 +334,8 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     def IsSet(self, L: TDF_Label, type: XCAFDoc_ColorType) -> bool: ...
-     @overload
-     def IsSet(self, S: TopoDS_Shape, type: XCAFDoc_ColorType) -> bool: ...
--    def IsVisible(self, L: TDF_Label) -> bool: ...
-+    @staticmethod
-+    def IsVisible(L: TDF_Label) -> bool: ...
-     def RemoveColor(self, lab: TDF_Label) -> None: ...
-     def ReverseChainsOfTreeNodes(self) -> bool: ...
-     @staticmethod
-@@ -418,9 +423,11 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def FindDimTol(self, theKind: int, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> TDF_Label: ...
-     def GetDatum(self, theDatumL: TDF_Label, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString, theIdentification: TCollection_HAsciiString) -> bool: ...
-     def GetDatumLabels(self, Labels: TDF_LabelSequence) -> None: ...
--    def GetDatumOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDatumWithObjectOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> Tuple[bool, int]: ...
-+    @staticmethod
-+    def GetDatumOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetDatumWithObjectOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal) -> Tuple[bool, int, str, str]: ...
-     def GetDimTolLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def GetDimensionLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-     def GetGeomToleranceLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-@@ -429,7 +436,8 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def GetRefDatumLabel(self, theShapeL: TDF_Label, theDatum: TDF_LabelSequence) -> bool: ...
-     def GetRefDimensionLabels(self, theShapeL: TDF_Label, theDimensions: TDF_LabelSequence) -> bool: ...
-     def GetRefGeomToleranceLabels(self, theShapeL: TDF_Label, theDimTols: TDF_LabelSequence) -> bool: ...
--    def GetRefShapeLabel(self, theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetRefShapeLabel(theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-     def GetTolerOfDatumLabels(self, theDatumL: TDF_Label, theTols: TDF_LabelSequence) -> bool: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsDatum(self, lab: TDF_Label) -> bool: ...
-@@ -629,7 +637,8 @@ class XCAFDoc_LayerTool(TDataStd_GenericEmpty):
-     def GetLayers(self, Sh: TopoDS_Shape, aLayerLS: TDF_LabelSequence) -> bool: ...
-     @overload
-     def GetLayers(self, Sh: TopoDS_Shape) -> TColStd_HSequenceOfExtendedString: ...
--    def GetShapesOfLayer(self, layerL: TDF_Label, ShLabels: TDF_LabelSequence) -> None: ...
-+    @staticmethod
-+    def GetShapesOfLayer(theLayerL: TDF_Label, theShLabels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsLayer(self, lab: TDF_Label) -> bool: ...
-     @overload
-@@ -731,7 +740,8 @@ class XCAFDoc_MaterialTool(TDataStd_GenericEmpty):
-     def GetDensityForShape(ShapeL: TDF_Label) -> float: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, MatL: TDF_Label, aName: TCollection_HAsciiString, aDescription: TCollection_HAsciiString, aDensName: TCollection_HAsciiString, aDensValType: TCollection_HAsciiString) -> Tuple[bool, float]: ...
-+    @staticmethod
-+    def GetMaterial(MatL: TDF_Label) -> Tuple[bool, str, str, float, str, str]: ...
-     def GetMaterialLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsMaterial(self, lab: TDF_Label) -> bool: ...
-@@ -899,6 +909,11 @@ class XCAFDoc_ShapeTool(TDataStd_GenericEmpty):
-     def GetNamedProperties(self, theLabel: TDF_Label, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-     @overload
-     def GetNamedProperties(self, theShape: TopoDS_Shape, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-+    @overload
-+    @staticmethod
-+    def GetOneShape(theLabels: TDF_LabelSequence) -> TopoDS_Shape: ...
-+    @overload
-+    def GetOneShape(self) -> TopoDS_Shape: ...
-     @staticmethod
-     def GetReferredShape(L: TDF_Label, Label: TDF_Label) -> bool: ...
-     @staticmethod
-@@ -1058,13 +1073,15 @@ class XCAFDoc_VisMaterialTool(TDF_Attribute):
-     def BaseLabel(self) -> TDF_Label: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetMaterial(theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     def GetMaterials(self, Labels: TDF_LabelSequence) -> None: ...
-     @overload
-     @staticmethod
-     def GetShapeMaterial(theShapeLabel: TDF_Label, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
--    def GetShapeMaterial(self, theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetShapeMaterial(theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     @overload
-     def GetShapeMaterial(self, theShape: TopoDS_Shape, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
-@@ -1209,7 +1226,12 @@ XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_ColorTool_AutoNaming = XCAFDoc_ColorTool.AutoNaming
- XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
- XCAFDoc_ColorTool_GetID = XCAFDoc_ColorTool.GetID
-+XCAFDoc_ColorTool_IsVisible = XCAFDoc_ColorTool.IsVisible
- XCAFDoc_ColorTool_Set = XCAFDoc_ColorTool.Set
- XCAFDoc_ColorTool_SetAutoNaming = XCAFDoc_ColorTool.SetAutoNaming
- XCAFDoc_Datum_GetID = XCAFDoc_Datum.GetID
-@@ -1217,7 +1239,10 @@ XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_DimTol_GetID = XCAFDoc_DimTol.GetID
- XCAFDoc_DimTol_Set = XCAFDoc_DimTol.Set
-+XCAFDoc_DimTolTool_GetDatumOfTolerLabels = XCAFDoc_DimTolTool.GetDatumOfTolerLabels
-+XCAFDoc_DimTolTool_GetDatumWithObjectOfTolerLabels = XCAFDoc_DimTolTool.GetDatumWithObjectOfTolerLabels
- XCAFDoc_DimTolTool_GetID = XCAFDoc_DimTolTool.GetID
-+XCAFDoc_DimTolTool_GetRefShapeLabel = XCAFDoc_DimTolTool.GetRefShapeLabel
- XCAFDoc_DimTolTool_Set = XCAFDoc_DimTolTool.Set
- XCAFDoc_Dimension_GetID = XCAFDoc_Dimension.GetID
- XCAFDoc_Dimension_Set = XCAFDoc_Dimension.Set
-@@ -1268,6 +1293,7 @@ XCAFDoc_GraphNode_GetDefaultGraphID = XCAFDoc_GraphNode.GetDefaultGraphID
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_LayerTool_GetID = XCAFDoc_LayerTool.GetID
-+XCAFDoc_LayerTool_GetShapesOfLayer = XCAFDoc_LayerTool.GetShapesOfLayer
- XCAFDoc_LayerTool_Set = XCAFDoc_LayerTool.Set
- XCAFDoc_LengthUnit_GetID = XCAFDoc_LengthUnit.GetID
- XCAFDoc_LengthUnit_Set = XCAFDoc_LengthUnit.Set
-@@ -1279,6 +1305,7 @@ XCAFDoc_Material_GetID = XCAFDoc_Material.GetID
- XCAFDoc_Material_Set = XCAFDoc_Material.Set
- XCAFDoc_MaterialTool_GetDensityForShape = XCAFDoc_MaterialTool.GetDensityForShape
- XCAFDoc_MaterialTool_GetID = XCAFDoc_MaterialTool.GetID
-+XCAFDoc_MaterialTool_GetMaterial = XCAFDoc_MaterialTool.GetMaterial
- XCAFDoc_MaterialTool_Set = XCAFDoc_MaterialTool.Set
- XCAFDoc_Note_Get = XCAFDoc_Note.Get
- XCAFDoc_Note_IsMine = XCAFDoc_Note.IsMine
-@@ -1294,6 +1321,7 @@ XCAFDoc_ShapeTool_GetComponents = XCAFDoc_ShapeTool.GetComponents
- XCAFDoc_ShapeTool_GetExternRefs = XCAFDoc_ShapeTool.GetExternRefs
- XCAFDoc_ShapeTool_GetID = XCAFDoc_ShapeTool.GetID
- XCAFDoc_ShapeTool_GetLocation = XCAFDoc_ShapeTool.GetLocation
-+XCAFDoc_ShapeTool_GetOneShape = XCAFDoc_ShapeTool.GetOneShape
- XCAFDoc_ShapeTool_GetReferredShape = XCAFDoc_ShapeTool.GetReferredShape
- XCAFDoc_ShapeTool_GetSHUO = XCAFDoc_ShapeTool.GetSHUO
- XCAFDoc_ShapeTool_GetSHUONextUsage = XCAFDoc_ShapeTool.GetSHUONextUsage
-@@ -1320,6 +1348,8 @@ XCAFDoc_ViewTool_GetID = XCAFDoc_ViewTool.GetID
- XCAFDoc_ViewTool_Set = XCAFDoc_ViewTool.Set
- XCAFDoc_VisMaterial_GetID = XCAFDoc_VisMaterial.GetID
- XCAFDoc_VisMaterialTool_GetID = XCAFDoc_VisMaterialTool.GetID
-+XCAFDoc_VisMaterialTool_GetMaterial = XCAFDoc_VisMaterialTool.GetMaterial
-+XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_Set = XCAFDoc_VisMaterialTool.Set
- XCAFDoc_Volume_Get = XCAFDoc_Volume.Get
-diff --git a/src/SWIG_files/wrapper/XCAFPrs.i b/src/SWIG_files/wrapper/XCAFPrs.i
-index 51f661e0..efa0d4b0 100644
---- a/src/SWIG_files/wrapper/XCAFPrs.i
-+++ b/src/SWIG_files/wrapper/XCAFPrs.i
-@@ -1019,7 +1019,7 @@ None
- class XCAFPrs_Texture : public Graphic3d_Texture2D {
- 	public:
- 		/****************** XCAFPrs_Texture ******************/
--		/**** md5 signature: f9dbe9d0fe880b67c047fad8716af896 ****/
-+		/**** md5 signature: 000bd876aad38ca74535015d5e9463d7 ****/
- 		%feature("compactdefaultargs") XCAFPrs_Texture;
- 		%feature("autodoc", "Constructor.
- 
-@@ -1032,7 +1032,7 @@ Returns
- -------
- None
- ") XCAFPrs_Texture;
--		 XCAFPrs_Texture(const Image_Texture & theImageSource, const Graphic3d_TextureUnit theUnit);
-+		 XCAFPrs_Texture(const opencascade::handle<Image_Texture> & theImageSource, const Graphic3d_TextureUnit theUnit);
- 
- 		/****************** GetCompressedImage ******************/
- 		/**** md5 signature: bad0c95151f5a884e9dbc72217977538 ****/
-@@ -1065,15 +1065,15 @@ opencascade::handle<Image_PixMap>
- 		virtual opencascade::handle<Image_PixMap> GetImage(const opencascade::handle<Image_SupportedFormats> & theSupported);
- 
- 		/****************** GetImageSource ******************/
--		/**** md5 signature: 1fa59174d8d0d408df072137f5b3fe0e ****/
-+		/**** md5 signature: c24f99a1f3e5bf7521b240aa232d6d28 ****/
- 		%feature("compactdefaultargs") GetImageSource;
- 		%feature("autodoc", "Return image source.
- 
- Returns
- -------
--Image_Texture
-+opencascade::handle<Image_Texture>
- ") GetImageSource;
--		const Image_Texture & GetImageSource();
-+		const opencascade::handle<Image_Texture> & GetImageSource();
- 
- };
- 
-
-From 44af64d633d315e52e3f18247ff8e26d0619effb Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Tue, 4 Apr 2023 03:57:57 +0200
-Subject: [PATCH 2/4] bump occt version to 7.7.1
-
----
- CMakeLists.txt          | 6 +++---
- ci/conda/meta.yaml      | 6 +++---
- src/PkgBase/__init__.py | 2 +-
- 3 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 14a60d09..8cef86b0 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -21,8 +21,8 @@ project(PYTHONOCC)
- 
- # set pythonOCC version
- set(PYTHONOCC_VERSION_MAJOR 7)
--set(PYTHONOCC_VERSION_MINOR 6)
--set(PYTHONOCC_VERSION_PATCH 3)
-+set(PYTHONOCC_VERSION_MINOR 7)
-+set(PYTHONOCC_VERSION_PATCH 1)
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- set(PYTHONOCC_VERSION_DEVEL )
-@@ -147,7 +147,7 @@ if(DEFINED OCE_INCLUDE_PATH)
- # if OCE_INCLUDE_PATH is not passed at command line,
- # find OCE automatically
- else(OCE_INCLUDE_PATH)
--  find_package(OpenCASCADE 7.7.0 REQUIRED)
-+  find_package(OpenCASCADE 7.7.1 REQUIRED)
-   if(OpenCASCADE_FOUND)
-     message(STATUS "OpenCASCADE version found: " ${OpenCASCADE_MAJOR_VERSION} "." ${OpenCASCADE_MINOR_VERSION} "." ${OpenCASCADE_MAINTENANCE_VERSION})
-     message(STATUS "OpenCASCADE include directory: " ${OpenCASCADE_INCLUDE_DIR})
-diff --git a/ci/conda/meta.yaml b/ci/conda/meta.yaml
-index 33d91edc..8ca381de 100644
---- a/ci/conda/meta.yaml
-+++ b/ci/conda/meta.yaml
-@@ -1,4 +1,4 @@
--{% set version = "7.7.0" %}
-+{% set version = "7.7.1" %}
- 
- package:
-   name: pythonocc-core
-@@ -26,11 +26,11 @@ requirements:
- 
-   host:
-     - python {{ python }}
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - numpy >=1.17
- 
-   run:
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - six
-     - numpy >=1.17
- 
-diff --git a/src/PkgBase/__init__.py b/src/PkgBase/__init__.py
-index 898fb48e..e90690b0 100644
---- a/src/PkgBase/__init__.py
-+++ b/src/PkgBase/__init__.py
-@@ -1,6 +1,6 @@
- PYTHONOCC_VERSION_MAJOR = 7
- PYTHONOCC_VERSION_MINOR = 7
--PYTHONOCC_VERSION_PATCH = 0
-+PYTHONOCC_VERSION_PATCH = 1
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- PYTHONOCC_VERSION_DEVEL = ''
-
-From 6ec7cc9095631de070573fc26164578f2e2c87bf Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 16:40:05 +0200
-Subject: [PATCH 3/4] remove xvfb tests from conda build
-
----
- ci/conda/run_test.sh | 7 -------
- 1 file changed, 7 deletions(-)
-
-diff --git a/ci/conda/run_test.sh b/ci/conda/run_test.sh
-index 8d0acf0a..6610b84e 100644
---- a/ci/conda/run_test.sh
-+++ b/ci/conda/run_test.sh
-@@ -2,10 +2,3 @@
- cd ../work/test
- python run_tests.py
- mypy test_mypy_classic_occ_bottle.py
--
--if [ $(uname) == Linux ]; then
--    # start xvfb
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyqt5_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyside2_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_wx_unittest.py
--fi
-
-From bcd7a2c2e0b12801416db9c0d73f2c01992e8ab5 Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 17:08:51 +0200
-Subject: [PATCH 4/4] Fix DataEchange load colrs
-
----
- src/Extend/DataExchange.py | 15 ++++++++-------
- 1 file changed, 8 insertions(+), 7 deletions(-)
-
-diff --git a/src/Extend/DataExchange.py b/src/Extend/DataExchange.py
-index 20f0c9b8..6545d83a 100644
---- a/src/Extend/DataExchange.py
-+++ b/src/Extend/DataExchange.py
-@@ -41,6 +41,7 @@ from OCC.Core.TDocStd import TDocStd_Document
- from OCC.Core.XCAFDoc import (
-     XCAFDoc_DocumentTool_ShapeTool,
-     XCAFDoc_DocumentTool_ColorTool,
-+    XCAFDoc_ColorTool,
- )
- from OCC.Core.STEPCAFControl import STEPCAFControl_Reader
- from OCC.Core.TDF import TDF_LabelSequence, TDF_Label
-@@ -62,6 +63,7 @@ try:
- except ImportError:
-     HAVE_SVGWRITE = False
- 
-+
- ##########################
- # Step import and export #
- ##########################
-@@ -280,11 +282,10 @@ def read_step_file_with_names_colors(filename):
- 
-             if not color_set:
-                 if (
--                    color_tool.GetColor(lab, 0, c)
--                    or color_tool.GetColor(lab, 1, c)
--                    or color_tool.GetColor(lab, 2, c)
-+                    XCAFDoc_ColorTool.GetColor(lab, 0, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 1, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 2, c)
-                 ):
--
-                     color_tool.SetInstanceColor(shape, 0, c)
-                     color_tool.SetInstanceColor(shape, 1, c)
-                     color_tool.SetInstanceColor(shape, 2, c)
-@@ -330,9 +331,9 @@ def read_step_file_with_names_colors(filename):
- 
-                 if not color_set:
-                     if (
--                        color_tool.GetColor(lab_subs, 0, c)
--                        or color_tool.GetColor(lab_subs, 1, c)
--                        or color_tool.GetColor(lab_subs, 2, c)
-+                        XCAFDoc_ColorTool.GetColor(lab_subs, 0, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 1, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 2, c)
-                     ):
-                         color_tool.SetInstanceColor(shape, 0, c)
-                         color_tool.SetInstanceColor(shape, 1, c)
diff --git a/srcpkgs/python3-occ/template b/srcpkgs/python3-occ/template
index 1d02354f2c41c2..22a75a5f04b560 100644
--- a/srcpkgs/python3-occ/template
+++ b/srcpkgs/python3-occ/template
@@ -1,16 +1,17 @@
 # Template file for 'python3-occ'
 pkgname=python3-occ
-version=7.7.0
-revision=3
+version=7.9.0
+revision=1
 archs="i686* x86_64* armv7l* aarch64* ppc*"
 build_style=cmake
-configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None"
+configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None
+ -DPython3_NumPy_INCLUDE_DIRS=${XBPS_CROSS_BASE}/${py3_sitelib}/numpy/_core/include"
 hostmakedepends="python3 python3-setuptools swig"
 makedepends="python3-devel occt-devel freetype-devel swig rapidjson"
 depends="python3 occt freetype"
 short_desc="Industrial strength 3D CAD Python3 package"
 maintainer="Karl Nilsson <karl.robert.nilsson@gmail.com>"
 license="LGPL-3.0-or-later"
-homepage="http://pythonocc.org"
+homepage="https://github.com/tpaviot/pythonocc-core"
 distfiles="https://github.com/tpaviot/pythonocc-core/archive/${version}.tar.gz"
-checksum=9b27003b87799badfae04f8cacd03b8faa1309600c9de8021434d7511e718f82
+checksum=98e53657f54e8a9c3477a81c0b4a11bc6659d5f60123e263419521b42a8e111f

From ae8310f077d50a03fb8f52d325addb6ea3a857f6 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 4/8] freecad: rebuild for occt-7.9.0.

---
 srcpkgs/freecad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/freecad/template b/srcpkgs/freecad/template
index 06d5f0fa09ad45..8b9e44300ce144 100644
--- a/srcpkgs/freecad/template
+++ b/srcpkgs/freecad/template
@@ -1,7 +1,7 @@
 # Template file for 'freecad'
 pkgname=freecad
 version=1.0.0
-revision=2
+revision=3
 _pycxx_ver=7.1.8
 _ondsel_ver=91f70382beeb58b32432b5a82da3802e4c19199c
 build_style=cmake

From 2afcae415cd9e77ebabb0a3b36f53f055da2480c Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 5/8] gmsh: rebuild for occt-7.9.0.

---
 srcpkgs/gmsh/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gmsh/template b/srcpkgs/gmsh/template
index c3727d90e4c93b..371b2f5cfc9c31 100644
--- a/srcpkgs/gmsh/template
+++ b/srcpkgs/gmsh/template
@@ -1,7 +1,7 @@
 # Template file for 'gmsh'
 pkgname=gmsh
 version=4.8.4
-revision=2
+revision=3
 build_style=cmake
 configure_args="-DENABLE_SYSTEM_CONTRIB=ON
  -DENABLE_HXT=$(vopt_if hxt ON OFF)

From 3a38afe29c2f675dce18fd55c7d829eb28f7482e Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 6/8] horizon: rebuild for occt-7.9.0.

---
 srcpkgs/horizon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/horizon/template b/srcpkgs/horizon/template
index 16bbf70822d672..160df13f96fae3 100644
--- a/srcpkgs/horizon/template
+++ b/srcpkgs/horizon/template
@@ -1,7 +1,7 @@
 # Template file for 'horizon'
 pkgname=horizon
 version=2.5.0
-revision=3
+revision=4
 build_style=gnu-makefile
 make_build_args="GOLD="
 make_install_target="install install-man"

From 7434c03c6d194fb5e4836e269d9db8693ba1ee7c Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 7/8] kicad: rebuild for occt-7.9.0.

---
 srcpkgs/kicad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/kicad/template b/srcpkgs/kicad/template
index 34df918edabea4..6cb7e771efb8b6 100644
--- a/srcpkgs/kicad/template
+++ b/srcpkgs/kicad/template
@@ -2,7 +2,7 @@
 # XXX: keep in sync with kicad-doc
 pkgname=kicad
 version=9.0.1
-revision=1
+revision=2
 build_style=cmake
 build_helper="cmake-wxWidgets-gtk3"
 configure_args="-DKICAD_SCRIPTING_WXPYTHON=ON -DKICAD_USE_EGL=ON -DKICAD_BUILD_QA_TESTS=OFF

From bab8e93f6f17439f2a8fc662c62be4279b56f747 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 8/8] librepcb: rebuild for occt-7.9.0.

---
 srcpkgs/librepcb/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/librepcb/template b/srcpkgs/librepcb/template
index eb46149e284e57..aa32d7f1ad2237 100644
--- a/srcpkgs/librepcb/template
+++ b/srcpkgs/librepcb/template
@@ -1,7 +1,7 @@
 # Template file for 'librepcb'
 pkgname=librepcb
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_QTQUICK_TEST=OFF"
 hostmakedepends="unzip qt5-qmake qt5-host-tools"

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PR PATCH] [Updated] occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (8 preceding siblings ...)
  2025-04-16 21:21 ` ii8
@ 2025-04-17  9:02 ` ii8
  2025-04-17 13:37 ` ii8
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: ii8 @ 2025-04-17  9:02 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 525 bytes --]

There is an updated pull request by ii8 against master on the void-packages repository

https://github.com/ii8/void-packages occt
https://github.com/void-linux/void-packages/pull/54462

occt: update to 7.9.0.
#### Testing the changes
- I tested the changes in this PR: **YES**

#### Local build testing
- I built this PR locally for my native architecture, x86_64-musl

This version fixes myriad segmentation faults in FreeCAD.

A patch file from https://github.com/void-linux/void-packages/pull/54462.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-occt-54462.patch --]
[-- Type: text/x-diff, Size: 143226 bytes --]

From fc3ff5da780176fd02cddcc860659b61e1bb60ce Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 17:44:19 +0000
Subject: [PATCH 1/8] occt: update to 7.9.0.

---
 common/shlibs                              | 128 +++++++++++----------
 srcpkgs/occt/patches/fix-cmake-regex.patch |   2 +-
 srcpkgs/occt/patches/fix-install-dir.patch |   2 +-
 srcpkgs/occt/patches/fix-osd-host.patch    |  14 +--
 srcpkgs/occt/patches/musl-fenv.patch       |  38 +++---
 srcpkgs/occt/patches/musl-mallinfo.patch   |  45 +++++---
 srcpkgs/occt/template                      |  13 +--
 7 files changed, 129 insertions(+), 113 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index bec2f470613330..cb1795e57cc8d5 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3453,67 +3453,73 @@ libvtkkissfft-9.3.so.1 vtk-9.3.0_1
 libvolume_key.so.1 volume_key-0.3.9_1
 libxxhash.so.0 libxxHash-0.6.5_2
 libcapnp_c.so.0 c-capnproto-0.3_1
-libTKernel.so.7.7 occt-7.7.1_1
-libTKXmlXCAF.so.7.7 occt-7.7.1_1
-libTKXmlTObj.so.7.7 occt-7.7.1_1
-libTKXmlL.so.7.7 occt-7.7.1_1
-libTKXml.so.7.7 occt-7.7.1_1
-libTKXSDRAW.so.7.7 occt-7.7.1_1
-libTKXSBase.so.7.7 occt-7.7.1_1
-libTKXMesh.so.7.7 occt-7.7.1_1
-libTKXDESTEP.so.7.7 occt-7.7.1_1
-libTKXDEIGES.so.7.7 occt-7.7.1_1
-libTKXDEDRAW.so.7.7 occt-7.7.1_1
-libTKXDECascade.so.7.7 occt-7.7.1_1
-libTKXDE.so.7.7 occt-7.7.1_1
-libTKXCAF.so.7.7 occt-7.7.1_1
-libTKViewerTest.so.7.7 occt-7.7.1_1
-libTKVRML.so.7.7 occt-7.7.1_1
-libTKVCAF.so.7.7 occt-7.7.1_1
-libTKV3d.so.7.7 occt-7.7.1_1
-libTKTopTest.so.7.7 occt-7.7.1_1
-libTKTopAlgo.so.7.7 occt-7.7.1_1
-libTKTObjDRAW.so.7.7 occt-7.7.1_1
-libTKTObj.so.7.7 occt-7.7.1_1
-libTKStdL.so.7.7 occt-7.7.1_1
-libTKStd.so.7.7 occt-7.7.1_1
-libTKShHealing.so.7.7 occt-7.7.1_1
-libTKService.so.7.7 occt-7.7.1_1
-libTKSTL.so.7.7 occt-7.7.1_1
-libTKSTEPBase.so.7.7 occt-7.7.1_1
-libTKSTEPAttr.so.7.7 occt-7.7.1_1
-libTKSTEP209.so.7.7 occt-7.7.1_1
-libTKSTEP.so.7.7 occt-7.7.1_1
-libTKRWMesh.so.7.7 occt-7.7.1_1
-libTKQADraw.so.7.7 occt-7.7.1_1
-libTKPrim.so.7.7 occt-7.7.1_1
-libTKOpenGlTest.so.7.7 occt-7.7.1_1
-libTKOpenGl.so.7.7 occt-7.7.1_1
-libTKOffset.so.7.7 occt-7.7.1_1
-libTKMeshVS.so.7.7 occt-7.7.1_1
-libTKMesh.so.7.7 occt-7.7.1_1
-libTKMath.so.7.7 occt-7.7.1_1
-libTKLCAF.so.7.7 occt-7.7.1_1
-libTKIGES.so.7.7 occt-7.7.1_1
-libTKHLR.so.7.7 occt-7.7.1_1
-libTKGeomBase.so.7.7 occt-7.7.1_1
-libTKGeomAlgo.so.7.7 occt-7.7.1_1
-libTKG3d.so.7.7 occt-7.7.1_1
-libTKG2d.so.7.7 occt-7.7.1_1
-libTKFillet.so.7.7 occt-7.7.1_1
-libTKFeat.so.7.7 occt-7.7.1_1
-libTKExpress.so.7.7 occt-7.7.1_1
-libTKDraw.so.7.7 occt-7.7.1_1
-libTKDCAF.so.7.7 occt-7.7.1_1
-libTKCDF.so.7.7 occt-7.7.1_1
-libTKCAF.so.7.7 occt-7.7.1_1
-libTKBool.so.7.7 occt-7.7.1_1
-libTKBinXCAF.so.7.7 occt-7.7.1_1
-libTKBinTObj.so.7.7 occt-7.7.1_1
-libTKBinL.so.7.7 occt-7.7.1_1
-libTKBin.so.7.7 occt-7.7.1_1
-libTKBRep.so.7.7 occt-7.7.1_1
-libTKBO.so.7.7 occt-7.7.1_1
+libTKDEPLY.so.7.9 occt-7.9.0_1
+libTKBRep.so.7.9 occt-7.9.0_1
+libTKDEOBJ.so.7.9 occt-7.9.0_1
+libTKExpress.so.7.9 occt-7.9.0_1
+libTKXSDRAWGLTF.so.7.9 occt-7.9.0_1
+libTKXSDRAWOBJ.so.7.9 occt-7.9.0_1
+libTKXSDRAWSTL.so.7.9 occt-7.9.0_1
+libTKDESTEP.so.7.9 occt-7.9.0_1
+libTKTopTest.so.7.9 occt-7.9.0_1
+libTKRWMesh.so.7.9 occt-7.9.0_1
+libTKQADraw.so.7.9 occt-7.9.0_1
+libTKernel.so.7.9 occt-7.9.0_1
+libTKMeshVS.so.7.9 occt-7.9.0_1
+libTKTObj.so.7.9 occt-7.9.0_1
+libTKBool.so.7.9 occt-7.9.0_1
+libTKFeat.so.7.9 occt-7.9.0_1
+libTKXmlXCAF.so.7.9 occt-7.9.0_1
+libTKDEIGES.so.7.9 occt-7.9.0_1
+libTKHLR.so.7.9 occt-7.9.0_1
+libTKBinL.so.7.9 occt-7.9.0_1
+libTKBinXCAF.so.7.9 occt-7.9.0_1
+libTKViewerTest.so.7.9 occt-7.9.0_1
+libTKCDF.so.7.9 occt-7.9.0_1
+libTKXSDRAWPLY.so.7.9 occt-7.9.0_1
+libTKService.so.7.9 occt-7.9.0_1
+libTKDEGLTF.so.7.9 occt-7.9.0_1
+libTKGeomBase.so.7.9 occt-7.9.0_1
+libTKCAF.so.7.9 occt-7.9.0_1
+libTKXDEDRAW.so.7.9 occt-7.9.0_1
+libTKMesh.so.7.9 occt-7.9.0_1
+libTKDraw.so.7.9 occt-7.9.0_1
+libTKTopAlgo.so.7.9 occt-7.9.0_1
+libTKTObjDRAW.so.7.9 occt-7.9.0_1
+libTKXSDRAW.so.7.9 occt-7.9.0_1
+libTKDCAF.so.7.9 occt-7.9.0_1
+libTKStd.so.7.9 occt-7.9.0_1
+libTKDE.so.7.9 occt-7.9.0_1
+libTKXml.so.7.9 occt-7.9.0_1
+libTKShHealing.so.7.9 occt-7.9.0_1
+libTKDECascade.so.7.9 occt-7.9.0_1
+libTKStdL.so.7.9 occt-7.9.0_1
+libTKBin.so.7.9 occt-7.9.0_1
+libTKXSDRAWDE.so.7.9 occt-7.9.0_1
+libTKOffset.so.7.9 occt-7.9.0_1
+libTKPrim.so.7.9 occt-7.9.0_1
+libTKXSBase.so.7.9 occt-7.9.0_1
+libTKXmlL.so.7.9 occt-7.9.0_1
+libTKBinTObj.so.7.9 occt-7.9.0_1
+libTKMath.so.7.9 occt-7.9.0_1
+libTKBO.so.7.9 occt-7.9.0_1
+libTKVCAF.so.7.9 occt-7.9.0_1
+libTKLCAF.so.7.9 occt-7.9.0_1
+libTKV3d.so.7.9 occt-7.9.0_1
+libTKDESTL.so.7.9 occt-7.9.0_1
+libTKXmlTObj.so.7.9 occt-7.9.0_1
+libTKOpenGl.so.7.9 occt-7.9.0_1
+libTKGeomAlgo.so.7.9 occt-7.9.0_1
+libTKXSDRAWIGES.so.7.9 occt-7.9.0_1
+libTKFillet.so.7.9 occt-7.9.0_1
+libTKG2d.so.7.9 occt-7.9.0_1
+libTKOpenGlTest.so.7.9 occt-7.9.0_1
+libTKXCAF.so.7.9 occt-7.9.0_1
+libTKDEVRML.so.7.9 occt-7.9.0_1
+libTKXMesh.so.7.9 occt-7.9.0_1
+libTKXSDRAWSTEP.so.7.9 occt-7.9.0_1
+libTKXSDRAWVRML.so.7.9 occt-7.9.0_1
+libTKG3d.so.7.9 occt-7.9.0_1
 libargon2.so.1 libargon2-20171227_1
 libdazzle-1.0.so.0 libdazzle-3.28.0_1
 libjsonrpc-glib-1.0.so.1 jsonrpc-glib-3.28.0_1
diff --git a/srcpkgs/occt/patches/fix-cmake-regex.patch b/srcpkgs/occt/patches/fix-cmake-regex.patch
index f38e0108ac7089..6cc5918bd28960 100644
--- a/srcpkgs/occt/patches/fix-cmake-regex.patch
+++ b/srcpkgs/occt/patches/fix-cmake-regex.patch
@@ -3,7 +3,7 @@
 
 --- a/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 00:18:42.763819658 -0500
 +++ b/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 23:40:32.872489521 -0500
-@@ -26,7 +26,7 @@
+@@ -27,7 +27,7 @@
  if (OpenCASCADE_INSTALL_PREFIX MATCHES "/cmake$")
    get_filename_component (OpenCASCADE_INSTALL_PREFIX "${OpenCASCADE_INSTALL_PREFIX}" PATH)
  endif()
diff --git a/srcpkgs/occt/patches/fix-install-dir.patch b/srcpkgs/occt/patches/fix-install-dir.patch
index 931587bef99048..0dc6660f0a10f2 100644
--- a/srcpkgs/occt/patches/fix-install-dir.patch
+++ b/srcpkgs/occt/patches/fix-install-dir.patch
@@ -1,7 +1,7 @@
 diff --color -upr occt-7.7.1.orig/adm/cmake/occt_macros.cmake occt-7.7.1/adm/cmake/occt_macros.cmake
 --- occt-7.7.1.orig/adm/cmake/occt_macros.cmake	2023-05-31 20:05:47.619869450 +0200
 +++ occt-7.7.1/adm/cmake/occt_macros.cmake	2023-05-31 20:07:25.611036417 +0200
-@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
+@@ -762,7 +762,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
  
    install (CODE
    "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
diff --git a/srcpkgs/occt/patches/fix-osd-host.patch b/srcpkgs/occt/patches/fix-osd-host.patch
index ef705c7291381d..922f61072619db 100644
--- a/srcpkgs/occt/patches/fix-osd-host.patch
+++ b/srcpkgs/occt/patches/fix-osd-host.patch
@@ -2,12 +2,12 @@
 
 --- a/src/OSD/OSD_Host.cxx
 +++ b/src/OSD/OSD_Host.cxx
-@@ -124,7 +124,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+@@ -140,7 +140,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+   TCollection_AsciiString result, host;
  
-  host = HostName();
-  memcpy(&internet_address,
--        gethostbyname(host.ToCString()),
-+        gethostbyname("localhost"),
-         sizeof(struct hostent));
+   host = HostName();
+-  memcpy(&internet_address, gethostbyname(host.ToCString()), sizeof(struct hostent));
++  memcpy(&internet_address, gethostbyname("localhost"), sizeof(struct hostent));
  
-  // Gets each bytes into integers
+   // Gets each bytes into integers
+   a = (unsigned char)internet_address.h_addr_list[0][0];
diff --git a/srcpkgs/occt/patches/musl-fenv.patch b/srcpkgs/occt/patches/musl-fenv.patch
index a8a776ce29a9d0..9756cca207bbac 100644
--- a/srcpkgs/occt/patches/musl-fenv.patch
+++ b/srcpkgs/occt/patches/musl-fenv.patch
@@ -5,32 +5,32 @@ is probably wrong, but I don't have a replacement for the
 non-posix functions fegetexcept(3) and feenableexcept(3).
 """
 
---- a/src/OSD/OSD_signal.cxx.orig	2022-07-22 10:53:38.000000000 +0200
-+++ b/src/OSD/OSD_signal.cxx	2022-10-06 09:19:02.286414340 +0200
-@@ -761,7 +761,7 @@ typedef void (* SIG_PFV) (int);
+--- a/src/OSD/OSD_signal.cxx
++++ b/src/OSD/OSD_signal.cxx
+@@ -769,7 +769,7 @@ typedef void (*SIG_PFV)(int);
  
- #include <signal.h>
+   #include <signal.h>
  
--#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
-+#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) &&  defined(__GLIBC__)
-   #include <sys/signal.h>
- #endif
+-  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
++  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) && defined(__GLIBC__)
+     #include <sys/signal.h>
+   #endif
  
-@@ -977,7 +977,7 @@ static void SegvHandler(const int theSig
- //=======================================================================
- void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
+@@ -994,7 +994,7 @@ static void SegvHandler(const int              theSignal,
+ 
+ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
-   feclearexcept (FE_ALL_EXCEPT);
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
+   feclearexcept(FE_ALL_EXCEPT);
    if (theFloatingSignal)
    {
-@@ -1010,7 +1010,7 @@ void OSD::SetFloatingSignal (Standard_Bo
- //=======================================================================
+@@ -1025,7 +1025,7 @@ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
+ 
  Standard_Boolean OSD::ToCatchFloatingSignals()
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
    return (fegetexcept() & _OSD_FPX) != 0;
- #else
+   #else
    return Standard_False;
diff --git a/srcpkgs/occt/patches/musl-mallinfo.patch b/srcpkgs/occt/patches/musl-mallinfo.patch
index 1ce5b16b793f95..158d954fe9c52f 100644
--- a/srcpkgs/occt/patches/musl-mallinfo.patch
+++ b/srcpkgs/occt/patches/musl-mallinfo.patch
@@ -1,21 +1,32 @@
-In musl libc there is no struct mallinfo and no function mallinf()
-
---- a/src/OSD/OSD_MemInfo.cxx.orig	2022-10-06 09:21:55.466236104 +0200
-+++ b/src/OSD/OSD_MemInfo.cxx	2022-10-06 09:25:34.105323581 +0200
-@@ -188,12 +188,16 @@ void OSD_MemInfo::Update()
+--- a/src/OSD/OSD_MemInfo.cxx
++++ b/src/OSD/OSD_MemInfo.cxx
+@@ -165,18 +165,23 @@ void OSD_MemInfo::Update()
+   #elif (defined(__linux__) || defined(__linux))
+   if (IsActive(MemHeapUsage))
+   {
+-    #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+-      #if __GLIBC_PREREQ(2, 33)
++    #if defined(__GLIBC__)
++      #define HAS_MALLINFO
++      #if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 33)
+         #define HAS_MALLINFO2
+       #endif
      #endif
-   #endif
  
-+  #if defined(__GLIBC__)
-   #ifdef HAS_MALLINFO2
-     const struct mallinfo2 aMI = mallinfo2();
-   #else
-     const struct mallinfo aMI = mallinfo();
-   #endif
-     myCounters[MemHeapUsage] = aMI.uordblks;
-+  #else
-+    myCounters[MemHeapUsage] = 0;
-+  #endif
+-    #ifdef HAS_MALLINFO2
+-    const struct mallinfo2 aMI = mallinfo2();
++    #ifdef HAS_MALLINFO
++      #ifdef HAS_MALLINFO2
++      const struct mallinfo2 aMI = mallinfo2();
++      #else
++      const struct mallinfo aMI = mallinfo();
++      #endif
++      myCounters[MemHeapUsage] = aMI.uordblks;
+     #else
+-    const struct mallinfo aMI = mallinfo();
++      myCounters[MemHeapUsage] = 0;
+     #endif
+-    myCounters[MemHeapUsage] = aMI.uordblks;
    }
  
-   if (!IsActive (MemVirtual)
+   if (!IsActive(MemVirtual) && !IsActive(MemWorkingSet) && !IsActive(MemWorkingSetPeak)
diff --git a/srcpkgs/occt/template b/srcpkgs/occt/template
index 296a52de5a1b5a..acef04045566bc 100644
--- a/srcpkgs/occt/template
+++ b/srcpkgs/occt/template
@@ -1,14 +1,13 @@
 # Template file for 'occt'
 pkgname=occt
-version=7.7.1
+version=7.9.0
 revision=1
 _gittag="V${version//./_}"
 build_style=cmake
-# XXX: re-enable -DUSE_TBB=ON if possible when updating
-configure_args="-DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
- -DINSTALL_SAMPLES=ON"
-makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tcl-devel
- tk-devel"
+configure_args="-DUSE_TBB=ON -DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
+ -DUSE_XLIB=ON -DINSTALL_SAMPLES=ON"
+makedepends="tbb-devel freetype-devel glu-devel freeimage-devel gl2ps-devel
+ tcl-devel tk-devel"
 short_desc="OpenCASCADE Technology - library for CAD/CAM/CAE applications"
 maintainer="Piraty <mail@piraty.dev>"
 license="custom:LGPL-2.1-only-with-exceptions"
@@ -16,7 +15,7 @@ homepage="https://www.opencascade.com"
 # distfile: use git instead of official tarball, which requires registration
 # see https://www.opencascade.com/content/packaging-again-debian
 distfiles="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/${_gittag};sf=tgz>occt-${_gittag}.tar.gz"
-checksum=f413d30a8a06d6164e94860a652cbc96ea58fe262df36ce4eaa92a9e3561fd12
+checksum=ff118a524ec451867e8f0ac3b631522c98f2b4353c7dbf2786bf239589909ec6
 conflicts="oce>=0"
 if [ "$XBPS_TARGET_LIBC" = musl ]; then
 	makedepends+=" libexecinfo-devel"

From fb7de0968f31109020a610a882e41887a3f4f6aa Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Wed, 16 Apr 2025 21:12:22 +0100
Subject: [PATCH 2/8] swig: update to 4.3.0.

---
 srcpkgs/swig/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/swig/template b/srcpkgs/swig/template
index bffc4e91ffb355..f9d4c65f1f2fd4 100644
--- a/srcpkgs/swig/template
+++ b/srcpkgs/swig/template
@@ -1,14 +1,14 @@
 # Template file for 'swig'
 pkgname=swig
-version=4.1.1
+version=4.3.0
 revision=1
 build_style=gnu-configure
 configure_args="--with-pcre2-prefix=${XBPS_CROSS_BASE}/usr"
 hostmakedepends="bison"
-makedepends="zlib-devel pcre2-devel"
+makedepends="zlib-devel pcre2-devel boost-devel"
 short_desc="Simplified Wrapper and Interface Generator"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="http://www.swig.org"
 distfiles="${SOURCEFORGE_SITE}/swig/swig-${version}.tar.gz"
-checksum=2af08aced8fcd65cdb5cc62426768914bedc735b1c250325203716f78e39ac9b
+checksum=f7203ef796f61af986c70c05816236cbd0d31b7aa9631e5ab53020ab7804aa9e

From 0b6921a972a1f04f6e33cc2d2cf70bb21217b6b9 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:34 +0000
Subject: [PATCH 3/8] python3-occ: update to 7.9.0.

---
 srcpkgs/python3-occ/patches/occt-7.7.1.patch | 2561 ------------------
 srcpkgs/python3-occ/template                 |   12 +-
 2 files changed, 6 insertions(+), 2567 deletions(-)
 delete mode 100644 srcpkgs/python3-occ/patches/occt-7.7.1.patch

diff --git a/srcpkgs/python3-occ/patches/occt-7.7.1.patch b/srcpkgs/python3-occ/patches/occt-7.7.1.patch
deleted file mode 100644
index 70861a77853b69..00000000000000
--- a/srcpkgs/python3-occ/patches/occt-7.7.1.patch
+++ /dev/null
@@ -1,2561 +0,0 @@
-From 6ba4509edb333494d35a40c01192ab5e236acdda Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Mon, 3 Apr 2023 14:01:20 +0200
-Subject: [PATCH 1/4] update swig files to occt-771
-
----
- src/SWIG_files/common/EnumTemplates.i      |   1 -
- src/SWIG_files/headers/AIS_module.hxx      |   2 +
- src/SWIG_files/headers/BRepFill_module.hxx |   1 +
- src/SWIG_files/wrapper/AIS.i               | 127 ++++++++----
- src/SWIG_files/wrapper/AIS.pyi             |  12 +-
- src/SWIG_files/wrapper/BRepAlgo.i          |  26 +++
- src/SWIG_files/wrapper/BRepAlgo.pyi        |   2 +
- src/SWIG_files/wrapper/BRepBlend.i         |  44 +++--
- src/SWIG_files/wrapper/BRepBlend.pyi       |  14 +-
- src/SWIG_files/wrapper/BRepExtrema.i       | 218 +++++----------------
- src/SWIG_files/wrapper/BRepExtrema.pyi     |  23 +--
- src/SWIG_files/wrapper/BRepFill.i          |  48 +++++
- src/SWIG_files/wrapper/BRepFill.pyi        |  19 ++
- src/SWIG_files/wrapper/BRepOffset.i        |   3 +
- src/SWIG_files/wrapper/BRepOffset.pyi      |   2 +
- src/SWIG_files/wrapper/BRepOffsetAPI.i     |  11 ++
- src/SWIG_files/wrapper/BRepOffsetAPI.pyi   |   1 +
- src/SWIG_files/wrapper/BSplCLib.i          |  23 +++
- src/SWIG_files/wrapper/BSplCLib.pyi        |   3 +
- src/SWIG_files/wrapper/ChFiDS.i            |  14 ++
- src/SWIG_files/wrapper/ChFiDS.pyi          |   3 +
- src/SWIG_files/wrapper/GeomInt.i           |  23 +++
- src/SWIG_files/wrapper/GeomInt.pyi         |   5 +
- src/SWIG_files/wrapper/STEPCAFControl.i    | 140 ++++++-------
- src/SWIG_files/wrapper/STEPCAFControl.pyi  |  32 +--
- src/SWIG_files/wrapper/STEPConstruct.i     |  26 +++
- src/SWIG_files/wrapper/STEPConstruct.pyi   |   2 +
- src/SWIG_files/wrapper/ShapeUpgrade.i      |   1 +
- src/SWIG_files/wrapper/StdPrs.i            |  12 +-
- src/SWIG_files/wrapper/StdPrs.pyi          |   4 +-
- src/SWIG_files/wrapper/StepToGeom.i        |  16 --
- src/SWIG_files/wrapper/XCAFDoc.i           |  78 +++++---
- src/SWIG_files/wrapper/XCAFDoc.pyi         |  56 ++++--
- src/SWIG_files/wrapper/XCAFPrs.i           |  10 +-
- 34 files changed, 592 insertions(+), 410 deletions(-)
-
-diff --git a/src/SWIG_files/common/EnumTemplates.i b/src/SWIG_files/common/EnumTemplates.i
-index b66537d8..69af927f 100644
---- a/src/SWIG_files/common/EnumTemplates.i
-+++ b/src/SWIG_files/common/EnumTemplates.i
-@@ -15,7 +15,6 @@ ENUM_OUTPUT_TYPEMAPS(BRepOffset_Status);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_DisplayPriority);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_NameOfMaterial);
- ENUM_OUTPUT_TYPEMAPS(GeomAbs_Shape);
--ENUM_OUTPUT_TYPEMAPS(ProxPnt_Status);
- ENUM_OUTPUT_TYPEMAPS(Aspect_TypeOfLine);
- ENUM_OUTPUT_TYPEMAPS(PrsDim_KindOfSurface);
- ENUM_OUTPUT_TYPEMAPS(DsgPrs_ArrowSide);
-diff --git a/src/SWIG_files/headers/AIS_module.hxx b/src/SWIG_files/headers/AIS_module.hxx
-index ee7050ea..97fb3b69 100644
---- a/src/SWIG_files/headers/AIS_module.hxx
-+++ b/src/SWIG_files/headers/AIS_module.hxx
-@@ -22,12 +22,14 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<AIS.hxx>
- #include<AIS_AngleDimension.hxx>
- #include<AIS_Animation.hxx>
-+#include<AIS_AnimationAxisRotation.hxx>
- #include<AIS_AnimationCamera.hxx>
- #include<AIS_AnimationObject.hxx>
- #include<AIS_AnimationTimer.hxx>
- #include<AIS_AttributeFilter.hxx>
- #include<AIS_Axis.hxx>
- #include<AIS_BadEdgeFilter.hxx>
-+#include<AIS_BaseAnimationObject.hxx>
- #include<AIS_C0RegularityFilter.hxx>
- #include<AIS_CameraFrustum.hxx>
- #include<AIS_Chamf2dDimension.hxx>
-diff --git a/src/SWIG_files/headers/BRepFill_module.hxx b/src/SWIG_files/headers/BRepFill_module.hxx
-index 73975e24..ef638100 100644
---- a/src/SWIG_files/headers/BRepFill_module.hxx
-+++ b/src/SWIG_files/headers/BRepFill_module.hxx
-@@ -67,6 +67,7 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<BRepFill_SequenceOfSection.hxx>
- #include<BRepFill_ShapeLaw.hxx>
- #include<BRepFill_Sweep.hxx>
-+#include<BRepFill_ThruSectionErrorStatus.hxx>
- #include<BRepFill_TransitionStyle.hxx>
- #include<BRepFill_TrimEdgeTool.hxx>
- #include<BRepFill_TrimShellCorner.hxx>
-diff --git a/src/SWIG_files/wrapper/AIS.i b/src/SWIG_files/wrapper/AIS.i
-index bf1f6b10..8f58d69a 100644
---- a/src/SWIG_files/wrapper/AIS.i
-+++ b/src/SWIG_files/wrapper/AIS.i
-@@ -577,8 +577,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TrihedronOwner)
- %wrap_handle(AIS_TypeFilter)
- %wrap_handle(AIS_AnimationCamera)
--%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_Axis)
-+%wrap_handle(AIS_BaseAnimationObject)
- %wrap_handle(AIS_Circle)
- %wrap_handle(AIS_ColorScale)
- %wrap_handle(AIS_ConnectedInteractive)
-@@ -595,6 +595,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TextLabel)
- %wrap_handle(AIS_Triangulation)
- %wrap_handle(AIS_Trihedron)
-+%wrap_handle(AIS_AnimationAxisRotation)
-+%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_ColoredShape)
- %wrap_handle(AIS_TexturedShape)
- /* end handles declaration */
-@@ -8532,41 +8534,6 @@ opencascade::handle<V3d_View>
- 	}
- };
- 
--/****************************
--* class AIS_AnimationObject *
--****************************/
--class AIS_AnimationObject : public AIS_Animation {
--	public:
--		/****************** AIS_AnimationObject ******************/
--		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
--		%feature("compactdefaultargs") AIS_AnimationObject;
--		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param theanimationname animation identifier @param thecontext interactive context where object have been displayed @param theobject object to apply local transformation @param thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param thetrsfend local transformation at the end of animation.
--
--Parameters
------------
--theAnimationName: TCollection_AsciiString
--theContext: AIS_InteractiveContext
--theObject: AIS_InteractiveObject
--theTrsfStart: gp_Trsf
--theTrsfEnd: gp_Trsf
--
--Returns
---------
--None
--") AIS_AnimationObject;
--		 AIS_AnimationObject(const TCollection_AsciiString & theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
--
--};
--
--
--%make_alias(AIS_AnimationObject)
--
--%extend AIS_AnimationObject {
--	%pythoncode {
--	__repr__ = _dumps_object
--	}
--};
--
- /*****************
- * class AIS_Axis *
- *****************/
-@@ -8855,6 +8822,23 @@ None
- 	}
- };
- 
-+/********************************
-+* class AIS_BaseAnimationObject *
-+********************************/
-+%nodefaultctor AIS_BaseAnimationObject;
-+class AIS_BaseAnimationObject : public AIS_Animation {
-+	public:
-+};
-+
-+
-+%make_alias(AIS_BaseAnimationObject)
-+
-+%extend AIS_BaseAnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /**************************
- * class AIS_CameraFrustum *
- **************************/
-@@ -16143,6 +16127,77 @@ Standard_ShortReal
- 	}
- };
- 
-+/**********************************
-+* class AIS_AnimationAxisRotation *
-+**********************************/
-+class AIS_AnimationAxisRotation : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationAxisRotation ******************/
-+		/**** md5 signature: 819427e2c422233cc067da4633992952 ****/
-+		%feature("compactdefaultargs") AIS_AnimationAxisRotation;
-+		%feature("autodoc", "Constructor with initialization. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply rotation @param[in] theaxis rotation axis @param[in] theanglestart rotation angle at the start of animation @param[in] theangleend rotation angle at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theAxis: gp_Ax1
-+theAngleStart: float
-+theAngleEnd: float
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationAxisRotation;
-+		 AIS_AnimationAxisRotation(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Ax1 & theAxis, const Standard_Real theAngleStart, const Standard_Real theAngleEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationAxisRotation)
-+
-+%extend AIS_AnimationAxisRotation {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
-+/****************************
-+* class AIS_AnimationObject *
-+****************************/
-+class AIS_AnimationObject : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationObject ******************/
-+		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
-+		%feature("compactdefaultargs") AIS_AnimationObject;
-+		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply local transformation @param[in] thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param[in] thetrsfend local transformation at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theTrsfStart: gp_Trsf
-+theTrsfEnd: gp_Trsf
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationObject;
-+		 AIS_AnimationObject(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationObject)
-+
-+%extend AIS_AnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /*************************
- * class AIS_ColoredShape *
- *************************/
-diff --git a/src/SWIG_files/wrapper/AIS.pyi b/src/SWIG_files/wrapper/AIS.pyi
-index a75ef4ba..da4a3977 100644
---- a/src/SWIG_files/wrapper/AIS.pyi
-+++ b/src/SWIG_files/wrapper/AIS.pyi
-@@ -1021,9 +1021,6 @@ class AIS_AnimationCamera(AIS_Animation):
-     def SetView(self, theView: V3d_View) -> None: ...
-     def View(self) -> V3d_View: ...
- 
--class AIS_AnimationObject(AIS_Animation):
--    def __init__(self, theAnimationName: TCollection_AsciiString, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
--
- class AIS_Axis(AIS_InteractiveObject):
-     @overload
-     def __init__(self, aComponent: Geom_Line) -> None: ...
-@@ -1050,6 +1047,9 @@ class AIS_Axis(AIS_InteractiveObject):
-     def UnsetColor(self) -> None: ...
-     def UnsetWidth(self) -> None: ...
- 
-+class AIS_BaseAnimationObject(AIS_Animation):
-+    pass
-+
- class AIS_CameraFrustum(AIS_InteractiveObject):
-     def __init__(self) -> None: ...
-     def AcceptDisplayMode(self, theMode: int) -> bool: ...
-@@ -1652,6 +1652,12 @@ class AIS_XRTrackedDevice(AIS_InteractiveObject):
-     def SetUnitFactor(self, theFactor: float) -> None: ...
-     def UnitFactor(self) -> float: ...
- 
-+class AIS_AnimationAxisRotation(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theAxis: gp_Ax1, theAngleStart: float, theAngleEnd: float) -> None: ...
-+
-+class AIS_AnimationObject(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
-+
- class AIS_ColoredShape(AIS_Shape):
-     @overload
-     def __init__(self, theShape: TopoDS_Shape) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.i b/src/SWIG_files/wrapper/BRepAlgo.i
-index 3860648e..bd9e2f38 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.i
-+++ b/src/SWIG_files/wrapper/BRepAlgo.i
-@@ -921,6 +921,17 @@ None
- ") CutEdge;
- 		void CutEdge(const TopoDS_Edge & E, const TopTools_ListOfShape & VonE, TopTools_ListOfShape & NE);
- 
-+		/****************** GetTolConf ******************/
-+		/**** md5 signature: 7e9f7b87eb3b20edee9e3a86157928cd ****/
-+		%feature("compactdefaultargs") GetTolConf;
-+		%feature("autodoc", "Get maximal tolerance used for comparing distaces between vertices. .
-+
-+Returns
-+-------
-+float
-+") GetTolConf;
-+		Standard_Real GetTolConf();
-+
- 		/****************** GetVerticesForSubstitute ******************/
- 		/**** md5 signature: 3b0ea732ecf076dde3f931f0997c07aa ****/
- 		%feature("compactdefaultargs") GetVerticesForSubstitute;
-@@ -1014,6 +1025,21 @@ None
- ") SetImageVV;
- 		void SetImageVV(const BRepAlgo_Image & theImageVV);
- 
-+		/****************** SetTolConf ******************/
-+		/**** md5 signature: 1c312d5c00a3d856c91eb31857ae32c6 ****/
-+		%feature("compactdefaultargs") SetTolConf;
-+		%feature("autodoc", "Set maximal tolerance used for comparing distaces between vertices. .
-+
-+Parameters
-+----------
-+theTolConf: float
-+
-+Returns
-+-------
-+None
-+") SetTolConf;
-+		void SetTolConf(const Standard_Real theTolConf);
-+
- 		/****************** UpdateVEmap ******************/
- 		/**** md5 signature: 491681c63af221fbd7247e01d389bbc0 ****/
- 		%feature("compactdefaultargs") UpdateVEmap;
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.pyi b/src/SWIG_files/wrapper/BRepAlgo.pyi
-index 5ee7ab94..20ecddc9 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.pyi
-+++ b/src/SWIG_files/wrapper/BRepAlgo.pyi
-@@ -86,6 +86,7 @@ class BRepAlgo_Loop:
-     def AddConstEdges(self, LE: TopTools_ListOfShape) -> None: ...
-     def AddEdge(self, E: TopoDS_Edge, LV: TopTools_ListOfShape) -> None: ...
-     def CutEdge(self, E: TopoDS_Edge, VonE: TopTools_ListOfShape, NE: TopTools_ListOfShape) -> None: ...
-+    def GetTolConf(self) -> float: ...
-     def GetVerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def Init(self, F: TopoDS_Face) -> None: ...
-     def NewEdges(self, E: TopoDS_Edge) -> TopTools_ListOfShape: ...
-@@ -93,6 +94,7 @@ class BRepAlgo_Loop:
-     def NewWires(self) -> TopTools_ListOfShape: ...
-     def Perform(self) -> None: ...
-     def SetImageVV(self, theImageVV: BRepAlgo_Image) -> None: ...
-+    def SetTolConf(self, theTolConf: float) -> None: ...
-     def UpdateVEmap(self, theVEmap: TopTools_IndexedDataMapOfShapeListOfShape) -> None: ...
-     def VerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def WiresToFaces(self) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepBlend.i b/src/SWIG_files/wrapper/BRepBlend.i
-index 509a2525..b8131099 100644
---- a/src/SWIG_files/wrapper/BRepBlend.i
-+++ b/src/SWIG_files/wrapper/BRepBlend.i
-@@ -3508,7 +3508,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: e410fc1bc97982de557150e942b13c80 ****/
-+		/**** md5 signature: 5c6445d58f45808f7c3defd1db894a35 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3522,9 +3522,9 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -3533,10 +3533,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 78e8905aafd910d0fa3a7b23c096467b ****/
-+		/**** md5 signature: 452fb9b79df54fb801f2f70d066f611b ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3550,7 +3550,7 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecRst1: bool
- RecP1: bool
-@@ -3562,7 +3562,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5559,7 +5559,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 3ebeca31e507208cd42bab74df3ed6e3 ****/
-+		/**** md5 signature: 86cf3650fa597d7655c244c1866126f2 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5572,9 +5572,10 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5583,10 +5584,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 691664aa4fe132192d2ccf25ba05720a ****/
-+		/**** md5 signature: 429fbdc03f84a4a14fbebef94ad27ee5 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5599,7 +5600,8 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- RecRst: bool
- RecP: bool
-@@ -5610,7 +5612,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5795,7 +5797,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: ef3b3700f467db4ea875b65f539d9955 ****/
-+		/**** md5 signature: 6d94e3dcc7c71857d2c24ced3358703f ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5806,9 +5808,9 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5817,10 +5819,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: a2bca51a10d7f020b86504fe9860626e ****/
-+		/**** md5 signature: 92db8d0914da0712dd54b302697b3aa3 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5829,7 +5831,7 @@ Parameters
- F: Blend_Function
- Pdep: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- Pos1: TopAbs_State
- Pos2: TopAbs_State
-@@ -5838,10 +5840,10 @@ Returns
- -------
- bool
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 39c72a7c59d31a28e720252eee26feee ****/
-+		/**** md5 signature: 7464aaa5cedcb060541546a3a1ff5540 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5852,7 +5854,7 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecOnS1: bool
- RecOnS2: bool
-@@ -5862,7 +5864,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- 		/****************** SetDomainsToRecadre ******************/
- 		/**** md5 signature: 10664ebffbd6ed784502d7d4acfa5a93 ****/
-diff --git a/src/SWIG_files/wrapper/BRepBlend.pyi b/src/SWIG_files/wrapper/BRepBlend.pyi
-index 03deabc7..cbe9c845 100644
---- a/src/SWIG_files/wrapper/BRepBlend.pyi
-+++ b/src/SWIG_files/wrapper/BRepBlend.pyi
-@@ -346,8 +346,8 @@ class BRepBlend_RstRstLineBuilder:
-     def Decroch2Start(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_SurfCurvConstRadInv(Blend_SurfCurvFuncInv):
-     def __init__(self, S: Adaptor3d_Surface, C: Adaptor3d_Curve, Cg: Adaptor3d_Curve) -> None: ...
-@@ -519,8 +519,8 @@ class BRepBlend_SurfRstLineBuilder:
-     def DecrochStart(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, Tol2d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, Tol2d: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_Walking:
-     def __init__(self, Surf1: Adaptor3d_Surface, Surf2: Adaptor3d_Surface, Domain1: Adaptor3d_TopolTool, Domain2: Adaptor3d_TopolTool, HGuide: ChFiDS_ElSpine) -> None: ...
-@@ -536,11 +536,11 @@ class BRepBlend_Walking:
-     def Continu(self, F: Blend_Function, FInv: Blend_FuncInv, P: float, OnS1: bool) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-+    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-     def SetDomainsToRecadre(self, RecDomain1: Adaptor3d_TopolTool, RecDomain2: Adaptor3d_TopolTool) -> None: ...
-     def TwistOnS1(self) -> bool: ...
-     def TwistOnS2(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.i b/src/SWIG_files/wrapper/BRepExtrema.i
-index bc15b17e..18a48b42 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.i
-+++ b/src/SWIG_files/wrapper/BRepExtrema.i
-@@ -48,6 +48,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<gp_module.hxx>
- #include<Bnd_module.hxx>
- #include<BVH_module.hxx>
-+#include<Poly_module.hxx>
- #include<GeomAdaptor_module.hxx>
- #include<Geom_module.hxx>
- #include<Geom2d_module.hxx>
-@@ -55,6 +56,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<Adaptor2d_module.hxx>
- #include<TopLoc_module.hxx>
- #include<Message_module.hxx>
-+#include<TShort_module.hxx>
- #include<TColgp_module.hxx>
- #include<TColStd_module.hxx>
- #include<TCollection_module.hxx>
-@@ -68,6 +70,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- %import gp.i
- %import Bnd.i
- %import BVH.i
-+%import Poly.i
- 
- %pythoncode {
- from enum import IntEnum
-@@ -1645,7 +1648,7 @@ None
- 		 BRepExtrema_ProximityDistTool();
- 
- 		/****************** BRepExtrema_ProximityDistTool ******************/
--		/**** md5 signature: b9731e05e5136c7110e50a313b036c02 ****/
-+		/**** md5 signature: b080844c8fa666dae8c0e8db8d27e87e ****/
- 		%feature("compactdefaultargs") BRepExtrema_ProximityDistTool;
- 		%feature("autodoc", "Creates new tool for the given element sets.
- 
-@@ -1653,6 +1656,8 @@ Parameters
- ----------
- theSet1: BRepExtrema_TriangleSet
- theNbSamples1: int
-+theAddVertices1: BVH_Array3d
-+theAddStatus1: NCollection_Vector<ProxPnt_Status>
- theSet2: BRepExtrema_TriangleSet
- theShapeList1: BRepExtrema_ShapeList
- theShapeList2: BRepExtrema_ShapeList
-@@ -1661,7 +1666,7 @@ Returns
- -------
- None
- ") BRepExtrema_ProximityDistTool;
--		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
-+		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const BVH_Array3d & theAddVertices1, const NCollection_Vector<ProxPnt_Status> & theAddStatus1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
- 
- 		/****************** Accept ******************/
- 		/**** md5 signature: 47868288da8d60ae3574004f3eef6f3b ****/
-@@ -1679,6 +1684,40 @@ bool
- ") Accept;
- 		virtual Standard_Boolean Accept(const Standard_Integer theSgmIdx, const Standard_Real &);
- 
-+		/****************** IsEdgeOnBorder ******************/
-+		/**** md5 signature: 7f2df1d45fe4dd10cb81da19c83428fd ****/
-+		%feature("compactdefaultargs") IsEdgeOnBorder;
-+		%feature("autodoc", "Returns true if the edge is on the boarder.
-+
-+Parameters
-+----------
-+theTrgIdx: int
-+theFirstEdgeNodeIdx: int
-+theSecondEdgeNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsEdgeOnBorder;
-+		static Standard_Boolean IsEdgeOnBorder(const Standard_Integer theTrgIdx, const Standard_Integer theFirstEdgeNodeIdx, const Standard_Integer theSecondEdgeNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
-+		/****************** IsNodeOnBorder ******************/
-+		/**** md5 signature: 6a6c9031bf497d7acf6e95de1f2784f6 ****/
-+		%feature("compactdefaultargs") IsNodeOnBorder;
-+		%feature("autodoc", "Returns true if the node is on the boarder.
-+
-+Parameters
-+----------
-+theNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsNodeOnBorder;
-+		static Standard_Boolean IsNodeOnBorder(const Standard_Integer theNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
- 		/****************** LoadShapeLists ******************/
- 		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
- 		%feature("compactdefaultargs") LoadShapeLists;
-@@ -1787,178 +1826,10 @@ theMetric: float
- %extend BRepExtrema_ProximityDistTool {
- 	%pythoncode {
- 	__repr__ = _dumps_object
--	}
--};
--
--/***************************************
--* class BRepExtrema_ProximityValueTool *
--***************************************/
--class BRepExtrema_ProximityValueTool {
--	public:
--typedef typename BRepExtrema_ProximityDistTool ::ProxPnt_Status ProxPnt_Status;
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: f01190ce189b90d5b9278fbee66731a1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new unitialized proximity tool.
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool();
--
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: 457895b0f954d4aa93c3b2011e47f0e1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new proximity tool for the given element sets.
--
--Parameters
------------
--theSet1: BRepExtrema_TriangleSet
--theSet2: BRepExtrema_TriangleSet
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** Distance ******************/
--		/**** md5 signature: d47317206a0fb34e540004324dbfafd8 ****/
--		%feature("compactdefaultargs") Distance;
--		%feature("autodoc", "Returns the computed distance.
--
--Returns
---------
--float
--") Distance;
--		Standard_Real Distance();
--
--		/****************** IsDone ******************/
--		/**** md5 signature: e385477ab1bec806154173d4a550fd68 ****/
--		%feature("compactdefaultargs") IsDone;
--		%feature("autodoc", "Is proximity test completed?.
--
--Returns
---------
--bool
--") IsDone;
--		Standard_Boolean IsDone();
--
--		/****************** LoadShapeLists ******************/
--		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
--		%feature("compactdefaultargs") LoadShapeLists;
--		%feature("autodoc", "Loads the given list of subshapes into the proximity tool.
--
--Parameters
------------
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") LoadShapeLists;
--		void LoadShapeLists(const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** LoadTriangleSets ******************/
--		/**** md5 signature: 3a94a7860b973acbc6838bfe75b5b812 ****/
--		%feature("compactdefaultargs") LoadTriangleSets;
--		%feature("autodoc", "Loads the given element sets into the proximity tool.
--
--Parameters
------------
--theSet1: Handle ( BRepExtrema_TriangleSet )
--theSet2: Handle ( BRepExtrema_TriangleSet )
--
--Returns
---------
--None
--") LoadTriangleSets;
--		void LoadTriangleSets(const Handle ( BRepExtrema_TriangleSet ) & theSet1, const Handle ( BRepExtrema_TriangleSet ) & theSet2);
--
--		/****************** MarkDirty ******************/
--		/**** md5 signature: bd3f3e7de1b3b6a0c1da3082319fae2e ****/
--		%feature("compactdefaultargs") MarkDirty;
--		%feature("autodoc", "Marks test results as outdated.
--
--Returns
---------
--None
--") MarkDirty;
--		void MarkDirty();
--
--		/****************** Perform ******************/
--		/**** md5 signature: c2c8700606b770cff797eb33824bf0aa ****/
--		%feature("compactdefaultargs") Perform;
--		%feature("autodoc", "Performs the computation of the proximity value.
--
--Parameters
------------
--
--Returns
---------
--theTolerance: float
--") Perform;
--		void Perform(Standard_Real &OutValue);
--
--		/****************** ProximityPoints ******************/
--		/**** md5 signature: 4ddc607867ad4f349b192d8bb4196f92 ****/
--		%feature("compactdefaultargs") ProximityPoints;
--		%feature("autodoc", "Returns points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--thePoint1: gp_Pnt
--thePoint2: gp_Pnt
- 
--Returns
---------
--None
--") ProximityPoints;
--		void ProximityPoints(gp_Pnt & thePoint1, gp_Pnt & thePoint2);
--
--		/****************** ProximityPointsStatus ******************/
--		/**** md5 signature: cbb67aeda5a68bd79cbb58089638d3f8 ****/
--		%feature("compactdefaultargs") ProximityPointsStatus;
--		%feature("autodoc", "Returns status of points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--
--Returns
---------
--thePointStatus1: ProxPnt_Status
--thePointStatus2: ProxPnt_Status
--") ProximityPointsStatus;
--		void ProximityPointsStatus(ProxPnt_Status &OutValue, ProxPnt_Status &OutValue);
--
--		/****************** SetNbSamplePoints ******************/
--		/**** md5 signature: 200898431f5ab55f6d0477df1f50c3b9 ****/
--		%feature("compactdefaultargs") SetNbSamplePoints;
--		%feature("autodoc", "Sets number of sample points used for proximity calculation for each shape. if number is less or equal zero, all triangulation nodes are used.
--
--Parameters
------------
--theSamples1: int,optional
--	default value is 0
--theSamples2: int,optional
--	default value is 0
--
--Returns
---------
--None
--") SetNbSamplePoints;
--		void SetNbSamplePoints(const Standard_Integer theSamples1 = 0, const Standard_Integer theSamples2 = 0);
--
--};
--
--
--%extend BRepExtrema_ProximityValueTool {
--	%pythoncode {
--	__repr__ = _dumps_object
-+	@methodnotwrapped
-+	def LoadAdditionalPointsFirstSet(self):
-+		pass
- 	}
- };
- 
-@@ -1967,7 +1838,6 @@ None
- ***********************************/
- class BRepExtrema_ShapeProximity {
- 	public:
--typedef typename BRepExtrema_ProximityValueTool ::ProxPnt_Status ProxPnt_Status;
- 		/****************** BRepExtrema_ShapeProximity ******************/
- 		/**** md5 signature: 73b29b290349b3955b499c712de97888 ****/
- 		%feature("compactdefaultargs") BRepExtrema_ShapeProximity;
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.pyi b/src/SWIG_files/wrapper/BRepExtrema.pyi
-index 0738ed63..749fc5ef 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.pyi
-+++ b/src/SWIG_files/wrapper/BRepExtrema.pyi
-@@ -9,6 +9,7 @@ from OCC.Core.Message import *
- from OCC.Core.gp import *
- from OCC.Core.Bnd import *
- from OCC.Core.BVH import *
-+from OCC.Core.Poly import *
- 
- #the following typedef cannot be wrapped as is
- BRepExtrema_ShapeList = NewType('BRepExtrema_ShapeList', Any)
-@@ -163,8 +164,10 @@ class BRepExtrema_Poly:
- class BRepExtrema_ProximityDistTool():
-     @overload
-     def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theNbSamples1: int, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-+    @staticmethod
-+    def IsEdgeOnBorder(theTrgIdx: int, theFirstEdgeNodeIdx: int, theSecondEdgeNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-+    @staticmethod
-+    def IsNodeOnBorder(theNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-     def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-     def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
-     def Perform(self) -> None: ...
-@@ -172,20 +175,6 @@ class BRepExtrema_ProximityDistTool():
-     def ProximityPoints(self, thePoint1: BVH_Vec3d, thePoint2: BVH_Vec3d) -> None: ...
-     def RejectNode(self, theCornerMin: BVH_Vec3d, theCornerMax: BVH_Vec3d) -> Tuple[bool, float]: ...
- 
--class BRepExtrema_ProximityValueTool:
--    @overload
--    def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def Distance(self) -> float: ...
--    def IsDone(self) -> bool: ...
--    def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
--    def MarkDirty(self) -> None: ...
--    def Perform(self) -> float: ...
--    def ProximityPoints(self, thePoint1: gp_Pnt, thePoint2: gp_Pnt) -> None: ...
--    def SetNbSamplePoints(self, theSamples1: Optional[int] = 0, theSamples2: Optional[int] = 0) -> None: ...
--
- class BRepExtrema_ShapeProximity:
-     @overload
-     def __init__(self, theTolerance: Optional[float] = precision_Infinite()) -> None: ...
-@@ -271,3 +260,5 @@ class BRepExtrema_OverlapTool: ...
- # hsequence classes
- 
- BRepExtrema_Poly_Distance = BRepExtrema_Poly.Distance
-+BRepExtrema_ProximityDistTool_IsEdgeOnBorder = BRepExtrema_ProximityDistTool.IsEdgeOnBorder
-+BRepExtrema_ProximityDistTool_IsNodeOnBorder = BRepExtrema_ProximityDistTool.IsNodeOnBorder
-diff --git a/src/SWIG_files/wrapper/BRepFill.i b/src/SWIG_files/wrapper/BRepFill.i
-index 1b12746f..0281ab54 100644
---- a/src/SWIG_files/wrapper/BRepFill.i
-+++ b/src/SWIG_files/wrapper/BRepFill.i
-@@ -105,6 +105,16 @@ from OCC.Core.Exception import *
- };
- 
- /* public enums */
-+enum BRepFill_ThruSectionErrorStatus {
-+	BRepFill_ThruSectionErrorStatus_Done = 0,
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1,
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2,
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3,
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4,
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5,
-+	BRepFill_ThruSectionErrorStatus_Failed = 6,
-+};
-+
- enum BRepFill_TypeOfContact {
- 	BRepFill_NoContact = 0,
- 	BRepFill_Contact = 1,
-@@ -122,6 +132,22 @@ enum BRepFill_TransitionStyle {
- /* python proxy classes for enums */
- %pythoncode {
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+	BRepFill_ThruSectionErrorStatus_Done = 0
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5
-+	BRepFill_ThruSectionErrorStatus_Failed = 6
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
- 	BRepFill_NoContact = 0
- 	BRepFill_Contact = 1
-@@ -575,6 +601,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Edge & SubSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "No available documentation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 217046dd3125fb37abc6e15803e209f1 ****/
- 		%feature("compactdefaultargs") Init;
-@@ -1816,6 +1853,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Shape & SSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns status of the operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** IsMutableInput ******************/
- 		/**** md5 signature: 2df16e5a957577cfce65832aa2d90512 ****/
- 		%feature("compactdefaultargs") IsMutableInput;
-diff --git a/src/SWIG_files/wrapper/BRepFill.pyi b/src/SWIG_files/wrapper/BRepFill.pyi
-index b73b54f3..412b53b2 100644
---- a/src/SWIG_files/wrapper/BRepFill.pyi
-+++ b/src/SWIG_files/wrapper/BRepFill.pyi
-@@ -83,6 +83,23 @@ class BRepFill_SequenceOfSection:
-     def Value(self, theIndex: int) -> BRepFill_Section: ...
-     def SetValue(self, theIndex: int, theValue: BRepFill_Section) -> None: ...
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+    BRepFill_ThruSectionErrorStatus_Done: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotDone: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotSameTopology: int = ...
-+    BRepFill_ThruSectionErrorStatus_ProfilesInconsistent: int = ...
-+    BRepFill_ThruSectionErrorStatus_WrongUsage: int = ...
-+    BRepFill_ThruSectionErrorStatus_Null3DCurve: int = ...
-+    BRepFill_ThruSectionErrorStatus_Failed: int = ...
-+
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
-     BRepFill_NoContact: int = ...
-     BRepFill_Contact: int = ...
-@@ -139,6 +156,7 @@ class BRepFill_CompatibleWires:
-     def __init__(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SubSection: TopoDS_Edge) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def IsDegeneratedFirstSection(self) -> bool: ...
-     def IsDegeneratedLastSection(self) -> bool: ...
-@@ -255,6 +273,7 @@ class BRepFill_Generator:
-     def AddWire(self, Wire: TopoDS_Wire) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SSection: TopoDS_Shape) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def IsMutableInput(self) -> bool: ...
-     def Perform(self) -> None: ...
-     def ResultShape(self, theShape: TopoDS_Shape) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BRepOffset.i b/src/SWIG_files/wrapper/BRepOffset.i
-index d6800998..05add5f2 100644
---- a/src/SWIG_files/wrapper/BRepOffset.i
-+++ b/src/SWIG_files/wrapper/BRepOffset.i
-@@ -131,6 +131,7 @@ enum BRepOffset_Error {
- 	BRepOffset_CannotFuseVertices = 7,
- 	BRepOffset_CannotExtentEdge = 8,
- 	BRepOffset_UserBreak = 9,
-+	BRepOffset_MixedConnectivity = 10,
- };
- 
- enum BRepOffsetSimple_Status {
-@@ -171,6 +172,7 @@ class BRepOffset_Error(IntEnum):
- 	BRepOffset_CannotFuseVertices = 7
- 	BRepOffset_CannotExtentEdge = 8
- 	BRepOffset_UserBreak = 9
-+	BRepOffset_MixedConnectivity = 10
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
- BRepOffset_BadNormalsOnGeometry = BRepOffset_Error.BRepOffset_BadNormalsOnGeometry
-@@ -181,6 +183,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
- 	BRepOffsetSimple_OK = 0
-diff --git a/src/SWIG_files/wrapper/BRepOffset.pyi b/src/SWIG_files/wrapper/BRepOffset.pyi
-index 89a5e3e1..fd6f7478 100644
---- a/src/SWIG_files/wrapper/BRepOffset.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffset.pyi
-@@ -43,6 +43,7 @@ class BRepOffset_Error(IntEnum):
-     BRepOffset_CannotFuseVertices: int = ...
-     BRepOffset_CannotExtentEdge: int = ...
-     BRepOffset_UserBreak: int = ...
-+    BRepOffset_MixedConnectivity: int = ...
- 
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
-@@ -54,6 +55,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
-     BRepOffsetSimple_OK: int = ...
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.i b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-index 1f9ad1dd..df26f708 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.i
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-@@ -2558,6 +2558,17 @@ TopoDS_Shape
- ") GeneratedFace;
- 		TopoDS_Shape GeneratedFace(const TopoDS_Shape & Edge);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns the status of thrusection operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 82b061dc05f66b08422610d2d7504487 ****/
- 		%feature("compactdefaultargs") Init;
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-index 042de45f..815ee7e1 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-@@ -260,6 +260,7 @@ class BRepOffsetAPI_ThruSections(BRepBuilderAPI_MakeShape):
-     def FirstShape(self) -> TopoDS_Shape: ...
-     def Generated(self, S: TopoDS_Shape) -> TopTools_ListOfShape: ...
-     def GeneratedFace(self, Edge: TopoDS_Shape) -> TopoDS_Shape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, isSolid: Optional[bool] = False, ruled: Optional[bool] = False, pres3d: Optional[float] = 1.0e-06) -> None: ...
-     def IsMutableInput(self) -> bool: ...
-     def LastShape(self) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BSplCLib.i b/src/SWIG_files/wrapper/BSplCLib.i
-index f0b6635f..80aa4d80 100644
---- a/src/SWIG_files/wrapper/BSplCLib.i
-+++ b/src/SWIG_files/wrapper/BSplCLib.i
-@@ -2001,6 +2001,29 @@ InversionProblem: int
- ") Interpolate;
- 		static void Interpolate(const Standard_Integer Degree, const TColStd_Array1OfReal & FlatKnots, const TColStd_Array1OfReal & Parameters, const TColStd_Array1OfInteger & ContactOrderArray, const Standard_Integer ArrayDimension, Standard_Real &OutValue, Standard_Real &OutValue, Standard_Integer &OutValue);
- 
-+		/****************** Intervals ******************/
-+		/**** md5 signature: 6005dd7b642eb153ae7f9293cf41ffb5 ****/
-+		%feature("compactdefaultargs") Intervals;
-+		%feature("autodoc", "Splits the given range to bspline intervals of given continuity @param[in] theknots the knots of bspline @param[in] themults the knots' multiplicities @param[in] thedegree the degree of bspline @param[in] isperiodic the periodicity of bspline @param[in] thecontinuity the target interval's continuity @param[in] thefirst the begin of the target range @param[in] thelast the end of the target range @param[in] thetolerance the tolerance @param[in,out] theintervals the array to store intervals if isn't nullptr returns the number of intervals.
-+
-+Parameters
-+----------
-+theKnots: TColStd_Array1OfReal
-+theMults: TColStd_Array1OfInteger
-+theDegree: int
-+isPeriodic: bool
-+theContinuity: int
-+theFirst: float
-+theLast: float
-+theTolerance: float
-+theIntervals: TColStd_Array1OfReal *
-+
-+Returns
-+-------
-+int
-+") Intervals;
-+		static Standard_Integer Intervals(const TColStd_Array1OfReal & theKnots, const TColStd_Array1OfInteger & theMults, Standard_Integer theDegree, Standard_Boolean isPeriodic, Standard_Integer theContinuity, Standard_Real theFirst, Standard_Real theLast, Standard_Real theTolerance, TColStd_Array1OfReal * theIntervals);
-+
- 		/****************** IsRational ******************/
- 		/**** md5 signature: 5ee1bb4d64e0a78acc3cb994f1afcefa ****/
- 		%feature("compactdefaultargs") IsRational;
-diff --git a/src/SWIG_files/wrapper/BSplCLib.pyi b/src/SWIG_files/wrapper/BSplCLib.pyi
-index b8ac4682..671f76a0 100644
---- a/src/SWIG_files/wrapper/BSplCLib.pyi
-+++ b/src/SWIG_files/wrapper/BSplCLib.pyi
-@@ -278,6 +278,8 @@ class bsplclib:
-     @staticmethod
-     def Interpolate(Degree: int, FlatKnots: TColStd_Array1OfReal, Parameters: TColStd_Array1OfReal, ContactOrderArray: TColStd_Array1OfInteger, ArrayDimension: int) -> Tuple[float, float, int]: ...
-     @staticmethod
-+    def Intervals(theKnots: TColStd_Array1OfReal, theMults: TColStd_Array1OfInteger, theDegree: int, isPeriodic: bool, theContinuity: int, theFirst: float, theLast: float, theTolerance: float, theIntervals: TColStd_Array1OfReal) -> int: ...
-+    @staticmethod
-     def IsRational(Weights: TColStd_Array1OfReal, I1: int, I2: int, Epsilon: Optional[float] = 0.0) -> bool: ...
-     @staticmethod
-     def KnotAnalysis(Degree: int, Periodic: bool, CKnots: TColStd_Array1OfReal, CMults: TColStd_Array1OfInteger, KnotForm: GeomAbs_BSplKnotDistribution) -> int: ...
-@@ -566,6 +568,7 @@ bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
-+bsplclib_Intervals = bsplclib.Intervals
- bsplclib_IsRational = bsplclib.IsRational
- bsplclib_KnotAnalysis = bsplclib.KnotAnalysis
- bsplclib_KnotForm = bsplclib.KnotForm
-diff --git a/src/SWIG_files/wrapper/ChFiDS.i b/src/SWIG_files/wrapper/ChFiDS.i
-index d60e552a..b8096939 100644
---- a/src/SWIG_files/wrapper/ChFiDS.i
-+++ b/src/SWIG_files/wrapper/ChFiDS.i
-@@ -121,6 +121,7 @@ enum ChFiDS_TypeOfConcavity {
- 	ChFiDS_Tangential = 2,
- 	ChFiDS_FreeBound = 3,
- 	ChFiDS_Other = 4,
-+	ChFiDS_Mixed = 5,
- };
- 
- /* end public enums declaration */
-@@ -178,11 +179,13 @@ class ChFiDS_TypeOfConcavity(IntEnum):
- 	ChFiDS_Tangential = 2
- 	ChFiDS_FreeBound = 3
- 	ChFiDS_Other = 4
-+	ChFiDS_Mixed = 5
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- };
- /* end python proxy for enums */
- 
-@@ -2029,6 +2032,17 @@ TopoDS_Vertex
- ") FirstVertex;
- 		TopoDS_Vertex FirstVertex();
- 
-+		/****************** GetTolesp ******************/
-+		/**** md5 signature: 217c13748b3cb2bf2cc59e96cafe8207 ****/
-+		%feature("compactdefaultargs") GetTolesp;
-+		%feature("autodoc", "Return tolesp parameter.
-+
-+Returns
-+-------
-+float
-+") GetTolesp;
-+		Standard_Real GetTolesp();
-+
- 		/****************** GetType ******************/
- 		/**** md5 signature: 6d4e6ae7972633971ba343e8afc91aa1 ****/
- 		%feature("compactdefaultargs") GetType;
-diff --git a/src/SWIG_files/wrapper/ChFiDS.pyi b/src/SWIG_files/wrapper/ChFiDS.pyi
-index 6543ea1a..d1884594 100644
---- a/src/SWIG_files/wrapper/ChFiDS.pyi
-+++ b/src/SWIG_files/wrapper/ChFiDS.pyi
-@@ -192,12 +192,14 @@ class ChFiDS_TypeOfConcavity(IntEnum):
-     ChFiDS_Tangential: int = ...
-     ChFiDS_FreeBound: int = ...
-     ChFiDS_Other: int = ...
-+    ChFiDS_Mixed: int = ...
- 
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- 
- class ChFiDS_CircSection:
-     def __init__(self) -> None: ...
-@@ -351,6 +353,7 @@ class ChFiDS_Spine(Standard_Transient):
-     def FirstParameter(self, IndexSpine: int) -> float: ...
-     def FirstStatus(self) -> ChFiDS_State: ...
-     def FirstVertex(self) -> TopoDS_Vertex: ...
-+    def GetTolesp(self) -> float: ...
-     def GetType(self) -> GeomAbs_CurveType: ...
-     def GetTypeOfConcavity(self) -> ChFiDS_TypeOfConcavity: ...
-     def HasFirstTgt(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/GeomInt.i b/src/SWIG_files/wrapper/GeomInt.i
-index a01b7841..9d84060c 100644
---- a/src/SWIG_files/wrapper/GeomInt.i
-+++ b/src/SWIG_files/wrapper/GeomInt.i
-@@ -936,6 +936,29 @@ opencascade::handle<Geom_Curve>
- ") Boundary;
- 		const opencascade::handle<Geom_Curve> & Boundary(const Standard_Integer Index);
- 
-+		/****************** BuildPCurves ******************/
-+		/**** md5 signature: 6965f43fd020f13216b45cd065743faa ****/
-+		%feature("compactdefaultargs") BuildPCurves;
-+		%feature("autodoc", "Creates 2d-curve on given surface from given 3d-curve.
-+
-+Parameters
-+----------
-+theFirst: float
-+theLast: float
-+theUmin: float
-+theUmax: float
-+theVmin: float
-+theVmax: float
-+theSurface: Geom_Surface
-+theCurve: Geom_Curve
-+theCurve2d: Geom2d_Curve
-+
-+Returns
-+-------
-+theTol: float
-+") BuildPCurves;
-+		static void BuildPCurves(const Standard_Real theFirst, const Standard_Real theLast, const Standard_Real theUmin, const Standard_Real theUmax, const Standard_Real theVmin, const Standard_Real theVmax, Standard_Real &OutValue, const opencascade::handle<Geom_Surface> & theSurface, const opencascade::handle<Geom_Curve> & theCurve, opencascade::handle<Geom2d_Curve> & theCurve2d);
-+
- 		/****************** BuildPCurves ******************/
- 		/**** md5 signature: 2c2bdb53423075c70323712785098b12 ****/
- 		%feature("compactdefaultargs") BuildPCurves;
-diff --git a/src/SWIG_files/wrapper/GeomInt.pyi b/src/SWIG_files/wrapper/GeomInt.pyi
-index eae46ba0..c6076fec 100644
---- a/src/SWIG_files/wrapper/GeomInt.pyi
-+++ b/src/SWIG_files/wrapper/GeomInt.pyi
-@@ -110,6 +110,10 @@ class GeomInt_IntSS:
-     @overload
-     def __init__(self, S1: Geom_Surface, S2: Geom_Surface, Tol: float, Approx: Optional[bool] = True, ApproxS1: Optional[bool] = False, ApproxS2: Optional[bool] = False) -> None: ...
-     def Boundary(self, Index: int) -> Geom_Curve: ...
-+    @overload
-+    @staticmethod
-+    def BuildPCurves(theFirst: float, theLast: float, theUmin: float, theUmax: float, theVmin: float, theVmax: float, theSurface: Geom_Surface, theCurve: Geom_Curve, theCurve2d: Geom2d_Curve) -> float: ...
-+    @overload
-     @staticmethod
-     def BuildPCurves(f: float, l: float, S: Geom_Surface, C: Geom_Curve, C2d: Geom2d_Curve) -> float: ...
-     def HasLineOnS1(self, Index: int) -> bool: ...
-@@ -525,6 +529,7 @@ class GeomInt_WLApprox: ...
- 
- geomint_AdjustPeriodic = geomint.AdjustPeriodic
- GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
-+GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
- GeomInt_IntSS_MakeBSpline = GeomInt_IntSS.MakeBSpline
- GeomInt_IntSS_MakeBSpline2d = GeomInt_IntSS.MakeBSpline2d
- GeomInt_IntSS_TreatRLine = GeomInt_IntSS.TreatRLine
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.i b/src/SWIG_files/wrapper/STEPCAFControl.i
-index 3ddc1ba8..9372c840 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.i
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.i
-@@ -1849,24 +1849,24 @@ None
- 		 STEPCAFControl_Writer();
- 
- 		/****************** STEPCAFControl_Writer ******************/
--		/**** md5 signature: 70a513d4d628947fa1e98ed8e35359d9 ****/
-+		/**** md5 signature: dedf68dbebf4d519616966632e9764a8 ****/
- 		%feature("compactdefaultargs") STEPCAFControl_Writer;
- 		%feature("autodoc", "Creates a reader tool and attaches it to an already existing session clears the session if it was not yet set for step clears the internal data structures.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") STEPCAFControl_Writer;
--		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** ChangeWriter ******************/
--		/**** md5 signature: 9719ebc8336482d007d450c0e3b00713 ****/
-+		/**** md5 signature: acee09144e4dec42ed602fde52975129 ****/
- 		%feature("compactdefaultargs") ChangeWriter;
- 		%feature("autodoc", "Returns basic reader for root file.
- 
-@@ -1877,39 +1877,39 @@ STEPControl_Writer
- 		STEPControl_Writer & ChangeWriter();
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: 4f90b7104efa0649e14f70ad09ab8e61 ****/
-+		/**** md5 signature: 0769b22e71152aabd75dace01164fc2b ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its original label returns false if no external file with given name is read.
- 
- Parameters
- ----------
--L: TDF_Label
--ef: STEPCAFControl_ExternFile
-+theLabel: TDF_Label
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const TDF_Label & L, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(const TDF_Label & theLabel, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: ad0d6b0b3be01575d180dd24c55cd264 ****/
-+		/**** md5 signature: f77e0b8157371b505bc136b8bd33443e ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its name returns false if no external file with given name is read.
- 
- Parameters
- ----------
--name: char *
--ef: STEPCAFControl_ExternFile
-+theName: str
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const char * name, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(Standard_CString theName, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFiles ******************/
--		/**** md5 signature: 1154c88bc3253c7291077317c11363ab ****/
-+		/**** md5 signature: 08a0b41df731275c7119f8910e47970c ****/
- 		%feature("compactdefaultargs") ExternFiles;
- 		%feature("autodoc", "Returns data on external files returns null handle if no external files are read.
- 
-@@ -1920,7 +1920,7 @@ NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_
- 		const NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_ExternFile>> & ExternFiles();
- 
- 		/****************** GetColorMode ******************/
--		/**** md5 signature: 010da6a8a0e8a61fdb607fd6faba2b56 ****/
-+		/**** md5 signature: cddb885e605f1794a5a6486023f65736 ****/
- 		%feature("compactdefaultargs") GetColorMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1931,7 +1931,7 @@ bool
- 		Standard_Boolean GetColorMode();
- 
- 		/****************** GetDimTolMode ******************/
--		/**** md5 signature: 2eed8e0bb30a6f85d0c500a8d4b9e16c ****/
-+		/**** md5 signature: 5f3c2fc2e581a2ea711f9607cd0a817a ****/
- 		%feature("compactdefaultargs") GetDimTolMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1942,7 +1942,7 @@ bool
- 		Standard_Boolean GetDimTolMode();
- 
- 		/****************** GetLayerMode ******************/
--		/**** md5 signature: d677385c303e067613f92bc738509727 ****/
-+		/**** md5 signature: b6b1458608d2429d13e63a07c0b392d8 ****/
- 		%feature("compactdefaultargs") GetLayerMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1953,7 +1953,7 @@ bool
- 		Standard_Boolean GetLayerMode();
- 
- 		/****************** GetMaterialMode ******************/
--		/**** md5 signature: cda125e3ff8f835393b9894e3f229aea ****/
-+		/**** md5 signature: 2057a4ef866086868ba91cb34e6ad09a ****/
- 		%feature("compactdefaultargs") GetMaterialMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1964,7 +1964,7 @@ bool
- 		Standard_Boolean GetMaterialMode();
- 
- 		/****************** GetNameMode ******************/
--		/**** md5 signature: 2dd32a893d6f5f4666ac3752ace2d12f ****/
-+		/**** md5 signature: 1097f532a68b4625a0108cddc8366238 ****/
- 		%feature("compactdefaultargs") GetNameMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1975,7 +1975,7 @@ bool
- 		Standard_Boolean GetNameMode();
- 
- 		/****************** GetPropsMode ******************/
--		/**** md5 signature: 3b2f4c2b61084d1e067d83421e0ea81d ****/
-+		/**** md5 signature: 99cee0ed60040ac88dbf6e950f82a10e ****/
- 		%feature("compactdefaultargs") GetPropsMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1986,7 +1986,7 @@ bool
- 		Standard_Boolean GetPropsMode();
- 
- 		/****************** GetSHUOMode ******************/
--		/**** md5 signature: 74c5f048b04741ef5abfe259b5c453cd ****/
-+		/**** md5 signature: 4e3a3a7f89647ad6b4f35f24a42234d6 ****/
- 		%feature("compactdefaultargs") GetSHUOMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1997,31 +1997,31 @@ bool
- 		Standard_Boolean GetSHUOMode();
- 
- 		/****************** Init ******************/
--		/**** md5 signature: 13544ae418c98602c6eaed6faea8f526 ****/
-+		/**** md5 signature: e7d3f870615865a6686f75c3aa077ff3 ****/
- 		%feature("compactdefaultargs") Init;
- 		%feature("autodoc", "Clears the internal data structures and attaches to a new session clears the session if it was not yet set for step.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") Init;
--		void Init(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		void Init(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 82a9ff51a493dfcaea368ecaef792fdb ****/
-+		/**** md5 signature: 624f8c3670df66af47c4a9af2967eb2a ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: TCollection_AsciiString
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2029,17 +2029,17 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const TCollection_AsciiString & filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, TCollection_AsciiString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 1ef00b1bd520cd3b05cc4f00e91c494d ****/
-+		/**** md5 signature: 90b76d8d692f1926baa1d9dd3db9018b ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "Transfers a document and writes it to a step file returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: char *
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2047,124 +2047,124 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const char * filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, Standard_CString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** SetColorMode ******************/
--		/**** md5 signature: e8d41838c31a9460a1c83d84b1f572a1 ****/
-+		/**** md5 signature: f341158b4cc5262e2e5cb7b941cc9031 ****/
- 		%feature("compactdefaultargs") SetColorMode;
- 		%feature("autodoc", "Set colormode for indicate write colors or not.
- 
- Parameters
- ----------
--colormode: bool
-+theColorMode: bool
- 
- Returns
- -------
- None
- ") SetColorMode;
--		void SetColorMode(const Standard_Boolean colormode);
-+		void SetColorMode(const Standard_Boolean theColorMode);
- 
- 		/****************** SetDimTolMode ******************/
--		/**** md5 signature: 18d408609aea9a67d1d1e15d923773db ****/
-+		/**** md5 signature: 08cd53498196841f3c3a5c0e281a464f ****/
- 		%feature("compactdefaultargs") SetDimTolMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--dimtolmode: bool
-+theDimTolMode: bool
- 
- Returns
- -------
- None
- ") SetDimTolMode;
--		void SetDimTolMode(const Standard_Boolean dimtolmode);
-+		void SetDimTolMode(const Standard_Boolean theDimTolMode);
- 
- 		/****************** SetLayerMode ******************/
--		/**** md5 signature: 3ec21c8de4b114a83bb0b34cb3b98662 ****/
-+		/**** md5 signature: d164352478699d01fe5d59c680c2a74d ****/
- 		%feature("compactdefaultargs") SetLayerMode;
- 		%feature("autodoc", "Set layermode for indicate write layers or not.
- 
- Parameters
- ----------
--layermode: bool
-+theLayerMode: bool
- 
- Returns
- -------
- None
- ") SetLayerMode;
--		void SetLayerMode(const Standard_Boolean layermode);
-+		void SetLayerMode(const Standard_Boolean theLayerMode);
- 
- 		/****************** SetMaterialMode ******************/
--		/**** md5 signature: ef4abdfa06b076742a69b17150f91d88 ****/
-+		/**** md5 signature: 932571d6d0df2e34fd2487f6025f4956 ****/
- 		%feature("compactdefaultargs") SetMaterialMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--matmode: bool
-+theMaterialMode: bool
- 
- Returns
- -------
- None
- ") SetMaterialMode;
--		void SetMaterialMode(const Standard_Boolean matmode);
-+		void SetMaterialMode(const Standard_Boolean theMaterialMode);
- 
- 		/****************** SetNameMode ******************/
--		/**** md5 signature: 43ccb5d3fb024d8191f251ee74d0f6ba ****/
-+		/**** md5 signature: a24984c6ce274882f02601c13cf73b9a ****/
- 		%feature("compactdefaultargs") SetNameMode;
- 		%feature("autodoc", "Set namemode for indicate write name or not.
- 
- Parameters
- ----------
--namemode: bool
-+theNameMode: bool
- 
- Returns
- -------
- None
- ") SetNameMode;
--		void SetNameMode(const Standard_Boolean namemode);
-+		void SetNameMode(const Standard_Boolean theNameMode);
- 
- 		/****************** SetPropsMode ******************/
--		/**** md5 signature: 97f3b34eb7a1e38c6cf17d5c26f938a6 ****/
-+		/**** md5 signature: fbb288fb7a76bf6b9cd3acd70d056a7f ****/
- 		%feature("compactdefaultargs") SetPropsMode;
- 		%feature("autodoc", "Propsmode for indicate write validation properties or not.
- 
- Parameters
- ----------
--propsmode: bool
-+thePropsMode: bool
- 
- Returns
- -------
- None
- ") SetPropsMode;
--		void SetPropsMode(const Standard_Boolean propsmode);
-+		void SetPropsMode(const Standard_Boolean thePropsMode);
- 
- 		/****************** SetSHUOMode ******************/
--		/**** md5 signature: ad06ed8b923731ee7b75bf3d7074f299 ****/
-+		/**** md5 signature: 39955bf97fe8d6a6d6b3b211a859f216 ****/
- 		%feature("compactdefaultargs") SetSHUOMode;
- 		%feature("autodoc", "Set shuo mode for indicate write shuo or not.
- 
- Parameters
- ----------
--shuomode: bool
-+theSHUOMode: bool
- 
- Returns
- -------
- None
- ") SetSHUOMode;
--		void SetSHUOMode(const Standard_Boolean shuomode);
-+		void SetSHUOMode(const Standard_Boolean theSHUOMode);
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 2616e7e1bc1f8548fb5e464651c0f720 ****/
-+		/**** md5 signature: dd7ebbdc1c22d7845ad531885273adee ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Transfers a document (or single label) to a step model the mode of translation of shape is asis if multi is not null pointer, it switches to multifile mode (with external refs), and string pointed by <multi> gives prefix for names of extern files (can be empty string) returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--mode: STEPControl_StepModelType,optional
-+theDoc: TDocStd_Document
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2173,19 +2173,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & doc, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & theDoc, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 3230c3763f234bd8211762a290f20e3d ****/
-+		/**** md5 signature: 40f710aeab310ab1eff9bbdbe733b162 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Method to transfer part of the document specified by label.
- 
- Parameters
- ----------
--L: TDF_Label
--mode: STEPControl_StepModelType,optional
-+theLabel: TDF_Label
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2194,19 +2194,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_Label & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_Label & theLabel, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 7533cb05eb0d45c4c5142f45de14069a ****/
-+		/**** md5 signature: 4e3f0900d966cc07a5e2191b2b4ba7a6 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Mehod to writing sequence of root assemblies or part of the file specified by use by one label .
- 
- Parameters
- ----------
--L: TDF_LabelSequence
--mode: STEPControl_StepModelType,optional
-+theLabelSeq: TDF_LabelSequence
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2215,7 +2215,7 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_LabelSequence & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_LabelSequence & theLabelSeq, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Write ******************/
- 		/**** md5 signature: 14544d6ececf228a5871ef6afa0279ae ****/
-@@ -2248,7 +2248,7 @@ IFSelect_ReturnStatus
- 		IFSelect_ReturnStatus WriteStream(std::ostream & theStream);
- 
- 		/****************** Writer ******************/
--		/**** md5 signature: 70b6d632350a5ba6ff972c4b437432a0 ****/
-+		/**** md5 signature: 056d4f3221d283b7d58d92ddd5c40dd7 ****/
- 		%feature("compactdefaultargs") Writer;
- 		%feature("autodoc", "Returns basic reader as const.
- 
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.pyi b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-index 896eedcf..9160ffa9 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.pyi
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-@@ -175,12 +175,12 @@ class STEPCAFControl_Writer:
-     @overload
-     def __init__(self) -> None: ...
-     @overload
--    def __init__(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def __init__(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     def ChangeWriter(self) -> STEPControl_Writer: ...
-     @overload
--    def ExternFile(self, L: TDF_Label, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theLabel: TDF_Label, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     @overload
--    def ExternFile(self, name: str, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theName: str, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     def ExternFiles(self) -> False: ...
-     def GetColorMode(self) -> bool: ...
-     def GetDimTolMode(self) -> bool: ...
-@@ -189,24 +189,24 @@ class STEPCAFControl_Writer:
-     def GetNameMode(self) -> bool: ...
-     def GetPropsMode(self) -> bool: ...
-     def GetSHUOMode(self) -> bool: ...
--    def Init(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def Init(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: TCollection_AsciiString, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
--    def SetColorMode(self, colormode: bool) -> None: ...
--    def SetDimTolMode(self, dimtolmode: bool) -> None: ...
--    def SetLayerMode(self, layermode: bool) -> None: ...
--    def SetMaterialMode(self, matmode: bool) -> None: ...
--    def SetNameMode(self, namemode: bool) -> None: ...
--    def SetPropsMode(self, propsmode: bool) -> None: ...
--    def SetSHUOMode(self, shuomode: bool) -> None: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def SetColorMode(self, theColorMode: bool) -> None: ...
-+    def SetDimTolMode(self, theDimTolMode: bool) -> None: ...
-+    def SetLayerMode(self, theLayerMode: bool) -> None: ...
-+    def SetMaterialMode(self, theMaterialMode: bool) -> None: ...
-+    def SetNameMode(self, theNameMode: bool) -> None: ...
-+    def SetPropsMode(self, thePropsMode: bool) -> None: ...
-+    def SetSHUOMode(self, theSHUOMode: bool) -> None: ...
-     @overload
--    def Transfer(self, doc: TDocStd_Document, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theDoc: TDocStd_Document, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_Label, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabel: TDF_Label, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_LabelSequence, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabelSeq: TDF_LabelSequence, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     def Write(self, theFileName: str) -> IFSelect_ReturnStatus: ...
-     def Writer(self) -> STEPControl_Writer: ...
- 
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.i b/src/SWIG_files/wrapper/STEPConstruct.i
-index f1221c33..d9eaffc8 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.i
-+++ b/src/SWIG_files/wrapper/STEPConstruct.i
-@@ -2598,6 +2598,17 @@ opencascade::handle<StepVisual_PresentationStyleAssignment>
- ") MakeColorPSA;
- 		opencascade::handle<StepVisual_PresentationStyleAssignment> MakeColorPSA(const opencascade::handle<StepRepr_RepresentationItem> & item, const opencascade::handle<StepVisual_Colour> & SurfCol, const opencascade::handle<StepVisual_Colour> & CurveCol, const opencascade::handle<StepVisual_Colour> & RenderCol, const Standard_Real RenderTransp, const Standard_Boolean isForNAUO = Standard_False);
- 
-+		/****************** NbRootStyles ******************/
-+		/**** md5 signature: 4bb6a5a6f49e5abb7085f5ef57337a5a ****/
-+		%feature("compactdefaultargs") NbRootStyles;
-+		%feature("autodoc", "Returns number of override styles.
-+
-+Returns
-+-------
-+int
-+") NbRootStyles;
-+		Standard_Integer NbRootStyles();
-+
- 		/****************** NbStyles ******************/
- 		/**** md5 signature: 9f5fbd515247307ce70e63c6f585ddb7 ****/
- 		%feature("compactdefaultargs") NbStyles;
-@@ -2609,6 +2620,21 @@ int
- ") NbStyles;
- 		Standard_Integer NbStyles();
- 
-+		/****************** RootStyle ******************/
-+		/**** md5 signature: 97e67ad6592e4e36a6444e18652921fc ****/
-+		%feature("compactdefaultargs") RootStyle;
-+		%feature("autodoc", "Returns override style with given index.
-+
-+Parameters
-+----------
-+i: int
-+
-+Returns
-+-------
-+opencascade::handle<StepVisual_StyledItem>
-+") RootStyle;
-+		opencascade::handle<StepVisual_StyledItem> RootStyle(const Standard_Integer i);
-+
- 		/****************** Style ******************/
- 		/**** md5 signature: e152f39ac13e328dca6d350a6f881da8 ****/
- 		%feature("compactdefaultargs") Style;
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.pyi b/src/SWIG_files/wrapper/STEPConstruct.pyi
-index ca04fc33..0f3aa64d 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.pyi
-+++ b/src/SWIG_files/wrapper/STEPConstruct.pyi
-@@ -253,7 +253,9 @@ class STEPConstruct_Styles(STEPConstruct_Tool):
-     def LoadInvisStyles(self, InvSyles: TColStd_HSequenceOfTransient) -> bool: ...
-     def LoadStyles(self) -> bool: ...
-     def MakeColorPSA(self, item: StepRepr_RepresentationItem, SurfCol: StepVisual_Colour, CurveCol: StepVisual_Colour, RenderCol: StepVisual_Colour, RenderTransp: float, isForNAUO: Optional[bool] = False) -> StepVisual_PresentationStyleAssignment: ...
-+    def NbRootStyles(self) -> int: ...
-     def NbStyles(self) -> int: ...
-+    def RootStyle(self, i: int) -> StepVisual_StyledItem: ...
-     def Style(self, i: int) -> StepVisual_StyledItem: ...
- 
- class STEPConstruct_ValidationProps(STEPConstruct_Tool):
-diff --git a/src/SWIG_files/wrapper/ShapeUpgrade.i b/src/SWIG_files/wrapper/ShapeUpgrade.i
-index 1fd11ef9..b3c16c8c 100644
---- a/src/SWIG_files/wrapper/ShapeUpgrade.i
-+++ b/src/SWIG_files/wrapper/ShapeUpgrade.i
-@@ -1064,6 +1064,7 @@ None
- class ShapeUpgrade_UnifySameDomain : public Standard_Transient {
- 	public:
- typedef NCollection_DataMap<TopoDS_Shape , opencascade ::handle<Geom_Plane>, TopTools_ShapeMapHasher> DataMapOfFacePlane;
-+typedef NCollection_DataMap<TopoDS_Shape , TopTools_MapOfShape , TopTools_ShapeMapHasher> DataMapOfShapeMapOfShape;
- 		/****************** ShapeUpgrade_UnifySameDomain ******************/
- 		/**** md5 signature: 81e68dd91fd764ff95aa62b12dc88ed6 ****/
- 		%feature("compactdefaultargs") ShapeUpgrade_UnifySameDomain;
-diff --git a/src/SWIG_files/wrapper/StdPrs.i b/src/SWIG_files/wrapper/StdPrs.i
-index 0d01b154..bcdbf6c2 100644
---- a/src/SWIG_files/wrapper/StdPrs.i
-+++ b/src/SWIG_files/wrapper/StdPrs.i
-@@ -1220,7 +1220,7 @@ int
- class StdPrs_ShadedShape : public Prs3d_Root {
- 	public:
- 		/****************** Add ******************/
--		/**** md5 signature: 4361c97ebfd2d178620c977d5eabb386 ****/
-+		/**** md5 signature: eb25cffb7e72ca49100cdcc43a05ee8c ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape>. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1231,15 +1231,17 @@ theShape: TopoDS_Shape
- theDrawer: Prs3d_Drawer
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** Add ******************/
--		/**** md5 signature: c21dc028b4eb82bb3707a6e95d6e5c3b ****/
-+		/**** md5 signature: c2784d9b78f332340fcb1d6c9293a2a1 ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape> with texture coordinates. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1254,12 +1256,14 @@ theUVRepeat: gp_Pnt2d
- theUVScale: gp_Pnt2d
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** AddWireframeForFacesWithoutTriangles ******************/
- 		/**** md5 signature: 2399101e036cd3b0540bfa37732d6fc1 ****/
-diff --git a/src/SWIG_files/wrapper/StdPrs.pyi b/src/SWIG_files/wrapper/StdPrs.pyi
-index 3a01af7b..4df76eb5 100644
---- a/src/SWIG_files/wrapper/StdPrs.pyi
-+++ b/src/SWIG_files/wrapper/StdPrs.pyi
-@@ -156,10 +156,10 @@ class StdPrs_PoleCurve(Prs3d_Root):
- class StdPrs_ShadedShape(Prs3d_Root):
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @staticmethod
-     def AddWireframeForFacesWithoutTriangles(thePrs: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer) -> None: ...
-     @staticmethod
-diff --git a/src/SWIG_files/wrapper/StepToGeom.i b/src/SWIG_files/wrapper/StepToGeom.i
-index a91cc710..f4ab236f 100644
---- a/src/SWIG_files/wrapper/StepToGeom.i
-+++ b/src/SWIG_files/wrapper/StepToGeom.i
-@@ -808,22 +808,6 @@ opencascade::handle<Geom2d_VectorWithMagnitude>
- ") MakeVectorWithMagnitude2d;
- 		static opencascade::handle<Geom2d_VectorWithMagnitude> MakeVectorWithMagnitude2d(const opencascade::handle<StepGeom_Vector> & SV);
- 
--		/****************** MakeYprRotation ******************/
--		/**** md5 signature: de9dc847a92c9949d29654e63b9eb686 ****/
--		%feature("compactdefaultargs") MakeYprRotation;
--		%feature("autodoc", "No available documentation.
--
--Parameters
------------
--SR: StepKinematics_SpatialRotation
--theCntxt: StepRepr_GlobalUnitAssignedContext
--
--Returns
---------
--opencascade::handle<TColStd_HArray1OfReal>
--") MakeYprRotation;
--		static opencascade::handle<TColStd_HArray1OfReal> MakeYprRotation(const StepKinematics_SpatialRotation & SR, const opencascade::handle<StepRepr_GlobalUnitAssignedContext> & theCntxt);
--
- };
- 
- 
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.i b/src/SWIG_files/wrapper/XCAFDoc.i
-index 791919dd..e5c716a9 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.i
-+++ b/src/SWIG_files/wrapper/XCAFDoc.i
-@@ -2317,7 +2317,7 @@ TDF_Label
- 		TDF_Label FindColor(const Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: be86e43f2f2ac06163dce467a9739527 ****/
-+		/**** md5 signature: 7092ec33c89b067e1ceab0d67b5ed02d ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2330,10 +2330,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: a7a6506d3132240934c87e97ec6b28ed ****/
-+		/**** md5 signature: 7252a98dd463a84602d0b7516d6cfc04 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2346,7 +2346,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 869ec12dba73e125e4d66d2a85d2d496 ****/
-@@ -2366,7 +2366,7 @@ bool
- 		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, TDF_Label & colorL);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: 5801253cfaf9cc63278aa2d80d15b2c3 ****/
-+		/**** md5 signature: 9f42bc515522bf5857381b8ed56f5af6 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2380,10 +2380,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: f56e146c8c1c603ab9bcf2d6c801e3b4 ****/
-+		/**** md5 signature: 175af0eadf13dd6e8e7059280dcebe1e ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2397,7 +2397,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 6e439ce30113cabaadf18ee4ce1d0971 ****/
-@@ -2599,7 +2599,7 @@ bool
- 		Standard_Boolean IsSet(const TopoDS_Shape & S, const XCAFDoc_ColorType type);
- 
- 		/****************** IsVisible ******************/
--		/**** md5 signature: e84f73aaf1ac293dea741c71b9f10a4b ****/
-+		/**** md5 signature: bcc14ce19df050eb884b5911b48c4b59 ****/
- 		%feature("compactdefaultargs") IsVisible;
- 		%feature("autodoc", "Return true if object on this label is visible, false if invisible.
- 
-@@ -2611,7 +2611,7 @@ Returns
- -------
- bool
- ") IsVisible;
--		Standard_Boolean IsVisible(const TDF_Label & L);
-+		static Standard_Boolean IsVisible(const TDF_Label & L);
- 
- 		/****************** RemoveColor ******************/
- 		/**** md5 signature: 3e1749f5696dd21fe53c3eb3d8e77952 ****/
-@@ -3477,7 +3477,7 @@ None
- 		void GetDatumLabels(TDF_LabelSequence & Labels);
- 
- 		/****************** GetDatumOfTolerLabels ******************/
--		/**** md5 signature: ed65059da2973245ec5c0f5e0dfd7526 ****/
-+		/**** md5 signature: 581e63a0a9642866e1575d216f9b4d3d ****/
- 		%feature("compactdefaultargs") GetDatumOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels defined for thedimtoll label.
- 
-@@ -3490,10 +3490,10 @@ Returns
- -------
- bool
- ") GetDatumOfTolerLabels;
--		Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDatumWithObjectOfTolerLabels ******************/
--		/**** md5 signature: da94437dec84c797c8bab6e76d5e373f ****/
-+		/**** md5 signature: d5f3a53d01bb6038ce1c82b7e4989ce4 ****/
- 		%feature("compactdefaultargs") GetDatumWithObjectOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels with xcafdimtolobjects_datumobject defined for label thedimtoll.
- 
-@@ -3506,7 +3506,7 @@ Returns
- -------
- bool
- ") GetDatumWithObjectOfTolerLabels;
--		Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDimTol ******************/
- 		/**** md5 signature: 5f2928d077835acfc683c0b7e312ac72 ****/
-@@ -3646,7 +3646,7 @@ bool
- 		Standard_Boolean GetRefGeomToleranceLabels(const TDF_Label & theShapeL, TDF_LabelSequence & theDimTols);
- 
- 		/****************** GetRefShapeLabel ******************/
--		/**** md5 signature: e25d6989472f0a0e102c1daa5f739a29 ****/
-+		/**** md5 signature: b09dac51ded70edf3dd23cc545931b1a ****/
- 		%feature("compactdefaultargs") GetRefShapeLabel;
- 		%feature("autodoc", "Gets all shape labels referred by thel label of the gd&t table. returns false if there are no shape labels added to the sequences.
- 
-@@ -3660,7 +3660,7 @@ Returns
- -------
- bool
- ") GetRefShapeLabel;
--		Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
-+		static Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
- 
- 		/****************** GetTolerOfDatumLabels ******************/
- 		/**** md5 signature: b4d4047d58bcf3d1d31d5586d788da7e ****/
-@@ -5490,20 +5490,20 @@ opencascade::handle<TColStd_HSequenceOfExtendedString>
- 		opencascade::handle<TColStd_HSequenceOfExtendedString> GetLayers(const TopoDS_Shape & Sh);
- 
- 		/****************** GetShapesOfLayer ******************/
--		/**** md5 signature: 8b01d3b5f0a0832996031f609b876e7c ****/
-+		/**** md5 signature: 2bcd2de1711ebf8ae0d1ddf5d01dce52 ****/
- 		%feature("compactdefaultargs") GetShapesOfLayer;
- 		%feature("autodoc", "Return sequanese of shape labels that assigned with layers to <shlabels>.
- 
- Parameters
- ----------
--layerL: TDF_Label
--ShLabels: TDF_LabelSequence
-+theLayerL: TDF_Label
-+theShLabels: TDF_LabelSequence
- 
- Returns
- -------
- None
- ") GetShapesOfLayer;
--		void GetShapesOfLayer(const TDF_Label & layerL, TDF_LabelSequence & ShLabels);
-+		static void GetShapesOfLayer(const TDF_Label & theLayerL, TDF_LabelSequence & theShLabels);
- 
- 		/****************** ID ******************/
- 		/**** md5 signature: 4697ce8a095fa6dcef0217708d19718f ****/
-@@ -6456,7 +6456,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 806c54e68af730f31f3353b2ba682bd0 ****/
-+		/**** md5 signature: cf930e538eb371f96b92c4f439c49612 ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material assigned to <matl> returns false if no such material is assigned.
- 
-@@ -6472,7 +6472,7 @@ Returns
- -------
- aDensity: float
- ") GetMaterial;
--		Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> & aName, opencascade::handle<TCollection_HAsciiString> & aDescription, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> & aDensName, opencascade::handle<TCollection_HAsciiString> & aDensValType);
-+		static Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue);
- 
- 		/****************** GetMaterialLabels ******************/
- 		/**** md5 signature: cd3883adc849957e7e10d763ad936071 ****/
-@@ -8152,6 +8152,32 @@ opencascade::handle<TDataStd_NamedData>
- ") GetNamedProperties;
- 		opencascade::handle<TDataStd_NamedData> GetNamedProperties(const TopoDS_Shape & theShape, const Standard_Boolean theToCreate = Standard_False);
- 
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 3215690f7fd49b341401d78832c630e0 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of shape's labels @param[in] thelabels a sequence of labels to get shapes from returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Parameters
-+----------
-+theLabels: TDF_LabelSequence
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		static TopoDS_Shape GetOneShape(const TDF_LabelSequence & theLabels);
-+
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 5c1df85e1e2a72b0b93fde509f26a709 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of all top-level shapes which are free returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		TopoDS_Shape GetOneShape();
-+
- 		/****************** GetReferredShape ******************/
- 		/**** md5 signature: 63acc4d5460c835c166b1fc0b2913030 ****/
- 		%feature("compactdefaultargs") GetReferredShape;
-@@ -9844,7 +9870,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 83194336f7abcf51085de62960d38361 ****/
-+		/**** md5 signature: 694e93123423187642f68fe8d4e64f2a ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material defined by specified label, or null if the label is not in material table.
- 
-@@ -9856,7 +9882,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
- 
- 		/****************** GetMaterials ******************/
- 		/**** md5 signature: a96d68af36051bd063fefc1e10aabb79 ****/
-@@ -9890,7 +9916,7 @@ bool
- 		static Standard_Boolean GetShapeMaterial(const TDF_Label & theShapeLabel, TDF_Label & theMaterialLabel);
- 
- 		/****************** GetShapeMaterial ******************/
--		/**** md5 signature: 86335bfdea98c720bcf3af0fe4fb0fe0 ****/
-+		/**** md5 signature: 04847c1ad68cdd465933ffa2a713f244 ****/
- 		%feature("compactdefaultargs") GetShapeMaterial;
- 		%feature("autodoc", "Returns material assigned to the shape label.
- 
-@@ -9902,7 +9928,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetShapeMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
- 
- 		/****************** GetShapeMaterial ******************/
- 		/**** md5 signature: b4d2560c50c52f8b49c713aa67731929 ****/
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.pyi b/src/SWIG_files/wrapper/XCAFDoc.pyi
-index b3036a2f..9fed3910 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.pyi
-+++ b/src/SWIG_files/wrapper/XCAFDoc.pyi
-@@ -299,16 +299,20 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     @overload
-     def FindColor(self, col: Quantity_ColorRGBA) -> TDF_Label: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     @staticmethod
-     def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     def GetColor(self, S: TopoDS_Shape, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
-@@ -330,7 +334,8 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     def IsSet(self, L: TDF_Label, type: XCAFDoc_ColorType) -> bool: ...
-     @overload
-     def IsSet(self, S: TopoDS_Shape, type: XCAFDoc_ColorType) -> bool: ...
--    def IsVisible(self, L: TDF_Label) -> bool: ...
-+    @staticmethod
-+    def IsVisible(L: TDF_Label) -> bool: ...
-     def RemoveColor(self, lab: TDF_Label) -> None: ...
-     def ReverseChainsOfTreeNodes(self) -> bool: ...
-     @staticmethod
-@@ -418,9 +423,11 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def FindDimTol(self, theKind: int, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> TDF_Label: ...
-     def GetDatum(self, theDatumL: TDF_Label, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString, theIdentification: TCollection_HAsciiString) -> bool: ...
-     def GetDatumLabels(self, Labels: TDF_LabelSequence) -> None: ...
--    def GetDatumOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDatumWithObjectOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> Tuple[bool, int]: ...
-+    @staticmethod
-+    def GetDatumOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetDatumWithObjectOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal) -> Tuple[bool, int, str, str]: ...
-     def GetDimTolLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def GetDimensionLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-     def GetGeomToleranceLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-@@ -429,7 +436,8 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def GetRefDatumLabel(self, theShapeL: TDF_Label, theDatum: TDF_LabelSequence) -> bool: ...
-     def GetRefDimensionLabels(self, theShapeL: TDF_Label, theDimensions: TDF_LabelSequence) -> bool: ...
-     def GetRefGeomToleranceLabels(self, theShapeL: TDF_Label, theDimTols: TDF_LabelSequence) -> bool: ...
--    def GetRefShapeLabel(self, theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetRefShapeLabel(theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-     def GetTolerOfDatumLabels(self, theDatumL: TDF_Label, theTols: TDF_LabelSequence) -> bool: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsDatum(self, lab: TDF_Label) -> bool: ...
-@@ -629,7 +637,8 @@ class XCAFDoc_LayerTool(TDataStd_GenericEmpty):
-     def GetLayers(self, Sh: TopoDS_Shape, aLayerLS: TDF_LabelSequence) -> bool: ...
-     @overload
-     def GetLayers(self, Sh: TopoDS_Shape) -> TColStd_HSequenceOfExtendedString: ...
--    def GetShapesOfLayer(self, layerL: TDF_Label, ShLabels: TDF_LabelSequence) -> None: ...
-+    @staticmethod
-+    def GetShapesOfLayer(theLayerL: TDF_Label, theShLabels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsLayer(self, lab: TDF_Label) -> bool: ...
-     @overload
-@@ -731,7 +740,8 @@ class XCAFDoc_MaterialTool(TDataStd_GenericEmpty):
-     def GetDensityForShape(ShapeL: TDF_Label) -> float: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, MatL: TDF_Label, aName: TCollection_HAsciiString, aDescription: TCollection_HAsciiString, aDensName: TCollection_HAsciiString, aDensValType: TCollection_HAsciiString) -> Tuple[bool, float]: ...
-+    @staticmethod
-+    def GetMaterial(MatL: TDF_Label) -> Tuple[bool, str, str, float, str, str]: ...
-     def GetMaterialLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsMaterial(self, lab: TDF_Label) -> bool: ...
-@@ -899,6 +909,11 @@ class XCAFDoc_ShapeTool(TDataStd_GenericEmpty):
-     def GetNamedProperties(self, theLabel: TDF_Label, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-     @overload
-     def GetNamedProperties(self, theShape: TopoDS_Shape, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-+    @overload
-+    @staticmethod
-+    def GetOneShape(theLabels: TDF_LabelSequence) -> TopoDS_Shape: ...
-+    @overload
-+    def GetOneShape(self) -> TopoDS_Shape: ...
-     @staticmethod
-     def GetReferredShape(L: TDF_Label, Label: TDF_Label) -> bool: ...
-     @staticmethod
-@@ -1058,13 +1073,15 @@ class XCAFDoc_VisMaterialTool(TDF_Attribute):
-     def BaseLabel(self) -> TDF_Label: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetMaterial(theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     def GetMaterials(self, Labels: TDF_LabelSequence) -> None: ...
-     @overload
-     @staticmethod
-     def GetShapeMaterial(theShapeLabel: TDF_Label, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
--    def GetShapeMaterial(self, theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetShapeMaterial(theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     @overload
-     def GetShapeMaterial(self, theShape: TopoDS_Shape, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
-@@ -1209,7 +1226,12 @@ XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_ColorTool_AutoNaming = XCAFDoc_ColorTool.AutoNaming
- XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
- XCAFDoc_ColorTool_GetID = XCAFDoc_ColorTool.GetID
-+XCAFDoc_ColorTool_IsVisible = XCAFDoc_ColorTool.IsVisible
- XCAFDoc_ColorTool_Set = XCAFDoc_ColorTool.Set
- XCAFDoc_ColorTool_SetAutoNaming = XCAFDoc_ColorTool.SetAutoNaming
- XCAFDoc_Datum_GetID = XCAFDoc_Datum.GetID
-@@ -1217,7 +1239,10 @@ XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_DimTol_GetID = XCAFDoc_DimTol.GetID
- XCAFDoc_DimTol_Set = XCAFDoc_DimTol.Set
-+XCAFDoc_DimTolTool_GetDatumOfTolerLabels = XCAFDoc_DimTolTool.GetDatumOfTolerLabels
-+XCAFDoc_DimTolTool_GetDatumWithObjectOfTolerLabels = XCAFDoc_DimTolTool.GetDatumWithObjectOfTolerLabels
- XCAFDoc_DimTolTool_GetID = XCAFDoc_DimTolTool.GetID
-+XCAFDoc_DimTolTool_GetRefShapeLabel = XCAFDoc_DimTolTool.GetRefShapeLabel
- XCAFDoc_DimTolTool_Set = XCAFDoc_DimTolTool.Set
- XCAFDoc_Dimension_GetID = XCAFDoc_Dimension.GetID
- XCAFDoc_Dimension_Set = XCAFDoc_Dimension.Set
-@@ -1268,6 +1293,7 @@ XCAFDoc_GraphNode_GetDefaultGraphID = XCAFDoc_GraphNode.GetDefaultGraphID
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_LayerTool_GetID = XCAFDoc_LayerTool.GetID
-+XCAFDoc_LayerTool_GetShapesOfLayer = XCAFDoc_LayerTool.GetShapesOfLayer
- XCAFDoc_LayerTool_Set = XCAFDoc_LayerTool.Set
- XCAFDoc_LengthUnit_GetID = XCAFDoc_LengthUnit.GetID
- XCAFDoc_LengthUnit_Set = XCAFDoc_LengthUnit.Set
-@@ -1279,6 +1305,7 @@ XCAFDoc_Material_GetID = XCAFDoc_Material.GetID
- XCAFDoc_Material_Set = XCAFDoc_Material.Set
- XCAFDoc_MaterialTool_GetDensityForShape = XCAFDoc_MaterialTool.GetDensityForShape
- XCAFDoc_MaterialTool_GetID = XCAFDoc_MaterialTool.GetID
-+XCAFDoc_MaterialTool_GetMaterial = XCAFDoc_MaterialTool.GetMaterial
- XCAFDoc_MaterialTool_Set = XCAFDoc_MaterialTool.Set
- XCAFDoc_Note_Get = XCAFDoc_Note.Get
- XCAFDoc_Note_IsMine = XCAFDoc_Note.IsMine
-@@ -1294,6 +1321,7 @@ XCAFDoc_ShapeTool_GetComponents = XCAFDoc_ShapeTool.GetComponents
- XCAFDoc_ShapeTool_GetExternRefs = XCAFDoc_ShapeTool.GetExternRefs
- XCAFDoc_ShapeTool_GetID = XCAFDoc_ShapeTool.GetID
- XCAFDoc_ShapeTool_GetLocation = XCAFDoc_ShapeTool.GetLocation
-+XCAFDoc_ShapeTool_GetOneShape = XCAFDoc_ShapeTool.GetOneShape
- XCAFDoc_ShapeTool_GetReferredShape = XCAFDoc_ShapeTool.GetReferredShape
- XCAFDoc_ShapeTool_GetSHUO = XCAFDoc_ShapeTool.GetSHUO
- XCAFDoc_ShapeTool_GetSHUONextUsage = XCAFDoc_ShapeTool.GetSHUONextUsage
-@@ -1320,6 +1348,8 @@ XCAFDoc_ViewTool_GetID = XCAFDoc_ViewTool.GetID
- XCAFDoc_ViewTool_Set = XCAFDoc_ViewTool.Set
- XCAFDoc_VisMaterial_GetID = XCAFDoc_VisMaterial.GetID
- XCAFDoc_VisMaterialTool_GetID = XCAFDoc_VisMaterialTool.GetID
-+XCAFDoc_VisMaterialTool_GetMaterial = XCAFDoc_VisMaterialTool.GetMaterial
-+XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_Set = XCAFDoc_VisMaterialTool.Set
- XCAFDoc_Volume_Get = XCAFDoc_Volume.Get
-diff --git a/src/SWIG_files/wrapper/XCAFPrs.i b/src/SWIG_files/wrapper/XCAFPrs.i
-index 51f661e0..efa0d4b0 100644
---- a/src/SWIG_files/wrapper/XCAFPrs.i
-+++ b/src/SWIG_files/wrapper/XCAFPrs.i
-@@ -1019,7 +1019,7 @@ None
- class XCAFPrs_Texture : public Graphic3d_Texture2D {
- 	public:
- 		/****************** XCAFPrs_Texture ******************/
--		/**** md5 signature: f9dbe9d0fe880b67c047fad8716af896 ****/
-+		/**** md5 signature: 000bd876aad38ca74535015d5e9463d7 ****/
- 		%feature("compactdefaultargs") XCAFPrs_Texture;
- 		%feature("autodoc", "Constructor.
- 
-@@ -1032,7 +1032,7 @@ Returns
- -------
- None
- ") XCAFPrs_Texture;
--		 XCAFPrs_Texture(const Image_Texture & theImageSource, const Graphic3d_TextureUnit theUnit);
-+		 XCAFPrs_Texture(const opencascade::handle<Image_Texture> & theImageSource, const Graphic3d_TextureUnit theUnit);
- 
- 		/****************** GetCompressedImage ******************/
- 		/**** md5 signature: bad0c95151f5a884e9dbc72217977538 ****/
-@@ -1065,15 +1065,15 @@ opencascade::handle<Image_PixMap>
- 		virtual opencascade::handle<Image_PixMap> GetImage(const opencascade::handle<Image_SupportedFormats> & theSupported);
- 
- 		/****************** GetImageSource ******************/
--		/**** md5 signature: 1fa59174d8d0d408df072137f5b3fe0e ****/
-+		/**** md5 signature: c24f99a1f3e5bf7521b240aa232d6d28 ****/
- 		%feature("compactdefaultargs") GetImageSource;
- 		%feature("autodoc", "Return image source.
- 
- Returns
- -------
--Image_Texture
-+opencascade::handle<Image_Texture>
- ") GetImageSource;
--		const Image_Texture & GetImageSource();
-+		const opencascade::handle<Image_Texture> & GetImageSource();
- 
- };
- 
-
-From 44af64d633d315e52e3f18247ff8e26d0619effb Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Tue, 4 Apr 2023 03:57:57 +0200
-Subject: [PATCH 2/4] bump occt version to 7.7.1
-
----
- CMakeLists.txt          | 6 +++---
- ci/conda/meta.yaml      | 6 +++---
- src/PkgBase/__init__.py | 2 +-
- 3 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 14a60d09..8cef86b0 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -21,8 +21,8 @@ project(PYTHONOCC)
- 
- # set pythonOCC version
- set(PYTHONOCC_VERSION_MAJOR 7)
--set(PYTHONOCC_VERSION_MINOR 6)
--set(PYTHONOCC_VERSION_PATCH 3)
-+set(PYTHONOCC_VERSION_MINOR 7)
-+set(PYTHONOCC_VERSION_PATCH 1)
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- set(PYTHONOCC_VERSION_DEVEL )
-@@ -147,7 +147,7 @@ if(DEFINED OCE_INCLUDE_PATH)
- # if OCE_INCLUDE_PATH is not passed at command line,
- # find OCE automatically
- else(OCE_INCLUDE_PATH)
--  find_package(OpenCASCADE 7.7.0 REQUIRED)
-+  find_package(OpenCASCADE 7.7.1 REQUIRED)
-   if(OpenCASCADE_FOUND)
-     message(STATUS "OpenCASCADE version found: " ${OpenCASCADE_MAJOR_VERSION} "." ${OpenCASCADE_MINOR_VERSION} "." ${OpenCASCADE_MAINTENANCE_VERSION})
-     message(STATUS "OpenCASCADE include directory: " ${OpenCASCADE_INCLUDE_DIR})
-diff --git a/ci/conda/meta.yaml b/ci/conda/meta.yaml
-index 33d91edc..8ca381de 100644
---- a/ci/conda/meta.yaml
-+++ b/ci/conda/meta.yaml
-@@ -1,4 +1,4 @@
--{% set version = "7.7.0" %}
-+{% set version = "7.7.1" %}
- 
- package:
-   name: pythonocc-core
-@@ -26,11 +26,11 @@ requirements:
- 
-   host:
-     - python {{ python }}
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - numpy >=1.17
- 
-   run:
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - six
-     - numpy >=1.17
- 
-diff --git a/src/PkgBase/__init__.py b/src/PkgBase/__init__.py
-index 898fb48e..e90690b0 100644
---- a/src/PkgBase/__init__.py
-+++ b/src/PkgBase/__init__.py
-@@ -1,6 +1,6 @@
- PYTHONOCC_VERSION_MAJOR = 7
- PYTHONOCC_VERSION_MINOR = 7
--PYTHONOCC_VERSION_PATCH = 0
-+PYTHONOCC_VERSION_PATCH = 1
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- PYTHONOCC_VERSION_DEVEL = ''
-
-From 6ec7cc9095631de070573fc26164578f2e2c87bf Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 16:40:05 +0200
-Subject: [PATCH 3/4] remove xvfb tests from conda build
-
----
- ci/conda/run_test.sh | 7 -------
- 1 file changed, 7 deletions(-)
-
-diff --git a/ci/conda/run_test.sh b/ci/conda/run_test.sh
-index 8d0acf0a..6610b84e 100644
---- a/ci/conda/run_test.sh
-+++ b/ci/conda/run_test.sh
-@@ -2,10 +2,3 @@
- cd ../work/test
- python run_tests.py
- mypy test_mypy_classic_occ_bottle.py
--
--if [ $(uname) == Linux ]; then
--    # start xvfb
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyqt5_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyside2_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_wx_unittest.py
--fi
-
-From bcd7a2c2e0b12801416db9c0d73f2c01992e8ab5 Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 17:08:51 +0200
-Subject: [PATCH 4/4] Fix DataEchange load colrs
-
----
- src/Extend/DataExchange.py | 15 ++++++++-------
- 1 file changed, 8 insertions(+), 7 deletions(-)
-
-diff --git a/src/Extend/DataExchange.py b/src/Extend/DataExchange.py
-index 20f0c9b8..6545d83a 100644
---- a/src/Extend/DataExchange.py
-+++ b/src/Extend/DataExchange.py
-@@ -41,6 +41,7 @@ from OCC.Core.TDocStd import TDocStd_Document
- from OCC.Core.XCAFDoc import (
-     XCAFDoc_DocumentTool_ShapeTool,
-     XCAFDoc_DocumentTool_ColorTool,
-+    XCAFDoc_ColorTool,
- )
- from OCC.Core.STEPCAFControl import STEPCAFControl_Reader
- from OCC.Core.TDF import TDF_LabelSequence, TDF_Label
-@@ -62,6 +63,7 @@ try:
- except ImportError:
-     HAVE_SVGWRITE = False
- 
-+
- ##########################
- # Step import and export #
- ##########################
-@@ -280,11 +282,10 @@ def read_step_file_with_names_colors(filename):
- 
-             if not color_set:
-                 if (
--                    color_tool.GetColor(lab, 0, c)
--                    or color_tool.GetColor(lab, 1, c)
--                    or color_tool.GetColor(lab, 2, c)
-+                    XCAFDoc_ColorTool.GetColor(lab, 0, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 1, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 2, c)
-                 ):
--
-                     color_tool.SetInstanceColor(shape, 0, c)
-                     color_tool.SetInstanceColor(shape, 1, c)
-                     color_tool.SetInstanceColor(shape, 2, c)
-@@ -330,9 +331,9 @@ def read_step_file_with_names_colors(filename):
- 
-                 if not color_set:
-                     if (
--                        color_tool.GetColor(lab_subs, 0, c)
--                        or color_tool.GetColor(lab_subs, 1, c)
--                        or color_tool.GetColor(lab_subs, 2, c)
-+                        XCAFDoc_ColorTool.GetColor(lab_subs, 0, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 1, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 2, c)
-                     ):
-                         color_tool.SetInstanceColor(shape, 0, c)
-                         color_tool.SetInstanceColor(shape, 1, c)
diff --git a/srcpkgs/python3-occ/template b/srcpkgs/python3-occ/template
index 1d02354f2c41c2..d3385fc241c995 100644
--- a/srcpkgs/python3-occ/template
+++ b/srcpkgs/python3-occ/template
@@ -1,16 +1,16 @@
 # Template file for 'python3-occ'
 pkgname=python3-occ
-version=7.7.0
-revision=3
+version=7.9.0
+revision=1
 archs="i686* x86_64* armv7l* aarch64* ppc*"
 build_style=cmake
-configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None"
+configure_args="-DCMAKE_BUILD_TYPE=None -DPYTHONOCC_MESHDS_NUMPY=ON"
 hostmakedepends="python3 python3-setuptools swig"
-makedepends="python3-devel occt-devel freetype-devel swig rapidjson"
+makedepends="python3-devel python3-numpy occt-devel freetype-devel swig rapidjson"
 depends="python3 occt freetype"
 short_desc="Industrial strength 3D CAD Python3 package"
 maintainer="Karl Nilsson <karl.robert.nilsson@gmail.com>"
 license="LGPL-3.0-or-later"
-homepage="http://pythonocc.org"
+homepage="https://github.com/tpaviot/pythonocc-core"
 distfiles="https://github.com/tpaviot/pythonocc-core/archive/${version}.tar.gz"
-checksum=9b27003b87799badfae04f8cacd03b8faa1309600c9de8021434d7511e718f82
+checksum=98e53657f54e8a9c3477a81c0b4a11bc6659d5f60123e263419521b42a8e111f

From 0e3831d02fb3e9e8e1b635ba129ae657d8e8459d Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 4/8] freecad: rebuild for occt-7.9.0.

---
 srcpkgs/freecad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/freecad/template b/srcpkgs/freecad/template
index 06d5f0fa09ad45..8b9e44300ce144 100644
--- a/srcpkgs/freecad/template
+++ b/srcpkgs/freecad/template
@@ -1,7 +1,7 @@
 # Template file for 'freecad'
 pkgname=freecad
 version=1.0.0
-revision=2
+revision=3
 _pycxx_ver=7.1.8
 _ondsel_ver=91f70382beeb58b32432b5a82da3802e4c19199c
 build_style=cmake

From f49112759b85864d01341010f098ff340a9a07b6 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 5/8] gmsh: rebuild for occt-7.9.0.

---
 srcpkgs/gmsh/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gmsh/template b/srcpkgs/gmsh/template
index c3727d90e4c93b..371b2f5cfc9c31 100644
--- a/srcpkgs/gmsh/template
+++ b/srcpkgs/gmsh/template
@@ -1,7 +1,7 @@
 # Template file for 'gmsh'
 pkgname=gmsh
 version=4.8.4
-revision=2
+revision=3
 build_style=cmake
 configure_args="-DENABLE_SYSTEM_CONTRIB=ON
  -DENABLE_HXT=$(vopt_if hxt ON OFF)

From 671c61f402e13fc25b644cdde86e180c0e59b382 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 6/8] horizon: rebuild for occt-7.9.0.

---
 srcpkgs/horizon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/horizon/template b/srcpkgs/horizon/template
index 16bbf70822d672..160df13f96fae3 100644
--- a/srcpkgs/horizon/template
+++ b/srcpkgs/horizon/template
@@ -1,7 +1,7 @@
 # Template file for 'horizon'
 pkgname=horizon
 version=2.5.0
-revision=3
+revision=4
 build_style=gnu-makefile
 make_build_args="GOLD="
 make_install_target="install install-man"

From cedb5f72d7b97b19e4c6fd1509be0912609cd6ee Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 7/8] kicad: rebuild for occt-7.9.0.

---
 srcpkgs/kicad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/kicad/template b/srcpkgs/kicad/template
index 34df918edabea4..6cb7e771efb8b6 100644
--- a/srcpkgs/kicad/template
+++ b/srcpkgs/kicad/template
@@ -2,7 +2,7 @@
 # XXX: keep in sync with kicad-doc
 pkgname=kicad
 version=9.0.1
-revision=1
+revision=2
 build_style=cmake
 build_helper="cmake-wxWidgets-gtk3"
 configure_args="-DKICAD_SCRIPTING_WXPYTHON=ON -DKICAD_USE_EGL=ON -DKICAD_BUILD_QA_TESTS=OFF

From 6b10c2ec81a7ce151e1f1e648a8dfe20746d9b61 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 8/8] librepcb: rebuild for occt-7.9.0.

---
 srcpkgs/librepcb/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/librepcb/template b/srcpkgs/librepcb/template
index eb46149e284e57..aa32d7f1ad2237 100644
--- a/srcpkgs/librepcb/template
+++ b/srcpkgs/librepcb/template
@@ -1,7 +1,7 @@
 # Template file for 'librepcb'
 pkgname=librepcb
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_QTQUICK_TEST=OFF"
 hostmakedepends="unzip qt5-qmake qt5-host-tools"

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PR PATCH] [Updated] occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (9 preceding siblings ...)
  2025-04-17  9:02 ` ii8
@ 2025-04-17 13:37 ` ii8
  2025-04-18 11:45 ` ii8
  2025-04-18 22:06 ` [PR PATCH] [Closed]: " ii8
  12 siblings, 0 replies; 14+ messages in thread
From: ii8 @ 2025-04-17 13:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 525 bytes --]

There is an updated pull request by ii8 against master on the void-packages repository

https://github.com/ii8/void-packages occt
https://github.com/void-linux/void-packages/pull/54462

occt: update to 7.9.0.
#### Testing the changes
- I tested the changes in this PR: **YES**

#### Local build testing
- I built this PR locally for my native architecture, x86_64-musl

This version fixes myriad segmentation faults in FreeCAD.

A patch file from https://github.com/void-linux/void-packages/pull/54462.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-occt-54462.patch --]
[-- Type: text/x-diff, Size: 143248 bytes --]

From fc3ff5da780176fd02cddcc860659b61e1bb60ce Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 17:44:19 +0000
Subject: [PATCH 1/8] occt: update to 7.9.0.

---
 common/shlibs                              | 128 +++++++++++----------
 srcpkgs/occt/patches/fix-cmake-regex.patch |   2 +-
 srcpkgs/occt/patches/fix-install-dir.patch |   2 +-
 srcpkgs/occt/patches/fix-osd-host.patch    |  14 +--
 srcpkgs/occt/patches/musl-fenv.patch       |  38 +++---
 srcpkgs/occt/patches/musl-mallinfo.patch   |  45 +++++---
 srcpkgs/occt/template                      |  13 +--
 7 files changed, 129 insertions(+), 113 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index bec2f470613330..cb1795e57cc8d5 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3453,67 +3453,73 @@ libvtkkissfft-9.3.so.1 vtk-9.3.0_1
 libvolume_key.so.1 volume_key-0.3.9_1
 libxxhash.so.0 libxxHash-0.6.5_2
 libcapnp_c.so.0 c-capnproto-0.3_1
-libTKernel.so.7.7 occt-7.7.1_1
-libTKXmlXCAF.so.7.7 occt-7.7.1_1
-libTKXmlTObj.so.7.7 occt-7.7.1_1
-libTKXmlL.so.7.7 occt-7.7.1_1
-libTKXml.so.7.7 occt-7.7.1_1
-libTKXSDRAW.so.7.7 occt-7.7.1_1
-libTKXSBase.so.7.7 occt-7.7.1_1
-libTKXMesh.so.7.7 occt-7.7.1_1
-libTKXDESTEP.so.7.7 occt-7.7.1_1
-libTKXDEIGES.so.7.7 occt-7.7.1_1
-libTKXDEDRAW.so.7.7 occt-7.7.1_1
-libTKXDECascade.so.7.7 occt-7.7.1_1
-libTKXDE.so.7.7 occt-7.7.1_1
-libTKXCAF.so.7.7 occt-7.7.1_1
-libTKViewerTest.so.7.7 occt-7.7.1_1
-libTKVRML.so.7.7 occt-7.7.1_1
-libTKVCAF.so.7.7 occt-7.7.1_1
-libTKV3d.so.7.7 occt-7.7.1_1
-libTKTopTest.so.7.7 occt-7.7.1_1
-libTKTopAlgo.so.7.7 occt-7.7.1_1
-libTKTObjDRAW.so.7.7 occt-7.7.1_1
-libTKTObj.so.7.7 occt-7.7.1_1
-libTKStdL.so.7.7 occt-7.7.1_1
-libTKStd.so.7.7 occt-7.7.1_1
-libTKShHealing.so.7.7 occt-7.7.1_1
-libTKService.so.7.7 occt-7.7.1_1
-libTKSTL.so.7.7 occt-7.7.1_1
-libTKSTEPBase.so.7.7 occt-7.7.1_1
-libTKSTEPAttr.so.7.7 occt-7.7.1_1
-libTKSTEP209.so.7.7 occt-7.7.1_1
-libTKSTEP.so.7.7 occt-7.7.1_1
-libTKRWMesh.so.7.7 occt-7.7.1_1
-libTKQADraw.so.7.7 occt-7.7.1_1
-libTKPrim.so.7.7 occt-7.7.1_1
-libTKOpenGlTest.so.7.7 occt-7.7.1_1
-libTKOpenGl.so.7.7 occt-7.7.1_1
-libTKOffset.so.7.7 occt-7.7.1_1
-libTKMeshVS.so.7.7 occt-7.7.1_1
-libTKMesh.so.7.7 occt-7.7.1_1
-libTKMath.so.7.7 occt-7.7.1_1
-libTKLCAF.so.7.7 occt-7.7.1_1
-libTKIGES.so.7.7 occt-7.7.1_1
-libTKHLR.so.7.7 occt-7.7.1_1
-libTKGeomBase.so.7.7 occt-7.7.1_1
-libTKGeomAlgo.so.7.7 occt-7.7.1_1
-libTKG3d.so.7.7 occt-7.7.1_1
-libTKG2d.so.7.7 occt-7.7.1_1
-libTKFillet.so.7.7 occt-7.7.1_1
-libTKFeat.so.7.7 occt-7.7.1_1
-libTKExpress.so.7.7 occt-7.7.1_1
-libTKDraw.so.7.7 occt-7.7.1_1
-libTKDCAF.so.7.7 occt-7.7.1_1
-libTKCDF.so.7.7 occt-7.7.1_1
-libTKCAF.so.7.7 occt-7.7.1_1
-libTKBool.so.7.7 occt-7.7.1_1
-libTKBinXCAF.so.7.7 occt-7.7.1_1
-libTKBinTObj.so.7.7 occt-7.7.1_1
-libTKBinL.so.7.7 occt-7.7.1_1
-libTKBin.so.7.7 occt-7.7.1_1
-libTKBRep.so.7.7 occt-7.7.1_1
-libTKBO.so.7.7 occt-7.7.1_1
+libTKDEPLY.so.7.9 occt-7.9.0_1
+libTKBRep.so.7.9 occt-7.9.0_1
+libTKDEOBJ.so.7.9 occt-7.9.0_1
+libTKExpress.so.7.9 occt-7.9.0_1
+libTKXSDRAWGLTF.so.7.9 occt-7.9.0_1
+libTKXSDRAWOBJ.so.7.9 occt-7.9.0_1
+libTKXSDRAWSTL.so.7.9 occt-7.9.0_1
+libTKDESTEP.so.7.9 occt-7.9.0_1
+libTKTopTest.so.7.9 occt-7.9.0_1
+libTKRWMesh.so.7.9 occt-7.9.0_1
+libTKQADraw.so.7.9 occt-7.9.0_1
+libTKernel.so.7.9 occt-7.9.0_1
+libTKMeshVS.so.7.9 occt-7.9.0_1
+libTKTObj.so.7.9 occt-7.9.0_1
+libTKBool.so.7.9 occt-7.9.0_1
+libTKFeat.so.7.9 occt-7.9.0_1
+libTKXmlXCAF.so.7.9 occt-7.9.0_1
+libTKDEIGES.so.7.9 occt-7.9.0_1
+libTKHLR.so.7.9 occt-7.9.0_1
+libTKBinL.so.7.9 occt-7.9.0_1
+libTKBinXCAF.so.7.9 occt-7.9.0_1
+libTKViewerTest.so.7.9 occt-7.9.0_1
+libTKCDF.so.7.9 occt-7.9.0_1
+libTKXSDRAWPLY.so.7.9 occt-7.9.0_1
+libTKService.so.7.9 occt-7.9.0_1
+libTKDEGLTF.so.7.9 occt-7.9.0_1
+libTKGeomBase.so.7.9 occt-7.9.0_1
+libTKCAF.so.7.9 occt-7.9.0_1
+libTKXDEDRAW.so.7.9 occt-7.9.0_1
+libTKMesh.so.7.9 occt-7.9.0_1
+libTKDraw.so.7.9 occt-7.9.0_1
+libTKTopAlgo.so.7.9 occt-7.9.0_1
+libTKTObjDRAW.so.7.9 occt-7.9.0_1
+libTKXSDRAW.so.7.9 occt-7.9.0_1
+libTKDCAF.so.7.9 occt-7.9.0_1
+libTKStd.so.7.9 occt-7.9.0_1
+libTKDE.so.7.9 occt-7.9.0_1
+libTKXml.so.7.9 occt-7.9.0_1
+libTKShHealing.so.7.9 occt-7.9.0_1
+libTKDECascade.so.7.9 occt-7.9.0_1
+libTKStdL.so.7.9 occt-7.9.0_1
+libTKBin.so.7.9 occt-7.9.0_1
+libTKXSDRAWDE.so.7.9 occt-7.9.0_1
+libTKOffset.so.7.9 occt-7.9.0_1
+libTKPrim.so.7.9 occt-7.9.0_1
+libTKXSBase.so.7.9 occt-7.9.0_1
+libTKXmlL.so.7.9 occt-7.9.0_1
+libTKBinTObj.so.7.9 occt-7.9.0_1
+libTKMath.so.7.9 occt-7.9.0_1
+libTKBO.so.7.9 occt-7.9.0_1
+libTKVCAF.so.7.9 occt-7.9.0_1
+libTKLCAF.so.7.9 occt-7.9.0_1
+libTKV3d.so.7.9 occt-7.9.0_1
+libTKDESTL.so.7.9 occt-7.9.0_1
+libTKXmlTObj.so.7.9 occt-7.9.0_1
+libTKOpenGl.so.7.9 occt-7.9.0_1
+libTKGeomAlgo.so.7.9 occt-7.9.0_1
+libTKXSDRAWIGES.so.7.9 occt-7.9.0_1
+libTKFillet.so.7.9 occt-7.9.0_1
+libTKG2d.so.7.9 occt-7.9.0_1
+libTKOpenGlTest.so.7.9 occt-7.9.0_1
+libTKXCAF.so.7.9 occt-7.9.0_1
+libTKDEVRML.so.7.9 occt-7.9.0_1
+libTKXMesh.so.7.9 occt-7.9.0_1
+libTKXSDRAWSTEP.so.7.9 occt-7.9.0_1
+libTKXSDRAWVRML.so.7.9 occt-7.9.0_1
+libTKG3d.so.7.9 occt-7.9.0_1
 libargon2.so.1 libargon2-20171227_1
 libdazzle-1.0.so.0 libdazzle-3.28.0_1
 libjsonrpc-glib-1.0.so.1 jsonrpc-glib-3.28.0_1
diff --git a/srcpkgs/occt/patches/fix-cmake-regex.patch b/srcpkgs/occt/patches/fix-cmake-regex.patch
index f38e0108ac7089..6cc5918bd28960 100644
--- a/srcpkgs/occt/patches/fix-cmake-regex.patch
+++ b/srcpkgs/occt/patches/fix-cmake-regex.patch
@@ -3,7 +3,7 @@
 
 --- a/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 00:18:42.763819658 -0500
 +++ b/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 23:40:32.872489521 -0500
-@@ -26,7 +26,7 @@
+@@ -27,7 +27,7 @@
  if (OpenCASCADE_INSTALL_PREFIX MATCHES "/cmake$")
    get_filename_component (OpenCASCADE_INSTALL_PREFIX "${OpenCASCADE_INSTALL_PREFIX}" PATH)
  endif()
diff --git a/srcpkgs/occt/patches/fix-install-dir.patch b/srcpkgs/occt/patches/fix-install-dir.patch
index 931587bef99048..0dc6660f0a10f2 100644
--- a/srcpkgs/occt/patches/fix-install-dir.patch
+++ b/srcpkgs/occt/patches/fix-install-dir.patch
@@ -1,7 +1,7 @@
 diff --color -upr occt-7.7.1.orig/adm/cmake/occt_macros.cmake occt-7.7.1/adm/cmake/occt_macros.cmake
 --- occt-7.7.1.orig/adm/cmake/occt_macros.cmake	2023-05-31 20:05:47.619869450 +0200
 +++ occt-7.7.1/adm/cmake/occt_macros.cmake	2023-05-31 20:07:25.611036417 +0200
-@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
+@@ -762,7 +762,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
  
    install (CODE
    "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
diff --git a/srcpkgs/occt/patches/fix-osd-host.patch b/srcpkgs/occt/patches/fix-osd-host.patch
index ef705c7291381d..922f61072619db 100644
--- a/srcpkgs/occt/patches/fix-osd-host.patch
+++ b/srcpkgs/occt/patches/fix-osd-host.patch
@@ -2,12 +2,12 @@
 
 --- a/src/OSD/OSD_Host.cxx
 +++ b/src/OSD/OSD_Host.cxx
-@@ -124,7 +124,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+@@ -140,7 +140,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+   TCollection_AsciiString result, host;
  
-  host = HostName();
-  memcpy(&internet_address,
--        gethostbyname(host.ToCString()),
-+        gethostbyname("localhost"),
-         sizeof(struct hostent));
+   host = HostName();
+-  memcpy(&internet_address, gethostbyname(host.ToCString()), sizeof(struct hostent));
++  memcpy(&internet_address, gethostbyname("localhost"), sizeof(struct hostent));
  
-  // Gets each bytes into integers
+   // Gets each bytes into integers
+   a = (unsigned char)internet_address.h_addr_list[0][0];
diff --git a/srcpkgs/occt/patches/musl-fenv.patch b/srcpkgs/occt/patches/musl-fenv.patch
index a8a776ce29a9d0..9756cca207bbac 100644
--- a/srcpkgs/occt/patches/musl-fenv.patch
+++ b/srcpkgs/occt/patches/musl-fenv.patch
@@ -5,32 +5,32 @@ is probably wrong, but I don't have a replacement for the
 non-posix functions fegetexcept(3) and feenableexcept(3).
 """
 
---- a/src/OSD/OSD_signal.cxx.orig	2022-07-22 10:53:38.000000000 +0200
-+++ b/src/OSD/OSD_signal.cxx	2022-10-06 09:19:02.286414340 +0200
-@@ -761,7 +761,7 @@ typedef void (* SIG_PFV) (int);
+--- a/src/OSD/OSD_signal.cxx
++++ b/src/OSD/OSD_signal.cxx
+@@ -769,7 +769,7 @@ typedef void (*SIG_PFV)(int);
  
- #include <signal.h>
+   #include <signal.h>
  
--#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
-+#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) &&  defined(__GLIBC__)
-   #include <sys/signal.h>
- #endif
+-  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
++  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) && defined(__GLIBC__)
+     #include <sys/signal.h>
+   #endif
  
-@@ -977,7 +977,7 @@ static void SegvHandler(const int theSig
- //=======================================================================
- void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
+@@ -994,7 +994,7 @@ static void SegvHandler(const int              theSignal,
+ 
+ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
-   feclearexcept (FE_ALL_EXCEPT);
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
+   feclearexcept(FE_ALL_EXCEPT);
    if (theFloatingSignal)
    {
-@@ -1010,7 +1010,7 @@ void OSD::SetFloatingSignal (Standard_Bo
- //=======================================================================
+@@ -1025,7 +1025,7 @@ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
+ 
  Standard_Boolean OSD::ToCatchFloatingSignals()
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
    return (fegetexcept() & _OSD_FPX) != 0;
- #else
+   #else
    return Standard_False;
diff --git a/srcpkgs/occt/patches/musl-mallinfo.patch b/srcpkgs/occt/patches/musl-mallinfo.patch
index 1ce5b16b793f95..158d954fe9c52f 100644
--- a/srcpkgs/occt/patches/musl-mallinfo.patch
+++ b/srcpkgs/occt/patches/musl-mallinfo.patch
@@ -1,21 +1,32 @@
-In musl libc there is no struct mallinfo and no function mallinf()
-
---- a/src/OSD/OSD_MemInfo.cxx.orig	2022-10-06 09:21:55.466236104 +0200
-+++ b/src/OSD/OSD_MemInfo.cxx	2022-10-06 09:25:34.105323581 +0200
-@@ -188,12 +188,16 @@ void OSD_MemInfo::Update()
+--- a/src/OSD/OSD_MemInfo.cxx
++++ b/src/OSD/OSD_MemInfo.cxx
+@@ -165,18 +165,23 @@ void OSD_MemInfo::Update()
+   #elif (defined(__linux__) || defined(__linux))
+   if (IsActive(MemHeapUsage))
+   {
+-    #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+-      #if __GLIBC_PREREQ(2, 33)
++    #if defined(__GLIBC__)
++      #define HAS_MALLINFO
++      #if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 33)
+         #define HAS_MALLINFO2
+       #endif
      #endif
-   #endif
  
-+  #if defined(__GLIBC__)
-   #ifdef HAS_MALLINFO2
-     const struct mallinfo2 aMI = mallinfo2();
-   #else
-     const struct mallinfo aMI = mallinfo();
-   #endif
-     myCounters[MemHeapUsage] = aMI.uordblks;
-+  #else
-+    myCounters[MemHeapUsage] = 0;
-+  #endif
+-    #ifdef HAS_MALLINFO2
+-    const struct mallinfo2 aMI = mallinfo2();
++    #ifdef HAS_MALLINFO
++      #ifdef HAS_MALLINFO2
++      const struct mallinfo2 aMI = mallinfo2();
++      #else
++      const struct mallinfo aMI = mallinfo();
++      #endif
++      myCounters[MemHeapUsage] = aMI.uordblks;
+     #else
+-    const struct mallinfo aMI = mallinfo();
++      myCounters[MemHeapUsage] = 0;
+     #endif
+-    myCounters[MemHeapUsage] = aMI.uordblks;
    }
  
-   if (!IsActive (MemVirtual)
+   if (!IsActive(MemVirtual) && !IsActive(MemWorkingSet) && !IsActive(MemWorkingSetPeak)
diff --git a/srcpkgs/occt/template b/srcpkgs/occt/template
index 296a52de5a1b5a..acef04045566bc 100644
--- a/srcpkgs/occt/template
+++ b/srcpkgs/occt/template
@@ -1,14 +1,13 @@
 # Template file for 'occt'
 pkgname=occt
-version=7.7.1
+version=7.9.0
 revision=1
 _gittag="V${version//./_}"
 build_style=cmake
-# XXX: re-enable -DUSE_TBB=ON if possible when updating
-configure_args="-DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
- -DINSTALL_SAMPLES=ON"
-makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tcl-devel
- tk-devel"
+configure_args="-DUSE_TBB=ON -DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
+ -DUSE_XLIB=ON -DINSTALL_SAMPLES=ON"
+makedepends="tbb-devel freetype-devel glu-devel freeimage-devel gl2ps-devel
+ tcl-devel tk-devel"
 short_desc="OpenCASCADE Technology - library for CAD/CAM/CAE applications"
 maintainer="Piraty <mail@piraty.dev>"
 license="custom:LGPL-2.1-only-with-exceptions"
@@ -16,7 +15,7 @@ homepage="https://www.opencascade.com"
 # distfile: use git instead of official tarball, which requires registration
 # see https://www.opencascade.com/content/packaging-again-debian
 distfiles="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/${_gittag};sf=tgz>occt-${_gittag}.tar.gz"
-checksum=f413d30a8a06d6164e94860a652cbc96ea58fe262df36ce4eaa92a9e3561fd12
+checksum=ff118a524ec451867e8f0ac3b631522c98f2b4353c7dbf2786bf239589909ec6
 conflicts="oce>=0"
 if [ "$XBPS_TARGET_LIBC" = musl ]; then
 	makedepends+=" libexecinfo-devel"

From fb7de0968f31109020a610a882e41887a3f4f6aa Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Wed, 16 Apr 2025 21:12:22 +0100
Subject: [PATCH 2/8] swig: update to 4.3.0.

---
 srcpkgs/swig/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/swig/template b/srcpkgs/swig/template
index bffc4e91ffb355..f9d4c65f1f2fd4 100644
--- a/srcpkgs/swig/template
+++ b/srcpkgs/swig/template
@@ -1,14 +1,14 @@
 # Template file for 'swig'
 pkgname=swig
-version=4.1.1
+version=4.3.0
 revision=1
 build_style=gnu-configure
 configure_args="--with-pcre2-prefix=${XBPS_CROSS_BASE}/usr"
 hostmakedepends="bison"
-makedepends="zlib-devel pcre2-devel"
+makedepends="zlib-devel pcre2-devel boost-devel"
 short_desc="Simplified Wrapper and Interface Generator"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="http://www.swig.org"
 distfiles="${SOURCEFORGE_SITE}/swig/swig-${version}.tar.gz"
-checksum=2af08aced8fcd65cdb5cc62426768914bedc735b1c250325203716f78e39ac9b
+checksum=f7203ef796f61af986c70c05816236cbd0d31b7aa9631e5ab53020ab7804aa9e

From 50fa55d4ec9417cd3f74c1b6056cf0da4cb370a7 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:34 +0000
Subject: [PATCH 3/8] python3-occ: update to 7.9.0.

---
 srcpkgs/python3-occ/patches/occt-7.7.1.patch | 2561 ------------------
 srcpkgs/python3-occ/template                 |   13 +-
 2 files changed, 7 insertions(+), 2567 deletions(-)
 delete mode 100644 srcpkgs/python3-occ/patches/occt-7.7.1.patch

diff --git a/srcpkgs/python3-occ/patches/occt-7.7.1.patch b/srcpkgs/python3-occ/patches/occt-7.7.1.patch
deleted file mode 100644
index 70861a77853b69..00000000000000
--- a/srcpkgs/python3-occ/patches/occt-7.7.1.patch
+++ /dev/null
@@ -1,2561 +0,0 @@
-From 6ba4509edb333494d35a40c01192ab5e236acdda Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Mon, 3 Apr 2023 14:01:20 +0200
-Subject: [PATCH 1/4] update swig files to occt-771
-
----
- src/SWIG_files/common/EnumTemplates.i      |   1 -
- src/SWIG_files/headers/AIS_module.hxx      |   2 +
- src/SWIG_files/headers/BRepFill_module.hxx |   1 +
- src/SWIG_files/wrapper/AIS.i               | 127 ++++++++----
- src/SWIG_files/wrapper/AIS.pyi             |  12 +-
- src/SWIG_files/wrapper/BRepAlgo.i          |  26 +++
- src/SWIG_files/wrapper/BRepAlgo.pyi        |   2 +
- src/SWIG_files/wrapper/BRepBlend.i         |  44 +++--
- src/SWIG_files/wrapper/BRepBlend.pyi       |  14 +-
- src/SWIG_files/wrapper/BRepExtrema.i       | 218 +++++----------------
- src/SWIG_files/wrapper/BRepExtrema.pyi     |  23 +--
- src/SWIG_files/wrapper/BRepFill.i          |  48 +++++
- src/SWIG_files/wrapper/BRepFill.pyi        |  19 ++
- src/SWIG_files/wrapper/BRepOffset.i        |   3 +
- src/SWIG_files/wrapper/BRepOffset.pyi      |   2 +
- src/SWIG_files/wrapper/BRepOffsetAPI.i     |  11 ++
- src/SWIG_files/wrapper/BRepOffsetAPI.pyi   |   1 +
- src/SWIG_files/wrapper/BSplCLib.i          |  23 +++
- src/SWIG_files/wrapper/BSplCLib.pyi        |   3 +
- src/SWIG_files/wrapper/ChFiDS.i            |  14 ++
- src/SWIG_files/wrapper/ChFiDS.pyi          |   3 +
- src/SWIG_files/wrapper/GeomInt.i           |  23 +++
- src/SWIG_files/wrapper/GeomInt.pyi         |   5 +
- src/SWIG_files/wrapper/STEPCAFControl.i    | 140 ++++++-------
- src/SWIG_files/wrapper/STEPCAFControl.pyi  |  32 +--
- src/SWIG_files/wrapper/STEPConstruct.i     |  26 +++
- src/SWIG_files/wrapper/STEPConstruct.pyi   |   2 +
- src/SWIG_files/wrapper/ShapeUpgrade.i      |   1 +
- src/SWIG_files/wrapper/StdPrs.i            |  12 +-
- src/SWIG_files/wrapper/StdPrs.pyi          |   4 +-
- src/SWIG_files/wrapper/StepToGeom.i        |  16 --
- src/SWIG_files/wrapper/XCAFDoc.i           |  78 +++++---
- src/SWIG_files/wrapper/XCAFDoc.pyi         |  56 ++++--
- src/SWIG_files/wrapper/XCAFPrs.i           |  10 +-
- 34 files changed, 592 insertions(+), 410 deletions(-)
-
-diff --git a/src/SWIG_files/common/EnumTemplates.i b/src/SWIG_files/common/EnumTemplates.i
-index b66537d8..69af927f 100644
---- a/src/SWIG_files/common/EnumTemplates.i
-+++ b/src/SWIG_files/common/EnumTemplates.i
-@@ -15,7 +15,6 @@ ENUM_OUTPUT_TYPEMAPS(BRepOffset_Status);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_DisplayPriority);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_NameOfMaterial);
- ENUM_OUTPUT_TYPEMAPS(GeomAbs_Shape);
--ENUM_OUTPUT_TYPEMAPS(ProxPnt_Status);
- ENUM_OUTPUT_TYPEMAPS(Aspect_TypeOfLine);
- ENUM_OUTPUT_TYPEMAPS(PrsDim_KindOfSurface);
- ENUM_OUTPUT_TYPEMAPS(DsgPrs_ArrowSide);
-diff --git a/src/SWIG_files/headers/AIS_module.hxx b/src/SWIG_files/headers/AIS_module.hxx
-index ee7050ea..97fb3b69 100644
---- a/src/SWIG_files/headers/AIS_module.hxx
-+++ b/src/SWIG_files/headers/AIS_module.hxx
-@@ -22,12 +22,14 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<AIS.hxx>
- #include<AIS_AngleDimension.hxx>
- #include<AIS_Animation.hxx>
-+#include<AIS_AnimationAxisRotation.hxx>
- #include<AIS_AnimationCamera.hxx>
- #include<AIS_AnimationObject.hxx>
- #include<AIS_AnimationTimer.hxx>
- #include<AIS_AttributeFilter.hxx>
- #include<AIS_Axis.hxx>
- #include<AIS_BadEdgeFilter.hxx>
-+#include<AIS_BaseAnimationObject.hxx>
- #include<AIS_C0RegularityFilter.hxx>
- #include<AIS_CameraFrustum.hxx>
- #include<AIS_Chamf2dDimension.hxx>
-diff --git a/src/SWIG_files/headers/BRepFill_module.hxx b/src/SWIG_files/headers/BRepFill_module.hxx
-index 73975e24..ef638100 100644
---- a/src/SWIG_files/headers/BRepFill_module.hxx
-+++ b/src/SWIG_files/headers/BRepFill_module.hxx
-@@ -67,6 +67,7 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<BRepFill_SequenceOfSection.hxx>
- #include<BRepFill_ShapeLaw.hxx>
- #include<BRepFill_Sweep.hxx>
-+#include<BRepFill_ThruSectionErrorStatus.hxx>
- #include<BRepFill_TransitionStyle.hxx>
- #include<BRepFill_TrimEdgeTool.hxx>
- #include<BRepFill_TrimShellCorner.hxx>
-diff --git a/src/SWIG_files/wrapper/AIS.i b/src/SWIG_files/wrapper/AIS.i
-index bf1f6b10..8f58d69a 100644
---- a/src/SWIG_files/wrapper/AIS.i
-+++ b/src/SWIG_files/wrapper/AIS.i
-@@ -577,8 +577,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TrihedronOwner)
- %wrap_handle(AIS_TypeFilter)
- %wrap_handle(AIS_AnimationCamera)
--%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_Axis)
-+%wrap_handle(AIS_BaseAnimationObject)
- %wrap_handle(AIS_Circle)
- %wrap_handle(AIS_ColorScale)
- %wrap_handle(AIS_ConnectedInteractive)
-@@ -595,6 +595,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TextLabel)
- %wrap_handle(AIS_Triangulation)
- %wrap_handle(AIS_Trihedron)
-+%wrap_handle(AIS_AnimationAxisRotation)
-+%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_ColoredShape)
- %wrap_handle(AIS_TexturedShape)
- /* end handles declaration */
-@@ -8532,41 +8534,6 @@ opencascade::handle<V3d_View>
- 	}
- };
- 
--/****************************
--* class AIS_AnimationObject *
--****************************/
--class AIS_AnimationObject : public AIS_Animation {
--	public:
--		/****************** AIS_AnimationObject ******************/
--		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
--		%feature("compactdefaultargs") AIS_AnimationObject;
--		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param theanimationname animation identifier @param thecontext interactive context where object have been displayed @param theobject object to apply local transformation @param thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param thetrsfend local transformation at the end of animation.
--
--Parameters
------------
--theAnimationName: TCollection_AsciiString
--theContext: AIS_InteractiveContext
--theObject: AIS_InteractiveObject
--theTrsfStart: gp_Trsf
--theTrsfEnd: gp_Trsf
--
--Returns
---------
--None
--") AIS_AnimationObject;
--		 AIS_AnimationObject(const TCollection_AsciiString & theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
--
--};
--
--
--%make_alias(AIS_AnimationObject)
--
--%extend AIS_AnimationObject {
--	%pythoncode {
--	__repr__ = _dumps_object
--	}
--};
--
- /*****************
- * class AIS_Axis *
- *****************/
-@@ -8855,6 +8822,23 @@ None
- 	}
- };
- 
-+/********************************
-+* class AIS_BaseAnimationObject *
-+********************************/
-+%nodefaultctor AIS_BaseAnimationObject;
-+class AIS_BaseAnimationObject : public AIS_Animation {
-+	public:
-+};
-+
-+
-+%make_alias(AIS_BaseAnimationObject)
-+
-+%extend AIS_BaseAnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /**************************
- * class AIS_CameraFrustum *
- **************************/
-@@ -16143,6 +16127,77 @@ Standard_ShortReal
- 	}
- };
- 
-+/**********************************
-+* class AIS_AnimationAxisRotation *
-+**********************************/
-+class AIS_AnimationAxisRotation : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationAxisRotation ******************/
-+		/**** md5 signature: 819427e2c422233cc067da4633992952 ****/
-+		%feature("compactdefaultargs") AIS_AnimationAxisRotation;
-+		%feature("autodoc", "Constructor with initialization. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply rotation @param[in] theaxis rotation axis @param[in] theanglestart rotation angle at the start of animation @param[in] theangleend rotation angle at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theAxis: gp_Ax1
-+theAngleStart: float
-+theAngleEnd: float
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationAxisRotation;
-+		 AIS_AnimationAxisRotation(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Ax1 & theAxis, const Standard_Real theAngleStart, const Standard_Real theAngleEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationAxisRotation)
-+
-+%extend AIS_AnimationAxisRotation {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
-+/****************************
-+* class AIS_AnimationObject *
-+****************************/
-+class AIS_AnimationObject : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationObject ******************/
-+		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
-+		%feature("compactdefaultargs") AIS_AnimationObject;
-+		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply local transformation @param[in] thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param[in] thetrsfend local transformation at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theTrsfStart: gp_Trsf
-+theTrsfEnd: gp_Trsf
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationObject;
-+		 AIS_AnimationObject(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationObject)
-+
-+%extend AIS_AnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /*************************
- * class AIS_ColoredShape *
- *************************/
-diff --git a/src/SWIG_files/wrapper/AIS.pyi b/src/SWIG_files/wrapper/AIS.pyi
-index a75ef4ba..da4a3977 100644
---- a/src/SWIG_files/wrapper/AIS.pyi
-+++ b/src/SWIG_files/wrapper/AIS.pyi
-@@ -1021,9 +1021,6 @@ class AIS_AnimationCamera(AIS_Animation):
-     def SetView(self, theView: V3d_View) -> None: ...
-     def View(self) -> V3d_View: ...
- 
--class AIS_AnimationObject(AIS_Animation):
--    def __init__(self, theAnimationName: TCollection_AsciiString, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
--
- class AIS_Axis(AIS_InteractiveObject):
-     @overload
-     def __init__(self, aComponent: Geom_Line) -> None: ...
-@@ -1050,6 +1047,9 @@ class AIS_Axis(AIS_InteractiveObject):
-     def UnsetColor(self) -> None: ...
-     def UnsetWidth(self) -> None: ...
- 
-+class AIS_BaseAnimationObject(AIS_Animation):
-+    pass
-+
- class AIS_CameraFrustum(AIS_InteractiveObject):
-     def __init__(self) -> None: ...
-     def AcceptDisplayMode(self, theMode: int) -> bool: ...
-@@ -1652,6 +1652,12 @@ class AIS_XRTrackedDevice(AIS_InteractiveObject):
-     def SetUnitFactor(self, theFactor: float) -> None: ...
-     def UnitFactor(self) -> float: ...
- 
-+class AIS_AnimationAxisRotation(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theAxis: gp_Ax1, theAngleStart: float, theAngleEnd: float) -> None: ...
-+
-+class AIS_AnimationObject(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
-+
- class AIS_ColoredShape(AIS_Shape):
-     @overload
-     def __init__(self, theShape: TopoDS_Shape) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.i b/src/SWIG_files/wrapper/BRepAlgo.i
-index 3860648e..bd9e2f38 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.i
-+++ b/src/SWIG_files/wrapper/BRepAlgo.i
-@@ -921,6 +921,17 @@ None
- ") CutEdge;
- 		void CutEdge(const TopoDS_Edge & E, const TopTools_ListOfShape & VonE, TopTools_ListOfShape & NE);
- 
-+		/****************** GetTolConf ******************/
-+		/**** md5 signature: 7e9f7b87eb3b20edee9e3a86157928cd ****/
-+		%feature("compactdefaultargs") GetTolConf;
-+		%feature("autodoc", "Get maximal tolerance used for comparing distaces between vertices. .
-+
-+Returns
-+-------
-+float
-+") GetTolConf;
-+		Standard_Real GetTolConf();
-+
- 		/****************** GetVerticesForSubstitute ******************/
- 		/**** md5 signature: 3b0ea732ecf076dde3f931f0997c07aa ****/
- 		%feature("compactdefaultargs") GetVerticesForSubstitute;
-@@ -1014,6 +1025,21 @@ None
- ") SetImageVV;
- 		void SetImageVV(const BRepAlgo_Image & theImageVV);
- 
-+		/****************** SetTolConf ******************/
-+		/**** md5 signature: 1c312d5c00a3d856c91eb31857ae32c6 ****/
-+		%feature("compactdefaultargs") SetTolConf;
-+		%feature("autodoc", "Set maximal tolerance used for comparing distaces between vertices. .
-+
-+Parameters
-+----------
-+theTolConf: float
-+
-+Returns
-+-------
-+None
-+") SetTolConf;
-+		void SetTolConf(const Standard_Real theTolConf);
-+
- 		/****************** UpdateVEmap ******************/
- 		/**** md5 signature: 491681c63af221fbd7247e01d389bbc0 ****/
- 		%feature("compactdefaultargs") UpdateVEmap;
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.pyi b/src/SWIG_files/wrapper/BRepAlgo.pyi
-index 5ee7ab94..20ecddc9 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.pyi
-+++ b/src/SWIG_files/wrapper/BRepAlgo.pyi
-@@ -86,6 +86,7 @@ class BRepAlgo_Loop:
-     def AddConstEdges(self, LE: TopTools_ListOfShape) -> None: ...
-     def AddEdge(self, E: TopoDS_Edge, LV: TopTools_ListOfShape) -> None: ...
-     def CutEdge(self, E: TopoDS_Edge, VonE: TopTools_ListOfShape, NE: TopTools_ListOfShape) -> None: ...
-+    def GetTolConf(self) -> float: ...
-     def GetVerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def Init(self, F: TopoDS_Face) -> None: ...
-     def NewEdges(self, E: TopoDS_Edge) -> TopTools_ListOfShape: ...
-@@ -93,6 +94,7 @@ class BRepAlgo_Loop:
-     def NewWires(self) -> TopTools_ListOfShape: ...
-     def Perform(self) -> None: ...
-     def SetImageVV(self, theImageVV: BRepAlgo_Image) -> None: ...
-+    def SetTolConf(self, theTolConf: float) -> None: ...
-     def UpdateVEmap(self, theVEmap: TopTools_IndexedDataMapOfShapeListOfShape) -> None: ...
-     def VerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def WiresToFaces(self) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepBlend.i b/src/SWIG_files/wrapper/BRepBlend.i
-index 509a2525..b8131099 100644
---- a/src/SWIG_files/wrapper/BRepBlend.i
-+++ b/src/SWIG_files/wrapper/BRepBlend.i
-@@ -3508,7 +3508,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: e410fc1bc97982de557150e942b13c80 ****/
-+		/**** md5 signature: 5c6445d58f45808f7c3defd1db894a35 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3522,9 +3522,9 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -3533,10 +3533,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 78e8905aafd910d0fa3a7b23c096467b ****/
-+		/**** md5 signature: 452fb9b79df54fb801f2f70d066f611b ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3550,7 +3550,7 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecRst1: bool
- RecP1: bool
-@@ -3562,7 +3562,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5559,7 +5559,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 3ebeca31e507208cd42bab74df3ed6e3 ****/
-+		/**** md5 signature: 86cf3650fa597d7655c244c1866126f2 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5572,9 +5572,10 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5583,10 +5584,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 691664aa4fe132192d2ccf25ba05720a ****/
-+		/**** md5 signature: 429fbdc03f84a4a14fbebef94ad27ee5 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5599,7 +5600,8 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- RecRst: bool
- RecP: bool
-@@ -5610,7 +5612,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5795,7 +5797,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: ef3b3700f467db4ea875b65f539d9955 ****/
-+		/**** md5 signature: 6d94e3dcc7c71857d2c24ced3358703f ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5806,9 +5808,9 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5817,10 +5819,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: a2bca51a10d7f020b86504fe9860626e ****/
-+		/**** md5 signature: 92db8d0914da0712dd54b302697b3aa3 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5829,7 +5831,7 @@ Parameters
- F: Blend_Function
- Pdep: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- Pos1: TopAbs_State
- Pos2: TopAbs_State
-@@ -5838,10 +5840,10 @@ Returns
- -------
- bool
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 39c72a7c59d31a28e720252eee26feee ****/
-+		/**** md5 signature: 7464aaa5cedcb060541546a3a1ff5540 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5852,7 +5854,7 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecOnS1: bool
- RecOnS2: bool
-@@ -5862,7 +5864,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- 		/****************** SetDomainsToRecadre ******************/
- 		/**** md5 signature: 10664ebffbd6ed784502d7d4acfa5a93 ****/
-diff --git a/src/SWIG_files/wrapper/BRepBlend.pyi b/src/SWIG_files/wrapper/BRepBlend.pyi
-index 03deabc7..cbe9c845 100644
---- a/src/SWIG_files/wrapper/BRepBlend.pyi
-+++ b/src/SWIG_files/wrapper/BRepBlend.pyi
-@@ -346,8 +346,8 @@ class BRepBlend_RstRstLineBuilder:
-     def Decroch2Start(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_SurfCurvConstRadInv(Blend_SurfCurvFuncInv):
-     def __init__(self, S: Adaptor3d_Surface, C: Adaptor3d_Curve, Cg: Adaptor3d_Curve) -> None: ...
-@@ -519,8 +519,8 @@ class BRepBlend_SurfRstLineBuilder:
-     def DecrochStart(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, Tol2d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, Tol2d: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_Walking:
-     def __init__(self, Surf1: Adaptor3d_Surface, Surf2: Adaptor3d_Surface, Domain1: Adaptor3d_TopolTool, Domain2: Adaptor3d_TopolTool, HGuide: ChFiDS_ElSpine) -> None: ...
-@@ -536,11 +536,11 @@ class BRepBlend_Walking:
-     def Continu(self, F: Blend_Function, FInv: Blend_FuncInv, P: float, OnS1: bool) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-+    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-     def SetDomainsToRecadre(self, RecDomain1: Adaptor3d_TopolTool, RecDomain2: Adaptor3d_TopolTool) -> None: ...
-     def TwistOnS1(self) -> bool: ...
-     def TwistOnS2(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.i b/src/SWIG_files/wrapper/BRepExtrema.i
-index bc15b17e..18a48b42 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.i
-+++ b/src/SWIG_files/wrapper/BRepExtrema.i
-@@ -48,6 +48,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<gp_module.hxx>
- #include<Bnd_module.hxx>
- #include<BVH_module.hxx>
-+#include<Poly_module.hxx>
- #include<GeomAdaptor_module.hxx>
- #include<Geom_module.hxx>
- #include<Geom2d_module.hxx>
-@@ -55,6 +56,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<Adaptor2d_module.hxx>
- #include<TopLoc_module.hxx>
- #include<Message_module.hxx>
-+#include<TShort_module.hxx>
- #include<TColgp_module.hxx>
- #include<TColStd_module.hxx>
- #include<TCollection_module.hxx>
-@@ -68,6 +70,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- %import gp.i
- %import Bnd.i
- %import BVH.i
-+%import Poly.i
- 
- %pythoncode {
- from enum import IntEnum
-@@ -1645,7 +1648,7 @@ None
- 		 BRepExtrema_ProximityDistTool();
- 
- 		/****************** BRepExtrema_ProximityDistTool ******************/
--		/**** md5 signature: b9731e05e5136c7110e50a313b036c02 ****/
-+		/**** md5 signature: b080844c8fa666dae8c0e8db8d27e87e ****/
- 		%feature("compactdefaultargs") BRepExtrema_ProximityDistTool;
- 		%feature("autodoc", "Creates new tool for the given element sets.
- 
-@@ -1653,6 +1656,8 @@ Parameters
- ----------
- theSet1: BRepExtrema_TriangleSet
- theNbSamples1: int
-+theAddVertices1: BVH_Array3d
-+theAddStatus1: NCollection_Vector<ProxPnt_Status>
- theSet2: BRepExtrema_TriangleSet
- theShapeList1: BRepExtrema_ShapeList
- theShapeList2: BRepExtrema_ShapeList
-@@ -1661,7 +1666,7 @@ Returns
- -------
- None
- ") BRepExtrema_ProximityDistTool;
--		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
-+		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const BVH_Array3d & theAddVertices1, const NCollection_Vector<ProxPnt_Status> & theAddStatus1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
- 
- 		/****************** Accept ******************/
- 		/**** md5 signature: 47868288da8d60ae3574004f3eef6f3b ****/
-@@ -1679,6 +1684,40 @@ bool
- ") Accept;
- 		virtual Standard_Boolean Accept(const Standard_Integer theSgmIdx, const Standard_Real &);
- 
-+		/****************** IsEdgeOnBorder ******************/
-+		/**** md5 signature: 7f2df1d45fe4dd10cb81da19c83428fd ****/
-+		%feature("compactdefaultargs") IsEdgeOnBorder;
-+		%feature("autodoc", "Returns true if the edge is on the boarder.
-+
-+Parameters
-+----------
-+theTrgIdx: int
-+theFirstEdgeNodeIdx: int
-+theSecondEdgeNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsEdgeOnBorder;
-+		static Standard_Boolean IsEdgeOnBorder(const Standard_Integer theTrgIdx, const Standard_Integer theFirstEdgeNodeIdx, const Standard_Integer theSecondEdgeNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
-+		/****************** IsNodeOnBorder ******************/
-+		/**** md5 signature: 6a6c9031bf497d7acf6e95de1f2784f6 ****/
-+		%feature("compactdefaultargs") IsNodeOnBorder;
-+		%feature("autodoc", "Returns true if the node is on the boarder.
-+
-+Parameters
-+----------
-+theNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsNodeOnBorder;
-+		static Standard_Boolean IsNodeOnBorder(const Standard_Integer theNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
- 		/****************** LoadShapeLists ******************/
- 		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
- 		%feature("compactdefaultargs") LoadShapeLists;
-@@ -1787,178 +1826,10 @@ theMetric: float
- %extend BRepExtrema_ProximityDistTool {
- 	%pythoncode {
- 	__repr__ = _dumps_object
--	}
--};
--
--/***************************************
--* class BRepExtrema_ProximityValueTool *
--***************************************/
--class BRepExtrema_ProximityValueTool {
--	public:
--typedef typename BRepExtrema_ProximityDistTool ::ProxPnt_Status ProxPnt_Status;
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: f01190ce189b90d5b9278fbee66731a1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new unitialized proximity tool.
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool();
--
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: 457895b0f954d4aa93c3b2011e47f0e1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new proximity tool for the given element sets.
--
--Parameters
------------
--theSet1: BRepExtrema_TriangleSet
--theSet2: BRepExtrema_TriangleSet
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** Distance ******************/
--		/**** md5 signature: d47317206a0fb34e540004324dbfafd8 ****/
--		%feature("compactdefaultargs") Distance;
--		%feature("autodoc", "Returns the computed distance.
--
--Returns
---------
--float
--") Distance;
--		Standard_Real Distance();
--
--		/****************** IsDone ******************/
--		/**** md5 signature: e385477ab1bec806154173d4a550fd68 ****/
--		%feature("compactdefaultargs") IsDone;
--		%feature("autodoc", "Is proximity test completed?.
--
--Returns
---------
--bool
--") IsDone;
--		Standard_Boolean IsDone();
--
--		/****************** LoadShapeLists ******************/
--		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
--		%feature("compactdefaultargs") LoadShapeLists;
--		%feature("autodoc", "Loads the given list of subshapes into the proximity tool.
--
--Parameters
------------
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") LoadShapeLists;
--		void LoadShapeLists(const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** LoadTriangleSets ******************/
--		/**** md5 signature: 3a94a7860b973acbc6838bfe75b5b812 ****/
--		%feature("compactdefaultargs") LoadTriangleSets;
--		%feature("autodoc", "Loads the given element sets into the proximity tool.
--
--Parameters
------------
--theSet1: Handle ( BRepExtrema_TriangleSet )
--theSet2: Handle ( BRepExtrema_TriangleSet )
--
--Returns
---------
--None
--") LoadTriangleSets;
--		void LoadTriangleSets(const Handle ( BRepExtrema_TriangleSet ) & theSet1, const Handle ( BRepExtrema_TriangleSet ) & theSet2);
--
--		/****************** MarkDirty ******************/
--		/**** md5 signature: bd3f3e7de1b3b6a0c1da3082319fae2e ****/
--		%feature("compactdefaultargs") MarkDirty;
--		%feature("autodoc", "Marks test results as outdated.
--
--Returns
---------
--None
--") MarkDirty;
--		void MarkDirty();
--
--		/****************** Perform ******************/
--		/**** md5 signature: c2c8700606b770cff797eb33824bf0aa ****/
--		%feature("compactdefaultargs") Perform;
--		%feature("autodoc", "Performs the computation of the proximity value.
--
--Parameters
------------
--
--Returns
---------
--theTolerance: float
--") Perform;
--		void Perform(Standard_Real &OutValue);
--
--		/****************** ProximityPoints ******************/
--		/**** md5 signature: 4ddc607867ad4f349b192d8bb4196f92 ****/
--		%feature("compactdefaultargs") ProximityPoints;
--		%feature("autodoc", "Returns points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--thePoint1: gp_Pnt
--thePoint2: gp_Pnt
- 
--Returns
---------
--None
--") ProximityPoints;
--		void ProximityPoints(gp_Pnt & thePoint1, gp_Pnt & thePoint2);
--
--		/****************** ProximityPointsStatus ******************/
--		/**** md5 signature: cbb67aeda5a68bd79cbb58089638d3f8 ****/
--		%feature("compactdefaultargs") ProximityPointsStatus;
--		%feature("autodoc", "Returns status of points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--
--Returns
---------
--thePointStatus1: ProxPnt_Status
--thePointStatus2: ProxPnt_Status
--") ProximityPointsStatus;
--		void ProximityPointsStatus(ProxPnt_Status &OutValue, ProxPnt_Status &OutValue);
--
--		/****************** SetNbSamplePoints ******************/
--		/**** md5 signature: 200898431f5ab55f6d0477df1f50c3b9 ****/
--		%feature("compactdefaultargs") SetNbSamplePoints;
--		%feature("autodoc", "Sets number of sample points used for proximity calculation for each shape. if number is less or equal zero, all triangulation nodes are used.
--
--Parameters
------------
--theSamples1: int,optional
--	default value is 0
--theSamples2: int,optional
--	default value is 0
--
--Returns
---------
--None
--") SetNbSamplePoints;
--		void SetNbSamplePoints(const Standard_Integer theSamples1 = 0, const Standard_Integer theSamples2 = 0);
--
--};
--
--
--%extend BRepExtrema_ProximityValueTool {
--	%pythoncode {
--	__repr__ = _dumps_object
-+	@methodnotwrapped
-+	def LoadAdditionalPointsFirstSet(self):
-+		pass
- 	}
- };
- 
-@@ -1967,7 +1838,6 @@ None
- ***********************************/
- class BRepExtrema_ShapeProximity {
- 	public:
--typedef typename BRepExtrema_ProximityValueTool ::ProxPnt_Status ProxPnt_Status;
- 		/****************** BRepExtrema_ShapeProximity ******************/
- 		/**** md5 signature: 73b29b290349b3955b499c712de97888 ****/
- 		%feature("compactdefaultargs") BRepExtrema_ShapeProximity;
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.pyi b/src/SWIG_files/wrapper/BRepExtrema.pyi
-index 0738ed63..749fc5ef 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.pyi
-+++ b/src/SWIG_files/wrapper/BRepExtrema.pyi
-@@ -9,6 +9,7 @@ from OCC.Core.Message import *
- from OCC.Core.gp import *
- from OCC.Core.Bnd import *
- from OCC.Core.BVH import *
-+from OCC.Core.Poly import *
- 
- #the following typedef cannot be wrapped as is
- BRepExtrema_ShapeList = NewType('BRepExtrema_ShapeList', Any)
-@@ -163,8 +164,10 @@ class BRepExtrema_Poly:
- class BRepExtrema_ProximityDistTool():
-     @overload
-     def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theNbSamples1: int, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-+    @staticmethod
-+    def IsEdgeOnBorder(theTrgIdx: int, theFirstEdgeNodeIdx: int, theSecondEdgeNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-+    @staticmethod
-+    def IsNodeOnBorder(theNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-     def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-     def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
-     def Perform(self) -> None: ...
-@@ -172,20 +175,6 @@ class BRepExtrema_ProximityDistTool():
-     def ProximityPoints(self, thePoint1: BVH_Vec3d, thePoint2: BVH_Vec3d) -> None: ...
-     def RejectNode(self, theCornerMin: BVH_Vec3d, theCornerMax: BVH_Vec3d) -> Tuple[bool, float]: ...
- 
--class BRepExtrema_ProximityValueTool:
--    @overload
--    def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def Distance(self) -> float: ...
--    def IsDone(self) -> bool: ...
--    def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
--    def MarkDirty(self) -> None: ...
--    def Perform(self) -> float: ...
--    def ProximityPoints(self, thePoint1: gp_Pnt, thePoint2: gp_Pnt) -> None: ...
--    def SetNbSamplePoints(self, theSamples1: Optional[int] = 0, theSamples2: Optional[int] = 0) -> None: ...
--
- class BRepExtrema_ShapeProximity:
-     @overload
-     def __init__(self, theTolerance: Optional[float] = precision_Infinite()) -> None: ...
-@@ -271,3 +260,5 @@ class BRepExtrema_OverlapTool: ...
- # hsequence classes
- 
- BRepExtrema_Poly_Distance = BRepExtrema_Poly.Distance
-+BRepExtrema_ProximityDistTool_IsEdgeOnBorder = BRepExtrema_ProximityDistTool.IsEdgeOnBorder
-+BRepExtrema_ProximityDistTool_IsNodeOnBorder = BRepExtrema_ProximityDistTool.IsNodeOnBorder
-diff --git a/src/SWIG_files/wrapper/BRepFill.i b/src/SWIG_files/wrapper/BRepFill.i
-index 1b12746f..0281ab54 100644
---- a/src/SWIG_files/wrapper/BRepFill.i
-+++ b/src/SWIG_files/wrapper/BRepFill.i
-@@ -105,6 +105,16 @@ from OCC.Core.Exception import *
- };
- 
- /* public enums */
-+enum BRepFill_ThruSectionErrorStatus {
-+	BRepFill_ThruSectionErrorStatus_Done = 0,
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1,
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2,
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3,
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4,
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5,
-+	BRepFill_ThruSectionErrorStatus_Failed = 6,
-+};
-+
- enum BRepFill_TypeOfContact {
- 	BRepFill_NoContact = 0,
- 	BRepFill_Contact = 1,
-@@ -122,6 +132,22 @@ enum BRepFill_TransitionStyle {
- /* python proxy classes for enums */
- %pythoncode {
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+	BRepFill_ThruSectionErrorStatus_Done = 0
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5
-+	BRepFill_ThruSectionErrorStatus_Failed = 6
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
- 	BRepFill_NoContact = 0
- 	BRepFill_Contact = 1
-@@ -575,6 +601,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Edge & SubSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "No available documentation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 217046dd3125fb37abc6e15803e209f1 ****/
- 		%feature("compactdefaultargs") Init;
-@@ -1816,6 +1853,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Shape & SSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns status of the operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** IsMutableInput ******************/
- 		/**** md5 signature: 2df16e5a957577cfce65832aa2d90512 ****/
- 		%feature("compactdefaultargs") IsMutableInput;
-diff --git a/src/SWIG_files/wrapper/BRepFill.pyi b/src/SWIG_files/wrapper/BRepFill.pyi
-index b73b54f3..412b53b2 100644
---- a/src/SWIG_files/wrapper/BRepFill.pyi
-+++ b/src/SWIG_files/wrapper/BRepFill.pyi
-@@ -83,6 +83,23 @@ class BRepFill_SequenceOfSection:
-     def Value(self, theIndex: int) -> BRepFill_Section: ...
-     def SetValue(self, theIndex: int, theValue: BRepFill_Section) -> None: ...
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+    BRepFill_ThruSectionErrorStatus_Done: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotDone: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotSameTopology: int = ...
-+    BRepFill_ThruSectionErrorStatus_ProfilesInconsistent: int = ...
-+    BRepFill_ThruSectionErrorStatus_WrongUsage: int = ...
-+    BRepFill_ThruSectionErrorStatus_Null3DCurve: int = ...
-+    BRepFill_ThruSectionErrorStatus_Failed: int = ...
-+
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
-     BRepFill_NoContact: int = ...
-     BRepFill_Contact: int = ...
-@@ -139,6 +156,7 @@ class BRepFill_CompatibleWires:
-     def __init__(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SubSection: TopoDS_Edge) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def IsDegeneratedFirstSection(self) -> bool: ...
-     def IsDegeneratedLastSection(self) -> bool: ...
-@@ -255,6 +273,7 @@ class BRepFill_Generator:
-     def AddWire(self, Wire: TopoDS_Wire) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SSection: TopoDS_Shape) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def IsMutableInput(self) -> bool: ...
-     def Perform(self) -> None: ...
-     def ResultShape(self, theShape: TopoDS_Shape) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BRepOffset.i b/src/SWIG_files/wrapper/BRepOffset.i
-index d6800998..05add5f2 100644
---- a/src/SWIG_files/wrapper/BRepOffset.i
-+++ b/src/SWIG_files/wrapper/BRepOffset.i
-@@ -131,6 +131,7 @@ enum BRepOffset_Error {
- 	BRepOffset_CannotFuseVertices = 7,
- 	BRepOffset_CannotExtentEdge = 8,
- 	BRepOffset_UserBreak = 9,
-+	BRepOffset_MixedConnectivity = 10,
- };
- 
- enum BRepOffsetSimple_Status {
-@@ -171,6 +172,7 @@ class BRepOffset_Error(IntEnum):
- 	BRepOffset_CannotFuseVertices = 7
- 	BRepOffset_CannotExtentEdge = 8
- 	BRepOffset_UserBreak = 9
-+	BRepOffset_MixedConnectivity = 10
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
- BRepOffset_BadNormalsOnGeometry = BRepOffset_Error.BRepOffset_BadNormalsOnGeometry
-@@ -181,6 +183,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
- 	BRepOffsetSimple_OK = 0
-diff --git a/src/SWIG_files/wrapper/BRepOffset.pyi b/src/SWIG_files/wrapper/BRepOffset.pyi
-index 89a5e3e1..fd6f7478 100644
---- a/src/SWIG_files/wrapper/BRepOffset.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffset.pyi
-@@ -43,6 +43,7 @@ class BRepOffset_Error(IntEnum):
-     BRepOffset_CannotFuseVertices: int = ...
-     BRepOffset_CannotExtentEdge: int = ...
-     BRepOffset_UserBreak: int = ...
-+    BRepOffset_MixedConnectivity: int = ...
- 
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
-@@ -54,6 +55,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
-     BRepOffsetSimple_OK: int = ...
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.i b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-index 1f9ad1dd..df26f708 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.i
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-@@ -2558,6 +2558,17 @@ TopoDS_Shape
- ") GeneratedFace;
- 		TopoDS_Shape GeneratedFace(const TopoDS_Shape & Edge);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns the status of thrusection operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 82b061dc05f66b08422610d2d7504487 ****/
- 		%feature("compactdefaultargs") Init;
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-index 042de45f..815ee7e1 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-@@ -260,6 +260,7 @@ class BRepOffsetAPI_ThruSections(BRepBuilderAPI_MakeShape):
-     def FirstShape(self) -> TopoDS_Shape: ...
-     def Generated(self, S: TopoDS_Shape) -> TopTools_ListOfShape: ...
-     def GeneratedFace(self, Edge: TopoDS_Shape) -> TopoDS_Shape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, isSolid: Optional[bool] = False, ruled: Optional[bool] = False, pres3d: Optional[float] = 1.0e-06) -> None: ...
-     def IsMutableInput(self) -> bool: ...
-     def LastShape(self) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BSplCLib.i b/src/SWIG_files/wrapper/BSplCLib.i
-index f0b6635f..80aa4d80 100644
---- a/src/SWIG_files/wrapper/BSplCLib.i
-+++ b/src/SWIG_files/wrapper/BSplCLib.i
-@@ -2001,6 +2001,29 @@ InversionProblem: int
- ") Interpolate;
- 		static void Interpolate(const Standard_Integer Degree, const TColStd_Array1OfReal & FlatKnots, const TColStd_Array1OfReal & Parameters, const TColStd_Array1OfInteger & ContactOrderArray, const Standard_Integer ArrayDimension, Standard_Real &OutValue, Standard_Real &OutValue, Standard_Integer &OutValue);
- 
-+		/****************** Intervals ******************/
-+		/**** md5 signature: 6005dd7b642eb153ae7f9293cf41ffb5 ****/
-+		%feature("compactdefaultargs") Intervals;
-+		%feature("autodoc", "Splits the given range to bspline intervals of given continuity @param[in] theknots the knots of bspline @param[in] themults the knots' multiplicities @param[in] thedegree the degree of bspline @param[in] isperiodic the periodicity of bspline @param[in] thecontinuity the target interval's continuity @param[in] thefirst the begin of the target range @param[in] thelast the end of the target range @param[in] thetolerance the tolerance @param[in,out] theintervals the array to store intervals if isn't nullptr returns the number of intervals.
-+
-+Parameters
-+----------
-+theKnots: TColStd_Array1OfReal
-+theMults: TColStd_Array1OfInteger
-+theDegree: int
-+isPeriodic: bool
-+theContinuity: int
-+theFirst: float
-+theLast: float
-+theTolerance: float
-+theIntervals: TColStd_Array1OfReal *
-+
-+Returns
-+-------
-+int
-+") Intervals;
-+		static Standard_Integer Intervals(const TColStd_Array1OfReal & theKnots, const TColStd_Array1OfInteger & theMults, Standard_Integer theDegree, Standard_Boolean isPeriodic, Standard_Integer theContinuity, Standard_Real theFirst, Standard_Real theLast, Standard_Real theTolerance, TColStd_Array1OfReal * theIntervals);
-+
- 		/****************** IsRational ******************/
- 		/**** md5 signature: 5ee1bb4d64e0a78acc3cb994f1afcefa ****/
- 		%feature("compactdefaultargs") IsRational;
-diff --git a/src/SWIG_files/wrapper/BSplCLib.pyi b/src/SWIG_files/wrapper/BSplCLib.pyi
-index b8ac4682..671f76a0 100644
---- a/src/SWIG_files/wrapper/BSplCLib.pyi
-+++ b/src/SWIG_files/wrapper/BSplCLib.pyi
-@@ -278,6 +278,8 @@ class bsplclib:
-     @staticmethod
-     def Interpolate(Degree: int, FlatKnots: TColStd_Array1OfReal, Parameters: TColStd_Array1OfReal, ContactOrderArray: TColStd_Array1OfInteger, ArrayDimension: int) -> Tuple[float, float, int]: ...
-     @staticmethod
-+    def Intervals(theKnots: TColStd_Array1OfReal, theMults: TColStd_Array1OfInteger, theDegree: int, isPeriodic: bool, theContinuity: int, theFirst: float, theLast: float, theTolerance: float, theIntervals: TColStd_Array1OfReal) -> int: ...
-+    @staticmethod
-     def IsRational(Weights: TColStd_Array1OfReal, I1: int, I2: int, Epsilon: Optional[float] = 0.0) -> bool: ...
-     @staticmethod
-     def KnotAnalysis(Degree: int, Periodic: bool, CKnots: TColStd_Array1OfReal, CMults: TColStd_Array1OfInteger, KnotForm: GeomAbs_BSplKnotDistribution) -> int: ...
-@@ -566,6 +568,7 @@ bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
-+bsplclib_Intervals = bsplclib.Intervals
- bsplclib_IsRational = bsplclib.IsRational
- bsplclib_KnotAnalysis = bsplclib.KnotAnalysis
- bsplclib_KnotForm = bsplclib.KnotForm
-diff --git a/src/SWIG_files/wrapper/ChFiDS.i b/src/SWIG_files/wrapper/ChFiDS.i
-index d60e552a..b8096939 100644
---- a/src/SWIG_files/wrapper/ChFiDS.i
-+++ b/src/SWIG_files/wrapper/ChFiDS.i
-@@ -121,6 +121,7 @@ enum ChFiDS_TypeOfConcavity {
- 	ChFiDS_Tangential = 2,
- 	ChFiDS_FreeBound = 3,
- 	ChFiDS_Other = 4,
-+	ChFiDS_Mixed = 5,
- };
- 
- /* end public enums declaration */
-@@ -178,11 +179,13 @@ class ChFiDS_TypeOfConcavity(IntEnum):
- 	ChFiDS_Tangential = 2
- 	ChFiDS_FreeBound = 3
- 	ChFiDS_Other = 4
-+	ChFiDS_Mixed = 5
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- };
- /* end python proxy for enums */
- 
-@@ -2029,6 +2032,17 @@ TopoDS_Vertex
- ") FirstVertex;
- 		TopoDS_Vertex FirstVertex();
- 
-+		/****************** GetTolesp ******************/
-+		/**** md5 signature: 217c13748b3cb2bf2cc59e96cafe8207 ****/
-+		%feature("compactdefaultargs") GetTolesp;
-+		%feature("autodoc", "Return tolesp parameter.
-+
-+Returns
-+-------
-+float
-+") GetTolesp;
-+		Standard_Real GetTolesp();
-+
- 		/****************** GetType ******************/
- 		/**** md5 signature: 6d4e6ae7972633971ba343e8afc91aa1 ****/
- 		%feature("compactdefaultargs") GetType;
-diff --git a/src/SWIG_files/wrapper/ChFiDS.pyi b/src/SWIG_files/wrapper/ChFiDS.pyi
-index 6543ea1a..d1884594 100644
---- a/src/SWIG_files/wrapper/ChFiDS.pyi
-+++ b/src/SWIG_files/wrapper/ChFiDS.pyi
-@@ -192,12 +192,14 @@ class ChFiDS_TypeOfConcavity(IntEnum):
-     ChFiDS_Tangential: int = ...
-     ChFiDS_FreeBound: int = ...
-     ChFiDS_Other: int = ...
-+    ChFiDS_Mixed: int = ...
- 
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- 
- class ChFiDS_CircSection:
-     def __init__(self) -> None: ...
-@@ -351,6 +353,7 @@ class ChFiDS_Spine(Standard_Transient):
-     def FirstParameter(self, IndexSpine: int) -> float: ...
-     def FirstStatus(self) -> ChFiDS_State: ...
-     def FirstVertex(self) -> TopoDS_Vertex: ...
-+    def GetTolesp(self) -> float: ...
-     def GetType(self) -> GeomAbs_CurveType: ...
-     def GetTypeOfConcavity(self) -> ChFiDS_TypeOfConcavity: ...
-     def HasFirstTgt(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/GeomInt.i b/src/SWIG_files/wrapper/GeomInt.i
-index a01b7841..9d84060c 100644
---- a/src/SWIG_files/wrapper/GeomInt.i
-+++ b/src/SWIG_files/wrapper/GeomInt.i
-@@ -936,6 +936,29 @@ opencascade::handle<Geom_Curve>
- ") Boundary;
- 		const opencascade::handle<Geom_Curve> & Boundary(const Standard_Integer Index);
- 
-+		/****************** BuildPCurves ******************/
-+		/**** md5 signature: 6965f43fd020f13216b45cd065743faa ****/
-+		%feature("compactdefaultargs") BuildPCurves;
-+		%feature("autodoc", "Creates 2d-curve on given surface from given 3d-curve.
-+
-+Parameters
-+----------
-+theFirst: float
-+theLast: float
-+theUmin: float
-+theUmax: float
-+theVmin: float
-+theVmax: float
-+theSurface: Geom_Surface
-+theCurve: Geom_Curve
-+theCurve2d: Geom2d_Curve
-+
-+Returns
-+-------
-+theTol: float
-+") BuildPCurves;
-+		static void BuildPCurves(const Standard_Real theFirst, const Standard_Real theLast, const Standard_Real theUmin, const Standard_Real theUmax, const Standard_Real theVmin, const Standard_Real theVmax, Standard_Real &OutValue, const opencascade::handle<Geom_Surface> & theSurface, const opencascade::handle<Geom_Curve> & theCurve, opencascade::handle<Geom2d_Curve> & theCurve2d);
-+
- 		/****************** BuildPCurves ******************/
- 		/**** md5 signature: 2c2bdb53423075c70323712785098b12 ****/
- 		%feature("compactdefaultargs") BuildPCurves;
-diff --git a/src/SWIG_files/wrapper/GeomInt.pyi b/src/SWIG_files/wrapper/GeomInt.pyi
-index eae46ba0..c6076fec 100644
---- a/src/SWIG_files/wrapper/GeomInt.pyi
-+++ b/src/SWIG_files/wrapper/GeomInt.pyi
-@@ -110,6 +110,10 @@ class GeomInt_IntSS:
-     @overload
-     def __init__(self, S1: Geom_Surface, S2: Geom_Surface, Tol: float, Approx: Optional[bool] = True, ApproxS1: Optional[bool] = False, ApproxS2: Optional[bool] = False) -> None: ...
-     def Boundary(self, Index: int) -> Geom_Curve: ...
-+    @overload
-+    @staticmethod
-+    def BuildPCurves(theFirst: float, theLast: float, theUmin: float, theUmax: float, theVmin: float, theVmax: float, theSurface: Geom_Surface, theCurve: Geom_Curve, theCurve2d: Geom2d_Curve) -> float: ...
-+    @overload
-     @staticmethod
-     def BuildPCurves(f: float, l: float, S: Geom_Surface, C: Geom_Curve, C2d: Geom2d_Curve) -> float: ...
-     def HasLineOnS1(self, Index: int) -> bool: ...
-@@ -525,6 +529,7 @@ class GeomInt_WLApprox: ...
- 
- geomint_AdjustPeriodic = geomint.AdjustPeriodic
- GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
-+GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
- GeomInt_IntSS_MakeBSpline = GeomInt_IntSS.MakeBSpline
- GeomInt_IntSS_MakeBSpline2d = GeomInt_IntSS.MakeBSpline2d
- GeomInt_IntSS_TreatRLine = GeomInt_IntSS.TreatRLine
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.i b/src/SWIG_files/wrapper/STEPCAFControl.i
-index 3ddc1ba8..9372c840 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.i
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.i
-@@ -1849,24 +1849,24 @@ None
- 		 STEPCAFControl_Writer();
- 
- 		/****************** STEPCAFControl_Writer ******************/
--		/**** md5 signature: 70a513d4d628947fa1e98ed8e35359d9 ****/
-+		/**** md5 signature: dedf68dbebf4d519616966632e9764a8 ****/
- 		%feature("compactdefaultargs") STEPCAFControl_Writer;
- 		%feature("autodoc", "Creates a reader tool and attaches it to an already existing session clears the session if it was not yet set for step clears the internal data structures.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") STEPCAFControl_Writer;
--		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** ChangeWriter ******************/
--		/**** md5 signature: 9719ebc8336482d007d450c0e3b00713 ****/
-+		/**** md5 signature: acee09144e4dec42ed602fde52975129 ****/
- 		%feature("compactdefaultargs") ChangeWriter;
- 		%feature("autodoc", "Returns basic reader for root file.
- 
-@@ -1877,39 +1877,39 @@ STEPControl_Writer
- 		STEPControl_Writer & ChangeWriter();
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: 4f90b7104efa0649e14f70ad09ab8e61 ****/
-+		/**** md5 signature: 0769b22e71152aabd75dace01164fc2b ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its original label returns false if no external file with given name is read.
- 
- Parameters
- ----------
--L: TDF_Label
--ef: STEPCAFControl_ExternFile
-+theLabel: TDF_Label
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const TDF_Label & L, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(const TDF_Label & theLabel, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: ad0d6b0b3be01575d180dd24c55cd264 ****/
-+		/**** md5 signature: f77e0b8157371b505bc136b8bd33443e ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its name returns false if no external file with given name is read.
- 
- Parameters
- ----------
--name: char *
--ef: STEPCAFControl_ExternFile
-+theName: str
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const char * name, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(Standard_CString theName, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFiles ******************/
--		/**** md5 signature: 1154c88bc3253c7291077317c11363ab ****/
-+		/**** md5 signature: 08a0b41df731275c7119f8910e47970c ****/
- 		%feature("compactdefaultargs") ExternFiles;
- 		%feature("autodoc", "Returns data on external files returns null handle if no external files are read.
- 
-@@ -1920,7 +1920,7 @@ NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_
- 		const NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_ExternFile>> & ExternFiles();
- 
- 		/****************** GetColorMode ******************/
--		/**** md5 signature: 010da6a8a0e8a61fdb607fd6faba2b56 ****/
-+		/**** md5 signature: cddb885e605f1794a5a6486023f65736 ****/
- 		%feature("compactdefaultargs") GetColorMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1931,7 +1931,7 @@ bool
- 		Standard_Boolean GetColorMode();
- 
- 		/****************** GetDimTolMode ******************/
--		/**** md5 signature: 2eed8e0bb30a6f85d0c500a8d4b9e16c ****/
-+		/**** md5 signature: 5f3c2fc2e581a2ea711f9607cd0a817a ****/
- 		%feature("compactdefaultargs") GetDimTolMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1942,7 +1942,7 @@ bool
- 		Standard_Boolean GetDimTolMode();
- 
- 		/****************** GetLayerMode ******************/
--		/**** md5 signature: d677385c303e067613f92bc738509727 ****/
-+		/**** md5 signature: b6b1458608d2429d13e63a07c0b392d8 ****/
- 		%feature("compactdefaultargs") GetLayerMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1953,7 +1953,7 @@ bool
- 		Standard_Boolean GetLayerMode();
- 
- 		/****************** GetMaterialMode ******************/
--		/**** md5 signature: cda125e3ff8f835393b9894e3f229aea ****/
-+		/**** md5 signature: 2057a4ef866086868ba91cb34e6ad09a ****/
- 		%feature("compactdefaultargs") GetMaterialMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1964,7 +1964,7 @@ bool
- 		Standard_Boolean GetMaterialMode();
- 
- 		/****************** GetNameMode ******************/
--		/**** md5 signature: 2dd32a893d6f5f4666ac3752ace2d12f ****/
-+		/**** md5 signature: 1097f532a68b4625a0108cddc8366238 ****/
- 		%feature("compactdefaultargs") GetNameMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1975,7 +1975,7 @@ bool
- 		Standard_Boolean GetNameMode();
- 
- 		/****************** GetPropsMode ******************/
--		/**** md5 signature: 3b2f4c2b61084d1e067d83421e0ea81d ****/
-+		/**** md5 signature: 99cee0ed60040ac88dbf6e950f82a10e ****/
- 		%feature("compactdefaultargs") GetPropsMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1986,7 +1986,7 @@ bool
- 		Standard_Boolean GetPropsMode();
- 
- 		/****************** GetSHUOMode ******************/
--		/**** md5 signature: 74c5f048b04741ef5abfe259b5c453cd ****/
-+		/**** md5 signature: 4e3a3a7f89647ad6b4f35f24a42234d6 ****/
- 		%feature("compactdefaultargs") GetSHUOMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1997,31 +1997,31 @@ bool
- 		Standard_Boolean GetSHUOMode();
- 
- 		/****************** Init ******************/
--		/**** md5 signature: 13544ae418c98602c6eaed6faea8f526 ****/
-+		/**** md5 signature: e7d3f870615865a6686f75c3aa077ff3 ****/
- 		%feature("compactdefaultargs") Init;
- 		%feature("autodoc", "Clears the internal data structures and attaches to a new session clears the session if it was not yet set for step.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") Init;
--		void Init(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		void Init(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 82a9ff51a493dfcaea368ecaef792fdb ****/
-+		/**** md5 signature: 624f8c3670df66af47c4a9af2967eb2a ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: TCollection_AsciiString
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2029,17 +2029,17 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const TCollection_AsciiString & filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, TCollection_AsciiString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 1ef00b1bd520cd3b05cc4f00e91c494d ****/
-+		/**** md5 signature: 90b76d8d692f1926baa1d9dd3db9018b ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "Transfers a document and writes it to a step file returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: char *
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2047,124 +2047,124 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const char * filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, Standard_CString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** SetColorMode ******************/
--		/**** md5 signature: e8d41838c31a9460a1c83d84b1f572a1 ****/
-+		/**** md5 signature: f341158b4cc5262e2e5cb7b941cc9031 ****/
- 		%feature("compactdefaultargs") SetColorMode;
- 		%feature("autodoc", "Set colormode for indicate write colors or not.
- 
- Parameters
- ----------
--colormode: bool
-+theColorMode: bool
- 
- Returns
- -------
- None
- ") SetColorMode;
--		void SetColorMode(const Standard_Boolean colormode);
-+		void SetColorMode(const Standard_Boolean theColorMode);
- 
- 		/****************** SetDimTolMode ******************/
--		/**** md5 signature: 18d408609aea9a67d1d1e15d923773db ****/
-+		/**** md5 signature: 08cd53498196841f3c3a5c0e281a464f ****/
- 		%feature("compactdefaultargs") SetDimTolMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--dimtolmode: bool
-+theDimTolMode: bool
- 
- Returns
- -------
- None
- ") SetDimTolMode;
--		void SetDimTolMode(const Standard_Boolean dimtolmode);
-+		void SetDimTolMode(const Standard_Boolean theDimTolMode);
- 
- 		/****************** SetLayerMode ******************/
--		/**** md5 signature: 3ec21c8de4b114a83bb0b34cb3b98662 ****/
-+		/**** md5 signature: d164352478699d01fe5d59c680c2a74d ****/
- 		%feature("compactdefaultargs") SetLayerMode;
- 		%feature("autodoc", "Set layermode for indicate write layers or not.
- 
- Parameters
- ----------
--layermode: bool
-+theLayerMode: bool
- 
- Returns
- -------
- None
- ") SetLayerMode;
--		void SetLayerMode(const Standard_Boolean layermode);
-+		void SetLayerMode(const Standard_Boolean theLayerMode);
- 
- 		/****************** SetMaterialMode ******************/
--		/**** md5 signature: ef4abdfa06b076742a69b17150f91d88 ****/
-+		/**** md5 signature: 932571d6d0df2e34fd2487f6025f4956 ****/
- 		%feature("compactdefaultargs") SetMaterialMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--matmode: bool
-+theMaterialMode: bool
- 
- Returns
- -------
- None
- ") SetMaterialMode;
--		void SetMaterialMode(const Standard_Boolean matmode);
-+		void SetMaterialMode(const Standard_Boolean theMaterialMode);
- 
- 		/****************** SetNameMode ******************/
--		/**** md5 signature: 43ccb5d3fb024d8191f251ee74d0f6ba ****/
-+		/**** md5 signature: a24984c6ce274882f02601c13cf73b9a ****/
- 		%feature("compactdefaultargs") SetNameMode;
- 		%feature("autodoc", "Set namemode for indicate write name or not.
- 
- Parameters
- ----------
--namemode: bool
-+theNameMode: bool
- 
- Returns
- -------
- None
- ") SetNameMode;
--		void SetNameMode(const Standard_Boolean namemode);
-+		void SetNameMode(const Standard_Boolean theNameMode);
- 
- 		/****************** SetPropsMode ******************/
--		/**** md5 signature: 97f3b34eb7a1e38c6cf17d5c26f938a6 ****/
-+		/**** md5 signature: fbb288fb7a76bf6b9cd3acd70d056a7f ****/
- 		%feature("compactdefaultargs") SetPropsMode;
- 		%feature("autodoc", "Propsmode for indicate write validation properties or not.
- 
- Parameters
- ----------
--propsmode: bool
-+thePropsMode: bool
- 
- Returns
- -------
- None
- ") SetPropsMode;
--		void SetPropsMode(const Standard_Boolean propsmode);
-+		void SetPropsMode(const Standard_Boolean thePropsMode);
- 
- 		/****************** SetSHUOMode ******************/
--		/**** md5 signature: ad06ed8b923731ee7b75bf3d7074f299 ****/
-+		/**** md5 signature: 39955bf97fe8d6a6d6b3b211a859f216 ****/
- 		%feature("compactdefaultargs") SetSHUOMode;
- 		%feature("autodoc", "Set shuo mode for indicate write shuo or not.
- 
- Parameters
- ----------
--shuomode: bool
-+theSHUOMode: bool
- 
- Returns
- -------
- None
- ") SetSHUOMode;
--		void SetSHUOMode(const Standard_Boolean shuomode);
-+		void SetSHUOMode(const Standard_Boolean theSHUOMode);
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 2616e7e1bc1f8548fb5e464651c0f720 ****/
-+		/**** md5 signature: dd7ebbdc1c22d7845ad531885273adee ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Transfers a document (or single label) to a step model the mode of translation of shape is asis if multi is not null pointer, it switches to multifile mode (with external refs), and string pointed by <multi> gives prefix for names of extern files (can be empty string) returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--mode: STEPControl_StepModelType,optional
-+theDoc: TDocStd_Document
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2173,19 +2173,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & doc, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & theDoc, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 3230c3763f234bd8211762a290f20e3d ****/
-+		/**** md5 signature: 40f710aeab310ab1eff9bbdbe733b162 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Method to transfer part of the document specified by label.
- 
- Parameters
- ----------
--L: TDF_Label
--mode: STEPControl_StepModelType,optional
-+theLabel: TDF_Label
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2194,19 +2194,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_Label & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_Label & theLabel, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 7533cb05eb0d45c4c5142f45de14069a ****/
-+		/**** md5 signature: 4e3f0900d966cc07a5e2191b2b4ba7a6 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Mehod to writing sequence of root assemblies or part of the file specified by use by one label .
- 
- Parameters
- ----------
--L: TDF_LabelSequence
--mode: STEPControl_StepModelType,optional
-+theLabelSeq: TDF_LabelSequence
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2215,7 +2215,7 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_LabelSequence & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_LabelSequence & theLabelSeq, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Write ******************/
- 		/**** md5 signature: 14544d6ececf228a5871ef6afa0279ae ****/
-@@ -2248,7 +2248,7 @@ IFSelect_ReturnStatus
- 		IFSelect_ReturnStatus WriteStream(std::ostream & theStream);
- 
- 		/****************** Writer ******************/
--		/**** md5 signature: 70b6d632350a5ba6ff972c4b437432a0 ****/
-+		/**** md5 signature: 056d4f3221d283b7d58d92ddd5c40dd7 ****/
- 		%feature("compactdefaultargs") Writer;
- 		%feature("autodoc", "Returns basic reader as const.
- 
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.pyi b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-index 896eedcf..9160ffa9 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.pyi
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-@@ -175,12 +175,12 @@ class STEPCAFControl_Writer:
-     @overload
-     def __init__(self) -> None: ...
-     @overload
--    def __init__(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def __init__(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     def ChangeWriter(self) -> STEPControl_Writer: ...
-     @overload
--    def ExternFile(self, L: TDF_Label, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theLabel: TDF_Label, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     @overload
--    def ExternFile(self, name: str, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theName: str, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     def ExternFiles(self) -> False: ...
-     def GetColorMode(self) -> bool: ...
-     def GetDimTolMode(self) -> bool: ...
-@@ -189,24 +189,24 @@ class STEPCAFControl_Writer:
-     def GetNameMode(self) -> bool: ...
-     def GetPropsMode(self) -> bool: ...
-     def GetSHUOMode(self) -> bool: ...
--    def Init(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def Init(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: TCollection_AsciiString, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
--    def SetColorMode(self, colormode: bool) -> None: ...
--    def SetDimTolMode(self, dimtolmode: bool) -> None: ...
--    def SetLayerMode(self, layermode: bool) -> None: ...
--    def SetMaterialMode(self, matmode: bool) -> None: ...
--    def SetNameMode(self, namemode: bool) -> None: ...
--    def SetPropsMode(self, propsmode: bool) -> None: ...
--    def SetSHUOMode(self, shuomode: bool) -> None: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def SetColorMode(self, theColorMode: bool) -> None: ...
-+    def SetDimTolMode(self, theDimTolMode: bool) -> None: ...
-+    def SetLayerMode(self, theLayerMode: bool) -> None: ...
-+    def SetMaterialMode(self, theMaterialMode: bool) -> None: ...
-+    def SetNameMode(self, theNameMode: bool) -> None: ...
-+    def SetPropsMode(self, thePropsMode: bool) -> None: ...
-+    def SetSHUOMode(self, theSHUOMode: bool) -> None: ...
-     @overload
--    def Transfer(self, doc: TDocStd_Document, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theDoc: TDocStd_Document, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_Label, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabel: TDF_Label, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_LabelSequence, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabelSeq: TDF_LabelSequence, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     def Write(self, theFileName: str) -> IFSelect_ReturnStatus: ...
-     def Writer(self) -> STEPControl_Writer: ...
- 
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.i b/src/SWIG_files/wrapper/STEPConstruct.i
-index f1221c33..d9eaffc8 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.i
-+++ b/src/SWIG_files/wrapper/STEPConstruct.i
-@@ -2598,6 +2598,17 @@ opencascade::handle<StepVisual_PresentationStyleAssignment>
- ") MakeColorPSA;
- 		opencascade::handle<StepVisual_PresentationStyleAssignment> MakeColorPSA(const opencascade::handle<StepRepr_RepresentationItem> & item, const opencascade::handle<StepVisual_Colour> & SurfCol, const opencascade::handle<StepVisual_Colour> & CurveCol, const opencascade::handle<StepVisual_Colour> & RenderCol, const Standard_Real RenderTransp, const Standard_Boolean isForNAUO = Standard_False);
- 
-+		/****************** NbRootStyles ******************/
-+		/**** md5 signature: 4bb6a5a6f49e5abb7085f5ef57337a5a ****/
-+		%feature("compactdefaultargs") NbRootStyles;
-+		%feature("autodoc", "Returns number of override styles.
-+
-+Returns
-+-------
-+int
-+") NbRootStyles;
-+		Standard_Integer NbRootStyles();
-+
- 		/****************** NbStyles ******************/
- 		/**** md5 signature: 9f5fbd515247307ce70e63c6f585ddb7 ****/
- 		%feature("compactdefaultargs") NbStyles;
-@@ -2609,6 +2620,21 @@ int
- ") NbStyles;
- 		Standard_Integer NbStyles();
- 
-+		/****************** RootStyle ******************/
-+		/**** md5 signature: 97e67ad6592e4e36a6444e18652921fc ****/
-+		%feature("compactdefaultargs") RootStyle;
-+		%feature("autodoc", "Returns override style with given index.
-+
-+Parameters
-+----------
-+i: int
-+
-+Returns
-+-------
-+opencascade::handle<StepVisual_StyledItem>
-+") RootStyle;
-+		opencascade::handle<StepVisual_StyledItem> RootStyle(const Standard_Integer i);
-+
- 		/****************** Style ******************/
- 		/**** md5 signature: e152f39ac13e328dca6d350a6f881da8 ****/
- 		%feature("compactdefaultargs") Style;
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.pyi b/src/SWIG_files/wrapper/STEPConstruct.pyi
-index ca04fc33..0f3aa64d 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.pyi
-+++ b/src/SWIG_files/wrapper/STEPConstruct.pyi
-@@ -253,7 +253,9 @@ class STEPConstruct_Styles(STEPConstruct_Tool):
-     def LoadInvisStyles(self, InvSyles: TColStd_HSequenceOfTransient) -> bool: ...
-     def LoadStyles(self) -> bool: ...
-     def MakeColorPSA(self, item: StepRepr_RepresentationItem, SurfCol: StepVisual_Colour, CurveCol: StepVisual_Colour, RenderCol: StepVisual_Colour, RenderTransp: float, isForNAUO: Optional[bool] = False) -> StepVisual_PresentationStyleAssignment: ...
-+    def NbRootStyles(self) -> int: ...
-     def NbStyles(self) -> int: ...
-+    def RootStyle(self, i: int) -> StepVisual_StyledItem: ...
-     def Style(self, i: int) -> StepVisual_StyledItem: ...
- 
- class STEPConstruct_ValidationProps(STEPConstruct_Tool):
-diff --git a/src/SWIG_files/wrapper/ShapeUpgrade.i b/src/SWIG_files/wrapper/ShapeUpgrade.i
-index 1fd11ef9..b3c16c8c 100644
---- a/src/SWIG_files/wrapper/ShapeUpgrade.i
-+++ b/src/SWIG_files/wrapper/ShapeUpgrade.i
-@@ -1064,6 +1064,7 @@ None
- class ShapeUpgrade_UnifySameDomain : public Standard_Transient {
- 	public:
- typedef NCollection_DataMap<TopoDS_Shape , opencascade ::handle<Geom_Plane>, TopTools_ShapeMapHasher> DataMapOfFacePlane;
-+typedef NCollection_DataMap<TopoDS_Shape , TopTools_MapOfShape , TopTools_ShapeMapHasher> DataMapOfShapeMapOfShape;
- 		/****************** ShapeUpgrade_UnifySameDomain ******************/
- 		/**** md5 signature: 81e68dd91fd764ff95aa62b12dc88ed6 ****/
- 		%feature("compactdefaultargs") ShapeUpgrade_UnifySameDomain;
-diff --git a/src/SWIG_files/wrapper/StdPrs.i b/src/SWIG_files/wrapper/StdPrs.i
-index 0d01b154..bcdbf6c2 100644
---- a/src/SWIG_files/wrapper/StdPrs.i
-+++ b/src/SWIG_files/wrapper/StdPrs.i
-@@ -1220,7 +1220,7 @@ int
- class StdPrs_ShadedShape : public Prs3d_Root {
- 	public:
- 		/****************** Add ******************/
--		/**** md5 signature: 4361c97ebfd2d178620c977d5eabb386 ****/
-+		/**** md5 signature: eb25cffb7e72ca49100cdcc43a05ee8c ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape>. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1231,15 +1231,17 @@ theShape: TopoDS_Shape
- theDrawer: Prs3d_Drawer
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** Add ******************/
--		/**** md5 signature: c21dc028b4eb82bb3707a6e95d6e5c3b ****/
-+		/**** md5 signature: c2784d9b78f332340fcb1d6c9293a2a1 ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape> with texture coordinates. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1254,12 +1256,14 @@ theUVRepeat: gp_Pnt2d
- theUVScale: gp_Pnt2d
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** AddWireframeForFacesWithoutTriangles ******************/
- 		/**** md5 signature: 2399101e036cd3b0540bfa37732d6fc1 ****/
-diff --git a/src/SWIG_files/wrapper/StdPrs.pyi b/src/SWIG_files/wrapper/StdPrs.pyi
-index 3a01af7b..4df76eb5 100644
---- a/src/SWIG_files/wrapper/StdPrs.pyi
-+++ b/src/SWIG_files/wrapper/StdPrs.pyi
-@@ -156,10 +156,10 @@ class StdPrs_PoleCurve(Prs3d_Root):
- class StdPrs_ShadedShape(Prs3d_Root):
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @staticmethod
-     def AddWireframeForFacesWithoutTriangles(thePrs: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer) -> None: ...
-     @staticmethod
-diff --git a/src/SWIG_files/wrapper/StepToGeom.i b/src/SWIG_files/wrapper/StepToGeom.i
-index a91cc710..f4ab236f 100644
---- a/src/SWIG_files/wrapper/StepToGeom.i
-+++ b/src/SWIG_files/wrapper/StepToGeom.i
-@@ -808,22 +808,6 @@ opencascade::handle<Geom2d_VectorWithMagnitude>
- ") MakeVectorWithMagnitude2d;
- 		static opencascade::handle<Geom2d_VectorWithMagnitude> MakeVectorWithMagnitude2d(const opencascade::handle<StepGeom_Vector> & SV);
- 
--		/****************** MakeYprRotation ******************/
--		/**** md5 signature: de9dc847a92c9949d29654e63b9eb686 ****/
--		%feature("compactdefaultargs") MakeYprRotation;
--		%feature("autodoc", "No available documentation.
--
--Parameters
------------
--SR: StepKinematics_SpatialRotation
--theCntxt: StepRepr_GlobalUnitAssignedContext
--
--Returns
---------
--opencascade::handle<TColStd_HArray1OfReal>
--") MakeYprRotation;
--		static opencascade::handle<TColStd_HArray1OfReal> MakeYprRotation(const StepKinematics_SpatialRotation & SR, const opencascade::handle<StepRepr_GlobalUnitAssignedContext> & theCntxt);
--
- };
- 
- 
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.i b/src/SWIG_files/wrapper/XCAFDoc.i
-index 791919dd..e5c716a9 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.i
-+++ b/src/SWIG_files/wrapper/XCAFDoc.i
-@@ -2317,7 +2317,7 @@ TDF_Label
- 		TDF_Label FindColor(const Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: be86e43f2f2ac06163dce467a9739527 ****/
-+		/**** md5 signature: 7092ec33c89b067e1ceab0d67b5ed02d ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2330,10 +2330,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: a7a6506d3132240934c87e97ec6b28ed ****/
-+		/**** md5 signature: 7252a98dd463a84602d0b7516d6cfc04 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2346,7 +2346,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 869ec12dba73e125e4d66d2a85d2d496 ****/
-@@ -2366,7 +2366,7 @@ bool
- 		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, TDF_Label & colorL);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: 5801253cfaf9cc63278aa2d80d15b2c3 ****/
-+		/**** md5 signature: 9f42bc515522bf5857381b8ed56f5af6 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2380,10 +2380,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: f56e146c8c1c603ab9bcf2d6c801e3b4 ****/
-+		/**** md5 signature: 175af0eadf13dd6e8e7059280dcebe1e ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2397,7 +2397,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 6e439ce30113cabaadf18ee4ce1d0971 ****/
-@@ -2599,7 +2599,7 @@ bool
- 		Standard_Boolean IsSet(const TopoDS_Shape & S, const XCAFDoc_ColorType type);
- 
- 		/****************** IsVisible ******************/
--		/**** md5 signature: e84f73aaf1ac293dea741c71b9f10a4b ****/
-+		/**** md5 signature: bcc14ce19df050eb884b5911b48c4b59 ****/
- 		%feature("compactdefaultargs") IsVisible;
- 		%feature("autodoc", "Return true if object on this label is visible, false if invisible.
- 
-@@ -2611,7 +2611,7 @@ Returns
- -------
- bool
- ") IsVisible;
--		Standard_Boolean IsVisible(const TDF_Label & L);
-+		static Standard_Boolean IsVisible(const TDF_Label & L);
- 
- 		/****************** RemoveColor ******************/
- 		/**** md5 signature: 3e1749f5696dd21fe53c3eb3d8e77952 ****/
-@@ -3477,7 +3477,7 @@ None
- 		void GetDatumLabels(TDF_LabelSequence & Labels);
- 
- 		/****************** GetDatumOfTolerLabels ******************/
--		/**** md5 signature: ed65059da2973245ec5c0f5e0dfd7526 ****/
-+		/**** md5 signature: 581e63a0a9642866e1575d216f9b4d3d ****/
- 		%feature("compactdefaultargs") GetDatumOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels defined for thedimtoll label.
- 
-@@ -3490,10 +3490,10 @@ Returns
- -------
- bool
- ") GetDatumOfTolerLabels;
--		Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDatumWithObjectOfTolerLabels ******************/
--		/**** md5 signature: da94437dec84c797c8bab6e76d5e373f ****/
-+		/**** md5 signature: d5f3a53d01bb6038ce1c82b7e4989ce4 ****/
- 		%feature("compactdefaultargs") GetDatumWithObjectOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels with xcafdimtolobjects_datumobject defined for label thedimtoll.
- 
-@@ -3506,7 +3506,7 @@ Returns
- -------
- bool
- ") GetDatumWithObjectOfTolerLabels;
--		Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDimTol ******************/
- 		/**** md5 signature: 5f2928d077835acfc683c0b7e312ac72 ****/
-@@ -3646,7 +3646,7 @@ bool
- 		Standard_Boolean GetRefGeomToleranceLabels(const TDF_Label & theShapeL, TDF_LabelSequence & theDimTols);
- 
- 		/****************** GetRefShapeLabel ******************/
--		/**** md5 signature: e25d6989472f0a0e102c1daa5f739a29 ****/
-+		/**** md5 signature: b09dac51ded70edf3dd23cc545931b1a ****/
- 		%feature("compactdefaultargs") GetRefShapeLabel;
- 		%feature("autodoc", "Gets all shape labels referred by thel label of the gd&t table. returns false if there are no shape labels added to the sequences.
- 
-@@ -3660,7 +3660,7 @@ Returns
- -------
- bool
- ") GetRefShapeLabel;
--		Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
-+		static Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
- 
- 		/****************** GetTolerOfDatumLabels ******************/
- 		/**** md5 signature: b4d4047d58bcf3d1d31d5586d788da7e ****/
-@@ -5490,20 +5490,20 @@ opencascade::handle<TColStd_HSequenceOfExtendedString>
- 		opencascade::handle<TColStd_HSequenceOfExtendedString> GetLayers(const TopoDS_Shape & Sh);
- 
- 		/****************** GetShapesOfLayer ******************/
--		/**** md5 signature: 8b01d3b5f0a0832996031f609b876e7c ****/
-+		/**** md5 signature: 2bcd2de1711ebf8ae0d1ddf5d01dce52 ****/
- 		%feature("compactdefaultargs") GetShapesOfLayer;
- 		%feature("autodoc", "Return sequanese of shape labels that assigned with layers to <shlabels>.
- 
- Parameters
- ----------
--layerL: TDF_Label
--ShLabels: TDF_LabelSequence
-+theLayerL: TDF_Label
-+theShLabels: TDF_LabelSequence
- 
- Returns
- -------
- None
- ") GetShapesOfLayer;
--		void GetShapesOfLayer(const TDF_Label & layerL, TDF_LabelSequence & ShLabels);
-+		static void GetShapesOfLayer(const TDF_Label & theLayerL, TDF_LabelSequence & theShLabels);
- 
- 		/****************** ID ******************/
- 		/**** md5 signature: 4697ce8a095fa6dcef0217708d19718f ****/
-@@ -6456,7 +6456,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 806c54e68af730f31f3353b2ba682bd0 ****/
-+		/**** md5 signature: cf930e538eb371f96b92c4f439c49612 ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material assigned to <matl> returns false if no such material is assigned.
- 
-@@ -6472,7 +6472,7 @@ Returns
- -------
- aDensity: float
- ") GetMaterial;
--		Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> & aName, opencascade::handle<TCollection_HAsciiString> & aDescription, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> & aDensName, opencascade::handle<TCollection_HAsciiString> & aDensValType);
-+		static Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue);
- 
- 		/****************** GetMaterialLabels ******************/
- 		/**** md5 signature: cd3883adc849957e7e10d763ad936071 ****/
-@@ -8152,6 +8152,32 @@ opencascade::handle<TDataStd_NamedData>
- ") GetNamedProperties;
- 		opencascade::handle<TDataStd_NamedData> GetNamedProperties(const TopoDS_Shape & theShape, const Standard_Boolean theToCreate = Standard_False);
- 
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 3215690f7fd49b341401d78832c630e0 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of shape's labels @param[in] thelabels a sequence of labels to get shapes from returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Parameters
-+----------
-+theLabels: TDF_LabelSequence
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		static TopoDS_Shape GetOneShape(const TDF_LabelSequence & theLabels);
-+
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 5c1df85e1e2a72b0b93fde509f26a709 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of all top-level shapes which are free returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		TopoDS_Shape GetOneShape();
-+
- 		/****************** GetReferredShape ******************/
- 		/**** md5 signature: 63acc4d5460c835c166b1fc0b2913030 ****/
- 		%feature("compactdefaultargs") GetReferredShape;
-@@ -9844,7 +9870,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 83194336f7abcf51085de62960d38361 ****/
-+		/**** md5 signature: 694e93123423187642f68fe8d4e64f2a ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material defined by specified label, or null if the label is not in material table.
- 
-@@ -9856,7 +9882,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
- 
- 		/****************** GetMaterials ******************/
- 		/**** md5 signature: a96d68af36051bd063fefc1e10aabb79 ****/
-@@ -9890,7 +9916,7 @@ bool
- 		static Standard_Boolean GetShapeMaterial(const TDF_Label & theShapeLabel, TDF_Label & theMaterialLabel);
- 
- 		/****************** GetShapeMaterial ******************/
--		/**** md5 signature: 86335bfdea98c720bcf3af0fe4fb0fe0 ****/
-+		/**** md5 signature: 04847c1ad68cdd465933ffa2a713f244 ****/
- 		%feature("compactdefaultargs") GetShapeMaterial;
- 		%feature("autodoc", "Returns material assigned to the shape label.
- 
-@@ -9902,7 +9928,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetShapeMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
- 
- 		/****************** GetShapeMaterial ******************/
- 		/**** md5 signature: b4d2560c50c52f8b49c713aa67731929 ****/
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.pyi b/src/SWIG_files/wrapper/XCAFDoc.pyi
-index b3036a2f..9fed3910 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.pyi
-+++ b/src/SWIG_files/wrapper/XCAFDoc.pyi
-@@ -299,16 +299,20 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     @overload
-     def FindColor(self, col: Quantity_ColorRGBA) -> TDF_Label: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     @staticmethod
-     def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     def GetColor(self, S: TopoDS_Shape, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
-@@ -330,7 +334,8 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     def IsSet(self, L: TDF_Label, type: XCAFDoc_ColorType) -> bool: ...
-     @overload
-     def IsSet(self, S: TopoDS_Shape, type: XCAFDoc_ColorType) -> bool: ...
--    def IsVisible(self, L: TDF_Label) -> bool: ...
-+    @staticmethod
-+    def IsVisible(L: TDF_Label) -> bool: ...
-     def RemoveColor(self, lab: TDF_Label) -> None: ...
-     def ReverseChainsOfTreeNodes(self) -> bool: ...
-     @staticmethod
-@@ -418,9 +423,11 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def FindDimTol(self, theKind: int, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> TDF_Label: ...
-     def GetDatum(self, theDatumL: TDF_Label, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString, theIdentification: TCollection_HAsciiString) -> bool: ...
-     def GetDatumLabels(self, Labels: TDF_LabelSequence) -> None: ...
--    def GetDatumOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDatumWithObjectOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> Tuple[bool, int]: ...
-+    @staticmethod
-+    def GetDatumOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetDatumWithObjectOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal) -> Tuple[bool, int, str, str]: ...
-     def GetDimTolLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def GetDimensionLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-     def GetGeomToleranceLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-@@ -429,7 +436,8 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def GetRefDatumLabel(self, theShapeL: TDF_Label, theDatum: TDF_LabelSequence) -> bool: ...
-     def GetRefDimensionLabels(self, theShapeL: TDF_Label, theDimensions: TDF_LabelSequence) -> bool: ...
-     def GetRefGeomToleranceLabels(self, theShapeL: TDF_Label, theDimTols: TDF_LabelSequence) -> bool: ...
--    def GetRefShapeLabel(self, theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetRefShapeLabel(theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-     def GetTolerOfDatumLabels(self, theDatumL: TDF_Label, theTols: TDF_LabelSequence) -> bool: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsDatum(self, lab: TDF_Label) -> bool: ...
-@@ -629,7 +637,8 @@ class XCAFDoc_LayerTool(TDataStd_GenericEmpty):
-     def GetLayers(self, Sh: TopoDS_Shape, aLayerLS: TDF_LabelSequence) -> bool: ...
-     @overload
-     def GetLayers(self, Sh: TopoDS_Shape) -> TColStd_HSequenceOfExtendedString: ...
--    def GetShapesOfLayer(self, layerL: TDF_Label, ShLabels: TDF_LabelSequence) -> None: ...
-+    @staticmethod
-+    def GetShapesOfLayer(theLayerL: TDF_Label, theShLabels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsLayer(self, lab: TDF_Label) -> bool: ...
-     @overload
-@@ -731,7 +740,8 @@ class XCAFDoc_MaterialTool(TDataStd_GenericEmpty):
-     def GetDensityForShape(ShapeL: TDF_Label) -> float: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, MatL: TDF_Label, aName: TCollection_HAsciiString, aDescription: TCollection_HAsciiString, aDensName: TCollection_HAsciiString, aDensValType: TCollection_HAsciiString) -> Tuple[bool, float]: ...
-+    @staticmethod
-+    def GetMaterial(MatL: TDF_Label) -> Tuple[bool, str, str, float, str, str]: ...
-     def GetMaterialLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsMaterial(self, lab: TDF_Label) -> bool: ...
-@@ -899,6 +909,11 @@ class XCAFDoc_ShapeTool(TDataStd_GenericEmpty):
-     def GetNamedProperties(self, theLabel: TDF_Label, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-     @overload
-     def GetNamedProperties(self, theShape: TopoDS_Shape, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-+    @overload
-+    @staticmethod
-+    def GetOneShape(theLabels: TDF_LabelSequence) -> TopoDS_Shape: ...
-+    @overload
-+    def GetOneShape(self) -> TopoDS_Shape: ...
-     @staticmethod
-     def GetReferredShape(L: TDF_Label, Label: TDF_Label) -> bool: ...
-     @staticmethod
-@@ -1058,13 +1073,15 @@ class XCAFDoc_VisMaterialTool(TDF_Attribute):
-     def BaseLabel(self) -> TDF_Label: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetMaterial(theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     def GetMaterials(self, Labels: TDF_LabelSequence) -> None: ...
-     @overload
-     @staticmethod
-     def GetShapeMaterial(theShapeLabel: TDF_Label, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
--    def GetShapeMaterial(self, theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetShapeMaterial(theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     @overload
-     def GetShapeMaterial(self, theShape: TopoDS_Shape, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
-@@ -1209,7 +1226,12 @@ XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_ColorTool_AutoNaming = XCAFDoc_ColorTool.AutoNaming
- XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
- XCAFDoc_ColorTool_GetID = XCAFDoc_ColorTool.GetID
-+XCAFDoc_ColorTool_IsVisible = XCAFDoc_ColorTool.IsVisible
- XCAFDoc_ColorTool_Set = XCAFDoc_ColorTool.Set
- XCAFDoc_ColorTool_SetAutoNaming = XCAFDoc_ColorTool.SetAutoNaming
- XCAFDoc_Datum_GetID = XCAFDoc_Datum.GetID
-@@ -1217,7 +1239,10 @@ XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_DimTol_GetID = XCAFDoc_DimTol.GetID
- XCAFDoc_DimTol_Set = XCAFDoc_DimTol.Set
-+XCAFDoc_DimTolTool_GetDatumOfTolerLabels = XCAFDoc_DimTolTool.GetDatumOfTolerLabels
-+XCAFDoc_DimTolTool_GetDatumWithObjectOfTolerLabels = XCAFDoc_DimTolTool.GetDatumWithObjectOfTolerLabels
- XCAFDoc_DimTolTool_GetID = XCAFDoc_DimTolTool.GetID
-+XCAFDoc_DimTolTool_GetRefShapeLabel = XCAFDoc_DimTolTool.GetRefShapeLabel
- XCAFDoc_DimTolTool_Set = XCAFDoc_DimTolTool.Set
- XCAFDoc_Dimension_GetID = XCAFDoc_Dimension.GetID
- XCAFDoc_Dimension_Set = XCAFDoc_Dimension.Set
-@@ -1268,6 +1293,7 @@ XCAFDoc_GraphNode_GetDefaultGraphID = XCAFDoc_GraphNode.GetDefaultGraphID
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_LayerTool_GetID = XCAFDoc_LayerTool.GetID
-+XCAFDoc_LayerTool_GetShapesOfLayer = XCAFDoc_LayerTool.GetShapesOfLayer
- XCAFDoc_LayerTool_Set = XCAFDoc_LayerTool.Set
- XCAFDoc_LengthUnit_GetID = XCAFDoc_LengthUnit.GetID
- XCAFDoc_LengthUnit_Set = XCAFDoc_LengthUnit.Set
-@@ -1279,6 +1305,7 @@ XCAFDoc_Material_GetID = XCAFDoc_Material.GetID
- XCAFDoc_Material_Set = XCAFDoc_Material.Set
- XCAFDoc_MaterialTool_GetDensityForShape = XCAFDoc_MaterialTool.GetDensityForShape
- XCAFDoc_MaterialTool_GetID = XCAFDoc_MaterialTool.GetID
-+XCAFDoc_MaterialTool_GetMaterial = XCAFDoc_MaterialTool.GetMaterial
- XCAFDoc_MaterialTool_Set = XCAFDoc_MaterialTool.Set
- XCAFDoc_Note_Get = XCAFDoc_Note.Get
- XCAFDoc_Note_IsMine = XCAFDoc_Note.IsMine
-@@ -1294,6 +1321,7 @@ XCAFDoc_ShapeTool_GetComponents = XCAFDoc_ShapeTool.GetComponents
- XCAFDoc_ShapeTool_GetExternRefs = XCAFDoc_ShapeTool.GetExternRefs
- XCAFDoc_ShapeTool_GetID = XCAFDoc_ShapeTool.GetID
- XCAFDoc_ShapeTool_GetLocation = XCAFDoc_ShapeTool.GetLocation
-+XCAFDoc_ShapeTool_GetOneShape = XCAFDoc_ShapeTool.GetOneShape
- XCAFDoc_ShapeTool_GetReferredShape = XCAFDoc_ShapeTool.GetReferredShape
- XCAFDoc_ShapeTool_GetSHUO = XCAFDoc_ShapeTool.GetSHUO
- XCAFDoc_ShapeTool_GetSHUONextUsage = XCAFDoc_ShapeTool.GetSHUONextUsage
-@@ -1320,6 +1348,8 @@ XCAFDoc_ViewTool_GetID = XCAFDoc_ViewTool.GetID
- XCAFDoc_ViewTool_Set = XCAFDoc_ViewTool.Set
- XCAFDoc_VisMaterial_GetID = XCAFDoc_VisMaterial.GetID
- XCAFDoc_VisMaterialTool_GetID = XCAFDoc_VisMaterialTool.GetID
-+XCAFDoc_VisMaterialTool_GetMaterial = XCAFDoc_VisMaterialTool.GetMaterial
-+XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_Set = XCAFDoc_VisMaterialTool.Set
- XCAFDoc_Volume_Get = XCAFDoc_Volume.Get
-diff --git a/src/SWIG_files/wrapper/XCAFPrs.i b/src/SWIG_files/wrapper/XCAFPrs.i
-index 51f661e0..efa0d4b0 100644
---- a/src/SWIG_files/wrapper/XCAFPrs.i
-+++ b/src/SWIG_files/wrapper/XCAFPrs.i
-@@ -1019,7 +1019,7 @@ None
- class XCAFPrs_Texture : public Graphic3d_Texture2D {
- 	public:
- 		/****************** XCAFPrs_Texture ******************/
--		/**** md5 signature: f9dbe9d0fe880b67c047fad8716af896 ****/
-+		/**** md5 signature: 000bd876aad38ca74535015d5e9463d7 ****/
- 		%feature("compactdefaultargs") XCAFPrs_Texture;
- 		%feature("autodoc", "Constructor.
- 
-@@ -1032,7 +1032,7 @@ Returns
- -------
- None
- ") XCAFPrs_Texture;
--		 XCAFPrs_Texture(const Image_Texture & theImageSource, const Graphic3d_TextureUnit theUnit);
-+		 XCAFPrs_Texture(const opencascade::handle<Image_Texture> & theImageSource, const Graphic3d_TextureUnit theUnit);
- 
- 		/****************** GetCompressedImage ******************/
- 		/**** md5 signature: bad0c95151f5a884e9dbc72217977538 ****/
-@@ -1065,15 +1065,15 @@ opencascade::handle<Image_PixMap>
- 		virtual opencascade::handle<Image_PixMap> GetImage(const opencascade::handle<Image_SupportedFormats> & theSupported);
- 
- 		/****************** GetImageSource ******************/
--		/**** md5 signature: 1fa59174d8d0d408df072137f5b3fe0e ****/
-+		/**** md5 signature: c24f99a1f3e5bf7521b240aa232d6d28 ****/
- 		%feature("compactdefaultargs") GetImageSource;
- 		%feature("autodoc", "Return image source.
- 
- Returns
- -------
--Image_Texture
-+opencascade::handle<Image_Texture>
- ") GetImageSource;
--		const Image_Texture & GetImageSource();
-+		const opencascade::handle<Image_Texture> & GetImageSource();
- 
- };
- 
-
-From 44af64d633d315e52e3f18247ff8e26d0619effb Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Tue, 4 Apr 2023 03:57:57 +0200
-Subject: [PATCH 2/4] bump occt version to 7.7.1
-
----
- CMakeLists.txt          | 6 +++---
- ci/conda/meta.yaml      | 6 +++---
- src/PkgBase/__init__.py | 2 +-
- 3 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 14a60d09..8cef86b0 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -21,8 +21,8 @@ project(PYTHONOCC)
- 
- # set pythonOCC version
- set(PYTHONOCC_VERSION_MAJOR 7)
--set(PYTHONOCC_VERSION_MINOR 6)
--set(PYTHONOCC_VERSION_PATCH 3)
-+set(PYTHONOCC_VERSION_MINOR 7)
-+set(PYTHONOCC_VERSION_PATCH 1)
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- set(PYTHONOCC_VERSION_DEVEL )
-@@ -147,7 +147,7 @@ if(DEFINED OCE_INCLUDE_PATH)
- # if OCE_INCLUDE_PATH is not passed at command line,
- # find OCE automatically
- else(OCE_INCLUDE_PATH)
--  find_package(OpenCASCADE 7.7.0 REQUIRED)
-+  find_package(OpenCASCADE 7.7.1 REQUIRED)
-   if(OpenCASCADE_FOUND)
-     message(STATUS "OpenCASCADE version found: " ${OpenCASCADE_MAJOR_VERSION} "." ${OpenCASCADE_MINOR_VERSION} "." ${OpenCASCADE_MAINTENANCE_VERSION})
-     message(STATUS "OpenCASCADE include directory: " ${OpenCASCADE_INCLUDE_DIR})
-diff --git a/ci/conda/meta.yaml b/ci/conda/meta.yaml
-index 33d91edc..8ca381de 100644
---- a/ci/conda/meta.yaml
-+++ b/ci/conda/meta.yaml
-@@ -1,4 +1,4 @@
--{% set version = "7.7.0" %}
-+{% set version = "7.7.1" %}
- 
- package:
-   name: pythonocc-core
-@@ -26,11 +26,11 @@ requirements:
- 
-   host:
-     - python {{ python }}
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - numpy >=1.17
- 
-   run:
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - six
-     - numpy >=1.17
- 
-diff --git a/src/PkgBase/__init__.py b/src/PkgBase/__init__.py
-index 898fb48e..e90690b0 100644
---- a/src/PkgBase/__init__.py
-+++ b/src/PkgBase/__init__.py
-@@ -1,6 +1,6 @@
- PYTHONOCC_VERSION_MAJOR = 7
- PYTHONOCC_VERSION_MINOR = 7
--PYTHONOCC_VERSION_PATCH = 0
-+PYTHONOCC_VERSION_PATCH = 1
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- PYTHONOCC_VERSION_DEVEL = ''
-
-From 6ec7cc9095631de070573fc26164578f2e2c87bf Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 16:40:05 +0200
-Subject: [PATCH 3/4] remove xvfb tests from conda build
-
----
- ci/conda/run_test.sh | 7 -------
- 1 file changed, 7 deletions(-)
-
-diff --git a/ci/conda/run_test.sh b/ci/conda/run_test.sh
-index 8d0acf0a..6610b84e 100644
---- a/ci/conda/run_test.sh
-+++ b/ci/conda/run_test.sh
-@@ -2,10 +2,3 @@
- cd ../work/test
- python run_tests.py
- mypy test_mypy_classic_occ_bottle.py
--
--if [ $(uname) == Linux ]; then
--    # start xvfb
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyqt5_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyside2_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_wx_unittest.py
--fi
-
-From bcd7a2c2e0b12801416db9c0d73f2c01992e8ab5 Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 17:08:51 +0200
-Subject: [PATCH 4/4] Fix DataEchange load colrs
-
----
- src/Extend/DataExchange.py | 15 ++++++++-------
- 1 file changed, 8 insertions(+), 7 deletions(-)
-
-diff --git a/src/Extend/DataExchange.py b/src/Extend/DataExchange.py
-index 20f0c9b8..6545d83a 100644
---- a/src/Extend/DataExchange.py
-+++ b/src/Extend/DataExchange.py
-@@ -41,6 +41,7 @@ from OCC.Core.TDocStd import TDocStd_Document
- from OCC.Core.XCAFDoc import (
-     XCAFDoc_DocumentTool_ShapeTool,
-     XCAFDoc_DocumentTool_ColorTool,
-+    XCAFDoc_ColorTool,
- )
- from OCC.Core.STEPCAFControl import STEPCAFControl_Reader
- from OCC.Core.TDF import TDF_LabelSequence, TDF_Label
-@@ -62,6 +63,7 @@ try:
- except ImportError:
-     HAVE_SVGWRITE = False
- 
-+
- ##########################
- # Step import and export #
- ##########################
-@@ -280,11 +282,10 @@ def read_step_file_with_names_colors(filename):
- 
-             if not color_set:
-                 if (
--                    color_tool.GetColor(lab, 0, c)
--                    or color_tool.GetColor(lab, 1, c)
--                    or color_tool.GetColor(lab, 2, c)
-+                    XCAFDoc_ColorTool.GetColor(lab, 0, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 1, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 2, c)
-                 ):
--
-                     color_tool.SetInstanceColor(shape, 0, c)
-                     color_tool.SetInstanceColor(shape, 1, c)
-                     color_tool.SetInstanceColor(shape, 2, c)
-@@ -330,9 +331,9 @@ def read_step_file_with_names_colors(filename):
- 
-                 if not color_set:
-                     if (
--                        color_tool.GetColor(lab_subs, 0, c)
--                        or color_tool.GetColor(lab_subs, 1, c)
--                        or color_tool.GetColor(lab_subs, 2, c)
-+                        XCAFDoc_ColorTool.GetColor(lab_subs, 0, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 1, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 2, c)
-                     ):
-                         color_tool.SetInstanceColor(shape, 0, c)
-                         color_tool.SetInstanceColor(shape, 1, c)
diff --git a/srcpkgs/python3-occ/template b/srcpkgs/python3-occ/template
index 1d02354f2c41c2..3a1e7e5963645d 100644
--- a/srcpkgs/python3-occ/template
+++ b/srcpkgs/python3-occ/template
@@ -1,16 +1,17 @@
 # Template file for 'python3-occ'
 pkgname=python3-occ
-version=7.7.0
-revision=3
+version=7.9.0
+revision=1
 archs="i686* x86_64* armv7l* aarch64* ppc*"
 build_style=cmake
-configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None"
+build_helper="numpy"
+configure_args="-DCMAKE_BUILD_TYPE=None -DPYTHONOCC_MESHDS_NUMPY=ON"
 hostmakedepends="python3 python3-setuptools swig"
-makedepends="python3-devel occt-devel freetype-devel swig rapidjson"
+makedepends="python3-devel python3-numpy occt-devel freetype-devel swig rapidjson"
 depends="python3 occt freetype"
 short_desc="Industrial strength 3D CAD Python3 package"
 maintainer="Karl Nilsson <karl.robert.nilsson@gmail.com>"
 license="LGPL-3.0-or-later"
-homepage="http://pythonocc.org"
+homepage="https://github.com/tpaviot/pythonocc-core"
 distfiles="https://github.com/tpaviot/pythonocc-core/archive/${version}.tar.gz"
-checksum=9b27003b87799badfae04f8cacd03b8faa1309600c9de8021434d7511e718f82
+checksum=98e53657f54e8a9c3477a81c0b4a11bc6659d5f60123e263419521b42a8e111f

From 1c49e392f171e1670d7a88485220e0b551938823 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 4/8] freecad: rebuild for occt-7.9.0.

---
 srcpkgs/freecad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/freecad/template b/srcpkgs/freecad/template
index 06d5f0fa09ad45..8b9e44300ce144 100644
--- a/srcpkgs/freecad/template
+++ b/srcpkgs/freecad/template
@@ -1,7 +1,7 @@
 # Template file for 'freecad'
 pkgname=freecad
 version=1.0.0
-revision=2
+revision=3
 _pycxx_ver=7.1.8
 _ondsel_ver=91f70382beeb58b32432b5a82da3802e4c19199c
 build_style=cmake

From 03d7d1bfe5184cb5fae3b9120736730261fd107f Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 5/8] gmsh: rebuild for occt-7.9.0.

---
 srcpkgs/gmsh/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gmsh/template b/srcpkgs/gmsh/template
index c3727d90e4c93b..371b2f5cfc9c31 100644
--- a/srcpkgs/gmsh/template
+++ b/srcpkgs/gmsh/template
@@ -1,7 +1,7 @@
 # Template file for 'gmsh'
 pkgname=gmsh
 version=4.8.4
-revision=2
+revision=3
 build_style=cmake
 configure_args="-DENABLE_SYSTEM_CONTRIB=ON
  -DENABLE_HXT=$(vopt_if hxt ON OFF)

From d62e1efda5f370fe5e404f59b5b7a766ec0307fd Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 6/8] horizon: rebuild for occt-7.9.0.

---
 srcpkgs/horizon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/horizon/template b/srcpkgs/horizon/template
index 16bbf70822d672..160df13f96fae3 100644
--- a/srcpkgs/horizon/template
+++ b/srcpkgs/horizon/template
@@ -1,7 +1,7 @@
 # Template file for 'horizon'
 pkgname=horizon
 version=2.5.0
-revision=3
+revision=4
 build_style=gnu-makefile
 make_build_args="GOLD="
 make_install_target="install install-man"

From 451a3538d23731a9dff8a814cb91c5a689fb3e6f Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 7/8] kicad: rebuild for occt-7.9.0.

---
 srcpkgs/kicad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/kicad/template b/srcpkgs/kicad/template
index 34df918edabea4..6cb7e771efb8b6 100644
--- a/srcpkgs/kicad/template
+++ b/srcpkgs/kicad/template
@@ -2,7 +2,7 @@
 # XXX: keep in sync with kicad-doc
 pkgname=kicad
 version=9.0.1
-revision=1
+revision=2
 build_style=cmake
 build_helper="cmake-wxWidgets-gtk3"
 configure_args="-DKICAD_SCRIPTING_WXPYTHON=ON -DKICAD_USE_EGL=ON -DKICAD_BUILD_QA_TESTS=OFF

From f48087eaf566fe0dd42c0af109cb339a1b112465 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 8/8] librepcb: rebuild for occt-7.9.0.

---
 srcpkgs/librepcb/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/librepcb/template b/srcpkgs/librepcb/template
index eb46149e284e57..aa32d7f1ad2237 100644
--- a/srcpkgs/librepcb/template
+++ b/srcpkgs/librepcb/template
@@ -1,7 +1,7 @@
 # Template file for 'librepcb'
 pkgname=librepcb
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_QTQUICK_TEST=OFF"
 hostmakedepends="unzip qt5-qmake qt5-host-tools"

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PR PATCH] [Updated] occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (10 preceding siblings ...)
  2025-04-17 13:37 ` ii8
@ 2025-04-18 11:45 ` ii8
  2025-04-18 22:06 ` [PR PATCH] [Closed]: " ii8
  12 siblings, 0 replies; 14+ messages in thread
From: ii8 @ 2025-04-18 11:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 525 bytes --]

There is an updated pull request by ii8 against master on the void-packages repository

https://github.com/ii8/void-packages occt
https://github.com/void-linux/void-packages/pull/54462

occt: update to 7.9.0.
#### Testing the changes
- I tested the changes in this PR: **YES**

#### Local build testing
- I built this PR locally for my native architecture, x86_64-musl

This version fixes myriad segmentation faults in FreeCAD.

A patch file from https://github.com/void-linux/void-packages/pull/54462.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-occt-54462.patch --]
[-- Type: text/x-diff, Size: 145520 bytes --]

From ce394ba76f4be78f5ea9153d9e4b9160fb0d1052 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 17:44:19 +0000
Subject: [PATCH 1/8] occt: update to 7.9.0.

---
 common/shlibs                              | 128 +++++++++++----------
 srcpkgs/occt/patches/fix-cmake-regex.patch |   2 +-
 srcpkgs/occt/patches/fix-install-dir.patch |   2 +-
 srcpkgs/occt/patches/fix-osd-host.patch    |  14 +--
 srcpkgs/occt/patches/musl-fenv.patch       |  38 +++---
 srcpkgs/occt/patches/musl-mallinfo.patch   |  45 +++++---
 srcpkgs/occt/template                      |  10 +-
 7 files changed, 127 insertions(+), 112 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index bec2f470613330..cb1795e57cc8d5 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3453,67 +3453,73 @@ libvtkkissfft-9.3.so.1 vtk-9.3.0_1
 libvolume_key.so.1 volume_key-0.3.9_1
 libxxhash.so.0 libxxHash-0.6.5_2
 libcapnp_c.so.0 c-capnproto-0.3_1
-libTKernel.so.7.7 occt-7.7.1_1
-libTKXmlXCAF.so.7.7 occt-7.7.1_1
-libTKXmlTObj.so.7.7 occt-7.7.1_1
-libTKXmlL.so.7.7 occt-7.7.1_1
-libTKXml.so.7.7 occt-7.7.1_1
-libTKXSDRAW.so.7.7 occt-7.7.1_1
-libTKXSBase.so.7.7 occt-7.7.1_1
-libTKXMesh.so.7.7 occt-7.7.1_1
-libTKXDESTEP.so.7.7 occt-7.7.1_1
-libTKXDEIGES.so.7.7 occt-7.7.1_1
-libTKXDEDRAW.so.7.7 occt-7.7.1_1
-libTKXDECascade.so.7.7 occt-7.7.1_1
-libTKXDE.so.7.7 occt-7.7.1_1
-libTKXCAF.so.7.7 occt-7.7.1_1
-libTKViewerTest.so.7.7 occt-7.7.1_1
-libTKVRML.so.7.7 occt-7.7.1_1
-libTKVCAF.so.7.7 occt-7.7.1_1
-libTKV3d.so.7.7 occt-7.7.1_1
-libTKTopTest.so.7.7 occt-7.7.1_1
-libTKTopAlgo.so.7.7 occt-7.7.1_1
-libTKTObjDRAW.so.7.7 occt-7.7.1_1
-libTKTObj.so.7.7 occt-7.7.1_1
-libTKStdL.so.7.7 occt-7.7.1_1
-libTKStd.so.7.7 occt-7.7.1_1
-libTKShHealing.so.7.7 occt-7.7.1_1
-libTKService.so.7.7 occt-7.7.1_1
-libTKSTL.so.7.7 occt-7.7.1_1
-libTKSTEPBase.so.7.7 occt-7.7.1_1
-libTKSTEPAttr.so.7.7 occt-7.7.1_1
-libTKSTEP209.so.7.7 occt-7.7.1_1
-libTKSTEP.so.7.7 occt-7.7.1_1
-libTKRWMesh.so.7.7 occt-7.7.1_1
-libTKQADraw.so.7.7 occt-7.7.1_1
-libTKPrim.so.7.7 occt-7.7.1_1
-libTKOpenGlTest.so.7.7 occt-7.7.1_1
-libTKOpenGl.so.7.7 occt-7.7.1_1
-libTKOffset.so.7.7 occt-7.7.1_1
-libTKMeshVS.so.7.7 occt-7.7.1_1
-libTKMesh.so.7.7 occt-7.7.1_1
-libTKMath.so.7.7 occt-7.7.1_1
-libTKLCAF.so.7.7 occt-7.7.1_1
-libTKIGES.so.7.7 occt-7.7.1_1
-libTKHLR.so.7.7 occt-7.7.1_1
-libTKGeomBase.so.7.7 occt-7.7.1_1
-libTKGeomAlgo.so.7.7 occt-7.7.1_1
-libTKG3d.so.7.7 occt-7.7.1_1
-libTKG2d.so.7.7 occt-7.7.1_1
-libTKFillet.so.7.7 occt-7.7.1_1
-libTKFeat.so.7.7 occt-7.7.1_1
-libTKExpress.so.7.7 occt-7.7.1_1
-libTKDraw.so.7.7 occt-7.7.1_1
-libTKDCAF.so.7.7 occt-7.7.1_1
-libTKCDF.so.7.7 occt-7.7.1_1
-libTKCAF.so.7.7 occt-7.7.1_1
-libTKBool.so.7.7 occt-7.7.1_1
-libTKBinXCAF.so.7.7 occt-7.7.1_1
-libTKBinTObj.so.7.7 occt-7.7.1_1
-libTKBinL.so.7.7 occt-7.7.1_1
-libTKBin.so.7.7 occt-7.7.1_1
-libTKBRep.so.7.7 occt-7.7.1_1
-libTKBO.so.7.7 occt-7.7.1_1
+libTKDEPLY.so.7.9 occt-7.9.0_1
+libTKBRep.so.7.9 occt-7.9.0_1
+libTKDEOBJ.so.7.9 occt-7.9.0_1
+libTKExpress.so.7.9 occt-7.9.0_1
+libTKXSDRAWGLTF.so.7.9 occt-7.9.0_1
+libTKXSDRAWOBJ.so.7.9 occt-7.9.0_1
+libTKXSDRAWSTL.so.7.9 occt-7.9.0_1
+libTKDESTEP.so.7.9 occt-7.9.0_1
+libTKTopTest.so.7.9 occt-7.9.0_1
+libTKRWMesh.so.7.9 occt-7.9.0_1
+libTKQADraw.so.7.9 occt-7.9.0_1
+libTKernel.so.7.9 occt-7.9.0_1
+libTKMeshVS.so.7.9 occt-7.9.0_1
+libTKTObj.so.7.9 occt-7.9.0_1
+libTKBool.so.7.9 occt-7.9.0_1
+libTKFeat.so.7.9 occt-7.9.0_1
+libTKXmlXCAF.so.7.9 occt-7.9.0_1
+libTKDEIGES.so.7.9 occt-7.9.0_1
+libTKHLR.so.7.9 occt-7.9.0_1
+libTKBinL.so.7.9 occt-7.9.0_1
+libTKBinXCAF.so.7.9 occt-7.9.0_1
+libTKViewerTest.so.7.9 occt-7.9.0_1
+libTKCDF.so.7.9 occt-7.9.0_1
+libTKXSDRAWPLY.so.7.9 occt-7.9.0_1
+libTKService.so.7.9 occt-7.9.0_1
+libTKDEGLTF.so.7.9 occt-7.9.0_1
+libTKGeomBase.so.7.9 occt-7.9.0_1
+libTKCAF.so.7.9 occt-7.9.0_1
+libTKXDEDRAW.so.7.9 occt-7.9.0_1
+libTKMesh.so.7.9 occt-7.9.0_1
+libTKDraw.so.7.9 occt-7.9.0_1
+libTKTopAlgo.so.7.9 occt-7.9.0_1
+libTKTObjDRAW.so.7.9 occt-7.9.0_1
+libTKXSDRAW.so.7.9 occt-7.9.0_1
+libTKDCAF.so.7.9 occt-7.9.0_1
+libTKStd.so.7.9 occt-7.9.0_1
+libTKDE.so.7.9 occt-7.9.0_1
+libTKXml.so.7.9 occt-7.9.0_1
+libTKShHealing.so.7.9 occt-7.9.0_1
+libTKDECascade.so.7.9 occt-7.9.0_1
+libTKStdL.so.7.9 occt-7.9.0_1
+libTKBin.so.7.9 occt-7.9.0_1
+libTKXSDRAWDE.so.7.9 occt-7.9.0_1
+libTKOffset.so.7.9 occt-7.9.0_1
+libTKPrim.so.7.9 occt-7.9.0_1
+libTKXSBase.so.7.9 occt-7.9.0_1
+libTKXmlL.so.7.9 occt-7.9.0_1
+libTKBinTObj.so.7.9 occt-7.9.0_1
+libTKMath.so.7.9 occt-7.9.0_1
+libTKBO.so.7.9 occt-7.9.0_1
+libTKVCAF.so.7.9 occt-7.9.0_1
+libTKLCAF.so.7.9 occt-7.9.0_1
+libTKV3d.so.7.9 occt-7.9.0_1
+libTKDESTL.so.7.9 occt-7.9.0_1
+libTKXmlTObj.so.7.9 occt-7.9.0_1
+libTKOpenGl.so.7.9 occt-7.9.0_1
+libTKGeomAlgo.so.7.9 occt-7.9.0_1
+libTKXSDRAWIGES.so.7.9 occt-7.9.0_1
+libTKFillet.so.7.9 occt-7.9.0_1
+libTKG2d.so.7.9 occt-7.9.0_1
+libTKOpenGlTest.so.7.9 occt-7.9.0_1
+libTKXCAF.so.7.9 occt-7.9.0_1
+libTKDEVRML.so.7.9 occt-7.9.0_1
+libTKXMesh.so.7.9 occt-7.9.0_1
+libTKXSDRAWSTEP.so.7.9 occt-7.9.0_1
+libTKXSDRAWVRML.so.7.9 occt-7.9.0_1
+libTKG3d.so.7.9 occt-7.9.0_1
 libargon2.so.1 libargon2-20171227_1
 libdazzle-1.0.so.0 libdazzle-3.28.0_1
 libjsonrpc-glib-1.0.so.1 jsonrpc-glib-3.28.0_1
diff --git a/srcpkgs/occt/patches/fix-cmake-regex.patch b/srcpkgs/occt/patches/fix-cmake-regex.patch
index f38e0108ac7089..6cc5918bd28960 100644
--- a/srcpkgs/occt/patches/fix-cmake-regex.patch
+++ b/srcpkgs/occt/patches/fix-cmake-regex.patch
@@ -3,7 +3,7 @@
 
 --- a/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 00:18:42.763819658 -0500
 +++ b/adm/templates/OpenCASCADEConfig.cmake.in	2019-01-27 23:40:32.872489521 -0500
-@@ -26,7 +26,7 @@
+@@ -27,7 +27,7 @@
  if (OpenCASCADE_INSTALL_PREFIX MATCHES "/cmake$")
    get_filename_component (OpenCASCADE_INSTALL_PREFIX "${OpenCASCADE_INSTALL_PREFIX}" PATH)
  endif()
diff --git a/srcpkgs/occt/patches/fix-install-dir.patch b/srcpkgs/occt/patches/fix-install-dir.patch
index 931587bef99048..0dc6660f0a10f2 100644
--- a/srcpkgs/occt/patches/fix-install-dir.patch
+++ b/srcpkgs/occt/patches/fix-install-dir.patch
@@ -1,7 +1,7 @@
 diff --color -upr occt-7.7.1.orig/adm/cmake/occt_macros.cmake occt-7.7.1/adm/cmake/occt_macros.cmake
 --- occt-7.7.1.orig/adm/cmake/occt_macros.cmake	2023-05-31 20:05:47.619869450 +0200
 +++ occt-7.7.1/adm/cmake/occt_macros.cmake	2023-05-31 20:07:25.611036417 +0200
-@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
+@@ -762,7 +762,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
  
    install (CODE
    "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
diff --git a/srcpkgs/occt/patches/fix-osd-host.patch b/srcpkgs/occt/patches/fix-osd-host.patch
index ef705c7291381d..922f61072619db 100644
--- a/srcpkgs/occt/patches/fix-osd-host.patch
+++ b/srcpkgs/occt/patches/fix-osd-host.patch
@@ -2,12 +2,12 @@
 
 --- a/src/OSD/OSD_Host.cxx
 +++ b/src/OSD/OSD_Host.cxx
-@@ -124,7 +124,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+@@ -140,7 +140,7 @@ TCollection_AsciiString OSD_Host::InternetAddress(){
+   TCollection_AsciiString result, host;
  
-  host = HostName();
-  memcpy(&internet_address,
--        gethostbyname(host.ToCString()),
-+        gethostbyname("localhost"),
-         sizeof(struct hostent));
+   host = HostName();
+-  memcpy(&internet_address, gethostbyname(host.ToCString()), sizeof(struct hostent));
++  memcpy(&internet_address, gethostbyname("localhost"), sizeof(struct hostent));
  
-  // Gets each bytes into integers
+   // Gets each bytes into integers
+   a = (unsigned char)internet_address.h_addr_list[0][0];
diff --git a/srcpkgs/occt/patches/musl-fenv.patch b/srcpkgs/occt/patches/musl-fenv.patch
index a8a776ce29a9d0..9756cca207bbac 100644
--- a/srcpkgs/occt/patches/musl-fenv.patch
+++ b/srcpkgs/occt/patches/musl-fenv.patch
@@ -5,32 +5,32 @@ is probably wrong, but I don't have a replacement for the
 non-posix functions fegetexcept(3) and feenableexcept(3).
 """
 
---- a/src/OSD/OSD_signal.cxx.orig	2022-07-22 10:53:38.000000000 +0200
-+++ b/src/OSD/OSD_signal.cxx	2022-10-06 09:19:02.286414340 +0200
-@@ -761,7 +761,7 @@ typedef void (* SIG_PFV) (int);
+--- a/src/OSD/OSD_signal.cxx
++++ b/src/OSD/OSD_signal.cxx
+@@ -769,7 +769,7 @@ typedef void (*SIG_PFV)(int);
  
- #include <signal.h>
+   #include <signal.h>
  
--#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
-+#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) &&  defined(__GLIBC__)
-   #include <sys/signal.h>
- #endif
+-  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
++  #if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) && defined(__GLIBC__)
+     #include <sys/signal.h>
+   #endif
  
-@@ -977,7 +977,7 @@ static void SegvHandler(const int theSig
- //=======================================================================
- void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
+@@ -994,7 +994,7 @@ static void SegvHandler(const int              theSignal,
+ 
+ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
-   feclearexcept (FE_ALL_EXCEPT);
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
+   feclearexcept(FE_ALL_EXCEPT);
    if (theFloatingSignal)
    {
-@@ -1010,7 +1010,7 @@ void OSD::SetFloatingSignal (Standard_Bo
- //=======================================================================
+@@ -1025,7 +1025,7 @@ void OSD::SetFloatingSignal(Standard_Boolean theFloatingSignal)
+ 
  Standard_Boolean OSD::ToCatchFloatingSignals()
  {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
+-  #if defined(__linux__)
++  #if defined(__linux__) && defined(__GLIBC__)
    return (fegetexcept() & _OSD_FPX) != 0;
- #else
+   #else
    return Standard_False;
diff --git a/srcpkgs/occt/patches/musl-mallinfo.patch b/srcpkgs/occt/patches/musl-mallinfo.patch
index 1ce5b16b793f95..158d954fe9c52f 100644
--- a/srcpkgs/occt/patches/musl-mallinfo.patch
+++ b/srcpkgs/occt/patches/musl-mallinfo.patch
@@ -1,21 +1,32 @@
-In musl libc there is no struct mallinfo and no function mallinf()
-
---- a/src/OSD/OSD_MemInfo.cxx.orig	2022-10-06 09:21:55.466236104 +0200
-+++ b/src/OSD/OSD_MemInfo.cxx	2022-10-06 09:25:34.105323581 +0200
-@@ -188,12 +188,16 @@ void OSD_MemInfo::Update()
+--- a/src/OSD/OSD_MemInfo.cxx
++++ b/src/OSD/OSD_MemInfo.cxx
+@@ -165,18 +165,23 @@ void OSD_MemInfo::Update()
+   #elif (defined(__linux__) || defined(__linux))
+   if (IsActive(MemHeapUsage))
+   {
+-    #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+-      #if __GLIBC_PREREQ(2, 33)
++    #if defined(__GLIBC__)
++      #define HAS_MALLINFO
++      #if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 33)
+         #define HAS_MALLINFO2
+       #endif
      #endif
-   #endif
  
-+  #if defined(__GLIBC__)
-   #ifdef HAS_MALLINFO2
-     const struct mallinfo2 aMI = mallinfo2();
-   #else
-     const struct mallinfo aMI = mallinfo();
-   #endif
-     myCounters[MemHeapUsage] = aMI.uordblks;
-+  #else
-+    myCounters[MemHeapUsage] = 0;
-+  #endif
+-    #ifdef HAS_MALLINFO2
+-    const struct mallinfo2 aMI = mallinfo2();
++    #ifdef HAS_MALLINFO
++      #ifdef HAS_MALLINFO2
++      const struct mallinfo2 aMI = mallinfo2();
++      #else
++      const struct mallinfo aMI = mallinfo();
++      #endif
++      myCounters[MemHeapUsage] = aMI.uordblks;
+     #else
+-    const struct mallinfo aMI = mallinfo();
++      myCounters[MemHeapUsage] = 0;
+     #endif
+-    myCounters[MemHeapUsage] = aMI.uordblks;
    }
  
-   if (!IsActive (MemVirtual)
+   if (!IsActive(MemVirtual) && !IsActive(MemWorkingSet) && !IsActive(MemWorkingSetPeak)
diff --git a/srcpkgs/occt/template b/srcpkgs/occt/template
index 296a52de5a1b5a..86c38035025910 100644
--- a/srcpkgs/occt/template
+++ b/srcpkgs/occt/template
@@ -1,13 +1,11 @@
 # Template file for 'occt'
 pkgname=occt
-version=7.7.1
+version=7.9.0
 revision=1
 _gittag="V${version//./_}"
 build_style=cmake
-# XXX: re-enable -DUSE_TBB=ON if possible when updating
-configure_args="-DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
- -DINSTALL_SAMPLES=ON"
-makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tcl-devel
+configure_args="-DUSE_TBB=ON -DUSE_FREEIMAGE=ON -DUSE_VTK=OFF"
+makedepends="tbb-devel freetype-devel glu-devel freeimage-devel tcl-devel
  tk-devel"
 short_desc="OpenCASCADE Technology - library for CAD/CAM/CAE applications"
 maintainer="Piraty <mail@piraty.dev>"
@@ -16,7 +14,7 @@ homepage="https://www.opencascade.com"
 # distfile: use git instead of official tarball, which requires registration
 # see https://www.opencascade.com/content/packaging-again-debian
 distfiles="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/${_gittag};sf=tgz>occt-${_gittag}.tar.gz"
-checksum=f413d30a8a06d6164e94860a652cbc96ea58fe262df36ce4eaa92a9e3561fd12
+checksum=ff118a524ec451867e8f0ac3b631522c98f2b4353c7dbf2786bf239589909ec6
 conflicts="oce>=0"
 if [ "$XBPS_TARGET_LIBC" = musl ]; then
 	makedepends+=" libexecinfo-devel"

From dfb6b7f4ddb83793a43d40befcbf083c4d27c0ad Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Wed, 16 Apr 2025 21:12:22 +0100
Subject: [PATCH 2/8] swig: update to 4.3.0.

---
 srcpkgs/swig/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/swig/template b/srcpkgs/swig/template
index bffc4e91ffb355..f9d4c65f1f2fd4 100644
--- a/srcpkgs/swig/template
+++ b/srcpkgs/swig/template
@@ -1,14 +1,14 @@
 # Template file for 'swig'
 pkgname=swig
-version=4.1.1
+version=4.3.0
 revision=1
 build_style=gnu-configure
 configure_args="--with-pcre2-prefix=${XBPS_CROSS_BASE}/usr"
 hostmakedepends="bison"
-makedepends="zlib-devel pcre2-devel"
+makedepends="zlib-devel pcre2-devel boost-devel"
 short_desc="Simplified Wrapper and Interface Generator"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="http://www.swig.org"
 distfiles="${SOURCEFORGE_SITE}/swig/swig-${version}.tar.gz"
-checksum=2af08aced8fcd65cdb5cc62426768914bedc735b1c250325203716f78e39ac9b
+checksum=f7203ef796f61af986c70c05816236cbd0d31b7aa9631e5ab53020ab7804aa9e

From d8793c227fcca9a3ce94f66ccd88dd3e9e2061b9 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:34 +0000
Subject: [PATCH 3/8] python3-occ: update to 7.9.0.

---
 srcpkgs/python3-occ/patches/occt-7.7.1.patch | 2561 ------------------
 srcpkgs/python3-occ/template                 |   13 +-
 2 files changed, 7 insertions(+), 2567 deletions(-)
 delete mode 100644 srcpkgs/python3-occ/patches/occt-7.7.1.patch

diff --git a/srcpkgs/python3-occ/patches/occt-7.7.1.patch b/srcpkgs/python3-occ/patches/occt-7.7.1.patch
deleted file mode 100644
index 70861a77853b69..00000000000000
--- a/srcpkgs/python3-occ/patches/occt-7.7.1.patch
+++ /dev/null
@@ -1,2561 +0,0 @@
-From 6ba4509edb333494d35a40c01192ab5e236acdda Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Mon, 3 Apr 2023 14:01:20 +0200
-Subject: [PATCH 1/4] update swig files to occt-771
-
----
- src/SWIG_files/common/EnumTemplates.i      |   1 -
- src/SWIG_files/headers/AIS_module.hxx      |   2 +
- src/SWIG_files/headers/BRepFill_module.hxx |   1 +
- src/SWIG_files/wrapper/AIS.i               | 127 ++++++++----
- src/SWIG_files/wrapper/AIS.pyi             |  12 +-
- src/SWIG_files/wrapper/BRepAlgo.i          |  26 +++
- src/SWIG_files/wrapper/BRepAlgo.pyi        |   2 +
- src/SWIG_files/wrapper/BRepBlend.i         |  44 +++--
- src/SWIG_files/wrapper/BRepBlend.pyi       |  14 +-
- src/SWIG_files/wrapper/BRepExtrema.i       | 218 +++++----------------
- src/SWIG_files/wrapper/BRepExtrema.pyi     |  23 +--
- src/SWIG_files/wrapper/BRepFill.i          |  48 +++++
- src/SWIG_files/wrapper/BRepFill.pyi        |  19 ++
- src/SWIG_files/wrapper/BRepOffset.i        |   3 +
- src/SWIG_files/wrapper/BRepOffset.pyi      |   2 +
- src/SWIG_files/wrapper/BRepOffsetAPI.i     |  11 ++
- src/SWIG_files/wrapper/BRepOffsetAPI.pyi   |   1 +
- src/SWIG_files/wrapper/BSplCLib.i          |  23 +++
- src/SWIG_files/wrapper/BSplCLib.pyi        |   3 +
- src/SWIG_files/wrapper/ChFiDS.i            |  14 ++
- src/SWIG_files/wrapper/ChFiDS.pyi          |   3 +
- src/SWIG_files/wrapper/GeomInt.i           |  23 +++
- src/SWIG_files/wrapper/GeomInt.pyi         |   5 +
- src/SWIG_files/wrapper/STEPCAFControl.i    | 140 ++++++-------
- src/SWIG_files/wrapper/STEPCAFControl.pyi  |  32 +--
- src/SWIG_files/wrapper/STEPConstruct.i     |  26 +++
- src/SWIG_files/wrapper/STEPConstruct.pyi   |   2 +
- src/SWIG_files/wrapper/ShapeUpgrade.i      |   1 +
- src/SWIG_files/wrapper/StdPrs.i            |  12 +-
- src/SWIG_files/wrapper/StdPrs.pyi          |   4 +-
- src/SWIG_files/wrapper/StepToGeom.i        |  16 --
- src/SWIG_files/wrapper/XCAFDoc.i           |  78 +++++---
- src/SWIG_files/wrapper/XCAFDoc.pyi         |  56 ++++--
- src/SWIG_files/wrapper/XCAFPrs.i           |  10 +-
- 34 files changed, 592 insertions(+), 410 deletions(-)
-
-diff --git a/src/SWIG_files/common/EnumTemplates.i b/src/SWIG_files/common/EnumTemplates.i
-index b66537d8..69af927f 100644
---- a/src/SWIG_files/common/EnumTemplates.i
-+++ b/src/SWIG_files/common/EnumTemplates.i
-@@ -15,7 +15,6 @@ ENUM_OUTPUT_TYPEMAPS(BRepOffset_Status);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_DisplayPriority);
- ENUM_OUTPUT_TYPEMAPS(Graphic3d_NameOfMaterial);
- ENUM_OUTPUT_TYPEMAPS(GeomAbs_Shape);
--ENUM_OUTPUT_TYPEMAPS(ProxPnt_Status);
- ENUM_OUTPUT_TYPEMAPS(Aspect_TypeOfLine);
- ENUM_OUTPUT_TYPEMAPS(PrsDim_KindOfSurface);
- ENUM_OUTPUT_TYPEMAPS(DsgPrs_ArrowSide);
-diff --git a/src/SWIG_files/headers/AIS_module.hxx b/src/SWIG_files/headers/AIS_module.hxx
-index ee7050ea..97fb3b69 100644
---- a/src/SWIG_files/headers/AIS_module.hxx
-+++ b/src/SWIG_files/headers/AIS_module.hxx
-@@ -22,12 +22,14 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<AIS.hxx>
- #include<AIS_AngleDimension.hxx>
- #include<AIS_Animation.hxx>
-+#include<AIS_AnimationAxisRotation.hxx>
- #include<AIS_AnimationCamera.hxx>
- #include<AIS_AnimationObject.hxx>
- #include<AIS_AnimationTimer.hxx>
- #include<AIS_AttributeFilter.hxx>
- #include<AIS_Axis.hxx>
- #include<AIS_BadEdgeFilter.hxx>
-+#include<AIS_BaseAnimationObject.hxx>
- #include<AIS_C0RegularityFilter.hxx>
- #include<AIS_CameraFrustum.hxx>
- #include<AIS_Chamf2dDimension.hxx>
-diff --git a/src/SWIG_files/headers/BRepFill_module.hxx b/src/SWIG_files/headers/BRepFill_module.hxx
-index 73975e24..ef638100 100644
---- a/src/SWIG_files/headers/BRepFill_module.hxx
-+++ b/src/SWIG_files/headers/BRepFill_module.hxx
-@@ -67,6 +67,7 @@ along with pythonOCC.  If not, see <http://www.gnu.org/licenses/>.
- #include<BRepFill_SequenceOfSection.hxx>
- #include<BRepFill_ShapeLaw.hxx>
- #include<BRepFill_Sweep.hxx>
-+#include<BRepFill_ThruSectionErrorStatus.hxx>
- #include<BRepFill_TransitionStyle.hxx>
- #include<BRepFill_TrimEdgeTool.hxx>
- #include<BRepFill_TrimShellCorner.hxx>
-diff --git a/src/SWIG_files/wrapper/AIS.i b/src/SWIG_files/wrapper/AIS.i
-index bf1f6b10..8f58d69a 100644
---- a/src/SWIG_files/wrapper/AIS.i
-+++ b/src/SWIG_files/wrapper/AIS.i
-@@ -577,8 +577,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TrihedronOwner)
- %wrap_handle(AIS_TypeFilter)
- %wrap_handle(AIS_AnimationCamera)
--%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_Axis)
-+%wrap_handle(AIS_BaseAnimationObject)
- %wrap_handle(AIS_Circle)
- %wrap_handle(AIS_ColorScale)
- %wrap_handle(AIS_ConnectedInteractive)
-@@ -595,6 +595,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane
- %wrap_handle(AIS_TextLabel)
- %wrap_handle(AIS_Triangulation)
- %wrap_handle(AIS_Trihedron)
-+%wrap_handle(AIS_AnimationAxisRotation)
-+%wrap_handle(AIS_AnimationObject)
- %wrap_handle(AIS_ColoredShape)
- %wrap_handle(AIS_TexturedShape)
- /* end handles declaration */
-@@ -8532,41 +8534,6 @@ opencascade::handle<V3d_View>
- 	}
- };
- 
--/****************************
--* class AIS_AnimationObject *
--****************************/
--class AIS_AnimationObject : public AIS_Animation {
--	public:
--		/****************** AIS_AnimationObject ******************/
--		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
--		%feature("compactdefaultargs") AIS_AnimationObject;
--		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param theanimationname animation identifier @param thecontext interactive context where object have been displayed @param theobject object to apply local transformation @param thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param thetrsfend local transformation at the end of animation.
--
--Parameters
------------
--theAnimationName: TCollection_AsciiString
--theContext: AIS_InteractiveContext
--theObject: AIS_InteractiveObject
--theTrsfStart: gp_Trsf
--theTrsfEnd: gp_Trsf
--
--Returns
---------
--None
--") AIS_AnimationObject;
--		 AIS_AnimationObject(const TCollection_AsciiString & theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
--
--};
--
--
--%make_alias(AIS_AnimationObject)
--
--%extend AIS_AnimationObject {
--	%pythoncode {
--	__repr__ = _dumps_object
--	}
--};
--
- /*****************
- * class AIS_Axis *
- *****************/
-@@ -8855,6 +8822,23 @@ None
- 	}
- };
- 
-+/********************************
-+* class AIS_BaseAnimationObject *
-+********************************/
-+%nodefaultctor AIS_BaseAnimationObject;
-+class AIS_BaseAnimationObject : public AIS_Animation {
-+	public:
-+};
-+
-+
-+%make_alias(AIS_BaseAnimationObject)
-+
-+%extend AIS_BaseAnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /**************************
- * class AIS_CameraFrustum *
- **************************/
-@@ -16143,6 +16127,77 @@ Standard_ShortReal
- 	}
- };
- 
-+/**********************************
-+* class AIS_AnimationAxisRotation *
-+**********************************/
-+class AIS_AnimationAxisRotation : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationAxisRotation ******************/
-+		/**** md5 signature: 819427e2c422233cc067da4633992952 ****/
-+		%feature("compactdefaultargs") AIS_AnimationAxisRotation;
-+		%feature("autodoc", "Constructor with initialization. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply rotation @param[in] theaxis rotation axis @param[in] theanglestart rotation angle at the start of animation @param[in] theangleend rotation angle at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theAxis: gp_Ax1
-+theAngleStart: float
-+theAngleEnd: float
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationAxisRotation;
-+		 AIS_AnimationAxisRotation(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Ax1 & theAxis, const Standard_Real theAngleStart, const Standard_Real theAngleEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationAxisRotation)
-+
-+%extend AIS_AnimationAxisRotation {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
-+/****************************
-+* class AIS_AnimationObject *
-+****************************/
-+class AIS_AnimationObject : public AIS_BaseAnimationObject {
-+	public:
-+		/****************** AIS_AnimationObject ******************/
-+		/**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/
-+		%feature("compactdefaultargs") AIS_AnimationObject;
-+		%feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply local transformation @param[in] thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param[in] thetrsfend local transformation at the end of animation.
-+
-+Parameters
-+----------
-+theAnimationName: str
-+theContext: AIS_InteractiveContext
-+theObject: AIS_InteractiveObject
-+theTrsfStart: gp_Trsf
-+theTrsfEnd: gp_Trsf
-+
-+Returns
-+-------
-+None
-+") AIS_AnimationObject;
-+		 AIS_AnimationObject(TCollection_AsciiString theAnimationName, const opencascade::handle<AIS_InteractiveContext> & theContext, const opencascade::handle<AIS_InteractiveObject> & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd);
-+
-+};
-+
-+
-+%make_alias(AIS_AnimationObject)
-+
-+%extend AIS_AnimationObject {
-+	%pythoncode {
-+	__repr__ = _dumps_object
-+	}
-+};
-+
- /*************************
- * class AIS_ColoredShape *
- *************************/
-diff --git a/src/SWIG_files/wrapper/AIS.pyi b/src/SWIG_files/wrapper/AIS.pyi
-index a75ef4ba..da4a3977 100644
---- a/src/SWIG_files/wrapper/AIS.pyi
-+++ b/src/SWIG_files/wrapper/AIS.pyi
-@@ -1021,9 +1021,6 @@ class AIS_AnimationCamera(AIS_Animation):
-     def SetView(self, theView: V3d_View) -> None: ...
-     def View(self) -> V3d_View: ...
- 
--class AIS_AnimationObject(AIS_Animation):
--    def __init__(self, theAnimationName: TCollection_AsciiString, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
--
- class AIS_Axis(AIS_InteractiveObject):
-     @overload
-     def __init__(self, aComponent: Geom_Line) -> None: ...
-@@ -1050,6 +1047,9 @@ class AIS_Axis(AIS_InteractiveObject):
-     def UnsetColor(self) -> None: ...
-     def UnsetWidth(self) -> None: ...
- 
-+class AIS_BaseAnimationObject(AIS_Animation):
-+    pass
-+
- class AIS_CameraFrustum(AIS_InteractiveObject):
-     def __init__(self) -> None: ...
-     def AcceptDisplayMode(self, theMode: int) -> bool: ...
-@@ -1652,6 +1652,12 @@ class AIS_XRTrackedDevice(AIS_InteractiveObject):
-     def SetUnitFactor(self, theFactor: float) -> None: ...
-     def UnitFactor(self) -> float: ...
- 
-+class AIS_AnimationAxisRotation(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theAxis: gp_Ax1, theAngleStart: float, theAngleEnd: float) -> None: ...
-+
-+class AIS_AnimationObject(AIS_BaseAnimationObject):
-+    def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ...
-+
- class AIS_ColoredShape(AIS_Shape):
-     @overload
-     def __init__(self, theShape: TopoDS_Shape) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.i b/src/SWIG_files/wrapper/BRepAlgo.i
-index 3860648e..bd9e2f38 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.i
-+++ b/src/SWIG_files/wrapper/BRepAlgo.i
-@@ -921,6 +921,17 @@ None
- ") CutEdge;
- 		void CutEdge(const TopoDS_Edge & E, const TopTools_ListOfShape & VonE, TopTools_ListOfShape & NE);
- 
-+		/****************** GetTolConf ******************/
-+		/**** md5 signature: 7e9f7b87eb3b20edee9e3a86157928cd ****/
-+		%feature("compactdefaultargs") GetTolConf;
-+		%feature("autodoc", "Get maximal tolerance used for comparing distaces between vertices. .
-+
-+Returns
-+-------
-+float
-+") GetTolConf;
-+		Standard_Real GetTolConf();
-+
- 		/****************** GetVerticesForSubstitute ******************/
- 		/**** md5 signature: 3b0ea732ecf076dde3f931f0997c07aa ****/
- 		%feature("compactdefaultargs") GetVerticesForSubstitute;
-@@ -1014,6 +1025,21 @@ None
- ") SetImageVV;
- 		void SetImageVV(const BRepAlgo_Image & theImageVV);
- 
-+		/****************** SetTolConf ******************/
-+		/**** md5 signature: 1c312d5c00a3d856c91eb31857ae32c6 ****/
-+		%feature("compactdefaultargs") SetTolConf;
-+		%feature("autodoc", "Set maximal tolerance used for comparing distaces between vertices. .
-+
-+Parameters
-+----------
-+theTolConf: float
-+
-+Returns
-+-------
-+None
-+") SetTolConf;
-+		void SetTolConf(const Standard_Real theTolConf);
-+
- 		/****************** UpdateVEmap ******************/
- 		/**** md5 signature: 491681c63af221fbd7247e01d389bbc0 ****/
- 		%feature("compactdefaultargs") UpdateVEmap;
-diff --git a/src/SWIG_files/wrapper/BRepAlgo.pyi b/src/SWIG_files/wrapper/BRepAlgo.pyi
-index 5ee7ab94..20ecddc9 100644
---- a/src/SWIG_files/wrapper/BRepAlgo.pyi
-+++ b/src/SWIG_files/wrapper/BRepAlgo.pyi
-@@ -86,6 +86,7 @@ class BRepAlgo_Loop:
-     def AddConstEdges(self, LE: TopTools_ListOfShape) -> None: ...
-     def AddEdge(self, E: TopoDS_Edge, LV: TopTools_ListOfShape) -> None: ...
-     def CutEdge(self, E: TopoDS_Edge, VonE: TopTools_ListOfShape, NE: TopTools_ListOfShape) -> None: ...
-+    def GetTolConf(self) -> float: ...
-     def GetVerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def Init(self, F: TopoDS_Face) -> None: ...
-     def NewEdges(self, E: TopoDS_Edge) -> TopTools_ListOfShape: ...
-@@ -93,6 +94,7 @@ class BRepAlgo_Loop:
-     def NewWires(self) -> TopTools_ListOfShape: ...
-     def Perform(self) -> None: ...
-     def SetImageVV(self, theImageVV: BRepAlgo_Image) -> None: ...
-+    def SetTolConf(self, theTolConf: float) -> None: ...
-     def UpdateVEmap(self, theVEmap: TopTools_IndexedDataMapOfShapeListOfShape) -> None: ...
-     def VerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ...
-     def WiresToFaces(self) -> None: ...
-diff --git a/src/SWIG_files/wrapper/BRepBlend.i b/src/SWIG_files/wrapper/BRepBlend.i
-index 509a2525..b8131099 100644
---- a/src/SWIG_files/wrapper/BRepBlend.i
-+++ b/src/SWIG_files/wrapper/BRepBlend.i
-@@ -3508,7 +3508,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: e410fc1bc97982de557150e942b13c80 ****/
-+		/**** md5 signature: 5c6445d58f45808f7c3defd1db894a35 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3522,9 +3522,9 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -3533,10 +3533,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 78e8905aafd910d0fa3a7b23c096467b ****/
-+		/**** md5 signature: 452fb9b79df54fb801f2f70d066f611b ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -3550,7 +3550,7 @@ FinvP2: Blend_CurvPointFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecRst1: bool
- RecP1: bool
-@@ -3562,7 +3562,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5559,7 +5559,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 3ebeca31e507208cd42bab74df3ed6e3 ****/
-+		/**** md5 signature: 86cf3650fa597d7655c244c1866126f2 ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5572,9 +5572,10 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5583,10 +5584,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 691664aa4fe132192d2ccf25ba05720a ****/
-+		/**** md5 signature: 429fbdc03f84a4a14fbebef94ad27ee5 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5599,7 +5600,8 @@ FinvC: Blend_SurfCurvFuncInv
- Pdep: float
- Pmax: float
- Soldep: math_Vector
--Tolesp: float
-+Tol3d: float
-+Tol2d: float
- TolGuide: float
- RecRst: bool
- RecP: bool
-@@ -5610,7 +5612,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol);
- 
- };
- 
-@@ -5795,7 +5797,7 @@ opencascade::handle<BRepBlend_Line>
- 		const opencascade::handle<BRepBlend_Line> & Line();
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: ef3b3700f467db4ea875b65f539d9955 ****/
-+		/**** md5 signature: 6d94e3dcc7c71857d2c24ced3358703f ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5806,9 +5808,9 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- MaxStep: float
-+Tol3d: float
- TolGuide: float
- Soldep: math_Vector
--Tolesp: float
- Fleche: float
- Appro: bool,optional
- 	default value is Standard_False
-@@ -5817,10 +5819,10 @@ Returns
- -------
- None
- ") Perform;
--		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
-+		void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: a2bca51a10d7f020b86504fe9860626e ****/
-+		/**** md5 signature: 92db8d0914da0712dd54b302697b3aa3 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5829,7 +5831,7 @@ Parameters
- F: Blend_Function
- Pdep: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- Pos1: TopAbs_State
- Pos2: TopAbs_State
-@@ -5838,10 +5840,10 @@ Returns
- -------
- bool
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2);
- 
- 		/****************** PerformFirstSection ******************/
--		/**** md5 signature: 39c72a7c59d31a28e720252eee26feee ****/
-+		/**** md5 signature: 7464aaa5cedcb060541546a3a1ff5540 ****/
- 		%feature("compactdefaultargs") PerformFirstSection;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -5852,7 +5854,7 @@ FInv: Blend_FuncInv
- Pdep: float
- Pmax: float
- ParDep: math_Vector
--Tolesp: float
-+Tol3d: float
- TolGuide: float
- RecOnS1: bool
- RecOnS2: bool
-@@ -5862,7 +5864,7 @@ Returns
- -------
- Psol: float
- ") PerformFirstSection;
--		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
-+		Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol);
- 
- 		/****************** SetDomainsToRecadre ******************/
- 		/**** md5 signature: 10664ebffbd6ed784502d7d4acfa5a93 ****/
-diff --git a/src/SWIG_files/wrapper/BRepBlend.pyi b/src/SWIG_files/wrapper/BRepBlend.pyi
-index 03deabc7..cbe9c845 100644
---- a/src/SWIG_files/wrapper/BRepBlend.pyi
-+++ b/src/SWIG_files/wrapper/BRepBlend.pyi
-@@ -346,8 +346,8 @@ class BRepBlend_RstRstLineBuilder:
-     def Decroch2Start(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_SurfCurvConstRadInv(Blend_SurfCurvFuncInv):
-     def __init__(self, S: Adaptor3d_Surface, C: Adaptor3d_Curve, Cg: Adaptor3d_Curve) -> None: ...
-@@ -519,8 +519,8 @@ class BRepBlend_SurfRstLineBuilder:
-     def DecrochStart(self) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
--    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, Tol2d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, Tol2d: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
- 
- class BRepBlend_Walking:
-     def __init__(self, Surf1: Adaptor3d_Surface, Surf2: Adaptor3d_Surface, Domain1: Adaptor3d_TopolTool, Domain2: Adaptor3d_TopolTool, HGuide: ChFiDS_ElSpine) -> None: ...
-@@ -536,11 +536,11 @@ class BRepBlend_Walking:
-     def Continu(self, F: Blend_Function, FInv: Blend_FuncInv, P: float, OnS1: bool) -> bool: ...
-     def IsDone(self) -> bool: ...
-     def Line(self) -> BRepBlend_Line: ...
--    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-+    def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-+    def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ...
-     @overload
--    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-+    def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ...
-     def SetDomainsToRecadre(self, RecDomain1: Adaptor3d_TopolTool, RecDomain2: Adaptor3d_TopolTool) -> None: ...
-     def TwistOnS1(self) -> bool: ...
-     def TwistOnS2(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.i b/src/SWIG_files/wrapper/BRepExtrema.i
-index bc15b17e..18a48b42 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.i
-+++ b/src/SWIG_files/wrapper/BRepExtrema.i
-@@ -48,6 +48,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<gp_module.hxx>
- #include<Bnd_module.hxx>
- #include<BVH_module.hxx>
-+#include<Poly_module.hxx>
- #include<GeomAdaptor_module.hxx>
- #include<Geom_module.hxx>
- #include<Geom2d_module.hxx>
-@@ -55,6 +56,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- #include<Adaptor2d_module.hxx>
- #include<TopLoc_module.hxx>
- #include<Message_module.hxx>
-+#include<TShort_module.hxx>
- #include<TColgp_module.hxx>
- #include<TColStd_module.hxx>
- #include<TCollection_module.hxx>
-@@ -68,6 +70,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html"
- %import gp.i
- %import Bnd.i
- %import BVH.i
-+%import Poly.i
- 
- %pythoncode {
- from enum import IntEnum
-@@ -1645,7 +1648,7 @@ None
- 		 BRepExtrema_ProximityDistTool();
- 
- 		/****************** BRepExtrema_ProximityDistTool ******************/
--		/**** md5 signature: b9731e05e5136c7110e50a313b036c02 ****/
-+		/**** md5 signature: b080844c8fa666dae8c0e8db8d27e87e ****/
- 		%feature("compactdefaultargs") BRepExtrema_ProximityDistTool;
- 		%feature("autodoc", "Creates new tool for the given element sets.
- 
-@@ -1653,6 +1656,8 @@ Parameters
- ----------
- theSet1: BRepExtrema_TriangleSet
- theNbSamples1: int
-+theAddVertices1: BVH_Array3d
-+theAddStatus1: NCollection_Vector<ProxPnt_Status>
- theSet2: BRepExtrema_TriangleSet
- theShapeList1: BRepExtrema_ShapeList
- theShapeList2: BRepExtrema_ShapeList
-@@ -1661,7 +1666,7 @@ Returns
- -------
- None
- ") BRepExtrema_ProximityDistTool;
--		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
-+		 BRepExtrema_ProximityDistTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const Standard_Integer theNbSamples1, const BVH_Array3d & theAddVertices1, const NCollection_Vector<ProxPnt_Status> & theAddStatus1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
- 
- 		/****************** Accept ******************/
- 		/**** md5 signature: 47868288da8d60ae3574004f3eef6f3b ****/
-@@ -1679,6 +1684,40 @@ bool
- ") Accept;
- 		virtual Standard_Boolean Accept(const Standard_Integer theSgmIdx, const Standard_Real &);
- 
-+		/****************** IsEdgeOnBorder ******************/
-+		/**** md5 signature: 7f2df1d45fe4dd10cb81da19c83428fd ****/
-+		%feature("compactdefaultargs") IsEdgeOnBorder;
-+		%feature("autodoc", "Returns true if the edge is on the boarder.
-+
-+Parameters
-+----------
-+theTrgIdx: int
-+theFirstEdgeNodeIdx: int
-+theSecondEdgeNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsEdgeOnBorder;
-+		static Standard_Boolean IsEdgeOnBorder(const Standard_Integer theTrgIdx, const Standard_Integer theFirstEdgeNodeIdx, const Standard_Integer theSecondEdgeNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
-+		/****************** IsNodeOnBorder ******************/
-+		/**** md5 signature: 6a6c9031bf497d7acf6e95de1f2784f6 ****/
-+		%feature("compactdefaultargs") IsNodeOnBorder;
-+		%feature("autodoc", "Returns true if the node is on the boarder.
-+
-+Parameters
-+----------
-+theNodeIdx: int
-+theTr: Handle ( Poly_Triangulation )
-+
-+Returns
-+-------
-+bool
-+") IsNodeOnBorder;
-+		static Standard_Boolean IsNodeOnBorder(const Standard_Integer theNodeIdx, const Handle ( Poly_Triangulation ) & theTr);
-+
- 		/****************** LoadShapeLists ******************/
- 		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
- 		%feature("compactdefaultargs") LoadShapeLists;
-@@ -1787,178 +1826,10 @@ theMetric: float
- %extend BRepExtrema_ProximityDistTool {
- 	%pythoncode {
- 	__repr__ = _dumps_object
--	}
--};
--
--/***************************************
--* class BRepExtrema_ProximityValueTool *
--***************************************/
--class BRepExtrema_ProximityValueTool {
--	public:
--typedef typename BRepExtrema_ProximityDistTool ::ProxPnt_Status ProxPnt_Status;
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: f01190ce189b90d5b9278fbee66731a1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new unitialized proximity tool.
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool();
--
--		/****************** BRepExtrema_ProximityValueTool ******************/
--		/**** md5 signature: 457895b0f954d4aa93c3b2011e47f0e1 ****/
--		%feature("compactdefaultargs") BRepExtrema_ProximityValueTool;
--		%feature("autodoc", "Creates new proximity tool for the given element sets.
--
--Parameters
------------
--theSet1: BRepExtrema_TriangleSet
--theSet2: BRepExtrema_TriangleSet
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") BRepExtrema_ProximityValueTool;
--		 BRepExtrema_ProximityValueTool(const opencascade::handle<BRepExtrema_TriangleSet> & theSet1, const opencascade::handle<BRepExtrema_TriangleSet> & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** Distance ******************/
--		/**** md5 signature: d47317206a0fb34e540004324dbfafd8 ****/
--		%feature("compactdefaultargs") Distance;
--		%feature("autodoc", "Returns the computed distance.
--
--Returns
---------
--float
--") Distance;
--		Standard_Real Distance();
--
--		/****************** IsDone ******************/
--		/**** md5 signature: e385477ab1bec806154173d4a550fd68 ****/
--		%feature("compactdefaultargs") IsDone;
--		%feature("autodoc", "Is proximity test completed?.
--
--Returns
---------
--bool
--") IsDone;
--		Standard_Boolean IsDone();
--
--		/****************** LoadShapeLists ******************/
--		/**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/
--		%feature("compactdefaultargs") LoadShapeLists;
--		%feature("autodoc", "Loads the given list of subshapes into the proximity tool.
--
--Parameters
------------
--theShapeList1: BRepExtrema_ShapeList
--theShapeList2: BRepExtrema_ShapeList
--
--Returns
---------
--None
--") LoadShapeLists;
--		void LoadShapeLists(const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2);
--
--		/****************** LoadTriangleSets ******************/
--		/**** md5 signature: 3a94a7860b973acbc6838bfe75b5b812 ****/
--		%feature("compactdefaultargs") LoadTriangleSets;
--		%feature("autodoc", "Loads the given element sets into the proximity tool.
--
--Parameters
------------
--theSet1: Handle ( BRepExtrema_TriangleSet )
--theSet2: Handle ( BRepExtrema_TriangleSet )
--
--Returns
---------
--None
--") LoadTriangleSets;
--		void LoadTriangleSets(const Handle ( BRepExtrema_TriangleSet ) & theSet1, const Handle ( BRepExtrema_TriangleSet ) & theSet2);
--
--		/****************** MarkDirty ******************/
--		/**** md5 signature: bd3f3e7de1b3b6a0c1da3082319fae2e ****/
--		%feature("compactdefaultargs") MarkDirty;
--		%feature("autodoc", "Marks test results as outdated.
--
--Returns
---------
--None
--") MarkDirty;
--		void MarkDirty();
--
--		/****************** Perform ******************/
--		/**** md5 signature: c2c8700606b770cff797eb33824bf0aa ****/
--		%feature("compactdefaultargs") Perform;
--		%feature("autodoc", "Performs the computation of the proximity value.
--
--Parameters
------------
--
--Returns
---------
--theTolerance: float
--") Perform;
--		void Perform(Standard_Real &OutValue);
--
--		/****************** ProximityPoints ******************/
--		/**** md5 signature: 4ddc607867ad4f349b192d8bb4196f92 ****/
--		%feature("compactdefaultargs") ProximityPoints;
--		%feature("autodoc", "Returns points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--thePoint1: gp_Pnt
--thePoint2: gp_Pnt
- 
--Returns
---------
--None
--") ProximityPoints;
--		void ProximityPoints(gp_Pnt & thePoint1, gp_Pnt & thePoint2);
--
--		/****************** ProximityPointsStatus ******************/
--		/**** md5 signature: cbb67aeda5a68bd79cbb58089638d3f8 ****/
--		%feature("compactdefaultargs") ProximityPointsStatus;
--		%feature("autodoc", "Returns status of points on triangles sets, which provide the proximity distance.
--
--Parameters
------------
--
--Returns
---------
--thePointStatus1: ProxPnt_Status
--thePointStatus2: ProxPnt_Status
--") ProximityPointsStatus;
--		void ProximityPointsStatus(ProxPnt_Status &OutValue, ProxPnt_Status &OutValue);
--
--		/****************** SetNbSamplePoints ******************/
--		/**** md5 signature: 200898431f5ab55f6d0477df1f50c3b9 ****/
--		%feature("compactdefaultargs") SetNbSamplePoints;
--		%feature("autodoc", "Sets number of sample points used for proximity calculation for each shape. if number is less or equal zero, all triangulation nodes are used.
--
--Parameters
------------
--theSamples1: int,optional
--	default value is 0
--theSamples2: int,optional
--	default value is 0
--
--Returns
---------
--None
--") SetNbSamplePoints;
--		void SetNbSamplePoints(const Standard_Integer theSamples1 = 0, const Standard_Integer theSamples2 = 0);
--
--};
--
--
--%extend BRepExtrema_ProximityValueTool {
--	%pythoncode {
--	__repr__ = _dumps_object
-+	@methodnotwrapped
-+	def LoadAdditionalPointsFirstSet(self):
-+		pass
- 	}
- };
- 
-@@ -1967,7 +1838,6 @@ None
- ***********************************/
- class BRepExtrema_ShapeProximity {
- 	public:
--typedef typename BRepExtrema_ProximityValueTool ::ProxPnt_Status ProxPnt_Status;
- 		/****************** BRepExtrema_ShapeProximity ******************/
- 		/**** md5 signature: 73b29b290349b3955b499c712de97888 ****/
- 		%feature("compactdefaultargs") BRepExtrema_ShapeProximity;
-diff --git a/src/SWIG_files/wrapper/BRepExtrema.pyi b/src/SWIG_files/wrapper/BRepExtrema.pyi
-index 0738ed63..749fc5ef 100644
---- a/src/SWIG_files/wrapper/BRepExtrema.pyi
-+++ b/src/SWIG_files/wrapper/BRepExtrema.pyi
-@@ -9,6 +9,7 @@ from OCC.Core.Message import *
- from OCC.Core.gp import *
- from OCC.Core.Bnd import *
- from OCC.Core.BVH import *
-+from OCC.Core.Poly import *
- 
- #the following typedef cannot be wrapped as is
- BRepExtrema_ShapeList = NewType('BRepExtrema_ShapeList', Any)
-@@ -163,8 +164,10 @@ class BRepExtrema_Poly:
- class BRepExtrema_ProximityDistTool():
-     @overload
-     def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theNbSamples1: int, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-+    @staticmethod
-+    def IsEdgeOnBorder(theTrgIdx: int, theFirstEdgeNodeIdx: int, theSecondEdgeNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-+    @staticmethod
-+    def IsNodeOnBorder(theNodeIdx: int, theTr: Poly_Triangulation) -> bool: ...
-     def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
-     def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
-     def Perform(self) -> None: ...
-@@ -172,20 +175,6 @@ class BRepExtrema_ProximityDistTool():
-     def ProximityPoints(self, thePoint1: BVH_Vec3d, thePoint2: BVH_Vec3d) -> None: ...
-     def RejectNode(self, theCornerMin: BVH_Vec3d, theCornerMax: BVH_Vec3d) -> Tuple[bool, float]: ...
- 
--class BRepExtrema_ProximityValueTool:
--    @overload
--    def __init__(self) -> None: ...
--    @overload
--    def __init__(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def Distance(self) -> float: ...
--    def IsDone(self) -> bool: ...
--    def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ...
--    def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ...
--    def MarkDirty(self) -> None: ...
--    def Perform(self) -> float: ...
--    def ProximityPoints(self, thePoint1: gp_Pnt, thePoint2: gp_Pnt) -> None: ...
--    def SetNbSamplePoints(self, theSamples1: Optional[int] = 0, theSamples2: Optional[int] = 0) -> None: ...
--
- class BRepExtrema_ShapeProximity:
-     @overload
-     def __init__(self, theTolerance: Optional[float] = precision_Infinite()) -> None: ...
-@@ -271,3 +260,5 @@ class BRepExtrema_OverlapTool: ...
- # hsequence classes
- 
- BRepExtrema_Poly_Distance = BRepExtrema_Poly.Distance
-+BRepExtrema_ProximityDistTool_IsEdgeOnBorder = BRepExtrema_ProximityDistTool.IsEdgeOnBorder
-+BRepExtrema_ProximityDistTool_IsNodeOnBorder = BRepExtrema_ProximityDistTool.IsNodeOnBorder
-diff --git a/src/SWIG_files/wrapper/BRepFill.i b/src/SWIG_files/wrapper/BRepFill.i
-index 1b12746f..0281ab54 100644
---- a/src/SWIG_files/wrapper/BRepFill.i
-+++ b/src/SWIG_files/wrapper/BRepFill.i
-@@ -105,6 +105,16 @@ from OCC.Core.Exception import *
- };
- 
- /* public enums */
-+enum BRepFill_ThruSectionErrorStatus {
-+	BRepFill_ThruSectionErrorStatus_Done = 0,
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1,
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2,
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3,
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4,
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5,
-+	BRepFill_ThruSectionErrorStatus_Failed = 6,
-+};
-+
- enum BRepFill_TypeOfContact {
- 	BRepFill_NoContact = 0,
- 	BRepFill_Contact = 1,
-@@ -122,6 +132,22 @@ enum BRepFill_TransitionStyle {
- /* python proxy classes for enums */
- %pythoncode {
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+	BRepFill_ThruSectionErrorStatus_Done = 0
-+	BRepFill_ThruSectionErrorStatus_NotDone = 1
-+	BRepFill_ThruSectionErrorStatus_NotSameTopology = 2
-+	BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3
-+	BRepFill_ThruSectionErrorStatus_WrongUsage = 4
-+	BRepFill_ThruSectionErrorStatus_Null3DCurve = 5
-+	BRepFill_ThruSectionErrorStatus_Failed = 6
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
- 	BRepFill_NoContact = 0
- 	BRepFill_Contact = 1
-@@ -575,6 +601,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Edge & SubSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "No available documentation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 217046dd3125fb37abc6e15803e209f1 ****/
- 		%feature("compactdefaultargs") Init;
-@@ -1816,6 +1853,17 @@ TopTools_ListOfShape
- ") GeneratedShapes;
- 		const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Shape & SSection);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns status of the operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** IsMutableInput ******************/
- 		/**** md5 signature: 2df16e5a957577cfce65832aa2d90512 ****/
- 		%feature("compactdefaultargs") IsMutableInput;
-diff --git a/src/SWIG_files/wrapper/BRepFill.pyi b/src/SWIG_files/wrapper/BRepFill.pyi
-index b73b54f3..412b53b2 100644
---- a/src/SWIG_files/wrapper/BRepFill.pyi
-+++ b/src/SWIG_files/wrapper/BRepFill.pyi
-@@ -83,6 +83,23 @@ class BRepFill_SequenceOfSection:
-     def Value(self, theIndex: int) -> BRepFill_Section: ...
-     def SetValue(self, theIndex: int, theValue: BRepFill_Section) -> None: ...
- 
-+class BRepFill_ThruSectionErrorStatus(IntEnum):
-+    BRepFill_ThruSectionErrorStatus_Done: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotDone: int = ...
-+    BRepFill_ThruSectionErrorStatus_NotSameTopology: int = ...
-+    BRepFill_ThruSectionErrorStatus_ProfilesInconsistent: int = ...
-+    BRepFill_ThruSectionErrorStatus_WrongUsage: int = ...
-+    BRepFill_ThruSectionErrorStatus_Null3DCurve: int = ...
-+    BRepFill_ThruSectionErrorStatus_Failed: int = ...
-+
-+BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done
-+BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone
-+BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology
-+BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent
-+BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage
-+BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve
-+BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed
-+
- class BRepFill_TypeOfContact(IntEnum):
-     BRepFill_NoContact: int = ...
-     BRepFill_Contact: int = ...
-@@ -139,6 +156,7 @@ class BRepFill_CompatibleWires:
-     def __init__(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SubSection: TopoDS_Edge) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, Sections: TopTools_SequenceOfShape) -> None: ...
-     def IsDegeneratedFirstSection(self) -> bool: ...
-     def IsDegeneratedLastSection(self) -> bool: ...
-@@ -255,6 +273,7 @@ class BRepFill_Generator:
-     def AddWire(self, Wire: TopoDS_Wire) -> None: ...
-     def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ...
-     def GeneratedShapes(self, SSection: TopoDS_Shape) -> TopTools_ListOfShape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def IsMutableInput(self) -> bool: ...
-     def Perform(self) -> None: ...
-     def ResultShape(self, theShape: TopoDS_Shape) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BRepOffset.i b/src/SWIG_files/wrapper/BRepOffset.i
-index d6800998..05add5f2 100644
---- a/src/SWIG_files/wrapper/BRepOffset.i
-+++ b/src/SWIG_files/wrapper/BRepOffset.i
-@@ -131,6 +131,7 @@ enum BRepOffset_Error {
- 	BRepOffset_CannotFuseVertices = 7,
- 	BRepOffset_CannotExtentEdge = 8,
- 	BRepOffset_UserBreak = 9,
-+	BRepOffset_MixedConnectivity = 10,
- };
- 
- enum BRepOffsetSimple_Status {
-@@ -171,6 +172,7 @@ class BRepOffset_Error(IntEnum):
- 	BRepOffset_CannotFuseVertices = 7
- 	BRepOffset_CannotExtentEdge = 8
- 	BRepOffset_UserBreak = 9
-+	BRepOffset_MixedConnectivity = 10
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
- BRepOffset_BadNormalsOnGeometry = BRepOffset_Error.BRepOffset_BadNormalsOnGeometry
-@@ -181,6 +183,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
- 	BRepOffsetSimple_OK = 0
-diff --git a/src/SWIG_files/wrapper/BRepOffset.pyi b/src/SWIG_files/wrapper/BRepOffset.pyi
-index 89a5e3e1..fd6f7478 100644
---- a/src/SWIG_files/wrapper/BRepOffset.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffset.pyi
-@@ -43,6 +43,7 @@ class BRepOffset_Error(IntEnum):
-     BRepOffset_CannotFuseVertices: int = ...
-     BRepOffset_CannotExtentEdge: int = ...
-     BRepOffset_UserBreak: int = ...
-+    BRepOffset_MixedConnectivity: int = ...
- 
- BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError
- BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError
-@@ -54,6 +55,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges
- BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices
- BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge
- BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak
-+BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity
- 
- class BRepOffsetSimple_Status(IntEnum):
-     BRepOffsetSimple_OK: int = ...
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.i b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-index 1f9ad1dd..df26f708 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.i
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.i
-@@ -2558,6 +2558,17 @@ TopoDS_Shape
- ") GeneratedFace;
- 		TopoDS_Shape GeneratedFace(const TopoDS_Shape & Edge);
- 
-+		/****************** GetStatus ******************/
-+		/**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/
-+		%feature("compactdefaultargs") GetStatus;
-+		%feature("autodoc", "Returns the status of thrusection operation.
-+
-+Returns
-+-------
-+BRepFill_ThruSectionErrorStatus
-+") GetStatus;
-+		BRepFill_ThruSectionErrorStatus GetStatus();
-+
- 		/****************** Init ******************/
- 		/**** md5 signature: 82b061dc05f66b08422610d2d7504487 ****/
- 		%feature("compactdefaultargs") Init;
-diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-index 042de45f..815ee7e1 100644
---- a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-+++ b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi
-@@ -260,6 +260,7 @@ class BRepOffsetAPI_ThruSections(BRepBuilderAPI_MakeShape):
-     def FirstShape(self) -> TopoDS_Shape: ...
-     def Generated(self, S: TopoDS_Shape) -> TopTools_ListOfShape: ...
-     def GeneratedFace(self, Edge: TopoDS_Shape) -> TopoDS_Shape: ...
-+    def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ...
-     def Init(self, isSolid: Optional[bool] = False, ruled: Optional[bool] = False, pres3d: Optional[float] = 1.0e-06) -> None: ...
-     def IsMutableInput(self) -> bool: ...
-     def LastShape(self) -> TopoDS_Shape: ...
-diff --git a/src/SWIG_files/wrapper/BSplCLib.i b/src/SWIG_files/wrapper/BSplCLib.i
-index f0b6635f..80aa4d80 100644
---- a/src/SWIG_files/wrapper/BSplCLib.i
-+++ b/src/SWIG_files/wrapper/BSplCLib.i
-@@ -2001,6 +2001,29 @@ InversionProblem: int
- ") Interpolate;
- 		static void Interpolate(const Standard_Integer Degree, const TColStd_Array1OfReal & FlatKnots, const TColStd_Array1OfReal & Parameters, const TColStd_Array1OfInteger & ContactOrderArray, const Standard_Integer ArrayDimension, Standard_Real &OutValue, Standard_Real &OutValue, Standard_Integer &OutValue);
- 
-+		/****************** Intervals ******************/
-+		/**** md5 signature: 6005dd7b642eb153ae7f9293cf41ffb5 ****/
-+		%feature("compactdefaultargs") Intervals;
-+		%feature("autodoc", "Splits the given range to bspline intervals of given continuity @param[in] theknots the knots of bspline @param[in] themults the knots' multiplicities @param[in] thedegree the degree of bspline @param[in] isperiodic the periodicity of bspline @param[in] thecontinuity the target interval's continuity @param[in] thefirst the begin of the target range @param[in] thelast the end of the target range @param[in] thetolerance the tolerance @param[in,out] theintervals the array to store intervals if isn't nullptr returns the number of intervals.
-+
-+Parameters
-+----------
-+theKnots: TColStd_Array1OfReal
-+theMults: TColStd_Array1OfInteger
-+theDegree: int
-+isPeriodic: bool
-+theContinuity: int
-+theFirst: float
-+theLast: float
-+theTolerance: float
-+theIntervals: TColStd_Array1OfReal *
-+
-+Returns
-+-------
-+int
-+") Intervals;
-+		static Standard_Integer Intervals(const TColStd_Array1OfReal & theKnots, const TColStd_Array1OfInteger & theMults, Standard_Integer theDegree, Standard_Boolean isPeriodic, Standard_Integer theContinuity, Standard_Real theFirst, Standard_Real theLast, Standard_Real theTolerance, TColStd_Array1OfReal * theIntervals);
-+
- 		/****************** IsRational ******************/
- 		/**** md5 signature: 5ee1bb4d64e0a78acc3cb994f1afcefa ****/
- 		%feature("compactdefaultargs") IsRational;
-diff --git a/src/SWIG_files/wrapper/BSplCLib.pyi b/src/SWIG_files/wrapper/BSplCLib.pyi
-index b8ac4682..671f76a0 100644
---- a/src/SWIG_files/wrapper/BSplCLib.pyi
-+++ b/src/SWIG_files/wrapper/BSplCLib.pyi
-@@ -278,6 +278,8 @@ class bsplclib:
-     @staticmethod
-     def Interpolate(Degree: int, FlatKnots: TColStd_Array1OfReal, Parameters: TColStd_Array1OfReal, ContactOrderArray: TColStd_Array1OfInteger, ArrayDimension: int) -> Tuple[float, float, int]: ...
-     @staticmethod
-+    def Intervals(theKnots: TColStd_Array1OfReal, theMults: TColStd_Array1OfInteger, theDegree: int, isPeriodic: bool, theContinuity: int, theFirst: float, theLast: float, theTolerance: float, theIntervals: TColStd_Array1OfReal) -> int: ...
-+    @staticmethod
-     def IsRational(Weights: TColStd_Array1OfReal, I1: int, I2: int, Epsilon: Optional[float] = 0.0) -> bool: ...
-     @staticmethod
-     def KnotAnalysis(Degree: int, Periodic: bool, CKnots: TColStd_Array1OfReal, CMults: TColStd_Array1OfInteger, KnotForm: GeomAbs_BSplKnotDistribution) -> int: ...
-@@ -566,6 +568,7 @@ bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
- bsplclib_Interpolate = bsplclib.Interpolate
-+bsplclib_Intervals = bsplclib.Intervals
- bsplclib_IsRational = bsplclib.IsRational
- bsplclib_KnotAnalysis = bsplclib.KnotAnalysis
- bsplclib_KnotForm = bsplclib.KnotForm
-diff --git a/src/SWIG_files/wrapper/ChFiDS.i b/src/SWIG_files/wrapper/ChFiDS.i
-index d60e552a..b8096939 100644
---- a/src/SWIG_files/wrapper/ChFiDS.i
-+++ b/src/SWIG_files/wrapper/ChFiDS.i
-@@ -121,6 +121,7 @@ enum ChFiDS_TypeOfConcavity {
- 	ChFiDS_Tangential = 2,
- 	ChFiDS_FreeBound = 3,
- 	ChFiDS_Other = 4,
-+	ChFiDS_Mixed = 5,
- };
- 
- /* end public enums declaration */
-@@ -178,11 +179,13 @@ class ChFiDS_TypeOfConcavity(IntEnum):
- 	ChFiDS_Tangential = 2
- 	ChFiDS_FreeBound = 3
- 	ChFiDS_Other = 4
-+	ChFiDS_Mixed = 5
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- };
- /* end python proxy for enums */
- 
-@@ -2029,6 +2032,17 @@ TopoDS_Vertex
- ") FirstVertex;
- 		TopoDS_Vertex FirstVertex();
- 
-+		/****************** GetTolesp ******************/
-+		/**** md5 signature: 217c13748b3cb2bf2cc59e96cafe8207 ****/
-+		%feature("compactdefaultargs") GetTolesp;
-+		%feature("autodoc", "Return tolesp parameter.
-+
-+Returns
-+-------
-+float
-+") GetTolesp;
-+		Standard_Real GetTolesp();
-+
- 		/****************** GetType ******************/
- 		/**** md5 signature: 6d4e6ae7972633971ba343e8afc91aa1 ****/
- 		%feature("compactdefaultargs") GetType;
-diff --git a/src/SWIG_files/wrapper/ChFiDS.pyi b/src/SWIG_files/wrapper/ChFiDS.pyi
-index 6543ea1a..d1884594 100644
---- a/src/SWIG_files/wrapper/ChFiDS.pyi
-+++ b/src/SWIG_files/wrapper/ChFiDS.pyi
-@@ -192,12 +192,14 @@ class ChFiDS_TypeOfConcavity(IntEnum):
-     ChFiDS_Tangential: int = ...
-     ChFiDS_FreeBound: int = ...
-     ChFiDS_Other: int = ...
-+    ChFiDS_Mixed: int = ...
- 
- ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave
- ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex
- ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential
- ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound
- ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other
-+ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed
- 
- class ChFiDS_CircSection:
-     def __init__(self) -> None: ...
-@@ -351,6 +353,7 @@ class ChFiDS_Spine(Standard_Transient):
-     def FirstParameter(self, IndexSpine: int) -> float: ...
-     def FirstStatus(self) -> ChFiDS_State: ...
-     def FirstVertex(self) -> TopoDS_Vertex: ...
-+    def GetTolesp(self) -> float: ...
-     def GetType(self) -> GeomAbs_CurveType: ...
-     def GetTypeOfConcavity(self) -> ChFiDS_TypeOfConcavity: ...
-     def HasFirstTgt(self) -> bool: ...
-diff --git a/src/SWIG_files/wrapper/GeomInt.i b/src/SWIG_files/wrapper/GeomInt.i
-index a01b7841..9d84060c 100644
---- a/src/SWIG_files/wrapper/GeomInt.i
-+++ b/src/SWIG_files/wrapper/GeomInt.i
-@@ -936,6 +936,29 @@ opencascade::handle<Geom_Curve>
- ") Boundary;
- 		const opencascade::handle<Geom_Curve> & Boundary(const Standard_Integer Index);
- 
-+		/****************** BuildPCurves ******************/
-+		/**** md5 signature: 6965f43fd020f13216b45cd065743faa ****/
-+		%feature("compactdefaultargs") BuildPCurves;
-+		%feature("autodoc", "Creates 2d-curve on given surface from given 3d-curve.
-+
-+Parameters
-+----------
-+theFirst: float
-+theLast: float
-+theUmin: float
-+theUmax: float
-+theVmin: float
-+theVmax: float
-+theSurface: Geom_Surface
-+theCurve: Geom_Curve
-+theCurve2d: Geom2d_Curve
-+
-+Returns
-+-------
-+theTol: float
-+") BuildPCurves;
-+		static void BuildPCurves(const Standard_Real theFirst, const Standard_Real theLast, const Standard_Real theUmin, const Standard_Real theUmax, const Standard_Real theVmin, const Standard_Real theVmax, Standard_Real &OutValue, const opencascade::handle<Geom_Surface> & theSurface, const opencascade::handle<Geom_Curve> & theCurve, opencascade::handle<Geom2d_Curve> & theCurve2d);
-+
- 		/****************** BuildPCurves ******************/
- 		/**** md5 signature: 2c2bdb53423075c70323712785098b12 ****/
- 		%feature("compactdefaultargs") BuildPCurves;
-diff --git a/src/SWIG_files/wrapper/GeomInt.pyi b/src/SWIG_files/wrapper/GeomInt.pyi
-index eae46ba0..c6076fec 100644
---- a/src/SWIG_files/wrapper/GeomInt.pyi
-+++ b/src/SWIG_files/wrapper/GeomInt.pyi
-@@ -110,6 +110,10 @@ class GeomInt_IntSS:
-     @overload
-     def __init__(self, S1: Geom_Surface, S2: Geom_Surface, Tol: float, Approx: Optional[bool] = True, ApproxS1: Optional[bool] = False, ApproxS2: Optional[bool] = False) -> None: ...
-     def Boundary(self, Index: int) -> Geom_Curve: ...
-+    @overload
-+    @staticmethod
-+    def BuildPCurves(theFirst: float, theLast: float, theUmin: float, theUmax: float, theVmin: float, theVmax: float, theSurface: Geom_Surface, theCurve: Geom_Curve, theCurve2d: Geom2d_Curve) -> float: ...
-+    @overload
-     @staticmethod
-     def BuildPCurves(f: float, l: float, S: Geom_Surface, C: Geom_Curve, C2d: Geom2d_Curve) -> float: ...
-     def HasLineOnS1(self, Index: int) -> bool: ...
-@@ -525,6 +529,7 @@ class GeomInt_WLApprox: ...
- 
- geomint_AdjustPeriodic = geomint.AdjustPeriodic
- GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
-+GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves
- GeomInt_IntSS_MakeBSpline = GeomInt_IntSS.MakeBSpline
- GeomInt_IntSS_MakeBSpline2d = GeomInt_IntSS.MakeBSpline2d
- GeomInt_IntSS_TreatRLine = GeomInt_IntSS.TreatRLine
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.i b/src/SWIG_files/wrapper/STEPCAFControl.i
-index 3ddc1ba8..9372c840 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.i
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.i
-@@ -1849,24 +1849,24 @@ None
- 		 STEPCAFControl_Writer();
- 
- 		/****************** STEPCAFControl_Writer ******************/
--		/**** md5 signature: 70a513d4d628947fa1e98ed8e35359d9 ****/
-+		/**** md5 signature: dedf68dbebf4d519616966632e9764a8 ****/
- 		%feature("compactdefaultargs") STEPCAFControl_Writer;
- 		%feature("autodoc", "Creates a reader tool and attaches it to an already existing session clears the session if it was not yet set for step clears the internal data structures.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") STEPCAFControl_Writer;
--		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		 STEPCAFControl_Writer(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** ChangeWriter ******************/
--		/**** md5 signature: 9719ebc8336482d007d450c0e3b00713 ****/
-+		/**** md5 signature: acee09144e4dec42ed602fde52975129 ****/
- 		%feature("compactdefaultargs") ChangeWriter;
- 		%feature("autodoc", "Returns basic reader for root file.
- 
-@@ -1877,39 +1877,39 @@ STEPControl_Writer
- 		STEPControl_Writer & ChangeWriter();
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: 4f90b7104efa0649e14f70ad09ab8e61 ****/
-+		/**** md5 signature: 0769b22e71152aabd75dace01164fc2b ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its original label returns false if no external file with given name is read.
- 
- Parameters
- ----------
--L: TDF_Label
--ef: STEPCAFControl_ExternFile
-+theLabel: TDF_Label
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const TDF_Label & L, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(const TDF_Label & theLabel, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFile ******************/
--		/**** md5 signature: ad0d6b0b3be01575d180dd24c55cd264 ****/
-+		/**** md5 signature: f77e0b8157371b505bc136b8bd33443e ****/
- 		%feature("compactdefaultargs") ExternFile;
- 		%feature("autodoc", "Returns data on external file by its name returns false if no external file with given name is read.
- 
- Parameters
- ----------
--name: char *
--ef: STEPCAFControl_ExternFile
-+theName: str
-+theExtFile: STEPCAFControl_ExternFile
- 
- Returns
- -------
- bool
- ") ExternFile;
--		Standard_Boolean ExternFile(const char * name, opencascade::handle<STEPCAFControl_ExternFile> & ef);
-+		Standard_Boolean ExternFile(Standard_CString theName, opencascade::handle<STEPCAFControl_ExternFile> & theExtFile);
- 
- 		/****************** ExternFiles ******************/
--		/**** md5 signature: 1154c88bc3253c7291077317c11363ab ****/
-+		/**** md5 signature: 08a0b41df731275c7119f8910e47970c ****/
- 		%feature("compactdefaultargs") ExternFiles;
- 		%feature("autodoc", "Returns data on external files returns null handle if no external files are read.
- 
-@@ -1920,7 +1920,7 @@ NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_
- 		const NCollection_DataMap<TCollection_AsciiString, opencascade::handle<STEPCAFControl_ExternFile>> & ExternFiles();
- 
- 		/****************** GetColorMode ******************/
--		/**** md5 signature: 010da6a8a0e8a61fdb607fd6faba2b56 ****/
-+		/**** md5 signature: cddb885e605f1794a5a6486023f65736 ****/
- 		%feature("compactdefaultargs") GetColorMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1931,7 +1931,7 @@ bool
- 		Standard_Boolean GetColorMode();
- 
- 		/****************** GetDimTolMode ******************/
--		/**** md5 signature: 2eed8e0bb30a6f85d0c500a8d4b9e16c ****/
-+		/**** md5 signature: 5f3c2fc2e581a2ea711f9607cd0a817a ****/
- 		%feature("compactdefaultargs") GetDimTolMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1942,7 +1942,7 @@ bool
- 		Standard_Boolean GetDimTolMode();
- 
- 		/****************** GetLayerMode ******************/
--		/**** md5 signature: d677385c303e067613f92bc738509727 ****/
-+		/**** md5 signature: b6b1458608d2429d13e63a07c0b392d8 ****/
- 		%feature("compactdefaultargs") GetLayerMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1953,7 +1953,7 @@ bool
- 		Standard_Boolean GetLayerMode();
- 
- 		/****************** GetMaterialMode ******************/
--		/**** md5 signature: cda125e3ff8f835393b9894e3f229aea ****/
-+		/**** md5 signature: 2057a4ef866086868ba91cb34e6ad09a ****/
- 		%feature("compactdefaultargs") GetMaterialMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1964,7 +1964,7 @@ bool
- 		Standard_Boolean GetMaterialMode();
- 
- 		/****************** GetNameMode ******************/
--		/**** md5 signature: 2dd32a893d6f5f4666ac3752ace2d12f ****/
-+		/**** md5 signature: 1097f532a68b4625a0108cddc8366238 ****/
- 		%feature("compactdefaultargs") GetNameMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1975,7 +1975,7 @@ bool
- 		Standard_Boolean GetNameMode();
- 
- 		/****************** GetPropsMode ******************/
--		/**** md5 signature: 3b2f4c2b61084d1e067d83421e0ea81d ****/
-+		/**** md5 signature: 99cee0ed60040ac88dbf6e950f82a10e ****/
- 		%feature("compactdefaultargs") GetPropsMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1986,7 +1986,7 @@ bool
- 		Standard_Boolean GetPropsMode();
- 
- 		/****************** GetSHUOMode ******************/
--		/**** md5 signature: 74c5f048b04741ef5abfe259b5c453cd ****/
-+		/**** md5 signature: 4e3a3a7f89647ad6b4f35f24a42234d6 ****/
- 		%feature("compactdefaultargs") GetSHUOMode;
- 		%feature("autodoc", "No available documentation.
- 
-@@ -1997,31 +1997,31 @@ bool
- 		Standard_Boolean GetSHUOMode();
- 
- 		/****************** Init ******************/
--		/**** md5 signature: 13544ae418c98602c6eaed6faea8f526 ****/
-+		/**** md5 signature: e7d3f870615865a6686f75c3aa077ff3 ****/
- 		%feature("compactdefaultargs") Init;
- 		%feature("autodoc", "Clears the internal data structures and attaches to a new session clears the session if it was not yet set for step.
- 
- Parameters
- ----------
--WS: XSControl_WorkSession
--scratch: bool,optional
-+theWS: XSControl_WorkSession
-+theScratch: bool,optional
- 	default value is Standard_True
- 
- Returns
- -------
- None
- ") Init;
--		void Init(const opencascade::handle<XSControl_WorkSession> & WS, const Standard_Boolean scratch = Standard_True);
-+		void Init(const opencascade::handle<XSControl_WorkSession> & theWS, const Standard_Boolean theScratch = Standard_True);
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 82a9ff51a493dfcaea368ecaef792fdb ****/
-+		/**** md5 signature: 624f8c3670df66af47c4a9af2967eb2a ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "No available documentation.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: TCollection_AsciiString
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2029,17 +2029,17 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const TCollection_AsciiString & filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, TCollection_AsciiString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Perform ******************/
--		/**** md5 signature: 1ef00b1bd520cd3b05cc4f00e91c494d ****/
-+		/**** md5 signature: 90b76d8d692f1926baa1d9dd3db9018b ****/
- 		%feature("compactdefaultargs") Perform;
- 		%feature("autodoc", "Transfers a document and writes it to a step file returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--filename: char *
-+theDoc: TDocStd_Document
-+theFileName: str
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
- 
-@@ -2047,124 +2047,124 @@ Returns
- -------
- bool
- ") Perform;
--		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & doc, const char * filename, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Perform(const opencascade::handle<TDocStd_Document> & theDoc, Standard_CString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** SetColorMode ******************/
--		/**** md5 signature: e8d41838c31a9460a1c83d84b1f572a1 ****/
-+		/**** md5 signature: f341158b4cc5262e2e5cb7b941cc9031 ****/
- 		%feature("compactdefaultargs") SetColorMode;
- 		%feature("autodoc", "Set colormode for indicate write colors or not.
- 
- Parameters
- ----------
--colormode: bool
-+theColorMode: bool
- 
- Returns
- -------
- None
- ") SetColorMode;
--		void SetColorMode(const Standard_Boolean colormode);
-+		void SetColorMode(const Standard_Boolean theColorMode);
- 
- 		/****************** SetDimTolMode ******************/
--		/**** md5 signature: 18d408609aea9a67d1d1e15d923773db ****/
-+		/**** md5 signature: 08cd53498196841f3c3a5c0e281a464f ****/
- 		%feature("compactdefaultargs") SetDimTolMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--dimtolmode: bool
-+theDimTolMode: bool
- 
- Returns
- -------
- None
- ") SetDimTolMode;
--		void SetDimTolMode(const Standard_Boolean dimtolmode);
-+		void SetDimTolMode(const Standard_Boolean theDimTolMode);
- 
- 		/****************** SetLayerMode ******************/
--		/**** md5 signature: 3ec21c8de4b114a83bb0b34cb3b98662 ****/
-+		/**** md5 signature: d164352478699d01fe5d59c680c2a74d ****/
- 		%feature("compactdefaultargs") SetLayerMode;
- 		%feature("autodoc", "Set layermode for indicate write layers or not.
- 
- Parameters
- ----------
--layermode: bool
-+theLayerMode: bool
- 
- Returns
- -------
- None
- ") SetLayerMode;
--		void SetLayerMode(const Standard_Boolean layermode);
-+		void SetLayerMode(const Standard_Boolean theLayerMode);
- 
- 		/****************** SetMaterialMode ******************/
--		/**** md5 signature: ef4abdfa06b076742a69b17150f91d88 ****/
-+		/**** md5 signature: 932571d6d0df2e34fd2487f6025f4956 ****/
- 		%feature("compactdefaultargs") SetMaterialMode;
- 		%feature("autodoc", "Set dimtolmode for indicate write d&gts or not.
- 
- Parameters
- ----------
--matmode: bool
-+theMaterialMode: bool
- 
- Returns
- -------
- None
- ") SetMaterialMode;
--		void SetMaterialMode(const Standard_Boolean matmode);
-+		void SetMaterialMode(const Standard_Boolean theMaterialMode);
- 
- 		/****************** SetNameMode ******************/
--		/**** md5 signature: 43ccb5d3fb024d8191f251ee74d0f6ba ****/
-+		/**** md5 signature: a24984c6ce274882f02601c13cf73b9a ****/
- 		%feature("compactdefaultargs") SetNameMode;
- 		%feature("autodoc", "Set namemode for indicate write name or not.
- 
- Parameters
- ----------
--namemode: bool
-+theNameMode: bool
- 
- Returns
- -------
- None
- ") SetNameMode;
--		void SetNameMode(const Standard_Boolean namemode);
-+		void SetNameMode(const Standard_Boolean theNameMode);
- 
- 		/****************** SetPropsMode ******************/
--		/**** md5 signature: 97f3b34eb7a1e38c6cf17d5c26f938a6 ****/
-+		/**** md5 signature: fbb288fb7a76bf6b9cd3acd70d056a7f ****/
- 		%feature("compactdefaultargs") SetPropsMode;
- 		%feature("autodoc", "Propsmode for indicate write validation properties or not.
- 
- Parameters
- ----------
--propsmode: bool
-+thePropsMode: bool
- 
- Returns
- -------
- None
- ") SetPropsMode;
--		void SetPropsMode(const Standard_Boolean propsmode);
-+		void SetPropsMode(const Standard_Boolean thePropsMode);
- 
- 		/****************** SetSHUOMode ******************/
--		/**** md5 signature: ad06ed8b923731ee7b75bf3d7074f299 ****/
-+		/**** md5 signature: 39955bf97fe8d6a6d6b3b211a859f216 ****/
- 		%feature("compactdefaultargs") SetSHUOMode;
- 		%feature("autodoc", "Set shuo mode for indicate write shuo or not.
- 
- Parameters
- ----------
--shuomode: bool
-+theSHUOMode: bool
- 
- Returns
- -------
- None
- ") SetSHUOMode;
--		void SetSHUOMode(const Standard_Boolean shuomode);
-+		void SetSHUOMode(const Standard_Boolean theSHUOMode);
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 2616e7e1bc1f8548fb5e464651c0f720 ****/
-+		/**** md5 signature: dd7ebbdc1c22d7845ad531885273adee ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Transfers a document (or single label) to a step model the mode of translation of shape is asis if multi is not null pointer, it switches to multifile mode (with external refs), and string pointed by <multi> gives prefix for names of extern files (can be empty string) returns true if translation is ok.
- 
- Parameters
- ----------
--doc: TDocStd_Document
--mode: STEPControl_StepModelType,optional
-+theDoc: TDocStd_Document
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2173,19 +2173,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & doc, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const opencascade::handle<TDocStd_Document> & theDoc, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 3230c3763f234bd8211762a290f20e3d ****/
-+		/**** md5 signature: 40f710aeab310ab1eff9bbdbe733b162 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Method to transfer part of the document specified by label.
- 
- Parameters
- ----------
--L: TDF_Label
--mode: STEPControl_StepModelType,optional
-+theLabel: TDF_Label
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2194,19 +2194,19 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_Label & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_Label & theLabel, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Transfer ******************/
--		/**** md5 signature: 7533cb05eb0d45c4c5142f45de14069a ****/
-+		/**** md5 signature: 4e3f0900d966cc07a5e2191b2b4ba7a6 ****/
- 		%feature("compactdefaultargs") Transfer;
- 		%feature("autodoc", "Mehod to writing sequence of root assemblies or part of the file specified by use by one label .
- 
- Parameters
- ----------
--L: TDF_LabelSequence
--mode: STEPControl_StepModelType,optional
-+theLabelSeq: TDF_LabelSequence
-+theMode: STEPControl_StepModelType,optional
- 	default value is STEPControl_AsIs
--multi: char *,optional
-+theIsMulti: str,optional
- 	default value is 0
- theProgress: Message_ProgressRange,optional
- 	default value is Message_ProgressRange()
-@@ -2215,7 +2215,7 @@ Returns
- -------
- bool
- ") Transfer;
--		Standard_Boolean Transfer(const TDF_LabelSequence & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
-+		Standard_Boolean Transfer(const TDF_LabelSequence & theLabelSeq, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange());
- 
- 		/****************** Write ******************/
- 		/**** md5 signature: 14544d6ececf228a5871ef6afa0279ae ****/
-@@ -2248,7 +2248,7 @@ IFSelect_ReturnStatus
- 		IFSelect_ReturnStatus WriteStream(std::ostream & theStream);
- 
- 		/****************** Writer ******************/
--		/**** md5 signature: 70b6d632350a5ba6ff972c4b437432a0 ****/
-+		/**** md5 signature: 056d4f3221d283b7d58d92ddd5c40dd7 ****/
- 		%feature("compactdefaultargs") Writer;
- 		%feature("autodoc", "Returns basic reader as const.
- 
-diff --git a/src/SWIG_files/wrapper/STEPCAFControl.pyi b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-index 896eedcf..9160ffa9 100644
---- a/src/SWIG_files/wrapper/STEPCAFControl.pyi
-+++ b/src/SWIG_files/wrapper/STEPCAFControl.pyi
-@@ -175,12 +175,12 @@ class STEPCAFControl_Writer:
-     @overload
-     def __init__(self) -> None: ...
-     @overload
--    def __init__(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def __init__(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     def ChangeWriter(self) -> STEPControl_Writer: ...
-     @overload
--    def ExternFile(self, L: TDF_Label, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theLabel: TDF_Label, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     @overload
--    def ExternFile(self, name: str, ef: STEPCAFControl_ExternFile) -> bool: ...
-+    def ExternFile(self, theName: str, theExtFile: STEPCAFControl_ExternFile) -> bool: ...
-     def ExternFiles(self) -> False: ...
-     def GetColorMode(self) -> bool: ...
-     def GetDimTolMode(self) -> bool: ...
-@@ -189,24 +189,24 @@ class STEPCAFControl_Writer:
-     def GetNameMode(self) -> bool: ...
-     def GetPropsMode(self) -> bool: ...
-     def GetSHUOMode(self) -> bool: ...
--    def Init(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ...
-+    def Init(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: TCollection_AsciiString, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Perform(self, doc: TDocStd_Document, filename: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
--    def SetColorMode(self, colormode: bool) -> None: ...
--    def SetDimTolMode(self, dimtolmode: bool) -> None: ...
--    def SetLayerMode(self, layermode: bool) -> None: ...
--    def SetMaterialMode(self, matmode: bool) -> None: ...
--    def SetNameMode(self, namemode: bool) -> None: ...
--    def SetPropsMode(self, propsmode: bool) -> None: ...
--    def SetSHUOMode(self, shuomode: bool) -> None: ...
-+    def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def SetColorMode(self, theColorMode: bool) -> None: ...
-+    def SetDimTolMode(self, theDimTolMode: bool) -> None: ...
-+    def SetLayerMode(self, theLayerMode: bool) -> None: ...
-+    def SetMaterialMode(self, theMaterialMode: bool) -> None: ...
-+    def SetNameMode(self, theNameMode: bool) -> None: ...
-+    def SetPropsMode(self, thePropsMode: bool) -> None: ...
-+    def SetSHUOMode(self, theSHUOMode: bool) -> None: ...
-     @overload
--    def Transfer(self, doc: TDocStd_Document, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theDoc: TDocStd_Document, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_Label, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabel: TDF_Label, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     @overload
--    def Transfer(self, L: TDF_LabelSequence, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-+    def Transfer(self, theLabelSeq: TDF_LabelSequence, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ...
-     def Write(self, theFileName: str) -> IFSelect_ReturnStatus: ...
-     def Writer(self) -> STEPControl_Writer: ...
- 
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.i b/src/SWIG_files/wrapper/STEPConstruct.i
-index f1221c33..d9eaffc8 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.i
-+++ b/src/SWIG_files/wrapper/STEPConstruct.i
-@@ -2598,6 +2598,17 @@ opencascade::handle<StepVisual_PresentationStyleAssignment>
- ") MakeColorPSA;
- 		opencascade::handle<StepVisual_PresentationStyleAssignment> MakeColorPSA(const opencascade::handle<StepRepr_RepresentationItem> & item, const opencascade::handle<StepVisual_Colour> & SurfCol, const opencascade::handle<StepVisual_Colour> & CurveCol, const opencascade::handle<StepVisual_Colour> & RenderCol, const Standard_Real RenderTransp, const Standard_Boolean isForNAUO = Standard_False);
- 
-+		/****************** NbRootStyles ******************/
-+		/**** md5 signature: 4bb6a5a6f49e5abb7085f5ef57337a5a ****/
-+		%feature("compactdefaultargs") NbRootStyles;
-+		%feature("autodoc", "Returns number of override styles.
-+
-+Returns
-+-------
-+int
-+") NbRootStyles;
-+		Standard_Integer NbRootStyles();
-+
- 		/****************** NbStyles ******************/
- 		/**** md5 signature: 9f5fbd515247307ce70e63c6f585ddb7 ****/
- 		%feature("compactdefaultargs") NbStyles;
-@@ -2609,6 +2620,21 @@ int
- ") NbStyles;
- 		Standard_Integer NbStyles();
- 
-+		/****************** RootStyle ******************/
-+		/**** md5 signature: 97e67ad6592e4e36a6444e18652921fc ****/
-+		%feature("compactdefaultargs") RootStyle;
-+		%feature("autodoc", "Returns override style with given index.
-+
-+Parameters
-+----------
-+i: int
-+
-+Returns
-+-------
-+opencascade::handle<StepVisual_StyledItem>
-+") RootStyle;
-+		opencascade::handle<StepVisual_StyledItem> RootStyle(const Standard_Integer i);
-+
- 		/****************** Style ******************/
- 		/**** md5 signature: e152f39ac13e328dca6d350a6f881da8 ****/
- 		%feature("compactdefaultargs") Style;
-diff --git a/src/SWIG_files/wrapper/STEPConstruct.pyi b/src/SWIG_files/wrapper/STEPConstruct.pyi
-index ca04fc33..0f3aa64d 100644
---- a/src/SWIG_files/wrapper/STEPConstruct.pyi
-+++ b/src/SWIG_files/wrapper/STEPConstruct.pyi
-@@ -253,7 +253,9 @@ class STEPConstruct_Styles(STEPConstruct_Tool):
-     def LoadInvisStyles(self, InvSyles: TColStd_HSequenceOfTransient) -> bool: ...
-     def LoadStyles(self) -> bool: ...
-     def MakeColorPSA(self, item: StepRepr_RepresentationItem, SurfCol: StepVisual_Colour, CurveCol: StepVisual_Colour, RenderCol: StepVisual_Colour, RenderTransp: float, isForNAUO: Optional[bool] = False) -> StepVisual_PresentationStyleAssignment: ...
-+    def NbRootStyles(self) -> int: ...
-     def NbStyles(self) -> int: ...
-+    def RootStyle(self, i: int) -> StepVisual_StyledItem: ...
-     def Style(self, i: int) -> StepVisual_StyledItem: ...
- 
- class STEPConstruct_ValidationProps(STEPConstruct_Tool):
-diff --git a/src/SWIG_files/wrapper/ShapeUpgrade.i b/src/SWIG_files/wrapper/ShapeUpgrade.i
-index 1fd11ef9..b3c16c8c 100644
---- a/src/SWIG_files/wrapper/ShapeUpgrade.i
-+++ b/src/SWIG_files/wrapper/ShapeUpgrade.i
-@@ -1064,6 +1064,7 @@ None
- class ShapeUpgrade_UnifySameDomain : public Standard_Transient {
- 	public:
- typedef NCollection_DataMap<TopoDS_Shape , opencascade ::handle<Geom_Plane>, TopTools_ShapeMapHasher> DataMapOfFacePlane;
-+typedef NCollection_DataMap<TopoDS_Shape , TopTools_MapOfShape , TopTools_ShapeMapHasher> DataMapOfShapeMapOfShape;
- 		/****************** ShapeUpgrade_UnifySameDomain ******************/
- 		/**** md5 signature: 81e68dd91fd764ff95aa62b12dc88ed6 ****/
- 		%feature("compactdefaultargs") ShapeUpgrade_UnifySameDomain;
-diff --git a/src/SWIG_files/wrapper/StdPrs.i b/src/SWIG_files/wrapper/StdPrs.i
-index 0d01b154..bcdbf6c2 100644
---- a/src/SWIG_files/wrapper/StdPrs.i
-+++ b/src/SWIG_files/wrapper/StdPrs.i
-@@ -1220,7 +1220,7 @@ int
- class StdPrs_ShadedShape : public Prs3d_Root {
- 	public:
- 		/****************** Add ******************/
--		/**** md5 signature: 4361c97ebfd2d178620c977d5eabb386 ****/
-+		/**** md5 signature: eb25cffb7e72ca49100cdcc43a05ee8c ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape>. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1231,15 +1231,17 @@ theShape: TopoDS_Shape
- theDrawer: Prs3d_Drawer
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** Add ******************/
--		/**** md5 signature: c21dc028b4eb82bb3707a6e95d6e5c3b ****/
-+		/**** md5 signature: c2784d9b78f332340fcb1d6c9293a2a1 ****/
- 		%feature("compactdefaultargs") Add;
- 		%feature("autodoc", "Shades <theshape> with texture coordinates. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups).
- 
-@@ -1254,12 +1256,14 @@ theUVRepeat: gp_Pnt2d
- theUVScale: gp_Pnt2d
- theVolume: StdPrs_Volume,optional
- 	default value is StdPrs_Volume_Autodetection
-+theGroup: Graphic3d_Group,optional
-+	default value is NULL
- 
- Returns
- -------
- None
- ") Add;
--		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection);
-+		static void Add(const opencascade::handle<Prs3d_Presentation> & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle<Prs3d_Drawer> & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle<Graphic3d_Group> & theGroup = NULL);
- 
- 		/****************** AddWireframeForFacesWithoutTriangles ******************/
- 		/**** md5 signature: 2399101e036cd3b0540bfa37732d6fc1 ****/
-diff --git a/src/SWIG_files/wrapper/StdPrs.pyi b/src/SWIG_files/wrapper/StdPrs.pyi
-index 3a01af7b..4df76eb5 100644
---- a/src/SWIG_files/wrapper/StdPrs.pyi
-+++ b/src/SWIG_files/wrapper/StdPrs.pyi
-@@ -156,10 +156,10 @@ class StdPrs_PoleCurve(Prs3d_Root):
- class StdPrs_ShadedShape(Prs3d_Root):
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @overload
-     @staticmethod
--    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ...
-+    def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ...
-     @staticmethod
-     def AddWireframeForFacesWithoutTriangles(thePrs: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer) -> None: ...
-     @staticmethod
-diff --git a/src/SWIG_files/wrapper/StepToGeom.i b/src/SWIG_files/wrapper/StepToGeom.i
-index a91cc710..f4ab236f 100644
---- a/src/SWIG_files/wrapper/StepToGeom.i
-+++ b/src/SWIG_files/wrapper/StepToGeom.i
-@@ -808,22 +808,6 @@ opencascade::handle<Geom2d_VectorWithMagnitude>
- ") MakeVectorWithMagnitude2d;
- 		static opencascade::handle<Geom2d_VectorWithMagnitude> MakeVectorWithMagnitude2d(const opencascade::handle<StepGeom_Vector> & SV);
- 
--		/****************** MakeYprRotation ******************/
--		/**** md5 signature: de9dc847a92c9949d29654e63b9eb686 ****/
--		%feature("compactdefaultargs") MakeYprRotation;
--		%feature("autodoc", "No available documentation.
--
--Parameters
------------
--SR: StepKinematics_SpatialRotation
--theCntxt: StepRepr_GlobalUnitAssignedContext
--
--Returns
---------
--opencascade::handle<TColStd_HArray1OfReal>
--") MakeYprRotation;
--		static opencascade::handle<TColStd_HArray1OfReal> MakeYprRotation(const StepKinematics_SpatialRotation & SR, const opencascade::handle<StepRepr_GlobalUnitAssignedContext> & theCntxt);
--
- };
- 
- 
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.i b/src/SWIG_files/wrapper/XCAFDoc.i
-index 791919dd..e5c716a9 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.i
-+++ b/src/SWIG_files/wrapper/XCAFDoc.i
-@@ -2317,7 +2317,7 @@ TDF_Label
- 		TDF_Label FindColor(const Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: be86e43f2f2ac06163dce467a9739527 ****/
-+		/**** md5 signature: 7092ec33c89b067e1ceab0d67b5ed02d ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2330,10 +2330,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: a7a6506d3132240934c87e97ec6b28ed ****/
-+		/**** md5 signature: 7252a98dd463a84602d0b7516d6cfc04 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color.
- 
-@@ -2346,7 +2346,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
-+		static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 869ec12dba73e125e4d66d2a85d2d496 ****/
-@@ -2366,7 +2366,7 @@ bool
- 		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, TDF_Label & colorL);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: 5801253cfaf9cc63278aa2d80d15b2c3 ****/
-+		/**** md5 signature: 9f42bc515522bf5857381b8ed56f5af6 ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2380,10 +2380,10 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color);
- 
- 		/****************** GetColor ******************/
--		/**** md5 signature: f56e146c8c1c603ab9bcf2d6c801e3b4 ****/
-+		/**** md5 signature: 175af0eadf13dd6e8e7059280dcebe1e ****/
- 		%feature("compactdefaultargs") GetColor;
- 		%feature("autodoc", "Returns color assigned to <l> as <type> returns false if no such color is assigned.
- 
-@@ -2397,7 +2397,7 @@ Returns
- -------
- bool
- ") GetColor;
--		Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
-+		static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color);
- 
- 		/****************** GetColor ******************/
- 		/**** md5 signature: 6e439ce30113cabaadf18ee4ce1d0971 ****/
-@@ -2599,7 +2599,7 @@ bool
- 		Standard_Boolean IsSet(const TopoDS_Shape & S, const XCAFDoc_ColorType type);
- 
- 		/****************** IsVisible ******************/
--		/**** md5 signature: e84f73aaf1ac293dea741c71b9f10a4b ****/
-+		/**** md5 signature: bcc14ce19df050eb884b5911b48c4b59 ****/
- 		%feature("compactdefaultargs") IsVisible;
- 		%feature("autodoc", "Return true if object on this label is visible, false if invisible.
- 
-@@ -2611,7 +2611,7 @@ Returns
- -------
- bool
- ") IsVisible;
--		Standard_Boolean IsVisible(const TDF_Label & L);
-+		static Standard_Boolean IsVisible(const TDF_Label & L);
- 
- 		/****************** RemoveColor ******************/
- 		/**** md5 signature: 3e1749f5696dd21fe53c3eb3d8e77952 ****/
-@@ -3477,7 +3477,7 @@ None
- 		void GetDatumLabels(TDF_LabelSequence & Labels);
- 
- 		/****************** GetDatumOfTolerLabels ******************/
--		/**** md5 signature: ed65059da2973245ec5c0f5e0dfd7526 ****/
-+		/**** md5 signature: 581e63a0a9642866e1575d216f9b4d3d ****/
- 		%feature("compactdefaultargs") GetDatumOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels defined for thedimtoll label.
- 
-@@ -3490,10 +3490,10 @@ Returns
- -------
- bool
- ") GetDatumOfTolerLabels;
--		Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDatumWithObjectOfTolerLabels ******************/
--		/**** md5 signature: da94437dec84c797c8bab6e76d5e373f ****/
-+		/**** md5 signature: d5f3a53d01bb6038ce1c82b7e4989ce4 ****/
- 		%feature("compactdefaultargs") GetDatumWithObjectOfTolerLabels;
- 		%feature("autodoc", "Returns all datum labels with xcafdimtolobjects_datumobject defined for label thedimtoll.
- 
-@@ -3506,7 +3506,7 @@ Returns
- -------
- bool
- ") GetDatumWithObjectOfTolerLabels;
--		Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
-+		static Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums);
- 
- 		/****************** GetDimTol ******************/
- 		/**** md5 signature: 5f2928d077835acfc683c0b7e312ac72 ****/
-@@ -3646,7 +3646,7 @@ bool
- 		Standard_Boolean GetRefGeomToleranceLabels(const TDF_Label & theShapeL, TDF_LabelSequence & theDimTols);
- 
- 		/****************** GetRefShapeLabel ******************/
--		/**** md5 signature: e25d6989472f0a0e102c1daa5f739a29 ****/
-+		/**** md5 signature: b09dac51ded70edf3dd23cc545931b1a ****/
- 		%feature("compactdefaultargs") GetRefShapeLabel;
- 		%feature("autodoc", "Gets all shape labels referred by thel label of the gd&t table. returns false if there are no shape labels added to the sequences.
- 
-@@ -3660,7 +3660,7 @@ Returns
- -------
- bool
- ") GetRefShapeLabel;
--		Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
-+		static Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond);
- 
- 		/****************** GetTolerOfDatumLabels ******************/
- 		/**** md5 signature: b4d4047d58bcf3d1d31d5586d788da7e ****/
-@@ -5490,20 +5490,20 @@ opencascade::handle<TColStd_HSequenceOfExtendedString>
- 		opencascade::handle<TColStd_HSequenceOfExtendedString> GetLayers(const TopoDS_Shape & Sh);
- 
- 		/****************** GetShapesOfLayer ******************/
--		/**** md5 signature: 8b01d3b5f0a0832996031f609b876e7c ****/
-+		/**** md5 signature: 2bcd2de1711ebf8ae0d1ddf5d01dce52 ****/
- 		%feature("compactdefaultargs") GetShapesOfLayer;
- 		%feature("autodoc", "Return sequanese of shape labels that assigned with layers to <shlabels>.
- 
- Parameters
- ----------
--layerL: TDF_Label
--ShLabels: TDF_LabelSequence
-+theLayerL: TDF_Label
-+theShLabels: TDF_LabelSequence
- 
- Returns
- -------
- None
- ") GetShapesOfLayer;
--		void GetShapesOfLayer(const TDF_Label & layerL, TDF_LabelSequence & ShLabels);
-+		static void GetShapesOfLayer(const TDF_Label & theLayerL, TDF_LabelSequence & theShLabels);
- 
- 		/****************** ID ******************/
- 		/**** md5 signature: 4697ce8a095fa6dcef0217708d19718f ****/
-@@ -6456,7 +6456,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 806c54e68af730f31f3353b2ba682bd0 ****/
-+		/**** md5 signature: cf930e538eb371f96b92c4f439c49612 ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material assigned to <matl> returns false if no such material is assigned.
- 
-@@ -6472,7 +6472,7 @@ Returns
- -------
- aDensity: float
- ") GetMaterial;
--		Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> & aName, opencascade::handle<TCollection_HAsciiString> & aDescription, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> & aDensName, opencascade::handle<TCollection_HAsciiString> & aDensValType);
-+		static Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, Standard_Real &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue, opencascade::handle<TCollection_HAsciiString> &OutValue);
- 
- 		/****************** GetMaterialLabels ******************/
- 		/**** md5 signature: cd3883adc849957e7e10d763ad936071 ****/
-@@ -8152,6 +8152,32 @@ opencascade::handle<TDataStd_NamedData>
- ") GetNamedProperties;
- 		opencascade::handle<TDataStd_NamedData> GetNamedProperties(const TopoDS_Shape & theShape, const Standard_Boolean theToCreate = Standard_False);
- 
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 3215690f7fd49b341401d78832c630e0 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of shape's labels @param[in] thelabels a sequence of labels to get shapes from returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Parameters
-+----------
-+theLabels: TDF_LabelSequence
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		static TopoDS_Shape GetOneShape(const TDF_LabelSequence & theLabels);
-+
-+		/****************** GetOneShape ******************/
-+		/**** md5 signature: 5c1df85e1e2a72b0b93fde509f26a709 ****/
-+		%feature("compactdefaultargs") GetOneShape;
-+		%feature("autodoc", "Gets shape from a sequence of all top-level shapes which are free returns original shape in case of one label and a compound of shapes in case of more.
-+
-+Returns
-+-------
-+TopoDS_Shape
-+") GetOneShape;
-+		TopoDS_Shape GetOneShape();
-+
- 		/****************** GetReferredShape ******************/
- 		/**** md5 signature: 63acc4d5460c835c166b1fc0b2913030 ****/
- 		%feature("compactdefaultargs") GetReferredShape;
-@@ -9844,7 +9870,7 @@ Standard_GUID
- 		static const Standard_GUID & GetID();
- 
- 		/****************** GetMaterial ******************/
--		/**** md5 signature: 83194336f7abcf51085de62960d38361 ****/
-+		/**** md5 signature: 694e93123423187642f68fe8d4e64f2a ****/
- 		%feature("compactdefaultargs") GetMaterial;
- 		%feature("autodoc", "Returns material defined by specified label, or null if the label is not in material table.
- 
-@@ -9856,7 +9882,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetMaterial(const TDF_Label & theMatLabel);
- 
- 		/****************** GetMaterials ******************/
- 		/**** md5 signature: a96d68af36051bd063fefc1e10aabb79 ****/
-@@ -9890,7 +9916,7 @@ bool
- 		static Standard_Boolean GetShapeMaterial(const TDF_Label & theShapeLabel, TDF_Label & theMaterialLabel);
- 
- 		/****************** GetShapeMaterial ******************/
--		/**** md5 signature: 86335bfdea98c720bcf3af0fe4fb0fe0 ****/
-+		/**** md5 signature: 04847c1ad68cdd465933ffa2a713f244 ****/
- 		%feature("compactdefaultargs") GetShapeMaterial;
- 		%feature("autodoc", "Returns material assigned to the shape label.
- 
-@@ -9902,7 +9928,7 @@ Returns
- -------
- opencascade::handle<XCAFDoc_VisMaterial>
- ") GetShapeMaterial;
--		opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
-+		static opencascade::handle<XCAFDoc_VisMaterial> GetShapeMaterial(const TDF_Label & theShapeLabel);
- 
- 		/****************** GetShapeMaterial ******************/
- 		/**** md5 signature: b4d2560c50c52f8b49c713aa67731929 ****/
-diff --git a/src/SWIG_files/wrapper/XCAFDoc.pyi b/src/SWIG_files/wrapper/XCAFDoc.pyi
-index b3036a2f..9fed3910 100644
---- a/src/SWIG_files/wrapper/XCAFDoc.pyi
-+++ b/src/SWIG_files/wrapper/XCAFDoc.pyi
-@@ -299,16 +299,20 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     @overload
-     def FindColor(self, col: Quantity_ColorRGBA) -> TDF_Label: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     @staticmethod
-     def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ...
-     @overload
--    def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-+    @staticmethod
-+    def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ...
-     @overload
-     def GetColor(self, S: TopoDS_Shape, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ...
-     @overload
-@@ -330,7 +334,8 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty):
-     def IsSet(self, L: TDF_Label, type: XCAFDoc_ColorType) -> bool: ...
-     @overload
-     def IsSet(self, S: TopoDS_Shape, type: XCAFDoc_ColorType) -> bool: ...
--    def IsVisible(self, L: TDF_Label) -> bool: ...
-+    @staticmethod
-+    def IsVisible(L: TDF_Label) -> bool: ...
-     def RemoveColor(self, lab: TDF_Label) -> None: ...
-     def ReverseChainsOfTreeNodes(self) -> bool: ...
-     @staticmethod
-@@ -418,9 +423,11 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def FindDimTol(self, theKind: int, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> TDF_Label: ...
-     def GetDatum(self, theDatumL: TDF_Label, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString, theIdentification: TCollection_HAsciiString) -> bool: ...
-     def GetDatumLabels(self, Labels: TDF_LabelSequence) -> None: ...
--    def GetDatumOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDatumWithObjectOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
--    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> Tuple[bool, int]: ...
-+    @staticmethod
-+    def GetDatumOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetDatumWithObjectOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ...
-+    def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal) -> Tuple[bool, int, str, str]: ...
-     def GetDimTolLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def GetDimensionLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-     def GetGeomToleranceLabels(self, theLabels: TDF_LabelSequence) -> None: ...
-@@ -429,7 +436,8 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty):
-     def GetRefDatumLabel(self, theShapeL: TDF_Label, theDatum: TDF_LabelSequence) -> bool: ...
-     def GetRefDimensionLabels(self, theShapeL: TDF_Label, theDimensions: TDF_LabelSequence) -> bool: ...
-     def GetRefGeomToleranceLabels(self, theShapeL: TDF_Label, theDimTols: TDF_LabelSequence) -> bool: ...
--    def GetRefShapeLabel(self, theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-+    @staticmethod
-+    def GetRefShapeLabel(theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ...
-     def GetTolerOfDatumLabels(self, theDatumL: TDF_Label, theTols: TDF_LabelSequence) -> bool: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsDatum(self, lab: TDF_Label) -> bool: ...
-@@ -629,7 +637,8 @@ class XCAFDoc_LayerTool(TDataStd_GenericEmpty):
-     def GetLayers(self, Sh: TopoDS_Shape, aLayerLS: TDF_LabelSequence) -> bool: ...
-     @overload
-     def GetLayers(self, Sh: TopoDS_Shape) -> TColStd_HSequenceOfExtendedString: ...
--    def GetShapesOfLayer(self, layerL: TDF_Label, ShLabels: TDF_LabelSequence) -> None: ...
-+    @staticmethod
-+    def GetShapesOfLayer(theLayerL: TDF_Label, theShLabels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsLayer(self, lab: TDF_Label) -> bool: ...
-     @overload
-@@ -731,7 +740,8 @@ class XCAFDoc_MaterialTool(TDataStd_GenericEmpty):
-     def GetDensityForShape(ShapeL: TDF_Label) -> float: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, MatL: TDF_Label, aName: TCollection_HAsciiString, aDescription: TCollection_HAsciiString, aDensName: TCollection_HAsciiString, aDensValType: TCollection_HAsciiString) -> Tuple[bool, float]: ...
-+    @staticmethod
-+    def GetMaterial(MatL: TDF_Label) -> Tuple[bool, str, str, float, str, str]: ...
-     def GetMaterialLabels(self, Labels: TDF_LabelSequence) -> None: ...
-     def ID(self) -> Standard_GUID: ...
-     def IsMaterial(self, lab: TDF_Label) -> bool: ...
-@@ -899,6 +909,11 @@ class XCAFDoc_ShapeTool(TDataStd_GenericEmpty):
-     def GetNamedProperties(self, theLabel: TDF_Label, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-     @overload
-     def GetNamedProperties(self, theShape: TopoDS_Shape, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ...
-+    @overload
-+    @staticmethod
-+    def GetOneShape(theLabels: TDF_LabelSequence) -> TopoDS_Shape: ...
-+    @overload
-+    def GetOneShape(self) -> TopoDS_Shape: ...
-     @staticmethod
-     def GetReferredShape(L: TDF_Label, Label: TDF_Label) -> bool: ...
-     @staticmethod
-@@ -1058,13 +1073,15 @@ class XCAFDoc_VisMaterialTool(TDF_Attribute):
-     def BaseLabel(self) -> TDF_Label: ...
-     @staticmethod
-     def GetID() -> Standard_GUID: ...
--    def GetMaterial(self, theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetMaterial(theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     def GetMaterials(self, Labels: TDF_LabelSequence) -> None: ...
-     @overload
-     @staticmethod
-     def GetShapeMaterial(theShapeLabel: TDF_Label, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
--    def GetShapeMaterial(self, theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-+    @staticmethod
-+    def GetShapeMaterial(theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ...
-     @overload
-     def GetShapeMaterial(self, theShape: TopoDS_Shape, theMaterialLabel: TDF_Label) -> bool: ...
-     @overload
-@@ -1209,7 +1226,12 @@ XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_Color_Set = XCAFDoc_Color.Set
- XCAFDoc_ColorTool_AutoNaming = XCAFDoc_ColorTool.AutoNaming
- XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
-+XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor
- XCAFDoc_ColorTool_GetID = XCAFDoc_ColorTool.GetID
-+XCAFDoc_ColorTool_IsVisible = XCAFDoc_ColorTool.IsVisible
- XCAFDoc_ColorTool_Set = XCAFDoc_ColorTool.Set
- XCAFDoc_ColorTool_SetAutoNaming = XCAFDoc_ColorTool.SetAutoNaming
- XCAFDoc_Datum_GetID = XCAFDoc_Datum.GetID
-@@ -1217,7 +1239,10 @@ XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_Datum_Set = XCAFDoc_Datum.Set
- XCAFDoc_DimTol_GetID = XCAFDoc_DimTol.GetID
- XCAFDoc_DimTol_Set = XCAFDoc_DimTol.Set
-+XCAFDoc_DimTolTool_GetDatumOfTolerLabels = XCAFDoc_DimTolTool.GetDatumOfTolerLabels
-+XCAFDoc_DimTolTool_GetDatumWithObjectOfTolerLabels = XCAFDoc_DimTolTool.GetDatumWithObjectOfTolerLabels
- XCAFDoc_DimTolTool_GetID = XCAFDoc_DimTolTool.GetID
-+XCAFDoc_DimTolTool_GetRefShapeLabel = XCAFDoc_DimTolTool.GetRefShapeLabel
- XCAFDoc_DimTolTool_Set = XCAFDoc_DimTolTool.Set
- XCAFDoc_Dimension_GetID = XCAFDoc_Dimension.GetID
- XCAFDoc_Dimension_Set = XCAFDoc_Dimension.Set
-@@ -1268,6 +1293,7 @@ XCAFDoc_GraphNode_GetDefaultGraphID = XCAFDoc_GraphNode.GetDefaultGraphID
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set
- XCAFDoc_LayerTool_GetID = XCAFDoc_LayerTool.GetID
-+XCAFDoc_LayerTool_GetShapesOfLayer = XCAFDoc_LayerTool.GetShapesOfLayer
- XCAFDoc_LayerTool_Set = XCAFDoc_LayerTool.Set
- XCAFDoc_LengthUnit_GetID = XCAFDoc_LengthUnit.GetID
- XCAFDoc_LengthUnit_Set = XCAFDoc_LengthUnit.Set
-@@ -1279,6 +1305,7 @@ XCAFDoc_Material_GetID = XCAFDoc_Material.GetID
- XCAFDoc_Material_Set = XCAFDoc_Material.Set
- XCAFDoc_MaterialTool_GetDensityForShape = XCAFDoc_MaterialTool.GetDensityForShape
- XCAFDoc_MaterialTool_GetID = XCAFDoc_MaterialTool.GetID
-+XCAFDoc_MaterialTool_GetMaterial = XCAFDoc_MaterialTool.GetMaterial
- XCAFDoc_MaterialTool_Set = XCAFDoc_MaterialTool.Set
- XCAFDoc_Note_Get = XCAFDoc_Note.Get
- XCAFDoc_Note_IsMine = XCAFDoc_Note.IsMine
-@@ -1294,6 +1321,7 @@ XCAFDoc_ShapeTool_GetComponents = XCAFDoc_ShapeTool.GetComponents
- XCAFDoc_ShapeTool_GetExternRefs = XCAFDoc_ShapeTool.GetExternRefs
- XCAFDoc_ShapeTool_GetID = XCAFDoc_ShapeTool.GetID
- XCAFDoc_ShapeTool_GetLocation = XCAFDoc_ShapeTool.GetLocation
-+XCAFDoc_ShapeTool_GetOneShape = XCAFDoc_ShapeTool.GetOneShape
- XCAFDoc_ShapeTool_GetReferredShape = XCAFDoc_ShapeTool.GetReferredShape
- XCAFDoc_ShapeTool_GetSHUO = XCAFDoc_ShapeTool.GetSHUO
- XCAFDoc_ShapeTool_GetSHUONextUsage = XCAFDoc_ShapeTool.GetSHUONextUsage
-@@ -1320,6 +1348,8 @@ XCAFDoc_ViewTool_GetID = XCAFDoc_ViewTool.GetID
- XCAFDoc_ViewTool_Set = XCAFDoc_ViewTool.Set
- XCAFDoc_VisMaterial_GetID = XCAFDoc_VisMaterial.GetID
- XCAFDoc_VisMaterialTool_GetID = XCAFDoc_VisMaterialTool.GetID
-+XCAFDoc_VisMaterialTool_GetMaterial = XCAFDoc_VisMaterialTool.GetMaterial
-+XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial
- XCAFDoc_VisMaterialTool_Set = XCAFDoc_VisMaterialTool.Set
- XCAFDoc_Volume_Get = XCAFDoc_Volume.Get
-diff --git a/src/SWIG_files/wrapper/XCAFPrs.i b/src/SWIG_files/wrapper/XCAFPrs.i
-index 51f661e0..efa0d4b0 100644
---- a/src/SWIG_files/wrapper/XCAFPrs.i
-+++ b/src/SWIG_files/wrapper/XCAFPrs.i
-@@ -1019,7 +1019,7 @@ None
- class XCAFPrs_Texture : public Graphic3d_Texture2D {
- 	public:
- 		/****************** XCAFPrs_Texture ******************/
--		/**** md5 signature: f9dbe9d0fe880b67c047fad8716af896 ****/
-+		/**** md5 signature: 000bd876aad38ca74535015d5e9463d7 ****/
- 		%feature("compactdefaultargs") XCAFPrs_Texture;
- 		%feature("autodoc", "Constructor.
- 
-@@ -1032,7 +1032,7 @@ Returns
- -------
- None
- ") XCAFPrs_Texture;
--		 XCAFPrs_Texture(const Image_Texture & theImageSource, const Graphic3d_TextureUnit theUnit);
-+		 XCAFPrs_Texture(const opencascade::handle<Image_Texture> & theImageSource, const Graphic3d_TextureUnit theUnit);
- 
- 		/****************** GetCompressedImage ******************/
- 		/**** md5 signature: bad0c95151f5a884e9dbc72217977538 ****/
-@@ -1065,15 +1065,15 @@ opencascade::handle<Image_PixMap>
- 		virtual opencascade::handle<Image_PixMap> GetImage(const opencascade::handle<Image_SupportedFormats> & theSupported);
- 
- 		/****************** GetImageSource ******************/
--		/**** md5 signature: 1fa59174d8d0d408df072137f5b3fe0e ****/
-+		/**** md5 signature: c24f99a1f3e5bf7521b240aa232d6d28 ****/
- 		%feature("compactdefaultargs") GetImageSource;
- 		%feature("autodoc", "Return image source.
- 
- Returns
- -------
--Image_Texture
-+opencascade::handle<Image_Texture>
- ") GetImageSource;
--		const Image_Texture & GetImageSource();
-+		const opencascade::handle<Image_Texture> & GetImageSource();
- 
- };
- 
-
-From 44af64d633d315e52e3f18247ff8e26d0619effb Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Tue, 4 Apr 2023 03:57:57 +0200
-Subject: [PATCH 2/4] bump occt version to 7.7.1
-
----
- CMakeLists.txt          | 6 +++---
- ci/conda/meta.yaml      | 6 +++---
- src/PkgBase/__init__.py | 2 +-
- 3 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 14a60d09..8cef86b0 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -21,8 +21,8 @@ project(PYTHONOCC)
- 
- # set pythonOCC version
- set(PYTHONOCC_VERSION_MAJOR 7)
--set(PYTHONOCC_VERSION_MINOR 6)
--set(PYTHONOCC_VERSION_PATCH 3)
-+set(PYTHONOCC_VERSION_MINOR 7)
-+set(PYTHONOCC_VERSION_PATCH 1)
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- set(PYTHONOCC_VERSION_DEVEL )
-@@ -147,7 +147,7 @@ if(DEFINED OCE_INCLUDE_PATH)
- # if OCE_INCLUDE_PATH is not passed at command line,
- # find OCE automatically
- else(OCE_INCLUDE_PATH)
--  find_package(OpenCASCADE 7.7.0 REQUIRED)
-+  find_package(OpenCASCADE 7.7.1 REQUIRED)
-   if(OpenCASCADE_FOUND)
-     message(STATUS "OpenCASCADE version found: " ${OpenCASCADE_MAJOR_VERSION} "." ${OpenCASCADE_MINOR_VERSION} "." ${OpenCASCADE_MAINTENANCE_VERSION})
-     message(STATUS "OpenCASCADE include directory: " ${OpenCASCADE_INCLUDE_DIR})
-diff --git a/ci/conda/meta.yaml b/ci/conda/meta.yaml
-index 33d91edc..8ca381de 100644
---- a/ci/conda/meta.yaml
-+++ b/ci/conda/meta.yaml
-@@ -1,4 +1,4 @@
--{% set version = "7.7.0" %}
-+{% set version = "7.7.1" %}
- 
- package:
-   name: pythonocc-core
-@@ -26,11 +26,11 @@ requirements:
- 
-   host:
-     - python {{ python }}
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - numpy >=1.17
- 
-   run:
--    - occt ==7.7.0
-+    - occt ==7.7.1
-     - six
-     - numpy >=1.17
- 
-diff --git a/src/PkgBase/__init__.py b/src/PkgBase/__init__.py
-index 898fb48e..e90690b0 100644
---- a/src/PkgBase/__init__.py
-+++ b/src/PkgBase/__init__.py
-@@ -1,6 +1,6 @@
- PYTHONOCC_VERSION_MAJOR = 7
- PYTHONOCC_VERSION_MINOR = 7
--PYTHONOCC_VERSION_PATCH = 0
-+PYTHONOCC_VERSION_PATCH = 1
- 
- #  Empty for official releases, set to -dev, -rc1, etc for development releases
- PYTHONOCC_VERSION_DEVEL = ''
-
-From 6ec7cc9095631de070573fc26164578f2e2c87bf Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 16:40:05 +0200
-Subject: [PATCH 3/4] remove xvfb tests from conda build
-
----
- ci/conda/run_test.sh | 7 -------
- 1 file changed, 7 deletions(-)
-
-diff --git a/ci/conda/run_test.sh b/ci/conda/run_test.sh
-index 8d0acf0a..6610b84e 100644
---- a/ci/conda/run_test.sh
-+++ b/ci/conda/run_test.sh
-@@ -2,10 +2,3 @@
- cd ../work/test
- python run_tests.py
- mypy test_mypy_classic_occ_bottle.py
--
--if [ $(uname) == Linux ]; then
--    # start xvfb
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyqt5_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyside2_unittest.py
--    xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_wx_unittest.py
--fi
-
-From bcd7a2c2e0b12801416db9c0d73f2c01992e8ab5 Mon Sep 17 00:00:00 2001
-From: tpaviot <tpaviot@gmail.com>
-Date: Thu, 13 Apr 2023 17:08:51 +0200
-Subject: [PATCH 4/4] Fix DataEchange load colrs
-
----
- src/Extend/DataExchange.py | 15 ++++++++-------
- 1 file changed, 8 insertions(+), 7 deletions(-)
-
-diff --git a/src/Extend/DataExchange.py b/src/Extend/DataExchange.py
-index 20f0c9b8..6545d83a 100644
---- a/src/Extend/DataExchange.py
-+++ b/src/Extend/DataExchange.py
-@@ -41,6 +41,7 @@ from OCC.Core.TDocStd import TDocStd_Document
- from OCC.Core.XCAFDoc import (
-     XCAFDoc_DocumentTool_ShapeTool,
-     XCAFDoc_DocumentTool_ColorTool,
-+    XCAFDoc_ColorTool,
- )
- from OCC.Core.STEPCAFControl import STEPCAFControl_Reader
- from OCC.Core.TDF import TDF_LabelSequence, TDF_Label
-@@ -62,6 +63,7 @@ try:
- except ImportError:
-     HAVE_SVGWRITE = False
- 
-+
- ##########################
- # Step import and export #
- ##########################
-@@ -280,11 +282,10 @@ def read_step_file_with_names_colors(filename):
- 
-             if not color_set:
-                 if (
--                    color_tool.GetColor(lab, 0, c)
--                    or color_tool.GetColor(lab, 1, c)
--                    or color_tool.GetColor(lab, 2, c)
-+                    XCAFDoc_ColorTool.GetColor(lab, 0, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 1, c)
-+                    or XCAFDoc_ColorTool.GetColor(lab, 2, c)
-                 ):
--
-                     color_tool.SetInstanceColor(shape, 0, c)
-                     color_tool.SetInstanceColor(shape, 1, c)
-                     color_tool.SetInstanceColor(shape, 2, c)
-@@ -330,9 +331,9 @@ def read_step_file_with_names_colors(filename):
- 
-                 if not color_set:
-                     if (
--                        color_tool.GetColor(lab_subs, 0, c)
--                        or color_tool.GetColor(lab_subs, 1, c)
--                        or color_tool.GetColor(lab_subs, 2, c)
-+                        XCAFDoc_ColorTool.GetColor(lab_subs, 0, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 1, c)
-+                        or XCAFDoc_ColorTool.GetColor(lab_subs, 2, c)
-                     ):
-                         color_tool.SetInstanceColor(shape, 0, c)
-                         color_tool.SetInstanceColor(shape, 1, c)
diff --git a/srcpkgs/python3-occ/template b/srcpkgs/python3-occ/template
index 1d02354f2c41c2..3a1e7e5963645d 100644
--- a/srcpkgs/python3-occ/template
+++ b/srcpkgs/python3-occ/template
@@ -1,16 +1,17 @@
 # Template file for 'python3-occ'
 pkgname=python3-occ
-version=7.7.0
-revision=3
+version=7.9.0
+revision=1
 archs="i686* x86_64* armv7l* aarch64* ppc*"
 build_style=cmake
-configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None"
+build_helper="numpy"
+configure_args="-DCMAKE_BUILD_TYPE=None -DPYTHONOCC_MESHDS_NUMPY=ON"
 hostmakedepends="python3 python3-setuptools swig"
-makedepends="python3-devel occt-devel freetype-devel swig rapidjson"
+makedepends="python3-devel python3-numpy occt-devel freetype-devel swig rapidjson"
 depends="python3 occt freetype"
 short_desc="Industrial strength 3D CAD Python3 package"
 maintainer="Karl Nilsson <karl.robert.nilsson@gmail.com>"
 license="LGPL-3.0-or-later"
-homepage="http://pythonocc.org"
+homepage="https://github.com/tpaviot/pythonocc-core"
 distfiles="https://github.com/tpaviot/pythonocc-core/archive/${version}.tar.gz"
-checksum=9b27003b87799badfae04f8cacd03b8faa1309600c9de8021434d7511e718f82
+checksum=98e53657f54e8a9c3477a81c0b4a11bc6659d5f60123e263419521b42a8e111f

From d69f5fae6ccf0f02a8dbc656322d3852380bf473 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 4/8] freecad: rebuild for occt-7.9.0.

---
 srcpkgs/freecad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/freecad/template b/srcpkgs/freecad/template
index 06d5f0fa09ad45..8b9e44300ce144 100644
--- a/srcpkgs/freecad/template
+++ b/srcpkgs/freecad/template
@@ -1,7 +1,7 @@
 # Template file for 'freecad'
 pkgname=freecad
 version=1.0.0
-revision=2
+revision=3
 _pycxx_ver=7.1.8
 _ondsel_ver=91f70382beeb58b32432b5a82da3802e4c19199c
 build_style=cmake

From 34dafbdfc07e73e280341e7dc384b1569f1013cc Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:32 +0000
Subject: [PATCH 5/8] gmsh: rebuild for occt-7.9.0.

---
 srcpkgs/gmsh/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gmsh/template b/srcpkgs/gmsh/template
index c3727d90e4c93b..371b2f5cfc9c31 100644
--- a/srcpkgs/gmsh/template
+++ b/srcpkgs/gmsh/template
@@ -1,7 +1,7 @@
 # Template file for 'gmsh'
 pkgname=gmsh
 version=4.8.4
-revision=2
+revision=3
 build_style=cmake
 configure_args="-DENABLE_SYSTEM_CONTRIB=ON
  -DENABLE_HXT=$(vopt_if hxt ON OFF)

From 7f6053a590bf8285537f51ec0494a1cc5b2a7876 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 6/8] horizon: rebuild for occt-7.9.0.

---
 srcpkgs/horizon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/horizon/template b/srcpkgs/horizon/template
index 16bbf70822d672..160df13f96fae3 100644
--- a/srcpkgs/horizon/template
+++ b/srcpkgs/horizon/template
@@ -1,7 +1,7 @@
 # Template file for 'horizon'
 pkgname=horizon
 version=2.5.0
-revision=3
+revision=4
 build_style=gnu-makefile
 make_build_args="GOLD="
 make_install_target="install install-man"

From d7924345f4faacf5e034c056da49d7fa6fa43fb3 Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 7/8] kicad: rebuild for occt-7.9.0.

---
 srcpkgs/kicad/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/kicad/template b/srcpkgs/kicad/template
index 34df918edabea4..6cb7e771efb8b6 100644
--- a/srcpkgs/kicad/template
+++ b/srcpkgs/kicad/template
@@ -2,7 +2,7 @@
 # XXX: keep in sync with kicad-doc
 pkgname=kicad
 version=9.0.1
-revision=1
+revision=2
 build_style=cmake
 build_helper="cmake-wxWidgets-gtk3"
 configure_args="-DKICAD_SCRIPTING_WXPYTHON=ON -DKICAD_USE_EGL=ON -DKICAD_BUILD_QA_TESTS=OFF

From 72fdc9a07700ef8db0aa5af10319093762b1560b Mon Sep 17 00:00:00 2001
From: ii8 <murray.calavera@protonmail.com>
Date: Sun, 23 Feb 2025 18:40:33 +0000
Subject: [PATCH 8/8] librepcb: rebuild for occt-7.9.0.

---
 srcpkgs/librepcb/patches/TKDESTEP.patch | 56 +++++++++++++++++++++++++
 srcpkgs/librepcb/template               |  2 +-
 2 files changed, 57 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/librepcb/patches/TKDESTEP.patch

diff --git a/srcpkgs/librepcb/patches/TKDESTEP.patch b/srcpkgs/librepcb/patches/TKDESTEP.patch
new file mode 100644
index 00000000000000..dbdcb2f8cca847
--- /dev/null
+++ b/srcpkgs/librepcb/patches/TKDESTEP.patch
@@ -0,0 +1,56 @@
+From a68d5d361c7cb920b92ee9e12c7505cbc9986e56 Mon Sep 17 00:00:00 2001
+From: "U. Bruhin" <urbibruhin@bluewin.ch>
+Date: Sun, 10 Mar 2024 15:57:41 +0100
+Subject: [PATCH] CMake: Fix linking with OCCT 7.8.x
+
+---
+ cmake/FindOpenCascade.cmake | 25 ++++++++++++++++++++-----
+ 1 file changed, 20 insertions(+), 5 deletions(-)
+
+diff --git a/cmake/FindOpenCascade.cmake b/cmake/FindOpenCascade.cmake
+index 9a30f9759c..1ce3c21689 100644
+--- a/cmake/FindOpenCascade.cmake
++++ b/cmake/FindOpenCascade.cmake
+@@ -1,6 +1,3 @@
+-# Specify OpenCascade libraries needed for LibrePCB
+-set(OCC_LIBRARIES TKXCAF TKXDESTEP)
+-
+ # Add library
+ add_library(open_cascade INTERFACE)
+ add_library(OpenCascade::OpenCascade ALIAS open_cascade)
+@@ -15,7 +12,22 @@ endif()
+ # Try to find OCCT shared library on the system
+ find_package(OpenCASCADE CONFIG QUIET)
+ if(OpenCASCADE_FOUND)
+-  message(STATUS "Using system OpenCASCADE (OCCT)")
++  message(STATUS "Using system OpenCASCADE (OCCT ${OpenCASCADE_VERSION})")
++
++  # Specify OpenCascade libraries needed for LibrePCB
++  # https://github.com/LibrePCB/LibrePCB/issues/1315
++  if(OpenCASCADE_VERSION VERSION_GREATER 7.8.0)
++    set(OCC_LIBRARIES TKCAF TKDESTEP)
++  elseif(OpenCASCADE_VERSION VERSION_EQUAL 7.8.0)
++    message(
++      FATAL_ERROR
++        "Cannot use OpenCascade 7.8.0 because it contains a critical bug. \
++        Please use a different version (or if this is not possible, try OCE \
++        instead of OCCT)."
++    )
++  else()
++    set(OCC_LIBRARIES TKXCAF TKXDESTEP)
++  endif()
+ 
+   # Populate target
+   target_include_directories(
+@@ -32,7 +44,10 @@ endif()
+ # Try to find OCE shared library on the system
+ find_package(OCE CONFIG QUIET)
+ if(OCE_FOUND)
+-  message(STATUS "Using system OpenCASCADE (OCE)")
++  message(STATUS "Using system OpenCASCADE (OCE ${OCE_VERSION})")
++
++  # Specify OpenCascade libraries needed for LibrePCB
++  set(OCC_LIBRARIES TKXCAF TKXDESTEP)
+ 
+   # Populate target
+   target_include_directories(
diff --git a/srcpkgs/librepcb/template b/srcpkgs/librepcb/template
index eb46149e284e57..aa32d7f1ad2237 100644
--- a/srcpkgs/librepcb/template
+++ b/srcpkgs/librepcb/template
@@ -1,7 +1,7 @@
 # Template file for 'librepcb'
 pkgname=librepcb
 version=1.0.0
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DBUILD_QTQUICK_TEST=OFF"
 hostmakedepends="unzip qt5-qmake qt5-host-tools"

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PR PATCH] [Closed]: occt: update to 7.9.0.
  2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
                   ` (11 preceding siblings ...)
  2025-04-18 11:45 ` ii8
@ 2025-04-18 22:06 ` ii8
  12 siblings, 0 replies; 14+ messages in thread
From: ii8 @ 2025-04-18 22:06 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 380 bytes --]

There's a closed pull request on the void-packages repository

occt: update to 7.9.0.
https://github.com/void-linux/void-packages/pull/54462

Description:
#### Testing the changes
- I tested the changes in this PR: **YES**

#### Local build testing
- I built this PR locally for my native architecture, x86_64-musl

This version fixes myriad segmentation faults in FreeCAD.

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2025-04-18 22:06 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-23 17:48 [PR PATCH] occt: update to 7.9.0 ii8
2025-02-23 18:45 ` [PR PATCH] [Updated] " ii8
2025-02-23 20:09 ` ii8
2025-03-15 16:30 ` Luciogi
2025-03-15 16:31 ` Luciogi
2025-03-15 16:33 ` Luciogi
2025-03-15 18:37 ` ii8
2025-03-19 15:27 ` Luciogi
2025-04-16 20:20 ` [PR PATCH] [Updated] " ii8
2025-04-16 21:21 ` ii8
2025-04-17  9:02 ` ii8
2025-04-17 13:37 ` ii8
2025-04-18 11:45 ` ii8
2025-04-18 22:06 ` [PR PATCH] [Closed]: " ii8

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).