Jump to: navigation, search

Difference between revisions of "Tycho/Release Notes/0.16"

(stub announcement of custom profile support; rename of tycho.cosiderLocal)
Line 5: Line 5:
 
<div id="versionNav">[[Tycho/Release Notes/0.15|&lt; Previous Version]] | Next Version &gt;</div>
 
<div id="versionNav">[[Tycho/Release Notes/0.15|&lt; Previous Version]] | Next Version &gt;</div>
  
Tycho 0.16.0 is currently in development. This page shows a preview of features which will be available in the 0.16.0 release.
+
[https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&product=Tycho&query_format=advanced&resolution=FIXED&target_milestone=0.16.0&order=bug_id&query_based_on= Complete list of bug fixes and enhancements in 0.16.0]  
 
+
== SNAPSHOT builds  ==
+
 
+
To try the most recent snapshot build of 0.16.0, simply add the following snippet to your (parent) pom.xml and set tycho version to 0.16.0-SNAPSHOT.
+
<pre>&lt;pluginRepositories&gt;
+
  &lt;pluginRepository&gt;
+
    &lt;id&gt;tycho-snapshots&lt;/id&gt;
+
    &lt;url&gt;https://oss.sonatype.org/content/groups/public/&lt;/url&gt;
+
  &lt;/pluginRepository&gt;
+
&lt;/pluginRepositories&gt;
+
</pre>
+
[https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&product=Tycho&query_format=advanced&resolution=FIXED&target_milestone=0.16.0&order=bug_id&query_based_on= List of bug fixes and enhancements in 0.16.0]  
+
  
 
== New and Noteworthy  ==
 
== New and Noteworthy  ==
Line 82: Line 70:
 
** if unset (or set to "<tt>default</tt>"), the behaviour is unchanged (local metadata is considered by the resolver, and there is a warning if locally built units were used)
 
** if unset (or set to "<tt>default</tt>"), the behaviour is unchanged (local metadata is considered by the resolver, and there is a warning if locally built units were used)
 
** if set to "<tt>ignore</tt>", locally built artifact are ignored
 
** if set to "<tt>ignore</tt>", locally built artifact are ignored
 
[https://bugs.eclipse.org/bugs/buglist.cgi?list_id=2702819&query_format=advanced&target_milestone=0.16.0&product=Tycho Complete list of bugs marked for 0.16]
 
  
 
[[Category:Tycho|Release Notes/0.16]]
 
[[Category:Tycho|Release Notes/0.16]]

Revision as of 05:09, 15 October 2012

< Previous Version | Next Version >

Complete list of bug fixes and enhancements in 0.16.0

New and Noteworthy

New Features

  • A new packaging type "eclipse-target-definition" for PDE target definitions has been added
  • Support for parallel test execution with JUnit >= 4.7 has been added.
    If you use Junit >= 4.7, you can now have test classes or methods executed by several threads in parallel by adding -Dparallel=classes|methods|both on the commandline or by configuring
    <plugin>
       <groupId>org.eclipse.tycho</groupId>
       <artifactId>tycho-surefire-plugin</artifactId>
       <version>${tycho-version}</version>
       <configuration>
         <parallel>classes|methods|both</parallel>
       </configuration>
    </plugin>
    

    Executing tests in parallel can be useful e.g. if you have long-running integration tests which are not CPU-bound.
    Under the hood, this feature was enabled by porting the junit4.7 surefire provider to Tycho.

  • Reproducible Version Qualifiers
  • Support for generating Eclipse-SourceReferences MANIFEST headers for git has been added. Other SCMs can be plugged in by implementing SourceReferencesProvider.
  • Experimental support for custom execution environment profiles (bug 385930, to be documented)
  • A new plugin to validate target platforms. This plugin takes as input one or several target platforms and ensures they can be resolved, fails otherwise
    <plugin>
       <groupId>org.eclipse.tycho.extras</groupId>
       <artifactId>target-platform-validation-plugin</artifactId>
       <version>${tychoExtrasVersion}</version>
       <executions>
          <execution>
             <phase>validate</phase>
             <goals>
                <goal>validate-target-platform</goal>
             </goals>
             <configuration>
                <targetFiles>
                   <param>indigo.target</param>
                   <param>juno.target</param>
                </targetFiles>
                <failOnError>true</failOnError>
             </configuration>
          </execution>
       </executions>
    </plugin>

Improvements and Fixes

  • If several tycho versions were inadvertently mixed within the same reactor, this could lead to cryptic errors like ClassCastExceptions. This situation is now detected early and the build will fail with a clear error message
  • Providing credentials for a p2 repository specified in a target file is now more convenient – the use of the non-standard id attribute in target files is no longer necessary (bug 377086).
  • Access to p2 repository can be redirected to a mirror location. This now works for both target files and repositories specified in the POM (bug 356016).
  • tycho-compiler-plugin now has a boolean option requireJREPackageImports which will fail the build if set to true and non-java.* packages provided by the JDK are not explicitly imported.
    This is the design-time equivalent of setting equinox runtime option osgi.compatibility.bootdelegation=false.
  • Support for test frameworks is extensible now. This means you can add support for test frameworks other than JUnit if you provide an implementation of TestFrameworkProvider.
  • The tycho-p2-director-plugin can now create product installations which have meta-requirements on the installer. This for example allows to execute custom touchpoint actions during the installation. See the integration test for an example.
  • Added a property "tycho.localArtifacts" which allows to control whether artifacts installed in the local maven repository by previous tycho builds should be considered by the resolver or not. The property can be specified on the command line and in settings.xml.
    • if unset (or set to "default"), the behaviour is unchanged (local metadata is considered by the resolver, and there is a warning if locally built units were used)
    • if set to "ignore", locally built artifact are ignored