Stefan Oltmann
08/17/2025, 6:37 PMhfhbd
08/18/2025, 10:53 AMStefan Oltmann
08/18/2025, 11:19 AMStefan Oltmann
08/18/2025, 11:20 AMCLOVIS
08/18/2025, 1:51 PMStefan Oltmann
08/18/2025, 1:57 PMI'll create a logging library if I want to!How many more do you think we need? π¬π
Compression algorithms are missing too.Yes, pure Kotlin zlib for example. π But at least that got a bit easier lately. Also, someone should port https://github.com/Menecats/polybool-java to pure Kotlin.
CLOVIS
08/18/2025, 1:58 PMHow many more do you think we need? π¬πNo idea, but I'm writing my second one π
CLOVIS
08/18/2025, 1:59 PMStefan Oltmann
08/18/2025, 2:00 PMStefan Oltmann
08/18/2025, 2:01 PMStefan Oltmann
08/18/2025, 2:01 PMStefan Oltmann
08/18/2025, 2:07 PMjoseph_ivie
08/18/2025, 4:53 PMStefan Oltmann
08/18/2025, 4:54 PMjoseph_ivie
08/18/2025, 4:57 PMStefan Oltmann
08/18/2025, 4:59 PMjoseph_ivie
08/18/2025, 4:59 PMStefan Oltmann
08/18/2025, 5:00 PMStefan Oltmann
08/18/2025, 5:02 PMjoseph_ivie
08/18/2025, 5:03 PMjoseph_ivie
08/18/2025, 5:03 PMStefan Oltmann
08/18/2025, 5:03 PMjoseph_ivie
08/18/2025, 5:04 PMStefan Oltmann
08/18/2025, 5:05 PMStefan Oltmann
08/18/2025, 5:05 PMStefan Oltmann
08/18/2025, 5:07 PMStefan Oltmann
08/18/2025, 5:08 PMAdam S
08/19/2025, 8:07 AMAlso, someone should port https://github.com/Menecats/polybool-java to pure Kotlin.I'm interested in this!
Stefan Oltmann
08/19/2025, 6:02 PMStefan Oltmann
08/19/2025, 6:48 PMStefan Oltmann
08/19/2025, 9:31 PMStefan Oltmann
08/19/2025, 9:54 PMStefan Oltmann
08/20/2025, 9:27 PMCLOVIS
08/21/2025, 7:06 AMStefan Oltmann
08/21/2025, 7:14 AMStefan Oltmann
08/21/2025, 7:16 AMStefan Oltmann
08/21/2025, 7:19 AMCLOVIS
08/21/2025, 7:20 AMStefan Oltmann
08/21/2025, 7:21 AMStefan Oltmann
08/21/2025, 7:22 AMStefan Oltmann
08/21/2025, 7:23 AMStefan Oltmann
08/21/2025, 9:38 PMAdam S
08/22/2025, 9:21 AMI don't really understand the math behind all that - that's why I have this big regression test. πfwiw I think the original JS lib didn't have any automated tests, and the TS lib only has a few https://github.com/velipso/polybool/blob/v2.0.11/src/polybool.test.ts, so it would be better! I guess the main test is the interactive example - but it's not automated, which is not ideal for KMP (no one's going to manual test 10+ targets...)
Adam S
08/22/2025, 9:23 AMStefan Oltmann
08/22/2025, 9:37 AMI guess the main test is the interactive example - but it's not automated, which is not ideal for KMP (no one's going to manual test 10+ targets...)Yes, polybool-java doesn't have had any tests. Just an example. Right now I run the tests only for the JVM target because I do resource loading. I'll improve that like I did with Ashampoo Kim in the past and run the regression test for all targets.
The plan was eventually to randomly generate data, and verify the result is the same for the TS lib and Kotlin port.That's also a regression test. Unfortunately we lack real unit tests for the stuff right now. I'm not sure how good purely random data will work for tests. That's why I resort for my 10k test sample to real world data. I hope that 10k is a big enough sample to catch even edge cases, but of course with bad luck I may still miss some. Also my test data isn't good for intersect unfortunately. I need to improve there, too. I tried letting ChatGPT generate some, but that didn't work out.
Stefan Oltmann
08/22/2025, 9:44 AMI'm interested in this!Now I understand what you meant: You're interested in doing the port. π I understood you're interested in someone doing the port and that's because I took action. π«£ Otherwise I wouldn't have sit down for three long evening doing the port. π¬ How do you do the port? Automated with ML or by hand? Your port may be even better than mine, because you port directly from the source. I ported from another port that's a few years old - so maybe there are unfixed bugs or newly introduced bugs that I now inherited. Hit me up when polybool-kt is available on Maven Central. I like to run tests to see if the results are the same.
Stefan Oltmann
08/22/2025, 9:45 AMStefan Oltmann
08/22/2025, 9:46 AMAdam S
08/22/2025, 9:48 AMI understood you're interested in someone doing the port and that's because I took action. π«£Yeah, but starting ports and not finishing them is my hobby. I'm probably never going to finish this one!
Stefan Oltmann
08/22/2025, 9:51 AMAdam S
08/22/2025, 9:51 AMHow do you do the port? Automated with ML or by hand?by hand, TS is really similar to Kotlin. Multi-caret find/replace is the most useful tool. I kinda gave up on porting when I encountered a bug, there's something wrong with
SegmentChainer
- the Kotlin port ends up with an extra region, and debugging it was really hardStefan Oltmann
08/22/2025, 9:52 AMAdam S
08/22/2025, 9:53 AMSomething that irritates me: You imported the whole history of the original project, but it doesn't have the fork marker.
Intentional?yeah, the "forked from $original" marker on GitHub bugs me! Plus I was going to do what you do: make lots of messy commits, and then clean everything up for the v0.0.1 release.
Stefan Oltmann
08/22/2025, 9:54 AMStefan Oltmann
08/22/2025, 9:55 AMStefan Oltmann
08/22/2025, 1:42 PMStefan Oltmann
08/22/2025, 1:44 PMStefan Oltmann
08/22/2025, 1:45 PMStefan Oltmann
08/22/2025, 7:49 PMStefan Oltmann
08/22/2025, 7:50 PMjoseph_ivie
08/22/2025, 7:55 PMStefan Oltmann
08/22/2025, 7:56 PMjoseph_ivie
08/22/2025, 7:57 PMStefan Oltmann
08/22/2025, 7:58 PMjoseph_ivie
08/22/2025, 7:58 PMStefan Oltmann
08/22/2025, 7:58 PMjoseph_ivie
08/22/2025, 8:00 PMStefan Oltmann
08/22/2025, 8:02 PMStefan Oltmann
08/22/2025, 8:03 PMloke
08/25/2025, 5:24 AMhfhbd
08/25/2025, 6:06 AMhfhbd
08/25/2025, 6:09 AMloke
08/25/2025, 6:16 AMloke
08/25/2025, 6:16 AMhfhbd
08/25/2025, 6:18 AMEdoardo Luppi
08/25/2025, 6:25 AMmap
file, or a ucm
file for the charset you want to support, it's not a lot of work.hfhbd
08/25/2025, 6:38 AMStefan Oltmann
08/25/2025, 6:42 AMStefan Oltmann
08/25/2025, 6:43 AM