{"record":{"id":"b5360a8c2115198b","repo":"apache/iceberg","slug":"runtime-dependency-check-failed-to-update-the-bas","errorCode":null,"errorMessage":"Runtime dependency check failed. To update the baseline run:\n  ./gradlew ${project.path}:generateRuntimeDeps\n\nThen update LICENSE and NOTICE to reflect the dependency changes.","messagePattern":"Runtime dependency check failed\\. To update the baseline run:\n  \\./gradlew (.+?):generateRuntimeDeps\n\nThen update LICENSE and NOTICE to reflect the dependency changes\\.","errorType":"console","errorClass":"GradleException","httpStatus":null,"severity":"error","filePath":"runtime-deps.gradle","lineNumber":127,"sourceCode":"      msg.append(\"Runtime dependency baseline mismatch for ${project.name}!\\n\")\n      if (versionChanged) {\n        msg.append(\"\\n  Version changed (${versionChanged.size()}):\\n\")\n        versionChanged.toSorted().each { module ->\n          msg.append(\"    ~ ${expectedByModule[module]}  ->  ${actualByModule[module]}\\n\")\n        }\n      }\n      if (added) {\n        msg.append(\"\\n  Added (${added.size()}):\\n\")\n        added.toSorted().each { module -> msg.append(\"    + ${actualByModule[module]}\\n\") }\n      }\n      if (removed) {\n        msg.append(\"\\n  Removed (${removed.size()}):\\n\")\n        removed.toSorted().each { module -> msg.append(\"    - ${expectedByModule[module]}\\n\") }\n      }\n      msg.append(\"\\nTo update the baseline run:\\n\")\n      msg.append(\"  ./gradlew ${project.path}:generateRuntimeDeps\\n\")\n      msg.append(\"\\nThen update LICENSE and NOTICE to reflect the dependency changes.\")\n      throw new GradleException(msg.toString())\n    }\n  }\n}\n\ncheck.dependsOn checkRuntimeDeps\n","sourceCodeStart":109,"sourceCodeEnd":133,"githubUrl":"https://github.com/apache/iceberg/blob/86d9c8fc543e7c56c9f624eb725f76c9baff9570/runtime-deps.gradle#L109-L133","documentation":"The runtime-dependency check compares each project's actual runtime classpath modules against a committed baseline. If any module was added or removed relative to the baseline, the script builds a message listing Added/Removed modules (with 'expected by' mappings) and throws this GradleException, instructing you to regenerate the baseline and update LICENSE/NOTICE.","triggerScenarios":"Running ./gradlew check (which depends on checkRuntimeDeps) after changing dependencies in build.gradle — adding a new runtime dependency, upgrading one, or removing one — so the resolved runtime module set no longer matches the baseline file.","commonSituations":"Adding a third-party library for a feature; a dependency upgrade pulls in a new transitive module; excluding a dependency to slim the classpath; rebasing code that changed dependencies without regenerating the baseline.","solutions":["Regenerate the baseline: ./gradlew <project>:generateRuntimeDeps.","Review the diff of the baseline file to confirm the dependency change is intended.","Update LICENSE and NOTICE to reflect added or removed dependencies, then commit the regenerated baseline.","If the change was unintentional, revert the dependency change in build.gradle instead."],"exampleFix":"// before\nimplementation 'com.google.guava:guava:33.1.0-jre'  // new module, baseline stale\n// after\n./gradlew :iceberg-core:generateRuntimeDeps\n# then update LICENSE/NOTICE and commit the baseline","handlingStrategy":"validation","validationCode":"./gradlew :iceberg-core:checkRuntimeDeps  # or run generateRuntimeDeps first and inspect the git diff of the baseline before committing","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Run ./gradlew <project>:generateRuntimeDeps in the same PR as any dependency change.","Review baseline diffs in code review alongside LICENSE/NOTICE updates.","Avoid ad-hoc dependency additions; route new dependencies through the approved dependency list."],"tags":["gradle","dependencies","license-check","build-verification"],"backgroundTag":"checksum-mismatch","analyzedSha":"86d9c8fc543e7c56c9f624eb725f76c9baff9570","analyzedAt":"2026-09-12T00:46:39.097Z","contentChangedAt":"2026-09-12T00:46:39.097Z","schemaVersion":2},"datasetVersion":"2026-09-14T16:17:12.679Z"}