Commit Graph

42 Commits

Author SHA1 Message Date
Patric Stout fbad57ecf7
Change: [CI] update emscripten and liblzma to the latest version (#10757) 2023-05-02 23:12:52 +02:00
Patric 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 Stout 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
Rubidium 43a7e54067 Add: unit test functionality using catch2 2023-04-16 18:58:21 +02:00
Patric 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 Guilloux 27cbb81df5
Fix: [Actions] vcpkg needs pkg-config to build zlib on macOS (#10488) 2023-02-16 22:35:51 +01:00
Patric Stout 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
clienthax 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-Dobosz 7425660b3e
Change: Set minimum macOS version to 10.13 (#10253) 2022-12-17 18:35:45 +01:00
glx22 87d1bd895a Fix f6530f3c2: [Actions] set-output was not correctly converted 2022-10-20 19:22:01 +02:00
glx22 8ffe59373f Update: [Actions] use annotation-check v3 2022-10-20 19:22:01 +02:00
Loïc Guilloux f6530f3c2d
Codechange: [Actions] set-output is deprecated (#10089) 2022-10-19 21:05:11 +02:00
Frazer Smith 9162ac9d37 Update: bump actions/checkout from 2 to 3 2022-05-14 16:58:10 +02:00
Frazer Smith 2a2f80bb71 Update: bump actions/cache from 2 to 3 2022-05-14 16:58:10 +02:00
Loïc Guilloux 1a17b6c8f6
Change: [Actions] Remove VS2017 and restore VS2019 for CI (#9835) 2022-03-13 16:05:24 +01:00
glx22 14429bbe8a Change: [Actions] Also check desync debug 2021-10-19 09:05:00 +01:00
Patric Stout 3046a6ce39
Change: upgrade Emscripten to 2.0.31 and enable LZMA by default (#9604) 2021-10-03 16:20:05 +02:00
rubidium42 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 Guilloux f86c66cbd7
Codechange: [Actions] Improve MSYS2 setup time (#9360) 2021-06-13 13:26:45 +02:00
Loïc Guilloux acb6348ba6
Add: [Actions] msys2/MinGW CI (#8698) 2021-06-10 23:54:52 +02:00
Patric Stout 3477405e86
Change: [Actions] use newly created Actions instead of custom shell-scripting (#9284) 2021-05-20 19:12:33 +02:00
Loïc Guilloux c53d9991ee
Add: [Actions] Check CI annotations to detect compile warnings (#9217) 2021-05-10 14:48:04 +02:00
Loïc Guilloux 282d5d302d
Change: [Actions] Add a 2 minutes timeout for regression test (#9166) 2021-05-01 16:18:41 +02:00
glx22 db0993f500 Change: [Actions] Also check dedicated build 2021-03-04 16:22:58 +01:00
glx22 cd4c8ecbf3 Add: [Actions] Allow partial cache invalidation on dependencies change 2021-03-01 22:41:48 +01:00
glx22 70e4845915 Change: [Actions] Use only CMake, CTest and CPack 2021-02-24 17:54:24 +01:00
glx22 2fd2950eb5 Change: [Actions] stop using 'run-vcpkg' action for CI 2021-02-24 17:54:24 +01:00
glx22 30ae019095 Change: [Actions] stop using 'run-cmake' action for CI 2021-02-24 17:54:24 +01:00
Patric Stout b124c49ea4 Fix: [Actions] Also run CI against libsdl1.2 for every pull request 2021-02-19 19:56:40 +01:00
Patric Stout cb8e1706b2 Fix: [Actions] if SDL2 is installed, it is always picked over SDL1
So no need to install both SDL1 and SDL2, that gives a false idea
of reality.
2021-02-19 11:34:00 +01:00
Patric Stout d3df4674f9 Fix: [Actions] build our allegro driver too in our CI
This prevents us breaking it without realising.
2021-02-19 11:34:00 +01:00
Owen Rudge d3b50b9c47 Fix: [Actions] Use vcpkg to provide libpng on macOS 2021-02-15 12:10:11 +00:00
Michael Lutz 6755ff63e1 Add: [OSX] Native font rendering without using FreeType. 2021-02-14 11:48:58 +01:00
glx22 f181037bed Change: [Actions] Also run CI for VS2017 2021-02-13 17:31:57 +01:00
Owen Rudge da4c404f3d Fix: [Actions] Use same vcpkg commit for CI on macOS as release builds 2021-02-08 16:13:03 +00:00
Patric Stout 4059ccf863
Fix: [Actions] circumvent Windows tar warning about read-only files (#8524)
Because certain files are read-only, the "restore-cache" step
fails, as Windows tar refuses to overwrite those files (even
if they are identical). Instead of hoping upstream fixes
"restore-cache", just remove the read-only flag on these files
instead.
2021-01-08 15:20:27 +01:00
Charles Pigott 3dfee979a7 Codechange: Drop libxdg-basedir dependency in favour of finding the directories ourselves 2021-01-02 19:46:08 +00:00
Patric Stout d15dc9f40f Add: support for emscripten (play-OpenTTD-in-the-browser)
Emscripten compiles to WASM, which can be loaded via
HTML / JavaScript. This allows you to play OpenTTD inside a
browser.

Co-authored-by: milek7 <me@milek7.pl>
2020-12-15 15:46:39 +01:00
Patric Stout abb746fae3
Fix: [Actions] cleanup ci-build workflow to be up-to-date (#8375)
Also, while at it, make it more like the upcoming release-workflow,
so they look a lot more similar.

Functional it should be the same, except that Windows should
now also output when a test fails.
2020-12-13 22:32:44 +01:00
Charles Pigott 13e1b13a4e Fix: [Actions] Call apt-get update before trying to install packages 2020-10-10 15:02:06 +01:00
Charles Pigott 2073c8d67f Add: [Actions] Add problem matchers for CI platforms 2020-10-10 15:02:06 +01:00
glx 5af98c69e6 Add: [Actions] CI build workflow 2020-10-03 16:17:11 +01:00