Time |
Nick |
Message |
00:23 |
|
Miner_48er joined #minetest-dev |
00:36 |
|
eeew joined #minetest-dev |
00:41 |
|
sapier joined #minetest-dev |
00:54 |
|
domtron joined #minetest-dev |
01:17 |
|
domtron joined #minetest-dev |
01:46 |
|
werwerwer_ joined #minetest-dev |
02:48 |
|
domtron joined #minetest-dev |
03:09 |
|
Miner_48er joined #minetest-dev |
04:25 |
|
ImQ009 joined #minetest-dev |
04:42 |
|
SmugLeaf joined #minetest-dev |
05:26 |
|
robmyers joined #minetest-dev |
05:59 |
|
nore joined #minetest-dev |
06:17 |
|
salamanderrake joined #minetest-dev |
07:07 |
|
PenguinDad joined #minetest-dev |
07:16 |
|
troller joined #minetest-dev |
07:43 |
|
proller__ joined #minetest-dev |
07:46 |
|
Calinou joined #minetest-dev |
07:48 |
|
domtron joined #minetest-dev |
08:06 |
|
khonkhortisan joined #minetest-dev |
08:14 |
|
domtron joined #minetest-dev |
08:48 |
|
khonkhortisan joined #minetest-dev |
08:50 |
|
domtron joined #minetest-dev |
09:08 |
|
Selat joined #minetest-dev |
09:10 |
Selat |
Can you just add Belarusian translation? https://github.com/minetest/minetest/pull/1161. |
09:51 |
|
RealBadAngel joined #minetest-dev |
09:59 |
|
Calinou joined #minetest-dev |
10:11 |
xyz |
~tell sapier address sanitizer will only work on full-eng android builds |
10:11 |
ShadowBot |
xyz: O.K. |
10:20 |
|
jin_xi joined #minetest-dev |
10:24 |
|
Taoki joined #minetest-dev |
10:25 |
Selat |
So what about translation? |
10:25 |
pitriss |
Selat: someone told me that translations are possible only by website and translation pull request won't be accepted when i asked about czech one. |
10:26 |
Selat |
To add translation to the web site I have to send pull request. |
10:26 |
Selat |
It' new translation. |
10:26 |
Selat |
Not modification of existed one. |
10:26 |
pitriss |
Selat: no.. they told me that i need to translate it using weblate.. |
10:26 |
Selat |
*existing |
10:27 |
Selat |
It just adds empty file for translation. |
10:27 |
Selat |
I already sent two requests by weblate. |
10:28 |
pitriss |
This can be also done by weblate then.. no need for pull request.. |
10:29 |
Selat |
xyz: So still I need to send a pull-requestt? |
10:30 |
pitriss |
Ask someone here to create it and wait. Just be patient... Devs are busy often..:) |
10:39 |
Selat |
Can anybody add file po/by/minetest.po or merge this pull https://github.com/minetest/minetest/pull/1161? |
10:42 |
xyz |
pitriss: no this can't please don't tell people stuff you're not sure about |
10:42 |
pitriss |
xyz: I am sure what someone here told me:) |
10:42 |
xyz |
pitriss: I'm now telling you you can't do that from weblate interface |
10:43 |
pitriss |
This was main reason why i give up with trying to translate:) |
10:43 |
xyz |
pitriss: you can translate but you can't create a new language, what's not clear here? |
10:44 |
pitriss |
xyz: I see that I can't do.. This was did by some mod here.. |
10:44 |
xyz |
what do you mean? |
10:44 |
xyz |
nobody can create new translation from weblate interface |
10:44 |
xyz |
you need to do that manually, then import them (by updating weblate's git clone) |
10:44 |
pitriss |
I mean that empty languages was everytime I mentiooned that by some staff here |
10:45 |
pitriss |
*was created |
10:45 |
xyz |
meh, I'm too lazy to explain this once again; just don't tell people stuff you know nothing about, okay? |
10:45 |
xyz |
one time more, you can't create new languages from weblate interface |
10:47 |
pitriss |
I understand.. But ypi don't understand fact that someone here told me that *NO* pull request from ppl will be applied.. |
10:47 |
pitriss |
*you |
10:47 |
pitriss |
if it is about translation |
10:47 |
pitriss |
So i only told what i read here when I'm asked. |
10:47 |
pitriss |
*eh I was asking.. |
10:48 |
xyz |
they probably meant that about pull request that modify existing translation, not add new |
10:48 |
pitriss |
My english skills sucks today, sorry |
10:49 |
xyz |
also I think it's bad that they just close them without, i.e. adding those translations to weblate; but that's another question |
10:49 |
pitriss |
Maybe.. But they told me general *No* to translation pull requests.. There was no exception for empty ones. |
11:15 |
|
Jordach joined #minetest-dev |
11:52 |
|
tomreyn joined #minetest-dev |
12:09 |
|
PilzAdam joined #minetest-dev |
12:15 |
|
cj joined #minetest-dev |
12:25 |
|
rsiska joined #minetest-dev |
12:27 |
|
e1z0 joined #minetest-dev |
12:35 |
|
iqualfragile joined #minetest-dev |
12:44 |
|
salamanderrake joined #minetest-dev |
13:03 |
|
__1__0 joined #minetest-dev |
13:03 |
__1__0 |
hello |
13:14 |
__1__0 |
there are ? |
13:17 |
__1__0 |
i would like to reoganise the gui in the game, i must modify source code or create a mode ? |
13:21 |
xyz |
what gui? main menu or? |
13:22 |
__1__0 |
backpack,selection of items |
13:23 |
__1__0 |
table's crafting |
13:28 |
xyz |
that you can modify with mods |
13:29 |
__1__0 |
=) in lua =) |
13:30 |
__1__0 |
i love the idea |
13:51 |
|
__1__0 left #minetest-dev |
14:00 |
|
PenguinDad joined #minetest-dev |
14:19 |
|
domtron_ joined #minetest-dev |
14:20 |
|
sapier joined #minetest-dev |
14:20 |
sapier |
xyz isn't emulator version a full-eng build? |
14:21 |
xyz |
dunno but if you're running it on emulator you have a more important problem |
14:22 |
sapier |
I try both ... emulator doesn't handle texture correct, no idea why |
14:22 |
xyz |
because it's a fucking emulator |
14:22 |
xyz |
I'm surprised you expect it to work |
14:23 |
xyz |
even if it does it's damn slow |
14:23 |
sapier |
for what I know emulators usually work ... while beeing extremely slow but thats not a functional problem |
14:24 |
xyz |
no they usually don't |
14:25 |
sapier |
well then you use wrong emulator ;-) |
14:25 |
xyz |
based on my experience with virtualbox, vmware, qemu, bochs and maybe something more |
14:25 |
sapier |
or you use them for something emulators are not suitable for |
14:25 |
xyz |
see, that's what you're doing |
14:26 |
xyz |
nice you figured it out yourself |
14:26 |
xyz |
but you really aren't supposed to run a 3d app on android emulator |
14:26 |
sapier |
maybe but ogles is quite limited so I expected it to be translatable or even doable in software |
14:26 |
xyz |
and then complain that textures aren't working or whatever |
14:27 |
xyz |
what's the problem then? |
14:27 |
sapier |
none I just wonder if there are devices out there having same issues as emulator |
14:27 |
xyz |
just build full eng rom for your device if you want to use clang address sanitizer (why, again?) |
14:27 |
sapier |
e.g. like the npot problem |
14:27 |
xyz |
there surely will be, considering how many devices are out there |
14:27 |
xyz |
it's not a problem |
14:28 |
xyz |
it's something you just fucking know, ogles1 can't handle npot textures |
14:28 |
sapier |
I don't root this devices as it'd be useless for it's main purpose, test what user will experience |
14:28 |
xyz |
it's written in docs everywhere |
14:28 |
|
domtron joined #minetest-dev |
14:28 |
xyz |
and you don't even need to know anything about it since Irrlicht's supposed to handle it for you |
14:29 |
sapier |
xyz you're wrong about it, it's not related to ogles but to the device there are devices out there who can handle npot textures in ogles1 mode |
14:29 |
sapier |
well I guess there ain't anything like ogles1 mode |
14:29 |
xyz |
sapier: yes but you shouldn't rely on it |
14:29 |
xyz |
sapier: where? |
14:30 |
sapier |
my dad's huawei device supports npot texutes out of box |
14:30 |
xyz |
that's nice |
14:30 |
xyz |
now what? |
14:30 |
sapier |
that's why it took some time to find out what's wrong ;-) |
14:30 |
xyz |
what's wrong where? |
14:31 |
sapier |
minetest icon is missing in credits ;-) |
14:31 |
sapier |
it's 100x100 |
14:32 |
xyz |
ah it's bad |
14:33 |
xyz |
you can run some opengles tracer and maybe it'll report those issues |
14:33 |
sapier |
ok there's only one major problem on my list ... performance on vanessaE's spawn, I fixed the menu problem by replacing pause as well as chat menu by formspec based ones. this even removes a lot of code |
14:34 |
xyz |
so where's your code? |
14:34 |
sapier |
the android_cherry_picks branch on my repo |
14:34 |
sapier |
still not completed, I plan to extract the non android related fixes and create pull requests for them first |
14:36 |
sapier |
e.g. pause/chat menu replacement |
14:49 |
xyz |
ugh |
14:50 |
xyz |
what NDK version do you use btw? |
14:50 |
sapier |
latest |
14:50 |
xyz |
r9c? |
14:50 |
sapier |
yes |
14:50 |
xyz |
strange |
14:51 |
sapier |
what exactly are you talking about ? the wchar issue? |
14:51 |
xyz |
yes, maybe |
14:53 |
sapier |
well that one is really strange for what I read latest android versions support wchars ... maybe it's related to the target version |
14:54 |
xyz |
wtf is CALCDELTA by the way? |
14:54 |
xyz |
can't say I love those changes to touchscreengui.cpp |
14:55 |
sapier |
calculate delta handle overflows |
14:55 |
sapier |
I'm not surprised ;-) |
14:56 |
xyz |
yes, why's that a macro? |
14:56 |
xyz |
and why aren't you surprised? |
14:56 |
sapier |
I guess it's more a rewrite then a change |
14:57 |
xyz |
yeah and I think it got worse but whatever |
14:57 |
sapier |
bad habit of using macros for some recurrent things |
14:57 |
xyz |
a rewrite which made it 3x the size, well |
14:57 |
sapier |
worse in what direction? |
14:57 |
sapier |
on the other hand I don't need that much changes in irrlicht |
14:58 |
xyz |
there's now too much code |
14:58 |
xyz |
what changes are you talking about? |
14:58 |
sapier |
and I do handle digg and place events without using special buttons in gui |
14:58 |
|
rubenwardy joined #minetest-dev |
14:58 |
xyz |
I do too, now what? |
14:58 |
sapier |
it's 1000 lines 300 dead ... so it's not mutch |
14:59 |
xyz |
ok twice as much, but what's the benefit? |
14:59 |
sapier |
it fit's minetests core architecture |
14:59 |
xyz |
you skipped my question |
15:00 |
sapier |
but what's the benefit --> it fit's minetests core architecture |
15:00 |
xyz |
also you should probably remove the copyright |
15:00 |
xyz |
yes but you skipped another one |
15:00 |
xyz |
not the first time though |
15:00 |
rubenwardy |
Let's troll freeminer by changing Minetest upstream so much, they can not auto merge! |
15:00 |
sapier |
oh true ... as I said it's work in progress ;-) coypright notices are very last to fix ;-) |
15:01 |
sapier |
rubenwardy I wont stop developing minetest in order to make live of freeminer easy ;-P |
15:01 |
xyz |
rubenwardy: they've done that already |
15:01 |
xyz |
sapier: please do |
15:01 |
xyz |
also please answer my question |
15:01 |
xyz |
<sapier> on the other hand I don't need that much changes in irrlicht |
15:01 |
xyz |
<xyz> what changes are you talking about? |
15:01 |
rubenwardy |
sapier, I wasn't meaning what you were doing |
15:02 |
sapier |
last time I did look at irrlicht patch it contained some more code then the one I use now ... of course that's been 2 weeks ago |
15:03 |
xyz |
this doesn't explain anything |
15:03 |
sapier |
and rubenwardy I wont change code for reason of trolling for sure ... sound crazy to risk bugs for something like that |
15:03 |
rubenwardy |
:P |
15:03 |
xyz |
what code did you remove? |
15:03 |
xyz |
from the patch |
15:04 |
sapier |
xyz basicaly the touchscreengui has grown out of effort to merge stu's and yours, while i tried to fix them I realized it doesn't fit minetest architecture |
15:05 |
sapier |
and it's not yet complete so maybe there's some useless code in there too |
15:06 |
sapier |
e.g. those hundreds of lines defining names for debug output |
15:06 |
xyz |
we'll see |
15:07 |
sapier |
I guess in the end this will be about 500 lines of code |
15:11 |
|
Taoki[laptop] joined #minetest-dev |
15:11 |
xyz |
this sadly still doesn't mean much |
15:11 |
xyz |
what if it's 500 lines of those CALCDELTA-tier stuff |
15:13 |
sapier |
lol I know why I didn't want to push the wip code ;-P |
15:13 |
|
hmmmm joined #minetest-dev |
15:13 |
xyz |
no worries, I'll find things to complain about either way |
15:14 |
sapier |
I know :-) and some of them are valuable too .. that's what review is for |
15:14 |
sapier |
I'll replace the calcdelta by a inline fct |
15:15 |
sapier |
or do you know about a existing function doing same? |
15:16 |
xyz |
of course, just subtract them |
15:16 |
xyz |
converted to int |
15:16 |
harrison |
CYGNUS INTER ANATES |
15:18 |
sapier |
sure this will work on 32 as well as 64 bit and 128 bit too? |
15:19 |
xyz |
lel |
15:19 |
xyz |
sure you need that much precision when comparing double clicks and stuff |
15:19 |
xyz |
wait, it's not precision but you get the point |
15:20 |
sapier |
at least getTimeMs is u32 input so this may already fail on 64 bit |
15:20 |
|
proller joined #minetest-dev |
15:21 |
sapier |
overflow wont cause precision failure but detection just wont work |
15:21 |
sapier |
effectivly loosing event |
15:21 |
sapier |
s |
15:21 |
xyz |
perhaps |
15:22 |
sapier |
of course that way is the "I just want to be really really sure" version ;-) |
15:22 |
xyz |
too bad it still won't work in certain cases |
15:23 |
sapier |
can you be more precise about the "certain cases"? |
15:23 |
xyz |
getTimeMs overflows too |
15:23 |
xyz |
your way of calculating delta is strange |
15:24 |
xyz |
surely you know that one event happened before another yet you don't take this into account |
15:25 |
sapier |
true ... ok delta calc is something I often get wrong .. true |
15:25 |
xyz |
so why even do it like this if it won't work correctly anyway if event that happened later has overflown u32 |
15:25 |
sapier |
so fi c you know how to fix it your help is welcome |
15:26 |
sapier |
-c -fi +if |
15:26 |
xyz |
I don't think there's a real need to fix anything, just replace this macro with "delta = getTimeMs() - whatever" |
15:26 |
sapier |
well I know there IS a way to handle "single" overflows |
15:27 |
xyz |
of course |
15:27 |
xyz |
and there should be a function written which computes difference between two moments in time |
15:27 |
xyz |
returned by getTimeMs |
15:28 |
sapier |
well imho this function should handle overflows correct too ... there's various cases where you need the delta between two time ms values |
15:29 |
sapier |
guess it should be in porting so different 32/64/128 bit can be handled correct |
15:34 |
Selat |
ыфзшукЖ црн нщг гыу ьуьыуе, |
15:34 |
Selat |
sapier: why you use memset? |
15:36 |
sapier |
to ensure there ain't garbish in there |
15:37 |
sapier |
I know I could skip the explicit setting of some fields done later |
15:37 |
xyz |
surely c++ is a hard language |
15:38 |
Selat |
And why constructor is not suitable for such stuff? |
15:38 |
sapier |
because it's a struct |
15:38 |
Selat |
mm... struct = class with public by default. |
15:39 |
sapier |
well ask irrlicht why they don't clean their fields |
15:39 |
sapier |
I just know they don't because I had quite some issues with uninitialiued memory in that struct |
15:39 |
xyz |
if it's pod then just do SEvent something = {0} |
15:40 |
sapier |
and where's the difference? |
15:40 |
xyz |
if it's not pod and you're doing memset ;_; |
15:40 |
xyz |
1 line of code |
15:40 |
sapier |
you may have realized it's allocated with new |
15:41 |
xyz |
uh uh? |
15:41 |
xyz |
what do you mean? |
15:41 |
Selat |
But it deleted in the same block. |
15:41 |
Selat |
Why you don't want to use stack variables? |
15:41 |
sapier |
you know we're quite low on stack memory on android? |
15:42 |
sapier |
and pthread just ignores your request for more memory |
15:42 |
hmmmm |
but how do you *know* that |
15:42 |
hmmmm |
you should check with getrlimit and be sure |
15:42 |
sapier |
because I tested |
15:43 |
Selat |
Than maybe it's better to use static variable? |
15:43 |
sapier |
and allocating won't fail if you have more stack so why use two different sets of code dependent on available stack memory |
15:43 |
hmmmm |
because one is typically faster than the other |
15:43 |
sapier |
might cause issues if you happen to call that function recursive |
15:43 |
xyz |
surely stack will be brutalized by 1 SEvent variable |
15:43 |
hmmmm |
well SEvent might be big |
15:45 |
Selat |
And of course there is a big chance of using recursion in isHUDButton or other events. |
15:45 |
sapier |
I know allocating isn't fastest thing to happen but it's done on user interaction so we're in slow code anyway |
15:45 |
sapier |
I guess worst recursion level is 2 but SEvent isn't a small thing |
15:46 |
sapier |
and 2 is enough to make a static version fail |
15:46 |
Selat |
But you are not going to use recursion in such simple methods. So static will be faster. |
15:46 |
hmmmm |
isn't the rule of thumb to not go more than 5 levels of recursion on embedded platforms? |
15:46 |
sapier |
well I use recursion there as it's passing that event back to it's caller |
15:46 |
xyz |
android is now embedded platform |
15:47 |
sapier |
as I said I expect worst to be 2 but that's enough to render static variant useless |
15:47 |
sapier |
https://gist.github.com/sapier/9308353 is this variant of calculating 32bit difference correct? |
15:48 |
hmmmm |
int foo(blah, int recursion_level) { if (recursion_level > MAX_RECURSION) { dstream << blah blah blah ; return 0; } ... foo(blah->whatever, recursion_level + 1); } |
15:48 |
hmmmm |
you should use UINT32_MAX |
15:48 |
sapier |
I can't change the function signature |
15:48 |
Selat |
sapier: in what function you use recursion? |
15:49 |
sapier |
OnEvent -> translate (using the SEvent) -> OnEvent ... right now there's no situation (I know about) where a translated event has to be translated again ... but I can't guarantee |
15:49 |
|
ImQ009 joined #minetest-dev |
15:50 |
hmmmm |
anyway yeah getDeltaMs looks good in that paste |
15:50 |
sapier |
And I don't think using static variables as stack variable replacement is good style |
15:50 |
hmmmm |
or, of course, you could just make a getDeltaMs64 version |
15:51 |
hmmmm |
for Windows they have GetTickCount64() |
15:51 |
sapier |
argh ... I didn't expect to open up a issue that big for time calculation ... I was wrong |
15:51 |
hmmmm |
but i think that might be >= vista only |
15:52 |
hmmmm |
yeah, it is.... nevermind |
15:54 |
Selat |
sapier: I can't find call to translateEvent in TouchScreenGUI::translateEvent. |
15:56 |
Selat |
ok, I understand |
16:03 |
|
zat joined #minetest-dev |
16:31 |
sapier |
great ... u32 is typedefd to unsigned it |
16:32 |
sapier |
why does anyone create a bitwidth datatype if it's just ignored at all |
16:36 |
xyz |
lol |
16:36 |
|
Calinou joined #minetest-dev |
16:36 |
hmmmm |
i suppose the reason is for compatibility with platforms that lack POSIX conformance, and the idea is to replace that platform specific header file with the one for the appropriate arch |
16:37 |
xyz |
cstdint to the rescue |
16:38 |
sapier |
possible but results in effect you can't rely on overflow behaving as overflow |
16:39 |
hmmmm |
it is pretty bad that they provide "uNN" types but they don't provide uNN_MAX macros |
16:39 |
xyz |
so, since we're already using c++11 anyway |
16:39 |
xyz |
why not use types from cstdint? |
16:39 |
hmmmm |
we're not using C++11 |
16:39 |
xyz |
woah woah woah look |
16:39 |
xyz |
I was quite sure the other day I saw something from c++11 |
16:39 |
sapier |
msvc isn't c++11 capable |
16:40 |
hmmmm |
the last attempt to push C++11 that i'm aware of failed |
16:40 |
xyz |
sapier: we don't have to use all c++11 features, just those that work reliably |
16:41 |
xyz |
what if I told you snprintf is C++11? |
16:42 |
sapier |
true but do you wanna discuss each time someone uses a feature again about this feature is supported? You know how eager everyone is about testin on all supported platforms |
16:42 |
xyz |
yet no one seems to discuss anything |
16:42 |
hmmmm |
snprintf() is supported by implementations earlier than C++11 though |
16:42 |
sapier |
yes because right now we have rule no c++11 |
16:43 |
xyz |
sapier: smart people have already discussed many features and made charts showing what we can use and what we can't |
16:43 |
sapier |
at least as long as we support msvc |
16:43 |
hmmmm |
and older gccs |
16:43 |
xyz |
sapier: if we have no-c++11 rule please replace snprintf with something |
16:43 |
hmmmm |
if it doesn't compile on my machine, i'd say that's a big problem |
16:43 |
xyz |
otherwise it's double thinking |
16:43 |
xyz |
hmmmm: what's your gcc version? |
16:43 |
hmmmm |
4.2.2 |
16:43 |
xyz |
and why's that a big problem? |
16:44 |
xyz |
it's your problem, don't you think? |
16:44 |
hmmmm |
it doesn't support C++11 |
16:44 |
xyz |
yes |
16:44 |
xyz |
still, it shouldn't be our problem |
16:44 |
hmmmm |
.... |
16:44 |
hmmmm |
so are you also going to claim that supporting MSVC isn't "our" problem either? |
16:44 |
hmmmm |
who is "your" anyway? freeminer? |
16:44 |
xyz |
alright, alright |
16:45 |
sapier |
what's benefit of switching to c++11 anyway? |
16:45 |
hmmmm |
look if you want to go break shit, go do it in your own project, not minetest |
16:45 |
xyz |
well, I see |
16:45 |
sapier |
is there anything which can be done WAY BETTER in c++11? |
16:45 |
hmmmm |
sapier: not really. i suppose iterator assignments. |
16:45 |
hmmmm |
they repurposed the auto keyword for C++11 |
16:46 |
xyz |
and you'll try to stop c++11 just because it doesn't work with your 5-years old compiler on your PC, fine |
16:46 |
xyz |
that's reasonable |
16:47 |
sapier |
xyz I don't recall the reason for switching to c++11 can you tell me? |
16:47 |
hmmmm |
why don't you just go use GetTickCount64() instead of detecting overflow in GetDeltaMs and drop Windows XP support because nobody uses that anyway |
16:47 |
hmmmm |
dropping support is just wrong |
16:48 |
xyz |
no, people do use winxp |
16:48 |
hmmmm |
switch to C++11, and you'll break support for FreeBSD earlier than 10 |
16:49 |
xyz |
oh that's so bad |
16:49 |
hmmmm |
xyz, what's your platform? |
16:50 |
xyz |
hmmmm: my platform contains a compiler that's not 5 years old |
16:50 |
xyz |
it's good enough |
16:50 |
hmmmm |
yeah well your platform is shit. we'll drop support for it. |
16:50 |
hmmmm |
my opinion > your opinion |
16:50 |
proller |
freebsd 9 have gcc 4.9 |
16:50 |
xyz |
sapier: simple stuff, like auto keyword, range-based for loops, maybe more stuff later |
16:50 |
hmmmm |
....it doesn't. you add in a huge 3rd party additional dependency |
16:50 |
proller |
in ports, or clang |
16:50 |
xyz |
just some basic convenience |
16:51 |
sapier |
hmmmm our porting layer only provides the ms functions only and I don't wanna use os specific functions in non porting code |
16:51 |
hmmmm |
none of those things are good enough reasons to break msvc and older gccs |
16:51 |
proller |
most world will switch to freebsd 10 in next 6-9 months |
16:51 |
xyz |
it doesn't break msvc though |
16:51 |
hmmmm |
sapier, i was being sarcastic |
16:52 |
sapier |
xyz I didn't miss any of those features yet, I know they're good for specific usecases but are they worth it (right now)? |
16:52 |
hmmmm |
none of them are worth it..... we already had this discussion with hdastwb on the forum |
16:52 |
hmmmm |
(i think that's his username) |
16:53 |
sapier |
usually we get those issues on switching platforms e.g. android, sailfish or whatever ... those often don't support latest code |
16:53 |
xyz |
sapier: as I said, that's just convenience |
16:53 |
xyz |
same for fixed size int types |
16:53 |
sapier |
btw using isdigit in settings is a (small) problem too ;-) irrlicht has a function named same |
16:54 |
proller |
irrlicht HUGE depency too, and xorg, and.. |
16:54 |
sapier |
I'm absolutely positive about the int types but I don't wanna do the work of chaning everything ;-) any volonteers? |
16:56 |
sapier |
SEvent translated = {0}; doesn't work |
16:57 |
xyz |
changing what? |
16:57 |
sapier |
error: invalid conversion from 'int' to 'irr::EEVENT_TYPE' [-fpermissive] |
16:57 |
hmmmm |
the idiomatic C++ way to do that is to call the constructor with all fields zero (yuck :\) |
16:57 |
ShadowNinja |
One of C++11's main advantages is Rvalues. |
16:57 |
sapier |
of course I'm gonna add a 500 lines initializer ;-) |
16:58 |
ShadowNinja |
It allows you to move objects rather that copying them and destroying the old one. |
16:58 |
ShadowNinja |
Which should make containers like std::map faster. |
16:59 |
ShadowNinja |
I believe the server requires Irrlicht. What does it need it for? |
16:59 |
sapier |
I'm sure c++11 has some nice features ... it wouldn't have made sense to write it if it didn't ;-) but as long as we support platforms without c++11 support we can't switch |
16:59 |
sapier |
primary datatypes ShadowNinja ... don't ask, historic reasons |
17:00 |
ShadowNinja |
u8, s8, u16, etc can be replaced with uint8_t, int8_t, uint16_t, etc. Or can be typedef'd. |
17:00 |
sapier |
NO TYPEDEFING for things like that |
17:00 |
ShadowNinja |
sapier: What? |
17:00 |
xyz |
sapier: what are those platforms? hmmmm's pc? |
17:00 |
sapier |
you'll end up in not knowing anything about the type you have right now |
17:00 |
celeron55 |
ShadowNinja: the server uses irrlicht's types like vectors |
17:01 |
ShadowNinja |
I meant "typedef uint8_t u8;" and the like. |
17:01 |
sapier |
which have been replaced by std ones ... or did we miss some of them? |
17:01 |
ShadowNinja |
celeron55: So, not all of the code uses STL containers? |
17:01 |
sapier |
the clean way is greping and replacing all u8 by uint8_t |
17:01 |
sapier |
this way you stop ppl from copy n pasting the wrong types too |
17:02 |
ShadowNinja |
<cstdint> is apparently C++11-only. So we'll have to use <stdint.h> for a while. |
17:03 |
sapier |
xyz any platform a dev in here uses is supported ;-) ... at least that's what I have realized ;-) |
17:03 |
celeron55 |
i like c++11; i use auto, the new for loop and lambas, initializer lists and non-static direct class member initializers a lot in new code i write |
17:03 |
xyz |
and stdint.h is c99 |
17:03 |
sapier |
didn't they deprecate the non ".h" things ? |
17:03 |
celeron55 |
it's like a whole new language with all that stuff |
17:03 |
hmmmm |
instead of dropping support for old platforms we should be picking up support for as many things as possible |
17:03 |
hmmmm |
in my code I try to support as many of the weird UNIXes as possible |
17:03 |
|
Naked joined #minetest-dev |
17:03 |
celeron55 |
(and a lot better language) |
17:04 |
sapier |
celeron55 what about code readability on using all that shiny new stuff? ;-) |
17:04 |
celeron55 |
sapier: better than before |
17:04 |
celeron55 |
everything is better |
17:05 |
sapier |
wow :-) excessive using of old c++ stuff usually resulted in code only the author was able to read |
17:05 |
celeron55 |
all those things move C++ a whole lot in the don't-repeat-yourself direction |
17:05 |
celeron55 |
which i like |
17:06 |
sapier |
well that's good but most of the platforms I usually have to work for don't support it so I can't really talk about it |
17:06 |
celeron55 |
gcc 4.6 supports most things, gcc 4.7 supports practically everything |
17:06 |
sapier |
well :-) 4.2 doesn't |
17:07 |
celeron55 |
newest msvc supports most things, and newest clang supports practically everything |
17:07 |
sapier |
ans sometimes my code has to compile on ancient platforms too |
17:07 |
ShadowNinja |
for (std::vector<ActiveBlockModifier>:const_iterator iter = abms.begin(); iter != abms.end() iter++) --> for (auto &abm : abms) MUCH better. |
17:08 |
sapier |
oldest maintained platform I work for was built in last millenium ;-) |
17:08 |
celeron55 |
ShadowNinja: yes, it's like fucking magic |
17:08 |
celeron55 |
nobody can ever argue against that |
17:09 |
celeron55 |
(except with portability) |
17:09 |
sapier |
true those for iterator cascades are creapy |
17:10 |
xyz |
sapier: but you aren't going to try to run minetest on it anyway |
17:10 |
sapier |
but c++11 is no exchange for looking at your code ... there are plenty of locations in code which are crap no matter what language you use |
17:11 |
sapier |
btw that delta calculation has a small but relevant bug ;-) |
17:12 |
celeron55 |
19:01:51 <+ShadowNinja> celeron55: So, not all of the code uses STL containers? |
17:12 |
sapier |
result of equal times is 0xFFFFFFFF ... while 0 would be better |
17:12 |
celeron55 |
ShadowNinja: ^ eh, the vectors you do calculations with |
17:13 |
celeron55 |
and store positions in |
17:14 |
ShadowNinja |
celeron55: Ah, as in v3s16? We could make our own templated Vector class. |
17:14 |
ShadowNinja |
Fix for #1162: http://ix.io/aTm |
17:14 |
ShadowBot |
https://github.com/minetest/minetest/issues/1162 -- Item.lua copy_pointed_thing error |
17:14 |
celeron55 |
ShadowNinja: also whatever rectangles and colors and maybe something else |
17:15 |
ShadowNinja |
A mod must be calling minetest.registered_nodes[x].node_punch manually. |
17:15 |
xyz |
https://gist.github.com/xyzz/e42d6718f3fb2e1c009b |
17:15 |
ShadowNinja |
celeron55: So it should be doable... |
17:15 |
celeron55 |
ShadowNinja: yes it is, but what is the goal here? |
17:16 |
celeron55 |
also, why not just distribute a portion of irrlicht for building the server, if that is the issue |
17:16 |
ShadowNinja |
xyz: https://github.com/yvt/openspades/commit/ef5ccc6b2ede3d85c76598d59c7ca6ebfb9e5644 |
17:16 |
celeron55 |
it's BSD code, no need to rewrite |
17:17 |
ShadowNinja |
Yes, that could be done. |
17:17 |
xyz |
why ganoo? |
17:17 |
xyz |
ShadowNinja: ^ |
17:18 |
ShadowNinja |
xyz: ganoo? |
17:18 |
xyz |
ugh, I mean |
17:18 |
xyz |
it's called c++11, not gnu++11 |
17:19 |
ShadowNinja |
xyz: Yes. But older versions use --std=c++0x I beleive. --std=c++11 is the new flag. |
17:20 |
ShadowNinja |
(gnu must be a synonym for c) |
17:20 |
celeron55 |
gnu isn't a synonym for c, it's the standard with gnu extensions |
17:20 |
xyz |
so just use c++0x then |
17:21 |
celeron55 |
(= not a standard) |
17:21 |
ShadowNinja |
xyz: The c++0x name is depreciated. |
17:22 |
celeron55 |
c++0x is the only thing gcc 4.6 will accept, and x++0x will be probably forever a valid alias for c++11 |
17:22 |
celeron55 |
so there's absolutely zero reason to use anything else |
17:22 |
celeron55 |
c++0x* |
17:25 |
|
Anchakor_ joined #minetest-dev |
17:26 |
xyz |
right |
17:27 |
xyz |
it's the most "portable" one |
17:44 |
|
kahrl joined #minetest-dev |
17:51 |
|
grrk-bzzt joined #minetest-dev |
17:54 |
Selat |
So what about adding belarusian translation? I asked already about 5 times. |
17:56 |
sapier |
is there a pull request? |
17:56 |
sapier |
I don't speak belarusian so I can't do it ;-) |
17:56 |
Selat |
Yes. |
17:57 |
Selat |
I just want you to add empty file, than it'll appear in weblate. |
17:58 |
Selat |
*then |
17:58 |
sapier |
hmm that pull request isn't really shaped for merge |
17:58 |
sapier |
I'm gonna cherry pick it but next time please cleanup your pulls |
17:59 |
Selat |
How? |
17:59 |
sapier |
rebase to latest master |
17:59 |
Selat |
I don't know why this merge commits are added to the pull request. |
18:00 |
Selat |
*these |
18:00 |
sapier |
I assume you didn't create a separat branch for this ... that delete seems familiar IRC it was already merged |
18:04 |
Selat |
So it's better not to do like this https://help.github.com/articles/syncing-a-fork? |
18:06 |
xyz |
yes minetest git guidelines require you to use rebase instead of merge |
18:06 |
sapier |
true, way of mergeing is somewhat strange her in mt and discussed every now and then |
18:08 |
Selat |
this uses merge http://dev.minetest.net/Git. |
18:10 |
sapier |
thanks, i fixed it |
18:24 |
|
rsiska joined #minetest-dev |
18:26 |
Selat |
sapier: can you merge this again? I forgot to add name of language. |
18:26 |
Selat |
https://github.com/minetest/minetest/pull/1163 |
18:28 |
|
EvergreenTree joined #minetest-dev |
18:28 |
|
EvergreenTree joined #minetest-dev |
18:28 |
Selat |
Damn.. He is offline. I'll have to wait about a day again. |
18:29 |
sapier |
is it right now? |
18:29 |
Selat |
Yes. |
18:29 |
sapier |
done |
18:29 |
Selat |
Why I can |
18:30 |
sapier |
we really should switch to gpu lighting |
18:30 |
sapier |
light calculation is one of the main operations done by minetest |
18:30 |
Selat |
I have not seen you at the list because you were on the top. |
18:31 |
ShadowNinja |
Yes, we should. |
18:31 |
ShadowNinja |
But that's a bit GPU intensive. |
18:31 |
sapier |
it's crazy to see getInteriorLight as top non 3d-engine operation in profiling graph |
18:32 |
sapier |
5% of total time is used for this |
18:32 |
proller |
and now in very buggy place |
18:32 |
proller |
its^ |
18:34 |
xyz |
sapier: what about server? |
18:34 |
sapier |
server? |
18:35 |
sapier |
sorry give me a hint what you're talking about right now |
18:35 |
xyz |
yes, how would lighting be calculated on a server? |
18:35 |
sapier |
puhh no ide |
18:35 |
sapier |
a |
18:35 |
xyz |
lol |
18:36 |
sapier |
sounds interesting ... but will cause things like vanessae's multiserver machine quite useless as you're gonna need hell of a machine for a server |
18:37 |
sapier |
and I assume graphics cards are way more suited to calc light values |
18:37 |
proller |
sapier, you want to remix and broke all rendering too? |
18:39 |
PilzAdam |
sapier, light is currently calculated by the server |
18:40 |
sapier |
PilzAdam getInteriorLight is called on client so at least that part is not done at server |
18:41 |
|
mrtux joined #minetest-dev |
19:18 |
sapier |
https://github.com/minetest/minetest/pull/1164 that one is for those of you complaining about me adding too much code ;-P |
19:19 |
sapier |
-450 lines of code ;-) |
19:21 |
sapier |
if noone complains within the next hour I'm gonna merge it |
19:23 |
celeron55 |
it's funny how even this special-purpose declarative language is better than a hardcoded alternative |
19:26 |
sapier |
All the code is already in guiformspecmenu so why have it in there twice |
19:28 |
sapier |
another positive effect is we only have to change guiformspec menu to fix all the gui at once e.g. in case of adding high dpi menus |
19:30 |
proller |
now too hard to start game with 240x240 screen 8( |
19:30 |
sapier |
I guess it'll be hard no matter what we do ;-) |
19:32 |
sapier |
I'm gonna merge #1153 any complains? |
19:32 |
ShadowBot |
https://github.com/minetest/minetest/issues/1153 -- Fix for unloaded but active block problem by CiaranG |
19:35 |
sapier |
btw does cherry-picking to master comply to our merge rules? |
19:37 |
celeron55 |
cherry-pick is basically a single-commit rebase |
19:38 |
sapier |
ok so it's fine |
19:41 |
|
BrandonReese_ joined #minetest-dev |
19:42 |
xyz |
sapier: please don't indent with tabs |
19:42 |
xyz |
I mean, don't "align" |
19:42 |
sapier |
I don't do this on purpose where did I do it? |
19:43 |
xyz |
https://github.com/minetest/minetest/pull/1164/files#diff-18513665750ef5adf42b5ec29e14162eR973 |
19:43 |
|
damiel joined #minetest-dev |
19:43 |
|
damiel joined #minetest-dev |
19:44 |
xyz |
it's usually ShadowNinja who complains though |
19:44 |
sapier |
argh ... the old function parameter topic again ... I guess I'm gonna switch this completely ... will result in some more lines of code but noone can complain about tabs there any longer |
19:45 |
sapier |
why can't you guys(including github) just use sane tab widths ... we don't have mechanic typing machines nowadays ;-) |
19:47 |
sapier |
xyz better this way? |
19:48 |
|
BrandonReese joined #minetest-dev |
19:48 |
xyz |
why can't you guys(including sapier) just use tabs the way they're intended to be used ... |
19:49 |
sapier |
because there ain't a real use for tabs nowadays ;-) |
19:50 |
xyz |
you can't really align stuff with tabs because other people may have different setups |
19:50 |
sapier |
that makes tabs useless and we could just remove them completely ;-) |
19:51 |
xyz |
useless why? |
19:51 |
sapier |
especially if you consider the amount of time wasted on discussion ;-) |
19:51 |
xyz |
that's only because you can't get it right ;-( |
19:51 |
xyz |
I honestly don't think it's that hard |
19:52 |
sapier |
well 8 spaces tabs are wrong on almost any screen ... thats why some crazy guys invented mixed mode indentions ... level 1 4 spaces ... level 2 1 tab ... level 3 1 tab + 4 spaces |
19:53 |
sapier |
luckyly there aren't much projects left using this crazy schme |
19:54 |
sapier |
-much + many |
19:56 |
sapier |
I'm gonna merge #973 next if there's no reason not to merge it? |
19:56 |
ShadowBot |
https://github.com/minetest/minetest/issues/973 -- improved win32 file version information by sapier |
19:56 |
celeron55 |
i neither think it's hard, but i guess it depends how braindead your editor is |
19:57 |
|
khonkhortisan joined #minetest-dev |
19:57 |
sapier |
imho tabwith 8 is just waste of screen space :-) |
20:06 |
|
mkn joined #minetest-dev |
20:07 |
|
mkn joined #minetest-dev |
20:08 |
sfan5 |
sapier: you forgot a comma |
20:08 |
sfan5 |
""Minetest"" is property of Minetest community don't use the name -> ""Minetest"" is property of Minetest community, don't use the name |
20:10 |
sfan5 |
also RUN_IN_PLACE=n would be better than '"run in place build' or 'in system install build' IMO |
20:10 |
|
Zeitgeist_ joined #minetest-dev |
20:11 |
sfan5 |
also for copyright use 2014 instead of 2013 |
20:11 |
sapier |
:-) maybe I should just write 2015 ;-) |
20:12 |
sfan5 |
and this one: minetest engine -> Minetest Engine |
20:12 |
sapier |
are you sure? thought capitals are used for names only? |
20:12 |
sfan5 |
I am not sure at all |
20:13 |
sfan5 |
but it should not cause any problems to capitalize it |
20:13 |
sfan5 |
(look nicer IMO) |
20:13 |
sapier |
hmm I'm exactly oposite opinion ... we need someone else to decide ;-) |
20:14 |
sapier |
VanessaE ? you're native ;-) |
20:16 |
|
Zeitgeist_ joined #minetest-dev |
20:23 |
|
proller joined #minetest-dev |
20:24 |
|
damiel joined #minetest-dev |
20:24 |
|
damiel joined #minetest-dev |
20:31 |
PilzAdam |
sapier, shouldnt you use wgettext() in #1164 |
20:31 |
ShadowBot |
https://github.com/minetest/minetest/issues/1164 -- Replace builtin pause and message menus by formspec based ones by sapier |
20:31 |
PilzAdam |
+? |
20:32 |
|
damiel joined #minetest-dev |
20:32 |
sapier |
no formspec text itself is plain not wchar |
20:32 |
|
damiel joined #minetest-dev |
20:34 |
xyz |
Minetest™ is a property of the Minetest™ Community® |
20:35 |
xyz |
Minetest™ Engine® Core Main Application© |
20:35 |
sapier |
isn't TM only for registred trademarks ? ;-) |
20:35 |
sapier |
and I won't use any special chars they just cause issues |
20:35 |
xyz |
minetestâ„¢.exe |
20:35 |
xyz |
nope? |
20:36 |
xyz |
you're no fun :( |
20:37 |
xyz |
actually, if you want to improve win32 builds, get a certificate and sign the binaries |
20:37 |
xyz |
that way people can be sure the builds are from the Minetest™ Organization® |
20:38 |
sapier |
well you can do this if you want to improve it even more then this already does |
20:38 |
xyz |
you can get it for free, just apply some google |
20:38 |
xyz |
that was just a suggestion |
20:39 |
sapier |
thanks but I usually avoid things from google ;-) |
20:39 |
xyz |
did you really have to state this? I don't think anybody cares |
20:39 |
sapier |
this commit is about filling the existing fields only ... they are there so why not use them |
20:54 |
|
damiel joined #minetest-dev |
20:55 |
|
grrk-bzzt_ joined #minetest-dev |
21:01 |
|
PilzAdam joined #minetest-dev |
21:13 |
|
Zeitgeist_ joined #minetest-dev |
21:13 |
|
Zeitgeist_ joined #minetest-dev |
21:25 |
|
salamanderrake joined #minetest-dev |
21:57 |
ShadowNinja |
sapier: "Minetest engine" |
21:59 |
sapier |
ok |
23:00 |
|
proller joined #minetest-dev |
23:19 |
|
sapier left #minetest-dev |
23:22 |
* VanessaE |
peeks in for a moment |
23:23 |
VanessaE |
"tm" isn't "reserved" for anything, you can write "tm" after a trademark without said trademark being registered, normally only (R) is used for registered. |
23:24 |
VanessaE |
it might be most accurate to write: "Minetest", "The Minetest engine", and the Minetest logo are trademarks of the Minetestâ„¢ community. |
23:24 |
VanessaE |
er, the TM would be used in all three places if you wanted to be anal about it |
23:25 |
VanessaE |
er four. |
23:34 |
VanessaE |
thing about trademarks though is that, at least under US law, if you have one that's important to you, you're expected to eventually register it and you're required to actively defend it at almost any cost (literally) if you want to keep it. |
23:38 |
VanessaE |
and there's the secondary issue of what a certain other company might have to say about the MT community claiming a trademark. there's a phrase in US law called "trade dress" that basically says that a product is defined by what it does and how it looks, and certain competitors might not look too kindly on the "Minetest" name if a trademark is claimed on it. |
23:39 |
VanessaE |
(e.g. the name and look are so similar that it could get us into trouble) |