Commit graph

305 commits

Author SHA1 Message Date
Pentarctagon
1f6bf4c203 Upload artifacts that could be used for releases.
Also don't upload things anymore that aren't being used.
2021-11-18 12:32:17 -06:00
Pentarctagon
6d5202632b
Forgot to re-add macOS arm jobs to the notifications 2021-10-30 19:49:08 -05:00
Pentarctagon
b37114ecbc
Let's see if github actions doesn't bug out anymore when these are enabled. 2021-10-30 16:41:56 -05:00
Steve Cotton
242db7a977 Fix a typo in the template for reporting typos 2021-07-25 17:09:25 +02:00
Pentarctagon
6a68836d25
Print cmake version. 2021-06-24 12:53:05 -05:00
Pentarctagon
470603f6bc
Specify working cmake version to use on CI. 2021-06-24 12:52:54 -05:00
Pentarctagon
52f4e10c0e
Bump cache ID number. 2021-06-02 12:31:55 -05:00
Pentarctagon
3e8d81f473
Temporarily enable verbose WML unit test output. 2021-05-11 19:31:22 -05:00
Pentarctagon
b95d72f9c1 Use cmake to create VS project files.
Due to an upstream change in vcpkg that breaks the simple integration previously available with `vcpkg integrate install`, building using that setup method is no longer possible. In order to work correctly, cmake must instead be used to generate the VS project files, since that is able to integrate with vcpkg, since vcpkg also uses cmake to build all the library dependencies.

An additional benefit of this is that it will no longer be necessary to separately update the VS project files since it will read the same source_lists files as cmake (on linux) and scons do.

This also enables running the WML unit tests on Windows with this in order to confirm that a valid wesnoth.exe is in fact being generated as well as fixes building the boost unit tests.

The warning level for both release and debug builds are now at level three, the remaining warnings have been fixed, and therefore strict builds have been enabled - any warning will now cause the build to fail, just like for the linux jobs.

Known issues:
* The boost unit tests don't actually run successfully - they fail on CI at least with an exit code on 201 - however I don't know if this is a real problem or just a problem with running headless on CI.
* The debug build doesn't quite work since the executables are built against the non-debug dlls but cmake copies over the debug dlls into the output directory. For now this can be worked around by copying the release dlls into the debug directory.
* The instructions in INSTALL.md are not very good since I don't use Windows and thus can't write anything more detailed. Ideally someone who uses Windows can add more detailed step by step instructions at some point.

Fixes #5741
2021-05-07 00:02:02 -05:00
Pentarctagon
73c4e19ea2
Make whitespace fixing a script. 2021-05-02 16:40:40 -05:00
Pentarctagon
c4b42eadc0
Fix cmake warning. 2021-04-29 20:29:42 -05:00
Steve Cotton
bfe1f516ac Keep the Windows CIs on a version of vcpkg that builds Wesnoth
Quick workaround for #5741, the Windows builds weren't finding Pango's header
files when used with vcpkg version 546813ae7b9e2873dd3d38e78b27ac5582feae10
([glib up to gtk] update and make it work with meson).

Hopefully we can revert this workaround soon.
2021-04-27 20:03:57 +02:00
Pentarctagon
3858737ac3
Remove sdl2-ttf dependency from vcpkg on CI. 2021-04-27 09:32:31 -05:00
Pentarctagon
da336038c4
Make it more obvious which test failed. 2021-04-26 00:40:27 -05:00
Pentarctagon
fce4534493
Add comment for why the macOS ARM jobs are disabled. 2021-04-26 00:37:05 -05:00
Pentarctagon
2d4913f2e5
Delete temp file so it doesn't get picked up later. 2021-04-25 20:55:51 -05:00
Pentarctagon
5dde3d735d
Print out what was modified. 2021-04-25 19:52:02 -05:00
Pentarctagon
e74abf0567
Fix the check for whether files were modified. 2021-04-25 17:54:56 -05:00
Pentarctagon
78422f46fc
Check the correct directory for lua. 2021-04-25 15:35:03 -05:00
Pentarctagon
cc34f01f68
Add cpp|hpp and lua file whitespace check to CI. 2021-04-25 15:15:44 -05:00
Pentarctagon
a2c795bfd7
Remove verbose flag from WML unit tests. 2021-04-08 22:03:32 -05:00
Pentarctagon
e668c477c5
Delete SUPPORT.md and move CONTRIBUTING.md.
SUPPORT.md was a small subset of CONTRIBUTING.md, and CONTRIBUTING.md no longer has a TOOD section and so should be moved to where more people will see it.
2021-04-02 19:05:10 -05:00
Pentarctagon
6fcd4ede8d
Fill out PR section. 2021-04-02 17:29:46 -05:00
Celtic Minstrel
62183363b1
Add a label rule for WFL 2021-03-13 01:15:04 -05:00
Pentarctagon
395fcf3371
Additional cleanup after 18.04 CI job removal. 2021-03-10 21:50:03 -06:00
Pentarctagon
6ca9f0969e
Remove Ubuntu 18.04 CI job.
As of the TLS PR, supporting Ubuntu 18.04 will not be possible due to Boost 1.65 not supporting perfect forwarding in ssl stream's constructor.
2021-03-10 13:49:56 -06:00
Pentarctagon
3da6ce096b
Disable Windows github actions caching.
It already didn't work anyway, but now it seems to be actively causing problems by randomly failing due to lack of disk space. Though how it can only sometimes run out of disk space despite trying to cache the same thing every time, and when the runner instance is supposed to always have the same amount of disk space available, is anyone's guess.
2021-03-06 13:26:57 -06:00
Charles Dang
2da3018361 Ok CI needs ptr-container again... 2021-01-21 13:13:44 +11:00
Charles Dang
51511e582e Boost I do not understand you 2021-01-21 12:03:47 +11:00
Charles Dang
42fa1aa3b5 Cleaned up vcpkg package install list
We no longer need ptr-container or thread.
2021-01-20 21:12:36 +11:00
Pentarctagon
90946ca262 Update to require C++17.
This then also bumps the minimum GCC version to 7.
2021-01-16 17:05:47 -06:00
Pentarctagon
ef7d69b953 Use gcc-9 in the Scout runtime instead of gcc-5.
The gcc-9 shipped with the Scout runtime forces the use of -static-libstdc++ which is what allows this to work. However, LTO is not yet able to be enabled since as of right now it simply crashes immediately with `free(): invalid pointer`.
2021-01-16 15:43:59 -06:00
Pentarctagon
736f20b67a
Small update to labeler for the servers. 2021-01-08 18:21:47 -06:00
Pentarctagon
1061692215
Temporarily disable macOS ARM due to constant internal CI errors. 2021-01-07 09:12:35 -06:00
Pentarctagon
f1c4a83f20
Re-add MP test script to CI. 2021-01-05 11:38:46 -06:00
Pentarctagon
551aa31390 Add a CI check for doxygen issues. 2020-12-31 23:59:28 -06:00
Pentarctagon
d34c2b0347
Force rebuild of vcpkg dependencies on CI. 2020-12-30 11:16:17 -06:00
Sergey Popov
3933ebab5c
Use coroutines via boost::asio::spawn to improve overall code structure in servers (#5341)
* Convert server_base class to use coroutine instead of handlers

* Rework wesnothd's client login to use coroutine

* Merge 3 player handling functions into a single coroutine

* update cmakelists too

* Implement send_doc_queued in terms of coroutine

* Use brace initialization for making asio buffers

* Implement campaignd's request handling in coroutine

* Brace-initialize entire vector

* Remove old handler based send/receive helpers

* Document coroutine send/receive helpers

* Made coro_send_doc() helper take wml doc by reference

In most cases there is no need to rely on shared pointers to ensure
object lifetime if using coroutines since even when coroutine is
suspended args are still kept alive by its context.

* Document coro_send_file()

* Silence deprecation warning to fix build on earlier versions of boost

* Explicitly check for boost.context to allow linking against static boost libs

* Add boost.coroutine to flatpak manifest

* Port winapi TransmitFile codepath to coroutines

* Exception safety fix

* Add boost.scope_exit to vcpkg

* Fix build with pre-1.66 boost

* Move coro_* helpers into server_base class

Those helpers were in .ipp solely because they were templated on handler
types, this is no longer true after coroutine based rework.

* Make server_base::coro_send_file non-inline

* CleanUp Xcode project

Co-authored-by: Martin Hrubý (hrubymar10) <hrubymar10@gmail.com>
2020-12-30 19:08:34 +03:00
Pentarctagon
ecd1d0ce55 Add CI jobs for macOS ARM configurations. 2020-12-20 19:15:36 -06:00
Martin Hrubý (hrubymar10)
1d5448fb0c
Add support for Apple Silicon to Xcode 2020-12-20 20:38:44 +01:00
Pentarctagon
8942efe5fd
Move/rename various CI scripts to no longer refer to travis. 2020-12-10 14:11:17 -06:00
Pentarctagon
48b5db9672
Only need errors. 2020-12-04 08:56:18 -06:00
Pentarctagon
fff15b9bd1
Fixup. 2020-12-04 08:54:54 -06:00
Pentarctagon
f23ea9e563
Make notification smaller. 2020-12-04 08:54:03 -06:00
Pentarctagon
a7bc07d5ee
Don't send notification for failed PRs. 2020-12-04 08:37:24 -06:00
Pentarctagon
ff360d7d95 Don't show redundent details on push vs pull request. 2020-12-04 00:20:10 -06:00
Pentarctagon
257f1810af Add Discord notification when build fails. 2020-12-03 18:52:49 -06:00
Pentarctagon
c7643e0785
Fix macOS CI. 2020-12-03 11:48:17 -06:00
Pentarctagon
c723dc14f0
Fixup vcpkg dependencies for playing audio. 2020-12-02 00:42:52 -06:00
Pentarctagon
fd29aa8503
Fixup vcpkg dependencies for locales. 2020-12-02 00:37:22 -06:00