Cannot run compose desktop application using IDEA gutter

Describe the bug
When I have a multiplatform Compose project with desktop target, I try to run app with IDEA gutter icon and it fails in runtime with exceptions like:
Cannot find libskiko-macos-arm64.dylib.sha256, proper native dependency missing.

When use Gradle :run everything works fine but really slow, comparing with IDEA start.
If I use only jvm target, not multiplatform, starting from gutter works fine as well.
Affected platforms
Select one of the platforms below:

Desktop (in multiplatform setup)

Versions

Kotlin version*: 1.8.20
Compose Multiplatform version*: 1.4.0
OS version: MacOS X
OS architecture: arm64
JDK (for desktop issues): corretto-17

To Reproduce

Open image viewer example in IDEA
Try to run desktop main from IDEA gutter

Result: it runs, but fails with exceptions like:
Cannot find libskiko-macos-arm64.dylib.sha256, proper native dependency missing.

Expected behavior
Should work fine.

I investigated the issue a little bit and found that skiko loads libraries manually here
And Compose Gradle plugin provides all necessary resources, but when running from IDEA doesn't.
I don't know why it works fine with jvm only cases (without kotlin("mutliplatform") only kotlin("jvm")). Only noticed that with "jvm" plugin skiko-awt-runtime is provided as a runtime dependency but with "multiplatform" it is not

Besides, none of my "Kotlin application" run configurations work, not only the Compose/Desktop related ones :(

Ok, I reviewed the current Situation and created the following issue on YouTrack:
https://youtrack.jetbrains.com/issue/KT-58660/KGP-import-KotlinRunConfiguration-wont-be-able-to-infer-correct-runtime-classpath
Generally, I take this issue very seriously. The proposal will hopefully fix more issues with unreliable run-gutters. Please let me know if you have any objections or suggestions for improvement.

This may be a little late, but I had this issue too a while ago. So I looked into the documentation of Skiko itself and found out that they suggest manually importing it the following way (the "version" may differ):
val osName = System.getProperty("os.name")
    val targetOs = when {
        osName == "Mac OS X" -> "macos"
        osName.startsWith("Win") -> "windows"
        osName.startsWith("Linux") -> "linux"
        else -> error("Unsupported OS: $osName")
    }

    val targetArch = when (val osArch = System.getProperty("os.arch")) {
        "x86_64", "amd64" -> "x64"
        "aarch64" -> "arm64"
        else -> error("Unsupported arch: $osArch")
    }

    val version = "0.7.70" // or any more recent version
    val target = "${targetOs}-${targetArch}"

    sourceSets {
        val jvmMain by getting {
            dependencies {
                implementation("org.jetbrains.skiko:skiko-awt-runtime-$target:$version")
                implementation(compose.desktop.currentOs)
           }
      }
}

I simply put this into the following:
kotlin {}
but I think this also works when you just put it outside of it. But the implementation has to be in the 'dependencies {}' of course 😄 .

Please upgrade IntelliJ and Kotlin instead and report back if this works for you 👍

Please upgrade IntelliJ and Kotlin instead and report back if this works for you 👍

I have spent lots of time on this, but at least it works with Kotlin 1.9.0, compose 1.5.0-beta01 and Intellij 2023.2

I am very glad to hear this! @AlexeyTsvetkov I think this issue is resolved;
At least from IntelliJ and Kotlin side. What do you think about closing it?

One small thing to note, the old broken run configuration still persists(it has Kotlin icon), the new run config has Gradle icon and works. I was manually selecting it and was like not again...

I updated intellij and used Kotlin 1.9.0, compose 1.5.0-beta01 and Intellij 2023.2 on a desktop only compose project and I am still getting the missing skiko error. I fixed it using the manual import as described in the above comment So for me this is still an issue when I try to run from the gutter.

ran into the same issue, can we reopen the ticket?

@DarkAtra I'm not sure it is actually the same issue. Could you please provide some additional information?

What OS do you use?
What Kotlin Gradle plugin is used in the module where you are seeing the issue?
Is it org.jetbrains.kotlin.jvm or org.jetbrains.kotlin.multiplatform?

@AlexeyTsvetkov the exception reads:

Exception in thread "main" java.lang.ExceptionInInitializerError

	at androidx.compose.ui.res.ImageResources_desktopKt.loadImageBitmap(ImageResources.desktop.kt:33)

        [...]

Caused by: org.jetbrains.skiko.LibraryLoadException: Cannot find libskiko-macos-arm64.dylib.sha256, proper native dependency missing.

	at org.jetbrains.skiko.Library.findAndLoad(Library.kt:105)

	at org.jetbrains.skiko.Library.load(Library.kt:59)

I tried on both Windows 10 and MacOS 13.5.1 (22G90) on an Apple M2 Pro Chip and got the same error message (with different os and arch).
In my gradle setup, i use: kotlin("multiplatform") and id("org.jetbrains.compose") -> see: https://github.com/DarkAtra/bfme2-patcher/blob/compose-issue/updater/build.gradle.kts#L5-L6
Versions: https://github.com/DarkAtra/bfme2-patcher/blob/compose-issue/gradle.properties#L2-L3

Cradle sync firstly, then click the gutter in left of your app main function

@wwalkingg while that works, it does not allow setting a working directory via the run configuration anymore (this is a blocker for me). what's the reasoning to switch to gradle jvmRun instead of whatever was used in previous compose versions?

What is the reason for switching to gradle jvmRun instead of whatever compose was used in previous versions?

@DarkAtra we (Compose Multiplatform team) did not change anything in regards to this issue.
Some time ago, the Kotlin Multiplatform team had implemented a new, better, faster import. The new import did not consider that IntelliJ was bypassing Gradle when running applications, even if build/test actions are delegated to Gradle. When a user clicked the "run" icon in the gutter, IntelliJ would delegate the build itself, but then ran the application directly using run configuration settings and dependencies it resolved during the last import.
IntelliJ's default run mechanism is not very intuitive to both end users and Kotlin project developers. For example, even with the old KMP import, IntelliJ could discover a new runtime dependency only during re-import.
However, the new KMP import completely ignored runtime and runtimeOnly dependencies, because they are not needed for editing/refactoring/navigation and etc. At the same time, Compose's bindings to Skia (the native rendering library) are naturally runtime only dependencies:

the native bindings have to be built for each platform separately;
the bindings are quite big to put all platform DLLs into the same jar;
and the rendering library should be considered an implementation detail anyway (we don't provide any compatibility guarantees for Skiko, all compatibility guarantees are for Compose public APIs only).

When the original issue with run from the gutter was uncovered, the new import was already enabled by default. To fix the issue, the Kotlin Multiplatform team has swiftly implemented a new run mechanism, which uses Gradle for both building and running code.
As a workaround, you can try to set the working directory in the build script:
tasks.configureEach {
    if (name == "jvmRun") {
        this as JavaExec
        setWorkingDir(<A_DESIRED_BUILD_DIRECTORY>)
    }
}

The old running mechanism still works for non-multiplatform modules. As long as your project does not target Android/iOS/WASM, you can try to use org.jetbrains.kotlin.jvm instead of org.jetbrains.kotlin.multiplatform Gradle plugin.
Also, feel free to send feedback to the Kotlin Multiplatform team directly by creating an issue at https://youtrack.jetbrains.com/issues/KTIJ

@AlexeyTsvetkov ty for the detailed explanation! i'll try using jvm as i primarily target windows.

I'm hitting this in multiplatform 1.9.0.  I am doing multiplatform for both jvm and android (and other targets), so I had to roll my own jvm app jar because mp doesn't support jvm and android at the same time.
The workaround suggested here: https://github.com/JetBrains/compose-multiplatform/issues/3123#issuecomment-1647435023 (import a platform specific jar into the jvm project) works for me.  But obviously its counter to the entire point of a JVM project which is to run on many platforms.
Any ideas about how/whether putting all the platform-specific jars into my app "fat" jar would work?
This is my jvm "fat jar creator" code:
/* Put all the dependent files into a single big jar */
tasks.register<Jar>("appJar") {
    archiveClassifier.set("app")
    manifest {
        attributes["Main-Class"] = "my.class.path"
    }
    duplicatesStrategy = DuplicatesStrategy.EXCLUDE

    for (c in kotlin.targets.named("jvm").get().compilations)
    {
        val tmp = c.runtimeDependencyFiles
        if (tmp != null)
        {
            // If its a jar blow the jar up and add the class files in that jar
            from(tmp.filter { it.name.endsWith("jar") }.map { zipTree(it)})
        }
        from(c.output)
    }
}

I'm hitting this in multiplatform 1.9.0. I am doing multiplatform for both jvm and android (and other targets), so I had to roll my own jvm app jar because mp doesn't support jvm and android at the same time.

@gandrewstone I don't understand, what mp doesn't support jvm and android at the same time means? Kotlin Multiplatform does support both JVM and Android targets in the same project. It's even possible to create a shared JVM source set between Desktop JVM and Android (there might be some quirks with doing that, but Compose Multiplatform actually uses that to avoid duplicating code between Android and Desktop JVM).

why is this closed? still happens on Mac M1

still happens on Mac M1
Compose version = 1.5.1
Kotlin version = 1.9.10
plugin = multiplatform
if downgrade Kotlin version to 1.8.10
and Compose version to 1.3.1 it works.

Try after gradle sync completely ？

still happens on Mac M1
Compose version = 1.5.1
Kotlin version = 1.9.10
plugin = multiplatform
if downgrade Kotlin version to 1.8.10
and Compose version to 1.3.1 it works.

Try after gradle sync completely ？

yep, after a lot ones

@luangs7 try uninstalling the compose multiplatform plugin in AS/IJ and install it again.
Or even better uninstall the plugin, install a more recent IDE version and install the plugin again.
Also after uninstalling the plugin, make sure it is removed from the directory AS/IJ saves the plugins, just in case.

I have the same issue when upgrading from Kotlin 1.8.22 to Kotlin 1.9
w 10
compose 1.5.1
Exception in thread "main" java.lang.ExceptionInInitializerError
at androidx.compose.ui.awt.WindowComposeBridge.(WindowComposeBridge.desktop.kt:40)
at androidx.compose.ui.awt.ComposeWindowDelegate.(ComposeWindowDelegate.desktop.kt:53)
at androidx.compose.ui.awt.ComposeWindow.(ComposeWindow.desktop.kt:62)
at androidx.compose.ui.awt.ComposeWindow.(ComposeWindow.desktop.kt:60)
at androidx.compose.ui.window.Window_desktopKt$Window$3.invoke(Window.desktop.kt:179)
at androidx.compose.ui.window.Window_desktopKt$Window$3.invoke(Window.desktop.kt:173)
at androidx.compose.ui.window.Window_desktopKt$Window$10.invoke(Window.desktop.kt:405)
at androidx.compose.ui.window.Window_desktopKt$Window$10.invoke(Window.desktop.kt:402)
at androidx.compose.ui.window.AwtWindow_desktopKt$AwtWindow$2.invoke(AwtWindow.desktop.kt:74)
at androidx.compose.ui.window.AwtWindow_desktopKt$AwtWindow$2.invoke(AwtWindow.desktop.kt:73)
at androidx.compose.runtime.DisposableEffectImpl.onRemembered(Effects.kt:81)
at androidx.compose.runtime.CompositionImpl$RememberEventDispatcher.dispatchRememberObservers(Composition.kt:1137)
at androidx.compose.runtime.CompositionImpl.applyChangesInLocked(Composition.kt:828)
at androidx.compose.runtime.CompositionImpl.applyChanges(Composition.kt:849)
at androidx.compose.runtime.Recomposer.composeInitial$runtime(Recomposer.kt:1041)
at androidx.compose.runtime.CompositionImpl.setContent(Composition.kt:520)
at androidx.compose.ui.window.Application_desktopKt$awaitApplication$2$1$2.invokeSuspend(Application.desktop.kt:219)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: org.jetbrains.skiko.LibraryLoadException: Cannot find skiko-windows-x64.dll.sha256, proper native dependency missing.
at org.jetbrains.skiko.Library.findAndLoad(Library.kt:105)
at org.jetbrains.skiko.Library.load(Library.kt:59)
at org.jetbrains.skiko.SkiaLayer.(SkiaLayer.awt.kt:32)
... 32 more

This issue appears after I upgrading my IDE from version 2022 to 2023, compose multiplatform from 1.3.0 to 1.5.2 and kotlin from 1.8.0 to 1.8.22. It disappears if I downgrade only kotlin back to 1.8.0.
Exception in thread "main" java.lang.ExceptionInInitializerError
	at androidx.compose.ui.awt.WindowComposeBridge.<init>(WindowComposeBridge.desktop.kt:40)
	at androidx.compose.ui.awt.ComposeWindowDelegate.<init>(ComposeWindowDelegate.desktop.kt:53)
	at androidx.compose.ui.awt.ComposeWindow.<init>(ComposeWindow.desktop.kt:62)
	at androidx.compose.ui.awt.ComposeWindow.<init>(ComposeWindow.desktop.kt:60)
	at androidx.compose.ui.window.Window_desktopKt$Window$3.invoke(Window.desktop.kt:179)
	at androidx.compose.ui.window.Window_desktopKt$Window$3.invoke(Window.desktop.kt:173)
	at androidx.compose.ui.window.Window_desktopKt$Window$10.invoke(Window.desktop.kt:405)
	at androidx.compose.ui.window.Window_desktopKt$Window$10.invoke(Window.desktop.kt:402)
	at androidx.compose.ui.window.AwtWindow_desktopKt$AwtWindow$2.invoke(AwtWindow.desktop.kt:74)
	at androidx.compose.ui.window.AwtWindow_desktopKt$AwtWindow$2.invoke(AwtWindow.desktop.kt:73)
	at androidx.compose.runtime.DisposableEffectImpl.onRemembered(Effects.kt:81)
	at androidx.compose.runtime.CompositionImpl$RememberEventDispatcher.dispatchRememberObservers(Composition.kt:1137)
	at androidx.compose.runtime.CompositionImpl.applyChangesInLocked(Composition.kt:828)
	at androidx.compose.runtime.CompositionImpl.applyChanges(Composition.kt:849)
	at androidx.compose.runtime.Recomposer.composeInitial$runtime(Recomposer.kt:1041)
	at androidx.compose.runtime.CompositionImpl.setContent(Composition.kt:520)
	at androidx.compose.ui.window.Application_desktopKt$awaitApplication$2$1$2.invokeSuspend(Application.desktop.kt:219)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: org.jetbrains.skiko.LibraryLoadException: Cannot find libskiko-macos-arm64.dylib.sha256, proper native dependency missing.
	at org.jetbrains.skiko.Library.findAndLoad(Library.kt:105)
	at org.jetbrains.skiko.Library.load(Library.kt:59)
	at org.jetbrains.skiko.SkiaLayer.<clinit>(SkiaLayer.awt.kt:32)
	... 32 more

I am using the Compose Multiplatform template generated by InteiiJ IDEA, and then manually updated the versions. The content of gradle.properties is as follow:
kotlin.code.style=official
kotlin.version=1.8.22
agp.version=7.3.0
compose.version=1.5.2

I also had the same issue but updating the versions like below and run command(./gradlew run) in the terminal fixed the issue.
kotlin.version=1.9.0
compose.version=1.5.0-beta01
Exception in thread "main" java.lang.ExceptionInInitializerError
...
Caused by: org.jetbrains.skiko.LibraryLoadException: Cannot find libskiko-macos-arm64.dylib.sha256, proper native dependency missing.

ah no running ./gradlew run always works for me, it is only the green play button that doesn't

The issue with the non-working green play button just appeared in my current Jetpack Compose Multiplatform project. It happened after I upgraded to the latest Kotlin plugin but as I import the compose libraries without version version numbers it could be as well that it was just something else that updated silently.
I use currently

IntelliJ Community Edition 2023.1
Kotlin 1.9
Jetpack Compose 1.5.0
Material3 1.1.1

After trying everything that I read here and in other sources about the problem I came up with the following solution:

Open "Edit Configurations ..."
Click on + to create a new configuration and choose Gradle not Kotlin
Enter "desktop:run" in the field labeled run
If you need command line options add  --args="" after the gradle task name

That way I got at least a working green play button and can wait until some upgrades solve the problem.

Windows 10 Pro

@nantoka69 Can you please provide a minimal reproducible sample?
And we will try to check it on Windows too.

There is still an issue on Android Studio; Root cause is that AS does not import Gradle task data and the execution relies on this data being present. The Kotlin Build Tools team is aware of this, right now.
https://youtrack.jetbrains.com/issue/KTIJ-27797/Android-Studio-Support-Multiplatform-jvm-run-carrier-task

I had the same problem on Mac. I used the latest IDEA and a project downloaded from the Wizard.
I could not build it after an hours of work so I think the MultiPlatform feature is just not ready for prime time.
STEPS

upgraded from a 2022 IDEA CE to a more recent 2022 version.
downloaded  2023.3.4 to my MacBook.

IntelliJ IDEA 2023.3.4 (Community Edition)
Build #IC-233.14475.28, built on February 12, 2024
Runtime version: 17.0.10+1-b1087.17 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 14.2.1
GC: G1 Young Generation, G1 Old Generation
Memory: 2048M
Cores: 16
Metal Rendering is ON
Kotlin: 233.14475.28-IJ

created a New project and clicked the "Multiplatform" line to go to the web page.
used the Wizard to create a project with Android, Desktop and Web.
drug the new project into ~/IdeaProjects/ and renamed the folder TestMultiPlatform.
opened the project in IDEA
selected the Desktop Main.kt
clicked the Green arrow to run the current file

EXPECTED
Hello world window.
ACTUAL
Caused by: org.jetbrains.skiko.LibraryLoadException: Cannot find libskiko-macos-x64.dylib.sha256, proper native dependency missing.
I tried going into Settings>>Build>>Compiler and change Kotlin compiler to 1.8.22.
But then I got errors related to Android SDK 34 license and it asked me to run "sdkmanager.bat", on a Mac!
So I switched back to the bundled 1.9.22 compiler.
I then went back to the Wizard and remove Android as a target and repeated the previous steps.
This time I got a bunch of errors related to not finding "KotlinProject".
Maybe I messed it up by renaming the project folder.
So I chnged the name to TestMultiPlatform in the Wizard.
Download a project for Desktop and Web.
Opened it in IDEA and now I am getting a ton of build errors like:
"/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java" -javaagent:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar=50267:/Applications/IntelliJ IDEA CE.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Applications/IntelliJ IDEA CE.app/Contents/plugins/Kotlin/kotlinc/lib/kotlin-compiler.jar:/Users/phil/.gradle/caches/8.4/generated-gradle-jars/gradle-api-8.4.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-ant-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-astbuilder-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-console-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-datetime-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-dateutil-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-groovydoc-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-json-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-nio-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-sql-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-templates-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-test-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/groovy-xml-3.0.17.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/javaparser-core-3.17.0.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/kotlin-stdlib-1.9.10.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/kotlin-stdlib-common-1.9.10.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/kotlin-reflect-1.9.10.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/gradle-installation-beacon-8.4.jar:/Users/phil/.gradle/caches/8.4/generated-gradle-jars/gradle-kotlin-dsl-extensions-8.4.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/gradle-kotlin-dsl-8.4.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/gradle-kotlin-dsl-tooling-models-8.4.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/gradle-core-api-8.4.jar:/Users/phil/.gradle/wrapper/dists/gradle-8.4-bin/1w5dpkrfk8irigvoxmyhowfim/gradle-8.4/lib/gradle-core-8.4.jar org.jetbrains.kotlin.cli.jvm.K2JVMCompiler -kotlin-home /Applications/IntelliJ IDEA CE.app/Contents/plugins/Kotlin/kotlinc -script /Users/phil/IdeaProjects/TestMultiPlatform/settings.gradle.kts
settings.gradle.kts:1:1: error: unresolved reference: rootProject
rootProject.name = "TestMultiPlatform"
^
settings.gradle.kts:1:13: error: variable expected
rootProject.name = "TestMultiPlatform"

I tried the suggestion from nantoka69 above but it did not work using "desktop:run" on MacBook.
So I modified them slightly and the following worked.

Open "Edit Configurations ..."
Click on + to create a new configuration and choose Gradle not Kotlin
Enter ":composeApp:run" in the field labeled run
Click OK
Use green arrow to run the new configuration.

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Regression on assignability of generics

Bug Report
I can't tell what is breaking but I have a code example
🔎 Search Terms
inference
🕗 Version & Regression Information

This changed between versions 4.1 and 4.2

⏯ Playground Link
https://www.typescriptlang.org/play?ts=4.2.2#code/JYWwDg9gTgLgBAbzgeQNYBo4FEpUwJQFMBnAVwBt4BfOAMyghDgHIZiBaKEit5gWABQggPTC4xGFGAA7AOZwAPnFLSAJoVozCquDLgAVAJ5hCAZQDGUsPAAsAOgCMIsStTSIAd2lwPwGAAs4AEM4GGNCOEJcaF1vewAmYLU4aWBZfxhyQ0FzCGkJYNIA6ABJaQAFIMNyCCCdAF44AAoEGiDiOCIySgAeCSk5TAA3CGBVAD4ASkE4Wbg7ILV9f0JpJqaAD0m4evHmjZ36xuZmOAB+FFQm5kJwMOZtgC5sXDssAFly-QBNSemBObzFQeKBBMDIKBNFTqTTSbT-IA
💻 Code
import { Ok, Err, Result } from 'ts-results'

// string | undefined in TypeScript 4.1, which is expected
// unknown with a type error in 4.2 and nightly
const authorInPayload = ({} as Result<string, void>)
    .andThen((x) => (x === '' ? Ok('empty') : Err.EMPTY))
    .unwrapOr(undefined)

🙁 Actual behavior
types become unknown.
🙂 Expected behavior
Works as 4.1

Another example:
type A = Ok<1> | Err<2>
function x<T, Q>(y: Result<T, Q>) {}
x({} as A)

In 4.1 it's x<1, 2>(...) in 4.2 it's x<unknown, 2>

A more minimal example without dependencies would be useful. Thanks!

@RyanCavanaugh Hi any progress on this issue? Can you reproduce it?

@Jack-Works we can't really allocate time to looking at repros this large since they almost inevitably end up being user error. If a defect can't be demonstrated in 15-20 lines (counting lines in dependencies) it's almost never a bug.

But the same code working on 4.1 but not 4.2! Ok I'll try to eliminate the lines

But the same code working on 4.1 but not 4.2!

Sure, but sometimes we fix bugs and the result is new errors

https://www.typescriptlang.org/play?ts=4.1.5#code/CYUwxgNghgTiAEYD2A7AzgF3jKB3AXPAEohoCuEGAPJjAJYoDmANPAG5J3AB8AsAFAB6QcVIVqtBi3adg8AD7wyKUADMGIHvAbwAKgE8ADiADKYeoawAWAHQBGViXKUqygNYokuFK3efv3Noo8LYATPBQKvAodIwAFhgQ+gLI6FjAUBhQ8AC82Hg2kcC6cSAoABTlAB4AlLmB1bk5eQDkLfAA-NEguPAA8m7lLSAAtpb6LXWEKD3wAKIwMOXKahrANRsCDBggMKpQYAgAQlBoIE7iVLqsc4EA3gLwT9ggUMCoSfBIboQARkhICCvFCPZ7KXA4Qx9GBXULccpsKAQQi6UI1FEKPShUFPIolMqwm5w8ojKCGYwwQgIpEouo5QIXFyooncdGiZzUZnzTFzOECAC+AhAVUMSBgWEgpzQ80WVFu2jGQJGZQw0pOZ0Z1BmbF2N3uOJebw++i+bgAhIR9hAzgbUrQyGAMGLyoYyL8IHQwIb3ihPojkfM6ndBfxnkoUBCydDYfD-Si0fH4A9Q2HnnAMGQYMF-QaQ2G8aUUIT5sSkIYqXHujqYHSGWImaEWWyFjD5cnU2mQBms-AMHE6GhcwKhSKxRLoGhpQMroE6IrRiq1adzvXOaxtbt9SmnnAjb6Td8Lb2YGQQLbUPbHc7Xe7Pd7jewaXog3mwRHIdDygB9St+LwoNldCTA0w3TTNgj7AcbBzbd4FfXEVHxIsuV5eFSXJXYKyfXRa3ZS4ULhNlNWLVDgNg0Cu3A+B0IpcpILQaCkRqId+BDYVRXFXsjAQYjrnmQI8nKaddECRQWzlVl4AAMngdUVw5K49QEIA
A 29 lines repro. Is that OK? @RyanCavanaugh
declare const raw: Result<string, void>
// Result<string, void | undefined> in TypeScript 4.1, Result<unknown, unknown> in 4.2 and nightly
const data = raw.andThen((x) => (x === '' ? new Ok('empty') : new Err(undefined)))
interface BaseResult<T, E> {
    readonly ok: boolean
    unwrapOr<T2>(val: T2): T | T2
    andThen<T2, E2>(mapper: (val: T) => Result<T2, E2>): Result<T2, E | E2>
}
export class Err<E> implements BaseResult<never, E> {
    readonly ok!: false
    constructor(public readonly val: E) {}
    unwrapOr<T2>(val: T2): T2 {
        return val
    }
    andThen<T2, E2>(op: (val: never) => Result<T2, E2>): Err<E> {
        return this
    }
}
export class Ok<T> implements BaseResult<T, never> {
    readonly ok!: true
    constructor(public readonly val: T) {}
    unwrapOr(_val: unknown): T {
        return this.val
    }
    andThen<T2, E2>(mapper: (val: T) => Result<T2, E2>): Result<T2, E2> {
        return mapper(this.val)
    }
}
export type Result<T, E> = (Ok<T> | Err<E>) & BaseResult<T, E>

This doesn't seem like a bug given those definitions. During structural inference we're trying to line up candidates from Result<T, E> -> BaseResult<T, E> onto Ok and Err, but in either branch those don't produce candidates.
It seems like this worked due to some aggressive nominal-based inference in 4.1 that doesn't happen anymore in 4.2 due to the type aliases being preserved differently.
I would rewrite the definitions as
 // Remove BaseResult since it appears naturally in Result<T, E>
export type Result<T, E> = (Ok<T> | Err<E>) //& BaseResult<T, E>
interface BaseResult<T, E> {
    readonly ok: boolean
    // Remove 'unwrapOr' and let it appear via inference in Result<T, E>
    andThen<T2, E2>(mapper: (val: T) => Result<T2, E2>): Result<T2, E | E2>
}

declare class Err<E> implements BaseResult<never, E> {
    readonly ok: false
    readonly val: E;
    unwrapOr<T2>(val: T2): T2;

    // Keep these public signatures
    andThen<T2, E2>(mapper: (val: never) => Result<T2, E2>): Result<T2, E | E2>
}
declare class Ok<T> implements BaseResult<T, never> {
    readonly ok: true
    readonly val: T;
    unwrapOr(_val: unknown): T;

    // Keep these public signatures
    andThen<T2, E2>(mapper: (val: T) => Result<T2, E2>): Result<T2, E2>
}

// use undefined, not void!
declare const raw: Result<string, undefined>
declare const f: (x: string) => (Ok<string> | Err<undefined>);
// Ok<string> | Err<undefined>
const data = raw.andThen(f);

Ok, I'll report this to the ts-results library. Thanks!

I have revisited the source code of ts-results.

// Remove 'unwrapOr' and let it appear via inference in Result<T, E>

I use a BaseResult because I want to re-use all JSDoc documents. If remove it, I need to copy-paste the JSDoc case-by-case since TypeScript does not support @inheritDoc


eLCI standard process UUID

Notwithstanding the variability of version 3 and 4 UUIDs used throughout this model, there is some confusion regarding the standardization of process UUIDs.
In version 1.0.1, the following snippet from olca_jsonld_writer.py is used to create the standard UUID, of the form ModelType.PROCESS/[category]/[location]/[name]:
process.id = _uid( # version 3 UUID creator
  olca.ModelType.PROCESS,
  _val(d_vals, 'category', default=''),  # category
  _val(d_vals, 'location', 'name', default=''), # location
  _val(d_vals, 'name') # name
)

The way in which _val is written, if more than one 'path' argument is sent, the return is always NoneType. Therefore, "location" will always be none (since it searches for both 'location' and 'name' key names).
def _val(dict_d: dict, *path, **kvargs):
    if dict_d is None or path is None:
        return None
    v = dict_d
    for p in path:
        if not isinstance(v, dict): # (2) for 'b', finds v not a dict, returns none
            return None
        if p not in v:
            v = None
        else:
            v = v[p]  # (1) finds 'a', v = 1
    if v is None and 'default' in kvargs:
        return kvargs['default']
    return v

Demonstrated example:
>>> d = {'a': 1, 'b': 2, 'c': 3}
>>> _val(d, 'a')
1
>>> _val(d, 'a', 'b')
None

My question is, what attributes are intended for the standardized string for process UUID creation (and what are their proxy values)?
https://github.com/USEPA/ElectricityLCI/blob/2232c41f2cb4fd333ad59c8710aa55906e6a7ed3/electricitylci/olca_jsonld_writer.py#L28C17-L28C17

The ultimate intent here is to have UUIDs generated using the namespace of the process - in this instance, the namespace would be the total "path" to that unit process within an openLCA database. So for an electricity generation process that would be something like, "modeltype.process/22: utilities/2211: electric power generation, transmission and distribution/coal/azps/Electricity - COAL - Arizona Public Service Company". But due to this bug, all process uuids would be generated as such: "modeltype.process/22: utilities/2211: electric power generation, transmission and distribution/coal/none/Electricity - COAL - Arizona Public Service Company". I don't think this is the biggest concern - once the bug is fix, the UUIDs will just change. I'm not aware of any work that relies on our process UUIDs to be consistent between v1.0.1 and the next version.


Text not visible on Ubuntu 22.04 in dark mode

While in dark mode, text is rendered as white on white like in the picture. However, in light mode it is shown normally as black on white.

I believe this is the same issue that happened to me while creating some simple game with jme3 and that I have already reported here. Maybe it can help.
I was using the latest release of the sdk: 3.4.

@Ledmington thanks for reporting this. Could you be so kind and test whether this happens for you if you install regular Netbeans as well? This would help us pin point where the bug actually is. Currently I suspect Netbeans installer, if so, we could report this upstream...


test: split out sonar scanning into monorepo projects

Also add support for generating/testing only certain languages: make generate LANGUAGES="php java"

Can we extend this to test-docker? Think we could do it by only setting LANGUAGES if it is empty:
if LANGUAGES is empty:
LANGUAGES = all langs

@mattcole19 Already done: https://github.com/twilio/twilio-oai-generator/blob/957f4767c2eb5758831cdfb37f28c7c77e720269/scripts/prism.sh#L4-L8

@mattcole19 Already done:
https://github.com/twilio/twilio-oai-generator/blob/957f4767c2eb5758831cdfb37f28c7c77e720269/scripts/prism.sh#L4-L8

Bash syntax will forever confuse me


[requirement sets] (Office 2021) Updating availability to reflect Office 2021

Some minor changes to reflect the new perpetual version of Office.

Docs Build status updates of commit 39cbe89:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/concepts/browsers-used-by-office-web-add-ins.md
:white_check_mark:Succeeded
View

docs/design/add-in-commands.md
:white_check_mark:Succeeded
View

docs/develop/support-ie-11.md
:white_check_mark:Succeeded
View

docs/includes/equivalent-add-in-support-note.md
:white_check_mark:Succeeded
View

docs/publish/publish-task-pane-and-content-add-ins-to-an-add-in-catalog.md
:white_check_mark:Succeeded
View

docs/quickstarts/excel-custom-functions-quickstart.md
:white_check_mark:Succeeded
View

docs/reference/requirement-sets/custom-functions-requirement-sets.md
:white_check_mark:Succeeded
View

docs/reference/requirement-sets/excel-api-requirement-sets.md
:white_check_mark:Succeeded
View

docs/reference/requirement-sets/word-api-requirement-sets.md
:white_check_mark:Succeeded
View

docs/testing/ie-11-testing.md
:white_check_mark:Succeeded
View

docs/tutorials/excel-tutorial-create-custom-functions.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Added Legal Pages: "Privacy Policy" and "Terms and Conditions"

closes #194
Description
Hey @Muskansahuincredible and @techmannih  I have added Privacy Policy and Terms and Conditions Pages in footer section pls take a look and review it thank you!
Type of PR

[x] Feature enhancement

Screenshots / videos (if applicable)
Footer

Privacy Policy

Terms and Conditions

Checklist:

[x] I have performed a self-review of my code
[x] I have read and followed the Contribution Guidelines.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x] I have commented my code, particularly in hard-to-understand areas.

please add labels @techmannih

@techmannih and @Muskansahuincredible please Add the Labels to this merge PR so that it can get counted under GSSOC 24.

Please add the labels @techmannih , @Muskansahuincredible

@Muskansahuincredible

@Muskansahuincredible and @techmannih Its been more than 2 weeks Please add the gssoc and level 2 labels, I don't know what stopping you to do that as I can see you are active and merging labeling to only a single contributor, it is important for me to score in leaderboard, this is my last request to you otherwise I have to report this to the GSSOC maintainers. Hope you understand, Thank You!

@sanjay-kv Sir, sorry for the interruption please add the labels for it as it's about been a month but still the PAs didn't add the labels for this merged PR

@MastanSayyad Keep a note of this PR, at the end of the program we will add relevant score to it. i can see the chain above and noreply actions. Even I don't have access to this repo.


The “Contact Us” section does not perform a correct behavior in Internet Explorer 11.

Description:
When the user send a message in the “The “Contact Us” section  in Internet Explorer 11 it does not perform a correct behavior.
-Env:
Crafter Exigo Blueprint
Internet Explorer 11.321.14393.0
REPRODUCIBILITY LEVEL:
Always
STEPS:
Steps

Open the Crafter studio with the Exigo site.
Go to the “Contact Us” section.
Fill out all the fields
Click on the “Send Message” Button

CURRENT RESULT:
After the user clicks on the “Send Button” it disappears for a couple of seconds instead of displaying a check that proves the email has been sent correctly. Also the fields are not being cleaned.
https://www.screencast.com/t/yTQ3M1ndUVc
EXPECTED RESULT:
After the user clicks on the “Send Button” it should displays a check message hat proves the email has been sent correctly for a couple of seconds and then change to the “Send Message” button again. Also all the fields should be cleaned.

Fixed

Bug closed as fixed in build cffd527


cannot convert lambda expression to type 'object' because it is not a delegate type

@foreach (var configuredPizza in order.Pizzas)
 {
      <ConfiguredPizzaItem Pizza="configuredPizza" OnRemoved="@(() =>
                     RemoveConfiguredPizza(configuredPizza))" />
}

Hi @Umar-Farooq-CS. That code looks ok, so most likely there's something else amiss elsewhere in your app. Maybe the RemoveConfiguredPizza method isn't quite right? Check what you have against the latest snap-shot updates.


Add w3programmers.org to SO copycats

Original: https://stackoverflow.com/questions/62996954/how-to-refactor-a-react-component-that-is-handling-too-many-conditions-use-cas
Copy: https://w3programmers.org/questions/62996954/How-to-refactor-a-react-component-that-is-handling-too-many-conditions--use-cases

Thanks a lot!


Added support to convert phenotype to proposition format, Update dependency version

I see at least one IDE config file in the pull request. Please remove them. Thanks!


24468

What changes were proposed in this pull request?
Add stack_settings and cluster_settings modules in execution_command library
How was this patch tested?
Manually end-to-end tested
http://c7301.ambari.apache.org:8080/#/main/hosts/c7301.ambari.apache.org/summary

@jayush @swapanshridhar @jonathan-hurley @adoroszlai Please review the code, thanks!

Please add Apache JIRA and title to the PR request.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/3654/
Test FAILed.
Test FAILured.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/3669/
Test FAILed.
Test FAILured.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/3695/
Test FAILed.
Test FAILured.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/3696/
Test FAILed.
Test FAILured.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/3701/
Test FAILed.
Test FAILured.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/3719/
Test FAILed.
Test FAILured.


Improve coverage for kernel32.pipe

Going to abandon this.  It's way behind the master and would need quite a bit of work to get it to build again.  Will keep the branch in the repo for now though, there's still some useful code.


Fix: some initialize_simps_projections configurations

Some of the older ones do exactly the same as the shorter new ones
Also update doc (some remarks are only true after #2045 is merged)

[ ] depends on: #2560 [to avoid merge conflict]

This PR/issue depends on:

leanprover-community/mathlib4#2560
By Dependent Issues (🤖). Happy coding!


How to XADD "fixed length string buffer" to Redis stream

Hi,
I have big string buffer that I would want to store in Redis which should be of fixed length.
I do not want redis client to look into the buffer to find nulls or any such termination identifiers in calculating length of the data sent.
Work around
redisResp = redisCommand(redisCtx,"SET %s %b", redis_key_name, str, dataSize);
Solution or interface looking for
redisResp = redisCommand(redisCtx,"XADD %s * %s %b", stream_name, redis_key_name, str, dataSize); */
Can you suggest how I can achieve the work around type solution in to a Redis Stream XADD command? This is very important as I would want the data to be stored as a stream while with the work around I am storing them as just individual redis keys/value pairs,.
Do suggest any references in Redis/Hiredis documentation that I can refer to achieve this functionality.
Thanks a lot in advance for your kind support!
Regards
Sriram

You should be able to use %b with XADD the same way you use it with SET
This works for me:
#include <stdio.h>
#include <hiredis/hiredis.h>
#include <strings.h>
#include <stdlib.h>

void panicAbort(const char *message) {
    fprintf(stderr, "Error: %s\n", message);
    exit(-1);
}

int main(void) {
    redisContext *c;
    redisReply *reply;

    const char *buffer = "\0\0\0DATA\0\0\0";

    c = redisConnect("localhost", 6379);
    if (!c) panicAbort("Can't connect to Redis");

    reply = redisCommand(c, "XADD %s * %s %b", "stream", "binary", buffer, 10);
    if (!reply || c->err) panicAbort("Error sending XADD command");

    return 0;
}

$ cc xadd.c -lhiredis
$ ./a.out
$ redis-cli xrange stream - +
1) 1) "1569512677841-0"
   2) 1) "binary"
      2) "\x00\x00\x00DATA\x00\x00\x00"

I'm going to close this issue because you should be able to send binary data into streams as shown above.  Feel free to reopen or comment again if I misunderstood your question.

I am sorry... I did not get back on this sooner, Yes your suggestion was really helpful. Thanks for your kind response.


fix: Enhance gorouter retry logic (#437)

[X] Read the Contributing document.

Summary
The fix for the issue described in https://github.com/cloudfoundry/gorouter/issues/437.

We propose to use the pool index to "seed" each iterator and next calls on that iterator will then loop over the entire pool exactly once (without to affect the global pool iterator).
Implement additional tests for two parallel iterator
Adapt the test cases in round_robin_test.go which were bound to pool nextIndex strongly (e.g. "RoundRobin Next when locally-optimistic mode on the first attempt when the pool has multiple in the same AZ as the router when all AZ-local endpoints have errors it resets the errors and returns one of the endpoints regardless of AZ"  to check not a specific CanonicalAddr but to validate that one endpoint from other AZ has been returned)

Backward Compatibility
Breaking Change? No

@b1tamara can you add some comments to your tests about exactly what the different loops are doing? It took me a bit of looking to grok them 😅.
Other than that, it LGTM.

@ameowlia
Could you please take a look again? I tryed to add more text context with By() to the new test to make it more readable/clear.


Requests on pretrain code and experimental settings for other datasets

Dear authors,
I have requests on several things I already sent an email to author.

Could you release the pretraining code for the datasets other than CIFAR10?

It would be pleasure if you provide the pretrain code and its corresponding experimental settings such as epochs, architecture, and learning rate on Office-Home or PACS.

Could you release 'parameter.py' for each model/dataset in terms of standard settings ?

the standard setting I said refers to the setting utilized in Table 2, including the pre-train codes (and settings) for each dataset.

My requests are just for reproducing the results in Table 2 of your paper.
I hope this requests do not disturb you much.
Thank you.
Best,

Hey JoonHo,
As per your request, I have released an improved pretraining script that can support pretraining on all of benchmark datasets appeared in our paper except ImageNet. You can check it out in \pretrain.
I am unable to access the server I stored experiment logs before due to an unexpected vpn issue, so this time I cannot release the parameters you requested. I will update it asap once the vpn issue is resolved.


Grey inputs on all themes in md-primary card background

Hi,
first of all, thank you for your work. I try to make simple login form which is in "card" with primary background, but the inputs are gray instead of white. If I've misunderstood themes guide, could you please show me an example of how to make these inputs white?
p.s. how to stretch the card such as 100% of it's parent width without inline style but with flexbox of vue-material?
What is expected?
The inputs to be white
What is actually happening?
The inputs are gray
Reproduction Link
http://codepen.io/cve/pen/ZLryop

This is an good improvement to do. I'm going to fix that.
To fix your second question: http://codepen.io/vue-material/pen/MJVgEz


Migrate CoffeeNet Security to OIDC

This will migrate the custom CoffeeNet OAuth2 security from the old Spring Boot 1.5 implementation to the new Spring Security 5.2 OAuth2/OIDC support.
Fixes #60

Most initial work is done. The following should now work:

Automatic configuration of OAuth2/OIDC in WebSecurityConfigurerAdapter implementations, if spring.security.oauth2.* clients are configured.
Infrastructure in place, to map a java.security.Principal (e.g. the Spring Security authentication classes) to a CoffeeNetProfile
Ability to inject a CoffeeNetProfile of the authenticated user into WebMVC handler methods (replaces the original CoffeeNetCurrentUserService)
Many auto-configuration tests

I leave this to review now.


setup.py: remove unecessary data instalation

setuptools' data_files option is meant to install files to the package
data directory, not to make sure they are included, that should happen
by default if the module they are in is being installed.
Files installed this way can be accessed with pkg_resources, or derived
from importlib.metadata.
Furthermore, data_files seems to be deprecated. The official
documentation says it does not works with wheels but it looks like it
does here ¯_(ツ)_/¯
Signed-off-by: Filipe Laíns<EMAIL_ADDRESS>

Wheel diff:
--- with-data.txt	2020-11-15 20:18:46.538192479 +0000
+++ no-data.txt	2020-11-15 20:18:23.601370854 +0000
@@ -32,14 +32,13 @@
     22941  2020-11-15 19:49   viewsb/frontends/qt.py
      4810  2020-09-14 15:34   viewsb/frontends/qt.ui
     23419  2020-09-14 15:51   viewsb/frontends/tui.py
-     4810  2020-09-14 15:34   viewsb-0.0.1.data/data/viewsb/frontends/qt.ui
-     1537  2020-11-15 19:54   viewsb-0.0.1.dist-info/LICENSE-BSD
-    18092  2020-11-15 19:54   viewsb-0.0.1.dist-info/LICENSE-GPLv2
-     1232  2020-11-15 19:54   viewsb-0.0.1.dist-info/METADATA
-       92  2020-11-15 19:54   viewsb-0.0.1.dist-info/WHEEL
-       78  2020-11-15 19:54   viewsb-0.0.1.dist-info/dependency_links.txt
-       56  2020-11-15 19:54   viewsb-0.0.1.dist-info/entry_points.txt
-        7  2020-11-15 19:54   viewsb-0.0.1.dist-info/top_level.txt
-     3287  2020-11-15 19:54   viewsb-0.0.1.dist-info/RECORD
+     1537  2020-11-15 19:56   viewsb-0.0.1.dist-info/LICENSE-BSD
+    18092  2020-11-15 19:56   viewsb-0.0.1.dist-info/LICENSE-GPLv2
+     1232  2020-11-15 19:56   viewsb-0.0.1.dist-info/METADATA
+       92  2020-11-15 19:56   viewsb-0.0.1.dist-info/WHEEL
+       78  2020-11-15 19:56   viewsb-0.0.1.dist-info/dependency_links.txt
+       56  2020-11-15 19:56   viewsb-0.0.1.dist-info/entry_points.txt
+        7  2020-11-15 19:56   viewsb-0.0.1.dist-info/top_level.txt
+     3185  2020-11-15 19:56   viewsb-0.0.1.dist-info/RECORD
 ---------                     -------
-   247187                     40 files
+   242275                     39 files

You can see only viewsb-0.0.1.data/data/viewsb/frontends/qt.ui, which is not needed, gets removed.


Fixing IDENTITY-3565 CARBON-15427

@IsuraD,
This PR needs to be reviewed.

Reviewed. Can merge.

Hi @IsuraD
This PR is being held until we release 4.4.2. This is to avoid any possible merge conflicts. PR will be merged once we merge the release-4.4.2 branch to 4.4.x.

This PR is merged to release-4.4.2 with https://github.com/wso2/carbon-kernel/commit/b35b7515ea142744aed727cdaee514d216de336f
release-4.4.2 will be merged to 4.4.x branch once 4.4.2 is released. Hence closing this PR.


cargo build: error: failed to select a version for ibc-proto.

I was trying to build v1.7.0 using cargo build --release --bin hermes, but get this error:
    Updating crates.io index
error: failed to select a version for `ibc-proto`.
    ... required by package `ibc-relayer v0.26.0 (/home/ttruong/data/development/hermes/crates/relayer)`
versions that meet the requirements `^0.38.0` (locked to 0.38.0) are: 0.38.0

the package `ibc-relayer` depends on `ibc-proto`, with features: `tonic` but `ibc-proto` does not have these features.
 It has an optional dependency with that name, but that dependency uses the "dep:" syntax in the features table, so it does not have an implicit feature with that name.

I was able to build v1.6.0 though.

This is weird, since Hermes builds fine on CI and I am also unable to reproduce this locally.
Also this error message is plain wrong:

the package ibc-relayer depends on ibc-proto, with features: tonic

since ibc-relayer does not depend on ibc-proto with the tonic feature.
Which commit are you building from?
Maybe do a cargo clean followed by cargo update and try building again?

seems like it comes from ibc-proto: cargo add ibc-proto --package ibc-relayer-types
Error:
$ cargo add ibc-proto --package ibc-relayer-types
    Updating crates.io index
      Adding ibc-proto v0.38.0 to dependencies.
             Features:
             + client
             + std
             - borsh
             - json-schema
             - parity-scale-codec
             - proto-descriptor
             - serde
             - server
error: failed to select a version for `ibc-proto`.
    ... required by package `ibc-relayer v0.26.0 (/home/ttruong/data/development/hermes/crates/relayer)`
versions that meet the requirements `^0.38.0` (locked to 0.38.0) are: 0.38.

And yes, I did a cargo clean and working on v1.7.0 branch.

Ah i see then yeah the v1.7.0 tag is a bit borked. You can either install it from crates.io or build from master if that's okay with you. Sorry about that!

Can you create a new release?

Ah i see then yeah the v1.7.0 tag is a bit borked. You can either install it from crates.io or build from master if that's okay with you. Sorry about that!

error when installing from crates.io:
$ cargo install ibc-relayer-cli
    Updating crates.io index
  Installing ibc-relayer-cli v1.7.0
    Updating crates.io index
error: failed to compile `ibc-relayer-cli v1.7.0`, intermediate artifacts can be found at `/tmp/cargo-installwWayop`

Caused by:
  failed to select a version for `ibc-proto`.
      ... required by package `ibc-chain-registry v0.26.0`
      ... which satisfies dependency `ibc-chain-registry = "^0.26.0"` of package `ibc-relayer-cli v1.7.0`
  versions that meet the requirements `^0.38.0` are: 0.38.0

  the package `ibc-chain-registry` depends on `ibc-proto`, with features: `tonic` but `ibc-proto` does not have these features.
   It has an optional dependency with that name, but that dependency uses the "dep:" syntax in the features table, so it does not have an implicit feature with that name.

  failed to select a version for `ibc-proto` which could resolve this conflict

error from building on master branch:
~/data/development/hermes (master)$ cargo build --release --bin hermes
error: failed to select a version for `ibc-proto`.
    ... required by package `ibc-relayer v0.26.0 (/home/ttruong/data/development/hermes/crates/relayer)`
versions that meet the requirements `^0.38.0` (locked to 0.38.0) are: 0.38.0

the package `ibc-relayer` depends on `ibc-proto`, with features: `tonic` but `ibc-proto` does not have these features.
 It has an optional dependency with that name, but that dependency uses the "dep:" syntax in the features table, so it does not have an implicit feature with that name.

failed to select a version for `ibc-proto` which could resolve this conflict

Are you using Rust v1.70.0? If so, the issue should be solved by upgrading to Rust v1.71.0 https://github.com/rust-lang/cargo/pull/12130

Are you using Rust v1.70.0? If so, the issue should be solved by upgrading to Rust v1.71.0 rust-lang/cargo#12130

That was the problem! Upgraded to v1.73.0 and works like a charm. Thank u!


[WebViewWidget] webView is not working inside the overlay window

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
create a flutter project with:
install flutter_overlay_window package.
clone it from https://github.com/Arvind0005/overlay_window
or
with main.dart:
import 'dart:async';
import 'dart:ui';

import 'package:flutter/material.dart';
import 'package:flutter_3d0/widget/Myapp.dart';
import 'package:flutter_3d0/widget/home_page.dart';
import 'package:flutter_3d0/widget/overlayContent.dart';
import 'package:flutter_background_service/flutter_background_service.dart';
import 'package:flutter_background_service_android/flutter_background_service_android.dart';
void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  runApp(const MyApp());
}

@pragma("vm:entry-point")
void overlayMain() {
  runApp(const MaterialApp(
      debugShowCheckedModeBanner: false,
      home: MyOverlayContent()
  ));
}

myapp.dart:
import 'package:flutter/material.dart';
import 'home_page.dart';
import 'overlayContent.dart';
class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        title: 'Flutter Demo',
        theme: ThemeData(
          colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
          useMaterial3: true,
        ),
        // home: Home(),
      home: Home()
    );
  }
}

home_page.dart:
import 'package:flutter/material.dart';
import 'package:flutter_background_service/flutter_background_service.dart';
import 'package:flutter_overlay_apps/flutter_overlay_apps.dart';
import 'package:flutter_overlay_window/flutter_overlay_window.dart';
import 'package:model_viewer_plus/model_viewer_plus.dart';
import 'package:system_alert_window/system_alert_window.dart';
import 'package:webview_flutter/webview_flutter.dart';

class Home extends StatefulWidget {
  const Home({super.key});

  @override
  State<Home> createState() => _HomeState();
}

class _HomeState extends State<Home> {
  late final WebViewController controller;
  @override
  void initState() {
    // TODO: implement initState
    super.initState();
    controller = WebViewController()
      ..loadRequest(
        Uri.parse('https://flutter.dev'),
      );
  }
  @override
  Widget build(BuildContext context) {
    String text="stop running";
    bool? status;
    return Scaffold(
      appBar: AppBar(title: const Text("3d model"),),
      body: Column(
        children: [
          ElevatedButton(onPressed: () async {
            await FlutterOverlayWindow.showOverlay(height: 600,width: 600,enableDrag: true);
          }, child: Text("start overlay")),
          ElevatedButton(onPressed: () async {
            status = await FlutterOverlayWindow.requestPermission();
            if(!status!)
              await FlutterOverlayWindow.requestPermission();
          }, child: Text("request permission")),
        ],
      ),
    );
  }
}

obverlayContent.dart:
import 'package:flutter/material.dart';
import 'package:flutter_overlay_apps/flutter_overlay_apps.dart';
import 'package:flutter_overlay_window/flutter_overlay_window.dart';
import 'package:model_viewer_plus/model_viewer_plus.dart';
import 'package:webview_flutter/webview_flutter.dart';
import 'package:webview_flutter_platform_interface/webview_flutter_platform_interface.dart';

class MyOverlayContent extends StatefulWidget {
  const MyOverlayContent({super.key});

  @override
  State<MyOverlayContent> createState() => _MyOverlayContentState();
}

class _MyOverlayContentState extends State<MyOverlayContent> {
  late final WebViewController controller;
  @override
  void initState() {
    // TODO: implement initState
    super.initState();
      controller = WebViewController()
      ..loadRequest(
        Uri.parse('https://flutter.dev'),
      );
  }
  @override
  Widget build(BuildContext context) {
    return WebViewWidget(controller: controller);
  }
}

Expected results
The expected result is to view the webpage inside the overlay window, and this overlay can be viewed upon any apps running background without stopping them.
Actual results
The same webview code is running on a normal screen but not inside a overlay window,when i click on show overlay button the overlay is not displayed,but if i try to display only overlay without webview inside it it works properly.
Code sample
Code sample
[Paste your code here]

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
Invalid file path for libcolorx-loader.so
I/chatty  (23598): uid=10557(com.example.flutter_3d0) 3.raster identical 58 lines
E/libEGL  (23598): Invalid file path for libcolorx-loader.so
E/flutter (23598): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: MissingPluginException(No implementation found for method create on channel flutter/platform_views)
E/flutter (23598): #0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:308:7)
E/flutter (23598): <asynchronous suspension>
E/flutter (23598): #1      SurfaceAndroidViewController._sendCreateMessage (package:flutter/src/services/platform_views.dart:976:30)
E/flutter (23598): <asynchronous suspension>
E/flutter (23598): #2      AndroidViewController.create (package:flutter/src/services/platform_views.dart:763:5)
E/flutter (23598): <asynchronous suspension>
E/flutter (23598):
I/OplusFeedbackInfo(23598): [sendFPSInfo:L326] mInputBufCnt = 0 fps, mOutputBufCnt = 0 fps, mRenderFrameCnt = 0 fps
I/OplusFeedbackInfo(23598): [sendFPSInfo:L326] mInputBufCnt = 3 fps, mOutputBufCnt = 1 fps, mRenderFrameCnt = 1 fps
I/OplusFeedbackInfo(23598): [sendFPSInfo:L326] mInputBufCnt = 0 fps, mOutputBufCnt = 0 fps, mRenderFrameCnt = 0 fps
I/OplusFeedbackInfo(23598): [sendFPSInfo:L326] mInputBufCnt = 0 fps, mOutputBufCnt = 0 fps, mRenderFrameCnt = 0 fps
I/OplusFeedbackInfo(23598): [sendFPSInfo:L326] mInputBufCnt = 0 fps, mOutputBufCnt = 0 fps, mRenderFrameCnt = 0 fps
I/OplusFeedbackInfo(23598): [sendFPSInfo:L326] mInputBufCnt = 0 fps, mOutputBufCnt = 0 fps, mRenderFrameCnt = 0 fps

Flutter Doctor output
Doctor output
[!] Flutter (Channel stable, 3.10.6, on Microsoft Windows [Version 10.0.19045.3324], locale en-IN)
    • Flutter version 3.10.6 on channel stable at C:\src\flutter\flutter
    ! Warning: `dart` on your path resolves to C:\tools\dart-sdk\bin\dart.exe, which is not inside your current Flutter SDK checkout at
      C:\src\flutter\flutter. Consider adding C:\src\flutter\flutter\bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision f468f3366c (6 weeks ago), 2023-07-12 15:19:05 -0700
    • Engine revision cdbeda788a
    • Dart version 3.0.6
    • DevTools version 2.23.1
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and
      upgrades.

[√] Windows Version (Installed version of Windows is version 10 or higher)

[!] Android toolchain - develop for Android devices (Android SDK version 31.0.0-rc3)
    • Android SDK at C:\Users\Arvind\AppData\Local\Android\sdk
    X cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    X Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[!] Visual Studio - develop for Windows (Visual Studio Build Tools 2017 15.9.37)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools
    • Visual Studio Build Tools 2017 version 15.9.28307.1585
    • Windows 10 SDK version 10.0.17763.0
    X Visual Studio 2019 or later is required.
      Download at https://visualstudio.microsoft.com/downloads/.
      Please install the "Desktop development with C++" workload, including all of its default components

[√] Android Studio (version 2022.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-b2043.56-10027231)

[√] VS Code (version 1.81.1)
    • VS Code at C:\Users\Arvind\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.70.0

[√] Connected device (4 available)
    • RMX2117 (mobile)  • 69TOEQ49QCYDD6BU • android-arm64  • Android 11 (API 30)
    • Windows (desktop) • windows          • windows-x64    • Microsoft Windows [Version 10.0.19045.3324]
    • Chrome (web)      • chrome           • web-javascript • Google Chrome 115.0.5790.173
    • Edge (web)        • edge             • web-javascript • Microsoft Edge 115.0.1901.188

[√] Network resources
    • All expected network resources are available.

! Doctor found issues in 3 categories.

how to overcome this issue, thanks in advance

Hi @Arvind0005. Thanks for filing this. I'm able to reproduce this on my end but from the behaviour and error logs, there seems to be a currently open issue describing the case https://github.com/flutter/flutter/issues/59951. Kindly comment, upvote and follow up on this issue for updates.
Closing this as a duplicate, if you disagree kindly let me know and I'd reopen this.
Thank you!

Hello @Arvind0005. Thanks for checking that out. Running the code sample provided and clicking on start overlay button, I get the logs below which seem similar to the open issue I tagged. Can you confirm if your observed behaviour differs from this?
Log

[VERBOSE-2:dart_vm_initializer.cc(41)] Unhandled Exception: MissingPluginException(No implementation found for method showOverlay on channel x-slayer/overlay_channel)
#0      MethodChannel._invokeMethod
platform_channel.dart:308
<asynchronous suspension>
#1      FlutterOverlayWindow.showOverlay
overlay_window.dart:41
<asynchronous suspension>
#2      _HomeState.build.<anonymous closure>
home_page.dart:36
<asynchronous suspension>


feat(funke): initialized new wallet and agent setup

Signed-off-by: Berend Sliedrecht<EMAIL_ADDRESS>

We can probably move more out of the app, now is the easiest time to do it i think as there's no duplication yet

What do you mean exactly?


Use pip-compile to generate requirements

I was able to upgrade to the latest versions of dependencies by copying the unconstrained requirements into a requirements.in file and running pip-compile. But I wasn't able to generate requirements.txt without upgrading:

pip._internal.exceptions.DistributionNotFound: No matching distribution found for torch==1.13.0`)

I opened https://github.com/replicate/cog/issues/1082 with a sketch of how we could use  pyproject.toml with Cog, which would make it easier to upgrade dependencies. There may also be an opportunity to support requirements.in files. But for now, I'm closing this issue.


Combining coverage from unit & integration tests produces incorrect summary

When running coverage against a package with both unit tests and integration tests the resulting report contains two distinct instantiations on functions. This is due to different compilation flags (unit tests being with cfg(test) and integration tests without). This confuses up summary line coverage calculation. Detailed report shows all lines as covered with each instantiation showing respective partial coverage. The summary however claims some lines are uncovered, specifically those covered only by unit tests as seemingly only the integration tests instantiation is taken into account for summary.
Minimal reproduction:
llvm-cov-merged-report-incorrect.zip
Run cargo llvm-cov --html --open.
Some findings:

the --sparse flag of llvm-profdata merge does not matter (same result with or without)
the order of profraw files does not matter
the order of object files specified for the report does not matter

This is not an issue of cargo-llvm-cov per se but rather an issue of LLVM, Rust compiler or some llvm-cov config (missing flag or somesuch). But I wonder if there is some way to work around this in cargo-llvm-cov.

Maybe the same issue as https://github.com/taiki-e/cargo-llvm-cov/issues/43
We are aware of the issue that the llvm-cov summary report is somewhat different from the full report, and I think it may be possible to output a more accurate summary by exporting the coverage in JSON format and then converting it (--show-missing-lines and --codecov are actually implemented in this way).

It definitely seems related. I think it's LLVM treating them same as templates in C++. They are technically not templates/generics but Rust's compilation model recompiles everything but with different settings so from LLVM's perspective they are technically different instantiations (like they were templates / generics).
And thanks for the suggestions!

--json format has the same uncovered lines but --codecov format does not
--show-missing-lines does not show anything uncovered (which is correct) but --fail-uncovered-lines 0  still fails

I think the workaround for now is to substitute --fail-uncovered-lines for parsing --show-missing-lines verifying there are indeed none. Would it perhaps make sense to change the logic behind --fail-uncovered-lines from parsing the (inaccurate) report to what --show-missing-lines does?

Feel free to decline the PR if you disagree as I know it's not as clean cut decision here since the current logic follows (and is consistent with) the report (however inaccurate).

Oh, that's why not generic functions some times have several instantiation according to html generated by cargo-llvm-cov:

Is this actually solved? I’m still seeing the issue described just above with the latest llvm-cov version.
It looks to me like the solution would probably be the same as #43, but the way it manifests is different, because it shows as multiple instantiations of a single function due to different #[cfg] flags.
Does that make sense?

@Ekleog-NEAR
Could you open a new issue?
What was initially reported in this issue has been fixed and what you linked to is a half off-topic comment on a different API than that.
If you think there is another issue, please open an individual issue.
Addressing several different issues in a single GH issue can be confusing, and it can slow down and obstruct solving the problem. Just as I struggled in https://github.com/taiki-e/cargo-llvm-cov/issues/300#issuecomment-1688304667.

Of course! I just opened https://github.com/taiki-e/cargo-llvm-cov/issues/344 to track it :)


docs: Replace 'the\nword' with 'end\nstart'

This avoids an inadvertent reference to a slur.
This fixes #4654

Codecov Report

Merging #4669 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #4669      +/-   ##
==========================================
- Coverage   81.36%   81.35%   -0.01%
==========================================
  Files         112      112
  Lines      145124   145124
==========================================
- Hits       118084   118071      -13
- Misses      27040    27053      +13

Impacted Files
Coverage Δ

src/profiler.c
90.14% <0%> (-0.94%)
:arrow_down:

src/gui.c
63.73% <0%> (-0.67%)
:arrow_down:

src/netbeans.c
27.25% <0%> (-0.23%)
:arrow_down:

src/sign.c
94.3% <0%> (-0.19%)
:arrow_down:

src/message.c
76.99% <0%> (+0.04%)
:arrow_up:

src/gui_gtk_x11.c
58.11% <0%> (+0.04%)
:arrow_up:

src/window.c
87.36% <0%> (+0.06%)
:arrow_up:

src/if_xcmdsrv.c
86.17% <0%> (+0.17%)
:arrow_up:

src/gui_beval.c
63.36% <0%> (+0.86%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a099da3...c013a16. Read the comment docs.

I'll include it.  I don't care much but don't want to spend time on a discussion either.


destBasePath can't be set

altough its used in the code, there is no way to define destBasePath in the plopfile
So if you provide a plop-pack which creates a certain folder structure, you have to introduce your own config to do so, you can't use config.destBasePath

@amwmedia yeah, saw that to, but that does not solve or answer the issue.
imaging you develop a plop-pack that defines generators that create a certain folder structure, e.g. /src/components, /src/containers, /src/actions, etc.
now, you want to enable your users to change /src to something else, or to nest it further.
for that, you would need to define the destBasePath.

AH! ok, now I understand the request. for a plop-pack, you would specify an attribute on the second parameter of the plop.load() method (config). This is your object that consumers can use to configure your plop-pack.
I hope that helps.

@amwmedia yes, that would be the workaround. But i thought destBasePath would be exactly for this us e case. Now i need to implement a custom version of it...

destBasePath is used internally to map plop.loaded generators to the same basic root folder as their consumer. Prior to plop.load the generators in an npm module would need to define their action's destination paths with enough ../../ pathing to get them out of node_modules and back to the consuming codebase.
the config object isn't really a workaround, it is there for this purpose. It is a single place where the configuration of the plop-pack should happen.

so destBasePath should be renamed to someting like plopFilePath ? because it clearly says: this is the folder where every file will get created. And that's a folder the user clearly want to be able to set.
I tried to set it on plop.load("myploppack", {destBasePath: "./src"}) but this does not work

plopfilePath is actually another thing altogether. The complexity here is that a loaded generator should find a template locally (in node_modules), but drop its generated code into the plopfilePath of the consuming plopfile.

@amwmedia yes, but that's not what i meant.
There needs to be multiple path that have nothing to do with each other:

plopfile path: is the path to the plopfile inside the project (at the root of the project)
destBasePath: the path where files will be created. Should be customizable by the project-team (via plopfile)
templatePath (?): should either point to the template directory inside of the project and maybe to the template directory in the ploppack / npm module

For simplicity, plop take the approach that everything is based on the plopfile location. All destination paths are relative to the plopfile location, all templates are located relative to the plopfile location, etc. This allows you to execute the plop command from anywhere inside the project and have files created in the correct places (the current working directory doesn't matter). The only reason that the destBasePath is needed is for plop.load() where you have code that is running from node_modules but should be dumping its files into another location that is out of its control (the consuming plopfile path).
If you want to allow the consuming plopfile to tell your plop-pack where to drop its files, you can accept a value in the config options that you can then use in your path definitions. This becomes just another config value for your plop-pack module, there's no special meaning to it, and you can call it whatever you like.

@macrozone Still use plop? I used this approach to create a global plopfile, if that is what you were essentially trying to achieve.
I used this path in the Action. While __dirname is the plopfile location, . will still give you the relative path that you called it from!
path: path.join(path.relative(__dirname, '.'), 'src/components/{{name}}/index.js'),
@amwmedia I haven't had time to fully digest plop.load(). I personally wanted a global plop that I could use without having to add plopfiles to a repo. Could that still be achieved with plop.load()? It seems like I'd need it to be a node module, which means adding it as a dependency, which is what I wanted to avoid. Thanks for the great project.


Add bal persist generate functionality

Purpose
$subject
Fix : 3242

Data types of the test entities were limited to basic data types, without records, nullable types and arrays as they were not supported by persist:FieldMetadata.
All the errors were converted to generic errors from persist:Error as some SQL functions were not yet updated to return persist:Error


ShareX Catppuccin Previews (and new theme)

new theme is latte :3 (sorry that i didnt do the others im too lazy)

emmmm

:3

Approved. Merging

im still waiting

://///

????????????????????????? when merge

its already been a week...

I think you have access too
Or check with Winston, cause I cant seem to merge it in

Hey, I'm in the process of rewriting the theme on a new branch so I temporarily took permissions away.
You can view it in the rewrite branch, hope that's okay with you both.

Hey, I'm in the process of rewriting the theme on a new branch so I temporarily took permissions away. You can view it in the rewrite branch, hope that's okay with you both.

._. well ok ig

Apologies for not communicating my rewrite which was in progress, closing this as #6 has been merged.


Allow tools skopeo and umoci to be found on custom path

use env var SKOPEO_TOOL_PATH and UMOCI_TOOL_PATH
usefull when using bundlgen in yocto build env where
skopeo and umoci are also built and provided in sysroot

@sverkoye - good idea. Please fix the LGTM warnings then I can merge

Hi @TeknoVenus , Damian had some good remarks about skopeo and umoci just being available on PATH when proper dependencies are inside recipe. After testing, I will probably update this pull request to just find skopeo and umoci found on path using shutil.which()


allowSorting does not disable sorting on header clicks

It does remove the option from the context menu.  This is simple to fix.
check the allowSorting bool just before this line
https://github.com/TonyGermaneri/canvas-datagrid/blob/aee9a2a12d43dda54d615e619b90031f37f32527/lib/publicMethods.js#L642

As a workaround:
grid.addEventListener('beforesortcolumn', function(e) { e.preventDefault(); });


hotfix/swiftMap -> dev

This change is

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

byuSuite/Classes/Reusable/UI/ByuMapViewController2.swift, line 52 at r1 (raw file):

    func zoomToFitMapAnnotations(includeUserLocation: Bool, keepByuInFrame: Bool) {
        var topLeftCoord = CLLocationCoordinate2D()

Why initialize these? Won't they always get reset? I might actually set them to the extreme values here, and then get rid of the else, though...

byuSuite/Classes/Reusable/UI/ByuMapViewController2.swift, line 80 at r1 (raw file):

            }

            topLeftCoord.longitude = fmin(topLeftCoord.longitude, annotation.coordinate.longitude)

No fmin and fmax. Use swift implementations

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

byuSuite/Classes/Reusable/UI/ByuMapViewController2.swift, line 52 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Why initialize these? Won't they always get reset? I might actually set them to the extreme values here, and then get rid of the else, though...

Done.

byuSuite/Classes/Reusable/UI/ByuMapViewController2.swift, line 80 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
No fmin and fmax. Use swift implementations

Done.

Comments from Reviewable

Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


iOS: Fullscreen API

On iOS the fullscreen API is not available.
If I try to access document.documentElement.requestFullscreen i get "undefined".
Is there any workaround, or am I missing something?
I am using cordova 9.0.0, cordova-ios 5.0.0 e the 4.0.1 version of this plugin.
Thank you

For iOS it requires the webkit prefix document.documentElement.webkitRequestFullscreen.
But it's not enabled/defined inside the WKWebView.
Anyway, Cordova apps are full screen already, you don't need that API and that's probably why it's not defined.

You are right: a Cordova app can already be fullscreen... but what about an internal iFrame?
An example could be the use of an iFrame to use the PDF.JS viewer: it cannot go fullscreen because there is not the FullScreen API

I don’t know, you can ask Apple why they didn’t enable it for WKWebView, but there is nothing we can do.

Ah ok.
Thank you for your answer!


Add hash, array assessment

Add hash, array assessment

3/5. Just needed to return the friend to make those tests pass.


Component Select

Which class is this unit test associated with?
I'm using the component Select, but I'm having some problems, I have 5 selects on a modal, where one after other is changing by the selection before, the first time works well, but at the second time, the component comes with a item selected and doesn't call the method Selected, because its the same item selected before, I cleaned the list, the items, etc, but still with this problem, also if I call manually, doesnàt show the options on the other select.
Thank you

@gmondin hi, could you provider a sample project for repro this?

@gmondin  auto close issue


Guarantee async effects

Guarantee that all async effects are in fact async by forcing this at the driver level. The current affAction is problematic because it doesn't properly clean up the losing side of <|>.
This fixes the issue by guaranteeing that the IO is always run after the view has been rendered.

I'm not sure what problem this is solving. Do you have an example where the current implementation doesn't work correctly?
Also, with these changes, the async examples become buggy. To see this run - npm run-script build-example and open html/index.html in a browser, and try running multiple timers, or making multiple ajax calls in parallel.

Yeah, sadly this doesn't work. I'll think about this some more and create the issue first. I'll close this one for now.


RDNA 3 support

We have RDNA support or no in 5.5 release?
I ask this because THERE IS NOTHING IN DOCS. How can you have no windows support adn no rx 7900xtx supoprt in this release?

https://www.reddit.com/r/Amd/comments/135f8we/amd_rocm_55_in_the_process_of_being_released/?utm_source=share&utm_medium=android_app&utm_name=androidcss&utm_term=1&utm_content=share_button

This will be solved https://github.com/RadeonOpenCompute/ROCm/pull/2099 that is slated to the 5.6.0 milestone.

7900xt not work too..

A lot is changing at RocM. Maybe in RocM 5.6(as they update GPU list) https://twitter.com/aschilling/status/1671447333635260416?s=20

Got my 7900XTX to work with PyTorch by installing nightly PyTorch for RoCM 5.5

A lot is changing at RocM. Maybe in RocM 5.6(as they update GPU list) https://twitter.com/aschilling/status/1671447333635260416?s=20

sry, i just forget reboot my machine

Confirmed that it works on nightly preview for ROCm Pytorch for 7900 XTX on Arch Linux.

I tried to install rocm 5.5 on popos but i cant becxause it has a tooo new kernel

anyone can execute: https://pypi.org/project/new-ai-benchmark/
import tensorflow as tf
gpus = tf.config.experimental.list_physical_devices('GPU')
for gpu in gpus:
    tf.config.experimental.set_memory_growth(gpu, True)

from ai_benchmark import AIBenchmark
benchmark = AIBenchmark(verbose_level=2)
results = benchmark.run()

Are there still people who are waiting for 7900XTX support? Though the performance is still a bit poor, TensorFlow-upstream now runs when built on the latest ROCm release. I was looking into the status of ROCm support for 7900XTX and found a few issues opened by different people and wanted to link all to the issue I opened in MIOpen repo. Though there has not been any confirmation from the developer, I think the performance issues are due to insufficient optimization of MIOpen.
https://github.com/ROCmSoftwarePlatform/MIOpen/issues/2342

@johnnynunez
I ran the benchmark and posted the output to
https://gist.github.com/briansp2020/e885f0eb6cbec45fcaf0c2eac8c3ee11
ROCm is in the arena trying stuff. Some will work, some won't. But always learning. j/k.
It actually looks better than I feard. I was really disappointed when I opened https://github.com/ROCmSoftwarePlatform/MIOpen/issues/2342 but it seems that was like one of the worst case scenarios. According to the benchmark output, there are many cases 7900XTX is optimized well enough. Still more work needs to be done. But I'm a lot more hopeful now.
BTW, does anyone know how to disable all the debug output from ROCm? I did os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' trick to get rid of some. But ROCm still prints out too much debug output.

Nice, There is room for improvement!

@johnnynunez I ran the benchmark and posted the output to https://gist.github.com/briansp2020/e885f0eb6cbec45fcaf0c2eac8c3ee11
ROCm is in the arena trying stuff. Some will work, some won't. But always learning. j/k.
It actually looks better than I feard. I was really disappointed when I opened ROCmSoftwarePlatform/MIOpen#2342 but it seems that was like one of the worst case scenarios. According to the benchmark output, there are many cases 7900XTX is optimized well enough. Still more work needs to be done. But I'm a lot more hopeful now.
BTW, does anyone know how to disable all the debug output from ROCm? I did os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' trick to get rid of some. But ROCm still prints out too much debug output.

Nice, There is room for improvement!

@radudiaconu0 RDNA3 support is available as of latest ROCm 6.1.1. Thanks!


String enums from string constants

Suggestion
If possible, it would be nice to be able to define enum with string values, coping over string values from other enums (if their values can be calculated statically during compilation). Example:
export enum ColdColors {
 BLUE = '#0000FF',
 // ...
}

export enum WarmColors {
 YELLOW = '#FFFF00',
 // ...
}

export enum Colors {
  BLUE = ColdColors.BLUE,
  YELLOW = WarmColors.YELLOW,
  // ...
}

// And/OR also

export const robinsEggBlue = '#00C0DE';

export const enum ColdColors2 {
 BLUE = '#0000FF',
 ROBINS_EGG_BLUE = robinsEggBlue,
 // ...
}

export const enum WarmColors2 {
 YELLOW = '#FFFF00',
 // ...
}

export const enum Colors2 {
  BLUE = ColdColors2.BLUE,
  YELLOW = WarmColors2.YELLOW,
  // ...
}

🔍 Search Terms

List of keywords you searched for before creating this issue. Write them down here so that others can find this suggestion more easily and help provide feedback.
✅ Viability Checklist

I DON'T know if my suggestion meets these guidelines:

[ ] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[ ] This wouldn't change the runtime behavior of existing JavaScript code
[ ] This could be implemented without emitting different JS based on the types of the expressions
[ ] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
[ ] This feature would agree with the rest of TypeScript's Design Goals.

⭐ Suggestion

📃 Motivating Example
As shown above, in the code example, this will help to avoid duplicating constant string literals everywhere (if you want to define them in multiple places, including inside an enum).
💻 Use Cases
As stated in the motivation, to group string literals that are defined as constants inside enums

Expanding on https://www.typescriptlang.org/docs/handbook/2/template-literal-types.html
You could also make enums like this:
enum BaseColor {
 BLUE = 'blue';
 //... more
}

enum DarkColor {
 DARK_BLUE = `${BaseColor.BLUE}_dark`
 //... more
}


[SPARK-44784][CONNECT] Make SBT testing hermetic.

What changes were proposed in this pull request?
This PR makes a bunch of changes to connect testing for the scala client:

We do not start the connect server with the SPARK_DIST_CLASSPATH  environment variable. This is set by the build system, but its value for SBT and Maven is different. For SBT it also contained the client code.
We use dependency upload to add the dependencies needed for the tests. Currently this entails: the compiled test classes (class files), scalatest jars, and scalactic jars.
The use of classfile sync unearthed an issue with stubbing and the ExecutorClassLoader. If they load classes in the same namespace then stubbing will generate stubs for classes that can be loaded by the ExecutorClassLoader. Since this is mostly a testing issue I decided to move the test code to a different namespace. We should definitely fix this later on.

Why are the changes needed?
SBT testing for connect leaked client side code into the server. This is a problem because tests pass and we sign-off on features that do not work when well in a normal environment. Stubbing was an example of this. Maven did not have this problem and was therefore more correct.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
It are mostly tests.
Was this patch authored or co-authored using generative AI tooling?
No. I write my own code thank you...

A Java code style issue needs to be fixed.
src/test/java/org/apache/spark/sql/JavaEncoderSuite.java:[31,8] (imports) UnusedImports: Unused import - org.apache.spark.sql.connect.client.SparkConnectClient.

@LuciferYang PTAL

GA passed. Merged into master and 3.5. Thanks @hvanhovell


fix: crypto cannot getRandomValues error

This PR resolves []
Description
Attempt to fix the launch blocking error for iOS that came up on our QA session, ticket here.
Will trigger a beta to see if it solves it.

PR Checklist

[ ] I have tested my changes on iOS and Android.
[x] I hid my changes behind a feature flag, or they don't need one.
[x] I have included screenshots or videos, or I have not changed the UI.
[x] I have added tests, or my changes don't require any.
[x] I added an app state migration, or my changes do not require one.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added a changelog entry below, or my changes do not require one.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

iOS user-facing changes

Android user-facing changes

Dev changes

crypto cannot getRandomValues error - gkartalis

Need help with something? Have a look at our docs, or get in touch with us.

This PR contains the following changes:

Dev changes (crypto cannot getRandomValues error - gkartalis)

  Generated by :no_entry_sign: dangerJS against 3d8872b0b00036195f58621ca557eb7bde7c4688

Seems like the issue is not there anymore ✅


redo resampling graphic from #196

.. in google slides
see #196

closed in https://github.com/compstat-lmu/lecture_i2ml/commit/f5589e5721df0f34f376e98c9cf2b4172b61de8c


SAMZA-1178: Generate JSON from StreamPlan

As the first step to visualize the StreamGraph/Plan, this patch generates a json representation of it. For the example StreamGraph in TestPlanJsonGenerator, here is the json that is generated (https://github.com/xinyuiscool/examples/blob/master/example_plan.json). This patch also introduces the immutable StreamPlan and did some code cleanup.

@jmakes and @prateekm : please take a look at this patch. Thanks.

@prateekm : I think I also fixed the stuff you mentioned in your early feedback. As we discussed, NodeId is the ID for either operator node or stream node, and it is used to construct the topology of the graph. For rendering, stream is also a node in this json graph (we will start from the source stream). For join, now two operator nodes are created to keep it in sync with StreamGraph. Each node has a reference of the other in the pair. I updated the link to the example json. Please take a look again.

I merged @prateekm 's recent patch and addressed all the comments. Please take a look again. Thanks!

btw, also updated the example json here (https://github.com/xinyuiscool/examples/blob/master/example_plan.json).


Update Atlassian charts to use common definitions

Update the charts to use the follow common definitions from the common chart:

fullname
name
chart
selectorLabels
labels

Signed-off-by: Martin Hickey<EMAIL_ADDRESS>Partial #302
Note: This PR depends on #358. DO NOT MERGE until #358 is merged. #358 now merged and common chart released..

@hickeyma, I have tested the changes locally and updated the PR to update the remaining references. The tests are also passing now.
I think the change is useful but it will have an impact on developer experience. What do you think is the best approach? Should we add a target to Makefile to run helm dependency update over the helm charts so people can easily init or update the common chart? Does the helm chart have an impact on the release cycle? From my local testing, after the dependency initialization, the common is stored in charts subfolder in each product helm chart and then included in helm package command, which is the desired behavior. I just wonder if there are other aspects we should consider before merging this change.

I have tested the changes locally and updated the PR to update the remaining references. The tests are also passing now. I hope it is ok, that I was working on your branch, I think it will save time for everybody.

Not a bother. Thanks for the updates @nanux.

I think the change is useful but it will have an impact on developer experience. What do you think is the best approach? Should we add a target to Makefile to run helm dependency update over the helm charts so people can easily init or update the common chart?

I think you are best suited to decide for chart maintainers. The impact is quite negligible as the chart maintainer will get the error message straight off: Error: INSTALLATION FAILED: An error occurred while checking for chart dependencies. You may need to run helm dependency build to fetch missing dependencies: found in Chart.yaml, but missing in charts/ directory: common.  But as I have said, I think you are best placed to decide this.

Does the helm chart have an impact on the release cycle?

What impact do you forsee?

I just wonder if there are other aspects we should consider before merging this change.

That's a good point. I just thought about how we referenced the chart using file over repo reference. I have extracted the common chart into #358 as I think we should merge this first so it is part of the chart repository.  It can then be referenced as follows:
dependencies:
   - name: common
     version: 1.0.0
     repository: https://atlassian.github.io/data-center-helm-charts

This is the more standard way to do it.

@nanux Looks like the common chart is not added to the Atlassian chart repository yet. Would you be able to look into this?

@hickeyma, yes. I am preparing the release for other products as well and as part of it, I will release the common chart.

Great, thanks @nanux

@hickeyma, the common-1.0.0 chart was released, can you please continue with this PR?
Thank you

@nanux Thanks for releasing the common chart. Updated the PR with the released common chart. Ready for review again.

@nanux Do you mind doing a review when you get a chance? It would be good to get this merged to start using the common chart definitions.

@hickeyma, I have added the necessary commands to our testing scripts to make it work in our CI as well. Since morning we did release bamboo 1.0.0 and a couple of other improvements for all the charts resulting in some conflicts. I have tried to fix the conflicts locally but git struggled with the fork remote. Could you please fix the conflicts and then I believe we are ready to merge.
Thank you! 🥇

@nanux Thanks for adding the updates to the testing scripts. I have merged the conflicts and it is ready for review again.

Thank you @hickeyma , All good. we had another recent commit which caused some more conflicts in this PR. I just resolved them and merged the PR. Thank you again for the awesome suggestion and work 🥇

Thanks @nanux @nghazali @yzha645 @jjeongatl for reviewing. Thanks @nghazali for merging.
Its great to see this capability in place and should help streamline chart maintenance.


implement MockContentFragment_ContentElement_Structured getValue() me…

fixes #15

thanks for the PR!
it currently does not compile against AEM 6.5.7 API, which is the oldest version we support. however, this should not be a problem to be compatible, you have to remove some @Override annotations for the methods which were not present and that version of the AEM API - the classes itself are present already. with this it should be compatible.
please also add unit tests for the new feature/methods.
cosmetic: code needs to be reformatted to 2 spaces indendation and file headers, but i can add that later as well.

thanks - i've done some cosmetic changes to reformat the code following our coding standards, and to reduce the visibility of the new classes as they are only interface implementations and should not be used directly.

@koenkicken We could use this as well, want to update this PR?

@koenkicken We could use this as well, want to update this PR?

Don't have time for this at the moment, so go ahead :)


Build warning

Hi,
You're most probably already aware of this but, building quadro generates the following warning:
===> Building for quarto-0.2.0
   Compiling quarto v0.2.0 (/usr/pkgsrc/wip/quarto/work/quarto-0.2.0)
warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
  --> src/main.rs:34:9
   |
34 |         const_err,
   |         ^^^^^^^^^
   |
   = note: `#[warn(renamed_and_removed_lints)]` on by default

warning: `quarto` (bin "quarto") generated 1 warning
    Finished release [optimized] target(s) in 3.78s

OS: NetBSD 10.99.7
Rust: 1.71.1
Regards

FYI, I've created a package for NetBSD and have merged it into the main branch. Commit message for reference, https://mail-index.netbsd.org/pkgsrc-changes/2023/08/12/msg280601.html

Thank you. Didn't see the warning on my end but removed the const_err deny nevertheless. :)

And thanks for creating the netbsd package

Let me know if you would like install instructions on README.MD

Up to you ;)


Include scrollback history in state restoration

This is especially useful for updates and crashes, but it's nice to preserve history in general.
(I haven't attempted this one)

I wrote some details on Terminal.app's behavior here in #2679 that it might be good to reference for anyone doing this.

Nice writeup. This feature is one I have come to rely on, especially the per window command history. I wonder if implementing the "TERM_SESSION_ID env var containing a UUID that's unique per window/tab and persists across relaunch" part would enable the shell to handle most of this without any additional work on the ghostty side? At the least this TERM_SESSION_ID idea is one that seems to provide the bare necessity for me the user, if I wanted to try and "hack" around this missing feature by restoring sessions to particular windows/splits with eg. zellij.
Also, I don't think this issue being labeled os/macos is correct, this is a feature to match functionality on the mac os Terminal.app, but this is a cross platform feature, I know I would love it on linux also.

FWIW, this is the single missing feature that is blocking me from jumping fully to ghostty as my daily driver. Everything else, i depend on, works reliably and pretty damn fast.


Move .fish files to completions/

According to https://github.com/jorgebucaran/fisher/issues/651, fisher doesn't allow top-level *.fish files anymore.
So I just move top-level *.fish and pip_install_completion.py files to completions/.

Personally i have never used it with fisher, and i'm pleasantly surprised it did :^)

Personally i have never used it with fisher, and i'm pleasantly surprised it did :^)

:ok_hand: :+1:

:ok_hand: :+1:


Exit 1 when grpc requests fail (#771)

Description of change

Fixes https://github.com/meroxa/cli/issues/770
Related to https://github.com/meroxa/turbine-go/issues/162
Type of change

[ ]  New feature
[ ]  Bug fix
[ ]  Refactor
[ ]  Documentation

How was this tested?

[ ]  Unit Tests
[ ]  Tested in staging
[ ]  Tested in minikube

Demo

before
after

Additional references

Documentation updated

@raulb thank you for looking. I will make the update.

I would like to merge https://github.com/meroxa/turbine-go/pull/163 first so that new apps won't conflict with this CLI change


3b193b7a-894c-4c10-ab89-f009459d080b

this is for automated testing

64e3d78a-5bea-4e80-8b42-a7e43430aef1