Patric Stout
c6864637fb
Add: [GitHub] also test if release builds without asserts are warning-free ( #11309 )
2023-09-17 19:47:55 +02:00
Patric Stout
ba67f39db6
Codechange: vendor the nlohmann-json library ( #11290 )
2023-09-13 16:11:34 +02:00
Loïc Guilloux
21bd5fb991
Fix: [CI] preview flow can't install latest version of npm ( #11265 )
2023-09-06 16:29:34 +00:00
Peter Nelson
e8015e497d
Codechange: Use begin/end of nwidget parts of begin/length.
...
This simplifies processing nwidget parts as, unlike the remaining length, the pointer to the end of the list never changes. This is the same principle as we use(d) for tracking end instead of length for C-style strings.
And this removes 160~ instances of the lengthof() macro.
2023-09-04 10:20:45 +01:00
Patric Stout
2f96ccc18a
Add: [CI] Create and store breakpad symbols for releases ( #11247 )
...
Additionally, also store PDB and exe files on the Symbol Server
for easier debugging with MSVC.
2023-08-30 18:27:15 +00:00
Patric Stout
a3d631ffed
Change: make nlohmann a mandatory library to build OpenTTD ( #11235 )
2023-08-28 19:04:36 +02:00
Patric Stout
13b76b0243
Fix: [CI] don't install breakpad on arm64-windows-static, as it is not supported (yet) ( #11242 )
2023-08-28 16:49:14 +02:00
Patric Stout
110dd0e6c1
Fix: [CI] Allow release-flow to run in forks (while skipping survey-key) ( #11241 )
2023-08-28 16:24:07 +02:00
Patric Stout
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
Andy
06b2d9b1cc
Doc: 'game_changelog.hpp' not 'gs_changelog.hpp' in GitHub PR template ( #11147 )
2023-07-19 11:43:24 +02:00
glx22
9cdf86a411
Add: workflow and script for checking ini_key issues in WindowDesc entries
2023-07-14 14:32:46 +02:00
Patric Stout
7ef6e99083
Fix: [CI] actually use the GitHub Apps token to trigger "Publish Docs" ( #11128 )
2023-07-11 13:14:50 +00:00
Patric Stout
dadcade81c
Fix: [CI] preview for one PR could cancel the preview of another ( #11121 )
2023-07-08 12:10:15 +00:00
Patric Stout
323dd619bb
Change: [CI] rework preview flow and use Cloudflare Pages to publish ( #11116 )
2023-07-08 12:30:27 +02:00
Loïc Guilloux
5f2246eabf
Fix 021c45c
: [CMake] detection and use of nlohmann-json for emscripten ( #11113 )
2023-07-06 11:49:06 +02:00
Patric Stout
83b6512032
Fix d5a72193
: [CI] downloading single artifact doesn't add folder to it ( #11107 )
2023-07-04 20:53:46 +00:00
Patric Stout
4c9c164ddc
Fix d5a72193
: [CI] GOG and Steam also depend on the source itself ( #11095 )
2023-07-01 21:32:47 +00:00
Patric Stout
d5a72193e7
Change: [CI] upload releases to new CDN ( #11093 )
2023-07-01 14:30:57 +02:00
Patric Stout
ff050ea1d9
Fix: [CI] enable audio (alsa / jack / pulse) for generic Linux builds ( #11051 )
...
SDL needs to see the header files when compiling to enable those
drivers runtime. It doesn't actually link against them: it just
needs to see the headers.
2023-06-21 13:37:13 +02:00
Owen Rudge
5a7098cb41
Change: [Actions] Use notarytool for notarization instead of gon
2023-06-15 14:52:00 +01:00
Patric Stout
7634553d22
Feature: opt-in survey when exiting a game
...
On first start-up, the game will ask if you want to participate
in our automated survey. You have to opt-in, and can easily opt-out
(via the Options) at any time.
When opt-in, whenever you exit a game, a JSON blob will be send
to the survey server hosted by OpenTTD. This JSON blob contains
information that gives a global picture of the game just played:
- What settings were used
- How many humans vs AIs
- How long the game has been played
- Basic information about the OS / CPU
All this information is kept very generic, so there is no
chance we send private information to our survey server.
Nothing in the JSON blob could identify you as a person; it
mostly tells about the game played. At any time you can see
what the JSON blob includes, by pressing the "Preview Survey
Results" button in-game.
2023-05-14 23:22:02 +02:00
Patric Stout
021c45c4f6
Add: [CMake] JSON library (nlohmann)
2023-05-14 23:22:02 +02:00
Loïc Guilloux
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
Rubidium
192ed55462
Change: disable precompiled headers on Linux (GCC - Dedicated) target to ensure those still build
2023-05-08 16:49:23 +02:00
Patric Stout
62f9bdb939
Fix: [CI] no need to build unit-tests for releases ( #10759 )
...
We don't run them anyway. And LTO can be darn slow.
2023-05-02 23:43:16 +02:00
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
73bdd4bdd7
Fix: [CI] typo in Windows release jobname ( #10742 )
2023-04-29 19:59:01 +00: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
Owen Rudge
173ed81dbe
Change: [Actions] Upgrade import-codesign-certs dependency in macOS build workflow
2023-04-26 15:10:47 +01:00
SamuXarick
f8b5661d28
Change: Allow GS access to ScriptGroup functions
2023-04-17 17:59:16 +02:00
Rubidium
43a7e54067
Add: unit test functionality using catch2
2023-04-16 18:58:21 +02:00
Tyler Trahan
3611082f8e
Codechange: [CodeQL] Disable CodeQL check on trivial switch statements ( #10537 )
2023-03-26 09:35:44 +02:00
Rubidium
2fffde0891
Add: workflow and script for checking missing mode enforcements
2023-03-08 22:33:47 +01: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
16352559f2
Change: release with (much) newer versions of dependencies for Generic Linux ( #10484 )
2023-02-15 22:18:23 +01:00
frosch
274bcf8d80
Fix 64523709
: rpm uses different package names than deb.
2023-02-13 22:45:07 +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
Patric Stout
be0d65d978
Add: [Actions] upload releases to GOG automatically
2023-01-28 20:41:08 +01:00
Patric Stout
146bd74077
Change: [Actions] release Windows Store files to CDN
...
Currently they had a name that the rest of our system cannot
deal with correctly. "cert.pfx" is also not very descriptive from
a system as a whole.
As such, we now name it like any other file, so it can be published
safely to the CDN.
2023-01-28 20:41:08 +01:00
Patric Stout
425ba82676
Change: [Actions] split GitHub workflows into several smaller ones
2023-01-28 20:41:08 +01:00
Patric Stout
9fd88af537
Remove: [Actions] Ubuntu/Debian release binaries (instead, use the Generic)
2023-01-28 20:41:08 +01:00
rubidium42
5e6dac6fd4
Add: enable CodeQL code scanning
...
As a replacement to the now deprecated LGTM(.com)
2023-01-14 21:58:18 +01:00
Loïc Guilloux
8f350c9ae6
Fix: [Actions] preview_build failure due to git upgrade ( #10323 )
2023-01-05 23:25:45 +00: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
Michael Lutz
c4e655b1d4
Remove: [Actions] Ubuntu Bionic and Debian Buster from release workflow. ( #10115 )
2022-10-31 22:37:01 +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
Patric Stout
15f4d7c04c
Remove: [GitHub] old configuration file for stale-bot ( #9998 )
...
This bot was deactivated months (years?) ago.
2022-09-04 21:42:08 +02:00
Aaron Katzin
2fe8a257ac
Add: [Actions] Ubuntu Jammy Jellyfish (22.04) build for releases ( #9881 )
2022-08-31 16:11:34 +02:00
Frazer Smith
9bdc1e8f04
Update: bump peter-evans/repository-dispatch from 1 to 2
2022-05-14 16:58:10 +02:00
Frazer Smith
19b838dd60
Update: bump actions/download-artifact from 2 to 3
2022-05-14 16:58:10 +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
Frazer Smith
33dabc42bb
Update: bump actions/upload-artifact from 2 to 3
2022-05-14 16:58:10 +02:00
Owen Rudge
5a6ea11ead
Feature: [Actions] Package builds for the Windows Store automatically
2022-05-04 11:40:49 +01:00
Patric Stout
8537fa7206
Fix: [Actions] Remove Ubuntu:groovy from release pipeline ( #9845 )
...
It no longer exists upstream. Let's focus on LTS only for now.
2022-04-02 12:36:15 +02:00
Owen Rudge
1bfbcff71e
Change: [Actions] Switch back to primary source for 'gon' in macOS build job
...
This reverts commit 7a97a33598
.
2022-03-31 13:00:35 +01:00
Owen Rudge
7a97a33598
Fix: [Actions] Switch source for 'gon' in macOS build job
2022-03-28 21:56:24 +01:00
Loïc Guilloux
1a17b6c8f6
Change: [Actions] Remove VS2017 and restore VS2019 for CI ( #9835 )
2022-03-13 16:05:24 +01:00
Patric Stout
0cbe94256e
Change: [Emscripten] update to 2.0.34 and use Release over RelWithDebInfo ( #9696 )
...
It turns out that having "-g" in the compile-statement causes
Emscripten to pick -g3, which makes for very big binaries. This
is very likely not your intention when building Emscripten, as
smaller really is better.
For comparison, with RelWithDebInfo the binary is ~80MB. With
Release it is ~7.4MB.
2021-11-14 16:59:49 +01:00
glx22
14429bbe8a
Change: [Actions] Also check desync debug
2021-10-19 09:05:00 +01:00
Patric Stout
5bcdf16dc5
Fix 01603d9e
: [Preview] publishing preview failed due to recent changes ( #9621 )
...
Since 01603d9e
we run under root, not under github user. In result,
the location of "aws" binary changed.
2021-10-17 22:42:29 +02:00
Patric Stout
01603d9e47
Fix 3046a6ce
: [Preview] building preview failed to patch LZMA ( #9620 )
...
The job was started under a non-priv user, which did not have
permission to patch the emscripten files required to make LZMA
work.
2021-10-17 21:59:50 +02:00
Loïc Guilloux
46123742f5
Change: [Actions] Use macOS-11 image for releases ( #9605 )
2021-10-03 21:14:59 +02: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
Patric Stout
9c74dc2468
Codechange: validate that all STR_NNN strings are defined and used ( #9518 )
2021-09-02 22:32:10 +02:00
frosch
93fd42b0c3
Doc: guidelines on english.txt or translation changes in PRs. ( #9505 )
2021-08-22 14:27:48 +02:00
Patric Stout
b2eafcc720
Fix: [Actions] changelog assumed major.minor.patch versioning ( #9482 )
...
We now use major.minor versioning, so it failed to pick up the
correct information.
2021-08-15 14:14:13 +02:00
Patric Stout
b67ef1e5b8
Fix: [Actions] Ubuntu 18.04 by default has a compiler too old for OpenTTD ( #9481 )
2021-08-15 13:08:58 +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
Patric Stout
1ed7afc0a8
Change: [GitHub] use an issue form to let people fill in bug report / crashes ( #9400 )
2021-06-26 13:51:29 +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
Owen Rudge
3ce7e31f64
Feature: Sign Windows builds
2021-05-26 13:40:44 +01: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
Tyler Trahan
27031b396f
Change: [Actions] Reword bug/crash report instructions ( #9104 )
2021-04-25 19:27:30 +01:00
Patric Stout
2e39ac5ba2
Add: [GitHub] use issue templates to make it more clear what we expect from users ( #9092 )
2021-04-24 17:03:19 +02:00
Charles Pigott
2a9825b8de
Add: [Actions] Debian Bullseye release build ( #8921 )
2021-04-01 20:45:13 +01:00
Patric Stout
9639e77297
Fix: [Actions] "is-tag" variable is the 5th element, not 6th
...
The 6th is "is-stable-tag", but it is currently broken in meaning.
Betas and RCs are considered "stable", but final releases are not.
This is the reason it was working for RC1, but not for the final
release.
2021-04-01 13:26:34 +02:00
Patric Stout
64a8c38d2f
Fix: [Actions] update environment variable for AWS region ( #8827 )
2021-03-08 23:31:45 +01: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
90adac8f09
Change: [Actions] stop using 'run-vcpkg' action for Release
2021-02-24 17:54:24 +01:00
glx22
58640824d1
Change: [Actions] stop using 'run-cmake' action for Release
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
395e015282
Change: Convert .md to .rtf for Windows/Mac packages
2021-02-08 23:23:24 +00:00