Rubidium
73d7052732
Add: unit test functionality using catch2
...
(cherry picked from commit 43a7e54067
)
2023-08-19 10:18:31 +01:00
Jonathan G Rennison
5a062bd5b2
Workflow: Add zstd to github release workflow
2023-08-17 14:18:36 +01:00
Jonathan G Rennison
6fa3620222
CMake: Change -ffile-prefix-map to be enabled by an option
...
Use in github release workflows
2023-08-17 13:59:48 +01:00
Jonathan G Rennison
d09b504bc5
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release-linux.yml
# .github/workflows/release-macos.yml
# .github/workflows/release-source.yml
# .github/workflows/release.yml
# CMakeLists.txt
# COMPILING.md
# src/ai/ai_core.cpp
# src/ai/ai_gui.cpp
# src/bridge_gui.cpp
# src/company_gui.cpp
# src/console_cmds.cpp
# src/core/CMakeLists.txt
# src/core/smallmap_type.hpp
# src/disaster_vehicle.h
# src/effectvehicle_base.h
# src/fontcache.cpp
# src/game/game_core.cpp
# src/game/game_gui.cpp
# src/gamelog.cpp
# src/gamelog_internal.h
# src/group_gui.cpp
# src/linkgraph/linkgraph.h
# src/misc.cpp
# src/network/core/config.h
# src/network/core/udp.cpp
# src/network/network_chat_gui.cpp
# src/network/network_content_gui.cpp
# src/network/network_gui.cpp
# src/newgrf.cpp
# src/newgrf_gui.cpp
# src/newgrf_profiling.cpp
# src/newgrf_profiling.h
# src/object_gui.cpp
# src/openttd.cpp
# src/openttd.h
# src/order_gui.cpp
# src/os/windows/font_win32.cpp
# src/rail_gui.cpp
# src/road.cpp
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.h
# src/script/api/script_controller.cpp
# src/script/api/script_roadtypelist.cpp
# src/script/script_config.cpp
# src/script/script_config.hpp
# src/script/script_instance.cpp
# src/script/script_scanner.cpp
# src/script/squirrel.cpp
# src/script/squirrel_helper.hpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_type.h
# src/table/settings/network_private_settings.ini
# src/timetable_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/window_gui.h
2023-07-01 02:42:51 +01:00
Patric Stout
b67ff36a13
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.
(cherry picked from commit ff050ea1d9
)
2023-06-24 23:48:08 +01:00
Jonathan G Rennison
b6f5cd40e6
Github: Disable survey key request for now
2023-06-20 18:36:27 +01:00
Jonathan G Rennison
77b3c5726b
Github: Re-add changes to upstream release workflows
2023-06-20 18:25:03 +01:00
Jonathan G Rennison
4f7cb1e498
Github: Change release workflows to match upstream
2023-06-20 17:43:12 +01:00
Jonathan G Rennison
d9e7d2a7fd
MacOS: Fix OSX deployment target in CMake and ci-build
2023-06-11 17:58:41 +01:00
Jonathan G Rennison
ce3707fbbf
MacOS: Bump deployment target to 10.13
2023-06-05 21:26:41 +01:00
Jonathan G Rennison
2ed248a61d
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release-linux.yml
# src/aircraft_cmd.cpp
# src/airport_gui.cpp
# src/articulated_vehicles.cpp
# src/build_vehicle_gui.cpp
# src/company_gui.cpp
# src/genworld_gui.cpp
# src/gfx_layout.cpp
# src/misc_gui.cpp
# src/newgrf.cpp
# src/newgrf_config.h
# src/newgrf_engine.cpp
# src/news_gui.cpp
# src/order_gui.cpp
# src/roadveh_cmd.cpp
# src/saveload/saveload.h
# src/saveload/vehicle_sl.cpp
# src/ship_cmd.cpp
# src/statusbar_gui.cpp
# src/table/settings/network_private_settings.ini
# src/table/settings/network_settings.ini
# src/toolbar_gui.cpp
# src/train_cmd.cpp
# src/vehicle_gui.cpp
2023-05-31 23:21:38 +01:00
Jonathan G Rennison
d6b8fc9fe8
Github: Fix CI build checkout with workflow dispatch ref
2023-05-29 00:23:52 +01:00
Jonathan G Rennison
6091d7470c
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-macos.yml
# src/company_gui.cpp
# src/linkgraph/linkgraph.cpp
# src/newgrf_debug_gui.cpp
# src/strgen/strgen_base.cpp
# src/timetable_gui.cpp
2023-05-28 10:20:52 +01:00
Jonathan G Rennison
fd4d4d341d
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/animated_tile.cpp
# src/cargopacket.h
# src/cheat_gui.cpp
# src/company_cmd.cpp
# src/company_gui.cpp
# src/date.cpp
# src/disaster_vehicle.cpp
# src/dock_gui.cpp
# src/economy.cpp
# src/engine.cpp
# src/error_gui.cpp
# src/fontcache/spritefontcache.cpp
# src/game/game_gui.cpp
# src/game/game_text.cpp
# src/gfx.cpp
# src/graph_gui.cpp
# src/highscore_gui.cpp
# src/industry_cmd.cpp
# src/lang/dutch.txt
# src/lang/english_AU.txt
# src/lang/english_US.txt
# src/lang/finnish.txt
# src/lang/french.txt
# src/lang/italian.txt
# src/lang/portuguese.txt
# src/lang/russian.txt
# src/lang/turkish.txt
# src/lang/vietnamese.txt
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf.h
# src/newgrf_generic.cpp
# src/news_gui.cpp
# src/openttd.cpp
# src/os/unix/unix.cpp
# src/os/windows/font_win32.cpp
# src/os/windows/win32.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/misc_sl.cpp
# src/saveload/oldloader_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/script/script_gui.cpp
# src/settings_table.cpp
# src/signs_gui.cpp
# src/smallmap_gui.cpp
# src/smallmap_gui.h
# src/spritecache.cpp
# src/spritecache.h
# src/spriteloader/grf.cpp
# src/station_cmd.cpp
# src/statusbar_gui.cpp
# src/stdafx.h
# src/strgen/strgen_base.cpp
# src/subsidy.cpp
# src/table/settings/difficulty_settings.ini
# src/texteff.cpp
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
# src/townname.cpp
# src/vehicle.cpp
# src/waypoint_cmd.cpp
# src/widgets/dropdown.cpp
# src/window.cpp
2023-05-26 19:36:48 +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
Jonathan G Rennison
3d1b0af8f6
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/newgrf_debug_gui.cpp
# src/object_cmd.cpp
# src/object_gui.cpp
2023-04-03 00:43:58 +01:00
Tyler Trahan
3611082f8e
Codechange: [CodeQL] Disable CodeQL check on trivial switch statements ( #10537 )
2023-03-26 09:35:44 +02:00
Jonathan G Rennison
25ed7c2b53
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/music.cpp
# src/script/api/script_company.cpp
# src/script/api/script_event_types.cpp
# src/script/api/script_group.cpp
# src/script/api/script_object.cpp
# src/script/api/script_road.cpp
2023-03-11 00:06:13 +00:00
Rubidium
2fffde0891
Add: workflow and script for checking missing mode enforcements
2023-03-08 22:33:47 +01:00
Jonathan G Rennison
2ea1766677
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/commit-checker.yml
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/landscape.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/order_base.h
# src/order_cmd.cpp
# src/order_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/league_sl.cpp
# src/saveload/saveload.h
# src/script/api/script_object.hpp
# src/script/squirrel_helper.hpp
# src/settings_table.cpp
# src/station_cmd.cpp
# src/table/settings.h.preamble
# src/tree_cmd.cpp
# src/tree_map.h
# src/vehicle.cpp
# src/waypoint_cmd.cpp
2023-03-04 16:45:05 +00:00
Jonathan G Rennison
ae7c86c49d
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-linux.yml
# .github/workflows/release-macos.yml
# src/industry_cmd.cpp
# src/industry_cmd.h
# src/network/core/http_curl.cpp
# src/network/core/tcp_http.cpp
# src/network/core/tcp_http.h
# src/network/network_content.h
# src/script/api/script_goal.cpp
# src/script/api/script_industry.cpp
# src/script/api/script_league.cpp
# src/script/api/script_story_page.cpp
# src/script/api/script_town.cpp
# src/train.h
# src/train_cmd.cpp
2023-03-04 01:17:27 +00: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
Jonathan G Rennison
e644f34bf8
Github: Change CMake type to Release for MacOS release builds
2023-02-21 00:47:32 +00:00
Jonathan G Rennison
2a330961d4
Github: Change CMake options for Linux release builds
...
Change CMake type to Release
Enable LTO and debug section compression
2023-02-20 23:42:55 +00:00
Loïc Guilloux
ad6cd18cb4
Fix: [Actions] vcpkg needs pkg-config to build zlib on macOS ( #10488 )
...
(cherry picked from commit 27cbb81df5
)
2023-02-20 17:31:17 +00: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
Jonathan G Rennison
2b4b2f605d
Github: Enable workflow_dispatch for codeql
2023-02-15 00:07:57 +00: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
Jonathan G Rennison
1bfd96c7f2
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/3rdparty/fmt/core.h
# src/command_type.h
# src/console_cmds.cpp
# src/core/overflowsafe_type.hpp
# src/landscape.cpp
# src/network/network.cpp
# src/newgrf_object.h
# src/object_cmd.cpp
# src/order_gui.cpp
# src/saveload/vehicle_sl.cpp
# src/script/api/script_industrytype.cpp
# src/script/api/script_object.hpp
# src/script/api/script_town.cpp
# src/table/object_land.h
# src/timetable_cmd.cpp
# src/tree_cmd.cpp
# src/vehicle_gui.cpp
# src/window.cpp
2023-01-15 19:28:37 +00: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
Jonathan G Rennison
0310fb0cdc
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/lang/czech.txt
# src/lang/galician.txt
# src/lang/german.txt
# src/order_cmd.cpp
# src/saveload/afterload.cpp
# src/ship.h
# src/vehicle.cpp
2023-01-05 23:45:34 +00:00
Loïc Guilloux
8f350c9ae6
Fix: [Actions] preview_build failure due to git upgrade ( #10323 )
2023-01-05 23:25:45 +00:00
Jonathan G Rennison
a1f6aaa58f
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/lang/korean.txt
# src/saveload/afterload.cpp
# src/saveload/ai_sl.cpp
# src/saveload/game_sl.cpp
# src/script/script_instance.cpp
2022-12-31 18:17:24 +00:00