# tell pde.build not to generate start levels
org.eclipse.pde.build.append.startlevels=false

# add requirement on org.eclipse.platform.ide
requires.1.namespace=org.eclipse.equinox.p2.iu
requires.1.name=org.eclipse.platform.ide
requires.1.greedy=true

# remove inclusion of javax.transaction - see bug #409122 for further information
requires.0.namespace = org.eclipse.equinox.p2.iu
requires.0.name = javax.transaction
requires.0.min = 0
requires.0.max = 0

# Bug 490515 - Prevent upgrade from old to new EPP package layout
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=490515
#
# With Eclipse Neon (4.6.0) all packages changed their structure from a single
# feature to a product with multiple independent root features. Upgrades from
# older versions to the new structure would result in an unexpected uninstall
# of everything below the old main package feature. In order to prevent such
# upgrades we add an artificial lower limit of the IU to the p2 metadata.

update.id = org.eclipse.epp.package.testing.feature.feature.group
update.range = [4.6.0.20160301-1200, $version$)
update.severity = 0
update.description = Eclipse package upgrade from versions before Eclipse Neon (4.6) is not possible. See bug 332989.
