fan-tom / intellij-codeowners Goto Github PK
View Code? Open in Web Editor NEWSupport of CODEOWNERS file in Intellij-based IDEs
License: MIT License
Support of CODEOWNERS file in Intellij-based IDEs
License: MIT License
If a rule line contains an error, parsing stops and the rules after the incorrect one don't have an effect
According to https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners#codeowners-file-location the CODEOWNERS file is allowed in the repo root, docs/ and .github/ but when I have the file in docs/ the plugin doesn't recognize it.
Please add support for docs/ and .github/
When the path has a folder name with "@" the syntax highlight is failing with the message:
CodeownersTokenType.CRLF or CodeownersTokenType.VALUE expected, got '@toto/team'
For example, if you have this line:
packages/@foo/bar/file.ts @toto/team @toto/other-team
Currently, plugin fails on a definition where no owner is given, e.g.
src/specificteamdirectory @org/OtherTeam
src/everyoneShouldBeAbleToEdit
but it seams to be a valid syntax which lets you exclude file from already owned directory.
Here's some existing discussion around that topic:
https://github.community/t/codeowners-file-with-a-not-file-type-condition/1423/9
Thanks for your plugin, it's very cool and helpful!
I ran into an issue with file structure, so I wanted to surface the details
Similar to #113 but with a different direction.
I have a workspace structure like so:
/Users/miketheman/workspace
/llp-local
/applications
/llp-project
/.github/CODEOWNERS
When launching PyCharm in the llp-project
directory, the llp-project/.github/CODEOWNERS
is parsed and highlighted correctly, but an Exception is raised as well, for a file outside the local context.
Should the plugin be trying to traverse directories outside its context?
Stack trace:
Detector com.github.fantom.codeowners.CodeownersFileTypeDetector@1339e7aa (class com.github.fantom.codeowners.CodeownersFileTypeDetector) exception occurred:
java.io.FileNotFoundException: /Users/miketheman/workspace/llp-local/CODEOWNERS (No such file or directory)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:216)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
at com.intellij.openapi.vfs.impl.local.LocalFileSystemBase.getInputStream(LocalFileSystemBase.java:465)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.getInputStream(PersistentFSImpl.java:661)
at com.intellij.openapi.vfs.newvfs.impl.VirtualFileImpl.getInputStream(VirtualFileImpl.java:110)
at com.github.fantom.codeowners.CodeownersFileTypeDetector.detect(CodeownersFileTypeDetector.kt:35)
at com.intellij.openapi.fileTypes.impl.FileTypeDetectionService.lambda$detectFromContent$5(FileTypeDetectionService.java:557)
at com.intellij.openapi.fileEditor.impl.LoadTextUtil.processTextFromBinaryPresentationOrNull(LoadTextUtil.java:640)
at com.intellij.openapi.fileTypes.impl.FileTypeDetectionService.detectFromContent(FileTypeDetectionService.java:546)
at com.intellij.openapi.fileTypes.impl.FileTypeDetectionService.detectFromContentAndCache(FileTypeDetectionService.java:516)
at com.intellij.openapi.fileTypes.impl.FileTypeDetectionService.getOrDetectFromContent(FileTypeDetectionService.java:250)
at com.intellij.openapi.fileTypes.impl.FileTypeManagerImpl.internalContinueToDetectFileTypeByFile(FileTypeManagerImpl.java:759)
at com.intellij.openapi.fileTypes.impl.FileTypeManagerImpl.getFileTypeByFile(FileTypeManagerImpl.java:750)
at com.intellij.openapi.fileTypes.impl.FileTypeManagerImpl.getFileTypeByFile(FileTypeManagerImpl.java:687)
at com.intellij.openapi.vfs.VirtualFile.getFileType(VirtualFile.java:356)
at com.intellij.openapi.vfs.newvfs.impl.VirtualFileSystemEntry.getFileType(VirtualFileSystemEntry.java:594)
at com.github.fantom.codeowners.CodeownersManager$bulkFileListener$1.handleEvent(CodeownersManager.kt:149)
at com.github.fantom.codeowners.CodeownersManager$bulkFileListener$1.before(CodeownersManager.kt:143)
at com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:649)
at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:625)
at com.intellij.util.messages.impl.MessageBusImplKt.executeOrAddToQueue(MessageBusImpl.kt:470)
at com.intellij.util.messages.impl.ToDirectChildrenMessagePublisher.publish$intellij_platform_core(CompositeMessageBus.kt:292)
at com.intellij.util.messages.impl.MessagePublisher.invoke(MessageBusImpl.kt:425)
at jdk.proxy1/jdk.proxy1.$Proxy174.before(Unknown Source)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.fireBeforeEvents(PersistentFSImpl.java:1211)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.applyMultipleEvents(PersistentFSImpl.java:1178)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.processEventsImpl(PersistentFSImpl.java:1160)
at com.intellij.openapi.vfs.newvfs.AsyncEventSupport.processEventsFromRefresh(AsyncEventSupport.java:150)
at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.fireEventsInWriteAction(RefreshSessionImpl.java:224)
at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.lambda$fireEvents$1(RefreshSessionImpl.java:205)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$runEdtProgressWriteAction$9(ApplicationImpl.java:987)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:188)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:608)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:683)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:639)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:607)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:175)
at com.intellij.openapi.progress.util.PotemkinProgress.runInSwingThread(PotemkinProgress.java:150)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$runEdtProgressWriteAction$10(ApplicationImpl.java:987)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteActionWithClass(ApplicationImpl.java:1011)
at com.intellij.openapi.application.impl.ApplicationImpl.runEdtProgressWriteAction(ApplicationImpl.java:985)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteActionWithNonCancellableProgressInDispatchThread(ApplicationImpl.java:966)
at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.lambda$fireEvents$2(RefreshSessionImpl.java:200)
at com.intellij.openapi.application.WriteAction.lambda$run$1(WriteAction.java:86)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteActionWithClass(ApplicationImpl.java:1011)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1037)
at com.intellij.openapi.application.WriteAction.run(WriteAction.java:85)
at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.fireEvents(RefreshSessionImpl.java:199)
at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl.lambda$queueSession$2(RefreshQueueImpl.java:103)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$safeTransferToEdt$6(NonBlockingReadActionImpl.java:596)
at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:209)
at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:21)
at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:191)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:881)
at com.intellij.openapi.application.impl.ApplicationImpl$3.run(ApplicationImpl.java:513)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:75)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:118)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:42)
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:898)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:746)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:439)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:438)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
at com.intellij.ide.IdeEventQueue.performActivity(IdeEventQueue.java:604)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:436)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:881)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:484)
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)
Find results are first grouped by file, and only then by owner, while it was/should be vice versa
Line CODEOWNERS.destination_branch_pattern develop
broke the file parser and plugin unable to find any owners
Minimal example
CODEOWNERS.destination_branch_pattern develop
* @SQReder
If you comment out the directive, the plugin works, but it is not applicable as a fix obviously
PS: You can found this directive in official bitbucket CODEONERS example
https://mibexsoftware.atlassian.net/wiki/spaces/CODEOWNERS/pages/222822413/Usage
Not sure why. I had just opened IntelliJ and was change changing a line in the CODEOWNERS file but don't think I did anything "illegal".
com.intellij.diagnostic.PluginException: com.github.fantom.codeowners.reference.CodeownersGithubOwnerReference$MyFakePsiElement cannot be presented [Plugin: fantom.codeowners]
at com.intellij.ide.plugins.PluginManagerCore.createPluginException(PluginManagerCore.java:270)
at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:12)
at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:83)
at com.intellij.codeInsight.navigation.UtilKt.presentationError(util.kt:83)
at com.intellij.codeInsight.navigation.UtilKt.targetPresentation(util.kt:67)
at com.intellij.lang.documentation.psi.PsiElementDocumentationTarget.getPresentation(PsiElementDocumentationTarget.kt:50)
at com.intellij.lang.documentation.impl.ImplKt.documentationRequest(impl.kt:18)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt:39)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt)
at com.intellij.openapi.progress.CancellationKt$sam$com_intellij_openapi_util_ThrowableComputable$0.compute(cancellation.kt)
at com.intellij.openapi.progress.Cancellation.withJob(Cancellation.java:65)
at com.intellij.openapi.progress.CancellationKt.withJob(cancellation.kt:12)
at com.intellij.openapi.application.rw.ReadAction$tryReadAction$3.run(ReadAction.kt:74)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1084)
at com.intellij.openapi.application.rw.ReadAction.tryReadAction(ReadAction.kt:71)
at com.intellij.openapi.application.rw.ReadAction.access$tryReadAction(ReadAction.kt:14)
at com.intellij.openapi.application.rw.ReadAction$tryReadAction$2$2.run(ReadAction.kt:62)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:158)
at com.intellij.openapi.application.rw.ReadAction$tryReadAction$2.invokeSuspend(ReadAction.kt:60)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:274)
at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
at com.intellij.openapi.progress.CoroutinesKt.runBlockingCancellable(coroutines.kt:63)
at com.intellij.openapi.progress.CoroutinesKt.runBlockingCancellable(coroutines.kt:50)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt.calcTargetDocumentationInfo(DocumentationTargetHoverInfo.kt:33)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager$Context.documentationHoverInfo(EditorMouseHoverPopupManager.java:523)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager$Context.calcInfo(EditorMouseHoverPopupManager.java:513)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager.lambda$scheduleProcessing$7(EditorMouseHoverPopupManager.java:197)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:624)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:698)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:646)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:623)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager.lambda$scheduleProcessing$8(EditorMouseHoverPopupManager.java:193)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:240)
at com.intellij.util.Alarm$Request.runSafely(Alarm.java:385)
at com.intellij.util.Alarm$Request.run(Alarm.java:374)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:220)
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.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:214)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
at java.base/java.lang.Thread.run(Thread.java:829)
Really great plugin. Helps a bunch. I thought it would be cool if the CODEOWNERS data was leveraged as a search scope. For example, you could find all instances of a piece of code owned by a particular code owner or team. Just a thought. Not sure how feasible it is as I am not knowledgeable in the inner-workings of IntelliJ.
java.lang.NullPointerException
at com.github.fantom.codeowners.file.type.kind.BitbucketFileType.isInSubdir(BitbucketFileType.kt:14)
at com.github.fantom.codeowners.file.type.kind.BitbucketFileType.getRoot(BitbucketFileType.kt:42)
at com.github.fantom.codeowners.reference.CodeownersEntryReferenceSetNew.computeDefaultContexts(CodeownersEntryReferenceSetNew.kt:69)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReferenceSet.getDefaultContexts(FileReferenceSet.java:305)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:97)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:353)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:47)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:177)
at com.intellij.codeInsight.TargetElementUtilBase.doGetReferenceOrReferencedElement(TargetElementUtilBase.java:165)
at com.intellij.codeInsight.TargetElementUtilBase.getReferenceOrReferencedElement(TargetElementUtilBase.java:204)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:248)
at com.intellij.codeInsight.TargetElementUtilBase.doFindTargetElement(TargetElementUtilBase.java:227)
at com.intellij.codeInsight.TargetElementUtilBase.findTargetElement(TargetElementUtilBase.java:292)
at com.intellij.codeInsight.TargetElementUtil.findTargetElement(TargetElementUtil.java:147)
at com.intellij.model.psi.impl.TargetsKt.fromTargetEvaluator(targets.kt:173)
at com.intellij.model.psi.impl.TargetsKt.declarationsOrReferences(targets.kt:134)
at com.intellij.model.psi.impl.TargetsKt.declaredReferencedData(targets.kt:41)
at com.intellij.model.psi.impl.TargetsKt.targetSymbols(targets.kt:23)
at com.intellij.lang.documentation.symbol.impl.ImplKt.symbolDocumentationTargets(impl.kt:13)
at com.intellij.lang.documentation.ide.impl.IdeDocumentationTargetProviderImpl.documentationTargets(IdeDocumentationTargetProviderImpl.kt:40)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1$targets$1.invoke(DocumentationTargetHoverInfo.kt:38)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1$targets$1.invoke(DocumentationTargetHoverInfo.kt)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt.injectedThenHost(DocumentationTargetHoverInfo.kt:68)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt.access$injectedThenHost(DocumentationTargetHoverInfo.kt:1)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt:36)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt)
at com.intellij.openapi.progress.CancellationKt$sam$com_intellij_openapi_util_ThrowableComputable$0.compute(cancellation.kt)
at com.intellij.openapi.progress.Cancellation.withJob(Cancellation.java:65)
at com.intellij.openapi.progress.CancellationKt.withJob(cancellation.kt:12)
at com.intellij.openapi.application.rw.ReadAction$tryReadAction$3.run(ReadAction.kt:74)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1084)
at com.intellij.openapi.application.rw.ReadAction.tryReadAction(ReadAction.kt:71)
at com.intellij.openapi.application.rw.ReadAction.access$tryReadAction(ReadAction.kt:14)
at com.intellij.openapi.application.rw.ReadAction$tryReadAction$2$2.run(ReadAction.kt:62)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:158)
at com.intellij.openapi.application.rw.ReadAction$tryReadAction$2.invokeSuspend(ReadAction.kt:60)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:274)
at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
at com.intellij.openapi.progress.CoroutinesKt.runBlockingCancellable(coroutines.kt:63)
at com.intellij.openapi.progress.CoroutinesKt.runBlockingCancellable(coroutines.kt:50)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt.calcTargetDocumentationInfo(DocumentationTargetHoverInfo.kt:34)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager$Context.documentationHoverInfo(EditorMouseHoverPopupManager.java:525)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager$Context.calcInfo(EditorMouseHoverPopupManager.java:515)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager.lambda$scheduleProcessing$7(EditorMouseHoverPopupManager.java:198)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:624)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:698)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:646)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:623)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager.lambda$scheduleProcessing$8(EditorMouseHoverPopupManager.java:194)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:240)
at com.intellij.util.Alarm$Request.runSafely(Alarm.java:385)
at com.intellij.util.Alarm$Request.run(Alarm.java:374)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:220)
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.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:214)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
at java.base/java.lang.Thread.run(Thread.java:829)
Stacktrace
Unhandled exception in [StandaloneCoroutine{Cancelling}@527de29e, Dispatchers.Default]
java.lang.NullPointerException
at com.github.fantom.codeowners.grouping.changes.CodeownersChangesGroupingPolicy.getParentNodeFor(CodeownersChangesGroupingPolicy.kt:129)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.lambda$insertChangeNode$3(TreeModelBuilder.java:429)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:923)
at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:76)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.insertChangeNode(TreeModelBuilder.java:428)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.insertChangeNode(TreeModelBuilder.java:413)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.insertChanges(TreeModelBuilder.java:164)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.setChanges(TreeModelBuilder.java:151)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.setChanges(TreeModelBuilder.java:144)
at com.intellij.vcs.log.ui.frame.VcsLogChangesBrowser$MyVcsLogAsyncChangesTreeModel.buildTreeModelSync(VcsLogChangesBrowser.kt:231)
at com.intellij.vcs.log.ui.frame.VcsLogChangesBrowser$MyVcsLogAsyncChangesTreeModel.buildTreeModelSync(VcsLogChangesBrowser.kt:217)
at com.intellij.openapi.vcs.changes.ui.SimpleAsyncChangesTreeModel$buildTreeModel$2.invoke(AsyncChangesTree.kt:246)
at com.intellij.openapi.vcs.changes.ui.SimpleAsyncChangesTreeModel$buildTreeModel$2.invoke(AsyncChangesTree.kt:245)
at com.intellij.openapi.progress.CoroutinesKt.jobToIndicator$lambda$1(coroutines.kt:386)
at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:71)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:186)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:61)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:173)
at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:71)
at com.intellij.openapi.progress.CoroutinesKt.jobToIndicator(coroutines.kt:374)
at com.intellij.openapi.progress.CoroutinesKt.contextToIndicator(coroutines.kt:347)
at com.intellij.openapi.progress.CoroutinesKt.coroutineToIndicator(coroutines.kt:290)
at com.intellij.openapi.vcs.changes.ui.SimpleAsyncChangesTreeModel.buildTreeModel(AsyncChangesTree.kt:245)
at com.intellij.openapi.vcs.changes.ui.AsyncChangesTree.handleRequest(AsyncChangesTree.kt:165)
at com.intellij.openapi.vcs.changes.ui.AsyncChangesTree.access$handleRequest(AsyncChangesTree.kt:26)
at com.intellij.openapi.vcs.changes.ui.AsyncChangesTree$start$1$1.invokeSuspend(AsyncChangesTree.kt:132)
at com.intellij.openapi.vcs.changes.ui.AsyncChangesTree$start$1$1.invoke(AsyncChangesTree.kt)
at com.intellij.openapi.vcs.changes.ui.AsyncChangesTree$start$1$1.invoke(AsyncChangesTree.kt)
at com.intellij.openapi.vcs.changes.ui.AsyncChangesTreeKt$asyncCollectLatest$2$2.invokeSuspend(AsyncChangesTree.kt:314)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelled}@527de29e, Dispatchers.Default]
v0.6.0
IntelliJ IDEA 2023.2.5 (Ultimate Edition)
Build #IU-232.10227.8, built on November 9, 2023
Runtime version: 17.0.9+7-b1000.46 aarch64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 14.1.1
Kotlin: 232-1.9.20-release-507-IJ10072.27
For given file
/foo/bar/ @@owner1
/foo/bar/baz/ @@owner2
/foo/*/daz/ @@owner3
/gaz/ @@owner4
I want to be able to go from the first line to the second and third as they override ownership assigned by the first line, and maybe vice versa
If a filepath doesn't contain trailing slash, in BitBucket it should only match files with such a name, not subtrees.
In other words, with such CODEOWNERS file
/foo/bar/baz @user
file /foo/bar/baz/file.txt
should have no owners (BB playground confirms that):
while idea plugin shows that this file is owned by @user
Maybe implement it on top of scopes functionality, that is already requested in #71?
java.lang.NullPointerException: Cannot invoke "com.intellij.openapi.vfs.VirtualFile.getName()" because the return value of "com.intellij.openapi.vfs.VirtualFile.getParent()" is null
at com.github.fantom.codeowners.file.type.kind.BitbucketFileType.isInSubdir(BitbucketFileType.kt:14)
at com.github.fantom.codeowners.file.type.kind.BitbucketFileType.getRoot(BitbucketFileType.kt:42)
at com.github.fantom.codeowners.reference.CodeownersEntryReferenceSetNew.computeDefaultContexts(CodeownersEntryReferenceSetNew.kt:69)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReferenceSet.getDefaultContexts(FileReferenceSet.java:303)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:94)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:128)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:128)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:592)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:587)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:119)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:103)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:128)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:128)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:592)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:587)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:119)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:103)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:128)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:128)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:592)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:587)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:119)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:103)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:128)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:128)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:592)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:587)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:119)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:103)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:128)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:128)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:592)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:587)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:119)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:103)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:128)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:128)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:592)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:587)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:119)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:103)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:128)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:128)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:592)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:587)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:119)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:351)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:44)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:177)
at com.intellij.codeInsight.TargetElementUtilBase.doGetReferenceOrReferencedElement(TargetElementUtilBase.java:165)
at com.intellij.codeInsight.TargetElementUtilBase.getReferenceOrReferencedElement(TargetElementUtilBase.java:210)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:254)
at com.intellij.codeInsight.TargetElementUtilBase.doFindTargetElement(TargetElementUtilBase.java:233)
at com.intellij.codeInsight.TargetElementUtilBase.findTargetElement(TargetElementUtilBase.java:298)
at com.intellij.codeInsight.TargetElementUtil.findTargetElement(TargetElementUtil.java:147)
at com.intellij.model.psi.impl.TargetsKt.fromTargetEvaluator(targets.kt:173)
at com.intellij.model.psi.impl.TargetsKt.declarationsOrReferences(targets.kt:134)
at com.intellij.model.psi.impl.TargetsKt.declaredReferencedData(targets.kt:41)
at com.intellij.model.psi.impl.TargetsKt.targetSymbols(targets.kt:23)
at com.intellij.lang.documentation.symbol.impl.ImplKt.symbolDocumentationTargets(impl.kt:13)
at com.intellij.lang.documentation.ide.impl.IdeDocumentationTargetProviderImpl.documentationTargets(IdeDocumentationTargetProviderImpl.kt:37)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1$targets$1.invoke(DocumentationTargetHoverInfo.kt:39)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1$targets$1.invoke(DocumentationTargetHoverInfo.kt)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt.injectedThenHost(DocumentationTargetHoverInfo.kt:76)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt:37)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt)
at com.intellij.openapi.application.rw.InternalReadAction.insideReadAction(InternalReadAction.kt:96)
at com.intellij.openapi.application.rw.InternalReadAction.access$insideReadAction(InternalReadAction.kt:13)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$1.invoke(InternalReadAction.kt:81)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$1.invoke(InternalReadAction.kt:13)
at com.intellij.openapi.progress.CancellationKt$sam$com_intellij_openapi_util_ThrowableComputable$0.compute(cancellation.kt)
at com.intellij.openapi.progress.Cancellation.withJob(Cancellation.java:60)
at com.intellij.openapi.progress.CancellationKt.withJob(cancellation.kt:14)
at com.intellij.openapi.progress.CancellationKt.executeWithJobAndCompleteIt(cancellation.kt:111)
at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$2$1.run(cancellableReadAction.kt:33)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1154)
at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$2.run(cancellableReadAction.kt:31)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:158)
at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal(cancellableReadAction.kt:29)
at com.intellij.openapi.application.rw.InternalReadAction.tryReadCancellable(InternalReadAction.kt:80)
at com.intellij.openapi.application.rw.InternalReadAction.access$tryReadCancellable(InternalReadAction.kt:13)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadAction$2.invoke(InternalReadAction.kt:66)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadAction$2.invoke(InternalReadAction.kt:13)
at com.intellij.openapi.progress.CancellationKt$sam$com_intellij_openapi_util_ThrowableComputable$0.compute(cancellation.kt)
at com.intellij.openapi.progress.Cancellation.withJob(Cancellation.java:60)
at com.intellij.openapi.progress.CancellationKt.withJob(cancellation.kt:14)
at com.intellij.openapi.progress.CoroutinesKt.blockingContext(coroutines.kt:138)
at com.intellij.openapi.application.rw.InternalReadAction.tryReadAction(InternalReadAction.kt:61)
at com.intellij.openapi.application.rw.InternalReadAction.readLoop(InternalReadAction.kt:53)
at com.intellij.openapi.application.rw.InternalReadAction.access$readLoop(InternalReadAction.kt:13)
at com.intellij.openapi.application.rw.InternalReadAction$runReadAction$4.invokeSuspend(InternalReadAction.kt:33)
at com.intellij.openapi.application.rw.InternalReadAction$runReadAction$4.invoke(InternalReadAction.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:89)
at kotlinx.coroutines.CoroutineScopeKt.coroutineScope(CoroutineScope.kt:264)
at com.intellij.openapi.application.rw.InternalReadAction.runReadAction(InternalReadAction.kt:32)
at com.intellij.openapi.application.rw.PlatformReadActionSupport.executeReadAction(PlatformReadActionSupport.kt:24)
at com.intellij.openapi.application.CoroutinesKt.constrainedReadAction(coroutines.kt:47)
at com.intellij.openapi.application.CoroutinesKt.readAction(coroutines.kt:17)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1.invokeSuspend(DocumentationTargetHoverInfo.kt:36)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1.invoke(DocumentationTargetHoverInfo.kt)
at com.intellij.openapi.progress.CoroutinesKt$runBlockingCancellable$2$1.invokeSuspend(coroutines.kt:110)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:274)
at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
at com.intellij.openapi.progress.CoroutinesKt$runBlockingCancellable$2.invoke(coroutines.kt:108)
at com.intellij.openapi.progress.CoroutinesKt$runBlockingCancellable$2.invoke(coroutines.kt)
at com.intellij.openapi.progress.CancellationKt$ensureCurrentJob$1$1.invoke(cancellation.kt:69)
at com.intellij.openapi.progress.CancellationKt$sam$com_intellij_openapi_util_ThrowableComputable$0.compute(cancellation.kt)
at com.intellij.openapi.progress.Cancellation.withJob(Cancellation.java:60)
at com.intellij.openapi.progress.CancellationKt.withJob(cancellation.kt:14)
at com.intellij.openapi.progress.CancellationKt.executeWithJobAndCompleteIt(cancellation.kt:111)
at com.intellij.openapi.progress.CancellationKt$ensureCurrentJob$1.get(cancellation.kt:68)
at com.intellij.openapi.progress.impl.CoreProgressManager.silenceGlobalIndicator(CoreProgressManager.java:950)
at com.intellij.openapi.progress.CancellationKt.ensureCurrentJob(cancellation.kt:67)
at com.intellij.openapi.progress.CoroutinesKt.runBlockingCancellable(coroutines.kt:103)
at com.intellij.openapi.progress.CoroutinesKt.runBlockingCancellable(coroutines.kt:71)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt.calcTargetDocumentationInfo(DocumentationTargetHoverInfo.kt:35)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager$Context.documentationHoverInfo(EditorMouseHoverPopupManager.java:538)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager$Context.calcInfo(EditorMouseHoverPopupManager.java:528)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager.lambda$scheduleProcessing$7(EditorMouseHoverPopupManager.java:200)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:608)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:683)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:639)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:607)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager.lambda$scheduleProcessing$8(EditorMouseHoverPopupManager.java:196)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:241)
at com.intellij.util.Alarm$Request.runSafely(Alarm.java:388)
at com.intellij.util.Alarm$Request.run(Alarm.java:377)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:223)
at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:241)
at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:31)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:214)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:212)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:203)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:833)
com.intellij.diagnostic.PluginException: com.github.fantom.codeowners.reference.CodeownersGithubOwnerReference$MyFakePsiElement cannot be presented [Plugin: fantom.codeowners]
at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:23)
at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:89)
at com.intellij.codeInsight.navigation.UtilKt.presentationError(util.kt:110)
at com.intellij.codeInsight.navigation.UtilKt.targetPresentation(util.kt:93)
at com.intellij.lang.documentation.psi.PsiElementDocumentationTarget.computePresentation(PsiElementDocumentationTarget.kt:67)
at com.intellij.platform.backend.documentation.impl.ImplKt.documentationRequest(impl.kt:17)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt:41)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt:36)
at com.intellij.openapi.application.rw.InternalReadAction.insideReadAction(InternalReadAction.kt:108)
at com.intellij.openapi.application.rw.InternalReadAction.access$insideReadAction(InternalReadAction.kt:15)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$1.invoke(InternalReadAction.kt:92)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$1.invoke(InternalReadAction.kt:91)
at com.intellij.openapi.progress.CancellationKt.withCurrentJob$lambda$0(cancellation.kt:17)
at com.intellij.openapi.progress.Cancellation.withCurrentJob(Cancellation.java:60)
at com.intellij.openapi.progress.CancellationKt.withCurrentJob(cancellation.kt:17)
at com.intellij.openapi.progress.CancellationKt.executeWithJobAndCompleteIt(cancellation.kt:126)
at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal$lambda$1$lambda$0(cancellableReadAction.kt:49)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1102)
at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal$lambda$1(cancellableReadAction.kt:47)
at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:63)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:129)
at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal(cancellableReadAction.kt:45)
at com.intellij.openapi.application.rw.InternalReadAction.tryReadCancellable(InternalReadAction.kt:91)
at com.intellij.openapi.application.rw.InternalReadAction.access$tryReadCancellable(InternalReadAction.kt:15)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadAction$2.invoke(InternalReadAction.kt:77)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadAction$2.invoke(InternalReadAction.kt:72)
at com.intellij.openapi.progress.CancellationKt.withCurrentJob$lambda$0(cancellation.kt:17)
at com.intellij.openapi.progress.Cancellation.withCurrentJob(Cancellation.java:60)
at com.intellij.openapi.progress.CancellationKt.withCurrentJob(cancellation.kt:17)
at com.intellij.openapi.progress.CoroutinesKt.blockingContext(coroutines.kt:193)
at com.intellij.openapi.application.rw.InternalReadAction.tryReadAction(InternalReadAction.kt:72)
at com.intellij.openapi.application.rw.InternalReadAction.readLoop(InternalReadAction.kt:64)
at com.intellij.openapi.application.rw.InternalReadAction.access$readLoop(InternalReadAction.kt:15)
at com.intellij.openapi.application.rw.InternalReadAction$runReadAction$4.invokeSuspend(InternalReadAction.kt:43)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
This crashes frequently on my dev system running on CentOS 7: CentOS Linux release 7.9.2009 (Core)
, with the v0.5.0 plugin installed inside IntelliJ 2023.1.1 Community Edition:
IntelliJ IDEA 2023.1.1 (Community Edition)
Build #IC-231.8770.65, built on April 27, 2023
Runtime version: 17.0.7+7 amd64
VM: OpenJDK 64-Bit Server VM by Eclipse Adoptium
Linux 3.10.0-1160.90.1.el7.x86_64
GC: G1 Young Generation, G1 Old Generation
Memory: 2048M
Cores: 7
Non-Bundled Plugins:
fantom.codeowners (0.5.0)
idea.plugin.protoeditor (231.8109.91)
Kotlin: 231-1.8.21-IJ8770.65
Current Desktop: GNOME-Classic:GNOME
Hey, it looks that the CODEOWNERS file parsing is breaking when there's a line with a file or folder with spaces. This is supported by Github and you can escape them with a backslash before the whitespace to reference the file or folder.
When the plugin detects this exception then it stops parsing the CODEOWNERS file:
I have an issue where this plugin uses gem source CODEOWNERS instead of project root CODEOWNERS.
I have gem "redis-store"
and all my files are being attributed to tubbo
via https://github.com/redis-store/redis-store/blob/master/CODEOWNERS
commenting out that source file in local cache, this plugin then uses gem "omniauth-auth0"
's CODEOWNERS, etc. perhaps especially when those gems use .github/CODEOWNERS
instead of root CODEOWNERS
Complications may include
.github
directory
.github/CODEOWNERS
had some successjava.util.regex.PatternSyntaxException: Dangling meta character '*' near index 2
^**/(src/(main/(resources/(META-INF/(MANIFEST.MF/)?)?)?)?)?
^
at java.base/java.util.regex.Pattern.error(Pattern.java:2028)
at java.base/java.util.regex.Pattern.sequence(Pattern.java:2203)
at java.base/java.util.regex.Pattern.expr(Pattern.java:2069)
at java.base/java.util.regex.Pattern.compile(Pattern.java:1783)
at java.base/java.util.regex.Pattern.<init>(Pattern.java:1430)
at java.base/java.util.regex.Pattern.compile(Pattern.java:1069)
at kotlin.text.Regex.<init>(Regex.kt:89)
at com.github.fantom.codeowners.util.Glob.createPrefixRegex(Glob.kt:314)
at com.github.fantom.codeowners.services.PatternCache.getOrCreatePrefixRegex$lambda-0(PatternCache.kt:36)
at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708)
at com.github.fantom.codeowners.services.PatternCache.getOrCreatePrefixRegex(PatternCache.kt:35)
at com.github.fantom.codeowners.reference.CodeownersPatternsMatchedFilesCache$1.cleanupCache(CodeownersPatternsMatchedFilesCache.kt:80)
at com.github.fantom.codeowners.reference.CodeownersPatternsMatchedFilesCache$1.after(CodeownersPatternsMatchedFilesCache.kt:49)
at com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:649)
at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:625)
at com.intellij.util.messages.impl.MessageBusImplKt.executeOrAddToQueue(MessageBusImpl.kt:470)
at com.intellij.util.messages.impl.ToDirectChildrenMessagePublisher.publish$intellij_platform_core(CompositeMessageBus.kt:259)
at com.intellij.util.messages.impl.MessagePublisher.invoke(MessageBusImpl.kt:425)
at jdk.proxy2/jdk.proxy2.$Proxy196.after(Unknown Source)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.fireAfterEvents(PersistentFSImpl.java:1218)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.applyMultipleEvents(PersistentFSImpl.java:1197)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.processEventsImpl(PersistentFSImpl.java:1160)
at com.intellij.openapi.vfs.newvfs.AsyncEventSupport.processEventsFromRefresh(AsyncEventSupport.java:150)
at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.fireEventsInWriteAction(RefreshSessionImpl.java:224)
at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.lambda$fireEvents$1(RefreshSessionImpl.java:205)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$runEdtProgressWriteAction$9(ApplicationImpl.java:987)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:188)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:608)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:683)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:639)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:607)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:175)
at com.intellij.openapi.progress.util.PotemkinProgress.runInSwingThread(PotemkinProgress.java:150)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$runEdtProgressWriteAction$10(ApplicationImpl.java:987)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteActionWithClass(ApplicationImpl.java:1011)
at com.intellij.openapi.application.impl.ApplicationImpl.runEdtProgressWriteAction(ApplicationImpl.java:985)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteActionWithNonCancellableProgressInDispatchThread(ApplicationImpl.java:966)
at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.lambda$fireEvents$2(RefreshSessionImpl.java:200)
at com.intellij.openapi.application.WriteAction.lambda$run$1(WriteAction.java:86)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteActionWithClass(ApplicationImpl.java:1011)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1037)
at com.intellij.openapi.application.WriteAction.run(WriteAction.java:85)
at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.fireEvents(RefreshSessionImpl.java:199)
at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl.lambda$queueSession$2(RefreshQueueImpl.java:103)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$safeTransferToEdt$6(NonBlockingReadActionImpl.java:596)
at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:209)
at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:21)
at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:191)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:881)
at com.intellij.openapi.application.impl.ApplicationImpl$3.run(ApplicationImpl.java:513)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:75)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:118)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:42)
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:918)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:766)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:450)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:449)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
at com.intellij.ide.IdeEventQueue.performActivity(IdeEventQueue.java:624)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:447)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:881)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:493)
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)
java.lang.Throwable: Assertion failed
at com.intellij.openapi.diagnostic.Logger.assertTrue(Logger.java:254)
at com.intellij.openapi.diagnostic.Logger.assertTrue(Logger.java:263)
at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.doFindChildById(VirtualDirectoryImpl.java:534)
at com.intellij.openapi.vfs.newvfs.persistent.FSRecords$1ParentFinder.findChild(FSRecords.java:591)
at com.intellij.openapi.vfs.newvfs.persistent.FSRecords$1ParentFinder.findDescendantByIdPath(FSRecords.java:584)
at com.intellij.openapi.vfs.newvfs.persistent.FSRecords.findFileById(FSRecords.java:608)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.findFileById(PersistentFSImpl.java:1430)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.findFileById(PersistentFSImpl.java:58)
at com.intellij.util.indexing.FileBasedIndexScanUtil.processFilesContainingAnyKey(FileBasedIndexScanUtil.java:248)
at com.intellij.util.indexing.FileBasedIndexImpl.processFilesContainingAnyKey(FileBasedIndexImpl.java:1178)
at com.intellij.psi.search.FilenameIndex.getVirtualFilesByNames(FilenameIndex.java:225)
at com.intellij.psi.search.FilenameIndex.getVirtualFilesByNamesIgnoringCase(FilenameIndex.java:172)
at com.intellij.psi.search.FilenameIndex.processFilesByNames(FilenameIndex.java:156)
at com.github.fantom.codeowners.reference.CodeownersPatternReferenceSetRecursiveReverse$CodeownersPatternReference$Resolver.resolveAtAnyLevel(CodeownersPatternReferenceSetRecursiveReverse.kt:345)
at com.github.fantom.codeowners.reference.CodeownersPatternReferenceSetRecursiveReverse$CodeownersPatternReference$Resolver.innerResolveInContextRecursive(CodeownersPatternReferenceSetRecursiveReverse.kt:383)
at com.github.fantom.codeowners.reference.CodeownersPatternReferenceSetRecursiveReverse$CodeownersPatternReference.innerResolveInContext(CodeownersPatternReferenceSetRecursiveReverse.kt:502)
at com.github.fantom.codeowners.reference.CodeownersPatternReferenceSetRecursiveReverse$CodeownersPatternReference.innerResolve(CodeownersPatternReferenceSetRecursiveReverse.kt:435)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:597)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:592)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:176)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:237)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:215)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:176)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:119)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:351)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:44)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:177)
at com.intellij.codeInsight.TargetElementUtilBase.doGetReferenceOrReferencedElement(TargetElementUtilBase.java:165)
at com.intellij.codeInsight.TargetElementUtilBase.getReferenceOrReferencedElement(TargetElementUtilBase.java:210)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:254)
at com.intellij.codeInsight.TargetElementUtilBase.doFindTargetElement(TargetElementUtilBase.java:233)
at com.intellij.codeInsight.TargetElementUtilBase.findTargetElement(TargetElementUtilBase.java:298)
at com.intellij.codeInsight.TargetElementUtil.findTargetElement(TargetElementUtil.java:147)
at com.intellij.openapi.fileEditor.impl.text.TextEditorPsiDataProvider.getPsiElementIn(TextEditorPsiDataProvider.java:235)
at com.intellij.openapi.fileEditor.impl.text.TextEditorPsiDataProvider.getSlowData(TextEditorPsiDataProvider.java:145)
at com.intellij.openapi.fileEditor.impl.text.TextEditorPsiDataProvider.lambda$getData$0(TextEditorPsiDataProvider.java:72)
at com.intellij.ide.impl.DataManagerImpl.getDataFromProviderInner(DataManagerImpl.java:241)
at com.intellij.ide.impl.DataManagerImpl.getSlowData(DataManagerImpl.java:225)
at com.intellij.ide.impl.DataManagerImpl.lambda$getDataRuleInner$6(DataManagerImpl.java:177)
at com.intellij.ide.impl.DataManagerImpl.lambda$getDataRuleInner$8(DataManagerImpl.java:182)
at com.intellij.ide.impl.DataManagerImpl.getDataFromRuleInner(DataManagerImpl.java:112)
at com.intellij.ide.impl.DataManagerImpl.getDataFromRulesInner(DataManagerImpl.java:99)
at com.intellij.ide.impl.DataManagerImpl.getDataFromProviderAndRulesInner(DataManagerImpl.java:85)
at com.intellij.ide.impl.DataManagerImpl.lambda$getDataFromRuleInner$3(DataManagerImpl.java:113)
at com.intellij.openapi.actionSystem.DataKey.getData(DataKey.java:68)
at com.intellij.ide.impl.dataRules.NavigatableRule.getData(NavigatableRule.java:39)
at com.intellij.ide.impl.DataManagerImpl.getRulesData(DataManagerImpl.java:210)
at com.intellij.ide.impl.DataManagerImpl.lambda$getDataRuleInner$8(DataManagerImpl.java:183)
at com.intellij.ide.impl.DataManagerImpl.getDataFromRuleInner(DataManagerImpl.java:112)
at com.intellij.ide.impl.DataManagerImpl.getDataFromRulesInner(DataManagerImpl.java:99)
at com.intellij.ide.impl.DataManagerImpl.getDataFromProviderAndRulesInner(DataManagerImpl.java:85)
at com.intellij.ide.impl.DataManagerImpl.lambda$getDataFromRuleInner$3(DataManagerImpl.java:113)
at com.intellij.openapi.actionSystem.DataKey.getData(DataKey.java:68)
at com.intellij.ide.impl.dataRules.NavigatableArrayRule.getData(NavigatableArrayRule.java:23)
at com.intellij.ide.impl.DataManagerImpl.getRulesData(DataManagerImpl.java:210)
at com.intellij.ide.impl.DataManagerImpl.lambda$getDataRuleInner$8(DataManagerImpl.java:183)
at com.intellij.ide.impl.DataManagerImpl.getDataFromRuleInner(DataManagerImpl.java:112)
at com.intellij.ide.impl.DataManagerImpl.getDataFromRulesInner(DataManagerImpl.java:99)
at com.intellij.ide.impl.DataManagerImpl.getDataFromRules(DataManagerImpl.java:67)
at com.intellij.openapi.actionSystem.impl.PreCachedDataContext.getDataInner(PreCachedDataContext.java:224)
at com.intellij.openapi.actionSystem.impl.PreCachedDataContext.getData(PreCachedDataContext.java:166)
at com.intellij.openapi.actionSystem.DataContext.getData(DataContext.java:45)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$ensureSlowDataKeysPreCached$20(ActionUpdater.java:471)
at com.intellij.diagnostic.telemetry.TraceKt.runWithSpan(trace.kt:74)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.ensureSlowDataKeysPreCached(ActionUpdater.java:466)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$callAction$6(ActionUpdater.java:201)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1089)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.callAction(ActionUpdater.java:201)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.callAction(ActionUpdater.java:161)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.updateActionReal(ActionUpdater.java:137)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$new$0(ActionUpdater.java:124)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.update(ActionUpdater.java:705)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:556)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$23(ActionUpdater.java:529)
at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1546)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:529)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:606)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$23(ActionUpdater.java:529)
at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1546)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:529)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandActionGroup(ActionUpdater.java:309)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$14(ActionUpdater.java:377)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$15(ActionUpdater.java:396)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1089)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$tryRunReadActionAndCancelBeforeWrite$19(ActionUpdater.java:428)
at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:63)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:128)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.tryRunReadActionAndCancelBeforeWrite(ActionUpdater.java:424)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$16(ActionUpdater.java:396)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:186)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:173)
at com.intellij.openapi.progress.util.BackgroundTaskUtil.runUnderDisposeAwareIndicator(BackgroundTaskUtil.java:361)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$17(ActionUpdater.java:395)
at io.opentelemetry.context.Context.lambda$wrap$1(Context.java:212)
at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:248)
at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:28)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.executeFirstTaskAndHelpQueue(BoundedTaskExecutor.java:221)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:212)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:210)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:833)
It's been a little while, and I'd love to have that github syntax comment support in the wild...
Thanks!
com.intellij.diagnostic.PluginException: com.github.fantom.codeowners.reference.CodeownersGithubOwnerReference$MyFakePsiElement cannot be presented [Plugin: fantom.codeowners]
at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:23)
at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:83)
at com.intellij.codeInsight.navigation.UtilKt.presentationError(util.kt:110)
at com.intellij.codeInsight.navigation.UtilKt.targetPresentation(util.kt:93)
at com.intellij.lang.documentation.psi.PsiElementDocumentationTarget.getPresentation(PsiElementDocumentationTarget.kt:65)
at com.intellij.lang.documentation.impl.ImplKt.documentationRequest(impl.kt:18)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt:41)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$request$1.invoke(DocumentationTargetHoverInfo.kt)
at com.intellij.openapi.application.rw.InternalReadAction.insideReadAction(InternalReadAction.kt:96)
at com.intellij.openapi.application.rw.InternalReadAction.access$insideReadAction(InternalReadAction.kt:13)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$1.invoke(InternalReadAction.kt:81)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$1.invoke(InternalReadAction.kt:13)
at com.intellij.openapi.progress.CancellationKt$sam$com_intellij_openapi_util_ThrowableComputable$0.compute(cancellation.kt)
at com.intellij.openapi.progress.Cancellation.withJob(Cancellation.java:60)
at com.intellij.openapi.progress.CancellationKt.withJob(cancellation.kt:14)
at com.intellij.openapi.progress.CancellationKt.executeWithJobAndCompleteIt(cancellation.kt:111)
at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$2$1.run(cancellableReadAction.kt:33)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1154)
at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$2.run(cancellableReadAction.kt:31)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:158)
at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal(cancellableReadAction.kt:29)
at com.intellij.openapi.application.rw.InternalReadAction.tryReadCancellable(InternalReadAction.kt:80)
at com.intellij.openapi.application.rw.InternalReadAction.access$tryReadCancellable(InternalReadAction.kt:13)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadAction$2.invoke(InternalReadAction.kt:66)
at com.intellij.openapi.application.rw.InternalReadAction$tryReadAction$2.invoke(InternalReadAction.kt:13)
at com.intellij.openapi.progress.CancellationKt$sam$com_intellij_openapi_util_ThrowableComputable$0.compute(cancellation.kt)
at com.intellij.openapi.progress.Cancellation.withJob(Cancellation.java:60)
at com.intellij.openapi.progress.CancellationKt.withJob(cancellation.kt:14)
at com.intellij.openapi.progress.CoroutinesKt.blockingContext(coroutines.kt:138)
at com.intellij.openapi.application.rw.InternalReadAction.tryReadAction(InternalReadAction.kt:61)
at com.intellij.openapi.application.rw.InternalReadAction.readLoop(InternalReadAction.kt:53)
at com.intellij.openapi.application.rw.InternalReadAction.access$readLoop(InternalReadAction.kt:13)
at com.intellij.openapi.application.rw.InternalReadAction$runReadAction$4.invokeSuspend(InternalReadAction.kt:33)
at com.intellij.openapi.application.rw.InternalReadAction$runReadAction$4.invoke(InternalReadAction.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:89)
at kotlinx.coroutines.CoroutineScopeKt.coroutineScope(CoroutineScope.kt:264)
at com.intellij.openapi.application.rw.InternalReadAction.runReadAction(InternalReadAction.kt:32)
at com.intellij.openapi.application.rw.PlatformReadActionSupport.executeReadAction(PlatformReadActionSupport.kt:24)
at com.intellij.openapi.application.CoroutinesKt.constrainedReadAction(coroutines.kt:47)
at com.intellij.openapi.application.CoroutinesKt.readAction(coroutines.kt:17)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1.invokeSuspend(DocumentationTargetHoverInfo.kt:36)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1.invoke(DocumentationTargetHoverInfo.kt)
at com.intellij.openapi.progress.CoroutinesKt$runBlockingCancellable$2$1.invokeSuspend(coroutines.kt:110)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:274)
at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
at com.intellij.openapi.progress.CoroutinesKt$runBlockingCancellable$2.invoke(coroutines.kt:108)
at com.intellij.openapi.progress.CoroutinesKt$runBlockingCancellable$2.invoke(coroutines.kt)
at com.intellij.openapi.progress.CancellationKt$ensureCurrentJob$1$1.invoke(cancellation.kt:69)
at com.intellij.openapi.progress.CancellationKt$sam$com_intellij_openapi_util_ThrowableComputable$0.compute(cancellation.kt)
at com.intellij.openapi.progress.Cancellation.withJob(Cancellation.java:60)
at com.intellij.openapi.progress.CancellationKt.withJob(cancellation.kt:14)
at com.intellij.openapi.progress.CancellationKt.executeWithJobAndCompleteIt(cancellation.kt:111)
at com.intellij.openapi.progress.CancellationKt$ensureCurrentJob$1.get(cancellation.kt:68)
at com.intellij.openapi.progress.impl.CoreProgressManager.silenceGlobalIndicator(CoreProgressManager.java:950)
at com.intellij.openapi.progress.CancellationKt.ensureCurrentJob(cancellation.kt:67)
at com.intellij.openapi.progress.CoroutinesKt.runBlockingCancellable(coroutines.kt:103)
at com.intellij.openapi.progress.CoroutinesKt.runBlockingCancellable(coroutines.kt:71)
at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt.calcTargetDocumentationInfo(DocumentationTargetHoverInfo.kt:35)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager$Context.documentationHoverInfo(EditorMouseHoverPopupManager.java:538)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager$Context.calcInfo(EditorMouseHoverPopupManager.java:528)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager.lambda$scheduleProcessing$7(EditorMouseHoverPopupManager.java:200)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:608)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:683)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:639)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:607)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.editor.EditorMouseHoverPopupManager.lambda$scheduleProcessing$8(EditorMouseHoverPopupManager.java:196)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:241)
at com.intellij.util.Alarm$Request.runSafely(Alarm.java:388)
at com.intellij.util.Alarm$Request.run(Alarm.java:377)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:223)
at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:241)
at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:31)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:214)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:212)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:203)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:833)
Implement file structure view of a file: team declarations for bitbucket
For use in enterprise environments it'd be great to change the base url from https://github.com
to something like https://ghe.company.net
java.lang.NullPointerException: element.containingFile.virtualFile must not be null
at com.github.fantom.codeowners.reference.CodeownersEntryReferenceSet$CodeownersEntryReference.innerResolveInContext(CodeownersEntryReferenceSet.kt:121)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolveInContext(FileReference.java:178)
at com.github.fantom.codeowners.reference.CodeownersEntryReferenceSet$CodeownersEntryReference.innerResolveInContext(CodeownersEntryReferenceSet.kt:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:138)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:18)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReferenceCompletionImpl.getFileReferenceCompletionVariants(FileReferenceCompletionImpl.java:70)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getVariants(FileReference.java:293)
at com.intellij.codeInsight.completion.CompletionData.completeReference(CompletionData.java:247)
at com.intellij.codeInsight.completion.CompletionVariant.addReferenceCompletions(CompletionVariant.java:124)
at com.intellij.codeInsight.completion.CompletionData.completeReference(CompletionData.java:67)
at com.intellij.codeInsight.completion.LegacyCompletionContributor.lambda$completeReference$0(LegacyCompletionContributor.java:75)
at com.intellij.codeInsight.completion.LegacyCompletionContributor.processReference(LegacyCompletionContributor.java:129)
at com.intellij.codeInsight.completion.LegacyCompletionContributor.processReferences(LegacyCompletionContributor.java:112)
at com.intellij.codeInsight.completion.LegacyCompletionContributor.completeReference(LegacyCompletionContributor.java:73)
at com.intellij.codeInsight.completion.LegacyCompletionContributor.fillCompletionVariants(LegacyCompletionContributor.java:54)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:77)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:154)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:146)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:142)
at com.intellij.codeInsight.template.impl.LiveTemplateCompletionContributor$1.addCompletions(LiveTemplateCompletionContributor.java:89)
at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:25)
at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:158)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:77)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:60)
at com.intellij.codeInsight.completion.CompletionService.performCompletion(CompletionService.java:133)
at com.intellij.codeInsight.completion.BaseCompletionService.performCompletion(BaseCompletionService.java:41)
at com.intellij.codeInsight.completion.CompletionProgressIndicator.lambda$calculateItems$12(CompletionProgressIndicator.java:865)
at com.intellij.util.indexing.FileBasedIndex.lambda$ignoreDumbMode$0(FileBasedIndex.java:172)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.util.indexing.FileBasedIndexEx.ignoreDumbMode(FileBasedIndexEx.java:581)
at com.intellij.util.indexing.FileBasedIndex.ignoreDumbMode(FileBasedIndex.java:171)
at com.intellij.util.indexing.DumbModeAccessType.ignoreDumbMode(DumbModeAccessType.java:43)
at com.intellij.codeInsight.completion.CompletionProgressIndicator.calculateItems(CompletionProgressIndicator.java:861)
at com.intellij.codeInsight.completion.CompletionProgressIndicator.runContributors(CompletionProgressIndicator.java:849)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$startContributorThread$6(CodeCompletionHandlerBase.java:352)
at com.intellij.codeInsight.completion.AsyncCompletion.lambda$tryReadOrCancel$5(CompletionThreading.java:172)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1084)
at com.intellij.codeInsight.completion.AsyncCompletion.tryReadOrCancel(CompletionThreading.java:170)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$startContributorThread$7(CodeCompletionHandlerBase.java:344)
at com.intellij.codeInsight.completion.AsyncCompletion.lambda$startThread$0(CompletionThreading.java:95)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:188)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:624)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:698)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:646)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:623)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:175)
at com.intellij.codeInsight.completion.AsyncCompletion.lambda$startThread$1(CompletionThreading.java:91)
at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:263)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
at java.base/java.lang.Thread.run(Thread.java:829)
Bitbucket syntax
It seems this wasn't always the case, but per the Github example, inline comments are now supported:
*.js @js-owner #This is an inline comment.
However, when the plugin encounters one, it currently stops parsing the rest of the file.
Exception is thrown when closing a project:
Worker exited due to exception
java.lang.AssertionError: Container 'ProjectImpl@368661886 services' was disposed
at com.intellij.openapi.diagnostic.DefaultLogger.error(DefaultLogger.java:83)
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:436)
at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.setException(SchedulingWrapper.java:288)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:269)
at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:272)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: com.intellij.platform.instanceContainer.internal.ContainerDisposedException: Container 'ProjectImpl@368661886 services' was disposed
at com.intellij.platform.instanceContainer.internal.InstanceContainerImpl.state(InstanceContainerImpl.kt:59)
at com.intellij.platform.instanceContainer.internal.InstanceContainerImpl.state(InstanceContainerImpl.kt:38)
at com.intellij.platform.instanceContainer.internal.InstanceContainerImpl.getInstanceHolder(InstanceContainerImpl.kt:264)
at com.intellij.serviceContainer.ComponentManagerImpl.doGetService(ComponentManagerImpl.kt:1024)
at com.intellij.serviceContainer.ComponentManagerImpl.getService(ComponentManagerImpl.kt:988)
at com.intellij.openapi.vcs.FileStatusManager.getInstance(FileStatusManager.java:22)
at com.github.fantom.codeowners.CodeownersManager$debouncedStatusesChanged$1.task(CodeownersManager.kt:101)
at com.github.fantom.codeowners.util.Debounced.run$lambda$0(Debounced.kt:26)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
... 8 more
Caused by: com.intellij.platform.instanceContainer.internal.DisposalTrace
at com.intellij.platform.instanceContainer.internal.InstanceContainerImpl.dispose(InstanceContainerImpl.kt:253)
at com.intellij.serviceContainer.ComponentManagerImpl.dispose(ComponentManagerImpl.kt:1696)
at com.intellij.openapi.project.impl.ProjectImpl.dispose(ProjectImpl.kt:316)
at com.intellij.openapi.util.ObjectTree.runWithTrace(ObjectTree.java:130)
at com.intellij.openapi.util.ObjectTree.executeAll(ObjectTree.java:162)
at com.intellij.openapi.util.Disposer.dispose(Disposer.java:250)
at com.intellij.openapi.util.Disposer.dispose(Disposer.java:238)
at com.intellij.openapi.project.impl.ProjectManagerImpl.closeProject$lambda$15(ProjectManagerImpl.kt:406)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:975)
at com.intellij.openapi.project.impl.ProjectManagerImpl.closeProject(ProjectManagerImpl.kt:388)
at com.intellij.openapi.project.impl.ProjectManagerImpl.closeProject$default(ProjectManagerImpl.kt:318)
at com.intellij.openapi.project.impl.ProjectManagerImpl.closeAndDispose(ProjectManagerImpl.kt:418)
at com.intellij.openapi.wm.impl.CloseProjectWindowHelper.closeProjectAndShowWelcomeFrameIfNoProjectOpened(CloseProjectWindowHelper.kt:57)
at com.intellij.openapi.wm.impl.CloseProjectWindowHelper.windowClosing(CloseProjectWindowHelper.kt:44)
at com.intellij.openapi.wm.impl.ProjectFrameHelper.windowClosing(ProjectFrameHelper.kt:434)
at com.intellij.openapi.wm.impl.WindowCloseListener.windowClosing(ProjectFrameHelper.kt:454)
at java.desktop/java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:357)
at java.desktop/java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:357)
at java.desktop/java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:357)
at java.desktop/java.awt.Window.processWindowEvent(Window.java:2114)
at java.desktop/javax.swing.JFrame.processWindowEvent(JFrame.java:298)
at java.desktop/java.awt.Window.processEvent(Window.java:2073)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5027)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2809)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4855)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:794)
at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739)
at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:733)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:766)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:764)
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:763)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:695)
at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$12(IdeEventQueue.kt:589)
at com.intellij.openapi.application.impl.RwLockHolder.runWithoutImplicitRead(RwLockHolder.kt:44)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:589)
at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:72)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:355)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:354)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:793)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:354)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:349)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1014)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:114)
at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1014)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:349)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:848)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:391)
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)
Would be nice to have a Git commit check inside the Commit Checks section of Commit Changes that gives a warning when one of the added or modified files is not covered by CODEOWNERS. Thanks!
Implement navigating to team declaration from ownership assignment line in bitbucket files
When renaming java package from context menu (open project tree -> open context menu -> refactor -> rename -> refactor)
Reproducible if this directory is part (glob segment) of one of the codeowners rules, probably because since this segment is a reference of this directory, it must handle renaming somehow
Detector com.github.fantom.codeowners.CodeownersFileTypeDetector@33d8f5ba (class com.github.fantom.codeowners.CodeownersFileTypeDetector) exception occurred:
java.io.FileNotFoundException: /Users/uer/path/to/repo/node_modules/lottie-react-native/CODEOWNERS (No such file or directory)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
at com.intellij.openapi.vfs.impl.local.LocalFileSystemBase.getInputStream(LocalFileSystemBase.java:401)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.getInputStream(PersistentFSImpl.java:661)
at com.intellij.openapi.vfs.newvfs.impl.VirtualFileImpl.getInputStream(VirtualFileImpl.java:110)
at com.github.fantom.codeowners.CodeownersFileTypeDetector.detect(CodeownersFileTypeDetector.kt:35)
at com.intellij.openapi.fileTypes.impl.FileTypeDetectionService.lambda$detect$6(FileTypeDetectionService.java:646)
at com.intellij.openapi.fileEditor.impl.LoadTextUtil.processTextFromBinaryPresentationOrNull(LoadTextUtil.java:640)
at com.intellij.openapi.fileTypes.impl.FileTypeDetectionService.detect(FileTypeDetectionService.java:635)
at com.intellij.openapi.fileTypes.impl.FileTypeDetectionService.detectFromContent(FileTypeDetectionService.java:558)
at com.intellij.openapi.fileTypes.impl.FileTypeDetectionService.getOrDetectFromContent(FileTypeDetectionService.java:223)
at com.intellij.openapi.fileTypes.impl.FileTypeManagerImpl.isFileOfType(FileTypeManagerImpl.java:707)
at com.intellij.util.xml.impl.DomManagerImpl$4.visitFile(DomManagerImpl.java:167)
at com.intellij.openapi.vfs.VirtualFileVisitor.visitFileEx(VirtualFileVisitor.java:114)
at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:294)
at com.intellij.openapi.vfs.VfsUtilCore.visitChildrenRecursively(VfsUtilCore.java:318)
at com.intellij.util.xml.impl.DomManagerImpl.calcDomChangeEvents(DomManagerImpl.java:164)
at com.intellij.util.xml.impl.DomManagerImpl$2.prepareChange(DomManagerImpl.java:120)
at com.intellij.openapi.vfs.newvfs.AsyncEventSupport.lambda$runAsyncListeners$1(AsyncEventSupport.java:90)
at com.intellij.openapi.application.ReadAction.lambda$run$1(ReadAction.java:59)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:933)
at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:68)
at com.intellij.openapi.application.ReadAction.run(ReadAction.java:58)
at com.intellij.openapi.vfs.newvfs.AsyncEventSupport.runAsyncListeners(AsyncEventSupport.java:90)
at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl.runAsyncListeners(RefreshQueueImpl.java:152)
at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl.lambda$scheduleAsynchronousPreprocessing$4(RefreshQueueImpl.java:112)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.insideReadAction(NonBlockingReadActionImpl.java:536)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$attemptComputation$3(NonBlockingReadActionImpl.java:501)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1152)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:75)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:158)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:115)
at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:58)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:189)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:608)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:683)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:639)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:607)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:176)
at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:58)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:112)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:75)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.attemptComputation(NonBlockingReadActionImpl.java:501)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$transferToBgThread$1(NonBlockingReadActionImpl.java:408)
at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:241)
at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:31)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:214)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:212)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:203)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
at java.base/java.lang.Thread.run(Thread.java:829)
Show that the modified file changed its ownership if there is a corresponding change in the CODEOWNERS file, in the Pull Request view file tree, when grouping by owners is enabled.
Think about how to represent other CODEOWNERS file changes effects, like what exact files, not modified by the PR, are going to change their ownership and how.
Currently plugin uses first few characters to detect file type (Github or Bitbucket). But if it doesn't find Bitbucket-specific char sequencief, it asssumes it is Github file. And it becomes wrong assumption if there is long documentation comment header in file, so that first codeowners rule (which is of interest for file type detector) is not in that few first characters.
Actual behaviour: Bitbucket file is detected as being Github one which gives syntactic error
Expected Behaviour: Bitbucket file detected correctly no matter how far first rule is from beginning of a file
My PHP project has a CODEOWNERS in the project root dir, as well as a handful of others from dependencies in vendor/<whatever>/CODEOWNERS
. When I'm viewing a file from my project (outside of the vendor/
directory) the plugin seems to have picked one particular one of the CODEOWNER files within the repository to use. In fact, it seems to use this for all files, both from within that vendor dir, as well as anywhere else in the project.
As it happens, that file has a single *
rule, so all files show up with a single owner, rather than showing the true ownership within my project/team.
It doesn't seem possible (on 0.4.0) to explicitly set the CODEOWNERS file that it will use, which might be a nice addition; but failing that, I would think that any given file should use the nearest-ancestor CODEOWNERS file, and should not ever use one that's in a different branch of the tree (save the exceptions allowed for CODEOWNERS in docs/
or .github/
folders)
Plugin version: 0.6.0
IntelliJ Version: 2023.3
023-12-01 15:36:33,817 [2123663] INFO - #c.i.u.i.d.AppIndexingDependenciesService - Invalidating all indexing flags. Reason: Rebuild requested for index CodeownersFilesIndex
2023-12-01 15:36:33,821 [2123667] INFO - #c.i.u.i.FileBasedIndexImpl - Rebuild requested for index CodeownersFilesIndex
com.intellij.util.indexing.StorageException: java.lang.NoClassDefFoundError: org/apache/commons/lang/builder/HashCodeBuilder
at com.intellij.util.indexing.impl.MapReduceIndex.updateWithMap(MapReduceIndex.java:372)
at com.intellij.util.indexing.storage.MapReduceIndexBase.updateWithMap(MapReduceIndexBase.java:102)
at com.intellij.util.indexing.impl.MapReduceIndex$IndexUpdateComputable.compute(MapReduceIndex.java:401)
at com.intellij.util.indexing.impl.MapReduceIndex$IndexUpdateComputable.compute(MapReduceIndex.java:383)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.indexing.composite.CompositeInvertedIndexBase.lambda$mapInputAndPrepareUpdate$3(CompositeInvertedIndexBase.java:77)
at com.intellij.util.indexing.IndexInfrastructureExtensionUpdateComputation.compute(IndexInfrastructureExtensionUpdateComputation.java:27)
at com.intellij.util.indexing.IndexInfrastructureExtensionUpdateComputation.compute(IndexInfrastructureExtensionUpdateComputation.java:11)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.util.indexing.FileBasedIndexImpl.lambda$runUpdateForPersistentData$24(FileBasedIndexImpl.java:1638)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:634)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$computeInNonCancelableSection$3(CoreProgressManager.java:236)
at com.intellij.openapi.progress.Cancellation.computeInNonCancelableSection(Cancellation.java:53)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeInNonCancelableSection(CoreProgressManager.java:236)
at com.intellij.util.indexing.FileBasedIndexImpl.lambda$runUpdateForPersistentData$25(FileBasedIndexImpl.java:1638)
at com.intellij.util.indexing.StorageBufferingHandler.runUpdate(StorageBufferingHandler.java:22)
at com.intellij.util.indexing.FileBasedIndexImpl.runUpdateForPersistentData(FileBasedIndexImpl.java:1637)
at com.intellij.util.indexing.SingleIndexValueApplier.doApply(SingleIndexValueApplier.java:62)
at com.intellij.util.indexing.SingleIndexValueApplier.apply(SingleIndexValueApplier.java:50)
at com.intellij.util.indexing.FileIndexesValuesApplier.applyModifications(FileIndexesValuesApplier.java:199)
at com.intellij.util.indexing.FileIndexesValuesApplier.lambda$apply$0(FileIndexesValuesApplier.java:171)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeNonCancelableSection$2(CoreProgressManager.java:228)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:685)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:641)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$computeInNonCancelableSection$3(CoreProgressManager.java:236)
at com.intellij.openapi.progress.Cancellation.computeInNonCancelableSection(Cancellation.java:57)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeInNonCancelableSection(CoreProgressManager.java:236)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeNonCancelableSection(CoreProgressManager.java:227)
at com.intellij.util.indexing.contentQueue.IndexUpdateRunner.lambda$scheduleIndexWriting$7(IndexUpdateRunner.java:781)
at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:244)
at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:30)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.executeFirstTaskAndHelpQueue(BoundedTaskExecutor.java:222)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:218)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:210)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/lang/builder/HashCodeBuilder
at com.github.fantom.codeowners.indexing.CodeownersEntryOccurrence.hashCode(CodeownersEntryOccurrence.kt:85)
at java.base/java.util.HashMap.hash(HashMap.java:338)
at java.base/java.util.HashMap.put(HashMap.java:610)
at com.intellij.util.indexing.InputMapExternalizer.save(InputMapExternalizer.java:59)
at com.intellij.util.indexing.InputMapExternalizer.save(InputMapExternalizer.java:24)
at com.intellij.util.indexing.impl.forward.AbstractForwardIndexAccessor.serializeToByteSeq(AbstractForwardIndexAccessor.java:74)
at com.intellij.util.indexing.impl.forward.AbstractForwardIndexAccessor.serializeValueToByteSeq(AbstractForwardIndexAccessor.java:63)
at com.intellij.util.indexing.impl.forward.AbstractForwardIndexAccessor.serializeIndexedData(AbstractForwardIndexAccessor.java:44)
at com.intellij.util.indexing.impl.forward.AbstractForwardIndexAccessor.serializeIndexedData(AbstractForwardIndexAccessor.java:39)
at com.intellij.util.indexing.impl.MapReduceIndex.updateForwardIndex(MapReduceIndex.java:288)
at com.intellij.util.indexing.impl.storage.TransientFileContentIndex.updateForwardIndex(TransientFileContentIndex.java:78)
at com.intellij.util.indexing.impl.MapReduceIndex.lambda$prepareUpdate$4(MapReduceIndex.java:273)
at com.intellij.util.indexing.impl.UpdateData.updateForwardIndex(UpdateData.java:63)
at com.intellij.util.indexing.impl.MapReduceIndex.updateWithMap(MapReduceIndex.java:365)
... 40 more
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.builder.HashCodeBuilder PluginClassLoader(plugin=PluginDescriptor(name=CODEOWNERS, id=fantom.codeowners, descriptorPath=plugin.xml, path=~/.local/share/JetBrains/IntelliJIdea2023.3/CODEOWNERS, version=0.6.0, package=null, isBundled=false), packagePrefix=null, state=active)
... 54 more
Implement highlighting usage of team name that has not been declared in bitbucket file
I'm using PyCharm Pro and just upgraded to v2022.3. This plugin is now reported as incompatible; the build number has increased from 222 to 223.
com.intellij.diagnostic.PluginException: Non-idempotent computation: it returns different results when invoked multiple times or on different threads:
13 != 0
which is length of [PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: main, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: test, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: main, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: test, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: main, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: main, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: test, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: main, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: test, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: main, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: test, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: main, PsiElementResolveResult with class com.intellij.psi.impl.file.PsiJavaDirectoryImpl: test] and []
Recomputation gives [Lcom.intellij.psi.ResolveResult;@5fe44ba6 (class [Lcom.intellij.psi.ResolveResult;) which is equivalent to 'fresh'
Recomputation log:
Resolving com.github.fantom.codeowners.reference.CodeownersEntryReferenceSetNew$CodeownersEntryReference@3ec7ac23 of class com.github.fantom.codeowners.reference.CodeownersEntryReferenceSetNew$CodeownersEntryReference [Plugin: fantom.codeowners]
at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:23)
at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:83)
at com.intellij.util.IdempotenceChecker.reportFailure(IdempotenceChecker.java:90)
at com.intellij.util.IdempotenceChecker.checkEquivalence(IdempotenceChecker.java:77)
at com.intellij.psi.impl.source.resolve.ResolveCache.cache(ResolveCache.java:322)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:249)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.getContexts(FileReference.java:106)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.lambda$innerResolve$0(FileReference.java:131)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.innerResolve(FileReference.java:131)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:594)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:589)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:184)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:238)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:184)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:122)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:353)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:47)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:177)
at com.intellij.codeInsight.TargetElementUtilBase.doGetReferenceOrReferencedElement(TargetElementUtilBase.java:165)
at com.intellij.codeInsight.TargetElementUtilBase.getReferenceOrReferencedElement(TargetElementUtilBase.java:210)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:254)
at com.intellij.codeInsight.TargetElementUtilBase.doFindTargetElement(TargetElementUtilBase.java:233)
at com.intellij.codeInsight.TargetElementUtilBase.findTargetElement(TargetElementUtilBase.java:298)
at com.intellij.codeInsight.TargetElementUtil.findTargetElement(TargetElementUtil.java:147)
at com.intellij.model.psi.impl.TargetsKt.fromTargetEvaluator(targets.kt:173)
at com.intellij.model.psi.impl.TargetsKt.declarationsOrReferences(targets.kt:134)
at com.intellij.model.psi.impl.TargetsKt.declaredReferencedData(targets.kt:41)
at com.intellij.model.psi.impl.TargetsKt.targetSymbols(targets.kt:23)
at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.getTargetSymbols(IdentifierHighlighterPass.java:194)
at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.highlightReferencesAndDeclarations(IdentifierHighlighterPass.java:186)
at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.doCollectInformation(IdentifierHighlighterPass.java:91)
at com.intellij.codeInsight.highlighting.BackgroundHighlighter.lambda$updateHighlighted$1(BackgroundHighlighter.java:150)
at com.intellij.codeInsight.highlighting.BackgroundHighlightingUtil.lambda$lookForInjectedFileInOtherThread$0(BackgroundHighlightingUtil.java:54)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.insideReadAction(NonBlockingReadActionImpl.java:536)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$attemptComputation$3(NonBlockingReadActionImpl.java:501)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1152)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:75)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:158)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:115)
at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:58)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:189)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:608)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:683)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:639)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:607)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:176)
at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:58)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:112)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:75)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.attemptComputation(NonBlockingReadActionImpl.java:501)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$transferToBgThread$1(NonBlockingReadActionImpl.java:408)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
at java.base/java.lang.Thread.run(Thread.java:829)
java.lang.NullPointerException: getParent(...) must not be null
at com.github.fantom.codeowners.file.type.CodeownersFileType.getRoot(CodeownersFileType.kt:34)
at com.github.fantom.codeowners.file.type.kind.GithubFileType.getRoot(GithubFileType.kt:23)
at com.github.fantom.codeowners.reference.CodeownersPatternReferenceSetRecursiveReverse.computeDefaultContexts(CodeownersPatternReferenceSetRecursiveReverse.kt:72)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReferenceSet.getDefaultContexts(FileReferenceSet.java:300)
at com.github.fantom.codeowners.reference.CodeownersPatternReferenceSetRecursiveReverse$CodeownersPatternReference.innerResolve$lambda$0(CodeownersPatternReferenceSetRecursiveReverse.kt:419)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:27)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:66)
at com.github.fantom.codeowners.reference.CodeownersPatternReferenceSetRecursiveReverse$CodeownersPatternReference.innerResolve(CodeownersPatternReferenceSetRecursiveReverse.kt:413)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:590)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference$MyResolver.resolve(FileReference.java:585)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:174)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:234)
at com.intellij.openapi.util.Computable.get(Computable.java:16)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:213)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:174)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.multiResolve(FileReference.java:117)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:346)
at com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference.resolve(FileReference.java:44)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:173)
at com.intellij.codeInsight.TargetElementUtilBase.doGetReferenceOrReferencedElement(TargetElementUtilBase.java:161)
at com.intellij.codeInsight.TargetElementUtilBase.getReferenceOrReferencedElement(TargetElementUtilBase.java:203)
at com.intellij.codeInsight.TargetElementUtilBase.getReferencedElement(TargetElementUtilBase.java:245)
at com.intellij.codeInsight.TargetElementUtilBase.doFindTargetElement(TargetElementUtilBase.java:225)
at com.intellij.codeInsight.TargetElementUtilBase.findTargetElement(TargetElementUtilBase.java:287)
at com.intellij.codeInsight.TargetElementUtil.findTargetElement(TargetElementUtil.java:147)
at com.intellij.model.psi.impl.TargetsKt.fromTargetEvaluator(targets.kt:175)
at com.intellij.model.psi.impl.TargetsKt.declarationsOrReferences(targets.kt:136)
at com.intellij.model.psi.impl.TargetsKt.declaredReferencedData(targets.kt:42)
at com.intellij.model.psi.impl.TargetsKt.targetSymbols(targets.kt:24)
at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.getTargetSymbols(IdentifierHighlighterPass.java:216)
at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.highlightReferencesAndDeclarations(IdentifierHighlighterPass.java:208)
at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.doCollectInformation(IdentifierHighlighterPass.java:97)
at com.intellij.codeInsight.highlighting.BackgroundHighlighter.lambda$submitIdentifierHighlighterPass$8(BackgroundHighlighter.java:293)
at com.intellij.codeInsight.daemon.impl.HighlightingSessionImpl.runInsideHighlightingSession(HighlightingSessionImpl.java:163)
at com.intellij.codeInsight.highlighting.BackgroundHighlighter.lambda$submitIdentifierHighlighterPass$9(BackgroundHighlighter.java:290)
at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:73)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:128)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:111)
at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:73)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:192)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:610)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:685)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:641)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:609)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:78)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:179)
at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:73)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:108)
at com.intellij.codeInsight.highlighting.BackgroundHighlighter.lambda$submitIdentifierHighlighterPass$10(BackgroundHighlighter.java:287)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$OTelMonitor.callWrapped(NonBlockingReadActionImpl.java:840)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$OTelMonitor$MonitoredComputation.call(NonBlockingReadActionImpl.java:872)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.insideReadAction(NonBlockingReadActionImpl.java:604)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$attemptComputation$4(NonBlockingReadActionImpl.java:567)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1075)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:73)
at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:73)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:128)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:111)
at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:73)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:192)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:610)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:685)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:641)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:609)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:78)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:179)
at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:73)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:108)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:73)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.attemptComputation(NonBlockingReadActionImpl.java:567)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$transferToBgThread$1(NonBlockingReadActionImpl.java:466)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$transferToBgThread$2(NonBlockingReadActionImpl.java:481)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:840)
IntelliJ IDEA 2023.3.2 (Ultimate Edition)
Build #IU-233.13135.103, built on December 20, 2023
Runtime version: 17.0.9+7-b1087.9 aarch64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 14.2.1
GC: G1 Young Generation, G1 Old Generation
Memory: 8192M
Cores: 10
Metal Rendering is ON
Non-Bundled Plugins:
fantom.codeowners (0.7.0)
Kotlin: 233.13135.103-IJ
com.intellij.serviceContainer.AlreadyDisposedException: Cannot create com.intellij.openapi.vcs.FileStatusManager because container is already disposed (container=Project(name=server2, containerState=DISPOSE_COMPLETED, componentStore=/Users/morph/dev/Projects/miro/server2) (disposed))
at com.intellij.serviceContainer.ContainerUtilKt.throwAlreadyDisposedError(containerUtil.kt:40)
at com.intellij.serviceContainer.ComponentManagerImpl.doGetService(ComponentManagerImpl.kt:695)
at com.intellij.serviceContainer.ComponentManagerImpl.getService(ComponentManagerImpl.kt:629)
at com.intellij.openapi.vcs.FileStatusManager.getInstance(FileStatusManager.java:13)
at com.github.fantom.codeowners.CodeownersManager$debouncedStatusesChanged$1.task(CodeownersManager.kt:98)
at com.github.fantom.codeowners.util.Debounced.run$lambda$0(Debounced.kt:26)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:272)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:833)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.