lppedd / idea-conventional-commit

Context and template-based completion for conventional/semantic commits.
https://plugins.jetbrains.com/plugin/13389-conventional-commit
MIT License
327 stars 19 forks source link

Error when deleting file outside of Intellij IDEA #64

Closed kare closed 2 years ago

kare commented 2 years ago
java.lang.RuntimeException: com.intellij.openapi.vcs.VcsException: Cannot start process, the working directory '/Users/kkn/src/github.com/streamr-dev/streamr-client-java/contracts/data-union-solidity' does not exist
    at com.intellij.util.ExceptionUtil.rethrow(ExceptionUtil.java:132)
    at com.intellij.util.EventDispatcher.throwExceptions(EventDispatcher.java:158)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:402)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:379)
    at com.intellij.util.messages.impl.MessageBusImpl.access$100(MessageBusImpl.java:33)
    at com.intellij.util.messages.impl.MessageBusImpl$MessagePublisher.invoke(MessageBusImpl.java:178)
    at com.sun.proxy.$Proxy127.dirtyUnder(Unknown Source)
    at git4idea.annotate.GitRepositoryForAnnotationsListener$1.repositoryChanged(GitRepositoryForAnnotationsListener.java:18)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeMethod(MessageBusImpl.java:674)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:649)
    at com.intellij.util.messages.impl.MessageBusImpl.deliverMessage(MessageBusImpl.java:422)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:397)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:379)
    at com.intellij.util.messages.impl.MessageBusImpl.access$100(MessageBusImpl.java:33)
    at com.intellij.util.messages.impl.MessageBusImpl$MessagePublisher.invoke(MessageBusImpl.java:185)
    at com.sun.proxy.$Proxy126.repositoryChanged(Unknown Source)
    at git4idea.repo.GitRepositoryManager.lambda$notifyListenersAsync$2(GitRepositoryManager.java:88)
    at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:216)
    at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:27)
    at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:195)
    at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
    at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:184)
    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:834)
Caused by: com.intellij.openapi.vcs.VcsException: Cannot start process, the working directory '/Users/kkn/src/github.com/streamr-dev/streamr-client-java/contracts/data-union-solidity' does not exist
    at git4idea.history.GitLogOutputSplitter.startFailed(GitLogOutputSplitter.java:123)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at com.intellij.util.EventDispatcher.dispatchVoidMethod(EventDispatcher.java:123)
    at com.intellij.util.EventDispatcher.lambda$createMulticaster$1(EventDispatcher.java:86)
    at com.sun.proxy.$Proxy122.startFailed(Unknown Source)
    at git4idea.commands.GitHandler.start(GitHandler.java:442)
    at git4idea.commands.GitHandler.runInCurrentThread(GitHandler.java:377)
    at git4idea.commands.GitImplBase.doRun(GitImplBase.java:209)
    at git4idea.commands.GitImplBase.run(GitImplBase.java:171)
    at git4idea.commands.GitImplBase.runCommandWithoutCollectingOutput(GitImplBase.java:103)
    at git4idea.history.GitLogUtil.readTimedCommits(GitLogUtil.java:94)
    at git4idea.log.GitLogProvider.getCommitsMatchingFilter(GitLogProvider.java:536)
    at git4idea.log.GitLogProvider.getCommitsMatchingFilter(GitLogProvider.java:410)
    at com.github.lppedd.cc.vcs.CCVcsHandler.fetchCommitsFromLogProvider(CCVcsHandler.kt:121)
    at com.github.lppedd.cc.vcs.CCVcsHandler.access$fetchCommitsFromLogProvider(CCVcsHandler.kt:28)
    at com.github.lppedd.cc.vcs.CCVcsHandler$fetchCommits$1.invoke(CCVcsHandler.kt:103)
    at com.github.lppedd.cc.vcs.CCVcsHandler$fetchCommits$1.invoke(CCVcsHandler.kt:103)
    at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:210)
    at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:786)
    at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:816)
    at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:807)
    at com.github.lppedd.cc.vcs.CCVcsHandler.fetchCommits(CCVcsHandler.kt:104)
    at com.github.lppedd.cc.vcs.CCVcsHandler.refreshCachedValues(CCVcsHandler.kt:91)
    at com.github.lppedd.cc.vcs.CCVcsHandler.access$refreshCachedValues(CCVcsHandler.kt:28)
    at com.github.lppedd.cc.vcs.CCVcsHandler$MyVcsLogRefresher.refresh(CCVcsHandler.kt:210)
    at git4idea.log.GitLogProvider.lambda$subscribeToRootRefreshEvents$4(GitLogProvider.java:397)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeMethod(MessageBusImpl.java:674)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:649)
    at com.intellij.util.messages.impl.MessageBusImpl.deliverMessage(MessageBusImpl.java:422)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:393)
    ... 26 more
Caused by: com.intellij.execution.ExecutionException: Cannot start process, the working directory '/Users/kkn/src/github.com/streamr-dev/streamr-client-java/contracts/data-union-solidity' does not exist
    at com.intellij.execution.configurations.GeneralCommandLine.validateAndPrepareCommandLine(GeneralCommandLine.java:399)
    at com.intellij.execution.configurations.GeneralCommandLine.createProcess(GeneralCommandLine.java:379)
    at com.intellij.execution.process.OSProcessHandler.startProcess(OSProcessHandler.java:100)
    at com.intellij.execution.process.OSProcessHandler.<init>(OSProcessHandler.java:48)
    at com.intellij.execution.process.KillableProcessHandler.<init>(KillableProcessHandler.java:37)
    at com.intellij.execution.process.KillableProcessHandler.<init>(KillableProcessHandler.java:45)
    at git4idea.commands.GitTextHandler$MyOSProcessHandler.<init>(GitTextHandler.java:184)
    at git4idea.commands.GitLineHandler$1.<init>(GitLineHandler.java:146)
    at git4idea.commands.GitLineHandler.createProcess(GitLineHandler.java:146)
    at git4idea.commands.GitTextHandler.startProcess(GitTextHandler.java:76)
    at git4idea.commands.GitHandler.start(GitHandler.java:432)
    ... 50 more
lppedd commented 2 years ago

I think the only reasonable way to deal with this is catch the exception. Mmm, I'll check in details later on.

lppedd commented 2 years ago

Btw, if the VCS tokens provider bothers you, you can disable it with the Registry key

com.github.lppedd.cc.providers.vcs
kare commented 2 years ago

I think the only reasonable way to deal with this is catch the exception. Mmm, I'll check in details later on.

Sounds like a good strategy.