simon.vergauwen
07/06/2021, 11:35 AMTask arrow opticsjsLegacyBrowserTest
Disconnected (0 times) reconnect failed before timeout of 2000ms (ping timeout)
java.lang.IllegalStateException: command '/Users/simonvergauwen/.gradle/nodejs/node-v14.15.4-darwin-x64/bin/node' exited with errors (exit code: 1)Anyone has any tips to figure out a better output for JS? I'm not even sure which file is failing 😕 Strangest thing, when I run
:arrow-core:cleanJsLegacyBrowserTest :arrow-core:jsLegacyBrowserTest from IDEA then all tests pass, but when I run clean build then it fails with the above error (same failure on CI). https://github.com/arrow-kt/arrow/pull/2441
EDIT: It's is strange because I just checked the test reports with this failure, and all test reports report 100% successfull.sam
07/07/2021, 10:46 AMsimon.vergauwen
07/07/2021, 11:14 AMsimon.vergauwen
07/07/2021, 11:15 AMjsLegacyBrowserTest. I haven't seen it for jsLegacyNodeTest, but not sure about the details of how those tests run. If they run in sequence, then that might also be the reason why I never see the jsLegacyNodeTest fail.sam
07/07/2021, 1:16 PMsam
07/12/2021, 4:49 AMsam
07/12/2021, 5:00 AMsimon.vergauwen
07/12/2021, 7:48 AMsimon.vergauwen
07/29/2021, 1:52 PMsam
07/29/2021, 1:57 PMsam
07/29/2021, 1:58 PMsam
07/29/2021, 1:58 PMsam
07/29/2021, 1:59 PMsam
07/29/2021, 1:59 PMsam
07/29/2021, 1:59 PMsimon.vergauwen
07/29/2021, 2:01 PMsam
07/29/2021, 2:01 PMsimon.vergauwen
07/29/2021, 2:02 PMsam
07/29/2021, 2:02 PMsam
07/29/2021, 2:02 PMsimon.vergauwen
07/29/2021, 3:55 PMsam
08/02/2021, 4:12 PMsam
08/02/2021, 4:12 PMsimon.vergauwen
08/02/2021, 4:17 PMsimon.vergauwen
08/02/2021, 4:18 PMsimon.vergauwen
08/02/2021, 4:19 PMgetTimeMillis for native in kotlin.system for Native, I saw you had it disabled. I only don’t know how to get access to kotlin.system from a module like nativeMain only in the actual platform folders I have access to it.simon.vergauwen
08/02/2021, 4:20 PMsam
08/02/2021, 4:32 PMsam
08/02/2021, 4:32 PMsimon.vergauwen
08/02/2021, 4:34 PMCaused by: org.gradle.internal.resolve.ModuleVersionNotFoundException: Could not find io.kotest:kotest-framework-multiplatform-plugin-js-jvm:5.0.0.3.
I pushed it to sv-kotest-mpp if you want to check it outsimon.vergauwen
08/02/2021, 4:34 PMsimon.vergauwen
08/02/2021, 4:34 PMsimon.vergauwen
08/02/2021, 4:35 PMI have all the targets set up 🙂Awesome, then I’m going to follow your example 😁 Thanks!
simon.vergauwen
08/02/2021, 4:36 PMsimon.vergauwen
08/02/2021, 4:36 PMJS(BOTH) to JS(IR) ?sam
08/02/2021, 4:36 PMsam
08/02/2021, 4:36 PMsam
08/02/2021, 4:37 PMsam
08/02/2021, 4:37 PMsam
08/02/2021, 4:37 PMsimon.vergauwen
08/02/2021, 4:38 PMJS(IR).sam
08/02/2021, 4:38 PMsam
08/02/2021, 4:38 PMsam
08/02/2021, 4:38 PMsam
08/02/2021, 4:38 PMsimon.vergauwen
08/02/2021, 4:38 PMBOTH anymore? And/or will I still be able to generate the binaries for legacy as long as it’s suggested to do so?sam
08/02/2021, 4:39 PMsam
08/02/2021, 4:39 PMsimon.vergauwen
08/02/2021, 4:39 PMsam
08/02/2021, 4:39 PMsam
08/02/2021, 4:40 PMsam
08/02/2021, 4:40 PMsimon.vergauwen
08/02/2021, 4:40 PMkarma.js under the hood etc?sam
08/02/2021, 4:40 PMsimon.vergauwen
08/02/2021, 4:40 PMsam
08/02/2021, 4:40 PMsimon.vergauwen
08/02/2021, 4:41 PMsam
08/02/2021, 4:43 PMsimon.vergauwen
08/02/2021, 4:43 PMsimon.vergauwen
08/02/2021, 4:43 PMsimon.vergauwen
08/02/2021, 4:44 PMsam
08/02/2021, 4:45 PMsam
08/02/2021, 4:45 PMsimon.vergauwen
08/02/2021, 4:47 PMsam
08/02/2021, 4:47 PMsam
08/02/2021, 4:47 PMsam
08/02/2021, 4:47 PMsam
08/02/2021, 4:54 PMsam
08/02/2021, 4:54 PMsam
08/02/2021, 4:54 PMsimon.vergauwen
08/02/2021, 4:58 PMsam
08/02/2021, 4:58 PMsimon.vergauwen
08/02/2021, 4:59 PMsam
08/02/2021, 4:59 PMsimon.vergauwen
08/02/2021, 4:59 PMsam
08/02/2021, 4:59 PMsimon.vergauwen
08/02/2021, 5:44 PMsimon.vergauwen
08/02/2021, 6:11 PMsimon.vergauwen
08/02/2021, 6:11 PMsimon.vergauwen
08/02/2021, 6:12 PM5.0.0.3 for the dependencies as well instead of the -SNAPSHOT versionsam
08/02/2021, 6:41 PMsam
08/02/2021, 6:41 PMsam
08/02/2021, 6:42 PMsam
08/02/2021, 6:42 PMsimon.vergauwen
08/02/2021, 7:07 PMsimon.vergauwen
08/02/2021, 7:07 PMsimon.vergauwen
08/02/2021, 7:07 PM5.0.0.376-SNAPSHOT version and the plugin is 5.0.0.3sam
08/02/2021, 7:08 PMsimon.vergauwen
08/02/2021, 7:08 PM-js dependencies but that didn’t do anything.sam
08/02/2021, 7:08 PMkotest-framework-engine-js on the classpathsimon.vergauwen
08/02/2021, 7:08 PMsam
08/02/2021, 7:09 PMsam
08/02/2021, 7:09 PMsam
08/02/2021, 7:09 PMmaven("<https://oss.sonatype.org/content/repositories/snapshots>")simon.vergauwen
08/02/2021, 7:11 PMsam
08/02/2021, 7:11 PMsam
08/02/2021, 7:12 PMrepositories {
mavenCentral()
mavenLocal()
maven("<https://oss.sonatype.org/content/repositories/snapshots>")
}sam
08/02/2021, 7:12 PMsimon.vergauwen
08/02/2021, 7:13 PMsimon.vergauwen
08/02/2021, 7:13 PMsimon.vergauwen
08/02/2021, 7:14 PMsimon.vergauwen
08/02/2021, 7:15 PMsimon.vergauwen
08/02/2021, 7:15 PMand if you add to commonTest you shouldn’t need to also add to jsTest, but you can leave it like that for now until you fix this issueSame goes for framework-api and assertions? But those couldn’t result in this error, right?
sam
08/02/2021, 7:15 PMsam
08/02/2021, 7:16 PMsam
08/02/2021, 7:17 PMsimon.vergauwen
08/02/2021, 7:17 PMsam
08/02/2021, 7:17 PMsimon.vergauwen
08/02/2021, 7:18 PMsam
08/02/2021, 7:18 PMreturn project.configurations.flatMap { it.all }.flatMap { it.dependencies }
.find { it.group == "io.kotest" && it.name.startsWith("kotest-framework-engine") }?.versionsam
08/02/2021, 7:19 PMsam
08/02/2021, 7:20 PMTestEnginesam
08/02/2021, 7:20 PMval engine =TestEngine()sam
08/02/2021, 7:20 PMsimon.vergauwen
08/02/2021, 7:23 PMsimon.vergauwen
08/02/2021, 7:23 PMsam
08/02/2021, 7:23 PMsam
08/02/2021, 7:23 PMsam
08/02/2021, 7:23 PMsam
08/02/2021, 7:23 PMsimon.vergauwen
08/02/2021, 7:24 PMsam
08/02/2021, 7:24 PMsam
08/02/2021, 7:24 PMsimon.vergauwen
08/02/2021, 7:28 PMsimon.vergauwen
08/02/2021, 7:29 PMsimon.vergauwen
08/02/2021, 7:29 PM5.0.0.376 and 5.0.0.376-SNAPSHOT to align with the runtime version but those didn’t loadsam
08/02/2021, 7:32 PMsimon.vergauwen
08/03/2021, 3:16 PMsam
08/04/2021, 12:59 PMsimon.vergauwen
08/04/2021, 2:25 PMsimon.vergauwen
08/04/2021, 2:25 PMsimon.vergauwen
08/04/2021, 3:46 PMsam
08/04/2021, 5:01 PMsimon.vergauwen
08/10/2021, 8:49 AMsam
08/10/2021, 2:44 PMsimon.vergauwen
08/10/2021, 2:59 PMsimon.vergauwen
08/10/2021, 3:00 PMsam
08/15/2021, 9:46 PMsimon.vergauwen
08/16/2021, 11:51 AMsimon.vergauwen
08/16/2021, 2:06 PMdestinationDir is null and ConcurrentModificationException coming from Gradle itself 🤕
Additionally, it’s not working with JS(BOTH) only with JS(IR) since it says it cannot resolve the dependencies for legacy. Which is fine, but I’d still like to produce legacy for the time being (until Kotlin recommends to not do it anymore).
So I’m also still looking for a way to disable tests for legacy so it will just ignore those tasks, and not try to resolve it dependencies.sam
08/16/2021, 2:06 PMsam
08/16/2021, 2:06 PMsam
08/16/2021, 2:07 PMsimon.vergauwen
08/16/2021, 2:09 PMcheck, test, build tasks 😕simon.vergauwen
08/16/2021, 2:09 PMsimon.vergauwen
08/16/2021, 2:56 PMExecution failed for task ':kotlinNpmInstall'.
> Cannot find karma@6.3.2 in yarn.lock
Any ideas?sam
08/16/2021, 2:58 PMsimon.vergauwen
08/16/2021, 3:07 PMsimon.vergauwen
08/16/2021, 3:08 PMsam
08/16/2021, 3:08 PMsam
08/16/2021, 3:09 PMsam
08/16/2021, 3:09 PMsimon.vergauwen
08/16/2021, 3:10 PMclean, right?simon.vergauwen
08/16/2021, 3:11 PMExecution failed for task ':arrow-core:macosX64Test'.
> Test running process exited unexpectedly.
😅sam
08/16/2021, 3:12 PMsam
08/16/2021, 3:12 PMsam
08/16/2021, 3:13 PMsam
08/16/2021, 3:13 PMsimon.vergauwen
08/16/2021, 3:13 PMmacosX64Test doesn’t seem to come from Kotest either.simon.vergauwen
08/16/2021, 3:13 PMsam
08/16/2021, 3:14 PMat org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesClient.ensureNodesClosed(TCServiceMessagesClient.kt:537)sam
08/16/2021, 3:14 PMsimon.vergauwen
08/16/2021, 3:15 PMsam
08/16/2021, 3:15 PMsimon.vergauwen
08/16/2021, 3:16 PMsimon.vergauwen
08/16/2021, 3:16 PM@Testsimon.vergauwen
08/16/2021, 3:17 PMsam
08/16/2021, 3:17 PMsimon.vergauwen
08/16/2021, 3:18 PMsimon.vergauwen
08/16/2021, 3:18 PMsam
08/16/2021, 3:24 PMsimon.vergauwen
08/16/2021, 4:17 PMsimon.vergauwen
08/16/2021, 4:20 PMiosX64 run on MacOs without doing anything? 😮sam
08/16/2021, 4:21 PMsimon.vergauwen
08/16/2021, 4:23 PMsimon.vergauwen
08/16/2021, 4:23 PMsam
08/16/2021, 4:23 PMsimon.vergauwen
08/16/2021, 4:30 PM> Task :arrow-core:watchosX64Test
Child process terminated with signal 11: Segmentation fault
Test running process exited unexpectedly.
> Task :arrow-optics:watchosX86Test
Child process terminated with signal 11: Segmentation fault
Test running process exited unexpectedly.
Saw same from tv targets, and think also ios.simon.vergauwen
08/16/2021, 4:31 PMsam
08/16/2021, 4:32 PMsam
08/16/2021, 4:32 PMsam
08/16/2021, 4:32 PMsimon.vergauwen
08/16/2021, 4:34 PMKind or Functor hierarchy. Arrow Fx Coroutines is simply on top of KotlinX Coroutines, and Optics are 6 interfaces with a bunch of implementations.simon.vergauwen
08/16/2021, 4:34 PMsimon.vergauwen
08/16/2021, 4:35 PMFAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':arrow-continuations:allTests'.
> Failed to execute all tests:
:arrow-continuations:iosX64Test: Test running process exited unexpectedly.
:arrow-continuations:macosX64Test: Test running process exited unexpectedly.
:arrow-continuations:tvosX64Test: Test running process exited unexpectedly.
:arrow-continuations:watchosX64Test: Test running process exited unexpectedly.
:arrow-continuations:watchosX86Test: Test running process exited unexpectedly.
:arrow-continuations:jsBrowserTest: java.lang.IllegalStateException: command '/Users/simonvergauwen/.gradle/nodejs/node-v14.15.4-darwin-x64/bin/node' exited with errors (exit code: 1)simon.vergauwen
08/16/2021, 4:35 PMsimon.vergauwen
08/16/2021, 4:36 PMsam
08/16/2021, 4:36 PMsimon.vergauwen
08/16/2021, 4:37 PM4.6.x to 5.x.x.xsimon.vergauwen
08/16/2021, 4:37 PMpoc-nativesimon.vergauwen
08/16/2021, 5:41 PMsam
08/17/2021, 1:21 AMsimon.vergauwen
08/17/2021, 11:57 AMsam
08/17/2021, 2:36 PMsam
08/17/2021, 2:36 PMsam
08/17/2021, 2:36 PMsam
08/17/2021, 2:36 PMsimon.vergauwen
08/17/2021, 3:11 PMarrow-libs which is the “project” folder with the top-level settings.gradle and that is a regular project with all modules as subProjectsimon.vergauwen
08/17/2021, 3:12 PMfx, optics and core you can also find settings.gradle but you can just ignore itsimon.vergauwen
08/17/2021, 3:12 PMI stripped the project down to only a couple of modules and the karma error goes awaySo you’re @ the same stage I was when I pushed last night 😅
sam
08/17/2021, 3:13 PMsimon.vergauwen
08/17/2021, 3:19 PMjsTest was failing on CI due to an abstract fun inside a sealed class for JS.. It was nothing critical but wasn’t expecting this.
Could that be something that happens only for IR, so it wasn’t generating in incorrect bytecode for legacy?
For native it’s still > Test running process exited unexpectedly.simon.vergauwen
08/17/2021, 3:20 PMsimon.vergauwen
08/17/2021, 3:20 PMsimon.vergauwen
08/17/2021, 3:20 PMsimon.vergauwen
08/17/2021, 3:21 PMsam
08/17/2021, 3:28 PMsimon.vergauwen
08/17/2021, 3:42 PMsimon.vergauwen
08/17/2021, 3:43 PMsam
08/17/2021, 3:43 PMsam
08/17/2021, 3:43 PMsimon.vergauwen
08/17/2021, 4:31 PMpoc-native-flat, feel free to push there.
This is where we setup the “subprojects” (arrow-core, arrow-continuations, …) https://github.com/arrow-kt/arrow/blob/poc-native-flat/gradle/subproject-mpp.gradle
And here on line 3 we setup kotest.multiplatform and on line 7 we include the script linked above. https://github.com/arrow-kt/arrow/blob/poc-native-flat/core/arrow-continuations/build.gradle
kotest.multiplatform is setup in all subprojects inside core except for retrofit which is JVM only and also uses a JVM only setup script.sam
08/17/2021, 4:50 PMsam
08/17/2021, 4:50 PMsam
08/17/2021, 4:50 PMsam
08/17/2021, 4:50 PMsimon.vergauwen
08/17/2021, 6:32 PMsam
08/17/2021, 7:12 PMsam
08/20/2021, 9:32 AMsimon.vergauwen
08/20/2021, 10:04 AMsam
08/20/2021, 10:05 AMsam
08/20/2021, 10:25 AMsam
08/20/2021, 10:38 AMsimon.vergauwen
08/20/2021, 11:04 AMsam
08/20/2021, 11:04 AMsimon.vergauwen
08/20/2021, 11:04 AMsimon.vergauwen
08/20/2021, 11:05 AMsam
08/20/2021, 11:05 AMsam
08/20/2021, 11:05 AMsam
08/20/2021, 11:05 AMsimon.vergauwen
08/20/2021, 11:06 AMStringSpec everywhere?sam
08/20/2021, 11:06 AMsam
08/20/2021, 11:06 AMsam
08/20/2021, 11:06 AMsam
08/20/2021, 11:06 AMsimon.vergauwen
08/20/2021, 11:07 AMStringSpec and if it’s not I can refactor themsimon.vergauwen
08/20/2021, 11:07 AMsam
08/20/2021, 11:07 AMsam
08/20/2021, 11:07 AMsam
08/20/2021, 11:07 AMsam
08/20/2021, 11:08 AMsam
08/20/2021, 11:08 AMsimon.vergauwen
08/20/2021, 11:24 AMsam
08/20/2021, 11:39 AMsam
08/20/2021, 11:39 AMsimon.vergauwen
08/20/2021, 11:42 AMsimon.vergauwen
08/20/2021, 11:43 AMsam
08/20/2021, 11:43 AMsimon.vergauwen
08/20/2021, 11:43 AMsam
08/20/2021, 11:43 AMsam
08/20/2021, 11:43 AMsam
08/20/2021, 11:43 AMsimon.vergauwen
08/20/2021, 11:44 AMsam
08/20/2021, 11:44 AMsam
08/20/2021, 11:44 AMsimon.vergauwen
08/20/2021, 11:44 AMsam
08/20/2021, 11:44 AMsam
08/20/2021, 11:44 AMsimon.vergauwen
08/20/2021, 11:44 AMsimon.vergauwen
08/20/2021, 11:44 AMsam
08/20/2021, 11:45 AMsam
08/20/2021, 11:45 AMsimon.vergauwen
08/20/2021, 11:45 AMsam
08/20/2021, 11:45 AMsam
08/20/2021, 11:45 AMsimon.vergauwen
08/20/2021, 11:45 AMsam
08/20/2021, 11:45 AMsam
08/20/2021, 11:45 AMsimon.vergauwen
08/20/2021, 11:45 AMsimon.vergauwen
08/20/2021, 11:46 AMsam
08/20/2021, 11:49 AMsam
08/20/2021, 11:49 AMsam
08/20/2021, 11:50 AMpoc-mpp-sam branchsam
08/20/2021, 12:12 PMsimon.vergauwen
08/20/2021, 1:41 PMsimon.vergauwen
08/20/2021, 1:41 PMsimon.vergauwen
08/20/2021, 2:13 PMmavenLocal in the config, did you try running locally without it?sam
08/20/2021, 2:16 PMsam
08/20/2021, 2:16 PMsam
08/20/2021, 2:16 PMsimon.vergauwen
08/20/2021, 3:31 PMarrow-core-test on the classpath than tests fail to run for native. Works fine for JS.
Strange thing is I have it working with arrow-core, but I ran in a scenario where if native worked that JS/JVM couldn’t load dependencies anymore, and seems to be other way around too.simon.vergauwen
08/20/2021, 3:38 PM./gradlew :arrow-continuations:macosX64Test :arrow-continuations:jsTest :arrow-continuations:jvmTest successfully locally 🦜simon.vergauwen
08/20/2021, 3:38 PMsimon.vergauwen
08/20/2021, 3:56 PMarrow-core-test but I’m not sure whatsimon.vergauwen
08/20/2021, 3:56 PMsimon.vergauwen
08/20/2021, 3:57 PMsimon.vergauwen
08/20/2021, 4:01 PMid("io.kotest.multiplatform") in plugins { } in arrow-core-testsimon.vergauwen
08/20/2021, 4:07 PM./gradlew :arrow-core:macosX64Test ? For me it only runs a single test file, instead of all tests in Arrow Core.simon.vergauwen
08/20/2021, 4:07 PMsam
08/20/2021, 6:13 PMsam
08/20/2021, 6:13 PMsimon.vergauwen
08/20/2021, 7:22 PMsam
08/20/2021, 7:23 PMConfigure project :.& .@&. .@@&&. .@@@&&&. .@@@@&&&&. .@@@@@&&&&&. .@@@@@@&&&&&&. .@@@@@@@&&&&&&&. .@@@@@@@@&&&&&&&&. .@@@@@@@@@&&&&&&&&&. .@@@@@@@@@@&&&&&&&&&&. .@@@@@@@@@@@&&&&&&&&&&&. .@@@@@@@@@@@@&&&&&&&&&&&&. .@@@@@@@@@@%. .%&&&&&&&&&&. .@@@@@@@%. %. .% .%&&&&&&&. .@@@%. .%%. .#&&&. .@%. ` .%&. ARROW A library for Typed Functional Programming in Kotlin v1.0.0-SNAPSHOT (Kotlin 1.5.21) arrow-libs [arrow corelinuxX64Test]
sam
08/20/2021, 7:23 PMsam
08/20/2021, 7:25 PMsam
08/20/2021, 7:25 PMsimon.vergauwen
08/20/2021, 8:01 PMsimon.vergauwen
08/20/2021, 8:01 PMsam
08/20/2021, 8:02 PMsam
08/20/2021, 8:02 PMsam
08/20/2021, 8:03 PMsimon.vergauwen
08/20/2021, 8:03 PMarrow-core:macosX64Test then the generated test report said it only ran 8 test from 1 file.sam
08/20/2021, 8:04 PMsam
08/20/2021, 8:04 PMsimon.vergauwen
08/20/2021, 8:09 PM./gradlew :arrow-core:clean :arrow-core:macosX64Test run from IDEA.simon.vergauwen
08/20/2021, 8:09 PMsam
08/20/2021, 8:10 PMsimon.vergauwen
08/20/2021, 8:10 PMsimon.vergauwen
08/20/2021, 8:10 PMcommonTest for Arrow Coresam
08/20/2021, 8:10 PMsam
08/20/2021, 8:10 PMsimon.vergauwen
08/20/2021, 8:10 PMsam
08/20/2021, 8:10 PMsimon.vergauwen
08/20/2021, 8:11 PMsam
08/20/2021, 8:11 PMsimon.vergauwen
08/20/2021, 8:11 PMsimon.vergauwen
08/20/2021, 8:11 PMsam
08/20/2021, 8:11 PMsimon.vergauwen
08/20/2021, 8:11 PMsimon.vergauwen
08/20/2021, 8:11 PMsimon.vergauwen
08/20/2021, 8:13 PMI’m confusedSorry 😅
simon.vergauwen
08/20/2021, 8:54 PM<test id='macosX64Test' parentId=''><ijLogEol/>
<descriptor name='macosX64Test' className='' /><ijLogEol/>
</test><ijLogEol/>
</event></ijLog>
<test id='macosX64Test' parentId=''><ijLogEol/>
<descriptor name='macosX64Test' className='' /><ijLogEol/>
<result resultType='SKIPPED' startTime='1629492800330' endTime='1629492803166'><ijLogEol/>
<failureType>error</failureType><ijLogEol/>
</result><ijLogEol/>
</test><ijLogEol/>
</event></ijLog>sam
08/20/2021, 8:55 PMsimon.vergauwen
08/20/2021, 8:56 PMsimon.vergauwen
08/20/2021, 8:57 PMsimon.vergauwen
08/20/2021, 9:01 PMkotest-example-multiplatform if you add multiple test filessam
08/20/2021, 9:02 PMsimon.vergauwen
08/21/2021, 12:45 AM./gradlew :arrow-fx-stm:jsTest I had those manually configure before through he karma.conf.js trick.
https://kotlinlang.org/docs/js-project-setup.html#karma-configurationsam
08/21/2021, 12:45 AMsam
08/21/2021, 12:46 AMsam
08/21/2021, 12:46 AMsam
08/21/2021, 12:50 AMsimon.vergauwen
08/21/2021, 1:26 AMsimon.vergauwen
08/21/2021, 1:26 AMsam
08/21/2021, 1:27 AMsam
08/21/2021, 1:27 AMsam
08/21/2021, 1:27 AMsimon.vergauwen
08/21/2021, 2:10 PMyou guys thought about making a FP addition for Result ?What do you mean? We want to add result { } blocks, and perhaps some extension when kotlin.Result is stable
sam
08/21/2021, 3:20 PMsam
08/21/2021, 8:08 PMsimon.vergauwen
08/22/2021, 9:28 AMsimon.vergauwen
08/22/2021, 9:30 AMkarma config btw, I had to increase some other timeouts as well. Note I set them all super high here, since I was able to rely on Kotest timeouts even with these ridiculous high timeouts on Karma.
https://github.com/arrow-kt/arrow/blob/main/arrow-libs/karma.config.d/karma.conf.jssam
08/22/2021, 9:30 AMsam
08/22/2021, 9:31 AMsam
08/22/2021, 9:31 AMsimon.vergauwen
08/22/2021, 9:32 AM4000, and the comments says // some frameworks default to a 2000 timeout, // we can change this to the kotest test setting.
So here I expected the 4000 to be the default project timeout setting from global settings, spec configured timeout or test configured time-outsam
08/22/2021, 9:33 AMsam
08/22/2021, 9:33 AMsam
08/22/2021, 9:33 AMsam
08/22/2021, 9:33 AMsimon.vergauwen
08/22/2021, 9:34 AMsam
08/22/2021, 9:34 AMsam
08/22/2021, 9:34 AMsam
08/22/2021, 9:34 AMsimon.vergauwen
08/22/2021, 9:34 AMsam
08/22/2021, 9:34 AM// some frameworks default to a 2000 timeout,
// here we set to a high number and use the timeout support kotest provides via coroutines
test.timeout(Int.MAX_VALUE)sam
08/22/2021, 9:35 AMsam
08/22/2021, 9:35 AMsimon.vergauwen
08/22/2021, 9:35 AMsam
08/22/2021, 9:35 AMsam
08/22/2021, 9:35 AMsimon.vergauwen
08/22/2021, 9:36 AMsam
08/22/2021, 9:36 AMsimon.vergauwen
08/22/2021, 9:39 AMsam
08/22/2021, 9:40 AMsimon.vergauwen
08/22/2021, 9:44 AMsam
08/22/2021, 9:45 AMsam
08/22/2021, 9:45 AMsam
08/22/2021, 9:45 AMsimon.vergauwen
08/22/2021, 9:52 AMsimon.vergauwen
08/22/2021, 9:52 AMsimon.vergauwen
08/22/2021, 9:53 AMsam
08/22/2021, 9:58 AMsimon.vergauwen
08/22/2021, 10:02 AMsam
08/22/2021, 10:03 AMsimon.vergauwen
08/22/2021, 10:06 AMat kotlin.native.internal#ThrowNoWhenBranchMatchedException(/Users/teamcity2/buildAgent/work/7c4fade2802b7783/kotlin/kotlin-native/runtime/src/main/kotlin/kotlin/native/internal/RuntimeUtils.kt:64)
at io.kotest.property.Gen#minIterations(/Users/runner/work/kotest/kotest/kotest-property/src/commonMain/kotlin/io/kotest/property/Gen.kt:63)
at io.kotest.property#calculateMinimumIterations(/Users/runner/work/kotest/kotest/kotest-property/src/commonMain/kotlin/io/kotest/property/config.kt:42)
at io.kotest.property#computeDefaultIteration(/Users/runner/work/kotest/kotest/kotest-property/src/commonMain/kotlin/io/kotest/property/config.kt:28)
at io.kotest.property#checkAll(/Users/runner/work/kotest/kotest/kotest-property/src/commonMain/kotlin/io/kotest/property/propertyTest1.kt:16)sam
08/22/2021, 10:08 AMGen.kt:63sam
08/22/2021, 10:08 AMfun minIterations(): Int = when (this) {
is Arb -> 1
is Exhaustive -> this.values.size
}simon.vergauwen
08/22/2021, 10:08 AMsam
08/22/2021, 10:09 AMsimon.vergauwen
08/22/2021, 10:09 AMsam
08/22/2021, 10:09 AMsam
08/22/2021, 10:09 AMsam
08/22/2021, 10:09 AMsam
08/22/2021, 10:10 AMsimon.vergauwen
08/22/2021, 10:10 AMsam
08/22/2021, 10:10 AMsam
08/22/2021, 10:11 AMfun minIterations(): Int = when (this) {
is Exhaustive -> this.values.size
else -> 1
}
Which shouldn't be required but is the same thing and might get past teh compiler issuesimon.vergauwen
08/22/2021, 10:12 AMArb everywhere at the moment, I’ve been looking at Exhaustive but since we have a lot of Arb.string anywhere it doesn’t seem to make sense.
I think it would make more sense on client projects where domain models are much more constraintsam
08/22/2021, 10:13 AMsam
08/22/2021, 10:13 AMsam
08/22/2021, 10:13 AMsimon.vergauwen
08/22/2021, 10:14 AMcheckAll { s: String -> which I thought we weren’t using anywhere in Arrow anymoresimon.vergauwen
08/22/2021, 10:16 AMsam
08/22/2021, 10:16 AMsimon.vergauwen
08/22/2021, 10:16 AMcheckAll(Arb.string()) as we speaksam
08/22/2021, 10:17 AMsam
08/22/2021, 10:17 AMcheckAll { s: String might not work on native, it uses reflection on the parameter typessimon.vergauwen
08/22/2021, 10:19 AMwhen with an incorrect type.
I guess it’s doing when(null) { is Arb -> … is Exhausive -> … } which failssam
08/22/2021, 10:21 AMsimon.vergauwen
08/22/2021, 10:41 AMsimon.vergauwen
08/22/2021, 10:43 AM5.0.0.403-SNAPSHOT.
Let’s see what happens. https://github.com/arrow-kt/arrow/pull/2466 👀
The bug where only the first out of all test files runs for native is still open, correct?sam
08/22/2021, 10:50 AMsam
08/22/2021, 12:47 PMsam
08/22/2021, 12:47 PMsam
08/22/2021, 3:24 PMsimon.vergauwen
08/22/2021, 3:26 PMsimon.vergauwen
08/22/2021, 3:26 PMsimon.vergauwen
08/22/2021, 8:19 PMsam
08/22/2021, 8:20 PMsimon.vergauwen
08/22/2021, 8:20 PMsimon.vergauwen
08/22/2021, 8:21 PMsam
08/22/2021, 8:41 PMsimon.vergauwen
08/23/2021, 8:06 AMNoActivity timeout on CI, and I remember I did a dance that ended up with these 3 for CI. After these 3 were that CI became stable for Arrow with the legacy JS testing.
https://github.com/arrow-kt/arrow/blob/main/arrow-libs/karma.config.d/karma.conf.js
"pingTimeout": 600000,
"browserNoActivityTimeout": 600000,
"browserDisconnectTimeout": 600000simon.vergauwen
08/23/2021, 8:07 AMsimon.vergauwen
08/23/2021, 8:27 AMArb.list?simon.vergauwen
08/23/2021, 8:28 AMUnitSpec and ArrowFxSpec and just use StringSpec everywhere and just expose a top-level function to add laws testing into a Spec as an extension on TestConfiguration.simon.vergauwen
08/23/2021, 1:25 PM./gradlew :arrow-fx-stm:jsTest.simon.vergauwen
08/23/2021, 1:26 PMsam
08/23/2021, 2:23 PMPropertyTesting.defaultIterationCount = 987simon.vergauwen
08/23/2021, 3:38 PMsam
08/23/2021, 3:38 PMsimon.vergauwen
08/23/2021, 3:38 PMsam
08/23/2021, 3:38 PMsam
08/23/2021, 3:39 PMsimon.vergauwen
08/23/2021, 3:39 PMsimon.vergauwen
08/23/2021, 3:39 PMsam
08/23/2021, 3:39 PMsam
08/23/2021, 3:40 PMsam
08/23/2021, 3:40 PMsimon.vergauwen
08/23/2021, 3:42 PMsam
08/23/2021, 3:42 PMsimon.vergauwen
08/23/2021, 4:03 PMelse -> 1. I’m still seeing that error in Arrow Optics on 411-SNAPSHOT
https://github.com/kotest/kotest/blob/master/kotest-property/src/commonMain/kotlin/io/kotest/property/Gen.kt#L62simon.vergauwen
08/23/2021, 4:04 PMUnitSpec : StringSpec and checkAll.simon.vergauwen
08/23/2021, 4:04 PMsimon.vergauwen
08/23/2021, 4:04 PMsimon.vergauwen
08/23/2021, 4:06 PMabstract fun minIterations()simon.vergauwen
08/23/2021, 4:06 PM(/Users/teamcity2/buildAgent/work/7c4fade2802b7783/kotlin/kotlin-native/runtime/src/main/kotlin/kotlin/Exceptions.kt:135)
at kotlin.native.internal#ThrowNoWhenBranchMatchedException(/Users/teamcity2/buildAgent/work/7c4fade2802b7783/kotlin/kotlin-native/runtime/src/main/kotlin/kotlin/native/internal/RuntimeUtils.kt:64)
at io.kotest.property.Gen#minIterations(/Users/runner/work/kotest/kotest/kotest-property/src/commonMain/kotlin/io/kotest/property/Gen.kt:63)sam
08/23/2021, 4:06 PMsam
08/23/2021, 4:07 PMsimon.vergauwen
08/23/2021, 4:07 PMkapt module but I have it disabled so it cannot interferesam
08/23/2021, 4:07 PMsimon.vergauwen
08/23/2021, 4:07 PMsam
08/23/2021, 4:12 PMsimon.vergauwen
08/23/2021, 4:25 PMsimon.vergauwen
08/23/2021, 4:26 PMsam
08/23/2021, 4:31 PMsimon.vergauwen
08/23/2021, 7:13 PMGen#generate has the same problem. Shall I turn them into abstract fun ?sam
08/23/2021, 7:14 PMsam
08/23/2021, 7:14 PMsam
08/23/2021, 7:14 PMsimon.vergauwen
08/23/2021, 7:26 PMArb is abstract so it’s open, right?sam
08/23/2021, 7:35 PMsimon.vergauwen
08/23/2021, 8:06 PMnull bug and I think I fixed it from my sidesam
08/23/2021, 8:06 PMsimon.vergauwen
08/23/2021, 8:06 PMthis is null inside Gen because you call it on the instancesam
08/23/2021, 8:07 PMsimon.vergauwen
08/23/2021, 8:07 PMval x: Arb<A> and in that’s the only module that does itsam
08/23/2021, 8:07 PMsimon.vergauwen
08/23/2021, 8:07 PMfun Arb.Companion they were properly initialisedsam
08/23/2021, 8:08 PMsimon.vergauwen
08/23/2021, 8:09 PMsimon.vergauwen
08/23/2021, 8:09 PMsam
08/23/2021, 8:10 PMsimon.vergauwen
08/23/2021, 8:13 PMsam
08/23/2021, 8:13 PMsam
08/23/2021, 8:13 PMsam
08/23/2021, 8:13 PMsam
08/23/2021, 8:14 PMsimon.vergauwen
08/23/2021, 9:18 PMvalue don’t seem to work. I had to remove two usage like that in 2 different modules same compiler bugsam
08/23/2021, 9:18 PMsimon.vergauwen
08/23/2021, 10:03 PMsimon.vergauwen
08/23/2021, 10:03 PMsimon.vergauwen
08/24/2021, 7:31 AMsimon.vergauwen
08/24/2021, 7:31 AMsimon.vergauwen
08/24/2021, 7:32 AMsam
08/24/2021, 8:22 AMsam
08/24/2021, 8:23 AMsimon.vergauwen
08/24/2021, 8:33 AM--verbose to Kotlin Compiler settings in IDEA and check the build window?sam
08/24/2021, 8:36 AMsam
08/24/2021, 8:37 AMtargets.all {
compilations.all {
kotlinOptions {
verbose = true
}
}
}sam
08/24/2021, 8:37 AMsimon.vergauwen
08/24/2021, 8:53 AMsimon.vergauwen
08/24/2021, 8:53 AM--verbose 😅sam
08/24/2021, 9:01 AMsam
08/24/2021, 9:02 AMsam
08/24/2021, 9:02 AMsam
08/24/2021, 9:03 AM> Task :compileTestKotlinLinuxX64
v: Using Kotlin home directory dist/kotlinc
w: Installing SpecIrGenerationExtension
w: BitstringTest.kt contains 1
w: SsnTest.kt contains 1
w: ThrowableTest.kt contains 1
w: Detected 3 native specs:
w: BitstringTest
w: SsnTest
w: ThrowableTestsam
08/24/2021, 9:03 AMsimon.vergauwen
08/24/2021, 9:16 AM"…" { } invocation into atomically from STM which loops and is thus adding n tests for n retries in STM 😕 I am also trying 1.5.30-RC which has JS IR in Betasam
08/24/2021, 9:17 AMsimon.vergauwen
08/24/2021, 9:37 AMsam
08/24/2021, 9:40 AMsimon.vergauwen
08/24/2021, 10:58 AMJS(BOTH) without breaking the build command?sam
08/24/2021, 10:58 AMsimon.vergauwen
08/24/2021, 12:16 PM