diff --git a/JUNIT_AUDIT_README.md b/JUNIT_AUDIT_README.md new file mode 100644 index 00000000000..6c5a15ac9b0 --- /dev/null +++ b/JUNIT_AUDIT_README.md @@ -0,0 +1,89 @@ +# JUnit Version Range Audit + +This directory contains audit reports for missing version ranges on JUnit bundles and package imports across the Eclipse Platform repository and all its submodules. + +## Overview + +As part of the JUnit 6 migration effort, we need to ensure that all MANIFEST.MF files have proper version ranges specified for JUnit-related bundles and packages. Missing version ranges can lead to compatibility issues when JUnit versions change. + +## Reports + +### JUNIT_VERSION_RANGE_AUDIT.md +A comprehensive markdown report that: +- Lists all 119 issues found across 8 repositories +- Groups issues by repository and bundle +- Provides detailed information about each missing version range +- Includes recommendations for fixing the issues + +### JUNIT_VERSION_RANGE_AUDIT.csv +A CSV file containing all issues in a tabular format, useful for: +- Importing into spreadsheet applications +- Tracking progress as issues are fixed +- Filtering and sorting by repository or issue type + +## Summary of Findings + +- **Total MANIFEST.MF files scanned:** 1,165 +- **Total issues found:** 119 +- **Affected repositories:** 8 + +### Issues by Repository + +| Repository | Issues | +|------------|--------| +| eclipse.jdt.ui | 42 | +| eclipse.pde | 29 | +| Main Repository (eclipse.platform.releng) | 15 | +| eclipse.platform.ui | 12 | +| eclipse.platform | 10 | +| equinox | 5 | +| eclipse.jdt.core | 4 | +| eclipse.jdt.debug | 2 | + +## How to Fix + +### For Require-Bundle entries +Add the `bundle-version` attribute with an appropriate version range: + +``` +# Before: +Require-Bundle: org.junit + +# After: +Require-Bundle: org.junit;bundle-version="[4.13.0,5.0.0)" +``` + +### For Import-Package entries +Add the `version` attribute with an appropriate version range: + +``` +# Before: +Import-Package: org.junit.jupiter.api + +# After: +Import-Package: org.junit.jupiter.api;version="[5.8.0,6.0.0)" +``` + +## Recommended Approach + +1. Address issues repository by repository (not all at once) +2. Start with repositories that have fewer issues to build momentum +3. Create separate PRs for each repository/submodule +4. Test thoroughly after adding version ranges +5. Update this tracking document as issues are resolved + +## Repository Links + +- [eclipse.jdt.core](https://github.com/eclipse-jdt/eclipse.jdt.core) - 4 issues +- [eclipse.jdt.debug](https://github.com/eclipse-jdt/eclipse.jdt.debug) - 2 issues +- [eclipse.jdt.ui](https://github.com/eclipse-jdt/eclipse.jdt.ui) - 42 issues +- [eclipse.pde](https://github.com/eclipse-pde/eclipse.pde) - 29 issues +- [eclipse.platform](https://github.com/eclipse-platform/eclipse.platform) - 10 issues +- [eclipse.platform.ui](https://github.com/eclipse-platform/eclipse.platform.ui) - 12 issues +- [equinox](https://github.com/eclipse-equinox/equinox) - 5 issues +- [Main Repository](https://github.com/laeubi/eclipse.platform.releng.aggregator) - 15 issues + +## Reference + +For examples of properly versioned JUnit imports, see: +- https://github.com/eclipse-platform/eclipse.platform.releng.aggregator/pull/3431 diff --git a/JUNIT_VERSION_RANGE_AUDIT.csv b/JUNIT_VERSION_RANGE_AUDIT.csv new file mode 100644 index 00000000000..ab73692b842 --- /dev/null +++ b/JUNIT_VERSION_RANGE_AUDIT.csv @@ -0,0 +1,120 @@ +Repository,Repository URL,File Path,Bundle,Issue Type,Missing Version On,Status +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.ant.optional.junit/META-INF/MANIFEST.MF,org.eclipse.ant.optional.junit,Require-Bundle,org.junit,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.releng.tests/META-INF/MANIFEST.MF,org.eclipse.releng.tests,Require-Bundle,org.junit,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test.performance/META-INF/MANIFEST.MF,org.eclipse.test.performance,Import-Package,org.junit.jupiter.api,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test.performance/META-INF/MANIFEST.MF,org.eclipse.test.performance,Import-Package,org.junit.platform.suite.api,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test.performance/META-INF/MANIFEST.MF,org.eclipse.test.performance,Require-Bundle,org.junit,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Import-Package,org.junit.jupiter.api,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Import-Package,org.junit.platform.engine,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Import-Package,org.junit.platform.engine.discovery,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Import-Package,org.junit.platform.engine.reporting,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Import-Package,org.junit.platform.engine.support.descriptor,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Import-Package,org.junit.platform.launcher,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Import-Package,org.junit.platform.launcher.core,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Import-Package,org.junit.platform.commons,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Import-Package,org.junit.jupiter.engine,Open +Main Repository (eclipse.platform.releng),https://github.com/laeubi/eclipse.platform.releng.aggregator,eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF,org.eclipse.test,Require-Bundle,org.junit,Open +eclipse.jdt.core,https://github.com/eclipse-jdt/eclipse.jdt.core,eclipse.jdt.core/org.eclipse.jdt.apt.pluggable.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.apt.pluggable.tests,Require-Bundle,org.junit,Open +eclipse.jdt.core,https://github.com/eclipse-jdt/eclipse.jdt.core,eclipse.jdt.core/org.eclipse.jdt.apt.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.apt.tests,Require-Bundle,org.junit,Open +eclipse.jdt.core,https://github.com/eclipse-jdt/eclipse.jdt.core,eclipse.jdt.core/org.eclipse.jdt.compiler.apt.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.compiler.apt.tests,Require-Bundle,org.junit,Open +eclipse.jdt.core,https://github.com/eclipse-jdt/eclipse.jdt.core,eclipse.jdt.core/org.eclipse.jdt.compiler.tool.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.compiler.tool.tests,Require-Bundle,org.junit,Open +eclipse.jdt.debug,https://github.com/eclipse-jdt/eclipse.jdt.debug,eclipse.jdt.debug/org.eclipse.jdt.debug.jdi.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.debug.jdi.tests,Require-Bundle,org.junit,Open +eclipse.jdt.debug,https://github.com/eclipse-jdt/eclipse.jdt.debug,eclipse.jdt.debug/org.eclipse.jdt.debug.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.debug.tests,Require-Bundle,org.junit,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.api,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.api.extension,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.migrationsupport,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.migrationsupport.conditions,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.migrationsupport.rules,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.params,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.params.aggregator,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.params.converter,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.params.provider,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.jupiter.params.support,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.platform.suite.api,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.platform.suite.commons,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Import-Package,org.junit.platform.suite.engine,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.text.tests,Require-Bundle,org.junit,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.api,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.api.extension,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.migrationsupport,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.migrationsupport.conditions,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.migrationsupport.rules,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.params,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.params.aggregator,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.params.converter,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.params.provider,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.jupiter.params.support,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.platform.suite.api,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.platform.suite.commons,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Import-Package,org.junit.platform.suite.engine,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests.refactoring,Require-Bundle,org.junit,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.api,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.api.extension,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.migrationsupport,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.migrationsupport.conditions,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.migrationsupport.rules,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.params,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.params.aggregator,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.params.converter,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.params.provider,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.jupiter.params.support,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.platform.suite.api,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.platform.suite.commons,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Import-Package,org.junit.platform.suite.engine,Open +eclipse.jdt.ui,https://github.com/eclipse-jdt/eclipse.jdt.ui,eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF,org.eclipse.jdt.ui.tests,Require-Bundle,org.junit,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF,org.eclipse.pde.api.tools.tests,Import-Package,junit.framework,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF,org.eclipse.pde.api.tools.tests,Import-Package,org.junit,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF,org.eclipse.pde.api.tools.tests,Import-Package,org.junit.runner,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF,org.eclipse.pde.api.tools.tests,Import-Package,org.junit.runners,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/build/org.eclipse.pde.build.tests/META-INF/MANIFEST.MF,org.eclipse.pde.build.tests,Import-Package,org.junit,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/build/org.eclipse.pde.build.tests/META-INF/MANIFEST.MF,org.eclipse.pde.build.tests,Import-Package,org.junit.runner,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/build/org.eclipse.pde.build.tests/META-INF/MANIFEST.MF,org.eclipse.pde.build.tests,Import-Package,org.junit.runners,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ds/org.eclipse.pde.ds.annotations.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ds.annotations.tests,Import-Package,org.junit,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ds/org.eclipse.pde.ds.annotations.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ds.annotations.tests,Import-Package,org.junit.runner,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ds/org.eclipse.pde.ds.annotations.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ds.annotations.tests,Import-Package,org.junit.runners,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ua/org.eclipse.pde.ua.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ua.tests,Import-Package,org.junit,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ua/org.eclipse.pde.ua.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ua.tests,Import-Package,org.junit.runner,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ua/org.eclipse.pde.ua.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ua.tests,Import-Package,org.junit.runners,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.genericeditor.extension.tests/META-INF/MANIFEST.MF,org.eclipse.pde.genericeditor.extension.tests,Import-Package,org.junit,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.genericeditor.extension.tests/META-INF/MANIFEST.MF,org.eclipse.pde.genericeditor.extension.tests,Import-Package,org.junit.runner,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.genericeditor.extension.tests/META-INF/MANIFEST.MF,org.eclipse.pde.genericeditor.extension.tests,Import-Package,org.junit.runners,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.junit.runtime.tests/META-INF/MANIFEST.MF,org.eclipse.pde.junit.runtime.tests,Import-Package,org.junit,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.junit.runtime.tests/META-INF/MANIFEST.MF,org.eclipse.pde.junit.runtime.tests,Import-Package,org.junit.rules,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.junit.runtime.tests/META-INF/MANIFEST.MF,org.eclipse.pde.junit.runtime.tests,Import-Package,org.junit.runner,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.junit.runtime.tests/META-INF/MANIFEST.MF,org.eclipse.pde.junit.runtime.tests,Import-Package,org.junit.runners,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.ui.templates.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ui.templates.tests,Import-Package,org.junit,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.ui.templates.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ui.templates.tests,Import-Package,org.junit.runner,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.ui.templates.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ui.templates.tests,Import-Package,org.junit.runners,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.ui.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ui.tests,Import-Package,org.junit,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.ui.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ui.tests,Import-Package,org.junit.rules,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.ui.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ui.tests,Import-Package,org.junit.runner,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.ui.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ui.tests,Import-Package,org.junit.runners,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.ui.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ui.tests,Import-Package,org.junit.runners.model,Open +eclipse.pde,https://github.com/eclipse-pde/eclipse.pde,eclipse.pde/ui/org.eclipse.pde.ui.tests/META-INF/MANIFEST.MF,org.eclipse.pde.ui.tests,Require-Bundle,org.junit.source,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/ant/org.eclipse.ant.tests.ui/META-INF/MANIFEST.MF,org.eclipse.ant.tests.ui,Require-Bundle,org.junit,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/debug/org.eclipse.debug.tests/META-INF/MANIFEST.MF,org.eclipse.debug.tests,Require-Bundle,org.junit,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/debug/org.eclipse.debug.ui.launchview.tests/META-INF/MANIFEST.MF,org.eclipse.debug.ui.launchview.tests,Require-Bundle,org.junit,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/resources/tests/org.eclipse.core.tests.resources.saveparticipant1/META-INF/MANIFEST.MF,org.eclipse.core.tests.resources.saveparticipant1,Require-Bundle,org.junit,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/resources/tests/org.eclipse.core.tests.resources.saveparticipant2/META-INF/MANIFEST.MF,org.eclipse.core.tests.resources.saveparticipant2,Require-Bundle,org.junit,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/resources/tests/org.eclipse.core.tests.resources.saveparticipant3/META-INF/MANIFEST.MF,org.eclipse.core.tests.resources.saveparticipant3,Require-Bundle,org.junit,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/resources/tests/org.eclipse.core.tests.resources/META-INF/MANIFEST.MF,org.eclipse.core.tests.resources,Require-Bundle,org.junit,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/runtime/tests/org.eclipse.core.tests.harness/META-INF/MANIFEST.MF,org.eclipse.core.tests.harness,Require-Bundle,org.junit,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/runtime/tests/org.eclipse.core.tests.runtime/META-INF/MANIFEST.MF,org.eclipse.core.tests.runtime,Require-Bundle,org.junit,Open +eclipse.platform,https://github.com/eclipse-platform/eclipse.platform,eclipse.platform/team/examples/org.eclipse.compare.examples.xml/META-INF/MANIFEST.MF,org.eclipse.compare.examples.xml,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.jface.tests.databinding.conformance/META-INF/MANIFEST.MF,org.eclipse.jface.tests.databinding.conformance,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.jface.tests.databinding/META-INF/MANIFEST.MF,org.eclipse.jface.tests.databinding,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ltk.core.refactoring.tests/META-INF/MANIFEST.MF,org.eclipse.ltk.core.refactoring.tests,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ltk.ui.refactoring.tests/META-INF/MANIFEST.MF,org.eclipse.ltk.ui.refactoring.tests,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ui.ide.application.tests/META-INF/MANIFEST.MF,org.eclipse.ui.ide.application.tests,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ui.tests.browser/META-INF/MANIFEST.MF,org.eclipse.ui.tests.browser,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ui.tests.harness/META-INF/MANIFEST.MF,org.eclipse.ui.tests.harness,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ui.tests.navigator/META-INF/MANIFEST.MF,org.eclipse.ui.tests.navigator,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ui.tests.performance/META-INF/MANIFEST.MF,org.eclipse.ui.tests.performance,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ui.tests.rcp/META-INF/MANIFEST.MF,org.eclipse.ui.tests.rcp,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ui.tests.views.properties.tabbed/META-INF/MANIFEST.MF,org.eclipse.ui.tests.views.properties.tabbed,Require-Bundle,org.junit,Open +eclipse.platform.ui,https://github.com/eclipse-platform/eclipse.platform.ui,eclipse.platform.ui/tests/org.eclipse.ui.tests/META-INF/MANIFEST.MF,org.eclipse.ui.tests,Require-Bundle,org.junit,Open +equinox,https://github.com/eclipse-equinox/equinox,equinox/bundles/org.eclipse.equinox.common.tests/META-INF/MANIFEST.MF,org.eclipse.equinox.common.tests,Require-Bundle,org.junit,Open +equinox,https://github.com/eclipse-equinox/equinox,equinox/bundles/org.eclipse.equinox.ds.tests/META-INF/MANIFEST.MF,org.eclipse.equinox.ds.tests,Require-Bundle,org.junit,Open +equinox,https://github.com/eclipse-equinox/equinox,equinox/bundles/org.eclipse.equinox.preferences.tests/META-INF/MANIFEST.MF,org.eclipse.equinox.preferences.tests,Require-Bundle,org.junit,Open +equinox,https://github.com/eclipse-equinox/equinox,equinox/bundles/org.eclipse.equinox.security.tests/META-INF/MANIFEST.MF,org.eclipse.equinox.security.tests,Require-Bundle,org.junit,Open +equinox,https://github.com/eclipse-equinox/equinox,equinox/bundles/org.eclipse.osgi.tests/META-INF/MANIFEST.MF,org.eclipse.osgi.tests,Require-Bundle,org.junit,Open diff --git a/JUNIT_VERSION_RANGE_AUDIT.md b/JUNIT_VERSION_RANGE_AUDIT.md new file mode 100644 index 00000000000..a2757ffd639 --- /dev/null +++ b/JUNIT_VERSION_RANGE_AUDIT.md @@ -0,0 +1,436 @@ +# JUnit Version Range Audit Report +## Summary +This report identifies MANIFEST.MF files in the Eclipse Platform repository and its submodules that have missing version ranges on JUnit bundles and package imports. +**Total MANIFEST.MF files scanned:** 1165 +**Total issues found:** 119 +**Affected repositories:** 8 + +## Overview by Repository +| Repository | Issues | +|------------|--------| +| [Main Repository (eclipse.platform.releng)](https://github.com/laeubi/eclipse.platform.releng.aggregator) | 15 | +| [eclipse.jdt.core](https://github.com/eclipse-jdt/eclipse.jdt.core) | 4 | +| [eclipse.jdt.debug](https://github.com/eclipse-jdt/eclipse.jdt.debug) | 2 | +| [eclipse.jdt.ui](https://github.com/eclipse-jdt/eclipse.jdt.ui) | 42 | +| [eclipse.pde](https://github.com/eclipse-pde/eclipse.pde) | 29 | +| [eclipse.platform](https://github.com/eclipse-platform/eclipse.platform) | 10 | +| [eclipse.platform.ui](https://github.com/eclipse-platform/eclipse.platform.ui) | 12 | +| [equinox](https://github.com/eclipse-equinox/equinox) | 5 | + +## Detailed Issues by Repository + +### [Main Repository (eclipse.platform.releng)](https://github.com/laeubi/eclipse.platform.releng.aggregator) +**Total issues in this repository:** 15 + +#### `eclipse.platform.releng/bundles/org.eclipse.ant.optional.junit/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ant.optional.junit` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.releng/bundles/org.eclipse.releng.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.releng.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.releng/bundles/org.eclipse.test.performance/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.test.performance` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +**Missing `version` on Import-Package:** +- `org.junit.jupiter.api` +- `org.junit.platform.suite.api` + +#### `eclipse.platform.releng/bundles/org.eclipse.test/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.test` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +**Missing `version` on Import-Package:** +- `org.junit.jupiter.api` +- `org.junit.platform.engine` +- `org.junit.platform.engine.discovery` +- `org.junit.platform.engine.reporting` +- `org.junit.platform.engine.support.descriptor` +- `org.junit.platform.launcher` +- `org.junit.platform.launcher.core` +- `org.junit.platform.commons` +- `org.junit.jupiter.engine` + +### [eclipse.jdt.core](https://github.com/eclipse-jdt/eclipse.jdt.core) +**Total issues in this repository:** 4 + +#### `eclipse.jdt.core/org.eclipse.jdt.apt.pluggable.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jdt.apt.pluggable.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.jdt.core/org.eclipse.jdt.apt.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jdt.apt.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.jdt.core/org.eclipse.jdt.compiler.apt.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jdt.compiler.apt.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.jdt.core/org.eclipse.jdt.compiler.tool.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jdt.compiler.tool.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +### [eclipse.jdt.debug](https://github.com/eclipse-jdt/eclipse.jdt.debug) +**Total issues in this repository:** 2 + +#### `eclipse.jdt.debug/org.eclipse.jdt.debug.jdi.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jdt.debug.jdi.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.jdt.debug/org.eclipse.jdt.debug.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jdt.debug.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +### [eclipse.jdt.ui](https://github.com/eclipse-jdt/eclipse.jdt.ui) +**Total issues in this repository:** 42 + +#### `eclipse.jdt.ui/org.eclipse.jdt.text.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jdt.text.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +**Missing `version` on Import-Package:** +- `org.junit.jupiter.api` +- `org.junit.jupiter.api.extension` +- `org.junit.jupiter.migrationsupport` +- `org.junit.jupiter.migrationsupport.conditions` +- `org.junit.jupiter.migrationsupport.rules` +- `org.junit.jupiter.params` +- `org.junit.jupiter.params.aggregator` +- `org.junit.jupiter.params.converter` +- `org.junit.jupiter.params.provider` +- `org.junit.jupiter.params.support` +- `org.junit.platform.suite.api` +- `org.junit.platform.suite.commons` +- `org.junit.platform.suite.engine` + +#### `eclipse.jdt.ui/org.eclipse.jdt.ui.tests.refactoring/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jdt.ui.tests.refactoring` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +**Missing `version` on Import-Package:** +- `org.junit.jupiter.api` +- `org.junit.jupiter.api.extension` +- `org.junit.jupiter.migrationsupport` +- `org.junit.jupiter.migrationsupport.conditions` +- `org.junit.jupiter.migrationsupport.rules` +- `org.junit.jupiter.params` +- `org.junit.jupiter.params.aggregator` +- `org.junit.jupiter.params.converter` +- `org.junit.jupiter.params.provider` +- `org.junit.jupiter.params.support` +- `org.junit.platform.suite.api` +- `org.junit.platform.suite.commons` +- `org.junit.platform.suite.engine` + +#### `eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jdt.ui.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +**Missing `version` on Import-Package:** +- `org.junit.jupiter.api` +- `org.junit.jupiter.api.extension` +- `org.junit.jupiter.migrationsupport` +- `org.junit.jupiter.migrationsupport.conditions` +- `org.junit.jupiter.migrationsupport.rules` +- `org.junit.jupiter.params` +- `org.junit.jupiter.params.aggregator` +- `org.junit.jupiter.params.converter` +- `org.junit.jupiter.params.provider` +- `org.junit.jupiter.params.support` +- `org.junit.platform.suite.api` +- `org.junit.platform.suite.commons` +- `org.junit.platform.suite.engine` + +### [eclipse.pde](https://github.com/eclipse-pde/eclipse.pde) +**Total issues in this repository:** 29 + +#### `eclipse.pde/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.pde.api.tools.tests` + +**Missing `version` on Import-Package:** +- `junit.framework` +- `org.junit` +- `org.junit.runner` +- `org.junit.runners` + +#### `eclipse.pde/build/org.eclipse.pde.build.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.pde.build.tests` + +**Missing `version` on Import-Package:** +- `org.junit` +- `org.junit.runner` +- `org.junit.runners` + +#### `eclipse.pde/ds/org.eclipse.pde.ds.annotations.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.pde.ds.annotations.tests` + +**Missing `version` on Import-Package:** +- `org.junit` +- `org.junit.runner` +- `org.junit.runners` + +#### `eclipse.pde/ua/org.eclipse.pde.ua.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.pde.ua.tests` + +**Missing `version` on Import-Package:** +- `org.junit` +- `org.junit.runner` +- `org.junit.runners` + +#### `eclipse.pde/ui/org.eclipse.pde.genericeditor.extension.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.pde.genericeditor.extension.tests` + +**Missing `version` on Import-Package:** +- `org.junit` +- `org.junit.runner` +- `org.junit.runners` + +#### `eclipse.pde/ui/org.eclipse.pde.junit.runtime.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.pde.junit.runtime.tests` + +**Missing `version` on Import-Package:** +- `org.junit` +- `org.junit.rules` +- `org.junit.runner` +- `org.junit.runners` + +#### `eclipse.pde/ui/org.eclipse.pde.ui.templates.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.pde.ui.templates.tests` + +**Missing `version` on Import-Package:** +- `org.junit` +- `org.junit.runner` +- `org.junit.runners` + +#### `eclipse.pde/ui/org.eclipse.pde.ui.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.pde.ui.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit.source` + +**Missing `version` on Import-Package:** +- `org.junit` +- `org.junit.rules` +- `org.junit.runner` +- `org.junit.runners` +- `org.junit.runners.model` + +### [eclipse.platform](https://github.com/eclipse-platform/eclipse.platform) +**Total issues in this repository:** 10 + +#### `eclipse.platform/ant/org.eclipse.ant.tests.ui/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ant.tests.ui` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform/debug/org.eclipse.debug.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.debug.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform/debug/org.eclipse.debug.ui.launchview.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.debug.ui.launchview.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform/resources/tests/org.eclipse.core.tests.resources.saveparticipant1/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.core.tests.resources.saveparticipant1` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform/resources/tests/org.eclipse.core.tests.resources.saveparticipant2/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.core.tests.resources.saveparticipant2` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform/resources/tests/org.eclipse.core.tests.resources.saveparticipant3/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.core.tests.resources.saveparticipant3` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform/resources/tests/org.eclipse.core.tests.resources/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.core.tests.resources` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform/runtime/tests/org.eclipse.core.tests.harness/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.core.tests.harness` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform/runtime/tests/org.eclipse.core.tests.runtime/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.core.tests.runtime` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform/team/examples/org.eclipse.compare.examples.xml/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.compare.examples.xml` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +### [eclipse.platform.ui](https://github.com/eclipse-platform/eclipse.platform.ui) +**Total issues in this repository:** 12 + +#### `eclipse.platform.ui/tests/org.eclipse.jface.tests.databinding.conformance/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jface.tests.databinding.conformance` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.jface.tests.databinding/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.jface.tests.databinding` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ltk.core.refactoring.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ltk.core.refactoring.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ltk.ui.refactoring.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ltk.ui.refactoring.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ui.ide.application.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ui.ide.application.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ui.tests.browser/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ui.tests.browser` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ui.tests.harness/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ui.tests.harness` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ui.tests.navigator/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ui.tests.navigator` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ui.tests.performance/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ui.tests.performance` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ui.tests.rcp/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ui.tests.rcp` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ui.tests.views.properties.tabbed/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ui.tests.views.properties.tabbed` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `eclipse.platform.ui/tests/org.eclipse.ui.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.ui.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +### [equinox](https://github.com/eclipse-equinox/equinox) +**Total issues in this repository:** 5 + +#### `equinox/bundles/org.eclipse.equinox.common.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.equinox.common.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `equinox/bundles/org.eclipse.equinox.ds.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.equinox.ds.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `equinox/bundles/org.eclipse.equinox.preferences.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.equinox.preferences.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `equinox/bundles/org.eclipse.equinox.security.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.equinox.security.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +#### `equinox/bundles/org.eclipse.osgi.tests/META-INF/MANIFEST.MF` +**Bundle:** `org.eclipse.osgi.tests` + +**Missing `bundle-version` on Require-Bundle:** +- `org.junit` + +## Recommendations + +### For Require-Bundle entries +Add `bundle-version` attribute with appropriate version range. Examples: +``` +Require-Bundle: org.junit;bundle-version="[4.13.0,5.0.0)" +Require-Bundle: org.junit;bundle-version="3.8.1" +``` + +### For Import-Package entries +Add `version` attribute with appropriate version range. Examples: +``` +Import-Package: org.junit.jupiter.api;version="[5.8.0,6.0.0)" +Import-Package: org.junit.platform.engine;version="[1.8.0,2.0.0)" +``` + +## Notes +- This audit is part of the JUnit 6 migration effort +- Version ranges help ensure compatibility and prevent issues when JUnit versions change +- Each repository should be addressed individually to maintain proper version control