Eclipse Tycho 1.3.0

1.3.0

Description

Java 11

  • JDT was updated to 3.15.1 (we are now using ecj binaries from maven central as opposed to jdt.core and jdt.compiler.apt) ( bug 532302 )



org.apache.felix.scr



bug 538729

Tycho 1.3.0 surefire plugin supports starting applications that use org.apache.felix.scr bundle in place of org.eclipse.equinox.ds (like Eclipse Platform 4.10 based target-platforms)

download.stats artifact metadata property

bug 539552

Support for <tt>download.stats</tt> property on artifacts metadata. In order to (partially) enable p2 download stats as documented in [[Equinox_p2_download_stats]], you can now configure you <tt>tycho-p2-plugin:p2-metadata</tt> [https://ci.eclipse.org/tycho/job/tycho-sitedocs/ws/target/staging/tycho-p2/tycho-p2-plugin/p2-metadata-mojo.html#generateDownloadStatsProperty generateDownloadStats parameter] to add the necessary property on the artifacts:



   <plugin>

     <groupId>org.eclipse.tycho</groupId>

     <artifactId>tycho-p2-plugin</groupId>

     <configuration>

        <generateDownloadStatsProperty>true</generateDownloadStatsProperty>

     </configuration>

   </plugin>

 



or alternatively, you can override the <tt>tycho.generateDownloadStatsProperty</tt> property either by CLI with <tt>mvn -Dtycho.generateDownloadStatsProperty=true ...</tt> or by adding <tt><tycho.generateDownloadStatsProperty>true</tycho.generateDownloadStatsProperty></tt> in the <tt><properties></tt> element of your pom.xml.

This results in this in artifacts.xml (and derived artifacts.jar and artifacts.xml.xz):



  <artifacts size='4'>

    <artifact classifier='osgi.bundle' id='bundle' version='1.0.0.123abc'>

      <properties size='9'>

        <!-- ... -->

        <property name='download.stats' value='bundle/1.0.0.123abc'/>

        <!-- ... -->

      </properties>

    </artifact>

    <artifact classifier='osgi.bundle' id='bundle' version='1.0.0.123abc'>

      <processing size='1'>

        <step id='org.eclipse.equinox.p2.processing.Pack200Unpacker' required='true'/>

      </processing>

      <properties size='12'>

        <!-- ... -->

        <property name='download.stats' value='bundle/1.0.0.123abc'/>

        <!-- ... -->

      </properties>

    </artifact>

 

Extra artifact repository properties (like p2.statsURI or p2.mirrorsURL)

bug 341744

The <tt>tycho-p2-repository-plugin:assemble-repository</tt> plugin now accepts a [https://ci.eclipse.org/tycho/job/tycho-sitedocs/ws/target/staging/tycho-p2/tycho-p2-repository-plugin/assemble-repository-mojo.html#extraArtifactRepositoryProperties extraArtifactRepositoryProperties] parameter to configure addition properties to add to the artifact repository. Typical examples of properties one would like to include that way are <tt>p2.mirrorsURL</tt> and <tt>p2.statsURI</tt>



<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <packaging>eclipse-repository</packaging>

  <!-- .... -->

  <build>

    <plugins>

      <plugin>

        <groupId>org.eclipse.tycho</groupId>

        <artifactId>tycho-p2-repository-plugin</artifactId>

        <version>${tycho-version}</version>

        <configuration>

          <extraArtifactRepositoryProperties>

            <p2.statsURI>http://some.where</p2.statsURI>

            <p2.mirrorsURL>http://some.where.else</p2.mirrorsURL>

            <foo>bar</foo>

          </extraArtifactRepositoryProperties>

        </configuration>

      </plugin>

    </plugins>

  </build>

</project>

 



adds the properties to the artifact repository, that would then contain



<repository name="Example Repository" type="org.eclipse.equinox.p2.artifact.repository.simpleRepository" version="1">

  <properties size="5">

    <property name="publishPackFilesAsSiblings" value="true"/>

    <property name="p2.mirrorsURL" value="http://some.where.else"/>

    <property name="p2.statsURI" value="http://some.where"/>

    <property name="p2.timestamp" value="1538498332220"/>

    <property name="foo" value="bar"/>

  </properties>

  <!-- .... -->



 

Conforms To UI/UX Guidelines
Not verified