Skip to content

Commit ab284b1

Browse files
authored
Merge pull request #69 from chennes/updateLibPack20260430
Update LibPack 2026-04-30; Qt 6.11 and Windows-on-ARM
2 parents 30b8fa3 + ad5d714 commit ab284b1

12 files changed

Lines changed: 1381 additions & 358 deletions

.github/workflows/tests.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: Tests
2+
3+
on:
4+
push:
5+
pull_request:
6+
7+
jobs:
8+
test:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v4
12+
- uses: actions/setup-python@v5
13+
with:
14+
python-version: "3.14"
15+
- name: Install script dependencies
16+
run: pip install -r Requirements.txt
17+
- name: Run unit tests
18+
run: python -m unittest discover -p "test_*.py"

compile_all.py

Lines changed: 210 additions & 211 deletions
Large diffs are not rendered by default.

config.json

Lines changed: 99 additions & 91 deletions
Original file line numberDiff line numberDiff line change
@@ -1,89 +1,94 @@
11
{
2-
"FreeCAD-version":"1.1.0",
3-
"LibPack-version":"3.2.0",
2+
"FreeCAD-version":"1.2.0",
3+
"LibPack-version":"3.4.0",
44
"content": [
55
{
66
"name":"python",
77
"git-repo":"https://github.com/python/cpython.git",
8-
"git-ref":"v3.13.5",
8+
"git-ref":"v3.14.4",
99
"requirements": [
1010
"annotated-types==0.7.0",
11-
"anyio==4.9.0",
11+
"anyio==4.13.0",
1212
"attrs==23.2.0",
13-
"certifi==2025.4.26",
14-
"charset-normalizer==3.4.2",
13+
"certifi==2026.4.22",
14+
"charset-normalizer==3.4.7",
1515
"click==8.1.7",
16-
"cmake==3.31.0.1",
17-
"cog==0.13.2",
16+
"cmake==4.3.2",
17+
"cog==0.16.12",
1818
"colorama==0.4.6",
19-
"configparser==7.1.0",
20-
"contourpy==1.3.2",
19+
"configparser==7.2.0",
20+
"contourpy==1.3.3",
2121
"cycler==0.12.1",
22-
"debugpy==1.8.8",
22+
"debugpy==1.8.20",
2323
"definitions==0.2.0",
2424
"defusedxml==0.7.1",
25-
"fastapi==0.110.3",
26-
"fonttools==4.58.0",
25+
"elementpath==5.1.1",
26+
"fastapi==0.118.3",
27+
"fonttools==4.62.1",
2728
"h11==0.16.0",
28-
"httptools==0.6.4",
29-
"idna==3.10",
30-
"joblib==1.5.0",
31-
"kiwisolver==1.4.8",
32-
"ladybug-core==0.43.18",
33-
"ladybug-geometry==1.33.11",
34-
"lxml==5.4.0",
35-
"matplotlib==3.9.2",
36-
"nltk==3.9.1",
37-
"numpy==2.2.5",
38-
"packaging==24.2",
39-
"pillow==11.0.0",
29+
"httptools==0.7.1",
30+
"idna==3.13",
31+
"ifcopenshell==0.8.5; platform_machine != \"ARM64\"",
32+
"isodate==0.7.2",
33+
"joblib==1.5.3",
34+
"kiwisolver==1.5.0",
35+
"ladybug-core==0.44.42",
36+
"ladybug-geometry==1.34.22",
37+
"lark==1.3.1",
38+
"lxml==6.1.0",
39+
"matplotlib==3.10.9",
40+
"nltk==3.9.4",
41+
"numpy==2.4.4",
42+
"packaging==26.2",
43+
"pillow==12.2.0",
4044
"ply==3.11",
41-
"pycollada==0.8",
42-
"pydantic==2.11.4",
43-
"pydantic_core==2.33.2",
44-
"pyparsing==3.2.3",
45-
"pyshp==2.3.1",
46-
"pysolar==0.11",
45+
"pycollada==0.9.3",
46+
"pydantic==2.13.3",
47+
"pydantic_core==2.46.3",
48+
"pyparsing==3.3.2",
49+
"pyshp==3.0.3",
50+
"pysolar==0.13",
4751
"python-dateutil==2.9.0.post0",
48-
"python-dotenv==1.1.0",
49-
"PyYAML==6.0.2",
50-
"regex==2024.11.6",
51-
"requests==2.32.3",
52+
"python-dotenv==1.2.2",
53+
"PyYAML==6.0.3",
54+
"regex==2026.4.4",
55+
"requests==2.33.1",
5256
"rpdb2==2.0.0.1.2",
53-
"scipy==1.15.3",
57+
"scipy==1.17.1",
5458
"sets==0.3.2",
55-
"setuptools==75.5.0",
59+
"setuptools==82.0.1",
60+
"shapely==2.1.2; platform_machine != \"ARM64\"",
5661
"six==1.17.0",
5762
"sniffio==1.3.1",
58-
"starlette==0.37.2",
63+
"starlette==0.48.0",
5964
"structlog==24.4.0",
60-
"tqdm==4.67.1",
61-
"typing-inspection==0.4.0",
62-
"typing_extensions==4.13.2",
63-
"urllib3==2.4.0",
64-
"uvicorn==0.34.2",
65-
"vermin==1.6.0",
66-
"watchfiles==1.1.0",
67-
"websockets==15.0.1",
68-
"wheel==0.45.1"
65+
"tqdm==4.67.3",
66+
"typing-inspection==0.4.2",
67+
"typing_extensions==4.15.0",
68+
"urllib3==2.6.3",
69+
"uvicorn==0.46.0",
70+
"vermin==1.8.0",
71+
"watchfiles==1.1.1",
72+
"websockets==16.0",
73+
"wheel==0.47.0",
74+
"xmlschema==4.3.1"
6975
]
7076
},
7177
{
7278
"name":"zlib",
7379
"git-repo":"https://github.com/madler/zlib",
74-
"git-ref":"v1.3.1"
80+
"git-ref":"v1.3.2"
7581
},
7682
{
7783
"name":"libpng",
7884
"git-repo":"https://github.com/glennrp/libpng",
79-
"git-ref":"v1.6.47"
85+
"git-ref":"v1.6.58"
8086
},
8187
{
8288
"name":"qt",
83-
"install-directory":"C:\\Qt\\6.9.1\\msvc2022_x64",
8489
"git-repo": "git://code.qt.io/qt/qt5.git",
85-
"git-ref": "v6.9.1",
86-
"fallback-build-dir": "C:\\temp"
90+
"git-ref": "v6.11.0",
91+
"fallback-build-dir": "G:\\temp"
8792
},
8893
{
8994
"name":"bzip2",
@@ -93,77 +98,76 @@
9398
{
9499
"name":"pybind11",
95100
"git-repo":"https://github.com/pybind/pybind11",
96-
"git-ref":"v2.13.6"
101+
"git-ref":"v3.0.4"
97102
},
98103
{
99104
"name": "boost",
100105
"git-repo": "https://github.com/boostorg/boost",
101-
"git-ref": "boost-1.88.0"
106+
"git-ref": "boost-1.91.0"
102107
},
103108
{
104109
"name":"coin",
105110
"git-repo":"https://github.com/coin3d/coin",
106-
"git-hash":"0f807963c7ebff45dcb2cf5e3ab127df25ddc1c3",
107-
"note": "Git hash from 17 July 2025"
111+
"git-ref": "v4.0.8",
112+
"patches": ["patches/coin-01-cxx20-shared-ptr-unique.patch"],
113+
"note": "That patch will not be needed in the next release of Coin, it's fixed upstream already"
108114
},
109115
{
110116
"name":"quarter",
111117
"git-repo":"https://github.com/coin3d/quarter",
112-
"git-hash":"e57b54a05401afc900c907fa06c3eb07c469ef94",
113-
"note": "Git hash from 17 July 2025",
118+
"git-ref":"v1.2.3",
114119
"patches":["patches/quarter-01-add-QOpenGLContext-to-QuarterWidgetP.patch"]
115120
},
116121
{
117122
"name":"pcre2",
118123
"git-repo":"https://github.com/PCRE2Project/pcre2",
119-
"git-ref":"pcre2-10.45"
124+
"git-ref":"pcre2-10.47"
120125
},
121126
{
122127
"name":"swig",
123128
"git-repo":"https://github.com/swig/swig.git",
124-
"git-tag":"v4.3.0"
129+
"git-tag":"v4.4.1"
125130
},
126131
{
127132
"name":"pivy",
128133
"git-repo":"https://github.com/coin3d/pivy",
129-
"git-hash":"93e5d71c079168419a7f75dd037eedcd6088527f",
130-
"note": "Git hash from 17 July 2025"
134+
"git-ref":"0.6.11"
131135
},
132136
{
133137
"name":"libclang",
134-
"url-x64":"https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_20.1.3-based-windows-vs2019_64.7z",
135-
"url-ARM64":"https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_20.1.3-based-windows-vs2022_arm64.7z"
138+
"url-x64":"https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_21.1.2-based-windows-vs2022_64.7z",
139+
"url-ARM64":"https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_21.1.2-based-windows-vs2022_arm64.7z",
140+
"note":"Pinned at 21.1.2; 22.x triggers shiboken parser bugs that confuse same-named enums across sibling Qt classes (QLocalSocket vs QLocalServer SocketOption, QStringConverter::Default, etc.). Revisit after PySide 6.11.1 or later."
136141
},
137142
{
138143
"name":"pyside",
139144
"git-repo": "http://code.qt.io/pyside/pyside-setup",
140-
"git-ref": "6.9.1"
145+
"git-ref": "6.11.0"
141146
},
142147
{
143148
"name":"vtk",
144149
"git-repo":"https://gitlab.kitware.com/vtk/vtk.git",
145-
"git-hash":"e70c856bd9122ad759921c61d86a153e0311e20d",
146-
"note": "Hash corresponds to 9.5.0"
150+
"git-ref":"v9.6.1"
147151
},
148152
{
149153
"name":"harfbuzz",
150154
"git-repo":"https://github.com/harfbuzz/harfbuzz",
151-
"git-ref":"10.4.0"
155+
"git-ref":"14.2.0"
152156
},
153157
{
154158
"name":"freetype",
155159
"git-repo":"https://gitlab.freedesktop.org/freetype/freetype/",
156-
"git-ref":"VER-2-13-3"
160+
"git-ref":"VER-2-14-3"
157161
},
158162
{
159163
"name":"tcl",
160164
"git-repo":"https://github.com/tcltk/tcl",
161-
"git-ref":"core-8-6-15"
165+
"git-ref":"core-8-6-17"
162166
},
163167
{
164168
"name":"tk",
165169
"git-repo":"https://github.com/tcltk/tk",
166-
"git-ref":"core-8-6-15"
170+
"git-ref":"core-8-6-17"
167171
},
168172
{
169173
"name": "rapidjson",
@@ -174,35 +178,36 @@
174178
{
175179
"name":"eigen3",
176180
"git-repo":"https://gitlab.com/libeigen/eigen",
177-
"git-ref":"3.4.0"
181+
"git-ref":"5.0.1"
178182
},
179183
{
180184
"name":"opencascade",
181-
"git-repo":"https://github.com/FreeCAD/OCCT",
182-
"git-ref":"patched",
183-
"patches": ["patches/opencascade-01-StdPrs_BRepFont.patch"]
185+
"git-repo":"https://github.com/Open-Cascade-SAS/OCCT",
186+
"git-ref":"V7_9_3"
184187
},
185188
{
186189
"name":"netgen",
187190
"git-repo":"https://github.com/NGSolve/netgen",
188-
"git-ref":"v6.2.2505"
191+
"git-ref":"v6.2.2604",
192+
"patches":[
193+
"patches/netgen-02-arm64-msvc-time-counter.patch"
194+
]
189195
},
190196
{
191197
"name":"hdf5",
192198
"git-repo":"https://github.com/HDFGroup/hdf5",
193-
"git-ref":"hdf5-1_12_3",
194-
"note":"Salome medfile 5.0.0 requires HDF5 1.12.x, no later version may be used"
199+
"git-ref":"hdf5-1.14.6",
200+
"note":"Salome medfile 6.0.1 requires HDF5 1.14.x, no later version may be used"
195201
},
196202
{
197203
"name":"medfile",
198204
"git-repo":"https://github.com/chennes/med",
199-
"git-ref":"v5.0.0",
200-
"patches": ["patches/medfile-01-const_cast_argv.patch"]
205+
"git-ref":"v6.0.1"
201206
},
202207
{
203208
"name":"gmsh",
204209
"git-repo":"https://gitlab.onelab.info/gmsh/gmsh",
205-
"git-ref":"gmsh_4_13_1",
210+
"git-ref":"gmsh_4_15_2",
206211
"patches": ["patches/gmsh-01-windows_stdint.patch"]
207212
},
208213
{
@@ -213,25 +218,24 @@
213218
{
214219
"name":"icu",
215220
"git-repo":"https://github.com/unicode-org/icu",
216-
"git-ref":"release-74-2",
217-
"note":"Cannot yet use the 75.x series, compilation of Xerces 3.2.5 fails against them",
218-
"patches": ["patches/icu-01-remove_makedata_target.patch"]
221+
"git-ref":"release-78.3"
219222
},
220223
{
221224
"name":"xercesc",
222225
"git-repo":"https://github.com/apache/xerces-c",
223-
"git-ref":"v3.2.5",
224-
"note": "Compilation of v3.3.0 is failing under MSVC 143 as of this writing"
226+
"git-ref":"v3.3.0",
227+
"patches": ["patches/xercesc-01-cxx-standard.patch"],
228+
"note": "3.3.0 hardcodes C++14, but ICU requires C++17: just patch CMake"
225229
},
226230
{
227231
"name":"libfmt",
228232
"git-repo":"https://github.com/fmtlib/fmt",
229-
"git-ref":"11.0.2"
233+
"git-ref":"12.1.0"
230234
},
231235
{
232236
"name": "yamlcpp",
233237
"git-repo": "https://github.com/jbeder/yaml-cpp",
234-
"git-ref":"0.8.0"
238+
"git-ref":"yaml-cpp-0.9.0"
235239
},
236240
{
237241
"name": "opencamlib",
@@ -246,13 +250,17 @@
246250
{
247251
"name": "libE57Format",
248252
"git-repo": "https://github.com/asmaloney/libE57Format",
249-
"git-hash": "70d27ff3b3f39e553f90a34719df7a325c24c1a6",
250-
"note": "Using master branch as of march 2025 because no official release includes proper CMake support yet"
253+
"git-ref": "v3.3.0"
251254
},
252255
{
253256
"name": "googletest",
254257
"git-repo": "https://github.com/google/googletest",
255-
"git-hash": "7e17b15f1547bb8dd9c2fed91043b7af3437387f"
258+
"git-hash": "d72f9c8aea6817cdf1ca0ac10887f328de7f3da2"
259+
},
260+
{
261+
"name": "ifcopenshell",
262+
"url-ARM64": "https://s3.amazonaws.com/ifcopenshell-builds/ifcopenshell-python-314-v0.8.5-18c035e-win-arm64.zip",
263+
"note": "x64 is installed via pip from PyPI; ARM64 has no PyPI wheel, so we extract the prebuilt zip from builds.ifcopenshell.org. Both architectures are pinned to v0.8.5."
256264
}
257265
]
258266
}

0 commit comments

Comments
 (0)