187 Commits

Author SHA1 Message Date
Tixx
1d90f53527
Add curl 2025-01-11 22:18:19 +01:00
Lion Kortlepel
9927d2befb
add toml11 submodule 2024-09-18 15:58:55 +02:00
Lucca Jiménez Könings
25739cb1bd Merge branch 'minor' into 158-bug-running-settings-help-returns-nothing 2024-06-26 11:43:38 +02:00
SaltySnail
29c3fed374 fix #321 2024-05-25 20:34:33 +02:00
Lucca Jiménez Könings
84f5f95e54
Refactor: feedback from code review
Signed-off-by: Lucca Jiménez Könings <development@jimkoen.com>
2024-05-21 13:40:33 +02:00
Maximilian Rehms
785c5343cd removed warnig suppression 2024-05-18 15:11:42 +02:00
Maximilian Rehms
40e5496819 compiles now on macos 2024-05-18 15:06:26 +02:00
Lion
1794c3fe45
Add Lua execution profiler Util.DebugExecutionTime() (#267)
Adds `Util.DebugExecutionTime()`, which returns a table of
`function_name: milliseconds`, in which each function's execution time
is averaged over all time.

You can call this function like so:
```lua
-- event to print the debug times
MP.RegisterEvent("printStuff", "printStuff")
-- prints the execution time of all event handlers
function printStuff()
	print(Util.DebugExecutionTime())
end
-- run every 5 seconds (or 10, or 60, whatever makes sense for you
MP.CreateEventTimer("printStuff", 5000)
```

Pretty print function:
```lua
function printDebugExecutionTime()
    local stats = Util.DebugExecutionTime()
    local pretty = "DebugExecutionTime:\n"
    local longest = 0
    for name, t in pairs(stats) do
        if #name > longest then
            longest = #name
        end
    end
    for name, t in pairs(stats) do
        pretty = pretty .. string.format("%" .. longest + 1 .. "s: %12f +/- %12f (min: %12f, max: %12f) (called %d time(s))\n", name, t.mean, t.stdev, t.min, t.max, t.n)
    end
    print(pretty)
end
```

`Util.DebugExecutionTime()` returns a table, where each key is an event
handler function name, and each value is a table consisting of `mean`
(simple average), `stddev` (standard deviation aka mean of the
variance), `min` and `max`, all in milliseconds, as well as `n` as the
number of samples taken.
2024-05-08 11:46:02 +02:00
Lion Kortlepel
3b0e49fb06
add /bigobj to fix compiling on windows 2024-05-06 11:56:26 +02:00
Lion Kortlepel
7deea900fb add Util.DebugExecutionTime 2024-03-06 10:27:22 +01:00
sla-ppy
1c575ff1bc add /bigobj 2024-02-07 16:06:19 +01:00
Lion Kortlepel
c6aa7776fc make update message adjustable by provider 2024-01-09 17:41:05 +01:00
Lion Kortlepel
7f11d0f002
make release builds by default 2023-12-09 19:22:50 +01:00
Lion Kortlepel
a6eb2f7bfe
switch to vcpkg+cmake, add debian build to workflows
using lionkor's template (MIT licensed)

This is a combination of 64 commits.
2023-12-05 17:57:19 +01:00
Lion Kortlepel
aa58c1e211
another potential fix for #141 2022-10-31 11:31:15 +01:00
Lion Kortlepel
4682922467
add more fixes for msvc static linking 2022-10-31 11:31:15 +01:00
Lion Kortlepel
83fb387dfe
potential fix to #141 2022-10-31 11:31:09 +01:00
Lion Kortlepel
88c0ed56e4
add _WIN32_WINNT and move CRT no warnings flag 2022-10-17 12:25:13 +02:00
Lion Kortlepel
4256977400
remove crt's "this function or variable may be unsafe" warnings
they are useless, as they are in dependencies or parts of the code
we don't care about. Also, the "safe" alternatives straightup dont work
on linux.
2022-10-17 12:21:27 +02:00
Lion Kortlepel
98f77e157f
add WIN32_STATIC_RUNTIME option to cmake 2022-10-15 23:16:16 +02:00
Lion Kortlepel
2678234d67
dont check for -Werror=zero-as-null-pointer-constant 2022-10-15 23:16:16 +02:00
Lion Kortlepel
ed872f730d
link against boost::system 2022-10-06 00:57:31 +02:00
Lion Kortlepel
6249397fb5
add libboost-all-dev to github actions
it's a new dependency
2022-10-05 20:50:28 +02:00
Lion Kortlepel
6e97a3cd6e
switch udp networking to boost implementation 2022-10-05 12:14:25 +02:00
Lion Kortlepel
30482d290a
add boost 1.75 dependency
this should be available on most platforms.
boost allows us to simplify a LOT of code.
2022-10-05 11:50:15 +02:00
Lion Kortlepel
b145c8159e
update changelog to add HOME and END button, fix ip comment 2022-09-26 12:12:16 +02:00
Lion Kortlepel
24c98eb2b2
add more compile-time diagnostics, implement fixes for them
Before, a lot of common errors went unnoticed, due to insufficient
compiler diagnostics. This commit fixes this by adding a lot of new
diagnostics, and fixing the issues found by this.
2022-09-26 12:02:05 +02:00
Lion
78f7cdc17a
Merge branch 'master' into rc-v3.1.0 2022-09-25 19:50:12 +02:00
Lion
660f94b691
Merge pull request #110 from tsao-chi-forks/patch-2
Support build on apple silicon
2022-09-13 16:15:34 +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 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
ㄗㄠˋ ㄑㄧˊ
d6625187d1
Support build on apple silicon 2022-06-29 13:43:36 +08:00
Lion Kortlepel
758d5b2c96
Revert "let's try vcpkg"
This reverts commit 8d7505956d86fbbd5b1f7496af2b413b360afa09.
2022-05-29 14:37:50 +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
a0876ed58c
update submodules, remove ssl crap 2022-05-26 11:59:36 +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
8d7505956d
let's try vcpkg 2022-04-28 16:26:30 +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
11c53e0b3a
Remove unused error, as Sentry's code fails to build otherwise
Thanks, sentry.
2022-04-28 14:13:51 +02:00
Lion Kortlepel
668cc496b6
update commandline, unused are now errors 2022-04-28 13:29:16 +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
7a814ed35e
use fmt properly in beammp_*f logging functions 2022-03-24 14:45:53 +01:00
Lion Kortlepel
a85fef15c2
only use sentry if URL is specified, possibly fix stupid microsoft compiler error
hey @microsoft, maybe don't have a limit on the size of obj files.
2022-03-10 12:23:24 +01:00
Lion Kortlepel
299004b14e
fix msvc /bigobj issue 2022-03-10 12:21:08 +01:00
Lion Kortlepel
e3d9d11bbd
only use sentry if URL is specified, possibly fix stupid microsoft compiler error
hey @microsoft, maybe don't have a limit on the size of obj files.
2022-03-10 01:40:47 +01:00
Lion Kortlepel
8ce3be03a3
make bigobj a linker flag? 2022-02-17 12:00:03 +01:00
Lion Kortlepel
687b4e4235
add bigobj flag 2022-02-17 11:47:28 +01:00