Giter VIP home page Giter VIP logo

jbang-idea's People

Contributors

actions-user avatar danberindei avatar gastaldi avatar linux-china avatar maddingo avatar maxandersen avatar nandorholozsnyak avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

jbang-idea's Issues

Possibly invalid reference to 'NotUnderContentRootModuleInfo.project'

Hello! I am a maintainer of the Kotlin IntelliJ IDEA plugin.
During the plugin refactoring, I found out that the JBang plugin uses the NotUnderContentRootModuleInfo.project method.

Here is the exact call site:

jbangNotificationGroup.createNotification("Failed to get JBang templates", errorText, NotificationType.ERROR).notify(project)

I suppose using NotUnderContentRootModuleInfo.project there is unexpected, as the method always returns null.
It would be great if you review this code fragment.

Show more options for //DEPS assist

I'm not sure what the current filters are for the //DEPS assist, but if you have a line like:

//DEPS org.slf4j:slf4j-simple:

And hit Alt+Space at the end of that line it only seems to show the very latest version. I can understand that showing all versions might result in very long lists for some artifacts, but perhaps we can show the last 10-20 ones at least?

Using templates in new module creation

I've been using JBang for some lambda functions and I'm always creating different modules for each different lambda function, they are not dependending on each other but it is good to make sure they are well organized.

I'm just thinking if it is available to have a template selector in the new module window?
image

cannot create jbang script in intellij idea

I installed jbang with sdk man, by default it is installed in ~/.sdkman/candidates/jbang/current

Than i installed jbang intellij idea plugin. I tried both community v2022.2.2 and ultimate v2022.2.1

Whenever i try to do file -> new -> jbang script, i get this error:
Could not execute [~/.jbang/bin/jbang, template, list] with environment {NO_COLOR=true}. Error=2, No such file or directory

Note: my jbang installation is working fine, i can run jbang files from command line.

in vscode there an option to set as jbang home, probably that kind of setting would be required. Could you please check.

JBang tool window

The tool window includes a panel to display ScriptInfo for JBang script and a button group.

button group:

  • run button
  • sync dependencies buttons: sync to gradle, sync from gradle, sync to module
  • invalid script cache
  • export button

Sync dependencies between build.gradle and JBang script

In edit mode, some developers add dependencies in build.gradle for code completion etc. Finally they should copy dependencies to JBang script with //DEPS directive. Introduce a shortcut to sync dependencies from Gradle to JBang script with //DEPS filled.

Reverse flow should be considered too. Introduce intention action for //DEPS and add dependency to build.gradle. With Github Copilot, and it's easy to add dependency in script.

create jbang should let user specify template

currently jbang create action takes out put of jbang template list and show to user (which is great) but
should also be possible to enter in template name to allow to mimick what jbang init -t junit@jbangdev file would do.

i.e. here jbang will go and look up junit@jbangdev outside templates that jbang template list will show.

sync jars does not pick up changes made to file

I start with afile with:

//DEPS info.picocli:picocli:4.6.2
//FILES 5letterwords.txt
//JAVA 17

I run sync and get picocli in dependencies. Great!

if I then add dependency:

//DEPS info.picocli:picocli:4.6.2
//DEPS com.microsoft.playwright:playwright:1.18.0
//FILES 5letterwords.txt
//JAVA 17

and run sync again it keeps just adding picocli.

even delete all deps and it still add it.

so somehow it does not get dependencies correcly.

NPE running "New/JBangScript" in IntelliJ 2022.3.3

To repro:

  • close all projects
  • choose File/New/JBangScript from menu
  • notice error
  • click on error popup and the following stacktrace is shown:
java.lang.NullPointerException
	at dev.jbang.idea.actions.CreateFromTemplateAction.actionPerformed(CreateFromTemplateAction.kt:19)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.doPerformActionOrShowPopup(ActionUtil.java:327)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAwareWithCallbacks$4(ActionUtil.java:306)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:350)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:306)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$performAction$5(ActionMenuItem.java:296)
	at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:226)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.performAction(ActionMenuItem.java:289)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$new$1(ActionMenuItem.java:78)
	at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:113)
	at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$new$2(ActionMenuItem.java:78)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:779)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:730)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:724)
	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:749)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:909)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:756)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$5(IdeEventQueue.java:437)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:787)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:436)
	at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
	at com.intellij.ide.IdeEventQueue.performActivity(IdeEventQueue.java:615)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:434)
	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:838)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:480)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)

Plugin doesn't aknowledge JBANG_HOME

sdkman installs jbang in $HOME/.sdkman/candidates/jbang/current and sets the environment variable JBANG_HOME to that directory. The plugin doesn't find the jang script

Add groovy library for JBang Groovy Script automatically

Now if you create JBang groovy script, and IDEA will ask you to create Groovy library to Groovy Script.

Adjusting:

  • check groovy library available during JBang groovy script creation
  • if no groovy library found, create default groovy library for Groovy script

Issues:

  • How to change Groovy library version if Groovy script uses new version with //GROOVY 4.0.0
  • Different Groovy scripts use different groovy version, how to deal with global groovy library? -- Ask developer to use same Groovy version in same project?

IDEA Freezes on Sync

I really like the JBang IDEA plugin, but sometimes it literally just kills IDEA. On Windows I experience this bug more than on Linux (Pop OS). I would say I experience these issues when the script is having a lot of dependencies or all the dependencies are not on the system so it should be downloaded.

Is there any way to make it somehow async like the indexing in IDEA, it is just a progress bar in the bottom?

I have no proper reproduction steps for it, but I think it is the same for other users as well when Sync is happening.

create jbang script ux issues

  1. cannot select location of the script
  2. defaults to agent where it should default to empty or hello
  3. the generated script is not opened so tricky to find in larger projects

package search integration

Code completion for GAV and hint for new version available

//DEPS org.apache.commons:commons-lang3:3.9.0

Template initialization with property override

JBang has been having templates for a while now, and a so called template property feature just got implemented a few weeks earlier, it means every template can have properties and these properties could be described, of course if a property is listed in the jbang-catalog it does not mean that the source files are using it, but it can be used and on initialization if they are having default values they are being looked up. More could be read here jbangdev/jbang#1203.

I'm wondering if the IDEA plugin could resolve that properties are given or not to a template and it would create a form where all the properties could be read with their description and default values (if given) and they could be overriden.

jbang script template fails

dev.jbang.cli.ExitException: Resource not found on class path: jbang-catalog.json
	at dev.jbang.source.resolvers.ClasspathResourceResolver.getClasspathResource(ClasspathResourceResolver.java:46)
	at dev.jbang.source.resolvers.ClasspathResourceResolver.resolve(ClasspathResourceResolver.java:31)
	at dev.jbang.source.resolvers.CombinedResourceResolver.lambda$resolve$0(CombinedResourceResolver.java:26)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
	at java.base/java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
	at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
	at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
	at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
	at dev.jbang.source.resolvers.CombinedResourceResolver.resolve(CombinedResourceResolver.java:28)
	at dev.jbang.source.ResourceRef.forResource(ResourceRef.java:126)
	at dev.jbang.catalog.Catalog.getBuiltin(Catalog.java:327)
	at dev.jbang.intellij.plugins.jbang.actions.JbangTemplatesDialogWrapper.createTemplateComboBox(JbangTemplatesDialogWrapper.kt:34)
	at dev.jbang.intellij.plugins.jbang.actions.JbangTemplatesDialogWrapper.<init>(JbangTemplatesDialogWrapper.kt:20)
	at dev.jbang.intellij.plugins.jbang.actions.CreateFromTemplateAction.actionPerformed(CreateFromTemplateAction.kt:15)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAwareWithCallbacks$4(ActionUtil.java:244)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:265)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:244)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:300)
	at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:236)
	at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:67)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:292)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$3(ActionMenuItem.java:131)
	at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:131)
	at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:541)
	at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:571)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6654)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3345)
	at java.desktop/java.awt.Component.processEvent(Component.java:6419)
	at java.desktop/java.awt.Container.processEvent(Container.java:2263)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5029)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2790)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:751)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:749)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
	at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:820)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:757)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:498)
	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)

sync with IDE breaks

have a .jsh file that when using sync with jbang gives me this error:

java.security.PrivilegedActionException: java.security.PrivilegedActionException: java.lang.Exception: [jbang] [ERROR] Cannot invoke "java.io.File.getAbsolutePath()" because the return value of "dev.jbang.source.Source.getJarFile()" is null
[jbang] Run with --verbose for more details
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
	at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:820)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:757)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:498)
	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: java.security.PrivilegedActionException: java.lang.Exception: [jbang] [ERROR] Cannot invoke "java.io.File.getAbsolutePath()" because the return value of "dev.jbang.source.Source.getJarFile()" is null
[jbang] Run with --verbose for more details
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:751)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:749)
	... 17 more
Caused by: java.lang.Exception: [jbang] [ERROR] Cannot invoke "java.io.File.getAbsolutePath()" because the return value of "dev.jbang.source.Source.getJarFile()" is null
[jbang] Run with --verbose for more details
	at dev.jbang.intellij.plugins.jbang.JBangCli.resolveScriptDependencies(JBangCli.kt:29)
	at dev.jbang.intellij.plugins.jbang.actions.SyncDependenciesAction.syncDepsToModule(SyncDependenciesAction.kt:283)
	at dev.jbang.intellij.plugins.jbang.actions.SyncDependenciesAction.actionPerformed(SyncDependenciesAction.kt:82)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAwareWithCallbacks$4(ActionUtil.java:244)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:265)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:244)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:300)
	at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:236)
	at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:67)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:292)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$3(ActionMenuItem.java:131)
	at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:131)
	at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:541)
	at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:571)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6654)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3345)
	at java.desktop/java.awt.Component.processEvent(Component.java:6419)
	at java.desktop/java.awt.Container.processEvent(Container.java:2263)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5029)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2790)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	... 22 more

Support IDEA 2022.2 EAP

New EAP version was released and the JBang plugin is not compatible with that.

Version: Build #IU-222.2680.4, built on May 25, 2022

image

//DEPS content assist only works on first item

When you have a line like

//DEPS io.javalin:javalin:4.4.0 org.slf4j:slf4j-simple:1.7.36

And you put your cursor after org.slf4j:slf4j-simple:" and hit Ctrl+Space it shows suggestions for "io.javalin:javalin:", not "org.slf4j:slf4j-simple:".

Bundle jbang.jar into plugin

If plugin bundles with jbang.jar and plugin can call JBang functions by API directly, just like JetBrains Maven plugin, for example dependencies resolve, templates, script creation directly from API, not from command line. Not sure Jbang can be used as embed mode.

One issue here: IDEA's classloader is different with JBang's classloader. #5

IDEA does not see jbang installed with scoop

I got errors like:

Cannot run program "jbang" (in directory "C:\Users\User_Name\git\snippets"): CreateProcess error=2, The system cannot find the file specified

Could not execute [C:\Users\User_Name\.jbang\bin\jbang.cmd, template, list] with environment {NO_COLOR=true}. Error=2, The system cannot find the file specified.

Jbang on my system is located here: C:\Users\User_Name\scoop\apps\jbang\current\bin\jbang

builds been failing since 0.9

all pr builds and ci builds https://github.com/jbangdev/jbang-idea/actions are failing as not releasing using the approach outlined in the plugin template.

MEaning impossible to submit pull requests and know if tests passes and the release setup is non-reproducible.

lets please fix this and stop doing it manually which only one person can do.

use jbang templates catalogs instead of plugin custom templates

I see more and more templates added to this plugin - that undermines the whole notion of jbang templates and catalogs.

We should remove the idea specific templates and use jbang already existing templates and catalogs mechanism that is made to support these things.

run overrules standard java debug/run tests

after installing jbang all my normal java runs are overruled. i.e. when trying to run junit test method it runs it as a jbang instead of normal java.

should not overrule normal java actions IMO. should be an option.

when build.gradle present cannot sync dependencies

I have scripts in my project that has nothing to do with the build.gradle but jbang-idea insists on updating the build.gradle.

if build.gradle is present coudl provide the option to sync to build.gradle but it should still offer sync to module so once can work with the scripts dependencies without changing build.gradle.

IDEA freezes completely on Windows when syncing DEPS

So when I try to sync some JBang script's dependencies in IDEA with the Sync JBang DEPS to Module the whole IDE freezes and I have to force shutdown it. It happens only on Windows for me.

JBang version: 0.88.0
JBang IDEA plugin version: 0.15.0
IDEA version: IntelliJ IDEA 2021.3.2 Build #IU-213.6777.52, built on January 28, 2022 but if I remember well it happened on earlier IDEA version as well.

What I saw in the threadDump is that this command line stucks, and waits forever:
https://github.com/jbangdev/jbang-idea/blob/main/src/main/kotlin/dev/jbang/idea/JBangCli.kt#L30

@Throws(Exception::class)
    fun resolveScriptDependencies(scriptFilePath: String): List<String> {
        val jbangCmd = getJBangCmdAbsolutionPath()
        val pb = ProcessBuilder(jbangCmd, "info", "classpath", "--fresh", scriptFilePath)
        val process = pb.start()
        process.waitFor()
        if (process.exitValue() != 0) {
            throw Exception(processErrorToText(process))
        } else {
            return processOutputToText(process).split(':', ';').filter { !it.contains(".jbang") }
        }
    }

If I run the following command in the command line jbang.cmd info classpath --fresh src/script.java it succeeds.

Here is the threadDump log for it:

"AWT-EventQueue-0" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/java.lang.ProcessImpl.waitForInterruptibly(Native Method)
	at [email protected]/java.lang.ProcessImpl.waitFor(ProcessImpl.java:554)
	at dev.jbang.idea.JBangCli.resolveScriptDependencies(JBangCli.kt:30)
	at dev.jbang.idea.actions.SyncDependenciesAction.syncDepsToModule(SyncDependenciesAction.kt:273)
	at dev.jbang.idea.actions.SyncDependenciesAction.actionPerformed(SyncDependenciesAction.kt:82)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAwareWithCallbacks$4(ActionUtil.java:244)
	at com.intellij.openapi.actionSystem.ex.ActionUtil$$Lambda$3681/0x0000000802127040.run(Unknown Source)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:265)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:244)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$performAction$0(ActionMenuItem.java:277)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter$$Lambda$3680/0x0000000802127c40.run(Unknown Source)
	at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:236)
	at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:67)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.performAction(ActionMenuItem.java:269)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:284)
	at [email protected]/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$2(ActionMenuItem.java:111)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$$Lambda$3679/0x0000000802127840.run(Unknown Source)
	at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:111)
	at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:541)
	at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:571)
	at [email protected]/java.awt.Component.processMouseEvent(Component.java:6654)
	at [email protected]/javax.swing.JComponent.processMouseEvent(JComponent.java:3345)
	at [email protected]/java.awt.Component.processEvent(Component.java:6419)
	at [email protected]/java.awt.Container.processEvent(Container.java:2263)
	at [email protected]/java.awt.Component.dispatchEventImpl(Component.java:5029)
	at [email protected]/java.awt.Container.dispatchEventImpl(Container.java:2321)
	at [email protected]/java.awt.Component.dispatchEvent(Component.java:4861)
	at [email protected]/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
	at [email protected]/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
	at [email protected]/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
	at [email protected]/java.awt.Container.dispatchEventImpl(Container.java:2307)
	at [email protected]/java.awt.Window.dispatchEventImpl(Window.java:2790)
	at [email protected]/java.awt.Component.dispatchEvent(Component.java:4861)
	at [email protected]/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
	at [email protected]/java.awt.EventQueue$4.run(EventQueue.java:727)
	at [email protected]/java.awt.EventQueue$4.run(EventQueue.java:721)
	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
	at [email protected]/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at [email protected]/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
	at [email protected]/java.awt.EventQueue$5.run(EventQueue.java:751)
	at [email protected]/java.awt.EventQueue$5.run(EventQueue.java:749)
	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
	at [email protected]/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at [email protected]/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
	at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:820)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:757)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
	at com.intellij.ide.IdeEventQueue$$Lambda$576/0x0000000800668440.compute(Unknown Source)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
	at com.intellij.ide.IdeEventQueue$$Lambda$575/0x0000000800654440.run(Unknown Source)
	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:498)
	at [email protected]/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at [email protected]/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at [email protected]/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at [email protected]/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at [email protected]/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at [email protected]/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

"BaseDataReader: output stream of fsnotifier.exe" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/java.io.FileInputStream.readBytes(Native Method)
	at [email protected]/java.io.FileInputStream.read(FileInputStream.java:279)
	at [email protected]/java.io.BufferedInputStream.read1(BufferedInputStream.java:290)
	at [email protected]/java.io.BufferedInputStream.read(BufferedInputStream.java:351)
	at [email protected]/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
	at [email protected]/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
	at [email protected]/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
	at [email protected]/java.io.InputStreamReader.read(InputStreamReader.java:181)
	at [email protected]/java.io.Reader.read(Reader.java:229)
	at com.intellij.util.io.BaseOutputReader.readAvailableBlocking(BaseOutputReader.java:133)
	at com.intellij.util.io.BaseDataReader.readAvailable(BaseDataReader.java:74)
	at com.intellij.util.io.BaseDataReader.doRun(BaseDataReader.java:155)
	at com.intellij.util.io.BaseDataReader$$Lambda$928/0x0000000800a54c40.run(Unknown Source)
	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
	at com.intellij.util.io.BaseDataReader.lambda$start$0(BaseDataReader.java:50)
	at com.intellij.util.io.BaseDataReader$$Lambda$926/0x0000000800a55440.run(Unknown Source)
	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"BaseDataReader: error stream of fsnotifier.exe" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/java.io.FileInputStream.readBytes(Native Method)
	at [email protected]/java.io.FileInputStream.read(FileInputStream.java:279)
	at [email protected]/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
	at [email protected]/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
	at [email protected]/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
	at [email protected]/java.io.InputStreamReader.read(InputStreamReader.java:181)
	at [email protected]/java.io.Reader.read(Reader.java:229)
	at com.intellij.util.io.BaseOutputReader.readAvailableBlocking(BaseOutputReader.java:133)
	at com.intellij.util.io.BaseDataReader.readAvailable(BaseDataReader.java:74)
	at com.intellij.util.io.BaseDataReader.doRun(BaseDataReader.java:155)
	at com.intellij.util.io.BaseDataReader$$Lambda$928/0x0000000800a54c40.run(Unknown Source)
	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
	at com.intellij.util.io.BaseDataReader.lambda$start$0(BaseDataReader.java:50)
	at com.intellij.util.io.BaseDataReader$$Lambda$926/0x0000000800a55440.run(Unknown Source)
	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"EDT Performance Checker" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE

	at [email protected]/sun.management.ThreadImpl.dumpThreads0(Native Method)
	at [email protected]/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:521)
	at [email protected]/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:509)
	at com.intellij.diagnostic.ThreadDumper.getThreadInfos(ThreadDumper.java:65)
	at com.intellij.diagnostic.SamplingTask.dumpThreads(SamplingTask.java:47)
	at com.intellij.diagnostic.SamplingTask$$Lambda$12689/0x0000000804a8f440.run(Unknown Source)
	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at [email protected]/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
	at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:223)
	at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:246)
	at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:32)
	at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:225)
	at com.intellij.util.concurrency.BoundedTaskExecutor$1$$Lambda$667/0x00000008006f2840.run(Unknown Source)
	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
	at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:214)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"fsnotifier.exe" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/java.lang.ProcessImpl.waitForInterruptibly(Native Method)
	at [email protected]/java.lang.ProcessImpl.waitFor(ProcessImpl.java:554)
	at com.intellij.execution.process.ProcessWaitFor.lambda$new$0(ProcessWaitFor.java:28)
	at com.intellij.execution.process.ProcessWaitFor$$Lambda$925/0x0000000800a55040.run(Unknown Source)
	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
	at com.intellij.execution.process.ProcessWaitFor.lambda$new$1(ProcessWaitFor.java:23)
	at com.intellij.execution.process.ProcessWaitFor$$Lambda$924/0x0000000800a55c40.run(Unknown Source)
	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"Netty Builtin Server 1" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:813)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"Netty Builtin Server 2" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:813)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"ApplicationImpl pooled thread 4" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/java.net.TwoStacksPlainDatagramSocketImpl.receive0(Native Method)
	at [email protected]/java.net.TwoStacksPlainDatagramSocketImpl.receive(TwoStacksPlainDatagramSocketImpl.java:123)
	at [email protected]/java.net.DatagramSocket.receive(DatagramSocket.java:814)
	at com.intellij.i.O.b.q.v(q.java:55)
	at com.intellij.i.O.b.l.run(l.java:21)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"ApplicationImpl pooled thread 5" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/java.net.TwoStacksPlainDatagramSocketImpl.receive0(Native Method)
	at [email protected]/java.net.TwoStacksPlainDatagramSocketImpl.receive(TwoStacksPlainDatagramSocketImpl.java:123)
	at [email protected]/java.net.DatagramSocket.receive(DatagramSocket.java:814)
	at com.intellij.i.O.b.q.v(q.java:55)
	at com.intellij.i.O.b.l.run(l.java:21)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"nioEventLoopGroup-3-1" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:813)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"pool-6-thread-1" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/java.io.FileInputStream.readBytes(Native Method)
	at [email protected]/java.io.FileInputStream.read(FileInputStream.java:279)
	at [email protected]/java.io.BufferedInputStream.fill(BufferedInputStream.java:252)
	at [email protected]/java.io.BufferedInputStream.read(BufferedInputStream.java:271)
	at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:79)
	at org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:113)
	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-1" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-2" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-3" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-4" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-5" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-6" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-7" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-8" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-9" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-10" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-11" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-dispatch-12" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"HttpClient-1-SelectorManager" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
	at platform/[email protected]/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:867)

"Reference Handler" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE

	at [email protected]/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
	at [email protected]/java.lang.ref.Reference.processPendingReferences(Reference.java:241)
	at [email protected]/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:213)

"AWT-Windows" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.awt.windows.WToolkit.eventLoop(Native Method)
	at [email protected]/sun.awt.windows.WToolkit.run(WToolkit.java:308)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"Thread-28" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)
	at [email protected]/sun.net.dns.ResolverConfigurationImpl.notifyAddrChange0(Native Method)
	at [email protected]/sun.net.dns.ResolverConfigurationImpl$AddressChangeListener.run(ResolverConfigurationImpl.java:144)

"main" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE


"Signal Dispatcher" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE


"Attach Listener" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE


"WinLauncher external command processing thread" prio=0 tid=0x0 nid=0x0 runnable
     java.lang.Thread.State: RUNNABLE
 (in native)

"ApplicationImpl pooled thread 47" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING
 on java.util.concurrent.SynchronousQueue$TransferStack@66279c5f
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
	at [email protected]/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"Analytics" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@15088f4b
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
	at [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
	at com.segment.analytics.internal.AnalyticsClient$Looper.run(AnalyticsClient.java:106)
	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at com.segment.analytics.Platform$1$1.run(Platform.java:45)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"Analytics" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING
 on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2ec5ec43
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
	at [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
	at [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at com.segment.analytics.Platform$1$1.run(Platform.java:45)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"GitToolBox-schedule-0" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING
 on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@713c0b34
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
	at [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
	at [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"Analytics" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/java.lang.Thread.sleep(Native Method)
	at com.segment.backo.Backo.sleep(Backo.java:72)
	at com.segment.analytics.internal.AnalyticsClient$BatchUploadTask.run(AnalyticsClient.java:205)
	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at com.segment.analytics.Platform$1$1.run(Platform.java:45)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"GitToolBox-task-17" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.SynchronousQueue$TransferStack@10eab6c7
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
	at [email protected]/java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:920)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"Windows Shell integration" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3fcdf340
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
	at [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"httpclient-main-1" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@649370b8
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
	at [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"Periodic tasks thread" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING
 on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@4b10be5a
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
	at [email protected]/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
	at com.intellij.util.concurrency.AppDelayQueue.lambda$new$0(AppDelayQueue.java:26)
	at com.intellij.util.concurrency.AppDelayQueue$$Lambda$238/0x00000008002af440.run(Unknown Source)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"sonarlint-analysis-engine" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3d14c217
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
	at [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
	at org.sonarsource.sonarlint.core.analysis.AnalysisEngine.executeQueuedCommands(AnalysisEngine.java:65)
	at org.sonarsource.sonarlint.core.analysis.AnalysisEngine$$Lambda$8714/0x0000000803699040.run(Unknown Source)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"TimerQueue" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING
 on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3945181c
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
	at [email protected]/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
	at [email protected]/javax.swing.TimerQueue.run(TimerQueue.java:171)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"DefaultDispatcher-worker-1" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-2" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-3" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-4" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-5" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-6" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-7" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-8" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-9" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-10" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-11" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"DefaultDispatcher-worker-12" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

"Common-Cleaner" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING
 on java.lang.ref.ReferenceQueue$Lock@58395d9a
	at [email protected]/java.lang.Object.wait(Native Method)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at [email protected]/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:148)
	at [email protected]/java.lang.Thread.run(Thread.java:829)
	at [email protected]/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)

"Java2D Disposer" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.lang.ref.ReferenceQueue$Lock@29108156
	at [email protected]/java.lang.Object.wait(Native Method)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
	at [email protected]/sun.java2d.Disposer.run(Disposer.java:144)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"Finalizer" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.lang.ref.ReferenceQueue$Lock@48790657
	at [email protected]/java.lang.Object.wait(Native Method)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
	at [email protected]/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:170)

"AWT-Shutdown" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.lang.Object@591c13ad
	at [email protected]/java.lang.Object.wait(Native Method)
	at [email protected]/java.lang.Object.wait(Object.java:328)
	at [email protected]/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"kotlinx.coroutines.DefaultExecutor" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING
 on kotlinx.coroutines.DefaultExecutor@2341eb62
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
	at kotlinx.coroutines.DefaultExecutor.run(DefaultExecutor.kt:82)
	at [email protected]/java.lang.Thread.run(Thread.java:829)

"File Events Trigger Timer" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.TaskQueue@b462d29
	at [email protected]/java.lang.Object.wait(Native Method)
	at [email protected]/java.lang.Object.wait(Object.java:328)
	at [email protected]/java.util.TimerThread.mainLoop(Timer.java:527)
	at [email protected]/java.util.TimerThread.run(Timer.java:506)

"MultiThreadedHttpConnectionManager cleanup" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.lang.ref.ReferenceQueue$Lock@4b11304b
	at [email protected]/java.lang.Object.wait(Native Method)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
	at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$ReferenceQueueThread.run(MultiThreadedHttpConnectionManager.java:1122)

"JobScheduler FJ pool 7/11" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING
 on java.util.concurrent.ForkJoinPool@66236a39
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:275)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1619)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

"Batik CleanerThread" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.lang.ref.ReferenceQueue$Lock@35da97f6
	at [email protected]/java.lang.Object.wait(Native Method)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
	at org.apache.batik.util.CleanerThread.run(CleanerThread.java:106)

"JobScheduler FJ pool 0/11" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.ForkJoinPool@66236a39
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

"JobScheduler FJ pool 2/11" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.ForkJoinPool@66236a39
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

"JobScheduler FJ pool 3/11" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.ForkJoinPool@66236a39
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

"JobScheduler FJ pool 4/11" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.ForkJoinPool@66236a39
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

"JobScheduler FJ pool 8/11" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.ForkJoinPool@66236a39
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

"JobScheduler FJ pool 6/11" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.ForkJoinPool@66236a39
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

"JobScheduler FJ pool 10/11" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.ForkJoinPool@66236a39
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

"Notifications timer" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING
 on java.util.TaskQueue@40cf673e
	at [email protected]/java.lang.Object.wait(Native Method)
	at [email protected]/java.util.TimerThread.mainLoop(Timer.java:553)
	at [email protected]/java.util.TimerThread.run(Timer.java:506)

"sonarlint-auto-trigger-r20" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/java.lang.Thread.sleep(Native Method)
	at org.sonarlint.intellij.trigger.EditorChangeTrigger$EventWatcher.run(EditorChangeTrigger.java:125)

"sonarlint-issue-panel-refresh" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/java.lang.Thread.sleep(Native Method)
	at org.sonarlint.intellij.ui.CurrentFileController$EventWatcher.run(CurrentFileController.java:121)

"sonarlint-auto-trigger-knowledge-cafe-banner-generator" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/java.lang.Thread.sleep(Native Method)
	at org.sonarlint.intellij.trigger.EditorChangeTrigger$EventWatcher.run(EditorChangeTrigger.java:125)

"sonarlint-issue-panel-refresh" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: TIMED_WAITING

	at [email protected]/java.lang.Thread.sleep(Native Method)
	at org.sonarlint.intellij.ui.CurrentFileController$EventWatcher.run(CurrentFileController.java:121)


move to "Require a pull request before merging"

I plan to enable "Require a pull request before merging" o this repo similar to what we have elsewhere.

This enables collaboration and feedback with all builds passing as doing it on direct commits is just not possible.

For now I don't add required checks / approvals. Just a pull request so its more visible.

sync to gradle does not honor/understand property replacements

Have somethiung like:

//DEPS info.picocli:picocli:4.5.0
//DEPS org.jfxtras:jfxtras-icalendaragenda:9.0-r1
//DEPS org.openjfx:javafx-controls:11.0.2:${os.detected.jfxname}
//DEPS org.openjfx:javafx-graphics:11.0.2:${os.detected.jfxname}

and jbang idea does not resolve ${os.detected.jfxname}

I really do not think it is a good idea jbang-idea tries to duplicate jbang's logic.

why not just run jbang edit command and it is synced properly ?
or at least use jbang info tools to get the right set of dependencies?

use private artifactory to sync deps to module

Hi jbang members,

I've use jbang plugin for a while and cannot see any change I can configure private repo (artifactory with username and password) to sync //DEPS to module. The workaround I have right now is having a dummy project with proper maven // gradle settings to download libs to local repository than jbang idea plugin will pick them up from there.

Is there any change we can configure such behavior?

Regards,
Travis

Install JBang executable if does not exist on the computer

I just ran into the problem that if you do not have the JBang executable on your machine than the plugin is unable to work.

Is there any way that the plugin itself can install it? Maybe with a prompt to be 100% transparent with the user that it is missing and it will be downloaded and installed.

Unable to create a JBang script from Intellij

  1. Created a new empty project in Intellij IDEA.
  2. Selected the SDK for project:
    image
  3. Trying to create a new JBang script:
    image
  4. Getting following message:
    image

IntelliJ IDEA 2022.1.4 (Ultimate Edition)
Build #IU-221.6008.13, built on July 19, 2022

Local Java version (probably irrelevant):

โžœ  ~ java --version
openjdk 17.0.4.1 2022-08-12
OpenJDK Runtime Environment Temurin-17.0.4.1+1 (build 17.0.4.1+1)
OpenJDK 64-Bit Server VM Temurin-17.0.4.1+1 (build 17.0.4.1+1, mixed mode, sharing)

Sync 'JBang DEPS to Module' fails with 'Could not execute [/Users/cer/.jbang/bin/jbang'

  1. Installed jbang with sdk install jbang
  2. Launched IDEA 2022.3.1 with idea .
  3. Ran JBang DEPS to Module

Got

Failed to resolve dependencies from CopyPosts.java, please check your //DEPS in your code. Stacktrace: Could not execute [/Users/cer/.jbang/bin/jbang, info, classpath, --quiet, --fresh, /Users/cer/src/microservices/_scripts/CopyPosts.java]. Error=2, No such file or directory

See https://twitter.com/crichardson/status/1612845822424788993

sync to gradle causes duplication of dependencies if deps not found

I had this in my jbang file:

``
//DEPS info.picocli:picocli:4.5.0


changed it to:

//DEPS info.picocli:picocli:4.5.7


ran sync, and now I have:

//DEPS info.picocli:picocli:4.5.0
//DEPS info.picocli:picocli:4.5.7


and in build.gradle:

implementation 'info.picocli:picocli:4.5.0'

implementation 'info.picocli:picocli:4.5.7'


this should not happen - It should not do destrucive edits.

Running JBang as a Scratch file will not set the Script file attribute properly

Bug description:
I really like the IDEA's Scratch feature where devs can make different types of files and if it is a runnable thing, like a Java class than it could be ran as well.
When the JBang's shebang directive is configured then the IDEA recognizes it as a JBang script and we can see the shiny JBang icon to run the script, but it could not be run because the newly created Run Configuration's Script file attribute is not set properly.

image

Hitting on the JBang icon produces the following output in a console window:

/home/xxx/.jbang/bin/jbang run Idea2022.2/scratches/JBang/scratch_15.java
[jbang] [ERROR] Script or alias could not be found or read: 'Idea2022.2/scratches/JBang/scratch_15.java'
[jbang] Run with --verbose for more details

Opening the Run configuration is not setting the full path to the scratch file:
image

Expected behaviour:
Plugin should set the Script file attribute to the absolute path of the scratch file, in my case:
/home/xxx/.config/JetBrains/IntelliJIdea2022.2/scratches/JBang/scratch_15.java

External library name is always jbang

After the jbang script is being syncronized it has the name jbang for the dependency collector thing, but if a multi module project is being used it could be a bit "annoying", is there any way to append the name of the module as a prefix for the dependency collector?

Original:
image

Idea:
image

JBang not listed in project generators

Jbang plugin: 0.24.1
Intellij Idea Ultimate: IU-223.8836.41
MacOs: 13.2.1 (22D68) (ventura)
image

I installed the plugin, but there is no option to create a JBang project:

image

//DEPS content assist should include version

default code completion is not including version meaning it will fail (unless you have a @pom import that manages it).

any reason why the default content assist don't add latest version ?

i.e. instead of:

//DEPS com.android.support:appcompat-v7

you get

//DEPS com.android.support:appcompat-v7:28.0.0-rc02

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.