Skip to content

Failed to get Diff stats in dry-run mode #1125

@CodexRaunak

Description

@CodexRaunak

Plugin Modernizer version

plugin modernizer 999999-SNAPSHOT (2025-07-15T22:15:58Z)

What Operating System are you using

Windows 10

Reproduction steps

java -jar ./plugin-modernizer-cli/target/jenkins-plugin-modernizer-999999-SNAPSHOT.jar dry-run --plugins buildtriggerbadge -r UpgradeNextMajorParentVersion

Errored logs:

io.jenkins.tools.pluginmodernizer.core.model.PluginProcessingException: Failed to get diff stats
	at io.jenkins.tools.pluginmodernizer.core.model.Plugin.addError(Plugin.java:475)
	at io.jenkins.tools.pluginmodernizer.core.github.GHService.getDiffStats(GHService.java:1773)
	at io.jenkins.tools.pluginmodernizer.core.model.Plugin.getDiffStats(Plugin.java:611)
	at io.jenkins.tools.pluginmodernizer.core.impl.PluginModernizer.collectModernizationMetadata(PluginModernizer.java:476)
	at io.jenkins.tools.pluginmodernizer.core.impl.PluginModernizer.process(PluginModernizer.java:390)
	at java.base/java.lang.Iterable.forEach(Iterable.java:75)
	at io.jenkins.tools.pluginmodernizer.core.impl.PluginModernizer.start(PluginModernizer.java:170)
	at io.jenkins.tools.pluginmodernizer.cli.command.DryRunCommand.call(DryRunCommand.java:96)
	at io.jenkins.tools.pluginmodernizer.cli.command.DryRunCommand.call(DryRunCommand.java:19)
	at picocli.CommandLine.executeUserObject(CommandLine.java:2045)
	at picocli.CommandLine.access$1500(CommandLine.java:148)
	at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2465)
	at picocli.CommandLine$RunLast.handle(CommandLine.java:2457)
	at picocli.CommandLine$RunLast.handle(CommandLine.java:2419)
	at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277)
	at picocli.CommandLine$RunLast.execute(CommandLine.java:2421)
	at picocli.CommandLine.execute(CommandLine.java:2174)
	at io.jenkins.tools.pluginmodernizer.cli.Main.main(Main.java:50)
Caused by: org.eclipse.jgit.errors.MissingObjectException: Missing blob 4ad573e2f2f56c1483675d11b671c544fd5a2a09
	at org.eclipse.jgit.internal.storage.file.WindowCursor.open(WindowCursor.java:138)
	at org.eclipse.jgit.diff.ContentSource$ObjectReaderSource.open(ContentSource.java:135)
	at org.eclipse.jgit.diff.ContentSource$Pair.open(ContentSource.java:302)
	at org.eclipse.jgit.diff.DiffFormatter.open(DiffFormatter.java:1156)
	at org.eclipse.jgit.diff.DiffFormatter.createFormatResult(DiffFormatter.java:1084)
	at org.eclipse.jgit.diff.DiffFormatter.toFileHeader(DiffFormatter.java:1046)
	at io.jenkins.tools.pluginmodernizer.core.github.GHService.getDiffStats(GHService.java:1732)
	... 16 common frames omitted

It's working fine in normal run but erroring in dry-run mode

Expected Results

Collects the modernization metadata without fail.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions