Commit Graph
68 Commits
Author SHA1 Message Date
glx22andLoïc Guilloux 45aef2c0b9 Change: [CI] Temporarily force ubuntu-24.04 runner for linux workflow
While ubuntu-latest is transitioning from ubuntu-22.04 to ubuntu-24.04, the one we actually run on is random.
But our workflow can work only with 22.04 (using clang15) or 24.04 (using clang) so just force 24.04 for now.
2024-10-14 00:53:47 +02:00
glx22andLoïc Guilloux 1a1cd2d495 Cleanup: [CI] Remove 'os' input for windows workflow 2024-10-14 00:53:47 +02:00
merni-nsandGitHub af1bd43b30 Codefix 4c0dca1: [CI] Fix typo in workflow file (#12318) 2024-03-16 19:48:12 +00:00
merni-nsandGitHub 4c0dca1411 Codechange: [CI] Move Release CI build to MacOS runner (#12309) 2024-03-16 15:11:23 +01:00
Patric StoutandPatric Stout c768f4fc7a Codechange: [CI] build some targets every night, instead of every PR
This mainly as they are not expected to fail, or give more information
than the other targets already would. And this is just hogging up
the CI pipeline. On average, these targets take ~80 CPU-minutes to
finish.
2024-03-11 15:44:30 +01:00
Patric StoutandPatric Stout ee22fa34d7 Codechange: [CI] Split the ci-build into smaller components 2024-03-11 15:44:30 +01:00
Patric StoutandGitHub 9c95fbdb07 Remove: official support for MSVC 2019 (#12254) 2024-03-10 13:26:07 +01:00
Patric StoutandGitHub 381dee2e01 Codechange: [CI] switch to arm64 for MacOS builds (#12242)
This creates more variety in our CI builds, increasing the odds
of us finding issues.
2024-03-10 09:33:47 +01:00
Patric StoutandGitHub ebd258b404 Change: [CI] switch MacOS to the macos-14 runner (#12237)
This runner contains a newer XCode, with better C++20 support.
2024-03-09 14:41:34 +00:00
Patric StoutandGitHub 04ce1c08ae Codechange: [CI] manually install vcpkg for all targets (#12241)
From macos-14, vcpkg is no longer installed on the runner-image.
It stands to reason that this will also roll out to new images
for other OSes. To be pre-emptive about it, start using our own
cloned vcpkg for all targets.
2024-03-09 14:01:18 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
62d7d92a0e Upgrade: [CI] bump the actions group with 9 updates (#11881)
Bumps the actions group with 9 updates:

| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout) | `3` | `4` |
| [actions/cache](https://github.com/actions/cache) | `3` | `4` |
| [actions/github-script](https://github.com/actions/github-script) | `6` | `7` |
| [OpenTTD/actions](https://github.com/openttd/actions) | `2` | `5` |
| [github/codeql-action](https://github.com/github/codeql-action) | `2` | `3` |
| [actions/download-artifact](https://github.com/actions/download-artifact) | `3` | `4` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `3` | `4` |
| [tibdex/github-app-token](https://github.com/tibdex/github-app-token) | `1` | `2` |
| [peter-evans/repository-dispatch](https://github.com/peter-evans/repository-dispatch) | `2` | `3` |

Updates `actions/checkout` from 3 to 4
- [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/v3...v4)

Updates `actions/cache` from 3 to 4
- [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/v3...v4)

Updates `actions/github-script` from 6 to 7
- [Release notes](https://github.com/actions/github-script/releases)
- [Commits](https://github.com/actions/github-script/compare/v6...v7)

Updates `OpenTTD/actions` from 2 to 5
- [Release notes](https://github.com/openttd/actions/releases)
- [Commits](https://github.com/openttd/actions/compare/v2...v5)

Updates `github/codeql-action` from 2 to 3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v2...v3)

Updates `actions/download-artifact` from 3 to 4
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v3...v4)

Updates `actions/upload-artifact` from 3 to 4
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4)

Updates `tibdex/github-app-token` from 1 to 2
- [Release notes](https://github.com/tibdex/github-app-token/releases)
- [Commits](https://github.com/tibdex/github-app-token/compare/v1...v2)

Updates `peter-evans/repository-dispatch` from 2 to 3
- [Release notes](https://github.com/peter-evans/repository-dispatch/releases)
- [Commits](https://github.com/peter-evans/repository-dispatch/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: actions/github-script
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: OpenTTD/actions
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: actions/download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: tibdex/github-app-token
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: peter-evans/repository-dispatch
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-25 21:22:33 +00:00
Patric StoutandPatric Stout bb49112784 Codechange: switch our codebase to C++20 2024-01-17 00:25:08 +01:00
Patric StoutandPatric Stout 49db7bbe08 Change: add vcpkg.json to instruct vcpkg what dependencies we require
This works on all OSes, making it far simpler for any developer
to jump in. Just install vcpkg, run "vcpkg install" in our root,
and you have all the dependencies.
2023-12-30 18:40:04 +01:00
Patric StoutandPatric Stout 0c064b5119 Change: [CI] use vcpkg built-in caching mechanism 2023-12-30 18:40:04 +01:00
Patric StoutandPatric Stout 5d86588a45 Change: [CI] pkg-config is installed by default on latest runner 2023-12-30 18:40:04 +01:00
Patric StoutandPatric Stout 3fec8ece5a Change: [CI] always use "latest" image for our runners 2023-12-30 18:40:04 +01:00
Loïc GuillouxandGitHub e901ce582d Add: [CI] Test grf generation (#11543) 2023-12-06 13:30:47 +01:00
Patric StoutandGitHub c6864637fb Add: [GitHub] also test if release builds without asserts are warning-free (#11309) 2023-09-17 19:47:55 +02:00
Patric StoutandGitHub ba67f39db6 Codechange: vendor the nlohmann-json library (#11290) 2023-09-13 16:11:34 +02:00
Patric StoutandGitHub a3d631ffed Change: make nlohmann a mandatory library to build OpenTTD (#11235) 2023-08-28 19:04:36 +02:00
Patric StoutandGitHub f120d2beb8 Add: use breakpad to create crash.dmp on MacOS / Linux too (#11202)
Normally only the Windows platform could create a crash.dmp, making
analysing crash-reports from MacOS / Linux rather tricky.
2023-08-20 17:16:08 +02:00
Patric StoutandGitHub 323dd619bb Change: [CI] rework preview flow and use Cloudflare Pages to publish (#11116) 2023-07-08 12:30:27 +02:00
Loïc GuillouxandGitHub 5f2246eabf Fix 021c45c: [CMake] detection and use of nlohmann-json for emscripten (#11113) 2023-07-06 11:49:06 +02:00
Patric StoutandPatric Stout 021c45c4f6 Add: [CMake] JSON library (nlohmann) 2023-05-14 23:22:02 +02:00
Loïc GuillouxandGitHub 7e74232e56 Change: [Actions] Use -fuse-ld=lld and Ninja for MinGW (#10785)
And some miscellaneous things while touching the file
2023-05-11 18:07:29 +00:00
Rubidiumandrubidium42 192ed55462 Change: disable precompiled headers on Linux (GCC - Dedicated) target to ensure those still build 2023-05-08 16:49:23 +02:00
Patric StoutandGitHub fbad57ecf7 Change: [CI] update emscripten and liblzma to the latest version (#10757) 2023-05-02 23:12:52 +02:00
Patric StoutandPatric Stout 81d4fa6999 Feature: drop ICU-lx in favour of directly interfacing with harfbuzz
This means we have RTL support again with ICU 58+. It makes use of:
- ICU for bidi-itemization
- ICU for script-itemization
- OpenTTD for style-itemization
- harfbuzz for shaping
2023-05-01 22:17:56 +02:00
Patric StoutandGitHub a255b61514 Change: [CI] Use a custom name for matrix runs (#10723)
By default, GitHub adds all arguments of the matrix between ().
This is fine sometimes, but in other times it becomes a very
lengthy line.

With this commit, we decide what is between those (), making it
a lot more readable.
2023-04-27 20:15:09 +02:00
Rubidiumandrubidium42 43a7e54067 Add: unit test functionality using catch2 2023-04-16 18:58:21 +02:00
Patric StoutandPatric Stout 6fcc8727f5 Change: [Actions] cancel previous run if pushing new PR
Lately we had a few times that people pushed to their PR branch
a few times to make small changes. Sadly, this triggers all CIs
every time, which takes ~20 minutes. As we are limited in the
amount of runners we get assigned to us, this means all other CI,
even for other repositories within OpenTTD, are delayed too.

We can avoid this by simply cancelling old runs when a new PR is
pushed. There is a downside: sometimes people already push a new
commit, but still want to know if the old one passed. That will
no longer be possible with this change.
2023-02-26 23:33:15 +01:00
Loïc GuillouxandGitHub 27cbb81df5 Fix: [Actions] vcpkg needs pkg-config to build zlib on macOS (#10488) 2023-02-16 22:35:51 +01:00
Patric StoutandGitHub 64523709bf Add: use https:// for content-service connections (#10448)
This requires the use of WinHTTP (for Windows) or libcurl (for all
others except Emscripten). Emscripten does not support http(s)
calls currently.

On Linux it requires ca-certificates to be installed, so the HTTPS
certificate can be validated. It is really likely this is installed
on any modern machine, as most connections these days are HTTPS.

(On MacOS and Windows the certificate store is filled by default)

Reminder: in case the http(s):// connection cannot be established,
OpenTTD falls back to a custom TCP-based connection to fetch the
content from the content-service. Emscripten will always do this.
2023-02-12 12:07:31 +01:00
25f247047d Update: emsdk to 3.1.28 and lzma (for emsdk) to 5.4.0 (#10234)
Co-authored-by: Patric Stout <truebrain@openttd.org>
2022-12-29 23:34:45 +01:00
Czcibor Bohusz-DoboszandGitHub 7425660b3e Change: Set minimum macOS version to 10.13 (#10253) 2022-12-17 18:35:45 +01:00
glx22andLoïc Guilloux 87d1bd895a Fix f6530f3c2: [Actions] set-output was not correctly converted 2022-10-20 19:22:01 +02:00
glx22andLoïc Guilloux 8ffe59373f Update: [Actions] use annotation-check v3 2022-10-20 19:22:01 +02:00
Loïc GuillouxandGitHub f6530f3c2d Codechange: [Actions] set-output is deprecated (#10089) 2022-10-19 21:05:11 +02:00
Frazer SmithandMichael Lutz 9162ac9d37 Update: bump actions/checkout from 2 to 3 2022-05-14 16:58:10 +02:00
Frazer SmithandMichael Lutz 2a2f80bb71 Update: bump actions/cache from 2 to 3 2022-05-14 16:58:10 +02:00
Loïc GuillouxandGitHub 1a17b6c8f6 Change: [Actions] Remove VS2017 and restore VS2019 for CI (#9835) 2022-03-13 16:05:24 +01:00
glx22andCharles Pigott 14429bbe8a Change: [Actions] Also check desync debug 2021-10-19 09:05:00 +01:00
Patric StoutandGitHub 3046a6ce39 Change: upgrade Emscripten to 2.0.31 and enable LZMA by default (#9604) 2021-10-03 16:20:05 +02:00
rubidium42andPatric Stout 98e653dacc Fix #9386: compilers failing to compile with LTO by using variants instead of new + unique_ptr
With std::variant all memory can be figured out at compile time, so the compiler needs to keep track of fewer elements. It also saves out a unique_ptr and its memory management, over a slight impact for resolving a setting.
2021-06-26 20:28:34 +02:00
Loïc GuillouxandGitHub f86c66cbd7 Codechange: [Actions] Improve MSYS2 setup time (#9360) 2021-06-13 13:26:45 +02:00
Loïc GuillouxandGitHub acb6348ba6 Add: [Actions] msys2/MinGW CI (#8698) 2021-06-10 23:54:52 +02:00
Patric StoutandGitHub 3477405e86 Change: [Actions] use newly created Actions instead of custom shell-scripting (#9284) 2021-05-20 19:12:33 +02:00
Loïc GuillouxandGitHub c53d9991ee Add: [Actions] Check CI annotations to detect compile warnings (#9217) 2021-05-10 14:48:04 +02:00
Loïc GuillouxandGitHub 282d5d302d Change: [Actions] Add a 2 minutes timeout for regression test (#9166) 2021-05-01 16:18:41 +02:00
glx22andLoïc Guilloux db0993f500 Change: [Actions] Also check dedicated build 2021-03-04 16:22:58 +01:00