Skip to content

Commit 8f91fff

Browse files
Merge branch 'FreeCAD:main' into main
2 parents d06ddc2 + f9d7962 commit 8f91fff

File tree

876 files changed

+10280
-141607
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

876 files changed

+10280
-141607
lines changed

.github/workflows/dependency-review.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,4 @@ jobs:
2424
- name: 'Checkout Repository'
2525
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
2626
- name: 'Dependency Review'
27-
uses: actions/dependency-review-action@67d4f4bd7a9b17a0db54d2a7519187c65e339de8 # v4
27+
uses: actions/dependency-review-action@8805179dc9a63c54224914839d370dd93bd37b2e # v4

.github/workflows/issue-metrics.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535
echo "last_month=$first_day..$last_day" >> "$GITHUB_ENV"
3636
3737
- name: Run issue-metrics tool
38-
uses: github/issue-metrics@ed6e4b2b46f44ec7cdd2f6c145757a67a07ecf5b # v3.18.4
38+
uses: github/issue-metrics@6a0f49b4e14363b63e65ec698b43715b69d21f6d # v3.20.0
3939
env:
4040
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4141
SEARCH_QUERY: 'repo:FreeCAD/FreeCAD is:issue created:${{ env.last_month }}'

.github/workflows/sub_lint.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ jobs:
208208
209209
# Generic lints steps
210210
- name: Check File Case Sensitivity
211-
uses: credfeto/[email protected]
211+
uses: credfeto/action-case-checker@cb652aeab29ed363bbdb7d9ee1bfcc010c46cac5 # v1.3.0
212212

213213
- name: Check for non Unix line ending
214214
if: inputs.checkLineendings && always()

.github/workflows/sub_weeklyBuild.yml

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,11 @@ jobs:
1818
with:
1919
egress-policy: audit
2020

21-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
21+
- name: Checkout Source
22+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
2223
with:
2324
fetch-depth: 2
25+
fetch-tags: true
2426
submodules: 'recursive'
2527

2628
- name: Tag Build
@@ -35,6 +37,7 @@ jobs:
3537
gh release create ${BUILD_TAG} --title "Development Build ${BUILD_TAG}" -F .github/workflows/weekly-build-notes.md --prerelease || true
3638
3739
- name: Upload Source
40+
id: upload_source
3841
shell: bash -l {0}
3942
env:
4043
GH_TOKEN: ${{ github.token }}
@@ -68,20 +71,20 @@ jobs:
6871
runs-on: ${{ matrix.os }}
6972
environment: weekly-build
7073
steps:
74+
- name: Harden the runner (Audit all outbound calls)
75+
uses: step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
76+
with:
77+
egress-policy: audit
78+
7179
# prevent running out of disk space on Ubuntu runners.
7280
- name: Maximize build space
7381
if: runner.os == 'Linux'
74-
uses: AdityaGarg8/remove-unwanted-software@v5
82+
uses: AdityaGarg8/remove-unwanted-software@90e01b21170618765a73370fcc3abbd1684a7793 # v5
7583
with:
7684
verbose: 'true'
7785
remove-android: 'true' # (frees ~9 GB)
7886
remove-cached-tools: 'true' # (frees ~8.3 GB)
7987

80-
- name: Harden the runner (Audit all outbound calls)
81-
uses: step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
82-
with:
83-
egress-policy: audit
84-
8588
- name: Set Platform Environment Variables
8689
shell: bash -l {0}
8790
env:
@@ -94,15 +97,16 @@ jobs:
9497
echo 'RATTLER_CACHE_DIR=D:\rattler' >> "$GITHUB_ENV"
9598
fi
9699
97-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
100+
- name: Checkout Source
101+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
98102
with:
99-
fetch-depth: 0
103+
fetch-depth: 2
100104
fetch-tags: true
101105
submodules: 'recursive'
102106

103107
- uses: prefix-dev/setup-pixi@19eac09b398e3d0c747adc7921926a6d802df4da # v0.8.8
104108
with:
105-
pixi-version: v0.42.1
109+
pixi-version: v0.46.0
106110
cache: false
107111

108112
- name: Install the Apple certificate and provisioning profile
@@ -152,6 +156,8 @@ jobs:
152156
TARGET_PLATFORM: ${{ matrix.target }}
153157
UPLOAD_RELEASE: "true"
154158
run: |
159+
python3 package/rattler-build/scripts/make_version_file.py ../freecad_version.txt
160+
git apply package/rattler-build/scripts/disable_git_info.patch
155161
cd package/rattler-build
156162
pixi install
157163
pixi run -e package create_bundle
Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,15 @@
1-
# Weekly Development Build
1+
> [!IMPORTANT]
2+
> Bleeding edge FreeCAD development builds for testing bugfixes, regressions, and recently implemented features. Do not use in a production environment.
23
3-
## How-to use
44

5-
Download the appropriate asset for your OS below
6-
7-
Unpack the bundle to any folder on your system
8-
9-
Launch the application
10-
11-
* **Windows**
5+
### How-to use
126

7+
1. Download the appropriate asset for your OS below
8+
2. Unpack the bundle to any folder on your system
9+
3. Launch the application
10+
- **Windows**
1311
Run `\bin\FreeCAD.exe` in the extracted directory
14-
15-
* **macOS**
16-
12+
- **macOS**
1713
Launch `/FreeCAD.app` in the extracted directory
18-
19-
* **Linux**
20-
21-
Open the *.AppImage
14+
- **Linux**
15+
Open the `*.AppImage`

.pre-commit-config.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ files: |
1212
src/Mod/Assembly|
1313
src/Mod/CAM|
1414
src/Mod/Cloud|
15-
src/Mod/Drawing|
1615
src/Mod/Fem|
1716
src/Mod/Help|
1817
src/Mod/Import|
@@ -67,6 +66,6 @@ repos:
6766
- id: black
6867
args: ['--line-length', '100']
6968
- repo: https://github.com/pre-commit/mirrors-clang-format
70-
rev: 458d954d175f16d216d7d04d5c182e3b10ddfbb4 # frozen: v20.1.0
69+
rev: 7ec07eeb4135dc6ecf410d24ac4ead986a5d413d # frozen: v20.1.3
7170
hooks:
7271
- id: clang-format

cMake/FreeCAD_Helpers/InitializeFreeCADBuildOptions.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ macro(InitializeFreeCADBuildOptions)
1111
option(FREECAD_USE_EXTERNAL_FMT "Use system installed fmt library if available instead of fetching the source." ON)
1212
option(FREECAD_USE_EXTERNAL_ONDSELSOLVER "Use system installed OndselSolver instead of git submodule." OFF)
1313
option(FREECAD_USE_EXTERNAL_E57FORMAT "Use system installed libE57Format instead of the bundled." OFF)
14+
option(FREECAD_USE_EXTERNAL_GTEST "Use system installed Google Test and Google Mock" OFF)
1415
option(FREECAD_USE_FREETYPE "Builds the features using FreeType libs" ON)
1516
option(FREECAD_BUILD_DEBIAN "Prepare for a build of a Debian package" OFF)
1617
option(FREECAD_CHECK_PIVY "Check for pivy version using Python at build time" ON)

cMake/FreeCAD_Helpers/SetupSalomeSMESH.cmake

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ macro(SetupSalomeSMESH)
4242
endif()
4343
endforeach()
4444
else()
45-
set(VTK_COMPONENTS "CommonCore;CommonDataModel;FiltersVerdict;IOXML;FiltersCore;FiltersGeneral;IOLegacy;FiltersExtraction;FiltersSources;FiltersGeometry")
45+
set(VTK_COMPONENTS "CommonCore;CommonDataModel;FiltersVerdict;IOXML;FiltersCore;FiltersGeneral;IOLegacy;FiltersExtraction;FiltersSources;FiltersGeometry;WrappingPythonCore")
4646
list(APPEND VTK_COMPONENTS "IOMPIParallel;ParallelMPI;hdf5;FiltersParallelDIY2;RenderingCore;InteractionStyle;RenderingFreeType;RenderingOpenGL2")
4747
foreach(_module ${VTK_COMPONENTS})
4848
list (FIND VTK_AVAILABLE_COMPONENTS ${_module} _index)
@@ -63,6 +63,17 @@ macro(SetupSalomeSMESH)
6363
endif()
6464

6565
set(BUILD_FEM_VTK ON)
66+
67+
# Check if PythonWrapperCore was found
68+
# Note: VTK 9 only, as the implementations use the VTK modules introduced in 8.1
69+
# VTK_WrappingPythonCore_FOUND is named differently for versions <9.0
70+
if (${VTK_WrappingPythonCore_FOUND})
71+
set(BUILD_FEM_VTK_PYTHON 1)
72+
message(STATUS "VTK python wrapper: available")
73+
else()
74+
message(STATUS "VTK python wrapper: NOT available")
75+
endif()
76+
6677
if(${VTK_MAJOR_VERSION} LESS 6)
6778
message( FATAL_ERROR "Found VTK version is <6, this is not compatible" )
6879
endif()

package/rattler-build/linux/AppDir/AppRun

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@ export PATH_TO_FREECAD_LIBDIR=${HERE}/usr/lib
99
export FONTCONFIG_FILE=/etc/fonts/fonts.conf
1010
export FONTCONFIG_PATH=/etc/fonts
1111

12+
# Fix: Use X to run on Wayland
13+
export QT_QPA_PLATFORM=xcb
14+
1215
# Show packages info if DEBUG env variable is set
1316
if [ "$DEBUG" = 1 ]; then
1417
cat ${HERE}/packages.txt

package/rattler-build/osx/create_bundle.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/bash
22

33
set -e
4-
set -x
4+
set -x
55

66
conda_env="FreeCAD.app/Contents/Resources"
77

@@ -41,6 +41,7 @@ find . -name "*.pyc" -type f -delete
4141
# fix problematic rpaths and reexport_dylibs for signing
4242
# see https://github.com/FreeCAD/FreeCAD/issues/10144#issuecomment-1836686775
4343
# and https://github.com/FreeCAD/FreeCAD-Bundle/pull/203
44+
# and https://github.com/FreeCAD/FreeCAD-Bundle/issues/375
4445
python ../scripts/fix_macos_lib_paths.py ${conda_env}/lib
4546

4647
# build and install the launcher

0 commit comments

Comments
 (0)