Time |
Nick |
Message |
00:00 |
|
twoelk left #minetest-dev |
00:00 |
|
est31 joined #minetest-dev |
00:01 |
|
est31 left #minetest-dev |
00:20 |
|
troller joined #minetest-dev |
00:28 |
|
troller joined #minetest-dev |
00:31 |
|
bigfoot547 joined #minetest-dev |
01:33 |
|
troller joined #minetest-dev |
01:34 |
|
torgdor joined #minetest-dev |
01:36 |
|
troller joined #minetest-dev |
02:00 |
|
troller joined #minetest-dev |
02:02 |
|
CalebDavis joined #minetest-dev |
02:02 |
|
troller joined #minetest-dev |
02:04 |
|
troller joined #minetest-dev |
02:38 |
|
troller joined #minetest-dev |
02:44 |
|
Tmanyo joined #minetest-dev |
03:32 |
|
electrodude512 joined #minetest-dev |
03:51 |
|
troller joined #minetest-dev |
03:58 |
|
troller joined #minetest-dev |
04:14 |
|
troller joined #minetest-dev |
04:19 |
|
troller joined #minetest-dev |
04:28 |
|
YuGiOhJCJ joined #minetest-dev |
04:59 |
|
jason joined #minetest-dev |
05:09 |
|
Hunterz joined #minetest-dev |
05:16 |
|
troller joined #minetest-dev |
05:32 |
|
troller joined #minetest-dev |
05:37 |
|
troller joined #minetest-dev |
05:55 |
|
troller joined #minetest-dev |
06:00 |
|
troller joined #minetest-dev |
06:03 |
|
nerzhul joined #minetest-dev |
06:14 |
|
troller joined #minetest-dev |
06:18 |
|
troller joined #minetest-dev |
06:24 |
|
troller joined #minetest-dev |
06:24 |
nerzhul |
hello, i'm pushing code modernization on chat.cpp and cavegen.cpp |
06:40 |
|
troller joined #minetest-dev |
06:53 |
nerzhul |
pushing also in client.cpp/client.h |
07:50 |
|
nore joined #minetest-dev |
08:36 |
|
proller joined #minetest-dev |
09:30 |
|
lisac joined #minetest-dev |
09:34 |
|
nerzhul joined #minetest-dev |
10:12 |
|
Megaf joined #minetest-dev |
10:25 |
|
nerzhul joined #minetest-dev |
10:43 |
|
proller joined #minetest-dev |
11:04 |
|
Fixer joined #minetest-dev |
11:09 |
|
DI3HARD139 joined #minetest-dev |
11:29 |
|
CalebDavis joined #minetest-dev |
11:30 |
|
ThomasMonroe joined #minetest-dev |
11:40 |
|
Taoki[laptop]_1 joined #minetest-dev |
11:42 |
Fixer |
https://forum.minetest.net/viewtopic.php?f=6&t=18293 |
11:52 |
nerzhul |
Fixer, did you use multiple emerge threads ? it's absolutely a bad idea with sqlite |
11:52 |
Fixer |
nerzhul: not my bugreport |
12:16 |
|
proller joined #minetest-dev |
12:29 |
nerzhul |
guyz i published a configuration proposition: #6252 |
12:29 |
ShadowBot |
https://github.com/minetest/minetest/issues/6252 -- Reduce dedicated server step to 0.09 by nerzhul |
12:29 |
nerzhul |
we optimized core many and many times, i think we can now reduce serverstep a little bit to enhance server reactivity by default for all users |
12:30 |
nerzhul |
10% sounds reasonable |
12:30 |
nerzhul |
i run my server with 0.05 since 3 years without problems, but i ported many features to core engine |
12:36 |
nerzhul |
don't hesitate to comment, end users too |
12:48 |
Fixer |
i'm currently looking at light curve pr |
12:52 |
nerzhul |
oh it's trivial change, it's only visible on loaded servers |
12:52 |
nerzhul |
it's more a taste enhancement to reduce a little bit server latency |
12:56 |
Fixer |
damn, that camera above head change on older servers is so annoying |
12:56 |
Fixer |
unusual |
13:23 |
|
troller joined #minetest-dev |
13:33 |
|
ThomasMonroe joined #minetest-dev |
13:38 |
|
Tre joined #minetest-dev |
14:08 |
|
nerzhul joined #minetest-dev |
14:09 |
nerzhul |
i updated dev.minetest.net/Changelog page |
14:10 |
nerzhul |
1 months of commits to report (not all reported, only user changes) |
14:14 |
|
ThomasMonroe joined #minetest-dev |
14:33 |
|
troller joined #minetest-dev |
14:55 |
|
Fixer joined #minetest-dev |
14:55 |
|
Lymkwi_ joined #minetest-dev |
14:59 |
|
troller joined #minetest-dev |
15:01 |
|
CalebDavis joined #minetest-dev |
15:22 |
|
Hunterz joined #minetest-dev |
15:28 |
Lymkwi_ |
Hello there fellas I have a small question : what are packets starting with the null byte after the protocol ID supposed to do? |
15:28 |
nerzhul |
oo it's a good question nobody cannot answer without reading code i think |
15:28 |
|
troller joined #minetest-dev |
15:28 |
nerzhul |
i suspect it's used as a keepalive |
15:28 |
Lymkwi_ |
It just says "do not use" |
15:29 |
Lymkwi_ |
I assume so |
15:29 |
Lymkwi_ |
But it locks a player slot, and in a few lines of python I was able to lock any server and prevent anyone from joining |
15:29 |
Lymkwi_ |
I didn't see anything server side. Client side just said "too many players", and all I had to do was send, every ten second or so, a small payload of a dozen bytes |
15:30 |
|
kensatya1 joined #minetest-dev |
15:30 |
Lymkwi_ |
So I thought "well that's probably not the intended effect" and I went here to ask you about that |
15:30 |
Lymkwi_ |
I mean. I paralyzed MFF's server a few minutes ago and apparently nobody noticed but I couldn't even join myself. |
15:35 |
nerzhul |
Lymkwi_, i'm pretty sure it's easy to lock any server using any such thing yes |
15:36 |
Lymkwi_ |
Less than 25 lines of python can do that, apparently |
15:36 |
nerzhul |
you can do a such thing on any tcp apache default server by using python and opening 200 tcp sockets too |
15:36 |
nerzhul |
yes, with some libs you can do this eastyly |
15:37 |
Lymkwi_ |
Rudy or Slow loris, yes |
16:14 |
|
antims joined #minetest-dev |
16:21 |
|
Krock joined #minetest-dev |
16:24 |
|
troller joined #minetest-dev |
16:38 |
|
cx384 joined #minetest-dev |
16:58 |
|
nerzhul joined #minetest-dev |
17:13 |
|
DI3HARD139 joined #minetest-dev |
17:32 |
|
Fixer_ joined #minetest-dev |
17:43 |
|
twoelk joined #minetest-dev |
17:46 |
|
proller joined #minetest-dev |
18:37 |
|
Grandolf_ joined #minetest-dev |
18:39 |
|
Grandolf joined #minetest-dev |
18:54 |
|
behalebabo joined #minetest-dev |
19:11 |
|
RobbieF left #minetest-dev |
19:19 |
|
Megaf joined #minetest-dev |
19:21 |
|
Player_2 joined #minetest-dev |
19:26 |
|
lisac joined #minetest-dev |
19:38 |
|
fwhcat joined #minetest-dev |
19:39 |
sfan5 |
anyone have any comment on https://github.com/minetest/minetest.github.io/pull/103 ? |
19:39 |
sfan5 |
if not then i'd merge this later |
19:39 |
nerzhul |
ok for me |
19:40 |
nerzhul |
fuck travis macosx :( |
19:40 |
fwhcat |
ok even if I don't have a mac ^^ |
20:03 |
nerzhul |
merging #6255 in ~ 10 mins |
20:03 |
ShadowBot |
https://github.com/minetest/minetest/issues/6255 -- Cleanup various headers to reduce compilation times by nerzhul |
20:03 |
nerzhul |
it's nice to seem gcc longest builds reduced from 12 mins to 10 mins :p |
20:04 |
nerzhul |
less time spent on CI, more commits, faster heh |
20:04 |
nerzhul |
all header were not optimized but many common headers, we can do better in a later commit :) |
20:04 |
nerzhul |
thanks sfan5 for the review |
20:08 |
nerzhul |
sfan5, maybe 6254 should be private? the fix will be not easy |
20:08 |
nerzhul |
except if we can change the session counter to count only CS_Active sessions instead of session list size |
20:10 |
sfan5 |
it should only count cs_active yes |
20:11 |
nerzhul |
i merge the include fix and look at it |
20:11 |
nerzhul |
build is green except macosx stuck |
20:12 |
nerzhul |
https://github.com/blog/2415-introducing-embedded-code-snippets nice |
20:16 |
nerzhul |
ok i can easily mitigate the slot problem |
20:17 |
nerzhul |
but i cannot easily fix the memory overhead if this packet is flooded to server |
20:18 |
lisac |
#6257 |
20:18 |
ShadowBot |
https://github.com/minetest/minetest/issues/6257 -- Make world creation menu automatically generate a random world name by lisacvuk |
20:18 |
nerzhul |
sfan5, does isUserLimitReached sounds good for a function checking if slots are full ? |
20:18 |
lisac |
can someone review? |
20:19 |
nerzhul |
function name* |
20:19 |
sfan5 |
it doesn't need to be separate functions tho |
20:19 |
sfan5 |
just change |
20:19 |
sfan5 |
if (m_clients.getClientIDs(CS_Created).size() >= g_settings->getU16("max_users") && |
20:19 |
sfan5 |
to |
20:19 |
sfan5 |
if (m_clients.getClientIDs(CS_Active).size() >= g_settings->getU16("max_users") && |
20:19 |
nerzhul |
the check is currently ugly i want ClientInterface to have a function :p |
20:19 |
sfan5 |
fine by me |
20:19 |
sfan5 |
that name sounds okay |
20:20 |
nerzhul |
also we have two place for this check, the compat code too |
20:20 |
sfan5 |
right |
20:20 |
nerzhul |
(which will be removed at release, 2 years passed for this proto) |
20:26 |
nerzhul |
sfan5, #6258 |
20:26 |
ShadowBot |
https://github.com/minetest/minetest/issues/6258 -- ClientInterface: add a function to verify (correctly) if user limit was reached by nerzhul |
20:26 |
nerzhul |
i should just ensure a thing |
20:26 |
nerzhul |
because we have transitional states |
20:27 |
sfan5 |
nerzhul: perhaps add a comment inside that func why you use _Active instead of _Created |
20:28 |
nerzhul |
regarding clientiface.h it seems CS_Active is not the best state to check |
20:28 |
nerzhul |
or, we should check that slot multiple times in initialization |
20:28 |
nerzhul |
because if a player is auth and another is initing, both can connect and we can have max_user = 16 > 15 :p |
20:29 |
|
Taoki[laptop] joined #minetest-dev |
20:29 |
sfan5 |
no |
20:29 |
nerzhul |
init is the first packet |
20:29 |
sfan5 |
the second player will get rejected in their INIT pkt |
20:29 |
sfan5 |
nah |
20:29 |
sfan5 |
you can create a connection w/o sending a pkr |
20:29 |
sfan5 |
pkt* |
20:29 |
nerzhul |
you send init, server looks slots and said ok, switch you to hellosent |
20:30 |
sfan5 |
you skipped a whole state here |
20:30 |
nerzhul |
then a second comes, send init, server looks, slots are alaways ok, no more CS_Active added, he is in hellosent |
20:30 |
nerzhul |
which ? |
20:30 |
sfan5 |
CS_Created |
20:30 |
nerzhul |
CS_Created is the session object creation |
20:30 |
nerzhul |
but check is done in Init |
20:31 |
nerzhul |
the first packet handling |
20:31 |
sfan5 |
this will work if the check counts no. of players in a state "higher" than CS_Created |
20:31 |
nerzhul |
if we check active, all current users between init and active (excluded) will not be counted as max_user |
20:32 |
nerzhul |
then you can have, 14 users in Active state, 5 in InitDone state, 3 in HelloSent state |
20:32 |
nerzhul |
for 15 slots |
20:32 |
sfan5 |
yes yes i understand |
20:33 |
nerzhul |
AwaitingInit2 can be better |
20:33 |
nerzhul |
or |
20:34 |
sfan5 |
according to the flowchart only legacy clients have that state |
20:34 |
nerzhul |
no |
20:34 |
sfan5 |
wait no |
20:34 |
sfan5 |
but then you'd be skipping HelloSent |
20:34 |
nerzhul |
yes, but it's not important |
20:34 |
sfan5 |
why not? |
20:34 |
nerzhul |
the most important is to re-do the check somewhere before switching to CS_Active |
20:34 |
sfan5 |
it's past the init pkt meaning you could bypass the limit |
20:35 |
sfan5 |
hm |
20:35 |
nerzhul |
maybe re-do it before sending content ? |
20:35 |
sfan5 |
well that would mean whichever client is faster at auth gets in |
20:35 |
sfan5 |
why not just change the counting to keep this simple? |
20:35 |
nerzhul |
what do you want ? |
20:36 |
nerzhul |
i think checking it just before making session active ensure you cannot have more CS_Active users |
20:36 |
sfan5 |
count every state between CS_HelloSent and CS_Active |
20:36 |
nerzhul |
one in init time to drop bad users and on late |
20:36 |
nerzhul |
oh |
20:36 |
nerzhul |
yes it's possible |
20:37 |
nerzhul |
and we should re-do the same check before setting session to CS_HelloSent flag |
20:37 |
sfan5 |
then only missing are: Created, Denied, Disconnecting, SudoMode |
20:37 |
nerzhul |
to ensure we cannot bypass the limit |
20:37 |
sfan5 |
why not add an assert there |
20:38 |
nerzhul |
you will crash server if a rogue client happen, just check the session and discard it properly is better than crash due to external cause :p |
20:38 |
sfan5 |
well it doesn't need to be an assert |
20:38 |
sfan5 |
but make clear that this should not happen and whoever sees it should open a bug |
20:39 |
nerzhul |
i know this will happen |
20:39 |
nerzhul |
and we have the fix, discard the user |
20:39 |
nerzhul |
then discard :p |
20:44 |
nerzhul |
hellosent state is special |
20:44 |
nerzhul |
init switches from CS_Created to CS_HelloSent in the init packet |
20:45 |
nerzhul |
and do the intermediate check for HelloSent |
20:45 |
nerzhul |
then it seems good without any more |
20:45 |
nerzhul |
yes okay, letting like this |
20:48 |
nerzhul |
#6258 updated, if you are okay i can merge it when build is okay |
20:48 |
ShadowBot |
https://github.com/minetest/minetest/issues/6258 -- ClientInterface: add a function to verify (correctly) if user limit was reached by nerzhul |
20:53 |
sfan5 |
looks good to me |
20:55 |
sofar |
neat cleanups btw |
20:55 |
nerzhul |
sofar, which cleanup ? |
20:55 |
sofar |
the loop stuff etc |
20:55 |
nerzhul |
somebody should do it xD |
20:55 |
sofar |
plus header cleanups |
20:56 |
nerzhul |
yeah i take time to make mt cleaner, years of dev without rechecking it make it crazy sometimes |
20:56 |
sofar |
could we switch to #pragma once? |
20:56 |
nerzhul |
i want but no consensus |
20:56 |
nerzhul |
maybe i should open an issue to vote ? |
20:56 |
sofar |
I'm all for it, #define BLA_HEADER is dumb |
20:57 |
sofar |
there's not a single check for BLA_HEADER anywhere |
20:57 |
nerzhul |
yeah i agree, it's not in the norm but it's supported by all decent ocmpilers :p |
20:57 |
nerzhul |
and you don't pollute your compiler with macros :p |
20:57 |
sofar |
we have like 200+ header files |
20:57 |
sofar |
well, $somelargeval |
20:58 |
nerzhul |
yeah but with last PR you include less files per cpp :D |
20:58 |
nerzhul |
at a point we can compile MT on a RaspberryPI 1 without trigger oomkiller haha |
20:58 |
nerzhul |
triggering* |
20:59 |
nerzhul |
sofar, can you vote on my post on 6252 please instead of a separate comment ? :p |
21:00 |
nerzhul |
and if sfan5 or sofar you want 0.075 it can be possible it think without penaly on current engine |
21:00 |
nerzhul |
penalty* |
21:00 |
nerzhul |
0.09 is safer for me, but we can reduce it a little bit more if needed |
21:00 |
sofar |
ahh sure |
21:00 |
sofar |
done |
21:01 |
nerzhul |
ty :D |
21:04 |
nerzhul |
sfan5, nore rubenwardy sofar please vote on #6259 |
21:04 |
ShadowBot |
https://github.com/minetest/minetest/issues/6259 -- C++11 header guards: switch to #pragma once |
21:04 |
nerzhul |
i hope we can have more votes, smalljoker is okay for it too |
21:04 |
nerzhul |
only sfan5 doesn't told us if he wants and paramat doesn't care if i remember |
21:06 |
nerzhul |
who stole my travis build slots ! |
21:08 |
nerzhul |
sfan5, can you re-take a look at #6153 when you get time, it's a nice thing :) |
21:08 |
ShadowBot |
https://github.com/minetest/minetest/issues/6153 -- Windows: Cpack wix installer by adrido |
21:09 |
sfan5 |
sure |
21:11 |
rubenwardy |
https://github.com/buildaworldnet/IrrlichtBAW/releases/tag/v0.2.3 |
21:14 |
sfan5 |
their irrlicht is still useless for us since they ripped out all GUI stuff |
21:15 |
|
Darcidride joined #minetest-dev |
21:16 |
nerzhul |
oh :( |
21:16 |
nerzhul |
time to build a 3d UI xD |
21:16 |
Fixer |
M O T I F |
21:17 |
rubenwardy |
at some point it may be worth using a non-irrlicht GUI |
21:17 |
Fixer |
nerzhul: in a few seconds will see a results for compiling times improvement** |
21:18 |
rubenwardy |
some Irrlicht devs themselves told me that the GUI in Irrlicht is purposely simple |
21:18 |
nerzhul |
rubenwardy, i started to test a XML/HTML usage to replace formspecs, not using irrlicht or not using current formspec irrlicht fixes is just a pain :p |
21:18 |
nerzhul |
Fixer, on windows with VS i'm nore sure you will see many thigns if VS used a precompiled header |
21:19 |
Fixer |
nerzhul: 3 seconds faster... 6 min in total, probably within statistical error, no effect, msys2/mingw64 |
21:19 |
nerzhul |
mingw doesn't have improvements, only gcc on linux and a little bit on clang |
21:20 |
nerzhul |
and all is not finished yet, maybe i will continue tomorrow but i was working on various modernizations |
21:21 |
nerzhul |
sfan5, can you vote on 6259 please too ? |
21:22 |
nerzhul |
we currently have 3 coredev votes, if you and smalljoker votes too i will start the PR if nobody else wants to replace all headers, and we can add a dev rule for it :) |
21:22 |
sofar |
nerzhul: rapidxml? |
21:22 |
nerzhul |
sofar, libxml2 |
21:22 |
sofar |
isn't that way too bulky? |
21:22 |
nerzhul |
wait |
21:22 |
nerzhul |
i can't remember :p |
21:22 |
nerzhul |
libxml2 is another project i use |
21:23 |
sofar |
rapidxml would be compatible and we'd include it in-tree |
21:23 |
nerzhul |
yeah i use libxml2 |
21:23 |
sofar |
MIT/Boost licensed, C++, 43kb download size (zupped) |
21:23 |
nerzhul |
irrlicht has a xml parser too :p |
21:24 |
sofar |
well I'd keep the reliance on irrlicht to a minimum if we can |
21:24 |
nerzhul |
https://gitlab.com/project-demeter/core/blob/7e9219b7994d50d9630c8a7f74c3ebbd7b0cd87c/client/menus/mainmenu.xml here is my xml main menu :p |
21:24 |
nerzhul |
my main problem is the event handling |
21:24 |
nerzhul |
i haven't found a good wait to handle events |
21:25 |
nerzhul |
way* |
21:25 |
nerzhul |
(i'm tired sorry) |
21:25 |
nerzhul |
the XML library is not very important here |
21:26 |
sofar |
it is if it increases size of minetest and makes it hard to build on win/mac etc. |
21:26 |
nerzhul |
here is the parsing |
21:26 |
nerzhul |
https://gitlab.com/project-demeter/core/blob/7e9219b7994d50d9630c8a7f74c3ebbd7b0cd87c/src/client/contrib/ui_menu.cpp#L212 |
21:26 |
nerzhul |
no real recursion, but i read all node elements :p |
21:26 |
nerzhul |
with a nice function pointer handler heh |
21:27 |
nerzhul |
sofar, if rapidxml is tiny why not |
21:27 |
nerzhul |
XML loading permits to have nice interface defintions intead of raw strings and it's evolutive :) |
21:29 |
nerzhul |
sofar, it seems rapidxml is as easy as libxml parsing for our needs and how i used libxml2 :) |
21:29 |
sofar |
no worries, it was a suggestion |
21:29 |
nerzhul |
yes but i will not work on a such thing you can if you are crazy :D |
21:29 |
sofar |
ls |
21:29 |
sofar |
wheps |
21:29 |
nerzhul |
i prefer finish code maintenance before |
21:30 |
|
bigfoot547 joined #minetest-dev |
21:30 |
nerzhul |
i need to finish passing clang-tidy analysis on the whole code, only 25% was analysed/fixed , and if we want pragma we need a big commit, same thing for header maintenance, we are at 30% |
21:31 |
sofar |
oh, if you want me to do another coverity scan when you're done with that |
21:31 |
nerzhul |
i will continue to do little trivial commits on the morning to modernize step by step code using clang tidy |
21:31 |
sofar |
let me know and I'll upload a new scan |
21:31 |
nerzhul |
if you want we can do that later yes |
21:31 |
sofar |
at least try and do one scan every release or so |
21:31 |
nerzhul |
rubenwardy talked about lcov and gcov it can be good but we need to cover the whole code heh |
21:32 |
nerzhul |
sofar, yes, using various tools |
21:32 |
sofar |
yup |
21:32 |
nerzhul |
clang-tidy can be integrated in CI when i finished to pass it over files, if needed |
21:32 |
sofar |
lcov is nice |
21:32 |
rubenwardy |
having code coverage analytics is a good way to encourage tests. Although maybe not so much with MT |
21:32 |
nerzhul |
it will permit to ensure the common sense rules are used by PR owners |
21:32 |
nerzhul |
rubenwardy, why did you close the PR ? |
21:33 |
rubenwardy |
because I'd rather not leave such a small PR open whilst it needs lots of work |
21:33 |
nerzhul |
having it in gitlab-ci can be nice, daily report generation, just before daily snaps |
21:33 |
nerzhul |
you can just take the links i set and copy/paste code :p |
21:34 |
nerzhul |
2 gitlab ci steps and a little cmakelists fix and it's good |
21:34 |
nerzhul |
the only thing i don't understand with gcov/lcov is how he thinks it's covered or not, on the library i own i have many unittests on many parts and covered parts are lower than real unittested parts |
21:36 |
sofar |
unit tests work well for codepaths that catch rare errors |
21:36 |
sofar |
unit tests does lousy for code that gets run thousands of times |
21:40 |
|
lisac joined #minetest-dev |
21:42 |
|
Taoki[laptop] joined #minetest-dev |
21:47 |
|
Taoki[laptop] joined #minetest-dev |
21:48 |
nerzhul |
merging #6258 |
21:48 |
ShadowBot |
https://github.com/minetest/minetest/issues/6258 -- ClientInterface: add a function to verify (correctly) if user limit was reached by nerzhul |
21:50 |
|
Tmanyo joined #minetest-dev |
22:02 |
nerzhul |
merging #5279 in ~10 mins |
22:02 |
ShadowBot |
https://github.com/minetest/minetest/issues/5279 -- New lighting curve by numberZero |
22:04 |
|
Fixer joined #minetest-dev |
22:36 |
|
troller joined #minetest-dev |
22:51 |
|
kensatya joined #minetest-dev |
23:01 |
|
kensatya1 joined #minetest-dev |
23:35 |
|
behalebabo joined #minetest-dev |