tynet-lichat/shirakumo - IRC Chatlog
Search
15:13:34
|3b|
shinmera: having a structs+single-floats fast path is good, i'll need to review code and think a bit to decide if i think that should be the only API or not though
15:18:03
|3b|
no idea on that, seem to remember some of that being confusing about which data was coming from where, but if it is demonstrably broken fixes are probably good?
15:21:01
shinmera
I assume you're using them from the font generator and just passing plists in there rather than constructing font objects
15:24:40
shinmera
Anyway, I'll update everything to use the class/sruct for consistency and will PR, probably tomorrow.
15:26:24
|3b|
looks like there is at least 1 other user of 3b-bmfont, so i might add a compatibility layer with old API (should be pretty trivial to translate the data anyway)
15:26:51
shinmera
are you sure you want to add compatibility now already when the api isn't even pretend-stable? :u
15:27:46
shinmera
Personally I'd rather break and PR the other project to fix, than add compatibility crust.
15:28:46
|3b|
if there were any reasonable way to communicate changes to users before making big changes i'd consider it, but "unchanged and usable for years" seems to counter the "not claimed to be stable" part a bit to me
15:29:53
|3b|
ACTION found 2 on github, 2 (probably abandoned, but still..) mirrored on gh from elsewhere, 1 more on GH considering it
15:30:59
|3b|
ACTION can fix 1 of the 2 active ones, and author of other is on irc so probably could coordinate fixes, but still evidence that there might be more elsewhere
15:32:05
|3b|
ACTION might also go too far in the direction of "don't break things", but i still prefer to go too far that way than the other way :)
15:35:52
|3b|
i guess there has been an issue open to "get rid of plists" for half a year with no objections, so maybe
15:53:05
|3b|
i suspect it is generating invalid bmfont files, and probably should be doing some coercing to floats before saving (or not generating non-integer values in general)
15:53:43
shinmera
how do you feel about the other glyph fields? should they stay integers or should they all just be single-floats?
15:53:45
|3b|
though if bmfont is suppose to be integer only, i do want the ability to have float offsets and sizes eventually anyway
15:55:10
|3b|
though possibly places where we generate rationals should be generating larger ints and using another field as a global divisor
15:56:43
|3b|
plenty of fraction bits left in 24 bits if we want to do subtexel positions in a 4k texture for example
15:57:55
|3b|
ACTION should find whatever is generating x/10 and make it generate x/8 or x/16 either way :p
16:23:02
|3b|
hmm, all the ones i looked at had floats for the x,y offsets, so possibly something already fixed in generation code
16:26:36
shinmera
I'm guessing it didn't want to depend on a proper float parser and doing the naive tenner division is easy to implement
16:27:29
shinmera
Not sure there's a point to that at all given that no other consumer would even represent or produce numbers that aren't also IEEE floats.
16:28:25
|3b|
well, it would probably be making doubles if it did parse them as floats, so still would need converted :)
17:16:01
|3b|
nah, dev mentions "speed and precision" in an issue comment, so seems somewhat intentional, just has some issues :p
17:16:52
|3b|
and it is a somewhat reasonable choice, as json doesn't specify precision so it could in theory have more bits
17:17:35
|3b|
ACTION isn't sure it is a good default, and in particular the handling of tiny/huge numbers somewhat defeats the speed' part
17:19:30
shinmera
Again, practically zero % of json out there is produced from anything but IEEE floats.
17:19:45
|3b|
coercing ratio input to float when writing also makes the 'precision' argument a lot less convincing
17:20:43
|3b|
ACTION could somewhat see json data having data intended as decimal floats for money, though most of that should probably be using integers anyway
17:26:04
selwyn
the neural network data interchange format has loads of details about precision of floats
19:32:56
Colleen
https://github.com/s-expressionists/Cleavir/blob/main/.github/workflows/docs.yml i wrote a little GH workflow to automatically generate a documentation website on push. it's stupid enough that i wouldn't want to generalize/release it as its own thing without some more work, but it functions. and it means you don't have to check the html into the repository, so that's nice.
19:32:56
Bike
https://github.com/s-expressionists/Cleavir/blob/main/.github/workflows/docs.yml i wrote a little GH workflow to automatically generate a documentation website on push. it's stupid enough that i wouldn't want to generalize/release it as its own thing without some more work, but it functions. and it means you don't have to check the html into the repository, so that's nice.
20:18:37
shinmera
I tend to check in html because I want local copies of the source (such as through ql) to retain the doc
20:19:00
shinmera
But for other sites like portability I used this: https://github.com/Shinmera/portability/blob/master/.github/workflows/rebuild-index.yml
20:20:06
shinmera
For Kandria, which also has the website in a docs/ dir I just have a webhoock on gitea, which calls a specific URL, which then in turn pulls the repo that nginx serves from.
20:41:28
shinmera
Yeah, you need to futz about with tokens for that and every time I have to I have to figure out how to do that
20:41:47
shinmera
iirc the token you have to make has global account access, which is... insane? I don't know why you can't make a token for a single repo
20:44:44
shinmera
yeah. I mean, once you config the token in the repo settings you can't retrieve it anymore, so it's fine
20:44:53
Colleen
Github has some new thing for per-repo access in the settings, to replace the PATs, but I've yet to figure it out
20:44:53
Bike
Github has some new thing for per-repo access in the settings, to replace the PATs, but I've yet to figure it out
20:45:11
shinmera
it honestly annoys me more because every time I'm confused, since I automatically first look on the repo itself