Jonathan G Rennison
a71f8b6703
Github: Temporarily disable vcpkg caching for linux generic builds
...
To avoid problems where dependencies downloaded via apt change,
causing the cache contents to be incorrect
2024-07-11 01:13:45 +01:00
Jonathan G Rennison
86a6f63e2f
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/codeql.yml
# .github/workflows/commit-checker.yml
# .github/workflows/release-linux-legacy.yml
# .github/workflows/release-linux.yml
# .github/workflows/release-macos.yml
# .github/workflows/release-windows-store.yml
# .github/workflows/release-windows.yml
# .github/workflows/upload-cdn.yml
# .github/workflows/upload-gog.yml
# .github/workflows/upload-steam.yml
# src/console_cmds.cpp
# src/core/math_func.hpp
# src/fios.cpp
# src/fios.h
# src/intro_gui.cpp
# src/network/network_server.cpp
# src/openttd.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_table.cpp
# src/settings_type.h
# src/table/settings.h.preamble
# src/table/settings/company_settings.ini
# src/table/settings/currency_settings.ini
# src/table/settings/difficulty_settings.ini
# src/table/settings/economy_settings.ini
# src/table/settings/game_settings.ini
# src/table/settings/gui_settings.ini
# src/table/settings/linkgraph_settings.ini
# src/table/settings/locale_settings.ini
# src/table/settings/misc_settings.ini
# src/table/settings/multimedia_settings.ini
# src/table/settings/network_private_settings.ini
# src/table/settings/network_settings.ini
# src/table/settings/news_display_settings.ini
# src/table/settings/old_gameopt_settings.ini
# src/table/settings/pathfinding_settings.ini
# src/table/settings/script_settings.ini
# src/table/settings/win32_settings.ini
# src/table/settings/window_settings.ini
# src/table/settings/world_settings.ini
# src/viewport.cpp
# src/viewport_func.h
# src/window.cpp
2024-02-15 23:49:11 +00:00
dependabot[bot]
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
Jonathan G Rennison
0df59defc4
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-linux.yml
# .github/workflows/release.yml
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/script/api/script_rail.cpp
# src/settings_gui.cpp
# src/signal_type.h
# src/video/sdl2_v.cpp
2024-01-16 01:15:58 +00:00
Patric Stout
42e07809d0
Change: [CI] upgrade linux-generic to libc 2.28 and introduce linux-legacy ( #11792 )
...
linux-legacy is the old variant, which uses libc 2.17, released in 2012.
linux-generic is now upgraded to libc 2.28, released in 2018.
2024-01-15 21:30:52 +00:00
Patric Stout
7fd2c2d44f
Fix: [Linux] install all X11 dependencies in linux-generic ( #11787 )
...
Without this, xrandr support is not compiled into SDL, which means
that SDL will only see a single display spanning all your displays
(a virtual desktop).
2024-01-15 21:59:19 +01:00
Jonathan G Rennison
8ae1587987
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/os/windows/crashlog_win.cpp
# src/os/windows/font_win32.cpp
# src/os/windows/win32.cpp
# src/os/windows/win32.h
# src/video/win32_v.cpp
# src/video/win32_v.h
2024-01-12 18:57:14 +00:00
Patric Stout
b1812751e0
Fix: [CI] unbreak Linux releases by using a slightly older rust-cache action ( #11758 )
...
The maintainer bumped node16 -> node20 in a patch version, which
is a bit awkward for us, as we can't run node20 in this workflow
(yet). Most other actions used a major version for that, and for
similar reasons we cannot upgrade "download-artifact" to v4.
This is a temporary solution, while we start looking into how to
support node20 in this workflow.
2024-01-12 10:25:50 +00:00
Jonathan G Rennison
42c8f50551
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release-linux.yml
# .github/workflows/release-macos.yml
# .github/workflows/release-windows.yml
# .gitignore
# COMPILING.md
# src/company_gui.cpp
# src/date_gui.cpp
# src/engine.cpp
# src/engine_func.h
# src/fileio.cpp
# src/linkgraph/linkgraph_gui.h
# src/newgrf_debug_gui.cpp
# src/newgrf_gui.cpp
# src/order_gui.cpp
# src/osk_gui.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/script/api/script_event_types.hpp
# src/sl/oldloader_sl.cpp
# src/smallmap_gui.cpp
# src/station_cmd.cpp
# src/toolbar_gui.cpp
# src/town_gui.cpp
# src/transparency_gui.cpp
# src/vehicle_gui.cpp
# src/widget.cpp
# src/widget_type.h
# src/widgets/dropdown.cpp
# src/widgets/dropdown_func.h
# src/widgets/dropdown_type.h
# src/widgets/group_widget.h
# src/widgets/vehicle_widget.h
# src/window.cpp
# src/window_gui.h
# src/window_type.h
2024-01-02 14:44:33 +00:00
Patric 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 Stout
0c064b5119
Change: [CI] use vcpkg built-in caching mechanism
2023-12-30 18:40:04 +01:00
Patric Stout
086bd00f5d
Fix: [CI] upgrade curl to a modern version to avoid patching other tools
2023-12-30 18:40:04 +01:00
Patric Stout
3fec8ece5a
Change: [CI] always use "latest" image for our runners
2023-12-30 18:40:04 +01:00
Patric Stout
d6e8e83052
Fix: [CI] patch in SHF_COMPRESSED symbol for our Linux Generic binaries ( #11651 )
2023-12-30 14:40:09 +01:00
Loïc Guilloux
714d2c04e4
Fix: [CI] Don't let SDL2 dependencies install too much stuff ( #11537 )
...
(cherry picked from commit 06b1bd3da4
)
2023-12-08 22:29:15 +00:00
Loïc Guilloux
06b1bd3da4
Fix: [CI] Don't let SDL2 dependencies install too much stuff ( #11537 )
2023-12-04 13:55:52 +01:00
glx22
0ceed777ca
Codechange: [CI] Use runner vcpkg in release-linux workflow
...
(cherry picked from commit e2c5eb3b65
)
2023-11-30 17:28:02 +00:00
glx22
e2c5eb3b65
Codechange: [CI] Use runner vcpkg in release-linux workflow
2023-11-29 21:00:01 +01:00
Jonathan G Rennison
21b49a213e
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/cheat_gui.cpp
# src/main_gui.cpp
# src/network/network_gui.cpp
# src/saveload/saveload.h
# src/smallmap_gui.cpp
# src/station_cmd.cpp
# src/timetable_cmd.cpp
# src/toolbar_gui.cpp
# src/widget.cpp
# src/widget_type.h
# src/widgets/dropdown_type.h
2023-11-25 14:14:00 +00:00
Jonathan G Rennison
cf4cf5c08f
Codechange: vendor the nlohmann-json library ( #11290 )
...
(cherry picked from commit ba67f39db6
)
# Conflicts:
# .github/workflows/ci-build.yml
# CMakeLists.txt
# COMPILING.md
# src/os/macosx/survey_osx.cpp
# src/os/windows/survey_win.cpp
# src/script/api/script_admin.cpp
# src/script/api/script_event_types.cpp
# src/tests/test_script_admin.cpp
2023-11-17 19:20:35 +00:00
Loïc Guilloux
375f24956c
Fix: [CI] Installed (and cached) vcpkg packages are never upgraded in release-linux workflow ( #11396 )
...
Other workflows use a per image cache because images provide a fixed vcpkg clone.
2023-10-25 21:20:45 +02:00
Patric Stout
ba67f39db6
Codechange: vendor the nlohmann-json library ( #11290 )
2023-09-13 16:11:34 +02: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
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
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
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
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
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
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
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
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
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
425ba82676
Change: [Actions] split GitHub workflows into several smaller ones
2023-01-28 20:41:08 +01:00