Lion Kortlepel
2dd181d492
gracefully shutdown on bind() failure
2022-05-26 11:19:48 +02:00
Lion Kortlepel
88f1976668
Merge branch 'rc-v3.0.2' into rc-v3.1.0
2022-04-28 14:40:57 +02:00
Lion Kortlepel
974dda9f8b
HTTPServer: Add config value to specify listen IP
...
Change default IP to localhost,
Set default SSL to false due to this.
2022-04-28 14:12:26 +02:00
Lion Kortlepel
0979c8b1e4
HTTPServer: Attempt to catch more errors
2022-04-28 14:04:54 +02:00
Lion Kortlepel
0761036c8c
TConsole::StartLoggingToFile: implement
2022-04-28 13:46:25 +02:00
Lion Kortlepel
d8c33c03ee
start work on new logger
2022-04-05 22:27:45 +02:00
Lion Kortlepel
1bab3276e9
fix setsockopt SO_SNDTIMEO for windows, bump version number to 3.0.2, update commandline
2022-04-05 10:59:16 +02:00
Lion Kortlepel
450f0a6875
Fixup merge
2022-03-31 22:17:10 +02:00
Lion Kortlepel
104737571c
Merge branch 'rc-v3.0.2' into rc-v3.1.0
...
This is a periodic merge to keep 3.1.0 up to date with 3.0.2
2022-03-31 22:10:49 +02:00
Lion Kortlepel
d4b30a2583
CreateEventTimer: Implement CallStrategy
...
There are two CallStrategies:
- BestEffort (default): Will try to get your event to trigger at the specified
interval, but will refuse to queue handlers if a handler takes too
long.
- Precise: Will enqueue event handlers at the exact interval specified.
Can lead to the queue filling up if the handler takes longer than the
interval.
2022-03-31 20:13:59 +02:00
Lion Kortlepel
b97397132d
TLuaEngine: improve result queue handling
2022-03-31 15:59:31 +02:00
Lion Kortlepel
d86efabb1a
Modernize CMakeLists, automatically update submodules
...
CMake will now find packages in a modern way (include(Find*)), and will
also ensure that submodules are updated, unless told otherwise.
Also removed some apple-specific workarounds, we will need to look at
that again.
2022-03-30 12:14:13 +02:00
Lion Kortlepel
de82caef33
Add HideUpdateMessages setting ("ImScaredOfUpdates") and periodic update reminders (every 5th heartbeat)
2022-03-25 13:34:28 +01:00
Lion Kortlepel
f8c58f363a
Change default MaxPlayers to 8
2022-03-25 13:32:41 +01:00
Lion Kortlepel
71c2d4b859
Simplify "Backend heartbeat response" error ( closes #97 )
2022-03-25 12:55:35 +01:00
Lion Kortlepel
7a814ed35e
use fmt properly in beammp_*f logging functions
2022-03-24 14:45:53 +01:00
Lion Kortlepel
9e0d02c6db
add fmt library, add beammp_*f
2022-03-24 14:36:39 +01:00
Lion Kortlepel
dbfe4a4d11
Fix inconsistencies with handling errors in early network startup
...
In most cases, when socket creation, bind, listen, or similar fails,
it's best to gracefully shutdown. We do that now.
2022-03-24 14:06:03 +01:00
Lion Kortlepel
c1e216957b
move Json* to Util, add Random, RandomRange, RandomIntRange, catch
...
errors in TPluginMonitor
2022-03-18 01:52:31 +01:00
Lion Kortlepel
be498be661
change TriggerClientEvent to take object, not string, and add TriggerClientEventJson
2022-03-17 18:48:50 +01:00
20dka
3c08e54471
Add basic autocomplete ( fix #95 )
2022-03-15 01:58:26 +01:00
Lion Kortlepel
ca3314b416
add JsonDiffApply, JsonMinify, JsonPrettify, JsonFlatten, JsonUnflatten
2022-03-03 12:25:06 +01:00
Lion Kortlepel
7d97c3b560
add FS.ListFiles, FS.ListDirectories
2022-03-02 23:41:32 +01:00
Lion Kortlepel
9a0cdc6517
rename JsonSerialize to JsonEncode, JsonDeserialize to JsonDecode
2022-03-02 13:26:53 +01:00
Lion Kortlepel
b52677e585
Add JsonDeserialize
2022-03-02 13:22:26 +01:00
Lion Kortlepel
95b417bb36
Add MP.JsonSerialize
2022-03-02 11:43:48 +01:00
Lion Kortlepel
588c68ebe1
Use proper argument parser
2022-02-17 11:08:48 +01:00
Lion Kortlepel
548b2512cc
proper command parsing
2022-02-15 16:06:59 +01:00
Lion Kortlepel
8ff94a57d7
Add ParseCommand implementation
2022-02-15 15:34:33 +01:00
Lion Kortlepel
17c571811a
Add config option to turn off chat logging
...
When LogChat is disabled, using the `say` command in the console will
trigger a "chat message sent!" reply, as UX feedback.
2022-02-06 21:46:51 +01:00
Lion Kortlepel
fdb7c9ce71
update version to 3.1.0
2022-02-03 19:57:25 +01:00
Lion Kortlepel
7b458e3e27
Use yield() where possible
...
Replaced calls of this_thread::sleep_* with this_thread::yield(), which
yields the thread to the OS' scheduler.
2022-02-03 19:52:18 +01:00
Lion Kortlepel
81780294f8
advance to 3.0.1
2022-02-03 19:51:59 +01:00
Lion Kortlepel
9f892af997
start fixing backend heartbeat
2022-02-03 19:51:59 +01:00
Lion Kortlepel
754053e73f
Use yield() where possible
...
Replaced calls of this_thread::sleep_* with this_thread::yield(), which
yields the thread to the OS' scheduler.
2022-02-03 18:57:52 +01:00
Lion Kortlepel
fd12ee672d
Add various debug functions
2022-01-26 20:33:12 +01:00
Lion Kortlepel
2a588954be
advance to 3.0.1
2022-01-20 21:31:00 +01:00
Lion Kortlepel
c42c748b37
start fixing backend heartbeat
2022-01-20 15:46:13 +01:00
Lion Kortlepel
1b14206a3c
HTTP Server disabled by default
2021-12-23 14:24:00 +01:00
Lion Kortlepel
3555cec5fe
Simplify fix for event argument bug
2021-12-13 13:48:18 +01:00
Lion Kortlepel
71efe30345
Bump to 3.0.0, possible fix for event argument bug
2021-12-13 13:22:58 +01:00
Lion Kortlepel
cd19ae0836
Add shutting down / shutdown states to state keeper
2021-12-07 14:25:04 +01:00
Lion Kortlepel
2c115a2b2c
Fix GCC pragma to not appear on windows
2021-12-06 15:04:28 +01:00
Lion Kortlepel
3cce875fbb
Add UseSSL option to server config
2021-12-06 13:47:07 +01:00
Lion Kortlepel
a1335e8c7d
Add statuses, status messages
2021-12-06 13:17:54 +01:00
Lion Kortlepel
0f74eca2ee
Fix various issues and crashes
2021-12-06 12:28:52 +01:00
Lion Kortlepel
279c93179c
Fix segfault in http
2021-12-06 10:22:52 +01:00
Lion Kortlepel
62cc1e9ce4
Http: Add config value to turn it off, move all http settings into a category in the config
2021-12-06 09:53:13 +01:00
Lion Kortlepel
bd41382233
Application::TSettings: Improve default initialisation
2021-12-06 09:00:57 +01:00
awesome_milou
9d283738aa
Add preliminary work for HTTP health endpoint ( #68 )
...
* Add preliminary work for HTTP health endpoint
* Http: Fix infinite loop bug in Tx509KeypairGenerator::generateKey()
* update commandline
* Add TLS Support class for use with http server
* Add preliminary HTTP Server; TLS still broken; fix in later commit
* Fix TLS handshake, due to server being unable to serve key/certfile in 'Http.h/Http.cpp'; Cause was httlib not being threadsafe due to being a blocking http library
* Run clang format
* Add option to configure http server port via ServerConfig
* TConfig: add HTTPServerPort to config parsing step
* Fix SSL Cert / Key path not auto generating when not existing
* Add health endpoint; Fix SSL Cert serial no. not refreshing when regenerating
* Switch arround status codes in /health route
* Run clang format
Co-authored-by: Lion Kortlepel <development@kortlepel.com>
2021-12-05 18:24:55 +01:00