Closed peterfigure closed 2 years ago
I can't reproduce the crash if there are no tags, feels free to reopen and/or provide more information or a repro project if it keeps crashing for you.
saw this again, this is on a new source tree that only had git init
ran.
Caused by: java.lang.NullPointerException
at org.eclipse.jgit.internal.storage.file.UnpackedObjectCache$Table.index(UnpackedObjectCache.java:115)
at org.eclipse.jgit.internal.storage.file.UnpackedObjectCache$Table.contains(UnpackedObjectCache.java:76)
at org.eclipse.jgit.internal.storage.file.UnpackedObjectCache.isUnpacked(UnpackedObjectCache.java:31)
at org.eclipse.jgit.internal.storage.file.LooseObjects.hasCached(LooseObjects.java:90)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObjectWithoutRestoring(ObjectDirectory.java:339)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObject(ObjectDirectory.java:330)
at org.eclipse.jgit.internal.storage.file.WindowCursor.open(WindowCursor.java:132)
at org.eclipse.jgit.lib.ObjectReader.open(ObjectReader.java:212)
at org.eclipse.jgit.revwalk.RevWalk.parseAny(RevWalk.java:1075)
at org.eclipse.jgit.revwalk.RevWalk.parseCommit(RevWalk.java:985)
at com.javiersc.semver.gradle.plugin.internal.GitRefGitExtensionsKt.getHeadRevCommit(GitRefGitExtensions.kt:33)
at com.javiersc.semver.gradle.plugin.internal.GitRefGitExtensionsKt.getHeadCommit(GitRefGitExtensions.kt:26)
at com.javiersc.semver.gradle.plugin.internal.GitRefGitExtensionsKt.lastVersionInCurrentBranch(GitRefGitExtensions.kt:183)
at com.javiersc.semver.gradle.plugin.internal.CalculatedVersionKt.calculatedVersion(CalculatedVersion.kt:19)
at com.javiersc.semver.gradle.plugin.SemVerPluginKt.getCalculatedVersion(SemVerPlugin.kt:70)
at com.javiersc.semver.gradle.plugin.SemVerPluginKt.checkVersionIsHigherOrSame(SemVerPlugin.kt:61)
at com.javiersc.semver.gradle.plugin.SemVerPluginKt.access$checkVersionIsHigherOrSame(SemVerPlugin.kt:1)
at com.javiersc.semver.gradle.plugin.SemVerPlugin.apply(SemVerPlugin.kt:32)
at com.javiersc.semver.gradle.plugin.SemVerPlugin.apply(SemVerPlugin.kt:24)
at org.gradle.api.internal.plugins.ImperativeOnlyPluginTarget.applyImperative(ImperativeOnlyPluginTarget.java:43)
at org.gradle.api.internal.plugins.RuleBasedPluginTarget.applyImperative(RuleBasedPluginTarget.java:51)
at org.gradle.api.internal.plugins.DefaultPluginManager.addPlugin(DefaultPluginManager.java:187)
at org.gradle.api.internal.plugins.DefaultPluginManager.access$100(DefaultPluginManager.java:52)
at org.gradle.api.internal.plugins.DefaultPluginManager$AddPluginBuildOperation.run(DefaultPluginManager.java:282)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68)
at org.gradle.api.internal.plugins.DefaultPluginManager.lambda$doApply$0(DefaultPluginManager.java:167)
at org.gradle.configuration.internal.DefaultUserCodeApplicationContext.apply(DefaultUserCodeApplicationContext.java:44)
at org.gradle.api.internal.plugins.DefaultPluginManager.doApply(DefaultPluginManager.java:166)
Can you share a repro? I can't reproduce it in a project without tags.
these steps works for me 100% repeatable to create a NPE:
git init
maybe the problem is it hasn't commits?
semver plugin can't work if the project has no commits
a friendly/helpful error message might be a better UX