vbmacher / intellij-cucumber-scala

Enables navigation between cucumber feature steps and glue code using cucumber-scala DSL.
https://plugins.jetbrains.com/plugin/7460
Apache License 2.0
58 stars 29 forks source link

Not compatible with latest version of intelli/scala plugin (2018.1.8) #34

Closed 60secs closed 6 years ago

60secs commented 6 years ago

After installing the latest Intellij version, I was unable to upgrade the scala plugin to the latest version until I uninstalled the scala cucumber plugin (message was that the version was incompatible).

Until I updated to the latest scala plugin version, I was unable to open/import/run any scala/sbt projects.

zatekusen commented 6 years ago

For me I was able to upgrade everything fine, but the plugin does not work with Intellij 2018

pwhite1989 commented 6 years ago

Upgrade for scala was fine for me too, but the cucumber for scala plugin does not work in 2018 version

danielwegener commented 6 years ago

Thanks for the info. We need to recompile against the latest scala library bundled in the scala-plugin (aswell as the recent scala-psi library). Does anyone want to provide a PR?

macgrewal commented 6 years ago

@danielwegener I'd be happy to do this but am not 100% sure what you mean. Is this as simple as changing https://github.com/danielwegener/intellij-cucumber-scala/blob/master/build.sbt#L9 to use the latest scala-plugin (https://plugins.jetbrains.com/plugin/download?updateId=44474) and raise a PR?

pbyrne-mdsol commented 6 years ago

@macgrewal - there are a few other things such as change the download of the intellij community edition download and other plugins etc. but trying to run the environment locks my cpu close to 100% on all cores when I open a feature file which indicates the file analysis is trapped in a loop, I am going to try and work it out later.

Also need to update all the plugin version numbers and make sure the plugin.xml idea-version bit is updated as the until bit will stop it working.

It is a bit of a dance. 2018.1.txt

I uploaded a patch file as a text file to give you an idea.


It might just be trying to use runIdea etc. causing the problem :(

I'll have to build a jar and copy it manually to the plugin dir etc.

pwhite1989 commented 6 years ago

Hi is there any update on this?

barkingcorndog commented 6 years ago

I applied the patch from @pbyrne-mdsol and created a PR.

pbyrne-mdsol commented 6 years ago

intellij-cucumber-scala_2.12-2018.1.0.jar.zip

I created a zip of the jar (github being picky) of the patch file that is in https://github.com/danielwegener/intellij-cucumber-scala/pull/35 . The plugin seems to work but I had to do it blind as sbt "runIdea xxx" is locking up the gui.

If I copy this jar to my plugins folder manually then cucumber works again with none of these problems.

Where to copy depends on system https://intellij-support.jetbrains.com/hc/en-us/articles/206544519-Directories-used-by-the-IDE-to-store-settings-caches-plugins-and-logs

bbutler99a commented 6 years ago

When I "Install plugin from disk.." the first time, it seemed to work. But after the required restart of IDEA, I got the same error trying to run my program. So, I opened the Settings->Plugins and "Cucumber for Scala" was gone. I tried "install from disk" again, and got "Fail to load plugin descriptor from file intellij-cucumber-scala_2.12-2018.1.0.jar". I searched for help on that and it sounds like the plugin.xml is the descriptor. I open it and see it has the changes from the update that is in #35 . I rebooted and repeated the steps and everything went the same way. Help?

pbyrne-mdsol commented 6 years ago

@bbutler99a - what intellij build are you using?

I am using Build #IU-181.4668.68, built on April 24, 2018 Fine and have removed and restarted multiple times.

bbutler99a commented 6 years ago

I am using that same build. My JRE is 1.8.0_152-release-1136-b29

bbutler99a commented 6 years ago

Correction, I am using the community edition, so build starts with #IC instead. Does the jar need to go in a special folder? I am putting the file in C:\Users\.IdeaIC2018.1\plugins. I also just realized I am running on windows server 2016 which is not listed as being supported.

pbyrne-mdsol commented 6 years ago

@bbutler99a - I will play with the ce edition version at home tonight.

The jar should just go in the same folder as the one with a Scala folder etc.

Alternatively you can checkout this project Apply the patch

  1. sbt updateIdea (downloads the stuff)
  2. sbt publishPlugin - puts the jar I uploaded into target I think

you can then copy it skipping all the downloading and unzipping etc in case something garbled it and see if you still have problems.

I am looking at creating a way so development can be done by having a run config instead of running from sbt to launch idea (like the actual scala plugin has). But that relies on creating a module with a customised classpath which is used in the run then this plugin should be easier to maintain.

-- update --- I downloaded community edition and it worked fine. What I will do is upload a fully configured 7 zipped install to a private repo which I will send you can invite to.

As long as it is unzipped in a folder called c:\development it will run fully contained and self configured.

If you wish to change the path edit the options files as detailed here. https://www.jetbrains.com/help/idea/15.0/project-and-ide-settings.html. I have it all ready at home.

bbutler99a commented 6 years ago

Thank you for your work. I was out of town for a few days, and now I see we downgraded to IDEA 17.3.5, but we are having issues with it also. If you have created a repo, I'll try it out. If we go back to 2018.1 I'll try the patch.

pbyrne-mdsol commented 6 years ago

I just added a pr https://github.com/danielwegener/intellij-cucumber-scala/pull/37

Which adds the patch but also has a module that generates the classpath so it can launch from a intellij run/debug process.

Also have added to the ReadMe how to set it all up.

msillence commented 6 years ago

The old plugin used to be able to run the steps without defiing the glue but with @pbyrne-mdsol patch though I can navigate to the step definitions in the IDE I aways have to manually enter the glue path.

pbyrne-mdsol commented 6 years ago

This plugin relies on the jetbrains cucumber java plugin. No code changes were made but changes may of occurred in the ides internals.

This sounds kinda similar https://youtrack.jetbrains.com/issue/IDEA-192267

In my projects with steps and feature files all within scope this is not a problem.

So questions are

  1. What is project layout?
  2. Does navigation stop working when glue config is removed?
pbyrne-mdsol commented 6 years ago

The EAP jar from https://plugins.jetbrains.com/plugin/7460-cucumber-for-scala works fine for me.

Many thanks

danielwegener commented 6 years ago

released as stable

pbyrne-mdsol commented 6 years ago

Thank you :) believe it or not every time I try to navigate to github in chrome it prefers to navigate to this issue.

kditrj2d commented 6 years ago

Running with IntelliJ 2018.2 and the latest JetBrains Scala plug-in (2018.2.10) and the problem may have returned. The 'Cucumber for Scala' plugin will not load. Below is an except from the IntelliJ logs. The line of interest reads "Plugin 'Cucumber for Scala' can't be loaded because: Plugin since-build or until-build don't match this product's build number"

2018-08-21 14:59:40,152 [ 3476] INFO - llij.ide.plugins.PluginManager - newer plugin is incompatible, ignoring: C:\Users\raz59843\.IntelliJIdea2018.2\config\plugins\gherkin 2018-08-21 14:59:57,418 [ 20742] INFO - .intellij.idea.IdeaApplication - CPU cores: 8; ForkJoinPool.commonPool: java.util.concurrent.ForkJoinPool@a4710c4[Running, parallelism = 7, size = 0, active = 0, running = 0, steals = 0, tasks = 0, submissions = 0]; factory: com.intellij.concurrency.IdeaForkJoinWorkerThreadFactory@69c31580 2018-08-21 14:59:57,463 [ 20787] INFO - #com.intellij.util.ui.JBUI - System scale factor: 1.0 (JRE-managed HiDPI) 2018-08-21 14:59:57,686 [ 21010] INFO - llij.ide.plugins.PluginManager - newer plugin is incompatible, ignoring: C:\Users\raz59843\.IntelliJIdea2018.2\config\plugins\gherkin 2018-08-21 14:59:58,367 [ 21691] INFO - llij.ide.plugins.PluginManager - Plugin 'Cucumber for Scala' can't be loaded because: Plugin since-build or until-build don't match this product's build number 2018-08-21 14:59:58,611 [ 21935] INFO - llij.ide.plugins.PluginManager - 136 plugins initialized in 939 ms 2018-08-21 14:59:58,611 [ 21935] INFO - llij.ide.plugins.PluginManager - Loaded bundled plugins: ASP (0.1), Android Support (10.3.1.2), AngularJS (182.3911.36), Ant Support (1.0), Application Servers View (0.2.0), AspectJ Support (1.2), Bytecode Viewer (0.1), CFML Support (3.53), CSS Support (182.3911.36), CVS Integration (11), Cloud Foundry integration (1.0), CloudBees integration (1.0), CoffeeScript (182.3911.36), Copyright (8.1), Coverage (182.3911.36), Cucumber for Groovy (182.3911.36), Cucumber for Java (182.3911.36), DSM Analysis (1.0.0), Database Tools and SQL (182.3911.36), Eclipse Integration (3.0), EditorConfig (182.3911.36), Emma (182.3911.36), Flash/Flex Support (182.3911.36), FreeMarker support (1.0), GWT Support (1.0), Geronimo Integration (1.0), Gherkin (999.999), Git Integration (8.1), GitHub (182.3911.36), GlassFish Integration (1.0), Google App Engine Integration (1.1.4), Gradle (182.3911.36), Grails (9.0), Groovy (9.0), Guice (8.0), HTML Tools (2.0), HTTP Client (182.3911.36), Haml (182.3911.36), Heroku integration (182.3911.36), Hibernate Support (1.0), I18n for Java (182.3911.36), IDE Settings Sync (182.3911.36), IDEA CORE (182.3911.36), IntelliLang (8.0), J2ME (1.0), JBoss Arquillian Support (1.0), JBoss Drools Support (1.0), JBoss Frameworks Base Support (1.0), JBoss Integration (1.0), JBoss Seam Pageflow Support (1.0), JBoss Seam Pages Support (1.0), JBoss Seam Support (1.0), JBoss jBPM (2.0.0), JSR45 Integration (1.0), JUnit (1.0), Java Bytecode Decompiler (182.3911.36), Java EE: Batch Applications (1.0), Java EE: Bean Validation Support (1.1), Java EE: Contexts and Dependency Injection (1.1), Java EE: EJB, JPA, Servlets (1.0), Java EE: JMS, JSON Processing, Concurrency, Transaction (1.0), Java EE: Java Server Faces (2.2.X.), Java EE: RESTful Web Services (JAX-RS) (1.0), Java EE: Web Services (JAX-WS) (1.9), Java EE: WebSockets (1.0), Java Server Pages (JSP) Integration (1.0), Java Stream Debugger (182.3911.36), JavaFX (1.0), JavaScript Debugger (1.0), JavaScript Intention Power Pack (0.9.4), JavaScript Support (1.0), Jetty Integration (1.0), Kotlin (1.2.51-release-IJ2018.2-1), Less support (182.3911.36), Markdown support (182.3911.36), Maven Integration (182.3911.36), Maven Integration Extension (182.3911.36), Mercurial Integration (10.0), OpenShift integration (1.0), Osmorc (1.4.11), Perforce Integration (2.0), Persistence Frameworks Support (1.0), Playframework Support (1.0), Plugin DevKit (1.0), Properties Support (182.3911.36), Reactor framework support (1.0), Refactor-X (2.01), Remote Hosts Access (0.1), Resin Integration (8.1), SSH Remote Run (0.1), Sass support (182.3911.36), Settings Repository (182.3911.36), Smali Support (1.0), Spring AOP/@AspectJ (1.0), Spring Batch (1.0), Spring Boot (1.0), Spring Data (1.0), Spring Integration Patterns (1.0), Spring MVC (1.0), Spring OSGi (1.0), Spring Security (1.0), Spring Support (1.0), Spring Web Flow (1.0), Spring Web Services (1.0), Spring WebSocket (1.0), Spy-js (182.3911.36), Struts 1.x (2.0), Struts 2 (1.0), Stylus support (999.999), Subversion Integration (1.1), TFS Integration (999.999), Tapestry support (1.0), Task Management (1.0), Terminal (0.1), TestNG-J (8.0), Thymeleaf (1.0), Time Tracking (1.0), Tomcat and TomEE Integration (1.0), UI Designer (182.3911.36), UML Support (1.0), Vaadin Support (1.0), Velocity support (1.0), W3C Validators (2.0), WebLogic Integration (1.0), WebSphere Integration (1.0), XPathView + XSLT Support (4), XSLT-Debugger (1.4), YAML (182.3911.36), ZKM-Unscramble (1.0), dmServer Support (0.9.5), tslint (182.3911.36) 2018-08-21 14:59:58,612 [ 21936] INFO - llij.ide.plugins.PluginManager - Loaded custom plugins: Archive browser (0.11), Cucumber.js (181.4096.12), Protobuf Support (0.10.2), Scala (2018.2.10) 2018-08-21 14:59:58,612 [ 21936] INFO - llij.ide.plugins.PluginManager - Disabled plugins: Cucumber for Scala (2018.1.0)