Lexer from Arnauld & Module Dependency scope from me#24
Conversation
…ut folder (build dir)
…e/IntelliJBehave And resolved conflicts in: .gitignore IntelliJBehave.iml META-INF/plugin.xml src/com/github/kumaraman21/intellijbehave/parser/StoryParser.java src/com/github/kumaraman21/intellijbehave/resolver/StepDefinitionIterator.java src/com/github/kumaraman21/intellijbehave/resolver/StepPsiReference.java * Added a pom to download some dependencies * Fiddled with the IML file... Probably not yet what it should be Basics are working, using my 'story' project approach.
…e/IntelliJBehave And resolved conflicts in: .gitignore IntelliJBehave.iml META-INF/plugin.xml src/com/github/kumaraman21/intellijbehave/parser/StoryParser.java src/com/github/kumaraman21/intellijbehave/resolver/StepDefinitionIterator.java src/com/github/kumaraman21/intellijbehave/resolver/StepPsiReference.java * Added a pom to download some dependencies * Fiddled with the IML file... Probably not yet what it should be Basics are working, using my 'story' project approach. (Some missing files from previous commit...)
… file (except for the special JFlex) * Uses copy-dependencies to get the necessary jars and put them in the appropriate location * Uses clean to also cleanup the jars it copies there This way, I don't have to check in the binaries. Which is as it should be.
… accident or get distracted by it.
* Inverted responsibility for the content iteration * Renamed ProjectUtils to ScanUtils to better reflect responsibility * Scan Module and Module Dependencies for steps instead of entire Project
|
Hi Bert, Now, can you go ahead and publish this new version (under a new name) to the Plugin Repository? I believe if you publish under a new name, include the license and proper attribution, we should be "fine". Correct me if I'm wrong. Atif |
|
Hi Atif, Thanks for getting back to me. If you no longer seek to update the plugin, I'd be happy to prepare a Thanks again for getting this plugin started. Cheers, Bert On Thu, Mar 14, 2013 at 7:47 PM, Atif Mansoor notifications@github.comwrote:
|
|
Bert, you have confused me with the original author. I am not kumaraman21, lol |
|
Oops :-) You are right, I confused you with the original author, sorry Nonetheless, I'll consider doing as you advised. Kind regards, Bert On Thu, Mar 14, 2013 at 11:51 PM, Atif Mansoor notifications@github.comwrote:
|
…rly braces are unmatched.
java.lang.NullPointerException at com.github.kumaraman21.intellijbehave.highlighter.StoryLocalizedLexer.tokenType(StoryLocalizedLexer.java:427) at com.github.kumaraman21.intellijbehave.highlighter.StoryLocalizedLexer.locateToken(StoryLocalizedLexer.java:168) at com.github.kumaraman21.intellijbehave.highlighter.StoryLocalizedLexer.advanceIfRequired(StoryLocalizedLexer.java:114) at com.github.kumaraman21.intellijbehave.highlighter.StoryLocalizedLexer.getTokenType(StoryLocalizedLexer.java:80) at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:209) at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:177) at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:151) at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:185) at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:52) at com.intellij.psi.tree.ILazyParseableElementType.doParseContents(ILazyParseableElementType.java:62) at com.intellij.psi.tree.IFileElementType.parseContents(IFileElementType.java:43) at com.intellij.psi.impl.source.tree.LazyParseableElement.e(LazyParseableElement.java:165) at com.intellij.psi.impl.source.tree.LazyParseableElement.getFirstChildNode(LazyParseableElement.java:209) at com.intellij.psi.impl.source.tree.CompositeElement.countChildren(CompositeElement.java:493) at com.intellij.psi.impl.source.tree.CompositeElement.getChildren(CompositeElement.java:438) at com.github.kumaraman21.intellijbehave.parser.StoryFileImpl.getStory(StoryFileImpl.java:72) at com.github.kumaraman21.intellijbehave.parser.StoryFileImpl.getScenarios(StoryFileImpl.java:62) at com.github.kumaraman21.intellijbehave.parser.StoryFileImpl.getSteps(StoryFileImpl.java:52) at com.github.kumaraman21.intellijbehave.codeInspector.UnusedStepsInspection$StepUsageFinder.processFile(UnusedStepsInspection.java:122) at com.intellij.openapi.vfs.VfsUtilCore$1.visitFileEx(VfsUtilCore.java:189) at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:204) at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:236) at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:236) at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:236) at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:236) at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:236) at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:236) at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:236) at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:236) at com.intellij.openapi.vfs.VfsUtilCore.iterateChildrenRecursively(VfsUtilCore.java:184) at com.intellij.openapi.roots.impl.ProjectFileIndexImpl.iterateContent(ProjectFileIndexImpl.java:75) at com.github.kumaraman21.intellijbehave.codeInspector.UnusedStepsInspection$1.visitElement(UnusedStepsInspection.java:96) at com.intellij.psi.JavaElementVisitor.visitAnnotation(JavaElementVisitor.java:344) at com.intellij.psi.impl.source.tree.java.PsiAnnotationImpl.accept(PsiAnnotationImpl.java:102) at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:412) at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:370) at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:341) at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.access$000(LocalInspectionsPass.java:78) at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass$2.process(LocalInspectionsPass.java:309) at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass$2.process(LocalInspectionsPass.java:306) at com.intellij.concurrency.JobLauncherImpl$2$1.run(JobLauncherImpl.java:115) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:226) at com.intellij.concurrency.JobLauncherImpl$2.process(JobLauncherImpl.java:113) at com.intellij.concurrency.JobLauncherImpl$1.run(JobLauncherImpl.java:54) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at com.intellij.concurrency.PrioritizedFutureTask.access$101(PrioritizedFutureTask.java:31) at com.intellij.concurrency.PrioritizedFutureTask$1.run(PrioritizedFutureTask.java:70) at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1182) at com.intellij.concurrency.PrioritizedFutureTask.run(PrioritizedFutureTask.java:97) at com.intellij.concurrency.JobImpl.scheduleAndWaitForResults(JobImpl.java:136) at com.intellij.concurrency.JobLauncherImpl.a(JobLauncherImpl.java:68) at com.intellij.concurrency.JobLauncherImpl.invokeConcurrentlyUnderProgress(JobLauncherImpl.java:110) at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:312) at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:218) at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.collectInformationWithProgress(LocalInspectionsPass.java:136) at com.intellij.codeInsight.daemon.impl.ProgressableTextEditorHighlightingPass.doCollectInformation(ProgressableTextEditorHighlightingPass.java:58) at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:62) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass$1$1.run(PassExecutorService.java:357) at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1182) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass$1.run(PassExecutorService.java:348) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:226) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.a(PassExecutorService.java:345) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:321) at com.intellij.concurrency.JobLauncherImpl$3.call(JobLauncherImpl.java:145) at com.intellij.concurrency.JobLauncherImpl$3.call(JobLauncherImpl.java:142) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at com.intellij.concurrency.PrioritizedFutureTask.access$101(PrioritizedFutureTask.java:31) at com.intellij.concurrency.PrioritizedFutureTask$1.run(PrioritizedFutureTask.java:70) at com.intellij.concurrency.PrioritizedFutureTask.run(PrioritizedFutureTask.java:113) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722)
…ry configuration along with it.
This appear to be due to the cache key not being provided and therefore defaulting to the name of the anonymous lambda
Step reference not being resolved for valid lines
# Conflicts: # src/main/java/com/github/kumaraman21/intellijbehave/service/JBehaveStepsIndex.java
Exclude JUnit Jupiter dependencies from the plugin archive
…to minimize running update logic during PSI changes
…tionAnnotationConverter and StepDefinitionIterator. Increase test coverage.
…identifying step def methods
Hi Aman,
I recently stumbled on your IntelliJBehave plugin and found it very helpful. However, in my project setup I experienced some issues regarding sluggishness and in some cases steps failed to be found.
To overcome these issues I modified your plugin to search for steps in the module containing the story file and the module dependencies.
In addition we used some story syntax that was not handled properly by your current lexer and parser. I found another github user, arnauld, had already done quite some work in creating a new lexer/parser (not sure, but he seems the lead on the Eclipse JBehave plugin) and merged that in.
If you are still interested in persueing this plugin, I propose you consider pulling in the changes I already aggregated and perhaps you could release a new version in the JetBrains repository.
If, however, you are no longer interested in following up on this plugin, I would like to know whether it would be ok for me to publish a new version in the JetBrains repository with proper attribution.
Kind regards,
Bert Van Vlerken (https://github.com/witspirit)