Commit Graph

111 Commits

Author SHA1 Message Date
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