Jump to: navigation, search

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

(New Features)
(list & xml formatting; moved test framework extensibility to improvements)
Line 22: Line 22:
 
=== New Features  ===
 
=== New Features  ===
  
*Support for parallel test execution with JUnit &gt;= 4.7 has been added.<br>If you use Junit &gt;= 4.7, you can now have test classes or methods executed by several threads in parallel by adding <tt>-Dparallel=classes|methods|both</tt> on the commandline or by configuring<br>
+
<ul>
 +
<li>Support for parallel test execution with JUnit &gt;= 4.7 has been added.<br>If you use Junit &gt;= 4.7, you can now have test classes or methods executed by several threads in parallel by adding <tt>-Dparallel=classes|methods|both</tt> on the commandline or by configuring<br>
 
<pre>&lt;plugin&gt;
 
<pre>&lt;plugin&gt;
 
   &lt;groupId&gt;org.eclipse.tycho&lt;/groupId&gt;
 
   &lt;groupId&gt;org.eclipse.tycho&lt;/groupId&gt;
Line 32: Line 33:
 
&lt;/plugin&gt;
 
&lt;/plugin&gt;
 
</pre>
 
</pre>
Executing tests in parallel can be useful e.g. if you have long-running integration tests which are not CPU-bound.<br> Under the hood, this feature was enabled by porting the junit4.7 surefire provider to tycho.
+
Executing tests in parallel can be useful e.g. if you have long-running integration tests which are not CPU-bound.<br> Under the hood, this feature was enabled by porting the junit4.7 surefire provider to Tycho.
 +
</li>
  
*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 [http://git.eclipse.org/c/tycho/org.eclipse.tycho.git/tree/tycho-surefire/tycho-surefire-plugin/src/main/java/org/eclipse/tycho/surefire/provider/spi/TestFrameworkProvider.java TestFrameworkProvider]
+
<li>[[Tycho/Reproducible Version Qualifiers|Reproducible Version Qualifiers]]
 +
</li>
  
*[[Tycho/Reproducible Version Qualifiers|Reproducible Version Qualifiers]]
+
<li> 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
 
+
* 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
+
 
<source lang="xml">
 
<source lang="xml">
 
<plugin>
 
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
+
  <groupId>org.eclipse.tycho.extras</groupId>
<artifactId>target-platform-validation-plugin</artifactId>
+
  <artifactId>target-platform-validation-plugin</artifactId>
<version>${tychoExtrasVersion}</version>
+
  <version>${tychoExtrasVersion}</version>
<executions>
+
  <executions>
<execution>
+
      <execution>
<phase>validate</phase>
+
        <phase>validate</phase>
<goals>
+
        <goals>
<goal>validate-target-platform</goal>
+
            <goal>validate-target-platform</goal>
</goals>
+
        </goals>
<configuration>
+
        <configuration>
<targetFiles>
+
            <targetFiles>
<param>indigo.target</param>
+
              <param>indigo.target</param>
<param>juno.target</param>
+
              <param>juno.target</param>
</targetFiles>
+
            </targetFiles>
<failOnError>true</failOnError>
+
            <failOnError>true</failOnError>
</configuration>
+
        </configuration>
</execution>
+
      </execution>
</executions>
+
  </executions>
 
</plugin>
 
</plugin>
 
</source>
 
</source>
 
+
</li>
<br>
+
</ul>
  
 
=== Improvements and Fixes  ===
 
=== Improvements and Fixes  ===
Line 69: Line 70:
 
*Access to p2 repository can be [[Tycho/Target Platform/Authentication and Mirrors#Mirrors|redirected to a mirror location]]. This now works for both target files and repositories specified in the POM (<strike>[https://bugs.eclipse.org/bugs/show_bug.cgi?id=356016 bug 356016]</strike>).
 
*Access to p2 repository can be [[Tycho/Target Platform/Authentication and Mirrors#Mirrors|redirected to a mirror location]]. This now works for both target files and repositories specified in the POM (<strike>[https://bugs.eclipse.org/bugs/show_bug.cgi?id=356016 bug 356016]</strike>).
 
* <tt>tycho-compiler-plugin</tt> now has a boolean option <tt>[https://bugs.eclipse.org/bugs/show_bug.cgi?id=384113 requireJREPackageImports]</tt> which will fail the build if set to <tt>true</tt> and packages provided by the JDK are not explicitly imported. <br/> This is the design-time equivalent of setting equinox runtime option <tt>[[Equinox Boot Delegation|osgi.compatibility.bootdelegation=false]]</tt>.
 
* <tt>tycho-compiler-plugin</tt> now has a boolean option <tt>[https://bugs.eclipse.org/bugs/show_bug.cgi?id=384113 requireJREPackageImports]</tt> which will fail the build if set to <tt>true</tt> and packages provided by the JDK are not explicitly imported. <br/> This is the design-time equivalent of setting equinox runtime option <tt>[[Equinox Boot Delegation|osgi.compatibility.bootdelegation=false]]</tt>.
 +
*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 [http://git.eclipse.org/c/tycho/org.eclipse.tycho.git/tree/tycho-surefire/tycho-surefire-plugin/src/main/java/org/eclipse/tycho/surefire/provider/spi/TestFrameworkProvider.java TestFrameworkProvider].
 +
  
 
[[Category:Tycho|Release Notes/0.16]]
 
[[Category:Tycho|Release Notes/0.16]]

Revision as of 10:22, 25 July 2012

< Previous Version | Next Version >

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.

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.

<pluginRepositories>
  <pluginRepository>
    <id>tycho-snapshots</id>
    <url>https://oss.sonatype.org/content/groups/public/</url>
  </pluginRepository>
</pluginRepositories>

List of bug fixes and enhancements in 0.16.0

New and Noteworthy

New Features

  • 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
  • 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