Reviews run for a minimum of one week. The outcome of the review is decided on this date. This is the last day to make comments or ask questions about this review.
4.0.0
Lyo 4.0 release notes
Major changes
- EPL 2.0 license upgrade
- Maven Central deployment
- JAX-RS 2.0 upgrade and removal of Wink dependencies
- New OSLC Client
- Many updates to Lyo Designer, including
Overall
- Switch from EPL-1.0 OR BSD-3-Simple license (and in some cases only EPL-1.0) to EPL-2.0 OR BSD-3-Simple for all library code and BSD-3-Simple for the generated code. EPL still gives you patent protection if you choose so but generated code now does not contain any mention of EPL “mild” copyleft license and should make it easy for you to get the code included in your project or relicense it under another OSS license (not a legal advice).
- Switch from deep code scanning release process (Type B) to lightweight deep license check process (Type A). Great reduction in time overhead.
- Monorepo migration. Will help us to make milestone/RC releases in a single pull request among other things. Also, version mismatches should not occur any more thanks to a single parent and generation of the Dependency Convergence reports via Maven.
- Lyo is now on Maven Central!
Core
- Wink is now removed from the critical path and Lyo has upgaded from JAX-RS 1.1 to JAX-RS 2.0. Apache has retired Wink to attic more than 5 years ago and it had some bespoke APIs. This is the main breaking change.
Domains
- Domain classes are now generated via a Lyo Designer model and are up to date with the OSLC specs.
Client
- New client written using JAX-RS API (as well as some necessary dependencies on Jersey client and Apache HttpClient directly, unfortunately) is here! The reason is that Wink client was not JAX-RS based at all and this was the most troublesome part of the migration.
- Single interface for OAuth and non-OAuth clients.
- Old client is deprecated but still shipped in case you need to use it. Using the old client inside the new JAX-RS based OSLC Server is strongly discouraged. The recommended use-case is a standalone Java SE app (due to a potential JAX-RS 1.1 and JAX-2.0 conflict)
- Old client’s domain classes are extracted into a separate package (in a rare case you need to use them from the new client) and marked deprecated (you should give the new domains package a try!).
Designer
- LyoDesigner is now available as a stand-alone Eclipse RCP (Rich Client Platform) application
- Support for the generation of complete maven projects (including project files).
- Improve modelling & generation for resource C.R.U.D. operations.
- Modelling and generation support for authentication, rootservices, OAuth1.0
- Modelling and generation support for Lyo.store
- Modelling and generation support for In-memory TRS
- Automated support for swagger documentation
- Support for an embedded Swagger-ui Editor.
- OSLC4J Core & Client available as osgi bundles
Validation
- Due to a change in license check policy, we can now release the Lyo Validation library for OSLC Shape and SHACL validation. This was not possible before due to the IP review delay of nearly 100 Scala dependencies.
Sample code
- Lyo now keeps track of all known sample code and OSS OSLC Servers: https://github.com/eclipse/lyo/blob/master/README.md#test-and-sample-repositories
- Log in to post comments