54 Commits

Author SHA1 Message Date
Lion Kortlepel
758d5b2c96
Revert "let's try vcpkg"
This reverts commit 8d7505956d86fbbd5b1f7496af2b413b360afa09.
2022-05-29 14:37:50 +02:00
Lion Kortlepel
8d7505956d
let's try vcpkg 2022-04-28 16:26:30 +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
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
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
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
Lion Kortlepel
479bb9f931
TLuaEngine: Make WaitForAll timeout optional 2021-12-05 01:32:15 +01:00
Lion Kortlepel
a289d0e872
Add timeout to WaitForAll 2021-12-05 01:09:41 +01:00
Lion Kortlepel
265dd710cf
add status command 2021-12-02 01:25:17 +01:00
Lion Kortlepel
19d67dee95
Add GetPlayerIDByName, kick, say 2021-11-29 01:14:37 +01:00
Lion Kortlepel
fc440bea2a
Add ability to switch into other lua states 2021-11-29 00:37:00 +01:00
Lucca Jiménez Könings
1a2a123d87 Fix various macOS compatibility issues 2021-11-25 02:01:44 +01:00
Lion Kortlepel
f8af134dc9
start writing http lua stuff, also heartbeat debug printing 2021-11-08 22:08:07 +01:00
Lion Kortlepel
9eabd19e17
Report more errors, better 2021-10-01 03:52:12 +02:00
Lion Kortlepel
243e96d503
Check all futures 2021-10-01 03:27:24 +02:00
Lion Kortlepel
e7f29ce04f
Fix server event timing 2021-10-01 01:40:37 +02:00
Lion Kortlepel
9d0caf2c7d
Lua: Implement Hot-Reload 2021-09-21 16:21:09 +02:00
Lion Kortlepel
27b5c6d850
Add GetFilename, GetExtension, 2021-09-20 22:45:12 +02:00
Lion Kortlepel
a3a18a3b56
Lua: Add CancelEventTimer 2021-09-20 16:09:17 +02:00
Lion Kortlepel
3edb9322d4
Lua: Simple CreateEventTimer improvements 2021-09-20 13:39:14 +03:00
Lion Kortlepel
4bf89706b4
Lua: Add MP.CreateTimedEvent as CreateThread replacement 2021-09-20 12:43:00 +03:00
Lion Kortlepel
4de80e0c7a
Lua: Remove debug prints, add GetLuaMemoryUsage 2021-09-19 23:55:24 +02:00
Lion Kortlepel
366a7dc9a6
Lua: Add Lua panic handler 2021-09-19 23:34:27 +02:00
Lion Kortlepel
60b86e2be6
Create TLuaChunk constructor to satisfy MSVC 2021-09-19 12:12:38 +02:00
Lion Kortlepel
701e613990
Lua: Fix float printing
Now prints 0, not 0.000000, etc.
2021-09-19 12:10:38 +02:00
Lion Kortlepel
7dbf859529
Lua: Implement event arguments 2021-09-19 11:45:58 +02:00
Lion Kortlepel
38dffc5462
Lua: Pass plugin path and filename to queue for later 2021-09-18 01:20:26 +02:00
Lion Kortlepel
f98ef7d41c
Lua: Call local eventhandlers synchronously when TriggerGlobalEvent is called from inside a handling state 2021-09-18 00:05:51 +02:00
Lion Kortlepel
c2b73d93b5
Lua: Implement more core functions 2021-09-17 12:56:08 +02:00
Lion Kortlepel
9a37ed4341
Lua: Add GetPlayerName 2021-09-17 12:45:34 +02:00
Lion Kortlepel
bac476ec34
Lua: Set package.path and package.cpath before onInit is called 2021-09-17 02:19:45 +02:00
Lion Kortlepel
a44050f0f1
Lua: Almost Working events, all triggers working 2021-09-17 00:21:43 +02:00
Lion Kortlepel
968d9ff999
Lua: Implement most API functions 2021-09-16 19:00:13 +02:00
Lion Kortlepel
1c80a4deb7
Lua: working events, global and local 2021-09-16 18:14:11 +02:00
Lion Kortlepel
e602decb96
Lua: Fix multiple issues with events 2021-09-16 14:58:47 +02:00
Lion Kortlepel
26231c6272
Fix compile issue with asio, implement Lua events 2021-09-16 13:03:00 +02:00
Lion Kortlepel
9b9c18a4c1
Lua: Add variadic print, LuaAPI 2021-09-16 11:54:52 +02:00
Lion Kortlepel
5978665ad6
Lua: Fix threading related crash 2021-09-16 10:07:04 +02:00
Lion Kortlepel
2cf368c2b0
First working console 2021-09-16 03:40:24 +02:00
Lion Kortlepel
ba0678dade
Continue Lua Rewrite 2021-09-16 03:21:00 +02:00
Lion Kortlepel
dd4e4c4467
Start rewrite of lua, rename all print functions 2021-09-16 01:04:01 +02:00
Lion Kortlepel
be90a8a2c0
add sol2 2021-09-16 00:33:13 +02:00
Anonymous-275
fb76b8309a
Fully working lua_Register 2021-08-02 14:01:00 +02:00
Lion Kortlepel
40cae31885 Merge TUDPServer and TTCPServer into TNetwork
this gets rid of a bunch of unclear cases which I mistakenly created
while refactoring for this rewrite. One example is having to call into
TTCPServer to do UDP sending in some cases.
2021-03-18 23:44:14 +02:00
Anonymous275
9b1bf071a8 Fixed lua crash caused by lion with optimizations 2021-03-18 23:44:14 +02:00
Anonymous275
218504e674 Fixed windows build not compiling 2021-03-18 23:44:14 +02:00
Lion Kortlepel
13f8be5d39 update players info 2021-03-18 23:44:14 +02:00
Lion Kortlepel
8cd35d64e4 fix lua thread never exiting 2021-03-18 23:44:14 +02:00