Time |
Nick |
Message |
00:47 |
|
AliasAlreadyTake joined #minetest-dev |
00:58 |
|
v-rob joined #minetest-dev |
01:50 |
|
loggingbot_ joined #minetest-dev |
01:50 |
|
Topic for #minetest-dev is now Minetest core development and maintenance. Chit-chat goes to #minetest. https://dev.minetest.net/ |
01:51 |
|
mister-e[m] joined #minetest-dev |
03:07 |
|
erlehmann joined #minetest-dev |
03:20 |
|
erlehmann joined #minetest-dev |
03:28 |
|
queria^clone joined #minetest-dev |
03:34 |
|
queria^clone joined #minetest-dev |
04:07 |
|
v-rob joined #minetest-dev |
04:38 |
Pexin |
okay so.. it seems that since 5.3, modders have made games which assume bounce is not controllable, so rely on the current behavior (which is still not completely consistent). so my change would make some of their puzzles easier than intended. |
04:38 |
Pexin |
the only solution for THAT is a game-specific setting to allow controllable_bounce. is there a way to do that other than adding ANOTHER PERM? >_< |
05:00 |
|
MTDiscord joined #minetest-dev |
05:49 |
Pexin |
not a perm, a lua binding to a new serverside variable which must be communicated to the client creating another client/server versioning hiccup whicfasdfalksdjflkasjhfdlka |
06:51 |
MTDiscord |
<Benrob0329> Player physics override? |
08:05 |
|
v-rob joined #minetest-dev |
08:15 |
|
x2048 joined #minetest-dev |
08:25 |
|
Thomas-S joined #minetest-dev |
08:58 |
|
erlehmann joined #minetest-dev |
09:22 |
|
calcul0n__ joined #minetest-dev |
09:27 |
|
appguru joined #minetest-dev |
09:42 |
MTDiscord |
<luatic> ^ |
09:43 |
MTDiscord |
<luatic> make an "old_bounce" boolean flag |
09:43 |
|
tekakutli joined #minetest-dev |
10:12 |
|
x2048 joined #minetest-dev |
10:12 |
sfan5 |
do we want to formally enter feature freeze? |
10:12 |
sfan5 |
this'd mean a 5.5 release just before february |
10:13 |
MTDiscord |
<luatic> #11877 should really be fixed IMO |
10:13 |
ShadowBot |
https://github.com/minetest/minetest/issues/11877 -- New player causes: duplicate key value violates unique constraint "auth_name_key" |
10:15 |
MTDiscord |
<GreenXenith> #11952 has 2 approvals, easy to squeeze it in real quick ;p |
10:15 |
ShadowBot |
https://github.com/minetest/minetest/issues/11952 -- Give the ASCII console splash a facelift by GreenXenith |
10:16 |
MTDiscord |
<luatic> that's neat |
10:19 |
|
proller joined #minetest-dev |
10:35 |
x2048 |
sfan5: I'd vote for a feature freeze to get over 5.5.0 as soon as possible |
10:36 |
|
tekakutli joined #minetest-dev |
10:38 |
sfan5 |
that's my reason too |
10:42 |
sfan5 |
#11437 will probably end up not being solved |
10:42 |
ShadowBot |
https://github.com/minetest/minetest/issues/11437 -- `3d_mode` is broken |
10:43 |
sfan5 |
and for #10632 I'm waiting for an implementation by appgurueu |
10:43 |
ShadowBot |
https://github.com/minetest/minetest/issues/10632 -- Retrieve DPI from get_player_information |
10:45 |
x2048 |
sfan5: I'll close #11951 then, there is little support among coredevs. |
10:45 |
ShadowBot |
https://github.com/minetest/minetest/issues/11951 -- Proposal: Limit availability of dynamic shadows in 5.5.0 by x2048 |
10:46 |
sfan5 |
sure |
11:07 |
|
calcul0n_ joined #minetest-dev |
11:17 |
|
gaelysam joined #minetest-dev |
11:53 |
|
Fixer joined #minetest-dev |
12:04 |
|
erlehmann joined #minetest-dev |
12:11 |
|
Fixer_ joined #minetest-dev |
12:45 |
|
x2048 joined #minetest-dev |
12:49 |
erlehmann |
celeron55 since it has been decided to scrap the “turn the moon upside down and make a lot of people unhappy” PR, could this be closed? https://github.com/minetest/minetest/issues/11901 |
12:51 |
Krock |
yes, a 5.5.0 feature freeze seems reasonable |
13:06 |
MTDiscord |
<luatic> erlehmann: this should be closed by a doc PR |
13:08 |
erlehmann |
luatic then the title of the issue must be changed |
13:09 |
MTDiscord |
<luatic> indeed, and it should be labeled "documentation request /missing / error" |
13:11 |
MTDiscord |
<luatic> sfan5: don't worry about #11957, it was a mistake on my part, should've commented |
13:11 |
ShadowBot |
https://github.com/minetest/minetest/issues/11957 -- Minetest does not detect Postgres version, always considers it zero |
13:13 |
|
longerstaff13 joined #minetest-dev |
13:28 |
sfan5 |
obligatory reminder for #11857 and #11866 |
13:28 |
ShadowBot |
https://github.com/minetest/minetest/issues/11857 -- Raise minimum compiler versions by sfan5 |
13:28 |
ShadowBot |
https://github.com/minetest/minetest/issues/11866 -- Raise max mapgen limit constant to align with MapBlock by sfan5 |
13:37 |
erlehmann |
btw, i would like the mapblock thing to be solved because mineclonia (and the other mcl games) contains a structure that can spawn near the map border and contain tnt |
13:37 |
erlehmann |
so it is unlikely, but possible, that the map generator will place a crashy schematic there |
13:37 |
erlehmann |
(i think?) |
13:37 |
erlehmann |
i have not tested that lately tbh |
13:39 |
erlehmann |
i will certainly revisit other map border bugs after #11866 is merged and report back about if they are gone |
13:39 |
ShadowBot |
https://github.com/minetest/minetest/issues/11866 -- Raise max mapgen limit constant to align with MapBlock by sfan5 |
13:44 |
sfan5 |
you will still find some, I promise |
13:49 |
erlehmann |
yeah but i bet this removes a bunch |
14:03 |
|
tekakutli joined #minetest-dev |
14:41 |
sfan5 |
for some reason an `mod_storage` folder recently appeared in all of my worlds |
14:41 |
sfan5 |
this is a recent change |
14:41 |
sfan5 |
an empty* |
14:44 |
Krock |
could this be due to the sqlite3 transition? |
14:47 |
erlehmann |
Krock wdym which PR are you referring to? |
14:47 |
sfan5 |
#11763 obv |
14:47 |
ShadowBot |
https://github.com/minetest/minetest/issues/11763 -- Use a database for mod storage by TurkeyMcMac |
14:49 |
Pexin |
ive seen people complaining about that but they didnt go into detail |
14:49 |
erlehmann |
well this should not affect any *existing* worlds unless they are migrated, should it? |
14:52 |
Pexin |
i will try to track down who it was and ask them to elaborate (preferably here?) |
15:06 |
sfan5 |
I guess I should tag a new version of irrlichtmt too so all changes are included in an eventual release candidate |
15:09 |
erlehmann |
good idea |
15:10 |
|
appguru joined #minetest-dev |
16:34 |
sfan5 |
merging #11857, #11874, #11952, #11950 in 10m |
16:34 |
ShadowBot |
https://github.com/minetest/minetest/issues/11857 -- Raise minimum compiler versions by sfan5 |
16:34 |
ShadowBot |
https://github.com/minetest/minetest/issues/11874 -- Don't call on_dieplayer callbacks two times by savilli |
16:34 |
ShadowBot |
https://github.com/minetest/minetest/issues/11952 -- Give the ASCII console splash a facelift by GreenXenith |
16:34 |
ShadowBot |
https://github.com/minetest/minetest/issues/11950 -- [NOSQUASH] Two commits by sfan5 |
16:48 |
sfan5 |
I doubt anyone of the devs who haven't commented yet would disagree so I'll declare the feature freeze in effect |
16:49 |
|
Topic for #minetest-dev is now Minetest core development and maintenance. Chit-chat goes to #minetest. https://dev.minetest.net/ | FEATURE FREEZE IN EFFECT (as of 2022-01-15) |
16:49 |
sfan5 |
since it's two weeks that'd make the planned release date 2021-01-29 |
16:51 |
sfan5 |
(features already in the milestone are exempted of course) |
17:02 |
erlehmann |
i suggest to not have a planned release date, but release after all bugs in RC are solved or deemed unimportant |
17:03 |
erlehmann |
it would also allow a faster release or not? |
17:03 |
erlehmann |
if no new bugs crop up |
17:03 |
erlehmann |
come up |
17:04 |
erlehmann |
celeron55 could you maybe look into 11866? i assume you may know a bit about the code ;) |
17:06 |
erlehmann |
(i want it to avoid crashy crashy at the map border, not out of purity reasons) |
17:09 |
sfan5 |
bugs do inevitably crop up |
17:10 |
sfan5 |
and you want to give people time to actually give 5.5 a test |
17:10 |
erlehmann |
well the question is if they are dealbreakers |
17:10 |
erlehmann |
ah so you freeze it and then you have 2 weeks for testing? |
17:11 |
erlehmann |
i must admit, i do not understand it. but i am in favor of not adding new features shortly before release. |
17:11 |
sfan5 |
not by us, we give it to people and say "this will be 5.6, make sure your stuff works" |
17:12 |
sfan5 |
5.5* |
17:12 |
sfan5 |
devs and some users may be running 5.5-dev but especially server owners do not have time to follow development |
17:13 |
sfan5 |
so it's their chance to find issues of any kind |
17:13 |
sfan5 |
before release |
17:13 |
erlehmann |
oh yeah |
17:14 |
erlehmann |
so 2021-01-29 is the release date for the release candidate?! |
17:14 |
erlehmann |
that would make sense |
17:15 |
erlehmann |
like, polish it, make a RC, then wait for input |
17:15 |
erlehmann |
i think i get it now |
17:15 |
erlehmann |
thx |
17:42 |
|
Taoki joined #minetest-dev |
17:52 |
|
sparky4 joined #minetest-dev |
17:52 |
sparky4 |
guys guys PLEASE DON"T use sqllite to store cliend side mod data! i loose hundreds and undres of waypoints! |
17:53 |
hlqkj |
how does that relates to the use of sqlite?! |
17:53 |
sfan5 |
erlehmann: no, that's the final release date |
17:54 |
Krock |
sparky4: migrate |
17:54 |
sparky4 |
HOW!? |
17:54 |
sfan5 |
you should not need to migrate |
17:54 |
Krock |
done automatically |
17:54 |
sparky4 |
there will be a butt load of complaits from people whjo use the mods |
17:54 |
sparky4 |
it did not for me |
17:56 |
Krock |
for server mods, there's --migrate-mod-storage to migrate them explicitly |
17:56 |
sparky4 |
there is not client side mod migrator |
17:56 |
sfan5 |
if the migration does not work you should file that as a bug |
17:56 |
rubenwardy |
I'd like #11955 in as it improves UX a lot and is relatively simple |
17:56 |
ShadowBot |
https://github.com/minetest/minetest/issues/11955 -- Update and improve warnings when no games are found or when only devtest is installed by rollerozxa |
17:56 |
sparky4 |
it is best not to do this |
17:56 |
rubenwardy |
Other than that, feature freeze sounds fine |
17:56 |
MTDiscord |
<luatic> sparky4: elaborate |
17:57 |
MTDiscord |
<luatic> for now, all we've heard are baseless claims |
17:57 |
sparky4 |
i tested out newer 5.50 minetest and it failed to migrate my lient side mod database and i cannot teleport anywhere. |
17:57 |
Krock |
https://github.com/minetest/minetest/pull/11763/files#diff-d0e4d904960723de71f0db13669ff088d764e125bbc8133c3cfed05bf0792512R131-R135 |
17:57 |
erlehmann |
Krock so if i do not use --migrate-mod-storage what happens then, it continue to use json i hope? |
17:57 |
Krock |
client mods assume sqlite3. no migration code, |
17:57 |
rubenwardy |
#11784 has reached approval but probably too late as that's more risky |
17:58 |
ShadowBot |
https://github.com/minetest/minetest/issues/11784 -- Use virtual paths to specify exact mod to enable by rubenwardy |
17:58 |
sparky4 |
this WILL break many things |
17:58 |
MTDiscord |
<luatic> have you migrated, sparky4? |
17:58 |
sparky4 |
no i dont know how it failed to work |
17:58 |
sfan5 |
I don't see migration code |
17:58 |
Krock |
luatic: there's no CSM migration code |
17:58 |
sfan5 |
in what Krock linked |
17:58 |
Krock |
only for server mods |
17:58 |
sparky4 |
thje client side mods DO NOT Migrate over |
17:58 |
erlehmann |
uh that sounds horrible |
17:58 |
Krock |
please open an issue for that |
17:59 |
erlehmann |
client side waypoints are like, the most common thing i know from CSMs |
17:59 |
MTDiscord |
<luatic> heh, technically we don't support CSM ;) |
17:59 |
erlehmann |
luatic do not give them ideas |
17:59 |
rubenwardy |
Client side API is experimental, breaking compat isn't strictly a problem |
17:59 |
MTDiscord |
<luatic> but yeah this should definitely be fixed immediately |
17:59 |
sfan5 |
throwing away user data != API compat |
17:59 |
erlehmann |
rubenwardy declaring it not a problem does not mean it is not a problem … |
17:59 |
rubenwardy |
I'd at the most migrate but not support files |
17:59 |
rubenwardy |
API includes file formats |
17:59 |
sparky4 |
i have a database of hundreds of waypoints to teleport across LF |
18:00 |
MTDiscord |
<luatic> sparky4: are you sure that the waypoints are lost? |
18:00 |
Krock |
on-the-fly migration should be pretty trivial |
18:00 |
MTDiscord |
<luatic> as in, have you checked your FS? |
18:00 |
sparky4 |
yes but the old database is intact |
18:00 |
MTDiscord |
<luatic> yeah, so nothing is really lost? |
18:00 |
erlehmann |
just to be clear, server-side nothing will get lost if someone just upgrades from 5.4 to 5.5-dev with the sqlite thingy? |
18:00 |
MTDiscord |
<luatic> erlehmann: yes |
18:00 |
sfan5 |
erlehmann: server-side migrations are not automatic |
18:00 |
erlehmann |
sfan5 uh-oh |
18:01 |
sfan5 |
I know what you're thinking but no |
18:01 |
erlehmann |
sfan5 if they are not, this will break A LOT of stuff. |
18:01 |
sfan5 |
stop talking |
18:01 |
sfan5 |
the old backend remains supported |
18:01 |
sparky4 |
this sqllite stuff will break many servers! |
18:01 |
erlehmann |
oh good |
18:01 |
erlehmann |
sfan5 i shall be silent |
18:01 |
sparky4 |
and break many client side mod databases |
18:01 |
sfan5 |
at least this is the behaviour I observed |
18:01 |
sfan5 |
I can't say for sure because I didn't review the code myself |
18:02 |
sparky4 |
guys please dont break minetest client side mods! |
18:03 |
Krock |
old data is kept intact, and copied to the new backend when specified by the command line argument. there is no data loss |
18:03 |
Krock |
sparky4: stop whining and open an issue so that it's tracked |
18:03 |
hlqkj |
#11959 and blocking, too |
18:03 |
ShadowBot |
https://github.com/minetest/minetest/issues/11959 -- CSM mod storage has no migration path |
18:04 |
Krock |
okay |
18:04 |
hlqkj |
and my bad for earlier: didn't get he was talking about migration, but sqlite loosing data 0\ |
18:04 |
erlehmann |
well as long as the old backend is supported, can't that be used for csm mod storage too? |
18:05 |
Krock |
yes of course |
18:05 |
erlehmann |
good |
18:05 |
sparky4 |
also nice to meet you all i am mary4 from LF |
18:06 |
sfan5 |
hmm so do new worlds default to sqlite3? |
18:08 |
sfan5 |
ah, yes |
18:08 |
Krock |
https://github.com/minetest/minetest/pull/11763/files#diff-eed156eda45af76b19e24f3f291ac7cd0d1986c991a4b56323f842544ceab99aR361 |
18:08 |
Krock |
fallback is "files". https://github.com/minetest/minetest/pull/11763/files#diff-d0ecb51621381529aa2b31bb04fecee4a1b1b7dc0be53978c4878f2c4d4bfe1fR4008-R4009 |
18:09 |
erlehmann |
sparky4 you can be assured that if the thing would break on servers a lot of ppl would be very unhappy. like, skinsdb would break. mineclone portals could lead to different places, maps would break too i guess. |
18:10 |
rubenwardy |
Yeah, that's not happening |
18:10 |
erlehmann |
i just wanted to reassure sparky4 |
18:10 |
sfan5 |
rubenwardy: [11955] sure if it's fully fixed |
18:10 |
sparky4 |
thank you and watch the client sid emods too >.> thanks guys! |
18:10 |
sparky4 |
i gotta get food |
18:12 |
erlehmann |
sparky4 in the worst case you can always use waspsaliva client i guess |
18:12 |
erlehmann |
cora uses waypoints herself |
18:12 |
erlehmann |
(she develops it) |
18:12 |
erlehmann |
it is mostly a bunch of CSMs so any CSM breakage is considered important ig |
18:12 |
sfan5 |
more like just keep using Minetest 5.4 if nothing else helps |
18:13 |
sfan5 |
no need for any third party software that would probably get you banned off most servers |
18:21 |
erlehmann |
sfan5 in my experience people get banned for abusing alternate clients, not for simply joining with them. |
18:21 |
erlehmann |
no one cares what client you use if you do not cheat |
18:21 |
erlehmann |
but i understand, my advice was wrong |
18:40 |
erlehmann |
sfan5, why was this closed? is it fixed? if yes, in which commit? https://github.com/minetest/irrlicht/issues/70 |
18:40 |
erlehmann |
sfan5, sorry my fault. reading comprehension error. |
18:41 |
erlehmann |
it was fixed in https://github.com/minetest/irrlicht/commit/195759100fc723f466b46938128eeaed3edc3a24 |
18:47 |
sfan5 |
ye |
18:50 |
rubenwardy |
You can be banned for joining CTF with a cheat client, even if you don't use jt |
18:50 |
Krock |
make sure you're not caught. that's the general rule |
18:53 |
MTDiscord |
<Jonathon> ironically it requires a engine patch to catch people using unpatched df |
18:56 |
|
v-rob joined #minetest-dev |
18:57 |
erlehmann |
rubenwardy wait how would you catch ppl who have a cheat client but set it to “not cheating”? |
18:57 |
rubenwardy |
That's a secret :) |
18:57 |
erlehmann |
like say i override the privilege thing |
18:57 |
erlehmann |
i can fly but ofc i do not do it in ctf |
18:58 |
erlehmann |
i know a few methods to detect cheats employed, but not one to detect a cheat client |
18:58 |
erlehmann |
like, killaura? try to place an invisible entity near the player. if they punch it a lot, cheater. |
18:59 |
erlehmann |
same with invisible fake players |
19:00 |
erlehmann |
also flying: if someone is accelerating straiht upwards, well … ;) |
19:11 |
|
x2048 joined #minetest-dev |
19:14 |
v-rob |
AAAAAA Why is it that every time I think I have Unicode pretty well figured out and write code for it, I learn yet ANOTHER thing that breaks it all and I have to rewrite the code?! Errg! |
19:15 |
v-rob |
And I'm only working with a SUBSET! |
19:16 |
erlehmann |
v-rob what is it this time |
19:16 |
v-rob |
Grapheme iteration |
19:16 |
erlehmann |
v-rob also tell me if you want me to try to break your unicode stuff (but try zalgo text first) |
19:17 |
v-rob |
I haven't even gotten it to the rendering part yet, I've always found problems before I get there. |
19:17 |
erlehmann |
let me stack hundreds of diacritical marks on a letter in non-canonical form and hope your implementation uses a fast sorting algorithm for figuring it out ^^ |
19:17 |
v-rob |
Time to go library hunting again... |
19:17 |
erlehmann |
tbh i would be happy if utf-8 with unifont worked, how far is that away? |
19:18 |
v-rob |
Depends on which languages you want to work. |
19:18 |
Pexin |
be vewwy quiet. it's wibrawy hunting season! huhuhuhuhuhu |
19:18 |
MTDiscord |
<Benrob0329> inb4 v-rob curses Unicode and swears allegiance to Extended ASCII |
19:18 |
v-rob |
:) |
19:18 |
erlehmann |
v-rob all of them in the astral plane |
19:18 |
MTDiscord |
<Benrob0329> Welp, time to get the spell book- |
19:19 |
v-rob |
Well, some time from now then. Assuming I don't find another problem with my approach, not terribly long before I have a prototype. That's a big if, judging by how many times I've goofed already. |
19:20 |
erlehmann |
v-rob i just want to ( ͡° ͜ʖ ͡°) and ? in minetest tbh |
19:20 |
Pexin |
ಠ_ಠ |
19:22 |
erlehmann |
v-rob vs unicode (2020, colorized) … (ノಠ益ಠ)ノ彡┻━┻ |
19:23 |
v-rob |
I really don't want to use the ICU library. It's about the largest, cruftiest C++-classes-ported-from-Java with disgusting redundant classes that each have one feature that the others don't, and annoyingly scattered documentation. However, it's the most complete Unicode library there is, and the industry standard at that. |
19:25 |
v-rob |
It'd probably double the size of the Minetest executable or something :/ |
19:58 |
x2048 |
sfan5: I think I found a fix for #11437, posted in #11961 |
19:58 |
ShadowBot |
https://github.com/minetest/minetest/issues/11437 -- `3d_mode = anaglyph` is broken |
19:58 |
ShadowBot |
https://github.com/minetest/minetest/issues/11961 -- Reset override material in anaglyph by x2048 |
20:01 |
erlehmann |
neat! |
20:54 |
v-rob |
Results of the library hunt: ICU (yuk), GNU FriBidi + GNU libunistring, or Courier Unicode seem like the most viable options. |
20:55 |
v-rob |
Courier Unicode is an interesting case: it's maintained as part of a larger project (Courier Mail Server), but is available as a standalone library. |
20:57 |
v-rob |
Both Courier and ICU support bidirectionality as well, so FriBidi wouldn't be necessary with them, whereas FriBidi and libunistring are meant to go hand-in-hand. |
20:58 |
v-rob |
So, it's one big ugly library, two smaller libraries, or one obscure but viable library. |
20:59 |
v-rob |
Honestly, I see no point in using ICU; it's just too much. |
21:01 |
v-rob |
I would like at least one other core dev opinion to know which to work with. The HarfBuzz library would still be included in any case. |
21:02 |
v-rob |
I'm fairly certain that I'll never need more libraries than whatever is chosen; those encompass basically all of Unicode. |
21:04 |
erlehmann |
- |
21:04 |
erlehmann |
sorry, a water bottle fell on the keyboard |
21:04 |
erlehmann |
v-rob have you looked at comparable projects already and what they used? |
21:06 |
erlehmann |
v-rob like, say, supertuxkart |
21:06 |
v-rob |
Hard to say. A lot either don't care about Unicode, or use Pango, which has already been rejected (for instance, it pulls in Cairo, which doesn't play well with hardware acceleration like OpenGL), or embed another GUI system. |
21:06 |
v-rob |
I'll look though |
21:07 |
erlehmann |
supertuxkart is that other game that forked irrlicht AFAIK |
21:07 |
erlehmann |
and i think they have unicode? |
21:10 |
v-rob |
Hmm, yes they do actually |
21:10 |
v-rob |
Does supertuxkart have text input fields anywhere, or does it only render text? |
21:11 |
v-rob |
I can't seem to remember any |
21:11 |
v-rob |
Been a long time since I played it |
21:11 |
erlehmann |
uh username? |
21:11 |
erlehmann |
you could just install it ^^ |
21:12 |
v-rob |
Too lazy |
21:12 |
v-rob |
I'm looking through the code anyway |
21:14 |
MTDiscord |
<MisterE> Screenshot (Jan 15, 2022 4:14:13 PM) |
21:14 |
MTDiscord |
<MisterE> https://cdn.discordapp.com/attachments/747163566800633906/932020034103021608/Screenshot_20220115-161413.png |
21:14 |
Pexin |
when poring through code is considered less effort than installing and trying it out. you know you Might Be too deep into dev. :] |
21:15 |
v-rob |
Apparently, it uses HarfBuzz (like I want to), SheenBidi as opposed to FriBidi, and directly copies grapheme iteration from another library. |
21:15 |
MTDiscord |
<MisterE> v-rob look @ screenie |
21:15 |
v-rob |
Yes, I'm probably a hopeless programmer :) |
21:16 |
v-rob |
Yeah, that makes sense. There's probably a chat somewhere anyway |
21:16 |
v-rob |
I don't think assimilating code like they do is a good idea, since you don't get the benefits of bugfixes and updates |
21:17 |
MTDiscord |
<MisterE> Bugfixes are important, updates are likely to require bugfixes |
21:17 |
MTDiscord |
<MisterE> For libraries |
21:18 |
Pexin |
(I take it back, STK is a much bigger download than I expected) |
21:19 |
v-rob |
Hmm, the library it copies from seems promising, though... |
21:22 |
v-rob |
Well, I guess not. No way of implementing text editing |
21:40 |
v-rob |
CEGUI doesn't support graphemes at all, although it has bidi and complex text |
21:44 |
erlehmann |
how do you do unicode without graphemes |
21:44 |
erlehmann |
like … not render it? |
22:39 |
|
v-rob joined #minetest-dev |
22:41 |
|
fluxionary joined #minetest-dev |
22:57 |
v-rob |
By grapheme I meant language-specific characters (as opposed to codepoints, since characters can be multiple codepoints, and not glyphs either, which are what you render). I prefer "grapheme" to "character" because it's unambiguous what it refers to. |
22:59 |
v-rob |
Anyhow, it appears that most projects I've looked at (games and GUIs both) either use some combination of libraries like I'm proposing, or just don't support Unicode. |
23:00 |
v-rob |
So, choosing libraries like I've proposed is probably the solution. |
23:04 |
v-rob |
If no other core dev weighs in, I'll probably default to GNU libunistring + GNU FriBidi |
23:05 |
v-rob |
I figure two more mainstream dependencies is better than one more obscure dependency. |
23:05 |
v-rob |
But if anyone would prefer a single dependency over two, please speak up |
23:11 |
|
proller joined #minetest-dev |
23:11 |
erlehmann |
well you have evaluated it best |
23:11 |
erlehmann |
i guess? |
23:13 |
|
appguru joined #minetest-dev |
23:14 |
v-rob |
Probably. I just want to make sure the other core devs have a say when adding dependencies. |
23:18 |
celeron55 |
are those libraries self contained? |
23:18 |
celeron55 |
i suppose they are |
23:18 |
v-rob |
As in, do they depend on anything else? |
23:18 |
v-rob |
I'm pretty sure they don't, but I'll check |
23:19 |
erlehmann |
it would be a shame if they depend on, say, colors.js |
23:19 |
v-rob |
:P |
23:19 |
celeron55 |
:D |
23:19 |
celeron55 |
fribidi advertises as not having any dependencies |
23:19 |
erlehmann |
but are they telling the truth let me check |
23:20 |
erlehmann |
you have been bamboozled, fribidi depends on having a libc! |
23:20 |
erlehmann |
(but only that) |
23:21 |
erlehmann |
unistring also depends on a libc |
23:21 |
erlehmann |
that's basically it |
23:22 |
erlehmann |
v-rob i notice that unistring is a c library, does it work with c++ without problems? |
23:22 |
celeron55 |
and it's LGPL 2.1 for both, right? |
23:22 |
v-rob |
extern "C" is nice |
23:23 |
celeron55 |
looks like no |
23:23 |
v-rob |
Hmm, libunistring is a dual license LGPL 3 or GPL 2 |
23:23 |
v-rob |
I didn't think about that |
23:23 |
celeron55 |
fribidi is LGPL 2.1, unistring is LGPL 3 |
23:23 |
celeron55 |
but LGPL 3 is fine i guess |
23:24 |
v-rob |
Courier Unicode is GPL, so definitely no then |
23:24 |
v-rob |
ICU is MIT |
23:25 |
celeron55 |
hmm |
23:25 |
celeron55 |
https://www.gnu.org/licenses/gpl-faq.html#AllCompatibility |
23:26 |
celeron55 |
this makes it quite simple |
23:26 |
MTDiscord |
<Benrob0329> Oh no, GPL compatibility |
23:26 |
celeron55 |
so, it's ok |
23:26 |
celeron55 |
(using (not copying) LGPL3 code in an >=LGPL2.1 project) |
23:26 |
erlehmann |
oh, i have a spiel |
23:26 |
celeron55 |
if you copied it, then the end result is LGPL3 |
23:27 |
v-rob |
No, copying promotes it to GPL v3 |
23:27 |
erlehmann |
https://www.gnu.org/licenses/quick-guide-gplv3-compatibility.png |
23:27 |
celeron55 |
v-rob: it's not what that page says |
23:28 |
celeron55 |
how it works is >=LGPL2.1 is promoteable to LGPL3, and if you copy LGPL3 code into an LGPL3 project, well, it's obvious |
23:28 |
erlehmann |
https://www.gnu.org/licenses/quick-guide-gplv3.html |
23:28 |
celeron55 |
but this is about using so it doesn't matter |
23:28 |
erlehmann |
> Arrows pointing from one license to another indicate that the first license is compatible with the second. This is true even if you follow multiple arrows to get from one license to the other; so, for example, the ISC license is compatible with GPLv3. GPLv2 is compatible with GPLv3 if the program allows you to choose "any later version" of the GP |
23:29 |
v-rob |
Are we 2.1 only or 2.1 and later? |
23:29 |
celeron55 |
>=LGPL2.1, like i said |
23:29 |
celeron55 |
that's the shorthand for "or later" |
23:29 |
v-rob |
Sorry, I thought we were ==, not >= |
23:30 |
v-rob |
That's where I got confused |
23:30 |
celeron55 |
it of course would be ok to use an LGPL3 library even in a proprietary project, it wouldn't change anything |
23:32 |
celeron55 |
(what i don't know about is whether some of the statement relating to patents or something differ in 2.1 vs. 3. if so, it might bring troubles to some commercial forks but i doubt it) |
23:33 |
celeron55 |
so the dependencies are ok and the licenses are ok |
23:33 |
celeron55 |
i trust you to determine that the design and implementation is up to the task |
23:34 |
celeron55 |
also i agree that it's best to use mainstream projects |
23:35 |
v-rob |
Actually, libunistring does have a dep on iconv on Windows. I can't tell if it's optional or not. |
23:39 |
celeron55 |
doesn't seem bad in itself, other than it of course makes it 3 libraries |
23:39 |
v-rob |
Yeah, it looks required |
23:39 |
celeron55 |
i would hope people with recent experience in making windows builds would give their opinions |
23:40 |
celeron55 |
but there's probably not a lot that can be done. being so mainstream it shouldn't be difficult to build them |
23:40 |
v-rob |
Actually, it would make 4 -- HarfBuzz is a 100% required library for proper Unicode |
23:40 |
v-rob |
Windows uses vcpkg, but I don't see libunistring anywhere on that, which might be somewhat annoying |
23:41 |
v-rob |
So, I guess it's 3 deps vs ICU. |
23:41 |
celeron55 |
oh yes that too... the licene is fine, however what are the dependencies? |
23:44 |
v-rob |
As far as I can tell, none. |
23:45 |
erlehmann |
celeron55 the GPLv3 patent statements are mostly “you can't say others can use the stuff and then turn around and sue them or you lose the license to this software yourself” |
23:46 |
MTDiscord |
<luatic> opinions on making libspatialindex a required dependency? |
23:46 |
erlehmann |
celeron55 it's only problematic for big companies that fight patent wars |
23:46 |
erlehmann |
or threaten patent litigation |
23:47 |
v-rob |
Oh hey, there's a Boost.Locale, which is the Boost wrapper around ICU. Like, replace crufty old Java APIs ported to C++ with highly overblown C++ interfaces XD |
23:49 |
v-rob |
No, ICU has no dependencies. |
23:50 |
v-rob |
So, it's triple dependencies or one big one |
23:51 |
celeron55 |
what's this? https://vcpkg.info/port/libunistring |
23:52 |
celeron55 |
i think all of the libraries mentioned by v-rob are on vcpkg |
23:52 |
v-rob |
Odd, when I run `vcpkg search libunistring`, I get no results |
23:53 |
v-rob |
That website also doesn't load for me. |
23:53 |
celeron55 |
i don't know how that can be |
23:53 |
celeron55 |
wait |
23:54 |
v-rob |
Then again, the website might be caused by my internet. It refuses to load other things, like the Web Archive, and just lets it time out. |
23:54 |
v-rob |
The vcpkg command line lets other packages show up, though |
23:54 |
celeron55 |
"supports: !windows" |
23:54 |
celeron55 |
does that mean it's on vcpkg but can only be installed on... non-windows? |
23:55 |
sfan5 |
vcpkg is in fact a platform-agnostic package manager |
23:56 |
v-rob |
libunistring has build instructions for Windows though. Weird |
23:57 |
celeron55 |
but, it's a self contained library written in C |
23:57 |
celeron55 |
what a lazy package publisher |
23:57 |
v-rob |
Wait, the main Windows build instructions use Cygwin. That might have something to do with it... |
23:59 |
sfan5 |
I vaguely remember gettext already including libunistring to it building on mingw is assured |
23:59 |
sfan5 |
so* |