Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Tycho/Release Notes/0.22
< Tycho | Release Notes
Contents
New and Noteworthy
Complete list of bug fixes and enhancements in 0.22.0
Compiler
- You can now reuse project JDT compiler preferences .settings/org.eclipse.jdt.core.prefs by globally configuring
<plugin> <groupId>org.eclipse.tycho</groupId> <artifactId>tycho-compiler-plugin</artifactId> <version>${tycho-version}</version> <configuration> <useProjectSettings>true</useProjectSettings> </configuration> </plugin>
e.g. in your parent pom. This will warn but not fail if the preference file is not present. (
bug 404633)
Target Platform & Dependency Resolution
- (INCOMPATIBLE CHANGE) In case you specify multiple execution environment profiles in the Bundle-RequiredExecutionEnvironment manifest header, the profile used for the build may have changed. Tycho no longer attempts to find the "minimal" profile from the ones specified, but now uses the one specified first (
bug 435313). See Execution Environments for details on the execution environment configuration and effects in the build. - Tycho now supports building bundles for the execution environments JavaSE/compact1-1.8, JavaSE/compact2-1.8, and JavaSE/compact3-1.8.
- Tycho can now be configured to ignore the configured execution environment of the current bundle when resolving its dependencies (
bug 435068) . If you set the target-platform-configuration option resolveWithExecutionEnvironmentConstraints to false, Tycho will use a combination of all known execution environments (providing the superset of all system packages) to resolve the bundle's dependencies. - Tycho can now take the includeSource attribute in target definitions into account. This needs to be enabled through a target-platform-configuration option:
<plugin> <groupId>org.eclipse.tycho</groupId> <artifactId>target-platform-configuration</artifactId> <version>${tycho-version}</version> <configuration> <target> <artifact> ... </artifact> </target> <targetDefinitionIncludeSource>honor</targetDefinitionIncludeSource> </configuration> </plugin>
Note that this new option is of limited use for including sources into a p2 repository:
- If you want to include source bundles from the (external) target platform, you typically would add a complete source or SDK feature from the target platform. includeSource does not automatically include source features, so you would need to explicitly specify them in the target file anyway.
- If you only want to include source bundles for bundles from your reactor, you don't need this option.
The only case in which the new option may make sense if you are building a feature with source feature which directly includes a bundle from the (external) target platform.
- In case of p2 dependency resolution errors, Tycho will no longer clutter the console output with exception stacktraces (
bug 441538)
Packaging
- Resources copying and filtering:
- you can now include additonal resources such as index.html or about.html in p2 repositories (
bug 424691). Just add files to src/main/resources in eclipse-repository modules - you can now use maven resource filtering for eclipse-plugin resources in src/main/resources. For details on how to use it, see (bug 383872 comment 9) and site docs
- maven property expressions (like ${project.version}) can now be used in build.properties values (
bug 442922)
- you can now include additonal resources such as index.html or about.html in p2 repositories (
Test Execution
- Tycho Surefire was updated to use Maven Surefire version 2.17. This enabled us to consume the fix for long-standing
bug 369266 - Tycho Surefire can now be configured to use the JDK specified in the test bundle's Bundle-RequiredExecutionEnvironment to execute tests (as opposed to the currently running JDK) (
bug 407500). See the site docs for details.
Other
- In addition to the previously existing properties unqualifiedVersion and buildQualifier, a new property qualifiedVersion was introduced. It contains the concatenation of the first two properties, but without trailing dot in case the buildQualifier is an empty string. (Documentation).
- The embedded OSGi runtime used by Tycho during build has been updated to use Equinox and p2 from the Mars M3 milestone (
bug 444112)