Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug: Upgrade to nemerosa:versioning:2.12.0 breaks gitPublishReset #267

Closed
ursjoss opened this issue Mar 12, 2020 · 3 comments
Closed

Bug: Upgrade to nemerosa:versioning:2.12.0 breaks gitPublishReset #267

ursjoss opened this issue Mar 12, 2020 · 3 comments
Assignees
Labels
bug Something isn't working
Milestone

Comments

@ursjoss
Copy link
Contributor

ursjoss commented Mar 12, 2020

Commit a164ae3 (0.33.0-SNAPSHOT) bumped the versioning gradle plugin from
net.nemerosa:versioning:2.7.1 to gradle.plugin.net.nemerosa:versioning:2.12.0. This seems to be related with #212 and nemerosa/versioning#69.

Unfortunately, this breaks at least gitPublishReset and therefore a successful guide publication.

> Task :guide:createGuide UP-TO-DATE
> Task :guide:gitPublishReset FAILED
close() called when useCnt is already zero for Repository[/home/urs/work/git/priv/KRis/docs/guide/build/gitPublish/.git]

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':guide:gitPublishReset'.
> Missing implementation of resolved method 'abstract org.eclipse.jgit.storage.file.FileBasedConfig openJGitConfig(org.eclipse.jgit.lib.Config, org.eclipse.jgit.util.FS)' of abstract class org.eclipse.jgit.util.SystemReader.

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':guide:gitPublishReset'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:205)
        at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:263)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:203)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:184)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
        at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
        at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:372)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:359)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:352)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:338)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
Caused by: java.lang.AbstractMethodError: Missing implementation of resolved method 'abstract org.eclipse.jgit.storage.file.FileBasedConfig openJGitConfig(org.eclipse.jgit.lib.Config, org.eclipse.jgit.util.FS)' of abstract class org.eclipse.jgit.util.SystemReader.

As a work-around, rolling back to gradle.plugin.net.nemerosa:versioning:2.11.0 allows gitPublishReset to pass successfully.

@aalmiray
Copy link
Collaborator

Could forcing a specific version of jgit solve this issue instead of rolling back the plugin’s version?

@ursjoss
Copy link
Contributor Author

ursjoss commented Mar 13, 2020

Looks like a bug in grgit-4.0.0 was causing the issue, which was fixed in 4.0.1 (https://github.com/ajoberstar/grgit/releases/tag/4.0.1).

I have created a PR in nemrosa/versioning (nemerosa/versioning#74) to bump to that fixed version.

As soon as we will have an updated version of nemrosa/versioning pulling in the fix from grgit-4.0.1, we can bump to that version.

In the mean time, I suggest to actually downgrade to versioning-2.11.0. I will create a PR.

@aalmiray aalmiray self-assigned this Mar 13, 2020
@aalmiray aalmiray added the bug Something isn't working label Mar 13, 2020
@aalmiray aalmiray added this to the 0.33.0 milestone Mar 13, 2020
@ursjoss
Copy link
Contributor Author

ursjoss commented Mar 13, 2020

I can confirm that the version bump to 2.12.1 fixes the problem for me. Thanks for merging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants