Conversation
|
@mernst Ready for review. |
|
Do you still have the edits you made to buildfiles? |
📝 WalkthroughWalkthroughThe PR makes two factual changes. README.md was rewritten with Windows-style CRLF line endings and a trailing period was removed from a paper-title markdown link. A new file, 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@defects4j-jars/BUILD_MATRIX.md`:
- Line 41: The note in BUILD_MATRIX.md for the Jsoup recipe references the wrong
project path "build/defects4j-src/JacksonXml-<BUG_ID>f"; update this to
"build/defects4j-src/Jsoup-<BUG_ID>f" so the instruction about editing
`maven-build.xml` (the build.classpath pathelement for
`scripts/build/checker-framework/checker/dist/checker-qual.jar`) targets the
Jsoup project; ensure the sentence and any other occurrences of
"JacksonXml-<BUG_ID>f" in that Jsoup row are replaced with "Jsoup-<BUG_ID>f".
- Line 50: Update BUILD_MATRIX.md to replace the hardcoded
'/path/to/checker-qual.jar' placeholder with a repo-relative variable and show a
one-line definition or clearly mark it as a placeholder; specifically, in the
instructions that add a compileJava task to build.gradle (reference:
compileJava) and properties added to build-ant.xml (reference:
checker.qual.path, bnd.core.classpath, jar.core.path, bndCore target), change
the path to something like a repo-relative variable (e.g.,
${REPO_ROOT}/libs/checker-qual.jar) or add a one-line declaration above the
steps stating CHECKER_QUAL_PATH=<repo-relative-path> and then use that variable
name in the compileJava classpath and the checker.qual.path property so readers
know to set it before building.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: 84002c05-e589-43be-b414-55e39c89cc42
⛔ Files ignored due to path filters (298)
defects4j-jars/Chart/Chart-b1.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b10.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b11.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b12.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b13.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b14.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b15.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b16.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b17.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b18.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b19.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b2.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b20.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b21.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b22.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b23.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b24.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b25.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b26.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b3.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b4.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b5.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b6.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b7.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b8.jaris excluded by!**/*.jardefects4j-jars/Chart/Chart-b9.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b1.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b10.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b11.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b12.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b13.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b14.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b15.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b16.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b17.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b18.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b19.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b2.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b20.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b21.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b22.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b23.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b24.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b25.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b26.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b27.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b28.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b29.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b3.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b30.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b31.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b32.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b33.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b34.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b35.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b36.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b37.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b38.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b39.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b4.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b40.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b5.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b7.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b8.jaris excluded by!**/*.jardefects4j-jars/Cli/Cli-b9.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b1.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b10.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b100.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b101.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b102.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b103.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b104.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b105.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b106.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b107.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b108.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b109.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b11.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b110.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b111.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b112.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b113.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b114.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b115.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b116.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b117.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b118.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b119.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b12.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b120.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b121.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b122.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b123.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b124.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b125.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b126.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b127.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b128.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b129.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b13.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b130.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b131.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b132.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b133.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b134.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b135.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b136.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b137.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b138.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b139.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b14.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b140.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b141.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b142.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b143.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b144.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b145.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b146.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b147.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b148.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b149.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b15.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b150.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b151.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b152.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b153.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b154.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b155.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b156.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b157.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b158.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b159.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b16.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b160.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b161.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b162.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b163.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b164.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b165.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b166.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b167.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b168.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b169.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b17.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b170.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b171.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b172.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b173.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b174.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b175.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b176.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b18.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b19.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b2.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b20.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b21.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b22.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b23.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b24.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b25.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b26.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b27.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b28.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b29.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b3.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b30.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b31.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b32.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b33.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b34.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b35.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b36.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b37.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b38.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b39.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b4.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b40.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b41.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b42.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b43.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b44.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b45.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b46.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b47.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b48.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b49.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b5.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b50.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b51.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b52.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b53.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b54.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b55.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b56.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b57.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b58.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b59.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b6.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b60.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b61.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b62.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b64.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b65.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b66.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b67.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b68.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b69.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b7.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b70.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b71.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b72.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b73.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b74.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b75.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b76.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b77.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b78.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b79.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b8.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b80.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b81.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b82.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b83.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b84.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b85.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b86.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b87.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b88.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b89.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b9.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b90.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b91.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b92.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b94.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b95.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b96.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b97.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b98.jaris excluded by!**/*.jardefects4j-jars/Closure/Closure-b99.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b1.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b10.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b11.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b12.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b13.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b14.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b15.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b16.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b17.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b18.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b2.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b3.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b4.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b5.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b6.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b7.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b8.jaris excluded by!**/*.jardefects4j-jars/Codec/Codec-b9.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b1.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b10.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b11.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b12.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b13.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b14.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b15.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b16.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b17.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b18.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b19.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b2.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b20.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b21.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b22.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b23.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b24.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b25.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b26.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b27.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b28.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b3.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b4.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b5.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b6.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b7.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b8.jaris excluded by!**/*.jardefects4j-jars/Collections/Collections-b9.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b1.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b10.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b11.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b12.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b13.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b14.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b15.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b16.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b17.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b18.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b19.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b2.jaris excluded by!**/*.jardefects4j-jars/Compress/Compress-b20.jaris excluded by!**/*.jar
📒 Files selected for processing (2)
README.mddefects4j-jars/BUILD_MATRIX.md
|
@mernst Ready for re-review. I've added a README explaining all of the changes necessary to build the jarfiles after annotation. I believe this should be enough. |
…nto impurity-defects4j
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@defects4j-jars/BUILD_MATRIX.md`:
- Line 22: Add a short note or new subsection in BUILD_MATRIX.md explaining
intentionally skipped Bug IDs: list the project names and omitted IDs (Cli: 6;
Lang: 2, 18, 25, 48; Time: 21) and state whether they are known-broken,
unsupported, or untestable; update the existing table row for Cli/Lang/Time or
add a footnote marker next to those project entries that references this
explanation so readers understand why those bug IDs are missing.
- Around line 19-53: The table currently instructs adding a pathelement pointing
to "scripts/build/checker-framework/checker/dist/checker-qual.jar" which will be
resolved relative to each project's build file and thus fail; update those
instructions to use the correct relative path
"../../../scripts/build/checker-framework/checker/dist/checker-qual.jar" when
telling users to add the pathelement in build.xml / maven-build.xml /
buildjars.sh (search for the literal
"scripts/build/checker-framework/checker/dist/checker-qual.jar" in the
document), or alternatively instruct users to export an environment variable
CHECKERFRAMEWORK and reference the jar as
"${env.CHECKERFRAMEWORK}/checker/dist/checker-qual.jar" in the build files so
project-local resolution succeeds.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: 17ca41e6-98e2-4bf8-b48c-7758753a7117
📒 Files selected for processing (1)
defects4j-jars/BUILD_MATRIX.md
| | Project ID | Bug IDs | Build System | Build Command(s) | Output Jar Pattern | Notes | | ||
| | --- | --- | --- | --- | --- | --- | | ||
| | Chart | 1-26 | `ant` | `ant -f build.xml compile` | `Chart-<BUG_ID>f/jfreechart-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Chart-<BUG_ID>f`, edit `ant/build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `compile` target, set javac source and target to `1.6`. Then run the provided build command from the `ant` subdirectory. | | ||
| | Cli | 1-5,7-21 | `ant` | `ant -f build.xml jar` | `Cli-<BUG_ID>f/target/commons-cli-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Cli-<BUG_ID>f`, edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `jar` target, delete the dependency on the `test` target. Then run the provided build command. | | ||
| | Cli | 22 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Cli-<BUG_ID>f/target/commons-cli-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Cli-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..`. Then run the provided build command. | | ||
| | Cli | 23-40 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Cli-<BUG_ID>f/target/commons-cli-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Cli-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..` and any `<manifest>` elements (if present). Then run the provided build command. | | ||
| | Closure | 1-83,107-133,154-176 | `ant` | `ant -f build.xml jar` | `Closure-<BUG_ID>f/build/compiler-*.jar` | Make sure you are using Java 11. First, before annotating, add `build/defects4j-src/Closure-<BUG_ID>f/lib/json.jar` to the colon-separated classpath string (the one containing the JUnit jar and `$CLASS_DIR`) in `buildjars.sh`, inserting it between them with `:` as the separator. Then, from `build/defects4j-src/Closure-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `srcclasspath.path`, add a new pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | | ||
| | Closure | 84-101,136-153 | `ant` | `ant -f build.xml jar` | `Closure-<BUG_ID>f/build/compiler-*.jar` | Make sure you are using Java 11. First, before annotating, add `build/defects4j-src/Closure-<BUG_ID>f/lib/json.jar` to the colon-separated classpath string (the one containing the JUnit jar and `$CLASS_DIR`) in `buildjars.sh`, inserting it between them with `:` as the separator. Then, from `build/defects4j-src/Closure-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `classpath.path`, add a new pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | | ||
| | Closure | 102-106,134-135 | `ant` | `ant -f build.xml jar` | `Closure-<BUG_ID>f/build/compiler-*.jar` | Make sure you are using Java 11. First, before annotating, add `build/defects4j-src/Closure-<BUG_ID>f/lib/json.jar` to the colon-separated classpath string (the one containing the JUnit jar and `$CLASS_DIR`) in `buildjars.sh`, inserting it between them with `:` as the separator. Then, from `build/defects4j-src/Closure-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `classpath.path`, add a new pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `jar` target, remove the dependency on the `apt` target. Then run the provided build command. | | ||
| | Codec | 1-16 | `ant` | `ant -f build.xml jar` | `Codec-<BUG_ID>f/dist/commons-codec-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Codec-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | | ||
| | Codec | 17-18 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Codec-<BUG_ID>f/target/commons-codec-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Codec-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..` and any `<manifest>` elements. Then run the provided build command. | | ||
| | Collections | 1-21 | `ant` | `ant -f build.xml jar` | `Collections-<BUG_ID>f/build/commons-collections-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Collections-<BUG_ID>f` edit `build.xml` before compiling: before the `compile` target, add a `<path id="compile.classpath">` block that contains a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Reference this block inside the `javac` element within the `compile` target via `<classpath refid="compile.classpath"/>`. Then run the provided build command. | | ||
| | Collections | 22-28 | `ant` | `ant -f build.xml jar` | `Collections-<BUG_ID>f/target/commons-collections-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Collections-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | | ||
| | Compress | 1-47 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Compress-<BUG_ID>f/target/commons-compress-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Compress-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..` and any `<manifest>` elements. Then run the provided build command. | | ||
| | Csv | 1-16 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Csv-<BUG_ID>f/target/commons-csv-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Csv-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..` and any `<manifest>` elements. Then run the provided build command. | | ||
| | Gson | 1-18 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Gson-<BUG_ID>f/target/gson-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Gson-<BUG_ID>f/gson/` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..` and any `<manifest>` elements (if they exist). Then run the provided build command. | | ||
| | JacksonCore | 1-26 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `JacksonCore-<BUG_ID>f/target/jackson-core-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/JacksonCore-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | | ||
| | JacksonDatabind | 1 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `JacksonDatabind-<BUG_ID>f/target/jackson-databind-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/JacksonDatabind-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..` and any `<manifest>` elements. Then run the provided build command. | | ||
| | JacksonDatabind | 2-74,76-107,109-112 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `JacksonDatabind-<BUG_ID>f/target/jackson-databind-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/JacksonDatabind-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | | ||
| | JacksonDatabind | 75 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `JacksonDatabind-<BUG_ID>f/target/jackson-databind-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/JacksonDatabind-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `get-deps` target, edit the url src link for the Jackson Core dependency to be `"https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.8.8/jackson-core-2.8.8.jar"`. Then run the provided build command. | | ||
| | JacksonDatabind | 108 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `JacksonDatabind-<BUG_ID>f/target/jackson-databind-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/JacksonDatabind-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `get-deps` target, edit the url src link for the Jackson Annotations dependency to be `"https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.10.0/jackson-annotations-2.10.0.jar"` and the url src link for the Jackson Core dependency to be `"https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.10.0/jackson-core-2.10.0.jar"`. Then run the provided build command. | | ||
| | JacksonXml | 1-6 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `JacksonXml-<BUG_ID>f/target/jackson-dataformat-xml-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/JacksonXml-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | | ||
| | Jsoup | 1-14 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Jsoup-<BUG_ID>f/target/jsoup-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Jsoup-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | | ||
| | Jsoup | 15-93 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Jsoup-<BUG_ID>f/target/jsoup-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Jsoup-<BUG_ID>f` edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..` and any `<manifest>` elements. Then run the provided build command. | | ||
| | JxPath | 1-22 | `ant` | `ant -f build.xml jar` | `JxPath-<BUG_ID>f/target/commons-jxpath-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/JxPath-<BUG_ID>f` edit `build.xml` before compiling: in the `jar` target, remove the dependency on `test`. Additionally, copy the `checker-qual.jar` located at `scripts/build/checker-framework/checker/dist/checker-qual.jar` into `build/defects4j-src/JxPath-<BUG_ID>f/target/lib/`. Then run the provided build command. | | ||
| | Lang | 1,3-17,19-20,42-47,49-65 | `ant` | `ant -f build.xml jar` | `Lang-<BUG_ID>f/target/commons-lang-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Lang-<BUG_ID>f`, edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | | ||
| | Lang | 21-24,26-41 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Lang-<BUG_ID>f/target/commons-lang-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Lang-<BUG_ID>f`, edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..` and any `<manifest>` elements. Then run the provided build command. | | ||
| | Math | 1-7 | `ant` | `ant -f build.xml jar` | `Math-<BUG_ID>f/target/commons-math-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Math-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `download-junit` target, in the `src` attribute, change `http` to `https`. Then run the provided build command. | | ||
| | Math | 8-91,99 | `ant` | `ant -f build.xml jar` | `Math-<BUG_ID>f/target/commons-math-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Math-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `jar` target, change the dependency from `test` to `compile`; in the `download-junit` target, in the `src` attribute, change `http` to `https`. Then run the provided build command. | | ||
| | Math | 92-98 | `ant` | `ant -f build.xml jar` | `Math-<BUG_ID>f/target/commons-math-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Math-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `jar` target, change the dependency from `compile,test` to `compile`; in the `get-deps` target, comment out the `<setproxy>` attribute; in the `get-deps` target, change the cobertura plugin to `src="https://repo1.maven.org/maven2/maven-plugins/maven-cobertura-plugin/1.1.1/maven-cobertura-plugin-1.1.1.jar"`; in the `get-deps` target, change the xdoc plugin to `src="https://repo1.maven.org/maven2/maven/maven-xdoc-plugin/1.9.2/maven-xdoc-plugin-1.9.2.jar"`. Then run the provided build command. | | ||
| | Math | 100-106 | `ant` | `ant -f build.xml jar` | `Math-<BUG_ID>f/target/commons-math-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Math-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `jar` target, change the dependency from `compile,test` to `compile`; in the `get-deps` target, comment out the `<setproxy>` attribute. Then run the provided build command. | | ||
| | Mockito | 1-11,18-20 | `gradle` | `./gradlew build` | `Mockito-<BUG_ID>f/build/libs/mockito-core-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Mockito-<BUG_ID>f`, make the following edits before building. **(1) `build.gradle`:** add a `compileJava` task directly before the `dependencies` block: `compileJava { classpath += files('scripts/build/checker-framework/checker/dist/checker-qual.jar') }`. **(2) `build-ant.xml`:** directly below the `jar.core.path` property, insert `<property name="checker.qual.path" value="scripts/build/checker-framework/checker/dist/checker-qual.jar"/>` and `<property name="bnd.core.classpath" value="${jar.core.path}:${checker.qual.path}"/>`. Then in the `bndCore` target, change the `classpath=` attribute to `classpath="${bnd.core.classpath}"`. Then run the provided build command. | | ||
| | Mockito | 12-17,21-38 | `ant` | `ant -f build.xml jar` | `Mockito-<BUG_ID>f/target/mockito-core-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Mockito-<BUG_ID>f`, edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `jar.all` target, change the dependency on `test` to a dependency on `compile.test`; finally, in the `jar.all` and `jar` targets, change `<fileset dir="." file="LICENSE" />` and `<fileset dir="." file="NOTICE" />` to `<fileset dir="."><include name="LICENSE"/></fileset>` and `<fileset dir="."><include name="NOTICE"/></fileset>`. Then run the provided build command. | | ||
| | Time | 1-11 | `ant` | `ant -f build.xml -Djunit.skipped=true jar` | `Time-<BUG_ID>f/target/joda-time-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Time-<BUG_ID>f`, edit `maven-build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `package` target, delete the line `manifest=..` and any `<manifest>` elements (if they exist). Then run the provided build command. | | ||
| | Time | 12-20,22-27 | `ant` | `ant -f build.xml jar` | `Time-<BUG_ID>f/build/joda-time-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Time-<BUG_ID>f` edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`. Then run the provided build command. | |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Verify the directory structure and expected relative path
# Check if build directory exists and show structure
if [ -d "build/defects4j-src" ]; then
echo "=== Existing project directories under build/defects4j-src ==="
ls -d build/defects4j-src/*/ 2>/dev/null | head -5
fi
# Verify checker-qual.jar location
echo ""
echo "=== Checking checker-qual.jar location ==="
fd -t f "checker-qual.jar" scripts/build
# Calculate relative path from a hypothetical project directory
echo ""
echo "=== Relative path calculation ==="
echo "From: build/defects4j-src/<PROJECT>-<BUG>f/"
echo "To: scripts/build/checker-framework/checker/dist/checker-qual.jar"
echo "Expected relative: ../../../scripts/build/checker-framework/checker/dist/checker-qual.jar"Repository: randoop/grt-testing
Length of output: 463
🏁 Script executed:
#!/bin/bash
# Explore repository structure
echo "=== Repository root structure ==="
ls -la | head -20
echo ""
echo "=== Looking for checker-qual.jar anywhere in repo ==="
fd -t f "checker-qual.jar" 2>/dev/null || echo "Not found"
echo ""
echo "=== Checking if scripts/ directory exists ==="
if [ -d "scripts" ]; then
echo "scripts/ exists. Contents:"
find scripts -type d | head -20
else
echo "scripts/ does not exist"
fi
echo ""
echo "=== Checking if build/ directory exists ==="
if [ -d "build" ]; then
echo "build/ exists. Contents:"
find build -type d | head -20
else
echo "build/ does not exist"
fi
echo ""
echo "=== Checking BUILD_MATRIX.md context ==="
head -30 "defects4j-jars/BUILD_MATRIX.md"Repository: randoop/grt-testing
Length of output: 8224
🏁 Script executed:
#!/bin/bash
# Find buildjars.sh and examine it
echo "=== Looking for buildjars.sh ==="
find . -name "buildjars.sh" -type f 2>/dev/null
echo ""
echo "=== Checking for any build-related scripts ==="
find scripts -name "*build*" -type f 2>/dev/null | head -20
echo ""
echo "=== Checking defects4j-jars directory structure ==="
ls -la defects4j-jars/
echo ""
echo "=== Searching for references to 'scripts/build' in the repo ==="
rg "scripts/build" -t md | head -20Repository: randoop/grt-testing
Length of output: 13471
🏁 Script executed:
#!/bin/bash
# Examine buildjars.sh to understand build context and path handling
echo "=== buildjars.sh context around path handling ==="
head -80 defects4j-jars/buildjars.sh | cat -n
echo ""
echo "=== Searching for 'scripts/build' references in buildjars.sh ==="
grep -n "scripts/build" defects4j-jars/buildjars.sh
echo ""
echo "=== Searching for path-related variables or setup ==="
grep -n "CLASSPATH\|classpath\|PATH\|cd " defects4j-jars/buildjars.sh | head -30Repository: randoop/grt-testing
Length of output: 3980
🏁 Script executed:
#!/bin/bash
# Check for any environment setup or symlink documentation
echo "=== README.md in subject-programs/annotated-jars (mentions CHECKERFRAMEWORK) ==="
cat subject-programs/annotated-jars/README.md
echo ""
echo "=== Checking for any .bashrc, setup scripts, or path configuration ==="
find . -maxdepth 2 -name "*.sh" -o -name ".bashrc" -o -name "setup*" 2>/dev/null | grep -v ".git"
echo ""
echo "=== Check if build/ directory is expected to be created ==="
grep -r "mkdir.*build" defects4j-jars/buildjars.sh | head -5
</script>Repository: randoop/grt-testing
Length of output: 3628
Path references in build instructions will not resolve from project directories.
All table entries reference scripts/build/checker-framework/checker/dist/checker-qual.jar as a pathelement in build files. However, these build files (located at build/defects4j-src/<PROJECT>-<BUG_ID>f/build.xml or equivalent) will resolve paths relative to their own directory, not the repository root.
When build.xml parses this path from build/defects4j-src/<PROJECT>-<BUG_ID>f/, it will fail to locate the jar.
Correct relative path: ../../../scripts/build/checker-framework/checker/dist/checker-qual.jar
Alternatively, document that users must set CHECKERFRAMEWORK=/path/to/grt-testing/scripts/build/checker-framework before running builds, and then reference the jar via that environment variable (e.g., ${env.CHECKERFRAMEWORK}/checker/dist/checker-qual.jar).
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@defects4j-jars/BUILD_MATRIX.md` around lines 19 - 53, The table currently
instructs adding a pathelement pointing to
"scripts/build/checker-framework/checker/dist/checker-qual.jar" which will be
resolved relative to each project's build file and thus fail; update those
instructions to use the correct relative path
"../../../scripts/build/checker-framework/checker/dist/checker-qual.jar" when
telling users to add the pathelement in build.xml / maven-build.xml /
buildjars.sh (search for the literal
"scripts/build/checker-framework/checker/dist/checker-qual.jar" in the
document), or alternatively instruct users to export an environment variable
CHECKERFRAMEWORK and reference the jar as
"${env.CHECKERFRAMEWORK}/checker/dist/checker-qual.jar" in the build files so
project-local resolution succeeds.
| | Project ID | Bug IDs | Build System | Build Command(s) | Output Jar Pattern | Notes | | ||
| | --- | --- | --- | --- | --- | --- | | ||
| | Chart | 1-26 | `ant` | `ant -f build.xml compile` | `Chart-<BUG_ID>f/jfreechart-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Chart-<BUG_ID>f`, edit `ant/build.xml` before compiling: in the path with id `build.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `compile` target, set javac source and target to `1.6`. Then run the provided build command from the `ant` subdirectory. | | ||
| | Cli | 1-5,7-21 | `ant` | `ant -f build.xml jar` | `Cli-<BUG_ID>f/target/commons-cli-*.jar` | Make sure you are using Java 11. From `build/defects4j-src/Cli-<BUG_ID>f`, edit `build.xml` before compiling: in the path with id `compile.classpath`, add a pathelement pointing to `scripts/build/checker-framework/checker/dist/checker-qual.jar`; in the `jar` target, delete the dependency on the `test` target. Then run the provided build command. | |
There was a problem hiding this comment.
🧹 Nitpick | 🔵 Trivial
Consider documenting intentionally skipped Bug IDs.
Several Bug IDs appear to be deliberately omitted across projects:
- Cli: Bug 6
- Lang: Bugs 2, 18, 25, 48
- Time: Bug 21
If these are known-broken or unsupported in Defects4J, adding a brief note (either inline or in a separate section) would help users understand why these aren't included and prevent confusion.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@defects4j-jars/BUILD_MATRIX.md` at line 22, Add a short note or new
subsection in BUILD_MATRIX.md explaining intentionally skipped Bug IDs: list the
project names and omitted IDs (Cli: 6; Lang: 2, 18, 25, 48; Time: 21) and state
whether they are known-broken, unsupported, or untestable; update the existing
table row for Cli/Lang/Time or add a footnote marker next to those project
entries that references this explanation so readers understand why those bug IDs
are missing.
Added impurity annotations for Defects4J so that we can run the full capabilities of GRT with Defects4J.