100 Commits
Author SHA1 Message Date
Lion Kortlepel c0c7c5275d add Stress ;) 2022-07-22 03:09:19 +02:00
Lion Kortlepel 054016a099 remove debug print 2022-07-20 16:08:56 +02:00
Lion Kortlepel 8b57f6e35a fix missing Lua error messages in ResultCheckThread 2022-07-20 16:07:00 +02:00
Lion Kortlepel f21d3d0389 fix bug which caused Lua hot-reload not to report syntax errors 2022-07-20 14:56:58 +02:00
Lion Kortlepel 2ed92c4aa1 fix plugin monitor eating a whole cpu core
i must have messed this up when i changed the plugin monitor behavior
recently
2022-07-20 14:42:07 +02:00
Lion Kortlepel fd7b11f436 fix event loop timing issue
The event loop tries to run no faster than every 10ms. If it detects
that it goes faster, it would incorrectly calculate the difference, and
then wait (what I assume was) way too long or too short.
Either way, now it's fixed and it correctly works, even when introducing
new lua states.
2022-07-20 14:33:19 +02:00
Lion Kortlepel 6a94060970 update changelog 2022-07-14 02:08:28 +02:00
Lion Kortlepel 51ccf31373 add beammp_debugf 2022-07-14 01:38:35 +02:00
Lion Kortlepel a2cc629153 add onFileChanged (fixes #116) 2022-07-14 01:18:50 +02:00
Lion Kortlepel ad414ec5c9 call onInit on hot-reload, cleanup, remove warnings
onInit is now called on hot-reload, for the whole plugin. Arguably, this
is not expected behavior, since only one file is being reloaded, but
this is the easiest way to do it, and the entire hot-reload process is
only for development purposes. Open an issue if this breaks your stuff
:^)
2022-07-14 00:37:47 +02:00
Lion Kortlepel 0a8e7d8e50 add TriggerLocalEvent 2022-07-14 00:27:44 +02:00
Lion bbd026e399 Merge pull request #114 from Mack29446/rc-v3.1.0
Add support to properly parse IPs
2022-07-13 00:02:40 +02:00
Lion Kortlepel 2d8ce09b2c Merge remote-tracking branch 'origin/master' into rc-v3.1.0 2022-07-09 23:03:46 +02:00
Lion 05251efc06 Merge pull request #98 from BeamMP/rc-v3.0.2
RC v3.0.2
2022-07-09 22:55:16 +02:00
Lion Kortlepel f8d622352f generate toml from scratch 2022-07-09 22:42:38 +02:00
Lion Kortlepel 6c1d02a425 add fclose 2022-07-09 22:29:12 +02:00
Lion Kortlepel 38eeec39b4 another attempt to fix #105 2022-07-09 22:27:05 +02:00
Lion Kortlepel 696e080e1c fix #105 2022-07-09 22:01:53 +02:00
Lion Kortlepel 98681254e6 update toml11 2022-07-09 21:50:23 +02:00
Lion Kortlepel 420e6c3533 roll back to an ancient version of sentry
sentry-native deprecated compiling without error somewhere around one of
the next version
2022-07-09 21:40:19 +02:00
Lion Kortlepel 06f8ba5a0e update sentry-native to 0.4.18 2022-07-09 21:11:34 +02:00
Lion Kortlepel 9420d8a7a0 update changelog 2022-06-30 21:30:56 +02:00
Lion Kortlepel dfa90da8af check if Resources/Server directory exists, and only create it if it doesnt
While this doesn't make a difference with usual setups, it does if the
server path exists but is a symlink. In that case, the
create_directories call fails, and the server aborts.

this fixes that. :^)
2022-06-30 20:19:48 +02:00
Lion Kortlepel 6e46d5aca9 start building the clear command 2022-06-28 03:29:01 +02:00
Lion Kortlepel 817bd4b588 start fixing mod download 2022-06-28 03:20:42 +02:00
Lion Kortlepel 25391fa0c7 thank you toml11 maintainer for naming your header some super generic name that clashes with every single other toml library B) 2022-06-04 16:51:34 +03:00
Lion 28270072d4 Merge pull request #102 from Mack29446/master
update version number in git checkout command
2022-05-30 19:16:10 +02:00
Lion Kortlepel 758d5b2c96 Revert "let's try vcpkg"
This reverts commit 8d7505956d.
2022-05-29 14:37:50 +02:00
Lion Kortlepel 1970d97ea4 Revert "Remove unneeded submodules"
This reverts commit a5153e4bc1.
2022-05-29 14:37:41 +02:00
Lion Kortlepel d8526f0649 TNetwork::SplitLoad: Use managed memory 2022-05-29 14:30:57 +02:00
Lion Kortlepel 0621c0bf82 rebase fixup 2022-05-26 21:13:18 +02:00
Lion Kortlepel 36547d1e9e Move PluginMonitor out of TLuaEngine 2022-05-26 20:59:53 +02:00
Lion Kortlepel f06f31c2a0 add moar tests!!! 2022-05-26 16:58:13 +02:00
Lion Kortlepel 46b92b4992 only run termios test if stdin is a tty 2022-05-26 16:14:05 +02:00
Lion Kortlepel 70e53c2a70 fix dependencies
ubuntu's package naming is confusing me
2022-05-26 16:00:36 +02:00
Lion Kortlepel cc35d83834 make linux workflow parallel, add runtime dependencies 2022-05-26 15:54:23 +02:00
Lion Kortlepel b4f97a6da0 make tests executable before running
:^)
2022-05-26 15:44:39 +02:00
Lion Kortlepel 3d7db6d0bc windows
me waiting for MSVC to stop making me write properly, deepls retarded
code: https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fmedia.istockphoto.com%2Fphotos%2Fskeleton-reaching-for-a-window-picture-id155154794%3Fk%3D6%26m%3D155154794%26s%3D612x612%26w%3D0%26h%3DKNIrAKdhAsI1FCoMtSLXd99ZnP9MO1zZj8VkThTvwVs%3D&f=1&nofb=1
2022-05-26 15:41:52 +02:00
Lion Kortlepel 1c3b1ecc76 fix workflow test run path 2022-05-26 15:37:33 +02:00
Lion Kortlepel 303da19f48 add -t to linux workflow 2022-05-26 14:43:38 +02:00
Lion Kortlepel c455d4855c possibly fix workflow 2022-05-26 14:40:56 +02:00
Lion Kortlepel 8df61fe44c add g++ to workflow 2022-05-26 13:58:29 +02:00
Lion Kortlepel 7224e90c68 add test workflow 2022-05-26 13:56:58 +02:00
Lion Kortlepel fde5bc7fb6 remove tests from linux action 2022-05-26 13:50:50 +02:00
Lion Kortlepel 22b63220c7 add more tests to LuaAPI::FS, minor fixes to LuaAPI::FS
test config file creation, too
2022-05-26 13:49:13 +02:00
Lion Kortlepel 811ace1999 fix Application::IsOutdated test case types 2022-05-26 13:36:02 +02:00
Lion Kortlepel 2cf083a7e4 run tests in github actions 2022-05-26 13:34:29 +02:00
Lion Kortlepel 28c43a51ee add some tests for LuaAPI FS, termios 2022-05-26 13:33:08 +02:00
Lion Kortlepel 00f156cb86 start adding tests 2022-05-26 13:02:09 +02:00
Lion Kortlepel 67b8565a4d update json 2022-05-26 12:06:36 +02:00
Lion Kortlepel ed8d8a6419 remove unused code 2022-05-26 12:03:03 +02:00
Lion Kortlepel 895058f85f revert sentry to 0.4.9 2022-05-26 12:01:27 +02:00
Lion Kortlepel a0876ed58c update submodules, remove ssl crap 2022-05-26 11:59:36 +02:00
Lion Kortlepel 4f69ca1ad0 remove ssl code
@jimkoen

This was removed because, as useful and as much work as this was, we
can't reasonably take responsibility for this. Instead, a server like
this should *always* be localhost only, and if it's not, it should be
behind an nginx reverse proxy anyways. We're removing the config options
regarding this in one of the next commits.
2022-05-26 11:54:19 +02:00
Lion Kortlepel bc1628afeb fix some sentry and linking related issues 2022-05-26 11:51:26 +02:00
Lion Kortlepel 019c5202ea add tests executable 2022-05-26 11:44:20 +02:00
Lion Kortlepel 2dd181d492 gracefully shutdown on bind() failure 2022-05-26 11:19:48 +02:00
Lion Kortlepel a5153e4bc1 Remove unneeded submodules 2022-04-28 16:28:23 +02:00
Lion Kortlepel 8d7505956d let's try vcpkg 2022-04-28 16:26:30 +02:00
Lion Kortlepel 3b2016d09f Windows moment
Windows deprecated when
2022-04-28 14:59:41 +02:00
Lion Kortlepel ed03096cf5 Windows moment
Windows deprecated when
2022-04-28 14:58:07 +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 ca52d233c0 Use another git commit id for vcpkg
this should really be done properly, yikes
2022-04-28 14:34:05 +02:00
Lion Kortlepel 34b39aad4d add message to shutdown suggesting Ctrl+C if it takes too long
This is an ongoing issue that needs to be resolved properly,
but I'm not sure what's hanging it.
2022-04-28 14:30:44 +02:00
Lion Kortlepel f4eb492d91 Actions: try to use master as vcpkgGitCommitId 2022-04-28 14:24:02 +02:00
Lion Kortlepel 7f41a2a574 Update Changelog to reflect latest changes 2022-04-28 14:18:10 +02:00
Lion Kortlepel 11c53e0b3a Remove unused error, as Sentry's code fails to build otherwise
Thanks, sentry.
2022-04-28 14:13:51 +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 5ded713b4b Application::CheckForUpdates: only print status the first time 2022-04-28 13:33:38 +02:00
Lion Kortlepel 668cc496b6 update commandline, unused are now errors 2022-04-28 13:29:16 +02:00
Lion Kortlepel 056d20292a Make "unable to fetch version" a trace message 2022-04-28 13:14:28 +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 4ff69528bd fix some missing declaration 2022-03-31 23:56:02 +02:00
Lion Kortlepel 5e4c7eac51 add send timeout to client tcp socket 2022-03-31 23:53:10 +02:00
Lion Kortlepel 952631bb80 add send timeout to client tcp socket 2022-03-31 23:48:07 +02:00
Lion Kortlepel 23af76dba1 Only warn once about event handlers taking >60s 2022-03-31 23:12:50 +02:00
Lion Kortlepel 5755ead9be Change :detach to :exit
@20dka
2022-03-31 22:18:55 +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 d01d79a49a update changelog 2022-03-31 20:27:08 +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 81dbf747d5 Kick client if we fail to send them a client event 2022-03-31 16:50:00 +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 b2f27c21be update changelog 2022-03-24 16:53:39 +01:00
Lion Kortlepel b780a08f73 use MB constant 2022-03-24 15:16:24 +01:00
Lion Kortlepel cd4332b790 prepend . to Threads.log to make it invisible on *nix 2022-03-24 14:47:15 +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 d0bb32ec63 cleanup fixme's, todo's 2022-03-24 14:26:02 +01:00
Lion Kortlepel 5180c96e2b TServer::HandleEvent: Fix mistreatment of ':' in event data 2022-03-24 14:06:50 +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 4cb299061e add pos argument to on_autocomplete 2022-03-23 16:10:51 +01:00
Lion Kortlepel ef902a03f3 update lionkor/commandline to v2.0.0 2022-03-23 12:06:35 +01:00