diff options
Diffstat (limited to 'plugins')
66 files changed, 909 insertions, 71 deletions
diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/.settings/org.eclipse.core.resources.prefs index 2f874710f1..f06cc0ffca 100644 --- a/plugins/org.eclipse.emf.cdo.releng.version.tests/.settings/org.eclipse.core.resources.prefs +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/.settings/org.eclipse.core.resources.prefs @@ -1,9 +1,3 @@ eclipse.preferences.version=1 encoding/.project=UTF-8 encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 -encoding//tests/00001-NoProblemAfterNewBaseline/clean/com.foo.license-feature/.project=UTF-8 -encoding//tests/00001-NoProblemAfterNewBaseline/clean/com.foo.project1-feature/.project=UTF-8 -encoding//tests/00001-NoProblemAfterNewBaseline/clean/com.foo.project1/.project=UTF-8 -encoding//tests/00001-NoProblemAfterNewBaseline/clean/com.foo.releng/.project=UTF-8 -encoding//tests/00002-ProblemAfterChange/clean/com.foo.license-feature/.project=UTF-8 -encoding//tests/00002-ProblemAfterChange/clean/com.foo.project1/.project=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/src/org/eclipse/emf/cdo/releng/version/tests/VersionBuilderTest.java b/plugins/org.eclipse.emf.cdo.releng.version.tests/src/org/eclipse/emf/cdo/releng/version/tests/VersionBuilderTest.java index 6202a14bdf..9ce20d7abd 100644 --- a/plugins/org.eclipse.emf.cdo.releng.version.tests/src/org/eclipse/emf/cdo/releng/version/tests/VersionBuilderTest.java +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/src/org/eclipse/emf/cdo/releng/version/tests/VersionBuilderTest.java @@ -51,9 +51,9 @@ public class VersionBuilderTest extends TestCase private static final IWorkspaceRoot ROOT = WORKSPACE.getRoot(); - private static final File WORKSPACE_FILE = ROOT.getLocation().toFile(); + private static final File WORKSPACE_FOLDER = ROOT.getLocation().toFile(); - private static final int TRIM_LENGTH = WORKSPACE_FILE.getAbsolutePath().length() + 1; + private static final int TRIM_LENGTH = WORKSPACE_FOLDER.getAbsolutePath().length(); private static final String DELETE_SUFFIX = "-DELETE"; @@ -149,7 +149,7 @@ public class VersionBuilderTest extends TestCase project.delete(true, null); } - for (File file : WORKSPACE_FILE.listFiles()) + for (File file : WORKSPACE_FOLDER.listFiles()) { if (file.isDirectory() && !".metadata".equals(file.getName())) { @@ -169,9 +169,9 @@ public class VersionBuilderTest extends TestCase { try { - updateWorkspace(phase, WORKSPACE_FILE, 0); + updateWorkspace(phase, WORKSPACE_FOLDER, 0); - for (File file : WORKSPACE_FILE.listFiles()) + for (File file : WORKSPACE_FOLDER.listFiles()) { String name = file.getName(); if (file.isDirectory() && !".metadata".equals(name)) @@ -196,7 +196,13 @@ public class VersionBuilderTest extends TestCase } } - // TODO Remove deleted projects + for (IProject project : ROOT.getProjects()) + { + if (phase.getChild(project.getName() + DELETE_SUFFIX) != null) + { + project.delete(true, null); + } + } } catch (CoreException ex) { @@ -216,9 +222,10 @@ public class VersionBuilderTest extends TestCase private void updateWorkspace(BundleFile source, File target, int level) throws Throwable { + String relativePath = getRelativePath(target); if (source.getName().endsWith(DELETE_SUFFIX)) { - msg("- " + getRelativePath(target)); + msg("- " + relativePath.substring(0, relativePath.length() - DELETE_SUFFIX.length())); VersionUtil.delete(target); return; } @@ -227,7 +234,7 @@ public class VersionBuilderTest extends TestCase { if (!target.exists()) { - msg("+ " + getRelativePath(target)); + msg("+ " + relativePath); target.mkdir(); } @@ -241,11 +248,11 @@ public class VersionBuilderTest extends TestCase { if (!target.exists()) { - msg("+ " + getRelativePath(target)); + msg("+ " + relativePath); } else { - msg("* " + getRelativePath(target)); + msg("* " + relativePath); } source.copyTo(target); diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/build.markers b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/build.markers new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/build.markers diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/.project new file mode 100644 index 0000000000..86680ed160 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/.project @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.project2-feature</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.pde.FeatureBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.emf.cdo.releng.version.VersionBuilder</name> + <arguments> + <dictionary> + <key>release.path</key> + <value>/com.foo.releng/release.xml</value> + </dictionary> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.FeatureNature</nature> + <nature>org.eclipse.emf.cdo.releng.version.VersionNature</nature> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/.settings/org.eclipse.pde.prefs new file mode 100644 index 0000000000..c6b96bb45e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/.settings/org.eclipse.pde.prefs @@ -0,0 +1,31 @@ +#Thu Feb 04 09:44:24 CET 2010 +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.internal=1 +compilers.p.missing-packages=1 +compilers.p.missing-version-export-package=1 +compilers.p.missing-version-import-package=1 +compilers.p.missing-version-require-bundle=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/build.properties new file mode 100644 index 0000000000..64f93a9f0b --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/build.properties @@ -0,0 +1 @@ +bin.includes = feature.xml diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/feature.xml b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/feature.xml new file mode 100644 index 0000000000..130ca37963 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.project2-feature/feature.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<feature + id="com.foo.project2" + label="Some name" + version="1.0.0.qualifier" + provider-name="Foo.com"> + + <description> + Some description + </description> + + <copyright url="%copyrightURL"> + Some copyright + </copyright> + + <license url="%licenseURL"> + Some license + </license> + + <url> + <update label="Some update site name" url="http://www.foo.com"/> + <discovery label="Some update site name" url="http://www.foo.com"/> + </url> + + <includes + id="com.foo.project1" + version="0.0.0"/> + +</feature> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/.project new file mode 100644 index 0000000000..2398ee40da --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/.project @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.releng</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + </buildSpec> + <natures> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/build.properties new file mode 100644 index 0000000000..7594fab8d5 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/build.properties @@ -0,0 +1,2 @@ +bin.includes = META-INF/,\ + . diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/release.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/release.properties new file mode 100644 index 0000000000..fd8bdd3648 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/clean/com.foo.releng/release.properties @@ -0,0 +1 @@ +root.projects = com.foo.project2-feature diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/build.markers b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/build.markers new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/build.markers diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/.project new file mode 100644 index 0000000000..d8eef10672 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/.project @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.project1-feature</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.pde.FeatureBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.emf.cdo.releng.version.VersionBuilder</name> + <arguments> + <dictionary> + <key>release.path</key> + <value>/com.foo.releng/release.xml</value> + </dictionary> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.FeatureNature</nature> + <nature>org.eclipse.emf.cdo.releng.version.VersionNature</nature> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/.settings/org.eclipse.pde.prefs new file mode 100644 index 0000000000..c6b96bb45e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/.settings/org.eclipse.pde.prefs @@ -0,0 +1,31 @@ +#Thu Feb 04 09:44:24 CET 2010 +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.internal=1 +compilers.p.missing-packages=1 +compilers.p.missing-version-export-package=1 +compilers.p.missing-version-import-package=1 +compilers.p.missing-version-require-bundle=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/build.properties new file mode 100644 index 0000000000..64f93a9f0b --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/build.properties @@ -0,0 +1 @@ +bin.includes = feature.xml diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/feature.xml b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/feature.xml new file mode 100644 index 0000000000..90b7ce7077 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1-feature/feature.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<feature + id="com.foo.project1" + label="Some name" + version="1.0.0.qualifier" + provider-name="Foo.com"> + + <description> + Some description + </description> + + <copyright url="%copyrightURL"> + Some copyright + </copyright> + + <license url="%licenseURL"> + Some license + </license> + + <url> + <update label="Some update site name" url="http://www.foo.com"/> + <discovery label="Some update site name" url="http://www.foo.com"/> + </url> + + <plugin + id="com.foo.project1" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + +</feature> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/.project new file mode 100644 index 0000000000..6ea18fa139 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/.project @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.project1</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.emf.cdo.releng.version.VersionBuilder</name> + <arguments> + <dictionary> + <key>release.path</key> + <value>/com.foo.releng/release.xml</value> + </dictionary> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.emf.cdo.releng.version.VersionNature</nature> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/.settings/org.eclipse.pde.prefs new file mode 100644 index 0000000000..c6b96bb45e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/.settings/org.eclipse.pde.prefs @@ -0,0 +1,31 @@ +#Thu Feb 04 09:44:24 CET 2010 +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.internal=1 +compilers.p.missing-packages=1 +compilers.p.missing-version-export-package=1 +compilers.p.missing-version-import-package=1 +compilers.p.missing-version-require-bundle=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/META-INF/MANIFEST.MF new file mode 100644 index 0000000000..698c5f6214 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/META-INF/MANIFEST.MF @@ -0,0 +1,6 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-SymbolicName: com.foo.project1 +Bundle-Version: 1.0.0.qualifier +Bundle-Name: Some name +Bundle-Vendor: Foo.com diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/build.properties new file mode 100644 index 0000000000..7594fab8d5 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00004-NoProblemForNewResolve/incremental/com.foo.project1/build.properties @@ -0,0 +1,2 @@ +bin.includes = META-INF/,\ + . diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/build.markers b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/build.markers new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/build.markers diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/.project new file mode 100644 index 0000000000..d8eef10672 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/.project @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.project1-feature</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.pde.FeatureBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.emf.cdo.releng.version.VersionBuilder</name> + <arguments> + <dictionary> + <key>release.path</key> + <value>/com.foo.releng/release.xml</value> + </dictionary> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.FeatureNature</nature> + <nature>org.eclipse.emf.cdo.releng.version.VersionNature</nature> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/.settings/org.eclipse.pde.prefs new file mode 100644 index 0000000000..c6b96bb45e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/.settings/org.eclipse.pde.prefs @@ -0,0 +1,31 @@ +#Thu Feb 04 09:44:24 CET 2010 +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.internal=1 +compilers.p.missing-packages=1 +compilers.p.missing-version-export-package=1 +compilers.p.missing-version-import-package=1 +compilers.p.missing-version-require-bundle=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/build.properties new file mode 100644 index 0000000000..64f93a9f0b --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/build.properties @@ -0,0 +1 @@ +bin.includes = feature.xml diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/feature.xml b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/feature.xml new file mode 100644 index 0000000000..90b7ce7077 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1-feature/feature.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<feature + id="com.foo.project1" + label="Some name" + version="1.0.0.qualifier" + provider-name="Foo.com"> + + <description> + Some description + </description> + + <copyright url="%copyrightURL"> + Some copyright + </copyright> + + <license url="%licenseURL"> + Some license + </license> + + <url> + <update label="Some update site name" url="http://www.foo.com"/> + <discovery label="Some update site name" url="http://www.foo.com"/> + </url> + + <plugin + id="com.foo.project1" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + +</feature> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/.project new file mode 100644 index 0000000000..6ea18fa139 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/.project @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.project1</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.emf.cdo.releng.version.VersionBuilder</name> + <arguments> + <dictionary> + <key>release.path</key> + <value>/com.foo.releng/release.xml</value> + </dictionary> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.emf.cdo.releng.version.VersionNature</nature> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/.settings/org.eclipse.pde.prefs new file mode 100644 index 0000000000..c6b96bb45e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/.settings/org.eclipse.pde.prefs @@ -0,0 +1,31 @@ +#Thu Feb 04 09:44:24 CET 2010 +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.internal=1 +compilers.p.missing-packages=1 +compilers.p.missing-version-export-package=1 +compilers.p.missing-version-import-package=1 +compilers.p.missing-version-require-bundle=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/META-INF/MANIFEST.MF new file mode 100644 index 0000000000..698c5f6214 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/META-INF/MANIFEST.MF @@ -0,0 +1,6 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-SymbolicName: com.foo.project1 +Bundle-Version: 1.0.0.qualifier +Bundle-Name: Some name +Bundle-Vendor: Foo.com diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/build.properties new file mode 100644 index 0000000000..7594fab8d5 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project1/build.properties @@ -0,0 +1,2 @@ +bin.includes = META-INF/,\ + . diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/.project new file mode 100644 index 0000000000..86680ed160 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/.project @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.project2-feature</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.pde.FeatureBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.emf.cdo.releng.version.VersionBuilder</name> + <arguments> + <dictionary> + <key>release.path</key> + <value>/com.foo.releng/release.xml</value> + </dictionary> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.FeatureNature</nature> + <nature>org.eclipse.emf.cdo.releng.version.VersionNature</nature> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/.settings/org.eclipse.pde.prefs new file mode 100644 index 0000000000..c6b96bb45e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/.settings/org.eclipse.pde.prefs @@ -0,0 +1,31 @@ +#Thu Feb 04 09:44:24 CET 2010 +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.internal=1 +compilers.p.missing-packages=1 +compilers.p.missing-version-export-package=1 +compilers.p.missing-version-import-package=1 +compilers.p.missing-version-require-bundle=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/build.properties new file mode 100644 index 0000000000..64f93a9f0b --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/build.properties @@ -0,0 +1 @@ +bin.includes = feature.xml diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/feature.xml b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/feature.xml new file mode 100644 index 0000000000..130ca37963 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.project2-feature/feature.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<feature + id="com.foo.project2" + label="Some name" + version="1.0.0.qualifier" + provider-name="Foo.com"> + + <description> + Some description + </description> + + <copyright url="%copyrightURL"> + Some copyright + </copyright> + + <license url="%licenseURL"> + Some license + </license> + + <url> + <update label="Some update site name" url="http://www.foo.com"/> + <discovery label="Some update site name" url="http://www.foo.com"/> + </url> + + <includes + id="com.foo.project1" + version="0.0.0"/> + +</feature> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/.project new file mode 100644 index 0000000000..2398ee40da --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/.project @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.releng</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + </buildSpec> + <natures> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/build.properties new file mode 100644 index 0000000000..7594fab8d5 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/build.properties @@ -0,0 +1,2 @@ +bin.includes = META-INF/,\ + . diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/release.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/release.properties new file mode 100644 index 0000000000..fd8bdd3648 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/clean/com.foo.releng/release.properties @@ -0,0 +1 @@ +root.projects = com.foo.project2-feature diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/incremental/build.markers b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/incremental/build.markers new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00005-NoProblemForUnresolved/incremental/build.markers diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/build.markers b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/build.markers new file mode 100644 index 0000000000..8f86a3351c --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/build.markers @@ -0,0 +1,8 @@ +Marker + <resource> = com.foo.project1/META-INF/MANIFEST.MF + <charStart> = (3,23) + <charEnd> = (4,1) + <severity> = ERROR + <message> = Plug-in 'com.foo.project1' is not referenced by any other feature + problemType = unreferenced.element + FIX = Mark as root project (Add 'com.foo.project1' to the root.projects property of /com.foo.releng/release.properties) diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/build.resolutions b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/build.resolutions new file mode 100644 index 0000000000..8f86a3351c --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/build.resolutions @@ -0,0 +1,8 @@ +Marker + <resource> = com.foo.project1/META-INF/MANIFEST.MF + <charStart> = (3,23) + <charEnd> = (4,1) + <severity> = ERROR + <message> = Plug-in 'com.foo.project1' is not referenced by any other feature + problemType = unreferenced.element + FIX = Mark as root project (Add 'com.foo.project1' to the root.projects property of /com.foo.releng/release.properties) diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/.project new file mode 100644 index 0000000000..d8eef10672 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/.project @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.project1-feature</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.pde.FeatureBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.emf.cdo.releng.version.VersionBuilder</name> + <arguments> + <dictionary> + <key>release.path</key> + <value>/com.foo.releng/release.xml</value> + </dictionary> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.FeatureNature</nature> + <nature>org.eclipse.emf.cdo.releng.version.VersionNature</nature> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/.settings/org.eclipse.pde.prefs new file mode 100644 index 0000000000..c6b96bb45e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/.settings/org.eclipse.pde.prefs @@ -0,0 +1,31 @@ +#Thu Feb 04 09:44:24 CET 2010 +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.internal=1 +compilers.p.missing-packages=1 +compilers.p.missing-version-export-package=1 +compilers.p.missing-version-import-package=1 +compilers.p.missing-version-require-bundle=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/build.properties new file mode 100644 index 0000000000..64f93a9f0b --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/build.properties @@ -0,0 +1 @@ +bin.includes = feature.xml diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/feature.xml b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/feature.xml new file mode 100644 index 0000000000..1af2a29894 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1-feature/feature.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<feature + id="com.foo.project1" + label="Some name" + version="1.0.0.qualifier" + provider-name="Foo.com"> + + <description> + Some description + </description> + + <copyright url="%copyrightURL"> + Some copyright + </copyright> + + <license url="%licenseURL"> + Some license + </license> + + <url> + <update label="Some update site name" url="http://www.foo.com"/> + <discovery label="Some update site name" url="http://www.foo.com"/> + </url> + +</feature> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/.project new file mode 100644 index 0000000000..6ea18fa139 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/.project @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.project1</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.emf.cdo.releng.version.VersionBuilder</name> + <arguments> + <dictionary> + <key>release.path</key> + <value>/com.foo.releng/release.xml</value> + </dictionary> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.emf.cdo.releng.version.VersionNature</nature> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/.settings/org.eclipse.pde.prefs new file mode 100644 index 0000000000..c6b96bb45e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/.settings/org.eclipse.pde.prefs @@ -0,0 +1,31 @@ +#Thu Feb 04 09:44:24 CET 2010 +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.internal=1 +compilers.p.missing-packages=1 +compilers.p.missing-version-export-package=1 +compilers.p.missing-version-import-package=1 +compilers.p.missing-version-require-bundle=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/META-INF/MANIFEST.MF new file mode 100644 index 0000000000..698c5f6214 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/META-INF/MANIFEST.MF @@ -0,0 +1,6 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-SymbolicName: com.foo.project1 +Bundle-Version: 1.0.0.qualifier +Bundle-Name: Some name +Bundle-Vendor: Foo.com diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/build.properties new file mode 100644 index 0000000000..7594fab8d5 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.project1/build.properties @@ -0,0 +1,2 @@ +bin.includes = META-INF/,\ + . diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/.project b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/.project new file mode 100644 index 0000000000..2398ee40da --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/.project @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>com.foo.releng</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + </buildSpec> + <natures> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..b02ec790ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +#Mon Jul 11 16:02:45 CEST 2011 +eclipse.preferences.version=1 +encoding//model/org.eclipse.emf.cdo.defs.ecorediag=UTF-8 diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/build.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/build.properties new file mode 100644 index 0000000000..7594fab8d5 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/build.properties @@ -0,0 +1,2 @@ +bin.includes = META-INF/,\ + . diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/release.properties b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/release.properties new file mode 100644 index 0000000000..d2fba970b1 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/clean/com.foo.releng/release.properties @@ -0,0 +1 @@ +root.projects = com.foo.project1-feature diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/incremental/build.markers b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/incremental/build.markers new file mode 100644 index 0000000000..89b8d49ba9 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/incremental/build.markers @@ -0,0 +1,21 @@ +Marker + <resource> = com.foo.project1-feature/feature.xml + <charStart> = (5,17) + <charEnd> = (5,22) + <severity> = ERROR + <message> = Version must be increased to 1.1.0 because the feature's references have changed + problemType = component.version + quickFixConfigureOption = ignore.feature.content.changes + quickFixPattern = feature.*?version\s*=\s*["'](\d+(\.\d+(\.\d+)?)?) + quickFixReplacement = 1.1.0 + FIX = Change the version (Change the version to 1.1.0) + FIX = Configure the project to ignore the problem (Set ignore.feature.content.changes = true in '/com.foo.project1-feature/.project') +Marker + <resource> = com.foo.project1-feature/feature.xml + <charStart> = (26,15) + <charEnd> = (26,31) + <severity> = WARNING + <message> = Plug-in reference 'com.foo.project1' has been added with 1.0.0 + problemType = component.version + quickFixPattern = [ \t\x0B\f]*<plugin\s+[^<]*id\s*=\s*["'](com\.foo\.project1)["'].*?/>([ \t\x0B\f]*[\n\r])* + FIX = Remove the reference () diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/incremental/build.resolutions b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/incremental/build.resolutions new file mode 100644 index 0000000000..89b8d49ba9 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/incremental/build.resolutions @@ -0,0 +1,21 @@ +Marker + <resource> = com.foo.project1-feature/feature.xml + <charStart> = (5,17) + <charEnd> = (5,22) + <severity> = ERROR + <message> = Version must be increased to 1.1.0 because the feature's references have changed + problemType = component.version + quickFixConfigureOption = ignore.feature.content.changes + quickFixPattern = feature.*?version\s*=\s*["'](\d+(\.\d+(\.\d+)?)?) + quickFixReplacement = 1.1.0 + FIX = Change the version (Change the version to 1.1.0) + FIX = Configure the project to ignore the problem (Set ignore.feature.content.changes = true in '/com.foo.project1-feature/.project') +Marker + <resource> = com.foo.project1-feature/feature.xml + <charStart> = (26,15) + <charEnd> = (26,31) + <severity> = WARNING + <message> = Plug-in reference 'com.foo.project1' has been added with 1.0.0 + problemType = component.version + quickFixPattern = [ \t\x0B\f]*<plugin\s+[^<]*id\s*=\s*["'](com\.foo\.project1)["'].*?/>([ \t\x0B\f]*[\n\r])* + FIX = Remove the reference () diff --git a/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/incremental/com.foo.project1-feature/feature.xml b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/incremental/com.foo.project1-feature/feature.xml new file mode 100644 index 0000000000..90b7ce7077 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.version.tests/tests/00006-NoRootProblemAfterAddingReference/incremental/com.foo.project1-feature/feature.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<feature + id="com.foo.project1" + label="Some name" + version="1.0.0.qualifier" + provider-name="Foo.com"> + + <description> + Some description + </description> + + <copyright url="%copyrightURL"> + Some copyright + </copyright> + + <license url="%licenseURL"> + Some license + </license> + + <url> + <update label="Some update site name" url="http://www.foo.com"/> + <discovery label="Some update site name" url="http://www.foo.com"/> + </url> + + <plugin + id="com.foo.project1" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + +</feature> diff --git a/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/internal/version/Element.java b/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/internal/version/Element.java index f0e8050efc..a6326296f5 100644 --- a/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/internal/version/Element.java +++ b/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/internal/version/Element.java @@ -95,21 +95,21 @@ public class Element implements IElement return children; } - public Set<IElement> getAllChildren(IElementResolver resolver) + public Set<IElement> getAllChildren(IElementResolver resolver, IElementResolver otherResolver) { if (allChildren == null) { allChildren = new HashSet<IElement>(); for (IElement child : children) { - recurseChildren(resolver, child); + recurseChildren(resolver, otherResolver, child); } } return allChildren; } - private void recurseChildren(IElementResolver resolver, IElement element) + private void recurseChildren(IElementResolver resolver, IElementResolver otherResolver, IElement element) { if (allChildren.add(element)) { @@ -125,19 +125,36 @@ public class Element implements IElement } } + IElement otherTopElement = otherResolver.resolveElement(element); + if (otherTopElement == null) + { + // If we fail to find it with an exact version, we try it with an omni version and use that for the children. + // + otherTopElement = resolver.resolveElement(element.trimVersion()); + if (otherTopElement == null) + { + return; + } + } + + if (otherTopElement.isVersionUnresolved()) + { + return; + } + for (IElement child : topElement.getChildren()) { if (!child.isLicenseFeature()) { - recurseChildren(resolver, child); + recurseChildren(resolver, otherResolver, child); } } } } - public IElement getChild(IElementResolver resolver, IElement key) + public IElement getChild(IElementResolver resolver, IElementResolver otherResolver, IElement key) { - Set<IElement> allChildren = getAllChildren(resolver); + Set<IElement> allChildren = getAllChildren(resolver, otherResolver); for (IElement child : allChildren) { if (child.equals(key)) diff --git a/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/internal/version/VersionBuilder.java b/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/internal/version/VersionBuilder.java index 0871aa4326..d055cbee31 100644 --- a/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/internal/version/VersionBuilder.java +++ b/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/internal/version/VersionBuilder.java @@ -231,6 +231,7 @@ public class VersionBuilder extends IncrementalProjectBuilder implements IElemen try { IModel componentModel = VersionUtil.getComponentModel(project); + IFile componentModelFile = (IFile)componentModel.getUnderlyingResource(); /* * Determine release data to validate against @@ -289,24 +290,9 @@ public class VersionBuilder extends IncrementalProjectBuilder implements IElemen return; } - /* - * Determine if a validation is needed or if the version has already been increased properly - */ - - IElement element = IReleaseManager.INSTANCE.createElement(componentModel, true, false); - for (IElement child : element.getAllChildren(this)) - { - IProject childProject = getProject(child); - if (childProject != null) - { - buildDpependencies.add(childProject); - } - } - IFile propertiesFile = VersionUtil.getFile(releasePath, "properties"); long propertiesTimeStamp = propertiesFile.getLocalTimeStamp(); boolean formerDeviations = buildState.isDeviations(); - IFile componentModelFile = (IFile)componentModel.getUnderlyingResource(); if (buildState.getPropertiesTimeStamp() != propertiesTimeStamp) { if (initReleaseProperties(propertiesFile)) @@ -331,7 +317,29 @@ public class VersionBuilder extends IncrementalProjectBuilder implements IElemen rootProjects = buildState.getRootProjects(); } - Markers.deleteAllMarkers(componentModel.getUnderlyingResource(), Markers.UNREFERENCED_ELEMENT_PROBLEM); + IPath componentModelPath = componentModelFile.getProjectRelativePath(); + boolean checkComponentModel = delta == null || delta.findMember(componentModelPath) != null; + + IElement element = IReleaseManager.INSTANCE.createElement(componentModel, true, false); + for (IElement child : element.getAllChildren(this, release)) + { + IProject childProject = getProject(child); + if (childProject != null) + { + buildDpependencies.add(childProject); + if (checkComponentModel) + { + IModel childProjectComponentModel = VersionUtil.getComponentModel(childProject); + if (childProjectComponentModel != null) + { + IResource underlyingResource = childProjectComponentModel.getUnderlyingResource(); + Markers.deleteAllMarkers(underlyingResource, Markers.UNREFERENCED_ELEMENT_PROBLEM); + } + } + } + } + + Markers.deleteAllMarkers(componentModelFile, Markers.UNREFERENCED_ELEMENT_PROBLEM); if (!rootProjects.contains(project.getName())) { Set<IElement> elementReference = resolveReferences(element); @@ -341,9 +349,6 @@ public class VersionBuilder extends IncrementalProjectBuilder implements IElemen } } - IPath componentModelPath = componentModelFile.getProjectRelativePath(); - boolean checkComponentModel = delta == null || delta.findMember(componentModelPath) != null; - if (componentModel instanceof IPluginModelBase) { if (!arguments.isIgnoreSchemaBuilder()) @@ -426,7 +431,7 @@ public class VersionBuilder extends IncrementalProjectBuilder implements IElemen } else if (!oldVersionBuilderArguments.isIgnoreMalformedVersions()) { - Markers.deleteAllMarkers(componentModel.getUnderlyingResource(), Markers.MALFORMED_VERSION_PROBLEM); + Markers.deleteAllMarkers(componentModelFile, Markers.MALFORMED_VERSION_PROBLEM); } IElement releaseElement = release.getElements().get(element.trimVersion()); @@ -783,7 +788,7 @@ public class VersionBuilder extends IncrementalProjectBuilder implements IElemen featureChild = resolveElement(featureChild); if (featureChild != null) { - Set<IElement> allChildren = featureChild.getAllChildren(this); + Set<IElement> allChildren = featureChild.getAllChildren(this, release); if (allChildren.contains(pluginChild)) { try @@ -813,19 +818,24 @@ public class VersionBuilder extends IncrementalProjectBuilder implements IElemen List<Problem> problems) { ComponentReferenceType biggestChange = ComponentReferenceType.UNCHANGED; - Set<IElement> allChildren = element.getAllChildren(this); + Set<IElement> allChildren = element.getAllChildren(this, release); for (IElement child : allChildren) { ComponentReferenceType change = checkFeatureContentChanges(element, releasedElement, child, problems); biggestChange = ComponentReferenceType.values()[Math.max(biggestChange.ordinal(), change.ordinal())]; } - for (IElement releasedElementsChild : releasedElement.getAllChildren(release)) + for (IElement releasedElementsChild : releasedElement.getAllChildren(release, this)) { - if (!allChildren.contains(releasedElementsChild.trimVersion())) + IElement trimmedVersion = releasedElementsChild.trimVersion(); + if (!allChildren.contains(trimmedVersion)) { - addProblem(releasedElementsChild, IMarker.SEVERITY_WARNING, ComponentReferenceType.REMOVED, null, problems); - biggestChange = ComponentReferenceType.REMOVED; + IElement resolvedElement = resolveElement(trimmedVersion); + if (resolvedElement != null && !resolvedElement.isVersionUnresolved()) + { + addProblem(releasedElementsChild, IMarker.SEVERITY_WARNING, ComponentReferenceType.REMOVED, null, problems); + biggestChange = ComponentReferenceType.REMOVED; + } } } @@ -835,12 +845,12 @@ public class VersionBuilder extends IncrementalProjectBuilder implements IElemen private ComponentReferenceType checkFeatureContentChanges(IElement element, IElement releasedElement, IElement childElement, List<Problem> problems) { - IElement releasedElementsChild = releasedElement.getChild(release, childElement); + IElement releasedElementsChild = releasedElement.getChild(release, this, childElement); if (releasedElementsChild == null) { // Don't consider it added if it was present with a different version. // - releasedElementsChild = releasedElement.getChild(release, childElement.trimVersion()); + releasedElementsChild = releasedElement.getChild(release, this, childElement.trimVersion()); if (releasedElementsChild == null) { addProblem(childElement, IMarker.SEVERITY_WARNING, ComponentReferenceType.ADDED, null, problems); @@ -858,28 +868,33 @@ public class VersionBuilder extends IncrementalProjectBuilder implements IElemen } } - Version releasedVersion = childsReleasedElement.getVersion(); - Version version = childElement.trimVersion().getResolvedVersion(); - - if (version.getMajor() != releasedVersion.getMajor()) + if (!childsReleasedElement.isVersionUnresolved()) { - addProblem(childsReleasedElement, IMarker.SEVERITY_WARNING, ComponentReferenceType.MAJOR_CHANGED, version, - problems); - return ComponentReferenceType.MAJOR_CHANGED; - } + Version releasedVersion = childsReleasedElement.getVersion(); + Version version = childElement.trimVersion().getResolvedVersion(); + if (!version.equals(Version.emptyVersion)) + { + if (version.getMajor() != releasedVersion.getMajor()) + { + addProblem(childsReleasedElement, IMarker.SEVERITY_WARNING, ComponentReferenceType.MAJOR_CHANGED, version, + problems); + return ComponentReferenceType.MAJOR_CHANGED; + } - if (version.getMinor() != releasedVersion.getMinor()) - { - addProblem(childsReleasedElement, IMarker.SEVERITY_WARNING, ComponentReferenceType.MINOR_CHANGED, version, - problems); - return ComponentReferenceType.MINOR_CHANGED; - } + if (version.getMinor() != releasedVersion.getMinor()) + { + addProblem(childsReleasedElement, IMarker.SEVERITY_WARNING, ComponentReferenceType.MINOR_CHANGED, version, + problems); + return ComponentReferenceType.MINOR_CHANGED; + } - if (version.getMicro() != releasedVersion.getMicro()) - { - addProblem(childsReleasedElement, IMarker.SEVERITY_WARNING, ComponentReferenceType.MICRO_CHANGED, version, - problems); - return ComponentReferenceType.MICRO_CHANGED; + if (version.getMicro() != releasedVersion.getMicro()) + { + addProblem(childsReleasedElement, IMarker.SEVERITY_WARNING, ComponentReferenceType.MICRO_CHANGED, version, + problems); + return ComponentReferenceType.MICRO_CHANGED; + } + } } return ComponentReferenceType.UNCHANGED; diff --git a/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/version/IElement.java b/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/version/IElement.java index 5906e046da..14e541e12c 100644 --- a/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/version/IElement.java +++ b/plugins/org.eclipse.emf.cdo.releng.version/src/org/eclipse/emf/cdo/releng/version/IElement.java @@ -38,9 +38,9 @@ public interface IElement public List<IElement> getChildren(); - public Set<IElement> getAllChildren(IElementResolver resolver); + public Set<IElement> getAllChildren(IElementResolver resolver, IElementResolver otherResolver); - public IElement getChild(IElementResolver resolver, IElement key); + public IElement getChild(IElementResolver resolver, IElementResolver otherResolver, IElement key); public IElement trimVersion(); |