Time |
Nick |
Message |
00:00 |
troller |
sapier, its on start |
00:00 |
sapier |
debug? |
00:00 |
sapier |
can you try --disable-unit-tests? |
00:03 |
troller |
no, near menu |
00:04 |
ShadowNinja |
troller: You bought a XenForo license? |
00:04 |
sapier |
the only thing I see is someone calling pthread_kill ... which is something you can't actually do and expect to be able to continue |
00:05 |
sapier |
pthread_kill is a desperate method to stop things if everything is already lost |
00:07 |
troller |
ShadowNinja, me - not ;) |
00:08 |
ShadowNinja |
troller: Who did then? xyz? |
00:08 |
troller |
ask him |
00:10 |
troller |
sapier, its after pressing "play" in singleplayer |
00:11 |
sapier |
hmm |
00:12 |
troller |
http://paste.org.ru/?b6ya49 |
00:12 |
sapier |
can you remove like 97 in l_async_events.cpp? |
00:13 |
sapier |
ok something is obviously terribly wrong when shuting down the worker threads on openbsd |
00:14 |
Exio4 |
openbsd? wasn't it freebsd |
00:15 |
troller |
http://paste.org.ru/?ebidke |
00:15 |
PilzAdam |
sapier, thread apply all bt |
00:15 |
sapier |
bsd |
00:15 |
troller |
^^ without kill |
00:16 |
sapier |
the asyncenvironment should wait for worker threads to finish if this doesn't work for some reason on bsd your problems would be exactly what I expect to happen |
00:19 |
sapier |
argh |
00:19 |
sapier |
ok I know whats wrong ... no idea why this only happens for you |
00:22 |
|
john_minetest left #minetest-dev |
00:23 |
Exio4 |
sapier: what is wrong? ;P |
00:24 |
sapier |
I added stop thread and used running variable to do so |
00:24 |
sapier |
then I wait for thread to really stop .... by checking running variable ;-) |
00:24 |
sapier |
if course that wont work at all |
00:24 |
Exio4 |
hehe |
00:25 |
sapier |
stop request and running need to be different variables of course |
00:34 |
|
Taoki joined #minetest-dev |
00:39 |
|
hmmmmm joined #minetest-dev |
00:40 |
iqualfragile |
btw: @forummods: https://forum.minetest.net/mmdb/queue/ |
00:42 |
iqualfragile |
sapier: plz add escape button |
00:43 |
PilzAdam |
iqualfragile, eh, is it wanted that I can access that site? |
00:43 |
sapier |
later |
00:44 |
iqualfragile |
PilzAdam: if your userid is in this list: 194, 332, 3279, 153, 239, 1580, 4473, 1963, 4908, 249, 3710, 2443, 4128, 2429, 231, 4088 |
00:50 |
sapier |
troller can you check this one https://github.com/minetest/minetest/pull/1026 |
00:50 |
|
us_0gb joined #minetest-dev |
00:52 |
sapier |
I guess I shouldn't aproove my own mods :-) |
00:52 |
PilzAdam |
sapier, there are textures missing in growing_cactus |
00:52 |
sapier |
oops have default textures been renamed? |
00:53 |
PilzAdam |
no, but there is an empty textures folder |
00:53 |
sapier |
then no textures are missing |
00:53 |
sapier |
that mod doesn't have any own textures |
00:54 |
sapier |
same for growing trees |
00:54 |
us_0gb |
Why is there a textures directory then? |
00:55 |
sapier |
because those mods are quite old and I followed mod directory rules a little bit to exactly by that time ;-) |
00:55 |
us_0gb |
Ah, got it. |
00:56 |
sapier |
but I don't want to create a new version just to remove a directory :-) |
00:57 |
us_0gb |
Oh, another question, for anyone. I notice that Minetest accepts textures in <module>/textures as well as <module>/models. Is that intended? |
00:59 |
sapier |
even if it wasn't we couldn't change it once released with stable version |
00:59 |
us_0gb |
I've thought about pitting textures in an arbitrarily-named directory to see if that would be accepted as well. I'll have to try that when I have a moment. |
00:59 |
us_0gb |
*putting |
01:00 |
|
hmmmmm joined #minetest-dev |
01:00 |
sapier |
I assume only official folders have a chance at least if you want to have sem transfered by server |
01:05 |
troller |
sapier, seems better, 10 runs and 0 coredumps |
01:06 |
troller |
was 50% hit |
01:06 |
sapier |
yes was a huge bug should've occured for others too but maybe a different scheduling was required to trigger it more often |
01:07 |
sapier |
ok any core dev here to get this one merged prior others get same problems? |
01:08 |
* troller |
still coredev |
01:08 |
troller |
i'm okay |
01:10 |
sapier |
everyone could claim to be you ;-) |
01:12 |
Exio4 |
you could just merge it |
01:12 |
Exio4 |
it is a bug fix for a code you posted somewhen recently |
01:13 |
sapier |
as this is a critical bug I will push it but usually changes like that should be reviewed to avoid things like exactly this bug get merged ;-) |
01:14 |
sapier |
hope I haven't broken windows build |
01:14 |
Exio4 |
ha! :P |
01:14 |
hmmmmm |
ah! |
01:15 |
Exio4 |
i should setup a build-env with ms vs 2012, are there any updated docs for that? |
01:15 |
hmmmmm |
sapier committed the lua async jobs |
01:15 |
Exio4 |
(i've a VM with W7 |
01:15 |
Exio4 |
+MS VS 2012) |
01:15 |
sapier |
yes got 3 agreements .... and had to fix 3 critical bugs noone noticed before |
01:16 |
hmmmmm |
that's a bad name for that commit, it should be something more fitting like "Implemented Lua Async Job API; now used in modstore and favorites tab" |
01:17 |
sapier |
I guess it's to late to rename ... isn't it? |
01:17 |
hmmmmm |
yep |
01:17 |
hmmmmm |
don't forget to close your jsemaphore thing |
01:17 |
sapier |
but at least the asynchronous is mentioned in name |
01:17 |
hmmmmm |
what do you think we should do about httpfetch now that it's kind of unnecessary? |
01:18 |
Exio4 |
it isn't unnecessary |
01:18 |
sapier |
as far as I know httpfetch is required for vanessaE's bug |
01:18 |
hmmmmm |
ah |
01:18 |
sapier |
I already have a (almost) up to date branch here I'll rebase once again and issue a pull request |
01:18 |
hmmmmm |
wow, the menu is fast :p |
01:19 |
sapier |
hope so it uses 4 asynchronous threads ;-P |
01:20 |
|
zat1 joined #minetest-dev |
01:26 |
hmmmmm |
hah, I wrote almost the same exact code in the latest commit today at work |
01:38 |
sapier |
https://github.com/minetest/minetest/pull/1027 |
01:47 |
VanessaE |
um... why does building the server depend on irrlicht? |
01:52 |
hmmmmm |
oh dear |
01:53 |
hmmmmm |
the main menu freezes the hell up if you try to X out of it |
01:54 |
iqualfragile |
sapier: whats the resolution of the mods titlepictures in the minetest client? |
01:54 |
iqualfragile |
and: is this resolution final or do you intend to change it (if yes: to what) |
01:54 |
sapier |
there is no resolution it's scaled to this size |
01:55 |
sapier |
no I don't intend to change it as this would require changeing whole layout |
01:57 |
iqualfragile |
so: to which resolution is it scaled to? (i intend to provide thumbnails) |
01:57 |
VanessaE |
um, hello? |
01:57 |
sapier |
it's scaled to minetest block inventory block sizes |
01:58 |
sapier |
3,2 |
01:58 |
sapier |
width 3 height 2 |
01:59 |
iqualfragile |
can you tell me the ammount of pixels used? |
01:59 |
sapier |
no idea sorry |
02:03 |
VanessaE |
again, why does building the server require irrlicht? shouldn't that be client-only? |
02:03 |
sapier |
guess noone did cleanup usage of irrlicht datatypes |
02:05 |
VanessaE |
*sigh* |
02:05 |
* VanessaE |
installs 121 MB worth of extra crap just to compile a 3.8MB binary. |
02:06 |
sapier |
guess chances to get someone to fix this aren't that big |
02:11 |
|
OldCoder joined #minetest-dev |
02:36 |
|
sapier left #minetest-dev |
02:38 |
|
Miner_48er joined #minetest-dev |
03:32 |
ShadowNinja |
VanessaE: Because a lot of things that the server uses (Like u32) are in irrlicht. |
03:33 |
VanessaE |
right |
03:33 |
VanessaE |
this needs cleaned up soon. |
03:36 |
ShadowNinja |
Easy fix for types: #ifndef(IRRLICHT) typedef u8 uint8_t; typedef u16 uint16_t; ... #endif |
03:37 |
VanessaE |
the cmake stuff would need a corresponding tweak to allow irrlicht to not be defined. |
03:37 |
VanessaE |
(presently, it errors out) |
03:53 |
hmmmmm |
that's probably the one thing that C needed most, a preprocessor macro for determining if a type has already been defined |
06:13 |
|
werwerwer joined #minetest-dev |
06:23 |
ShadowNinja |
Sapier forgot to add a error handler to his async API... And somehow calling scriptError(char* fmt, ...) compiled... |
06:25 |
ShadowNinja |
lua_getglobal(L, "engie"); -- Note misspelling. How did this run? |
06:25 |
|
us|0gb joined #minetest-dev |
06:29 |
ShadowNinja |
/TODO replace by ShadowNinja version not yet merged to master |
06:36 |
ShadowNinja |
His custom scriptError() doesn't throw a LuaError(or anything to stop execution). Maybe there's a reason for that. |
06:45 |
ShadowNinja |
Seems he fixed the typo. |
06:49 |
ShadowNinja |
hmmmmm: Perhaps set_lighting(light[, p1, p2]) to show that the last two are optional? (ditto for calc_lighting) |
06:50 |
hmmmmm |
sure... I wasn't sure what the notation was for optional parameters |
06:50 |
hmmmmm |
i'll fix that up in the next commit |
06:51 |
hmmmmm |
do you guys know offhand if mapgen v6 still has those partial cave shadows? |
06:51 |
hmmmmm |
i need to know if i screwed something up just today |
06:55 |
ShadowNinja |
hmmmmm: Partial cave shadows? Screenie? |
06:55 |
hmmmmm |
screenshot? |
06:55 |
hmmmmm |
that defeats the purpose |
06:56 |
hmmmmm |
I could just go back to a different commit and test myself |
06:56 |
ShadowNinja |
Well, that description doesn't sound familiar... |
07:31 |
|
proller joined #minetest-dev |
07:32 |
hmmmmm |
you know |
07:33 |
hmmmmm |
i was playing on minimal for a little bit just now and I realized you just can't beat the original textures |
07:33 |
hmmmmm |
so much nicer imo |
07:44 |
|
RealBadAngel joined #minetest-dev |
07:45 |
RealBadAngel |
hi hmmmmm |
07:45 |
RealBadAngel |
have you tried shaders already? |
07:45 |
VanessaE |
RealBadAngel: your shaders are FAIL :( http://digitalaudioconcepts.com/vanessa/hobbies/minetest/screenshots/Screenshot%20-%2011292013%20-%2003%3a52%3a38%20PM.png |
07:46 |
VanessaE |
you broke all solids that have alpha :P |
07:46 |
hmmmmm |
not yet, but it seems you did something to test_shader_1 |
07:46 |
VanessaE |
and your code needs rebased....again |
07:51 |
RealBadAngel |
1st) its not a fail |
07:51 |
RealBadAngel |
but wrong defined node |
07:52 |
VanessaE |
um |
07:52 |
RealBadAngel |
only alpha shader is allowed to use texturtes alhpa |
07:52 |
VanessaE |
those leaves in the background have not changed defs in forever |
07:52 |
RealBadAngel |
all other shaders cannot use it |
07:53 |
VanessaE |
every node with alpha is broken with your shaders now. this wasn't the case before you tried to apply that inventory fix. |
07:53 |
RealBadAngel |
thats what setting use texture alpha is for |
07:53 |
VanessaE |
nononononononononononon |
07:53 |
VanessaE |
I don't mean that kind of alpha |
07:53 |
VanessaE |
I mean any node that has any transparency at all. like a dry shrub or leaves. |
07:54 |
RealBadAngel |
i have rebased it twice today |
07:55 |
VanessaE |
or default glass, or jungle grass, etc. anything that is not a solid, opaque cube. |
07:55 |
VanessaE |
ok, lemme pull |
07:55 |
RealBadAngel |
maybe i have messed something |
07:55 |
VanessaE |
CONFLICT (content): Merge conflict in builtin/mainmenu.lua |
07:55 |
RealBadAngel |
ok, i am sayin this for the record |
07:56 |
RealBadAngel |
i will revert all the offending small, as big as one character even pulls |
07:56 |
VanessaE |
don't. |
07:56 |
RealBadAngel |
that will come in way of commit that changes almost 40 files |
07:56 |
RealBadAngel |
thats sick |
07:56 |
VanessaE |
this was all work on the mod store or something |
07:56 |
RealBadAngel |
no |
07:57 |
RealBadAngel |
nore/sapier are pushin all the time to mainmenu |
07:57 |
RealBadAngel |
and im forced to rebase manually |
07:58 |
RealBadAngel |
nore's pull was just one character |
07:59 |
VanessaE |
ok, so it's the weekend... |
07:59 |
VanessaE |
let's get this done right now then |
07:59 |
|
darkrose joined #minetest-dev |
07:59 |
VanessaE |
rebase it one last time, lemme bug-check the result, and push the fucking thing to master. |
07:59 |
RealBadAngel |
i got it done a few times already |
08:00 |
|
darkrose joined #minetest-dev |
08:00 |
RealBadAngel |
now im goin to sleep |
08:01 |
VanessaE |
come on, one last time :) |
08:01 |
RealBadAngel |
it was last time already |
08:01 |
RealBadAngel |
got sick of it |
08:01 |
RealBadAngel |
goin to sleep |
08:01 |
RealBadAngel |
bye |
08:08 |
VanessaE |
... |
08:08 |
VanessaE |
he keeps such weird hours. |
08:10 |
|
kahrl joined #minetest-dev |
08:34 |
|
Calinou joined #minetest-dev |
08:43 |
|
sapier joined #minetest-dev |
08:51 |
sapier |
ShadowNinja how do I prepend a string to a lua error with your new handlers? |
09:18 |
sapier |
RealBadAngel https://github.com/sapier/minetest/tree/fix_rba_shader_rework rebased but transparency is still broken ... I don't have any clue about fixing shaders |
09:19 |
|
mrtux joined #minetest-dev |
09:40 |
|
Calinou joined #minetest-dev |
09:46 |
|
nyuszika7h joined #minetest-dev |
09:57 |
|
Jordach joined #minetest-dev |
11:09 |
|
nore joined #minetest-dev |
11:09 |
|
proller joined #minetest-dev |
11:28 |
|
ImQ009 joined #minetest-dev |
11:32 |
|
john_minetest joined #minetest-dev |
11:50 |
|
iqualfragile joined #minetest-dev |
12:00 |
celeron55 |
this is boring but: you could quickly test if you can cause 102 |
12:01 |
celeron55 |
also, i closed 203; 206 still exists afaik |
12:06 |
sapier |
john thats why this pull is there ;-) |
12:06 |
sapier |
but I want to merge RealBadAngels shader fixes first ... at least if the transparency issues are fixed |
12:09 |
sapier |
I can't reproduce 102 I closed it commenting to reopen with more detailed information about repro steps |
12:09 |
sapier |
reopen if still present for calinou of course |
12:10 |
celeron55 |
sadly that hasn't been merged or fixed |
12:12 |
celeron55 |
it will conflict a lot with proller's liquid changes |
12:23 |
|
werwerwer joined #minetest-dev |
12:41 |
sapier |
john_minetest you could test the httpfetch branch if you want to |
12:41 |
sapier |
downloading textures from server should be a usefull testcase |
12:42 |
sapier |
but basicaly everything downloaded is switched to httpfetch implementation |
12:43 |
|
Gethiox joined #minetest-dev |
12:53 |
sapier |
shouldn't environmental step be called as often as entity steps? |
12:54 |
|
Zeitgeist_ joined #minetest-dev |
12:55 |
nore |
aren't they? |
12:56 |
sapier |
doesn't look like |
12:56 |
sapier |
I put a print in environment step callback in lua |
12:56 |
sapier |
and one in on_step of a entity |
12:57 |
sapier |
I'd expect them to be show A B A B A B ... but what I seee is AAAAAABAAAAAABAAAAAA |
12:58 |
nore |
sapier, which one is A? |
12:58 |
sapier |
A is environment ... but there's some other code around ... guess I need to do a simple test to be sure |
13:01 |
sapier |
no |
13:02 |
sapier |
it's a drop in replacement if there's no bug you won't realize any change (except some fixed bugs) |
13:03 |
sapier |
don't know if faster but at least there shouldn't be any lost ones |
13:24 |
sapier |
nore forget about it ... was a mesurement error |
13:26 |
sapier |
interesting that one should be fixed by it but I guess we need kahrl to verify it I just rebased his work |
13:36 |
nore |
I found a bug: detached inventory updates are always immediately sent to client, even if there are 200 updates in a second |
13:37 |
nore |
and if the update is quite big (lot of metadata in item), it blocks everything from being sent to client during that time |
13:39 |
nore |
john_minetest, in which one? |
13:40 |
nore |
I mean, in what textbox? |
13:42 |
nore |
john_minetest, it does not have to, but it only crashed with up and down arrow |
13:42 |
nore |
(well, not crash, nice error message...) |
13:45 |
nore |
can someone explain me why every update in an itemstack is sent to client with a detached inventory, and not else? |
13:46 |
nore |
and in non-empty fields? |
13:46 |
sapier |
can you provide backtrace of all threads john? |
13:47 |
nore |
sapier, any idea about that? ^ |
13:48 |
nore |
(detached inventories get sent when there is any change...) |
13:50 |
sapier |
nore I'm not sure if I know what you're talking about |
13:50 |
nore |
well, if I change a detached inventory, even if I do that 250 times in a second, every update is sent to the clients |
13:51 |
nore |
preventing any server-to-client communication during that time |
13:51 |
nore |
the other way works fine, though |
13:51 |
nore |
and if I change a node inventory, it does not do that |
13:52 |
sapier |
I guess noone did think about a sane inventory update handling |
13:53 |
sapier |
two threads only? |
13:53 |
sapier |
wait let me have a look if the stop fix is within this branch ... hope I didn't forget to merge that last one |
13:55 |
sapier |
that seems to be a shutdown but whatever triggered it is already gone |
13:57 |
sapier |
could you try compiling -O0 and run in debugger? |
13:59 |
sapier |
someone is crashing while cleaning up |
13:59 |
sapier |
how do you trigger it? |
14:00 |
sapier |
ok I try to reproduce |
14:03 |
|
hmmmm joined #minetest-dev |
14:04 |
|
zat joined #minetest-dev |
14:10 |
sapier |
thats just a follow up error |
14:11 |
sapier |
ok |
14:12 |
|
iqualfragile joined #minetest-dev |
14:38 |
hmmmm |
07:52 RealBadAngel only alpha shader is allowed to use texturtes alhpa |
14:39 |
hmmmm |
the whole way the first category of nodes works is that they can have alpha, but if the top alpha bit is set then it's transparent, otherwise it's solid |
14:39 |
hmmmm |
let me see his code.... |
14:40 |
hmmmm |
what the hell is this float specular = pow(clamp(dot(R, lVec), 0.0, 1.0),1.0); |
14:40 |
hmmmm |
pow(x, 1.0)? ;/ |
14:41 |
sapier |
I assume a good compiler will use x :-) |
14:41 |
hmmmm |
that's glsl |
14:41 |
hmmmm |
how advanced of an optimizer do you think a driver is going to keep |
14:41 |
sapier |
:-) so not a good compiler |
14:42 |
hmmmm |
right off the bat, it seems like he might be using solids_shader for most things when he should be using leaves_shader for all nodes that aren't translucent (e.g. liquids, clouds, so on) |
14:42 |
hmmmm |
let me actually look at the code itself |
14:43 |
hmmmm |
alright this is not right https://github.com/RealBadAngel/minetest/commit/12c4fd9d6ae8ababb7decdf34d2969ca7e02cb53#diff-18513665750ef5adf42b5ec29e14162eR824 |
14:43 |
hmmmm |
is this a trick to making us think that we can disable parallax occlusion a la proller with finite liquids |
14:44 |
hmmmm |
s/to/for/ |
15:02 |
|
proller joined #minetest-dev |
15:04 |
nore |
hmmmm, what do you mean about the swap_node thing? |
15:07 |
hmmmm |
well the purpose of swap_node is to preserve metadata across setting one node to another, correct? |
15:07 |
hmmmm |
if that's the whole point, why are you re-inventing the wheel and recreating add_node when you can simply add a parameter that you could set to true called, preserve_metadata or something |
15:11 |
nore |
yes... but the question was if I would still need to add another command id, or not |
15:12 |
hmmmm |
no. don't add that. add an optional field to the add_node packet instead. |
15:12 |
Exio4 |
wait, isn't there a "better way" to do the itemdef thing than https://github.com/RealBadAngel/minetest/commit/12c4fd9d6ae8ababb7decdf34d2969ca7e02cb53#diff-598e9ded205c524fa4804d7869c9c4cdR393? |
15:13 |
nore |
hmmmm, how would I do that and still keep compatibility? |
15:15 |
celeron55 |
it might be possible to just mark the mapblock not sent for older clients |
15:15 |
celeron55 |
(but still send the add_node too so that the visuals change immediately) |
15:16 |
nore |
celeron55, isn't there a set_meta command? |
15:16 |
nore |
but the question I asked was about adding an optional parameter and still keep compatibility for that command |
15:17 |
hmmmm |
how would you keep compatibility if you add an entirely new packet anyway? |
15:17 |
hmmmm |
at the end of each packet serialize/deserialize there's a try catch block where you get optional parameters |
15:17 |
hmmmm |
that's where you'd put this parameter |
15:17 |
hmmmm |
i'm not exactly sure what celeron is talking about |
15:17 |
celeron55 |
the client doesn't care if it gets extra data after the data it knows in a packet |
15:18 |
celeron55 |
hmmmm: well i'm not exactly sure whet you two are talking either 8-) |
15:18 |
celeron55 |
what* |
15:19 |
hmmmm |
he wants to add a new command, TOCLIENT/TOSERVER_SWAPNODE that's exactly the same as ADDNODE except it preserves metadata across the node swap |
15:19 |
celeron55 |
john_minetest: do you mean drop support for old clients? |
15:19 |
hmmmm |
this isn't going to be compatible with older clients any way you look at it, because he'd have to increase the protocol version anyway to do that |
15:20 |
hmmmm |
at least here old clients won't completely break |
15:20 |
celeron55 |
john_minetest: protocol version isn't a magical thing; if you raise it, then you either have to drop support for old client or somehow maintain support with old clients; and in either case you raise the version |
15:21 |
celeron55 |
hmmmm: that's what i was addressing all the time |
15:22 |
celeron55 |
it's not that hard to support old clients if one wants to |
15:22 |
celeron55 |
and everyone will be pissed off if they can't update their servers to git without dropping all stable users |
15:24 |
|
VanessaE joined #minetest-dev |
15:25 |
nore |
celeron55, but should I add a new event type, or not? (MapEditEvent) |
15:25 |
celeron55 |
if somebody doesn't know: currently minetest handles absolutely all node metadata changes (network-wise) by marking the corresponding MapBlock "not sent", and after a short while the thing gets fully re-sent |
15:25 |
|
OWNSyouAll joined #minetest-dev |
15:26 |
celeron55 |
nore: doesn't matter; either new event or a boolean parameter to MEET_ADDNOE |
15:26 |
nore |
I reckon I will usea new event then...7 |
15:26 |
nore |
-7 |
15:28 |
|
jin_xi joined #minetest-dev |
15:29 |
Exio4 |
uh? |
15:30 |
hmmmm |
ah |
15:30 |
sapier |
john_minetest you'll never pull "all that new stuff" ;-P |
15:30 |
celeron55 |
john_minetest: it's exactly how it should be done |
15:30 |
hmmmm |
I didn't know that actually, I don't really pay attention to node metadata as much as I should |
15:30 |
hmmmm |
that makes the case for swap_node functionality even stronger |
15:31 |
celeron55 |
nore: and it's fairly straightforward from there; just add a boolean parameter to Server::sendAddNode and check there if the client is old or new; if new, send it the parameter in TOCLIENT_ADDNODE; if old, send the parameter-less kind of TOCLIENT_ADDNODE and additionally mark the block not sent for the old client so it's metadata gets corrected |
15:31 |
hmmmm |
alright, so nore, did you hear that? add the optional parameter to ADDN |
15:31 |
hmmmm |
yeah what he said |
15:31 |
sapier |
I wonder why linux kernel maintainers pull all that new stuff right after releasing a kernel version john_minetest ;-) |
15:31 |
hmmmm |
he ninjaed me |
15:32 |
nore |
ok, that's what I'm doing... |
15:32 |
nore |
so, I change the packet size from 8+mapnodesize to 9+mapnodesize |
15:32 |
nore |
and add a boolean at the end? |
15:32 |
proller |
hmmmm, can you make biomes heat and humidity noises configurable from settings? |
15:33 |
hmmmm |
they are I thought |
15:33 |
hmmmm |
nparams_biome_* |
15:33 |
hmmmm |
? |
15:33 |
Exio4 |
isn't minetest developing fast too? ;) |
15:33 |
sapier |
so you'd be more comfortable with having a broken stable with new features for half a year john_minetest? ;-) |
15:34 |
hmmmm |
john_minetest, every month isn't too bad |
15:34 |
nore |
hmmmm, like that? ^ |
15:34 |
sapier |
we all kow our releases are tooo slow ;-) |
15:34 |
hmmmm |
i hope so |
15:34 |
proller |
hmmmm, but where they readed from config? i can found only hardcoded |
15:35 |
sapier |
but john as you started testing again you see pulls get merged if someone cares to test em |
15:35 |
Exio4 |
it is when-the-features-are-ready, and because leveldb and lots of shit merged it got delayed even more that it should |
15:35 |
hmmmm |
I am hoping for a christmas 0.4.9 release |
15:36 |
sapier |
I suggest adding only httpfetch and shaders as big patches till christmas this way we could really release then |
15:36 |
sapier |
of coutse small bugfixes are always fine |
15:36 |
sapier |
-t+r |
15:36 |
celeron55 |
release interval is quite directly proportional to the amount of new stuff in each release |
15:37 |
hmmmm |
proller, I see, I'll add that |
15:37 |
celeron55 |
so to get the interval down, get the amount down |
15:37 |
Exio4 |
that is why 0.4.8 took that long :P |
15:37 |
hmmmm |
celeron, I wanted 0.4.8 out in a month and a half originally, remember? |
15:37 |
hmmmm |
I think it has more to do with me not pushing for a release |
15:37 |
celeron55 |
hmmmm: i know; you should've hammered the feature freeze with a bigger hammer |
15:38 |
hmmmm |
I was busy with getting a job and moving and all that |
15:38 |
celeron55 |
you've been doing the producer duties for long enough that everybody just waits for you to do them 8) |
15:38 |
sapier |
imho we should use feature freeze more often ... don't know why people are that afraid from it |
15:40 |
sapier |
someone fixed the chat beeing above formspec months ago wasn't that ever merged or is there a regression? |
15:40 |
Exio4 |
what bugfix are you talking about? |
15:41 |
sapier |
I'm once added a pull request but there was a better solution than mine basicaly now if there's chat show you can't click any button in upper area of screen |
15:42 |
|
Calinou joined #minetest-dev |
15:44 |
Exio4 |
something like this but for the chat window? https://github.com/EXio4/minetest/commit/cde2e1c6f716127b6a5c17de74d35b42d839fbf3 |
15:44 |
Exio4 |
chat |
15:44 |
Exio4 |
well, that ugly textbot :P |
15:45 |
sapier |
no if I remember correct it was related to irrlicht layering |
15:45 |
Exio4 |
ahm |
15:45 |
thexyz |
sapier: because in linux kernel world most users use stable versions of software |
15:47 |
sapier |
most USERS do for minetest too it's just developers like us using bleeding edge |
15:49 |
thexyz |
yes, I mean, server owners |
15:49 |
thexyz |
who want to 1) have all the newest features 2) have stability 3) have backwards compatibility 4) have forward compatibility |
15:50 |
thexyz |
5) update once per year 10 versions forward without any issues |
15:51 |
celeron55 |
i wonder how much of the minetest server "ecosystem" 1) has become to be because of the things thexyz mentioned, 2) would actually need all that |
15:52 |
sapier |
is there any way to find out if a particular node is active? |
15:52 |
celeron55 |
i mean, it's kind of cumbersome to maintain all that, and especially new developers are prone to slipping in bugs that break it |
15:54 |
celeron55 |
sapier: on server? C++ or Lua? |
15:54 |
sapier |
on lua |
15:54 |
|
iqualfragile joined #minetest-dev |
15:55 |
celeron55 |
i think no |
15:55 |
sapier |
I realize strange crowds of mobs but mobs aren't supposed to spawn near others ... I assume thos mobs are spawned within inactive areas and instantly deactivated ... this way at next try that particular location seems to be "free" |
15:56 |
nore |
https://github.com/minetest/minetest/pull/1017/files <-- better? |
15:56 |
sapier |
I fix this on activation ... but activating 50 mobs at once causes lag |
15:58 |
nore |
celeron55, hmmmm, so? |
15:59 |
thexyz |
"basically" |
15:59 |
thexyz |
"most of the people" |
15:59 |
thexyz |
well keep believing this |
15:59 |
thexyz |
most of the people use windows and never write mods |
16:00 |
thexyz |
even in the Minetest community |
16:00 |
sapier |
there's a huge bias because those huge amount of ppl never say anything |
16:01 |
thexyz |
http://i.imgur.com/n6HP54C.png |
16:01 |
thexyz |
some old data |
16:02 |
sapier |
seems to be almost 80% windows hits |
16:02 |
thexyz |
also 47 vista users on the next page |
16:02 |
thexyz |
and that's forums, not the main site |
16:03 |
sapier |
guess that makes more then 80% |
16:03 |
thexyz |
probably |
16:03 |
|
EvergreenTree joined #minetest-dev |
16:07 |
nore |
celeron55, hmmmm, should I do a protocol bump for old clients? |
16:08 |
nore |
to be sure the meta is sent to them? |
16:09 |
|
Jordach joined #minetest-dev |
16:09 |
nore |
or is there a way to do so without protocol bump? |
16:11 |
nore |
john_minetest, you forget the users who compile from git or use other builds... |
16:11 |
thexyz |
john_minetest: I cannot because I don't host minetest.net |
16:12 |
thexyz |
also last time I tracked stats PA raged about this and that made me upset |
16:12 |
thexyz |
celeron55 does |
16:13 |
thexyz |
tracking binary downloads is easy |
16:13 |
thexyz |
I can do that |
16:13 |
thexyz |
Windows: 100% |
16:14 |
Exio4 |
anyway, windows users are a hell lot, but they don't actually come to the irc and say "hi i'm a windows user count me in the stats" |
16:14 |
Exio4 |
they just download and play |
16:14 |
thexyz |
john_minetest: okay |
16:14 |
thexyz |
Windows official build linked from the main page: 99.9% |
16:14 |
thexyz |
Others: 0.1% |
16:14 |
thexyz |
john_minetest: what do you want to do with the stats? |
16:15 |
thexyz |
you just can't track all users because many of them use distro-provided packages |
16:15 |
sapier |
we could add a tracker to modstore but I don't like things like that |
16:15 |
thexyz |
ah |
16:16 |
thexyz |
that'd be interesting to know, yes |
16:17 |
Exio4 |
something that could be added is a .txt in minetest.net with the version, and if there is a new one say in-game (or in-menu) a "A new version got released!" or something like that |
16:17 |
Exio4 |
just a simple and totally unrelated |
16:17 |
Exio4 |
+feature request |
16:18 |
Exio4 |
i would like to know what dev thinks about it first |
16:20 |
thexyz |
no one is going to do that |
16:23 |
|
jin_xi joined #minetest-dev |
16:24 |
thexyz |
I make official windows builds but since they're hosted on Github we don't know stats |
16:24 |
thexyz |
btw, MSVC windows builds appear to be broken because there's no unistd.h on Windows |
16:25 |
thexyz |
sapier: I think you did that ^ |
16:25 |
thexyz |
what from unistd do you use in async? |
16:27 |
thexyz |
lol |
16:27 |
thexyz |
https://github.com/minetest/minetest/blob/master/src/jthread/win32/jthread.cpp#L80 |
16:28 |
sapier |
I guess my fear to have broken windows build is right :-/ |
16:28 |
thexyz |
how do I detect msvc in #ifdef block? |
16:29 |
thexyz |
#ifdef _MSC_VER |
16:29 |
sapier |
yes |
16:32 |
thexyz |
apparently we need some windows devs |
16:33 |
thexyz |
MSVC is a nice IDE, dunno what you're raging about |
16:34 |
thexyz |
I wish I could use it on my linux system |
16:34 |
thexyz |
at least Jetbrains is going to give us something very nice for Christmas |
16:34 |
thexyz |
I'm talking about the IDE, not compiler |
16:34 |
thexyz |
I don't really care about it being proprietary since there are no real alternatives |
16:35 |
sapier |
visual studio IDE is great ... if there wasn't all those unnecessary features ... e.g. compiler |
16:37 |
thexyz |
that'd be nice |
16:37 |
thexyz |
but we need that someone to actually fix stuff, not just say "it doesnt werk" |
16:38 |
thexyz |
because otherwise it'll slow the development even further |
16:38 |
thexyz |
because since sapier, for example, doesn't have msvc it'll take much more time to fix trivial things |
16:41 |
celeron55 |
windows developers tend to do closed source commercial projects 8) |
16:41 |
thexyz |
john_minetest: if you're willing to fix stuff you can be the one |
16:43 |
celeron55 |
about tracking usage: maybe we should add opt-in usage tracking in minetest which could send some stuff to some server |
16:43 |
celeron55 |
i mean, the client, and maybe even server |
16:44 |
Exio4 |
yeah, that too |
16:45 |
celeron55 |
it would be ethical because it'd ask the user (a checkbox in settings?) and it would be more precise because it would get info about actual users, not those that download a certain package from a certain server |
16:45 |
thexyz |
celeron55: if it's opt-in then no one's going to be tracked |
16:45 |
|
werwerwer joined #minetest-dev |
16:45 |
thexyz |
especially if it's only in settings without big popup flashing or something |
16:45 |
thexyz |
then no one will find it |
16:46 |
Exio4 |
make it an option in the settings page |
16:46 |
thexyz |
john_minetest: we can't just drop msvc, if that's what you're talking about |
16:46 |
thexyz |
since those are the only builds that support directx |
16:46 |
celeron55 |
thexyz: maybe it needs to ask the user if the setting isn't configured yet... i'm against that, but could be acceptable for one release |
16:46 |
thexyz |
inb4 getting removed from all repos |
16:47 |
Exio4 |
thexyz: is there any "updated guide" about how-to setup a working msvc enviroment for compiling minetest? |
16:47 |
thexyz |
I still don't understand the reason behing this |
16:47 |
thexyz |
Exio4: there's one in readme.txt |
16:47 |
celeron55 |
before even considering putting anything like that into it, we should know what we would even do with the data |
16:47 |
Exio4 |
i would have said it didn't work but i will try ;P |
16:47 |
celeron55 |
so let's maybe just drop the idea |
16:48 |
thexyz |
yes, that's what I'm talking about |
16:48 |
thexyz |
Exio4: one little hint that can save life: for some reason it sets Lua "Runtime Library" to "/MD", you should change that to /MT to make it build |
16:48 |
thexyz |
I'm not sure if that's because of my setup though |
16:49 |
Exio4 |
thanks for the tip |
16:51 |
thexyz |
and when built with Debug msvc build just aborts() |
16:53 |
thexyz |
sapier: this makes it build on windows http://pastebin.com/raw.php?i=ndGaPCji and it seems to launch too! |
16:53 |
thexyz |
but I'm not sure what should I test to verify if it works correctly |
16:54 |
hmmmm |
nore, yes you'd need a protocol bump for that but we shouldn't do that right away |
16:54 |
nore |
I could leave it like it is now else... (but old clients would need to wait) |
16:54 |
sapier |
no sleep on windows? |
16:54 |
nore |
to get the metadata |
16:54 |
thexyz |
sapier: no unistd on windows |
16:54 |
hmmmm |
also these 5 lines https://github.com/minetest/minetest/pull/1017/files#diff-ab005ad9757130721ffb66a09833090aR1327 could be compressed into event.type = remove_metadata ? MEET_ADDNODE : MEET_SWAPNODE; |
16:54 |
thexyz |
john_minetest: what do we need this info for? |
16:55 |
hmmmm |
the code looks nice |
16:56 |
celeron55 |
hmmmm, nore: the protocol version should be raised immediately |
16:56 |
thexyz |
john_minetest: you want to sacrifice user privacy, probably make some people rage just for the sake of curiosity? |
16:56 |
celeron55 |
otherwise it's impossible to know what client supports what |
16:56 |
|
mrtux joined #minetest-dev |
16:56 |
hmmmm |
meh alright then |
16:56 |
celeron55 |
everyone should learn to understand that increasing the main protocol version is important to do often and does nothing by itself |
16:57 |
hmmmm |
nore you hear that? bump the protocol version in that as well |
16:57 |
hmmmm |
also we need to look at other pull requests that change the protocol version |
16:57 |
nore |
hmmmm, where? |
16:57 |
nore |
(I mean, where is the protocol version defined?) |
16:57 |
thexyz |
john_minetest: I still feel that if we need just download stats then it's enough to use piwik |
16:58 |
thexyz |
(without the need to modify client/server) |
16:59 |
hmmmm |
i think clientserver.h |
16:59 |
nore |
ok, I found that |
16:59 |
hmmmm |
yes |
16:59 |
celeron55 |
hmmmm: yes, they should be "incorporated" to the same version until next release |
16:59 |
thexyz |
sapier: should I push this? |
16:59 |
nore |
and how do you get the version of a client, for the server? |
16:59 |
hmmmm |
celeron55, that's what I meant by "it can be added later" |
17:00 |
celeron55 |
hmmmm: just making sure and clear 8) |
17:00 |
sapier |
of course thexyz |
17:00 |
hmmmm |
i don't know how |
17:00 |
hmmmm |
it's sent with the init packet |
17:00 |
celeron55 |
hmmmm: RemoteClient |
17:01 |
hmmmm |
I'm sure there's some field in RemotePeer |
17:01 |
celeron55 |
... |
17:01 |
celeron55 |
*nore |
17:01 |
celeron55 |
it's client->net_proto_version where you want it |
17:01 |
|
rubenwardy joined #minetest-dev |
17:01 |
thexyz |
perhaps it's not really nice to just define it here as `static`, well anyone is free to redo that |
17:01 |
nore |
I was going to ask that... |
17:02 |
hmmmm |
yeah RemoteClient |
17:02 |
hmmmm |
goes to show how much network code i've done |
17:03 |
celeron55 |
i hate the comments for this part; it says "// The serialization version to use with the client" in RemoteClient for serialization_version which is the mapblock serialization version, and it says nothing for net_proto_version which is the overall protocol version... |
17:03 |
nore |
hmmmm, celeron55: done |
17:03 |
thexyz |
john_minetest: you wanted to get stats for all versions downloads which is impossible |
17:04 |
thexyz |
alright |
17:04 |
thexyz |
that means celeron55 should install some sort of web stats to minetest.net AND you should convince all other builders to do the same |
17:04 |
thexyz |
the second part is impossible |
17:05 |
* sfan5 |
haz piwik stats |
17:05 |
thexyz |
sfan5: cool, so how many downloads do you have? |
17:06 |
sfan5 |
which timespan? |
17:06 |
sfan5 |
+in |
17:07 |
thexyz |
hmm.. let's say per day? |
17:09 |
|
EvergreenTree joined #minetest-dev |
17:09 |
sfan5 |
http://i.imgur.com/YoWby9X.png (oct 29 - nov 29) |
17:10 |
|
PilzAdam joined #minetest-dev |
17:12 |
nore |
celeron55, hmmmm, so, is it ok for merging? |
17:12 |
hmmmm |
no not until we go through everything else that requires a protocol bump |
17:13 |
hmmmm |
and we merge them all at once |
17:13 |
celeron55 |
uh |
17:13 |
celeron55 |
we don't need to |
17:13 |
sfan5 |
src/script/lua_api/l_async_events.h:101: error: ‘sleep’ was not declared in this scope |
17:13 |
sfan5 |
who broke it? |
17:13 |
hmmmm |
you sure..? |
17:13 |
celeron55 |
and that wouldn't make any sense anyway as we need to add stuff to the same protocol version until next release anyway |
17:14 |
nore |
ok... (I added protocol bump label to the pull too) |
17:14 |
celeron55 |
(or, probably need to) |
17:14 |
hmmmm |
the reason why i'd rather combine protocol versions is because so many people use the development versions |
17:15 |
hmmmm |
and i say 0.4.9 will be out in less than a month but i don't actually know the future |
17:15 |
celeron55 |
if they use a development version, they may as well update to the newest development version any day when it gets incompatible with a previous development version of the same pre-release |
17:16 |
PilzAdam |
I see many people getting a dev version and then they dont update for months; that has to stop |
17:16 |
hmmmm |
i suppose so |
17:16 |
ShadowNinja |
sapier: Is there a reason that your copy of scriptError doesn't throw a LuaError? |
17:16 |
celeron55 |
the cross-compatibility requirements in a way "stop" at the nearest stable versions |
17:16 |
celeron55 |
PilzAdam: we don't support that |
17:16 |
celeron55 |
PilzAdam: supporting it would be insane |
17:17 |
PilzAdam |
celeron55, yep, thats what Im saying |
17:17 |
thexyz |
sfan5: what compiler? I've just pushed some fix |
17:17 |
sfan5 |
mingw |
17:17 |
thexyz |
oh |
17:17 |
thexyz |
didn't test it lol |
17:17 |
thexyz |
sfan5: can you show your unistd.h? |
17:18 |
thexyz |
if it doesn't have sleep function.. |
17:18 |
celeron55 |
nore: readU8(&data[datasize-1]) is very bug-prone when the protocol evolves |
17:18 |
sfan5 |
http://pastie.org/8519178 |
17:18 |
nore |
celeron55, so what should I write? |
17:18 |
nore |
right now, it writes the byte right at the end |
17:19 |
nore |
even if the protocol changes, it will still be at the end... |
17:19 |
celeron55 |
nore: use a proper index calculation based on the start of the array or alternatively update all handling of that packet to the std::istringstream method already used for newer packets |
17:19 |
celeron55 |
nore: no no no no no! |
17:19 |
celeron55 |
nore: that's horrible |
17:19 |
nore |
ok... |
17:19 |
celeron55 |
nore: it should append it to whatever there is now |
17:19 |
* nore |
wants to hide |
17:20 |
nore |
so, perhaps set the index to 8+mapnodesize instead? |
17:20 |
nore |
would that be ok? |
17:20 |
celeron55 |
YES |
17:20 |
sapier |
I don't think so Shadow but I miss passing non lua error information to your error handlers is there a way to do? |
17:21 |
ShadowNinja |
sapier: What do you mean? If you call scriptError then there has been a Lua error. |
17:21 |
celeron55 |
nore: also instead of "[u8 keep_metadata]", write the packet documentation as "u8 keep_metadata // Added in protocol 22" |
17:22 |
ShadowNinja |
I also oprimized your code a bit and removed the copy of script_error_handler. |
17:22 |
nore |
but it is still optional (not sent if node is not swapped) |
17:22 |
sapier |
that's been a unique thing while there was only a single lua instance but async has 5 so I need to pass some information where that error is from |
17:22 |
nore |
celeron55, ^ |
17:23 |
celeron55 |
nore: you need to put it always there, otherwise it's impossible to extend the packet further |
17:23 |
nore |
ok |
17:23 |
ShadowNinja |
sapier: Your version just prints the error and continues. |
17:23 |
sfan5 |
thexyz: http://pastie.org/8519178 |
17:23 |
sapier |
my version is just a dummy it was planed to be replaced by your one ;-) |
17:24 |
nore |
celeron55, if I don't write a byte, it is 0? |
17:24 |
celeron55 |
yes |
17:24 |
celeron55 |
or um |
17:24 |
celeron55 |
wait what |
17:25 |
celeron55 |
you always write the byte; it's not pre-initialized anywhere |
17:25 |
ShadowNinja |
sapier: Does this look good? http://ix.io/9cN |
17:26 |
thexyz |
sfan5: there's no sleep but there's usleep |
17:26 |
thexyz |
sfan5: well, go on and fix it |
17:27 |
thexyz |
https://github.com/minetest/minetest/blob/master/src/script/lua_api/l_mainmenu.cpp#L830 V547 Expression 'bytes_read < 0' is always false. Unsigned type value is never < 0. l_mainmenu.cpp 830 |
17:27 |
sapier |
partly |
17:27 |
nore |
celeron55, done |
17:27 |
celeron55 |
these protocol contributions are always fucking painful, i think i need to personally rework all the protocol handling to not contain infinite trapholes |
17:27 |
nore |
is it ok now? |
17:27 |
thexyz |
V593 Consider reviewing the expression of the 'A = B != C' kind. The expression is calculated as following: 'A = (B != C)'. l_mainmenu.cpp 831 |
17:27 |
sapier |
imho tjere should be a way to pass additional information to script_error |
17:28 |
thexyz |
sapier: ^ |
17:28 |
PilzAdam |
nore, https://github.com/minetest/minetest/pull/1017/files#diff-d075e6a559bcb98d71ddd9d54873bf01R1337 why do you keep calling it "hacky"? |
17:29 |
nore |
sry, forgot that |
17:29 |
thexyz |
V590 Consider inspecting this expression. The expression is excessive or contains a misprint. pathfinder.cpp 524 |
17:30 |
sapier |
I don't see any bug in 831? should I |
17:30 |
celeron55 |
nore: server.cpp:4120 needs a comment explaining why that's there ("Synchronize metadata to old clients by re-sending the full mapblock") |
17:30 |
nore |
ok |
17:30 |
celeron55 |
then i don't see any problems anymore |
17:31 |
sapier |
same for 524 |
17:31 |
nore |
celeron55, is that explicit enough? "Set block metadata to be sent to old clients" |
17:31 |
thexyz |
full log: 1, 2: http://pastebin.com/raw.php?i=RUEg1m7m 3: http://pastebin.com/raw.php?i=mVWf1M9b |
17:31 |
sapier |
ok in 524 the check for != ait is superfluss |
17:32 |
celeron55 |
nore: well it's not better than my suggestion :P |
17:32 |
sapier |
!= IGNORE of course |
17:32 |
thexyz |
sapier: well there obviously is a bug on 831 |
17:32 |
celeron55 |
nore: "Old clients always clear metadata; Fix it by sending full metadata again" |
17:32 |
thexyz |
sapier: although it seems that you don't use bytes_written anywhere so you're safe |
17:32 |
celeron55 |
that should make it plenty clear |
17:32 |
thexyz |
sapier: it'll be set to either 0 or 1 it seems |
17:33 |
thexyz |
it also seems that you want it to be set to what fwrite returns |
17:33 |
celeron55 |
nore: also, actually that if needs to also check for !remove_metadata |
17:33 |
celeron55 |
nore: otherwise it overworks old clients for no reason |
17:33 |
sapier |
yes I do |
17:33 |
thexyz |
(node_at_pos.param0 != CONTENT_IGNORE) && (node_at_pos.param0 == CONTENT_AIR) |
17:34 |
thexyz |
sapier: you do what? |
17:34 |
ShadowNinja |
Does this look good? http://ix.io/9cP (Replace C++->Lua calls of table.insert with lua_rawseti and add pre-allocation for arrays of a known size) |
17:34 |
sapier |
ok true it's only usefull within the if clause and there it isn't used |
17:34 |
nore |
done... |
17:34 |
sapier |
guess it can be removed without loosing anything |
17:34 |
celeron55 |
nore: for added perfectionism, you should have "bool keep_metadata" for Server::sendAddNode so that there are no unnecessary inversions 8) |
17:35 |
thexyz |
and for some reason I either don't know how to use clang static analyzer or it just says everything's fine while it isn't |
17:35 |
nore |
do you want my death? |
17:35 |
sapier |
wait ... I assume I wanted to check if bytes written == bytes read and return true/false in there |
17:35 |
nore |
well, I guess I will do it anyway... |
17:35 |
thexyz |
nore: if you don't want perfectionism then you should know where to go |
17:35 |
nore |
yes, I know |
17:35 |
celeron55 |
nore: no; you can decline :P |
17:35 |
thexyz |
sapier: "I assume", heh |
17:35 |
celeron55 |
it's not needed, just push it |
17:35 |
nore |
but the problem is that there are a ton of things to change then |
17:36 |
sapier |
it is fine as of language ... its superfluss |
17:36 |
nore |
ok, I will push it then |
17:37 |
sapier |
yes sometimes I have to guess what I intended to do some time before ... bad habit I know |
17:37 |
ShadowNinja |
Ahem, does this look fine? http://ix.io/9cP |
17:38 |
nore |
ok, pushed now |
17:47 |
PilzAdam |
hmmmm, you should update lua-api.txt about is_ground_content |
17:47 |
PilzAdam |
also, does the flag change anything for liquids? |
17:48 |
nore |
btw, I just saw I forgot to update lua-api.txt for minetest.swap_node |
17:53 |
PilzAdam |
nore, well.... fix that= |
17:53 |
PilzAdam |
*? |
17:53 |
nore |
yep |
17:54 |
ShadowNinja |
Alright, I'll push my table optimizations and the async step errorhandler in a minute if nobody objects. |
17:54 |
thexyz |
sfan5: have you fixed the build issue? |
17:54 |
nore |
PilzAdam, is that ok for doc? ^ Set node at position, but don't remove metadata |
17:55 |
PilzAdam |
nore, I guess thats good enough |
17:55 |
nore |
should I make a new commit, or change the existing one? |
17:55 |
PilzAdam |
it should be clear that its only different from set_node when meta is involved |
17:56 |
PilzAdam |
nore, your original commit is > 10 minutes ago, so make a new one |
17:56 |
nore |
ok... so, you're ok for that (since last time I made fixes, I pushed without asking...) |
17:57 |
PilzAdam |
yea |
17:58 |
proller |
DO NOT push -f to master, NEVER |
17:58 |
thexyz |
proller: too late they already do that |
17:58 |
PilzAdam |
proller, our guidelines allow to do that for < 10 minute old history and when its announced here |
17:59 |
proller |
its very bad guidelines |
18:02 |
proller |
if your guidelines will allow you to kill kittens or humans - you will do? |
18:04 |
sapier |
kittens? of course ;-P |
18:08 |
|
EvergreenTree joined #minetest-dev |
18:08 |
PilzAdam |
proller, no, because thats against the law |
18:10 |
sapier |
I guess it's ok to make sousages from kittens in china ;-) |
18:11 |
ShadowNinja |
nore: Close your pull request. |
18:12 |
sapier |
how do I get the name from an enity? I know its possible :-) |
18:12 |
proller |
push -f against the law too |
18:12 |
nore |
done... sry, forgot that |
18:13 |
ShadowNinja |
sapier: entity.name, or object:get_luaentity().name. |
18:14 |
sapier |
thanks |
18:15 |
ShadowNinja |
Does #957 look fine? |
18:17 |
sapier |
I'd not link drawtype and selectionbox as it's completely different things |
18:17 |
sapier |
but we already do this for nodebox .... so I guess it's fine |
18:18 |
ShadowNinja |
sapier: The drawtype "fencelike" is just a client-side nodebox that looks like a fence. |
18:19 |
sapier |
are you sure it isn't used in collision handling too? |
18:20 |
sapier |
ok john_minetest's bug found in httpfetch is in master too |
18:21 |
ShadowNinja |
sapier: IDK, but you can always set a custom sellection box, this just adds a default which matches the nodebox. |
18:21 |
sapier |
I already said it's fine shadow ;-) |
18:26 |
|
Zeg9 joined #minetest-dev |
18:40 |
PilzAdam |
hmmmm, https://gist.github.com/PilzAdam/7722780 |
18:40 |
PilzAdam |
I get this while trying to start minetest sometimes |
18:41 |
hmmmm |
pilzadam, that could be a general memory corruption problem |
18:41 |
hmmmm |
not necessarily an emergethread problem |
18:41 |
hmmmm |
when did you start getting that? |
18:42 |
PilzAdam |
today |
18:42 |
hmmmm |
i didn't make any changes to that |
18:42 |
hmmmm |
sounds like a run through valgrind is warranted |
18:42 |
sapier |
may be the async bug I'm hunting down atm |
18:44 |
sapier |
at least if it happens close to start |
19:07 |
|
bas080 joined #minetest-dev |
19:10 |
thexyz |
sfan5: have you fixed the issue? |
19:10 |
sfan5 |
no |
19:10 |
sfan5 |
I was away |
19:11 |
thexyz |
then please do <3 |
19:11 |
thexyz |
just replace by usleep and fix timings (usleep takes milliseconds) |
19:11 |
thexyz |
and then fix my #ifdef hack too |
19:12 |
sapier |
time in there isn't important it' just to avoid the waiting thread block the thread waited for |
19:13 |
|
NakedFury joined #minetest-dev |
19:19 |
sapier |
not by now |
19:20 |
sapier |
for some strange reason it's gone again |
19:27 |
sapier |
I added 4 threads, each one starting a whole lua env... this adds a lot of memory operations ... two options either I added additional errors or I trigger errors that have already been there but have crashed way more rare |
19:31 |
hmmmm |
the thing that sapier wanted to add in right before 0.4.8 |
19:31 |
sapier |
Yes I admit you've been right ;-) |
19:32 |
hmmmm |
i'd be much happier if i were wrong though |
19:32 |
hmmmm |
well it's not like it matters, i don't think anybody is going to think "ah yes, i'm going to pull the volatile, development version of minetest just after a release and expect it to be perfect" |
19:33 |
sapier |
ok that has been better |
19:39 |
|
djdduty joined #minetest-dev |
20:04 |
ShadowNinja |
What do you think of removing the rollback priv requirement from rollback_check? With SQLite rollback it completes nearly instantly. |
20:06 |
sapier |
ok I think I got it |
20:07 |
sapier |
log_register_thread/log_deregister_thread are called from different threads working on same std::map without any protection |
20:09 |
hmmmm |
YEAH |
20:10 |
hmmmm |
I was going to add a mutex for that but I forget why I didn't |
20:10 |
sapier |
does anyone know why JMutex isn't initialized in constructor? |
20:11 |
nore |
ShadowNinja, could be good |
20:11 |
sapier |
there's no init log function right now so I need to add it just to do something that I think should be done in constructor |
20:12 |
|
Calinou joined #minetest-dev |
20:13 |
sapier |
I guess this bug is another one that caused sporadic minetest crashes |
20:13 |
ShadowNinja |
http://strawpoll.me/796666 |
20:13 |
|
OldCoder joined #minetest-dev |
20:14 |
hmmmm |
erm, i don't think threads ended before your async thing |
20:14 |
hmmmm |
which is why I figured it was okay to leave it deregistered |
20:14 |
hmmmm |
leave deregister unprotected i mean |
20:14 |
sapier |
didn't threads shutdown on leaving to menu? |
20:14 |
|
smoke_fumus joined #minetest-dev |
20:14 |
hmmmm |
erm doesn't that thread turn into the_game()? |
20:15 |
hmmmm |
oh leaving to menu |
20:15 |
hmmmm |
yeah, they shutdown in a synchronized manner though |
20:15 |
sapier |
so pure luck ;-) |
20:16 |
|
jin_xi joined #minetest-dev |
20:17 |
sapier |
seems to be right idea to add async to mainmenu first and delay merge to scriptapi to a later version :-) |
20:18 |
|
jordach joined #minetest-dev |
20:20 |
|
bas080 joined #minetest-dev |
20:20 |
sapier |
john try this one https://github.com/minetest/minetest/pull/1028 |
20:21 |
|
jin_xi joined #minetest-dev |
20:23 |
hmmmm |
you're going to fix all of the other JMutex objects now, right |
20:24 |
hmmmm |
oh you just noop it |
20:27 |
nore |
sapier, I don't know if it is the same bug: when pressing Enter to join a server, crash, when pressing the "Connect" button, no crash |
20:33 |
sapier |
yes hmmmm I know all of them should be fixed but I'm to lazy right now |
20:39 |
|
Taoki joined #minetest-dev |
20:47 |
|
Fury joined #minetest-dev |
21:00 |
|
OWNSyouAll_DESKT joined #minetest-dev |
21:20 |
|
sapier joined #minetest-dev |
21:20 |
ShadowNinja |
sapier: See logs. |
21:21 |
sapier |
thanks john |
21:22 |
Jordach |
has anyone seen this as of 0.4.8-dev: 21:17:34: ERROR[main]: TextureSource::generateTextureFromMesh(): addRenderTargetTexture returned NULL. |
21:25 |
|
AllegedlyDead joined #minetest-dev |
21:28 |
|
Jordach joined #minetest-dev |
21:38 |
sapier |
no john old one did have that bug too it's pure chance it didn't happen |
21:39 |
sapier |
that's what happens if you don't do thread safe programming while using multiple threads ... bugst come and go depedent on various random things |
21:39 |
sapier |
-t |
21:47 |
sapier |
anyone to agree to 1028? |
21:52 |
|
john_cephalopoda joined #minetest-dev |
21:54 |
sapier |
0.4.7 did have that bug too |
21:55 |
sapier |
it's just the difference between bug beeing in and bug causing damage in 0.4.7 that bug could only cause damage if you did close a game leaving to menu |
21:56 |
sapier |
guess most people did exit in this case anyway |
22:11 |
ShadowNinja |
PONG |
22:12 |
ShadowNinja |
I can add that to my bot, but some might find it annoying. ;-) |
22:12 |
sapier |
Shadow are you fine with 1028? |
22:13 |
ShadowNinja |
I'm fine with it as long as it works. Although I wonder why he moved those things from ::Init() and why it still exists. |
22:13 |
sapier |
it's been me ;-) because I didn't want to touch code everywhere throughout minetest |
22:14 |
sapier |
and I moved it because there's no sane reason to create a mutex without initializing it |
22:14 |
sapier |
if this is done in constructor it can't be forgotten |
22:14 |
ShadowNinja |
sapier: Alright, it looks good then. |
22:17 |
|
NakedFury joined #minetest-dev |
22:17 |
sfan5 |
ShadowNinja: ShadowBot isn't even here |
22:17 |
sapier |
pushing now |
22:17 |
ShadowNinja |
sfan5: I know that. |
22:26 |
celeron55 |
sapier: it would be a good idea to abort() if mutex initialization fails |
22:26 |
sapier |
true |
22:26 |
celeron55 |
also your windows implementation obviously doesn't build |
22:26 |
celeron55 |
you can't return from a constructor |
22:26 |
celeron55 |
a value, i mean |
22:27 |
sapier |
couln't you have said that some minutes ago? :-) |
22:27 |
celeron55 |
i wasn't here some minutes ago; but maybe you could've double checked |
22:28 |
sapier |
If I had seen it I wouldn't have merged it... |
22:29 |
sapier |
is assert available in windows? |
22:30 |
thexyz |
^ being THAT unsure about what's available on windows |
22:31 |
sapier |
do you know when I did program seriously on windows last time? |
22:32 |
thexyz |
well you can look up some C++ standard or something, I think assert is defined there |
22:32 |
sapier |
lol ... standard ... |
22:32 |
sapier |
microsoft .... |
22:32 |
thexyz |
yes of course joking about standards and microsoft is fun but on the other hand thinking that assert is not available somewhere is just meh |
22:33 |
kahrl |
we define assert ourselves in debug.h |
22:33 |
kahrl |
but it needs the debug streams to be initialized iirc |
22:33 |
sapier |
guess what it's not there in jmutex.cpp |
22:33 |
sapier |
not even on linux |
22:33 |
thexyz |
what? |
22:34 |
sapier |
header isn't included |
22:35 |
sapier |
last time I included a standard header <unistd.h> ... that was wrong ... hope I'm free to include <assert.h>? |
22:35 |
thexyz |
because it's not standard |
22:35 |
thexyz |
(talking about c++ standard here) |
22:36 |
thexyz |
right? |
22:36 |
sapier |
talking about what is commonly used ... but I guess you know if assert.h is standard or not ... I don't |
22:37 |
thexyz |
yes, or I use google if not sure |
22:38 |
celeron55 |
sapier: you probably want to use minetest's debug.h's ASSERT() |
22:39 |
sapier |
by now jthread is a little bit separated if I do that it's finaly completely merged |
22:39 |
celeron55 |
it aims to log a reasonable error in all builds |
22:39 |
celeron55 |
(and abort after that) |
22:39 |
kahrl |
<kahrl> but it needs the debug streams to be initialized iirc <--- that's a problem |
22:39 |
kahrl |
since sapier wants to call it from a static initializer |
22:40 |
celeron55 |
oh, yeah that's actually true |
22:42 |
|
emptty1 joined #minetest-dev |
22:42 |
sapier |
ok as assert.h seems to be part of standard c library and microsoft claims to support standard c library I guess using <assert.h> is fine |
22:44 |
emptty1 |
Hello. Here is a project I'd love to do in minetest: https://www.youtube.com/watch?v=AuqRGEXznfQ |
22:45 |
|
Miner_48er joined #minetest-dev |
22:46 |
iqualfragile |
emptty1: well: have fun |
22:47 |
thexyz |
sapier: i think you're supposed to use cassert actually but that doesn't matter anyway |
22:47 |
sapier |
https://github.com/minetest/minetest/pull/1029 |
22:48 |
sapier |
assert doesn't work? |
22:48 |
thexyz |
it works of course |
22:49 |
thexyz |
but I think you should prefer cassert because you're writing in C++ |
22:49 |
kahrl |
assert.h et al. are in the "deprecated" section of the C++ standard |
22:49 |
kahrl |
but they won't go away any time soon |
22:50 |
|
bas0801 joined #minetest-dev |
22:51 |
kahrl |
sapier: could "initialized" be removed? |
22:52 |
sapier |
I think so |
22:52 |
sapier |
complete cleanup of jmutex? |
22:57 |
kahrl |
I think the interface should stay compatible |
22:57 |
kahrl |
does anything need to be cleaned up? |
22:58 |
sapier |
adding asserts to all functions removing initialized ... moving event to separate files instead of polluting jmutex header is an option too |
22:59 |
kahrl |
sounds fine if you want to do it |
22:59 |
sapier |
I can do it now but I wont do this part now and in half an hour someone says ... oh now it'd be nice to do that too ;-) |
23:01 |
|
Miner_48er joined #minetest-dev |
23:10 |
VanessaE |
is anyone gonna fix the problem with random skin glitches soon? |
23:12 |
VanessaE |
(where sometimes a player ends up with the old "green guy" image wrapped around the current 3d model) |
23:13 |
sapier |
sometimes is a little bit hard to debug |
23:13 |
Miner_48er |
how many servers are experiencing this? |
23:14 |
VanessaE |
no idea how many - this started right after the player.lua rewrite |
23:16 |
thexyz |
celeron55: can you please disable password reset on the minetest.net wiki? |
23:22 |
sapier |
https://github.com/minetest/minetest/pull/1029 I removet Init completely |
23:22 |
sapier |
-t+d |
23:24 |
sapier |
does anyone have issues with removing trailing whitespaces? I ask again! don't complain afterwards! |
23:30 |
NakedFury |
do it |
23:36 |
celeron55 |
thexyz: done; i've actually got a couple of password re-send emails initiated by someone else too |
23:37 |
celeron55 |
probably some kids being idiots |
23:45 |
sapier |
great I can't even test win32 build because it's broken mutliple ways |
23:50 |
sapier |
whoever did ipv6 addons those aren't compatible to mingw |