Announcing WildFly Swarm 2017.12.1

WildFly Swarm 2017.12.1

Seasons greetings and Happy Holidays to all!

In the spirit of celebration, we’ve got a bumper 2017.12.1 release for, so much so that we couldn’t just leave it at 2017.12.0!

What’s New?

  • Upgrade to WildFly 11.0.0.Final

  • Upgrade to Keycloak 3.4.0.Final

  • Eclipse MicroProfile 1.2 implementation

  • Reduction in uber jar size with CDI

  • Internal Fractions removed from BOMs

WildFly 11.0.0.Final

We’ve rung the changes through the code and we’re now based on WildFly 11.0.0.Final! This is a significant upgrade, bringing additional fixes to all the parts of WildFly that we consume.

Keycloak 3.4.0.Final

Another big update is Keycloak, jumping from 2.5.x to 3.4.0.Final!

An important point with this update is that our understanding is that 3.x clients/servers are not compatible with 2.x, so be sure to upgrade anything that uses Keycloak if you’re wanting to use this release with them.

Eclipse MicroProfile 1.2

We made it!

It took longer than we anticipated. Doesn’t everything? But we now have a full implementation of Eclipse MicroProfile 1.2 available in WildFly Swarm. In addition the implementations fully pass all TCK tests from the different specifications.

So what does Eclipse MicroProfile 1.2 bring?

It includes Config 1.1, Fault Tolerance 1.0, JWT Propagation 1.0, Health Metrics 1.0, and Health Check 1.0.

Trying to go into more detail about what you can do with Eclipse MicroProfile 1.2 would take up far too much space for this blog. But, we’re planning on putting together a series of blog posts to explain the functionality available that we intend to release in the first couple of months in 2018. Stay tuned!

Uber jar size reduction with CDI

With the upgrade to WildFly 11.0.0.Final, it brings with it some updates to the Weld subsystem. These updates will result in about a 30% reduction in uber jar size for anything that uses the cdi fraction. This is particularly beneficial to the uber jar size of anything utilizing the microprofile fraction or hollow jar.

Internal fractions removed from the BOMs

Fractions that are marked internal are no longer managed by the BOMs (org.wildfly.swarm:bom and others). If your project directly depends on these fractions, your builds will start failing. As a workaround, you can manually specify the version for these dependencies. If that affects you and you need to use these internal fractions, please let us know your usecases.

Changelog

Release notes for 2017.12.1 are available here.

Epic

  • [SWARM-1177] Any work related to MicroProfile 1.2 impl (Done)

Bug

  • [SWARM-1431] Swarm WAR misses transitive dependencies → NoClassDefFoundError (Done)

  • [SWARM-1619] BOM should not contain internal fractions (Done)

  • [SWARM-1628] Remove Eclipse repositories (Done)

  • [SWARM-1634] MP Config module.conf declares same module twice (Done)

  • [SWARM-1636] MP Health has JAX-RS spec jar dependency (Done)

  • [SWARM-1637] MP Health renames (Done)

  • [SWARM-1638] MP JWT cleanup (Done)

  • [SWARM-1640] MP Metrics dependency subsystems (Done)

  • [SWARM-1641] MP Metrics shouldn’t add Weld to deployment (Done)

  • [SWARM-1642] MP 1.2 fraction missing sub spec dependencies (Done)

  • [SWARM-1643] Maven module present twice in build (Done)

  • [SWARM-1650] documentation of datasources should include validation settings (Done)

  • [SWARM-1654] Terminate on deployment errors that happen before swarm.server is initialized (Done)

  • [SWARM-1662] FaultToleranceDefinitionException not thrown if method annotated with @Asynchronous does not return Future (Done)

  • [SWARM-1678] MP FT - fix priorities of overriding config parameters (Done)

  • [SWARM-1689] Dependencies with module-info.class fail (Done)

  • [SWARM-1694] MPJwtPackageDetector detects obsolete/invalid package (Done)

  • [SWARM-1710] Problems with test-jar type (Done)

  • [SWARM-1712] Upgrade to WildFly 11 breaks MP config (Done)

  • [SWARM-1714] Teiid fraction is not compatible with WF11 (Done)

  • [SWARM-1716] msc becoming properly internal has broken some examples (Done)

  • [SWARM-1718] Metrics must return a 406 for OPTIONS and text/plain (Done)

  • [SWARM-1735] Bad dependency on mp-ft-cdi extension (Done)

Enhancement

  • [SWARM-1463] Create a MicroProfile JWT RBAC fraction (Done)

  • [SWARM-1609] Upgrade Teiid Fraction for new YAML based configuration (Done)

  • [SWARM-1663] Create WF Swarm fraction for Fault Tolerance impl (Done)

  • [SWARM-1664] MP Fault tolerance build should trigger TCK by default (Done)

  • [SWARM-1668] Change Fault Tolerance package name and artefact id (Done)

  • [SWARM-1671] MP FT - improve logging (Done)

  • [SWARM-1733] MP Monitor fraction should support CORS headers (Done)

Component Upgrade

  • [SWARM-1611] Upgrade to WildFly 11.0.0.Final (Done)

  • [SWARM-1621] Upgrade to Keycloak 3.4.0.Final (Done)

  • [SWARM-1676] Upgrade wildfly-microprofile-config to 1.1.2 (Done)

  • [SWARM-1713] upgrade Arquillian to 1.1.15.Final (Done)

Library Upgrade

  • [SWARM-1614] Upgrade org.objectweb.asm to 6.0+ (Done)

Task

  • [SWARM-1622] Verify Eclipse MicroProfile 1.2 support (Done)

  • [SWARM-1627] Consolidate versions in build-parent (Done)

  • [SWARM-1629] Adjust Copyright in files (Done)

  • [SWARM-1630] Verify dependencies across new apis and fractions for MicroProfile (Done)

  • [SWARM-1631] MP Metrics CDI Extension location (Done)

  • [SWARM-1632] Rename MP packages (Done)

  • [SWARM-1633] Clean up new MP code (Done)

  • [SWARM-1635] Verify all MP Fractions have appropriate Fraction detectors (Done)

  • [SWARM-1639] MP Metrics shades SnakeYaml (Done)

  • [SWARM-1644] Make it possible to run TCK for each MP fraction (Done)

  • [SWARM-1669] Sort out duplication of HealthResponseFilter in MicroProfile and client apis (Done)

  • [SWARM-1672] MP FT - get rid of FixedHystrixCommand workaround (Done)

  • [SWARM-1684] Verify MicroProfile hollow jar with 1.2 (Done)

  • [SWARM-1685] MP FT - make sure that SynchronousCircuitBreaker follows HystrixCircuitBreaker contract (Done)

  • [SWARM-1692] upgrade NoSQL fractions to use wildfly-nosql 1.0.0.Alpha5 + nosql config-api 1.2.1 (Done)

  • [SWARM-1711] Fix MP FT fraction to pass TCK (Done)

  • [SWARM-1717] Remove old MP-Metrics testsuite (Done)

  • [SWARM-1720] Update MP Fraction stability (Done)

  • [SWARM-1721] MP FT CDI extension location (Done)

Feature Request

  • [SWARM-1673] MP FT - allow to disable SynchronousCircuitBreaker (Done)

  • [SWARM-1674] MP FT - allow to cache config parameters (Done)

  • [SWARM-1679] MP FT - support annotations added via portable extension (Done)

  • [SWARM-1690] MP FT - support non-public fallback methods (Done)

Resources

Per usual, we tend to hang out on irc.freenode.net in #wildfly-swarm.

All bug and feature-tracking is kept in JIRA.

Documentation for this release is available:

Thank you, Contributors!

We appreciate all of our contributors since the last release:

Examples

  • Ken Finnigan

Core

  • luan-cestari

  • Heiko Braun

  • Ken Finnigan

  • Alin Iacob

  • Martin Kouba

  • Scott Marlow

  • Bob McWhirter

  • Jeff Mesnil

  • Tomas Radej

  • Ramesh Reddy

  • Antoine Sabot-Durand

  • Scott Stark

  • Ladislav Thon

  • Heiko W. Rupp