Incompatible with IntelliJ 2020.1

Issue #97 resolved
Former user created an issue

Version 8.1.115 of Bitbucket Linky is incompatible with the current IntelliJ IDEA version, 2020.1.

Error in Event Log: Plugin Error: Plugin "Bitbucket Linky" is incompatible (until build 193.SNAPSHOT < IU-201.6668.121).

Comments (16)

  1. Rohan Dhruva

    I built a version of the plugin locally by checking out the source code and using the task ./gradlew buildPlugin. Copy the jar from the build/distributions folder and install it in intellij using the "Install plugin from disk" option. This works because local builds of the plugin don’t have the untilBuild restricted to 193.*, so you can install it on 2020.1.

    Seems to work just fine so far. Maybe it’s just a matter of updating the untilBuild field in build.gradle.kts?

  2. Daniil Penkin staff

    Yes, I just don’t have time for that right now, thanks to 🦠

    Unfortunately, it’s not just the matter of bumping the untilBuild boundary and compiling against 2020.1 – that doesn’t solve all the issues though most of the plugin’s actions will work. I will get my hands on releasing a version by the end of this week.

    I’m really sorry for the delay.

  3. Robbie Coleman

    I just wanted to add the stacktrace from GoLand 2020.1 for an exception that happens in the background and doesn’t seem to break functionality (opening and copying links has been working for me).

    java.lang.Throwable: Do not call synchronous repository update in EDT
        at com.intellij.openapi.diagnostic.Logger.error(Logger.java:146)
        at com.intellij.dvcs.repo.VcsRepositoryManager.getRepositoryForRoot(VcsRepositoryManager.java:154)
        at com.intellij.dvcs.repo.VcsRepositoryManager.getRepositoryForRoot(VcsRepositoryManager.java:143)
        at com.atlassian.bitbucket.linky.actions.CachingLinkyActionContextProvider.repositoryForFile(action-context.kt:180)
        at com.atlassian.bitbucket.linky.actions.CachingLinkyActionContextProvider.gatherFileActionContext(action-context.kt:104)
        at com.atlassian.bitbucket.linky.actions.CachingLinkyActionContextProvider.getLinkyActionContext(action-context.kt:81)
        at com.atlassian.bitbucket.linky.actions.Action_contextKt.linkyActionContext(action-context.kt:193)
        at com.atlassian.bitbucket.linky.actions.link.AbstractFileSourceViewAction.update(file-actions.kt:44)
        at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareUpdate(ActionUtil.java:177)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.doUpdate(ActionUpdater.java:453)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$null$1(ActionUpdater.java:93)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.callAction(ActionUpdater.java:133)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$new$2(ActionUpdater.java:94)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.update(ActionUpdater.java:435)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:296)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$19(ActionUpdater.java:275)
        at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1712)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:275)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:326)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$19(ActionUpdater.java:275)
        at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1712)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:275)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:326)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$19(ActionUpdater.java:275)
        at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1712)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:275)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandActionGroup(ActionUpdater.java:185)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandActionGroup(ActionUpdater.java:159)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$expandActionGroupWithTimeout$11(ActionUpdater.java:201)
        at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:54)
        at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:164)
        at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:625)
        at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:570)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:61)
        at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:151)
        at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:54)
        at com.intellij.openapi.progress.util.ProgressIndicatorUtils.withTimeout(ProgressIndicatorUtils.java:281)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandActionGroupWithTimeout(ActionUpdater.java:201)
        at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandActionGroupWithTimeout(ActionUpdater.java:193)
        at com.intellij.openapi.actionSystem.impl.Utils.fillMenu(Utils.java:98)
        at com.intellij.openapi.actionSystem.impl.ActionPopupMenuImpl$MyMenu.show(ActionPopupMenuImpl.java:118)
        at com.intellij.openapi.editor.impl.ContextMenuPopupHandler.handlePopup(ContextMenuPopupHandler.java:35)
        at com.intellij.openapi.editor.impl.EditorImpl.invokePopupIfNeeded(EditorImpl.java:4716)
        at com.intellij.openapi.editor.impl.EditorImpl.access$9200(EditorImpl.java:123)
        at com.intellij.openapi.editor.impl.EditorImpl$MyMouseAdapter.runMousePressedCommand(EditorImpl.java:3825)
        at com.intellij.openapi.editor.impl.EditorImpl$MyMouseAdapter.mousePressed(EditorImpl.java:3747)
        at java.desktop/java.awt.Component.processMouseEvent(Component.java:6648)
        at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3345)
        at java.desktop/java.awt.Component.processEvent(Component.java:6416)
        at java.desktop/java.awt.Container.processEvent(Container.java:2263)
        at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5026)
        at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4858)
        at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
        at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4544)
        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:2773)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4858)
        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:974)
        at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:912)
        at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:844)
        at com.intellij.ide.IdeEventQueue.lambda$null$8(IdeEventQueue.java:449)
        at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:739)
        at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:448)
        at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:831)
        at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:502)
        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)
    

  4. Robbie Coleman

    Hmmm… I have 7.5 and GoLand says there are no updates available. How can I get the latest?

  5. Daniil Penkin staff

    At the moment the only version compatible with 2020.1 is on EAP channel, see this comment for a guide on how to get it.

    Right, 7.5 didn’t have upper boundary, and you somehow avoided updating to Linky 8.* which were limited to 2019.*

    Thanks for checking!

  6. Robbie Coleman

    With 8.1.115.eap I get the following:

    java.lang.NoSuchMethodError: 'com.intellij.ui.layout.LayoutBuilder com.intellij.ui.layout.LayoutImplKt.createLayoutBuilder$default(boolean, int, java.lang.Object)'
        at com.atlassian.bitbucket.linky.configuration.LinkyConfigurable.createPanel(LinkyConfigurable.kt:57)
        at com.intellij.openapi.options.DslConfigurableBase$panel$1.compute(BoundConfigurable.kt:32)
        at com.intellij.openapi.options.DslConfigurableBase$panel$1.compute(BoundConfigurable.kt:27)
        at com.intellij.openapi.util.ClearableLazyValue.getValue(ClearableLazyValue.java:45)
        at com.intellij.openapi.options.DslConfigurableBase.createComponent(BoundConfigurable.kt:40)
        at com.intellij.openapi.options.ex.ConfigurableWrapper.createComponent(ConfigurableWrapper.java:162)
        at com.intellij.openapi.options.ex.ConfigurableCardPanel.lambda$createConfigurableComponent$4(ConfigurableCardPanel.java:109)
        at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:894)
        at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:61)
        at com.intellij.openapi.options.ex.ConfigurableCardPanel.createConfigurableComponent(ConfigurableCardPanel.java:105)
        at com.intellij.openapi.options.ex.ConfigurableCardPanel.lambda$create$0(ConfigurableCardPanel.java:54)
        at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:894)
        at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:61)
        at com.intellij.openapi.options.ex.ConfigurableCardPanel.create(ConfigurableCardPanel.java:53)
        at com.intellij.openapi.options.newEditor.ConfigurableEditor$1.create(ConfigurableEditor.java:56)
        at com.intellij.openapi.options.newEditor.ConfigurableEditor$1.create(ConfigurableEditor.java:53)
        at com.intellij.ui.CardLayoutPanel.createValue(CardLayoutPanel.java:73)
        at com.intellij.ui.CardLayoutPanel.select(CardLayoutPanel.java:101)
        at com.intellij.ui.CardLayoutPanel.lambda$null$0(CardLayoutPanel.java:117)
        at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:201)
        at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:831)
        at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:310)
        at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:80)
        at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:128)
        at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:46)
        at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:184)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
        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.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
        at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:974)
        at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:847)
        at com.intellij.ide.IdeEventQueue.lambda$null$8(IdeEventQueue.java:449)
        at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:728)
        at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:448)
        at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:831)
        at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:496)
        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.pumpEventsForFilter(EventDispatchThread.java:117)
        at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
        at java.desktop/java.awt.Dialog.show(Dialog.java:1063)
        at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:708)
        at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:437)
        at com.intellij.openapi.ui.DialogWrapper.doShow(DialogWrapper.java:1707)
        at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1666)
        at com.intellij.ide.actions.ShowSettingsUtilImpl.showSettingsDialog(ShowSettingsUtilImpl.java:80)
        at com.intellij.ide.actions.ShowSettingsAction.perform(ShowSettingsAction.java:54)
        at com.intellij.ui.mac.MacOSApplicationProvider$Worker.lambda$null$1(MacOSApplicationProvider.java:78)
        at com.intellij.ui.mac.MacOSApplicationProvider$Worker.lambda$submit$7(MacOSApplicationProvider.java:175)
        at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:201)
        at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:831)
        at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:310)
        at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:80)
        at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:128)
        at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:46)
        at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:184)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
        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.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
        at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:974)
        at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:847)
        at com.intellij.ide.IdeEventQueue.lambda$null$8(IdeEventQueue.java:449)
        at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:739)
        at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:448)
        at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:831)
        at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:496)
        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)
    

  7. Rohan Dhruva

    @Daniil Penkin , I followed your instructions to install the EAP version of the plugin (8.1.115.eap) on intellij idea 2020.1. When I try to open the plugin settings, the preferences pane is stuck showing “Loading” with a spinner.

    (The “background” is whatever preference pane you had open before clicking on “Bitbucket Linky” on the left)

  8. Rohan Dhruva

    Additionally, I also saw an error with the exact same stack trace that @Robbie Coleman shared above.

  9. Daniil Penkin staff

    Yeah, that’s one of the things for me to fix before the final release. You can ignore that screen for now, Repositories tab should work – and that’s what used to be under Bitbucket Linky settings.

    As soon as the next EAP version is out, you’ll be prompted to update. A final version will always have same EAP released beforehand, so you’ll get a fix for that screen too. As in, each build is promoted through Nightly →EAP → Stable channels.

    I’ll close this ticket when stable version is out. At that point you might want to switch back to default update channel by going to this screen.

  10. Log in to comment