Use tycho 0.18.0 for bootstrap

just to eat our latest dog-food.

Change-Id: I3c72cc76fbf7e6fb9a4e22c584c5041a03be34bf
[refactoring] Extract method in BuildQualifierMojo

- Extract qualifier calculation logic to a method so that there is a
  single place where the result is handled. Currently, the result is
  only injected into the model, but it could also be logged...

Bug: 401658
Bug: 382482
Change-Id: I14ba0c08f805d993d14d175614c72c68a9233f7b
401658 Build qualifier should be logged as info

Bug: 401658
Change-Id: I62a175090ca86a255e0c236c2749bfaf12a2f175
Also-by: Tobias Oberlies <tobias.oberlies@sap.com>
Signed-off-by: Thanh Ha <thanh.ha@eclipse.org>
412952 Ignore locally installed artifacts in ITs

ignore locally only installed artifacts during dependency
resolution of IT projects by default.
This makes the ITs independent of current local
maven repository content, avoiding test instabilities.
Re-enable resolution of locally installed artifacts only for
those two ITs that actually require it.

Bug: 412952
Signed-off-by: Jan Sievers <jan.sievers@sap.com>
Change-Id: I75d6abb2fe67bd977b505e499cf164f295d67cff
Minor test fix and clean-up

- Fixed check for consistency between artifact sink state and
  returned IStatus.
- Migrate StatusToolTest to assertThat.

Bug: 393004
Signed-off-by: Tobias Oberlies <tobias.oberlies@sap.com>
393004 Log download errors and warnings in multiple lines

- Make download errors/warnings, which are deeply nested multi-status
  from p2, more readable by printing them on multiple lines.
- Also, no longer include the multi-status in the exception message,
  but instead only point to the log output. The nested exception is
  still set to the exception of the first failed download.

Bug: 393004
Change-Id: I4ead75b2f6a67b904beadd2feb2d7f162fa4d8c7
Signed-off-by: Tobias Oberlies <tobias.oberlies@sap.com>
412945 Try other download format if first download fails

- If the first download (in pack200 format) fails, first try the
  canonical format, and then try other mirrors. This ensures that we
  don't have the (questionable) p2 repository implementations mark
  all mirrors/composites as bad before we would try the canonical
  format.
- This approach is also more efficient: if the pack200 download fails
  for one mirror, this is most likely because the pack200 artifact is
  broken in the master repository, and not just in the mirror.

Bug: 412945
Change-Id: Ie2057bd311e19ea2d3c2a58d111768062c0e56a1
[refactoring] Helper instead of base class for setting decryption

- Removed unnecessary base class AbstractSettingsConfigurator. Replaced
  by a collaborator ("favour composition over inheritance").

Bug: 394023
Change-Id: Ifeeabe2ef0eae643dd926cd4747683b03a336607
407395 add packages exported by EE to visible packages

- define an explicit project context object for
  strict bootclasspath access rules (i.e. when 
  JRE package imports are explicitly required)
- when resolving, set flag to include packages
  from execution environment (EE) to visible packages
  This will cause EE packages exported by the system bundle
  to be visible
- when constructing the classpath, detect packages
  provided by the system bundle and use them for 
  strict bootclasspath access rules. This means access rules
  for org.osgi.* packages from the system bundle and
  EE packages are created together. While this is a
  a superset of the package access rules needed for the
  compilation bootclasspath, this approximation is good enough
  to achieve strict JRE package import checks
- During resolution, EE packages may be provided either 
  by a real framework bundle (such as org.eclipse.osgi) or
  by a synthetic "system.bundle" exporting the EE 
  packages only

Bug: 407395
Change-Id: I66c131c697df5df11dc4415d21496b0cc539f31a
Signed-off-by: Jan Sievers <jan.sievers@sap.com>
410058 guarg against NPE when no profile id

Change-Id: Ia1966e7a04235db4ecaf6816321b7432810956b7
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
405385 Update to Plexus Compiler 2.2 API

so that tycho's jdt compiler can  be used with maven-compiler-plugin 3.x
Add integration test that covers this scenario.

Bug: 405385
CQ: 7559
CQ: 7560
Signed-off-by: Roland Grunberg <rgrunber@redhat.com>
Change-Id: Ibfef641b652c9db3f791922d5748f58652f7dfca
405385 Fix failing IT 

maven-compiler-plugin 3.2 does not exist.
Use latest released version 3.1 available from
maven central.

Bug: 405385
Change-Id: I72bd87ba3d5c0f286f98a0994278a86ecfab099a
Signed-off-by: Jan Sievers <jan.sievers@sap.com>
412002 Fix product p2.inf file name calculation

Replace ".product" with ".p2.inf" at end of 
product filename only.
Similarly, search for ".qualifier" at end of versions only
when replacing with actual build qualifier.


Bug: 412002
Change-Id: Ib29152e73f38fc64a381e19e9712d8b37dbd4750
Signed-off-by: Jan Sievers <jan.sievers@sap.com>
[refactoring] Resolve target files only when building the target

- This is a prerequisite for splitting the target configuration from
  the resolution ("buildTargetPlatform").

Bug: 412416
Change-Id: I0a2c2e01f330b8b7b8bf64812088e3665729cc59
Signed-off-by: Tobias Oberlies <tobias.oberlies@sap.com>
[refactoring] Make side-effects of target platform building explicit

- Calling the build target platform method has a side-effect on the
  ExecutionEnvironmentConfiguration in case of custom execuction
  environment profiles. To make this more obvious, change the
  EEConfiguration instance used by buildTargetPlatform to a parameter
  of the method.

Bug: 412416
Change-Id: I75940c3ddc042781e04ea4b2399c604946ea9ee9
Signed-off-by: Tobias Oberlies <tobias.oberlies@sap.com>
[refactoring] Split target platform configuration and computation

- Separate the target platform configuration object from the object
  building a target platform from the configuration. This allows to
  reduce the number of times the configuration is copied from one
  object to another (not included in this commit).
- Renamed setIncludeLocalMavenRepository to
  setForceIgnoreLocalMavenRepository, so that the target platform
  configuration object doesn't need to have access to the settings
  properties.

Bug: 412416
Change-Id: Iabb595287d8b2d972178e6983934189e90d42d37
Signed-off-by: Tobias Oberlies <tobias.oberlies@sap.com>
355046 Test whitespace handling in versions-plugin at right level

- Directly test in the MutablePomFileTest that whitespace around
  the tags is ignored.
- Add tests for more attributes.

Bug: 355046
Change-Id: Id63fbb895c942c9ce924b0a90425bca86a8e7141
Signed-off-by: Tobias Oberlies <tobias.oberlies@sap.com>
Add newline when inserting <version> element with versions-plugin

- Add a newline when inserting a <version> element in a POM. This
  yields a better formatted result (although not perfect yet - the
  new element is not indented).

Change-Id: Ia7878aaafbac27f4c84ee0e584b3a91d9010a1c8
387809 make tycho-versions:set-version update exported packages

- Implemented feature enhancement: Update the version attribute of
  exported packages when updating the version of a bundle.
- Unit test are running.

Bug 387809 tycho-versions:update-exported-packages
Change-Id: Ia2795de6ad8e465436ef9ae13d4918b7addd62b5
Signed-off-by: Nepomuk Seiler <nepomuk.seiler@googlemail.com>
387809 Only update exported packages with matching version

- Only update the versions of packages when the old version matched
  the old bundle version.

Bug 387809
Change-Id: I3f1099e02f63dc0648f098860e6398385f7ca51b
Signed-off-by: Tobias Oberlies <tobias.oberlies@sap.com>