91. devonfw Release notes 2020.04

91.1. Introduction

We are proud to announce the immediate release of devonfw version 2020.04. This version is the first one with the new versioning that will make easier to the community to identify when it was released since we use the year and month as many other software distributions.

This release includes lots of bug fixes and many version updates, but it is very important to highlight the following improvements:

  • New devonfw IDE auto-configure project feature.

  • Improved devonfw IDE plugin configuration.

  • New devon4j kafka module.

  • New devon4j JWT module.

  • New devon4j authorization of batches feature.

  • Dozer replaced with Orika in devon4j.

  • Support for composite keys in devon4j and CobiGen.

  • Multiple enhancements for project specific plugin development and usage of project specific template sets in CobiGen.

  • Ability to adapt your own templates by making use of CobiGen CLI.

  • Better responsiveness in eclipse and bugfixes in all assets in CobiGen.

  • devon4ng updated to Angular 9, NgRx 9 and Ionic 5, including documentation, samples and templates.

  • Yarn 2 support in devon4ng.

  • devon4node updated to NestJS 7 (packages, samples and documentation)

  • devon4node TSLint replaced with ESLint.

  • @devon4node/config package added.

  • devon4net updated to latest .NET Core 3.1.3 LTS version.

  • Update of the Production Line templates for devonfw projects in devonfw shop floor.

  • New merge feature included in the devonfw shop floor cicdgen tool.

  • Updated sonar-devon4j-plugin:

    • Improved coloring and other visual cues to our rule descriptions to highlight good and bad code examples.

    • Improved the locations of issues thrown on method- and class-level.

Please check the detailed list below.

This would have not been possible without the commitment and hard work of the devonfw core team, German, Indian and ADCenter Valencia colleagues and collaborators as, among many others, the Production Line team.

91.2. devonfw IDE

The consolidated list of features for this devonfw IDE release is as it follows.

91.2.1. 2020.04.001

Starting with this release we have changed the versioning schema in devonfw to yyyy.mm.NNN where yyyy.mm is the date of the planned milestone release and NNN is a running number increased with every bug- or security-fix update.

  • #394 variable from devon.properties not set if not terminated with newline

  • #399 launching of Intellij fails with No such file or directory error.

  • #371 Eclipse plugin installation broke

  • #390 maven get/set-version buggy

  • #397 migration support for devon4j 2020.04.001

  • #400 allow custom args for release

The full list of changes for this release can be found in milestone 2020.04.001.

91.2.2. 3.3.1

New release with bugfixes and new ide plugin feature:

  • #343: Setup can’t find Bash nor Git

  • #369: Fix flattening of POMs

  • #386: Feature/clone recursive

  • #379: Use own extensions folder in devonfw-ide

  • #381: Add ability to configure VS Code plugins via settings

  • #376: Improve Eclipse plugin configuration

  • #373: Fix project import on windows

  • #374: Rework build on import

The full list of changes for this release can be found in milestone 3.3.1.

91.2.3. 3.3.0

New release with bugfixes and new project import feature:

  • #343: Detect non-admin GitForWindows and Cygwin

  • #175: Ability to clone projects and import into Eclipse automatically

  • #346: devon eclipse add-plugin parameters swapped

  • #363: devon ide update does not pull latest project settings

  • #366: update java versions to latest fix releases

The full list of changes for this release can be found in milestone 3.3.0.

91.3. devon4j

The consolidated list of features for this devon4j release is as it follows.

91.3.1. 2020.04.001

Starting with this release we have changed the versioning schema in devonfw to yyyy.mm.NNN where yyyy.mm is the date of the planned milestone release and NNN is a running number increased with every bug- or security-fix update.

The following changes have been incorporated in devon4j:

  • #233: Various version updates

  • #241: Add module to support JWT and parts of OAuth

  • #147: Switch from dozer to orika

  • #180: Cleanup archtype

  • #240: Add unreferenced guides

  • #202: Architecture documentation needs update for components

  • #145: Add a microservices article in the documentation

  • #198: Deploy SNAPSHOTs to OSSRH in travis CI

  • #90: Authorization of batches

  • #221: Wrote monitoring guide

  • #213: Document logging of custom field in json

  • #138: Remove deprecated RevisionMetadata[Type]

  • #211: Archetype: security config broken

  • #109: LoginController not following devon4j to use JAX-RS but uses spring-webmvc instead

  • #52: Improve configuration

  • #39: Ability to log custom fields via SLF4J

  • #204: Slf4j version

  • #190: Rework of spring-batch integration

  • #210: Rework documentation for blob support

  • #191: Rework of devon4j-batch module

  • #209: Include performance info in separate fields

  • #207: Use more specific exception for not found entity

  • #208: Remove unnecesary clone

  • #116: Bug in JSON Mapping for ZonedDateTime

  • #184: Fixed BOMs so devon4j and archetype can be used again

  • #183: Error in executing the project created with devon4j

  • #177: Switch to new maven-parent

  • 169: Provide a reason, why unchecked exceptions are used in devon4j

Documentation is available at devon4j guide 2020.04.001. The full list of changes for this release can be found in milestone devon4j 2020.04.001.

91.4. devon4ng

The consolidated list of features for this devon4ng release is as it follows.

91.4.1. 2020.04.001

Starting with this release we have changed the versioning schema in devonfw to yyyy.mm.NNN where yyyy.mm is the date of the planned milestone release and NNN is a running number increased with every bug- or security-fix update.

  • #111: Yarn 2 support included

  • #96: devon4ng upgrade to Angular 9

    • Templates and samples updated to Angular 9, NgRx 9 and Ionic 5.

    • New internationalization module.

    • Documentation updates and improvements.

  • #95: Added token management info in documentation

91.5. devon4net

The consolidated list of features for this devon4net release is as it follows:

  • Updated to latest .NET Core 3.1.3 LTS version

  • Dependency Injection Autoregistration for services and repositories

  • Added multiple role managing claims in JWT

  • Added custom headers to circuit breaker

  • Reviewed default log configuration

  • Added support to order query results from database via lambda expression

  • Updated template and nuget packages

91.6. devon4node

The consolidated list of features for this devon4node release is as it follows:

  • Upgrade to NestJS 7 (packages, samples and documentation)

  • TSLint replaced with ESLint

  • Add lerna to project to manage all the packages

  • Add @devon4node/config package

  • Add new schematics: Repository

  • Improve WinstonLogger

  • Improve documentation

  • Update dependencies to latest versions

91.7. CobiGen

New release with updates and bugfixes:

  • devonfw templates:

    • #1063: Upgrade devon4ng Ionic template to latest version

    • #1065: devon4ng templates for devon4node

    • #1128: update java templates for composite keys

    • #1130: Update template for devon4ng application template

    • #1131: Update template for devon4ng NgRx template

    • #1149: .NET templates

    • #1146: Dev ionic template update bug fix

  • TypeScript plugin:

    • #1126: OpenApi parse/merge issues (ionic List templates)

  • Eclipse plugin:

    • #412: Write UI Test for HealthCheck use

    • #867: Cobigen processbar

    • #1069: #953 dot path

    • #1099: NPE on HealthCheck

    • #1100: 1099 NPE on health check

    • #1101: #867 fix import of core and api

    • #1102: eclipse_plugin doesn’t accept folders as input

    • #1134: (Eclipse-Plugin) Resolve Template utility classes from core

    • #1142: #1102 accept all kinds of input

  • CobiGen core:

    • #429: Reference external template files

    • #1143: Abort generation if external trigger does not match

    • #1125: Generation of templates from external increments does not work

    • #747: Variable assignment for external increments throws exception

    • #1133: Bugfix/1125 generation of templates from external increments does not work

    • #1127: #1119 added new TemplatesUtilsClassesUtil class to core

    • #953: NPE bug if foldername contains a dot

    • #1067: Feature/158 lat variables syntax

  • CobiGen CLI:

    • #1111: Infinity loop in mmm-code (MavenDependencyCollector.collectWithReactor)

    • #1113: cobigen-cli does not seem to properly resolve classes from dependencies

    • #1120: Feature #1108 custom templates folder

    • #1115: Fixing CLI bugs related to dependencies and custom templates jar

    • #1108: CobiGen CLI: Allow easy use of user’s templates

    • #1110: FileSystemNotFoundException blocking cobigen-cli

    • #1138: #1108 dev cli feature custom templates folder

    • #1136: (Cobigen-CLI) Resolve Template utility classes from core

91.8. devonfw-shop-floor

  • Add documentation for deploy jenkins slaves

  • Improve documentation

  • Add devon4net Openshift template

  • Add nginx docker image for devon4ng

  • Add Openshift provisioning

  • Production Line:

    • Updated MTS template: add step for dependency check and change the deployment method

    • Add template utils: initialize instance, openshift configuration, docker configuration and install sonar plugin

    • Add devon4net template

    • Add from existing template

    • Improve documentation

    • Refactor the documentation in order to follow the devonfw wiki workflow

    • Update devon4j, devon4ng, devon4net and devon4node in order to be able to choose the deployment method: none, docker or openshift.

    • Update the tools version in order to use the latest.

  • Production Line Shared Lib

    • Add more fuctionality to the existing classes.

    • Add classes: DependencyCheckConfiguration, DockerConfiguration and OpenshiftConfiguration

  • CICDGEN

    • Add devon4net support

    • Update tools versions in Jenkinsfiles to align with Production Line templates

    • Add merge strategies: error, keep, override, combine

    • Add lerna to the project

    • Minor improvements in the code

    • Add GitHub actions workflow to validate the new changes

    • Improve documentation

    • Breaking changes:

      • Remove the following parameters: plurl, ocurl

      • Add the following parameters: dockerurl, dockercertid, registryurl, ocname and merge

91.9. Sonar devon4j plugin

The consolidated list of features for this Sonar devon4j plugin release is as it follows.

91.9.1. 2020.04.001

This is the first version using our new versioning scheme. Here, the following issues were resolved:

  • #60: Fixed a bug in the naming check for Use-Case implementation classes

  • #67: Fixed a bug where the whole body of a method or a class was marked as the issue location. Now only the method / class headers will be highlighted.

  • #68: Made our rule descriptions more accessible by using better readable colors as well as alternative visual cues

  • #71: Fixed a bug where a NPE could be thrown

  • #74: Fixed a bug where a method always returned null

Unrelated to any specific issues, there was some refactoring and cleaning up done with the following two PRs:

  • PR #66: Refactored the prefixes of our rule names from 'Devon' to 'devonfw'

  • PR #65: Sorted security-related test files into their own package

Changes for this release can be found in milestone 2020.04.001.

91.10. My Thai Star

As always, our reference application, My Thai Star, contains some interesting improvements that come from the new features and bug fixes from the other assets. The list is as it follows:

  • devon4j - Java

    • Implement example batches with modified devon-batch

    • Upgrade spring boot version to 2.2.6 and devon4j 2020.004.001

    • Migrate from dozer to orika

  • devon4ng - Angular

    • Move configuration to NgRx store

  • devonfw shop floor - Jenkins

    • Update tools versions in order to align with Production Line templates

    • Add dependency check step (using dependency checker and yarn audit)

    • Send dependency checker reports to SonarQube

    • Changed deployment pipelines. Now pipelines are able to deploy docker containers using docker directly. No more ssh connections to execute commands in a remote machine are required.

    • Update documentation in order to reflect all changes

  • devon4nde - Node.js

    • Upgrade to NestJS 7

    • Add custom repositories

    • Add exceptions and exception filters

    • Add tests (missing in the previous version)

    • Split logic into use cases in order to make the test process easier

    • Minor patches and improvemets

    • Documentation updated in order to reflect the new implementation

Last updated 2020-08-05 10:44:41 UTC