Commit Graph

64 Commits

Author SHA1 Message Date
Ian Bassi
5b29fef9e5 Bump GitHub Actions: Node 20 deprecation (#13173)
Bump GitHub Actions action versions

Update workflow action versions: upgrade geekyeggo/delete-artifact from v5 to v6 and microsoft/setup-msbuild from v2 to v3 across .github/workflows/build_all.yml, build_deps.yml, and build_orca.yml. This brings workflows to newer action releases for compatibility and fixes.
2026-04-10 15:10:45 -03:00
SoftFever
6d7b16c725 disable lfs as we don't use it anymore 2026-03-26 17:16:20 +08:00
SoftFever
594e4a297d use clang and lld 2026-03-19 21:59:37 +08:00
SoftFever
70e076151b Merge branch 'main' into feature/cicd_selfhost2 2026-03-19 18:19:48 +08:00
SoftFever
838605690b minor change 2026-03-19 16:08:44 +08:00
SoftFever
4ffe260228 update cmake to 4.3.x 2026-03-19 15:48:32 +08:00
SoftFever
5afb30d7dd Revert "Revert "Extend self-hosted runner support to all platforms" (#12827)"
This reverts commit f2eab542a4, reversing
changes made to 7565b279ad.
2026-03-19 11:58:39 +08:00
SoftFever
dc90dda976 Revert "Extend self-hosted runner support to all platforms" 2026-03-19 00:07:12 +08:00
SoftFever
504b9be774 Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-03-19 00:02:11 +08:00
SoftFever
2868255658 Extend self-hosted runner support to all platforms 2026-03-18 23:42:21 +08:00
SoftFever
b7033a4c92 WIP: Parallelize macOS CI builds by splitting arm64 and x86_64 into separate jobs (#12562)
* Parallelize macOS CI builds by splitting arm64 and x86_64 into separate jobs

* fix shell errors

* Delete intermediate per-arch artifacts
2026-03-03 19:29:59 +08:00
SoftFever
1745e8b910 Reapply "Switch to self hosted mac runner (#12024)" with proper fix (#12278)
* Reapply "Switch to self hosted mac runner (#12024)" with proper fix

This reverts commit 783f9926e3.

* use conditional logic for self-hosted runners

* improve readbility
2026-02-17 16:31:40 +08:00
SoftFever
783f9926e3 Revert "Switch to self hosted mac runner (#12024)"
This reverts commit f1212be6bb.
2026-02-14 18:14:28 +08:00
SoftFever
f1212be6bb Switch to self hosted mac runner (#12024)
# Description

<!--
> Please provide a summary of the changes made in this PR. Include details such as:
  > * What issue does this PR address or fix?
  > * What new features or enhancements does this PR introduce?
  > * Are there any breaking changes or dependencies that need to be considered?
-->

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->

## Tests

<!--
> Please describe the tests that you have conducted to verify the changes made in this PR.
-->
2026-01-22 16:03:13 +08:00
SoftFever
57f9112b7c Update GitHub Actions workflows to use actions/cache@v5 and actions/upload-artifact@v6 2026-01-05 17:54:59 +08:00
SoftFever
1893712063 Revert "Fix missing force-build, use non-docker publish action, be nice to cache (#11688)"
This reverts commit 8989e2102d.
2026-01-05 17:49:52 +08:00
SoftFever
cf9de8e444 Revert "pack deps artifact to better support symbolic links"
This reverts commit c8a4a7db29.
2026-01-05 17:45:15 +08:00
SoftFever
c8a4a7db29 pack deps artifact to better support symbolic links 2026-01-05 16:48:34 +08:00
dependabot[bot]
d021da1487 Bump actions/cache from 4 to 5 (#11798)
Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-02 10:05:41 +08:00
dependabot[bot]
a30fa08e1b Bump actions/upload-artifact from 5 to 6 (#11797)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-02 10:05:33 +08:00
coryrc
8989e2102d Fix missing force-build, use non-docker publish action, be nice to cache (#11688)
* Fix missing force-build and use non-docker publish action

Fixes #11687
Fixes #10404

* Initial deletion of build_check_cache

Start to fold functionality into build_deps, but definitely broken.

* Tests can be built separately

Missed this before

* Create artifact for all platforms, fix cache usage

Cache is only created on `main` branch.
Artifact is used to move files between jobs.
The Linux artifact was broken, now it's not.
The Mac artifact didn't exist, now it does.
The Windows artifact gets a new name and now isn't a
zip-within-a-zip. Perhaps this will cause a permissions problem; we
will see shortly.

* Apparently cannot update env used for `if` mid-stream

* Force-build causes a clean deps build

* Either build or pull from cache

Cache only has final output, not intermediate files. So we either
build or use the cache.

* Keep dep uploads for 10 days instead

It's just the final object outputs, not intermediates, so it's not as
large and we can keep it slightly longer.
2025-12-27 21:14:55 +08:00
dependabot[bot]
d8de54dfca Bump actions/checkout from 4 to 6 (#11547)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-09 23:58:02 +08:00
SoftFever
3a7309a1b2 Revert "fix GITHUB_TOKEN permissions in workflows (#11392)"
This reverts commit aa5350a6fe.
Revert "correct oversight in #11392 (#11404)"

This reverts commit fb3b2aadac.
2025-11-21 19:02:42 +08:00
Nanashi
aa5350a6fe fix GITHUB_TOKEN permissions in workflows (#11392)
This pull request updates GitHub Actions workflow files to explicitly
set permissions for certain actions. (fixing the permissions issues)

**Workflow permissions updates:**

* Added explicit `issues: write` permission to the `assign.yml` workflow
to ensure it can modify issues as needed.
* Set `contents: write`, `actions: write`, and `checks: write`
permissions in the `build_all.yml` workflow to allow the workflow to
interact with repository contents, manage actions, and update checks.
2025-11-18 23:22:47 +08:00
Noisyfox
7f1aad8bc1 Support Visual Studio 2026 (#11349)
* Add script with VS version auto detection

* Add msvc145 toolset support

* Fix issue when build slicer only

* Fix vs2026 OpenCV build

* Set github action to use new build script

* Get vs version from `msbuild --version` so it works for github action
2025-11-13 23:11:56 +08:00
dependabot[bot]
d82f88bee8 Bump actions/upload-artifact from 4 to 5 (#11230)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-06 11:47:11 +08:00
Noisyfox
bcb0387e0e Fix Github action syntax error (#11227)
Fix syntax error in c106350143
2025-11-01 20:36:28 +08:00
coryrc
c106350143 Cancel root jobs (#11192)
Maybe this will help cancel happen faster.
2025-11-01 20:24:35 +08:00
SoftFever
b9ab8e55be Fix conditional logic for OrcaSlicer build job in GitHub Actions workflow 2025-10-29 22:26:19 +08:00
coryrc
275f3a7f1e Build and run a test in CI (#10835)
* Actually build tests on Linux and allow RelWithDebInfo

They weren't being built.

Also cleaned up --config flags which enables RelWithDebInfo on Linux,
now that Ninja Multi-Config is used, it's quite trivial.

* Remove obsolete Slic3r Perl tests

The directory doesn't exist, they're already gone.

* Add GH job for running unit tests

* Move unit test execution to script and upload test results

* Don't run scheduled builds on forks

* Only deploy from SoftFever/OrcaSlicer

Will stop failures on forks

* Use artifact instead of cache

* Tweak archive and checkout paths

Keep getting error:

```
/home/runner/work/_temp/902d0a0a-6d23-4fe0-a643-8b5cc4efd25b.sh: line 1: scripts/run_unit_tests.sh: Permission denied
```

That seems to be because I didn't use actions/checkout, the working
directory is never setup correctly? So using checkout to get scripts
directory. Unsure if archive will preserve the `build/tests/` prefix;
will find out soon.

* Use tar to package directory and write results to correct directory

Tar preserves filenames and directory structure

* Use tar -xvf not -xzf

Muscle memory failed me

* Add testing wiki page

* Save test logs on failure and choose correct directory for junit

* Consolidate apt install steps, use for unit tests too, disable non-Linux builds

Temporarily disable non-Linux builds to save time while developing
this.

Cache the apt packages to save some time searching apt and downloading
them again (though I realize this is also downloading, but hopefully
by something closer and faster).

Remove all the redundant packages listed in the workflow and debian
distribution lists.

* Remove apt install steps from workflow

`./build-linux.sh -u` is supposed to install all needed packages, so
it should build without needing anything besides that. If I'm wrong
this commit will be dropped.

* Need composite action checked out locally

* Re-enable non-Linux builds now that it's working

* Skip a deploy and a notarize in forks

They only succeed in the main repo.

* Fix multi-build for non-Release builds: share CONFIG

* Correct build errors in unit tests

Indeterminate method signatures resolved. Updated script to build all
the tests.

* Fix -g vs -e for RelWithDebInfo

* Change CONFIG->BUILD_CONFIG

Missed one in prior commits

* Reduce wasteful redundant build artifact copies

1. Don't copy the artifacts and leave them; make a hard link first;
only make a copy only while creating AppImage.

2. Don't tar up the `package` directory; nothing uses this tar AFAICT

* Fix directory name

* Change jigsaw auth test URLs to httpbin.org

No idea why the basic auth doesn't work, but it doesn't work for
`curl` CLI either. This does.

* Remove force-build

It got reverted at
e3f049829b
for unknown reasons.

* Add timeout for unit tests in GitHub Actions workflow (#11146)

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-10-29 20:56:06 +08:00
SoftFever
bb9c3bb87a Reapply "Add a once-daily Build All which skips caches (#10731)"
This reverts commit e3f049829b.
2025-10-29 20:47:46 +08:00
SoftFever
e3f049829b Revert "Add a once-daily Build All which skips caches (#10731)"
This reverts commit b56cefc4b7.
2025-10-28 23:51:16 +08:00
coryrc
b56cefc4b7 Add a once-daily Build All which skips caches (#10731)
* Add a once-daily Build All which skips caches

When an external dependency breaks a build, ensures a record exists of
it happening.

Half of #10404

* `inputs` is plural
2025-09-21 20:08:32 +08:00
dependabot[bot]
719c1687e2 Bump actions/checkout from 4 to 5 (#10605)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 22:51:21 +08:00
lodriguez
be3bbfa39e remove OSMesa (#9708)
* remove OSMesa

OSMesa is depricated for quite a while and got removed with Mesa 25.1.0

* remove OSMesa from all buildfiles, readmes, etc…

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-15 14:53:42 +08:00
Dipl.-Ing. Raoul Rubien, BSc
6da7fe62a2 Fixes, refactors and enhances Linux build-scripts (#8269)
* fixes and refactors linux build scripts
 - build_linux.sh: fixes wrong AppImage build folder; refactors script; enhances help text
 - harmonizes names: BuildLinux.sh and BuildLinuxImage.sh
 - fixes file permissions: cmake inherits .in-file permission; removes chmod 755 in scripts
 - linux.d/debian: removes false positive error message
 - updates documentation

* enables ANSI-colored output for GNU or Clang

* build_linux.sh: adds -p flag to disable PCH for boosting ccache hit rate

* Allow compilation on distributions based on Ubuntu/Debian (#8625)

* build_linux.sh: takes over changes from BuildLinux.sh

* CMakeLists.txt: removes leftovers, enables ANSI-colored output

* CMakeLists.txt: fixes issue where FORCE_COLORED_OUTPUT was not respected form environment (introduces -C cli arg)

* merges 5df4275: Make it easy to pass extra build args to deps and orca in BuildLinux.sh (#9648)
2025-06-15 00:41:20 +08:00
SoftFever
658669d103 Universal mac build (#9074)
build universal Mac app
2025-03-27 22:53:37 +08:00
SoftFever
6ed68342e0 fix build errors (#8210)
* fix build errors

* fix windows

* fix flatpak
2025-01-28 01:07:27 +08:00
Tom
893b8cba16 Update build_deps.yml (check for existing directory tree and skips creation if exists) (#7337)
* Update build_deps.yml

Fixes "Build on Windows" so an error isn't thrown if the working directories already exist.

* Update build_deps.yml

* Update build_deps.yml
2025-01-22 14:24:11 +08:00
SoftFever
3bf868f99d pin cmake version to 3.28 (#6156)
* pin cmake version to 3.28

* remove brew install cmake
2024-07-16 22:37:28 +08:00
ElectricalBoy
0b6fc3d389 CI: Build with ubuntu-24.04 (#5919)
* CI: Build with ubuntu-24.04

* Use apt-get in ubuntu-24.04

* Fix step name

* Use alternate approach for detecting libwebkit2gtk version

* CI: Install libfuse2 in ubuntu-24.04

* Reduce repetitive code in workflows

Co-authored-by: Ocraftyone <Ocraftyone@users.noreply.github.com>

* CI: Install libfuse2

Runtime dependency for AppImage

* Fix filenames for nightly deployment

* Properly nest conditional

---------

Co-authored-by: Ocraftyone <Ocraftyone@users.noreply.github.com>
2024-07-01 23:44:49 +08:00
SoftFever
7e85eb0d7d Upgrade Mac CI/CD to macos-14 (#5856) 2024-06-25 23:24:39 +08:00
Jamin Collins
98d152a7f5 Act adjustments (#4961)
* remove trailing whitespace from workflow files

Signed-off-by: Jamin W. Collins <jamin.collins@gmail.com>

* skip upload actions when running in act

* https://github.com/nektos/act

Signed-off-by: Jamin W. Collins <jamin.collins@gmail.com>
2024-04-16 20:14:09 +08:00
SoftFever
8d62a47b4e fix build CI/CD 2024-03-11 23:01:49 +08:00
SoftFever
20477bcc40 fix node.js warning
update run_gettext.bat to use own tools
2024-03-11 14:22:17 +08:00
Dzmitry Neviadomski
7b31ee3a45 ENH: Improve macOS build script (#4310)
* ENH: Improve macOS build script

 - Update shebang to bash, as it is already expected to be present in
   run_gettext.sh
 - Added fail-fast shell options.
 - Changed default CMake generator to Ninja
 - Adopted configuration for non-multi-config generators (Ninja, Make)
 - Added new options:
   - Allow to set CMake generator back to Xcode, no option for make
     thou.
   - Allow to build without reconfiguring CMake, improves build times.
     Unnecessary Cmake reconfigurations require full rebuild.
   - Allow to set build configuration for CMake
 - Reorganized targets into separate function to break "cd" dependency.
 - Reformat shell code.
 - Fix all warnings reported by ShellCheck linter tool.
 - Update run_gettext.sh to respect build dir in full mode.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* FIX: Install ninja with brew on CI.

Test if building works with Ninja by default.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* ENH: Set Xcode back as default generator.

Use Ninja on CI with explicit option.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* FIX: Partially revent changes in run_gettext.sh

Revert changes for option parsing.
Leave fixes for issues found by ShellCheck linter tool.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

---------

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2024-03-05 22:35:46 +08:00
SoftFever
9d59cd66c4 Feature/update deps (#3445)
* update deps

* fix win build errors

* fix mac build

* update linux

(cherry picked from commit 77b6225060)
2024-01-04 19:36:04 +08:00
kpishere
044e25d1cf Feature/build target 10.15 (#3252)
* Set target to 10.15, make porter templates explicit

* CMAKE_OSX_DEPLOYMENT_TARGET refactor

* Update build_release_macos.sh

fix typo

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-30 09:12:06 +08:00
SoftFever
78c7abe4c2 workaround to solve unwanted zstd dependency on runner (#3298)
* trigger build

* Remove zstd only for dep build

* reinstall zstd after building completed
2023-12-27 17:01:12 +08:00
SoftFever
98d8b010c4 downgrade to macos-12 as there are not many macos-13 runner instances availble yet 2023-12-27 17:01:12 +08:00