Fyi.

---------- Forwarded message ----------
From: Robert Varga <[email protected]>
Date: Tue, Jan 10, 2017 at 11:35 AM
Subject: [release] WEATHER: BUG-7446: Upgrading to Guava 21
To: "[email protected]" <[email protected]>
Cc: "[email protected]" <[email protected]>


Hello everyone,

Google Guava is finally making the step to Java 8 land, allowing better
integration with Java 7/8 features.

Unfortunately this is a jump of three releases since we have last
upgraded Guava -- we are currently using 18.0 -- and there are some API
elements which were both deprecated in 19.0 and removed in 20.0, hence
this transition will not be completely painless and will require a flag day.

The details are available at:
https://google.github.io/guava/releases/19.0/api/diffs/
https://google.github.io/guava/releases/20.0/api/diffs/
https://google.github.io/guava/releases/21.0-rc2/api/diffs/

API changes impact 12 projects, of which ovsdb and mdsal can be fixed
ahead of time.

The steps to perform the upgrade are the following:
1) provide odl-guava-21 feature from odlparent
2) make yangtools pull odl-guava-21 as well as odl-guava-18
3) create a 'switch-to-21' patch in odlparent
4) prepare migration patches to downstream projects
5) validate autorelease with the patches
6) merge the 'switch-to-21' patch in odlparent
7) reverify/merge the migration patches in the project dependency order,
re-merging unaffected projects, as they need to be rebuilt
8) make yangtools not pull odl-guava-18

Steps 1-3 have been executed.

Patches for 4 are available at
https://git.opendaylight.org/gerrit/#/q/topic:guava21 and have been
compile-tested with -Pq.

Step 5 needs to be executed, unfortunately I don't have local resources
to do that.

The flag day part is step 6&7, which is rather unavoidable, as the
individual projects cannot really interoperate if they were compiled
with different versions of Guava. This also means that in steps 6 and 7
integration-level jobs (like distribution-check, csit) will be out of whack.

To minimize the duration of this breakage, I would like to determine an
acceptable window when when the releng team would be granted powers to
merge the above patches, disregarding distribution-check failures.

We still have some time before 21.0 is out for real, but I would like us
to use this time to discuss and agree on the strategy.

Colin, could you allocate some 5-10 minutes for this topic on the next
TSC call?

Thanks,
Robert

P.S.: The changeover could be done by switching to 19.0 and then to
21.0, which would make step 7 a rebuild only. I do not have the cycles
to drive that and also the disruption would actually be greater, as 6-8
would have to be executed twice.


_______________________________________________
release mailing list
[email protected]
https://lists.opendaylight.org/mailman/listinfo/release

Attachment: signature.asc
Description: PGP signature

_______________________________________________
openflowplugin-dev mailing list
[email protected]
https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev

Reply via email to