@dsivd/prestations-ng 18.8.0-beta.13 → 19.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.browserslistrc +12 -21
- package/ANGULAR_SIGNALS.md +856 -0
- package/CHANGELOG.md +333 -312
- package/COMPONENTS.md +350 -0
- package/CONTRIBUTING.md +2 -4
- package/ESLINT_MIGRATION_GUIDE.md +64 -67
- package/IAM_ACV_MIGRATION_OIDC.md +138 -0
- package/MULTI_ETAPES.md +1 -1
- package/README.md +4 -2
- package/UPGRADING_V12.md +0 -10
- package/UPGRADING_V16.md +0 -1
- package/UPGRADING_V18.md +398 -233
- package/UPGRADING_V19.md +174 -0
- package/dsivd-prestations-ng-19.0.0-beta.2.tgz +0 -0
- package/fesm2022/dsivd-prestations-ng.mjs +9333 -10485
- package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
- package/index.html +1 -1
- package/package.json +18 -17
- package/schematics/utility/add-allow-synthetic-default-imports.js +2 -2
- package/schematics/utility/add-allowed-common-js-dependencies.js +3 -3
- package/schematics/utility/foehn2-bootstrap5-migration.js +21 -21
- package/schematics/utility/migrate-to-karma-coverage.js +2 -2
- package/schematics/utility/remove-emit-decorator-metadata.js +2 -2
- package/types/dsivd-prestations-ng.d.ts +3699 -0
- package/MODULES.md +0 -371
- package/abstract-page-component.d.ts +0 -57
- package/directives/currency-formatter.directive.d.ts +0 -20
- package/directives/formatter.module.d.ts +0 -11
- package/directives/iban-formatter.directive.d.ts +0 -10
- package/directives/ide-formatter.directive.d.ts +0 -17
- package/directives/ndc-formatter.directive.d.ts +0 -24
- package/dsivd-prestations-ng-18.8.0-beta.13.tgz +0 -0
- package/foehn-address/address.type.d.ts +0 -27
- package/foehn-address/foehn-address.module.d.ts +0 -15
- package/foehn-address/foehn-display-address.component.d.ts +0 -16
- package/foehn-address/foehn-input-address.component.d.ts +0 -107
- package/foehn-address/foehn-input-foreign-locality.component.d.ts +0 -16
- package/foehn-address/foehn-input-foreign-street.component.d.ts +0 -12
- package/foehn-agenda/calendar.type.d.ts +0 -9
- package/foehn-agenda/current-week.type.d.ts +0 -5
- package/foehn-agenda/day-slots.type.d.ts +0 -5
- package/foehn-agenda/foehn-agenda-navigation/foehn-agenda-navigation.component.d.ts +0 -21
- package/foehn-agenda/foehn-agenda-timeslot-panel/foehn-agenda-timeslot-panel.component.d.ts +0 -51
- package/foehn-agenda/foehn-agenda.component.d.ts +0 -29
- package/foehn-agenda/foehn-agenda.module.d.ts +0 -17
- package/foehn-agenda/pagination-week.type.d.ts +0 -5
- package/foehn-agenda/selected-slot.type.d.ts +0 -7
- package/foehn-autocomplete/foehn-autocomplete.component.d.ts +0 -126
- package/foehn-autocomplete/foehn-autocomplete.module.d.ts +0 -13
- package/foehn-boolean/foehn-boolean-checkbox.component.d.ts +0 -6
- package/foehn-boolean/foehn-boolean-radio.component.d.ts +0 -9
- package/foehn-boolean/foehn-boolean.module.d.ts +0 -12
- package/foehn-breadcrumb/breadcrumb-event.service.d.ts +0 -48
- package/foehn-breadcrumb/breadcrumb.d.ts +0 -19
- package/foehn-breadcrumb/foehn-breadcrumb.component.d.ts +0 -30
- package/foehn-breadcrumb/foehn-breadcrumb.module.d.ts +0 -10
- package/foehn-checkables/foehn-checkable-group.component.d.ts +0 -64
- package/foehn-checkables/foehn-checkables.module.d.ts +0 -17
- package/foehn-checkables/foehn-checkbox.component.d.ts +0 -9
- package/foehn-checkables/foehn-radio.component.d.ts +0 -12
- package/foehn-checkables/foehn-select.component.d.ts +0 -22
- package/foehn-checkables/form-select-option-group.d.ts +0 -4
- package/foehn-checkables/form-select-option.d.ts +0 -5
- package/foehn-confirm-modal/foehn-confirm-modal-content.d.ts +0 -9
- package/foehn-confirm-modal/foehn-confirm-modal.component.d.ts +0 -17
- package/foehn-confirm-modal/foehn-confirm-modal.module.d.ts +0 -9
- package/foehn-confirm-modal/foehn-confirm-modal.service.d.ts +0 -18
- package/foehn-date-picker/date-picker-navigation.helper.d.ts +0 -26
- package/foehn-date-picker/date-picker.helper.d.ts +0 -30
- package/foehn-date-picker/day-month.type.d.ts +0 -8
- package/foehn-date-picker/focused-day.type.d.ts +0 -6
- package/foehn-date-picker/foehn-date-picker.component.d.ts +0 -78
- package/foehn-date-picker/foehn-date-picker.module.d.ts +0 -13
- package/foehn-date-picker/month-year.type.d.ts +0 -4
- package/foehn-date-picker-button/foehn-date-picker-button.component.d.ts +0 -31
- package/foehn-date-picker-button/foehn-date-picker-button.module.d.ts +0 -12
- package/foehn-debug-summary/foehn-debug-summary.component.d.ts +0 -21
- package/foehn-debug-summary/foehn-debug-summary.component.module.d.ts +0 -9
- package/foehn-decision-electronique/foehn-decision-electronique.component.d.ts +0 -11
- package/foehn-decision-electronique/foehn-decision-electronique.module.d.ts +0 -11
- package/foehn-dropdown-menu/dropdown-menu-group.type.d.ts +0 -5
- package/foehn-dropdown-menu/dropdown-menu-item.type.d.ts +0 -9
- package/foehn-dropdown-menu/foehn-dropdown-menu.component.d.ts +0 -42
- package/foehn-dropdown-menu/foehn-dropdown-menu.module.d.ts +0 -11
- package/foehn-feedback-notification/foehn-feedback-notification.component.d.ts +0 -32
- package/foehn-feedback-notification/foehn-feedback-notification.module.d.ts +0 -11
- package/foehn-feedback-notification/foehn-feedback-notification.type.d.ts +0 -8
- package/foehn-footer/foehn-footer.component.d.ts +0 -44
- package/foehn-footer/foehn-footer.module.d.ts +0 -9
- package/foehn-footer/footer-link.type.d.ts +0 -4
- package/foehn-form/foehn-form.component.d.ts +0 -27
- package/foehn-form/foehn-form.module.d.ts +0 -10
- package/foehn-form/register-ng-model.service.d.ts +0 -9
- package/foehn-growl/foehn-growl.component.d.ts +0 -17
- package/foehn-growl/foehn-growl.module.d.ts +0 -8
- package/foehn-growl/growl-broker.service.d.ts +0 -12
- package/foehn-growl/growl-message.d.ts +0 -7
- package/foehn-growl/growl-types.d.ts +0 -6
- package/foehn-header/foehn-header.component.d.ts +0 -47
- package/foehn-header/foehn-header.module.d.ts +0 -14
- package/foehn-header/foehn-skip-link.component.d.ts +0 -23
- package/foehn-help-modal/foehn-help-modal.component.d.ts +0 -17
- package/foehn-help-modal/foehn-help-modal.module.d.ts +0 -10
- package/foehn-help-modal/foehn-help-modal.type.d.ts +0 -13
- package/foehn-icons/abstract-icon-component.d.ts +0 -9
- package/foehn-icons/foehn-icon-calendar.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-check-square-o.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-check.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-chevron-down.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-chevron-left.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-chevron-right.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-chevron-up.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-clock.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-comment-dots.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-edit.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-external-link-alt.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-file-pdf.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-info-circle.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-lock.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-map-marker.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-minus-circle.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-pencil.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-plus-circle.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-plus-square.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-search.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-times.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-trash-alt.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-unlock-alt.component.d.ts +0 -8
- package/foehn-icons/foehn-icon-user.component.d.ts +0 -8
- package/foehn-icons/foehn-icons.module.d.ts +0 -31
- package/foehn-input/foehn-input-email.component.d.ts +0 -15
- package/foehn-input/foehn-input-hidden.component.d.ts +0 -14
- package/foehn-input/foehn-input-number.component.d.ts +0 -42
- package/foehn-input/foehn-input-password.component.d.ts +0 -12
- package/foehn-input/foehn-input-phone.component.d.ts +0 -25
- package/foehn-input/foehn-input-prefixed-text.component.d.ts +0 -26
- package/foehn-input/foehn-input-string.component.d.ts +0 -9
- package/foehn-input/foehn-input-text.component.d.ts +0 -11
- package/foehn-input/foehn-input-textarea.component.d.ts +0 -22
- package/foehn-input/foehn-input.component.d.ts +0 -127
- package/foehn-input/foehn-input.module.d.ts +0 -24
- package/foehn-input/pattern.const.d.ts +0 -11
- package/foehn-input-date/foehn-input-date.component.d.ts +0 -33
- package/foehn-input-date-time/foehn-input-date-time.component.d.ts +0 -40
- package/foehn-input-time/foehn-input-time.component.d.ts +0 -19
- package/foehn-list/foehn-list.component.d.ts +0 -27
- package/foehn-list/foehn-list.module.d.ts +0 -9
- package/foehn-list/page-change-event.d.ts +0 -5
- package/foehn-menu-prestation/abstract-list-item-detail-page.component.d.ts +0 -35
- package/foehn-menu-prestation/abstract-menu-page.component.d.ts +0 -13
- package/foehn-menu-prestation/abstract-page-from-menu.component.d.ts +0 -20
- package/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.d.ts +0 -12
- package/foehn-menu-prestation/foehn-list-summary/foehn-list-item-description.d.ts +0 -6
- package/foehn-menu-prestation/foehn-list-summary/foehn-list-item.d.ts +0 -5
- package/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.d.ts +0 -40
- package/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.d.ts +0 -16
- package/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.d.ts +0 -23
- package/foehn-menu-prestation/foehn-menu-prestation.module.d.ts +0 -18
- package/foehn-misc/foehn-abbr.component.d.ts +0 -7
- package/foehn-misc/foehn-misc.module.d.ts +0 -7
- package/foehn-modal/foehn-modal.component.d.ts +0 -24
- package/foehn-modal/foehn-modal.module.d.ts +0 -11
- package/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.d.ts +0 -54
- package/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.module.d.ts +0 -13
- package/foehn-nav13/foehn-input-nav13.component.d.ts +0 -20
- package/foehn-nav13/foehn-input-nav13.module.d.ts +0 -11
- package/foehn-navigation/abstract-foehn-navigation.component.d.ts +0 -19
- package/foehn-navigation/foehn-navigation/foehn-navigation.component.d.ts +0 -22
- package/foehn-navigation/foehn-navigation.module.d.ts +0 -13
- package/foehn-navigation/foehn-navigation.service.d.ts +0 -69
- package/foehn-navigation/foehn-simple-navigation/foehn-simple-navigation.component.d.ts +0 -8
- package/foehn-notfound/foehn-notfound.component.d.ts +0 -19
- package/foehn-notfound/foehn-notfound.module.d.ts +0 -10
- package/foehn-page/foehn-page-counter.component.d.ts +0 -15
- package/foehn-page/foehn-page-expiration-timer/current-session-expiration.d.ts +0 -5
- package/foehn-page/foehn-page-expiration-timer/demande-expiration-interceptor.d.ts +0 -15
- package/foehn-page/foehn-page-expiration-timer/demande-expiration.service.d.ts +0 -16
- package/foehn-page/foehn-page-expiration-timer/foehn-page-expiration-timer.component.d.ts +0 -36
- package/foehn-page/foehn-page-expiration-timer/interval.helper.d.ts +0 -3
- package/foehn-page/foehn-page-modal.component.d.ts +0 -23
- package/foehn-page/foehn-page-modal.service.d.ts +0 -12
- package/foehn-page/foehn-page.component.d.ts +0 -80
- package/foehn-page/foehn-page.module.d.ts +0 -24
- package/foehn-page/foehn-page.service.d.ts +0 -19
- package/foehn-page/foehn-transmit-waiting-modal/demande-transmit-interceptor.d.ts +0 -16
- package/foehn-page/foehn-transmit-waiting-modal/foehn-transmit-waiting-modal.component.d.ts +0 -11
- package/foehn-page/foehn-transmit-waiting-modal/foehn-transmit-waiting-modal.service.d.ts +0 -11
- package/foehn-recap-section/foehn-recap-section.component.d.ts +0 -21
- package/foehn-recap-section/foehn-recap-section.module.d.ts +0 -10
- package/foehn-recap-section/foehn-recap-section.type.d.ts +0 -17
- package/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.d.ts +0 -20
- package/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.d.ts +0 -8
- package/foehn-status-progress-bar/foehn-status-progress-bar.component.d.ts +0 -23
- package/foehn-status-progress-bar/foehn-status-progress-bar.module.d.ts +0 -10
- package/foehn-table/foehn-table-column-configuration.d.ts +0 -14
- package/foehn-table/foehn-table-page-change-event.d.ts +0 -5
- package/foehn-table/foehn-table.component.d.ts +0 -40
- package/foehn-table/foehn-table.module.d.ts +0 -13
- package/foehn-table/row-element.type.d.ts +0 -4
- package/foehn-table/tableSort.d.ts +0 -4
- package/foehn-upload/abstract-foehn-uploader.component.d.ts +0 -68
- package/foehn-upload/document-reference.d.ts +0 -12
- package/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.d.ts +0 -27
- package/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.type.d.ts +0 -11
- package/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.d.ts +0 -38
- package/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.d.ts +0 -13
- package/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.d.ts +0 -42
- package/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.d.ts +0 -13
- package/foehn-upload/foehn-multi-upload/multi-upload.service.d.ts +0 -29
- package/foehn-upload/foehn-multi-upload/multi-upload.type.d.ts +0 -11
- package/foehn-upload/foehn-multi-upload/pending-upload.service.d.ts +0 -26
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.d.ts +0 -38
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.d.ts +0 -14
- package/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.component.d.ts +0 -22
- package/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.module.d.ts +0 -11
- package/foehn-upload/foehn-upload-progress-bar/upload-progress.service.d.ts +0 -19
- package/foehn-upload/foehn-upload-progress-bar/upload-progress.type.d.ts +0 -6
- package/foehn-upload/page-upload-limit.service.d.ts +0 -22
- package/foehn-upload/pending-upload.type.d.ts +0 -9
- package/foehn-upload/uploader.helper.d.ts +0 -66
- package/foehn-user-connected-as/foehn-user-connected-as.component.d.ts +0 -12
- package/foehn-user-connected-as/foehn-user-connected-as.module.d.ts +0 -9
- package/foehn-validation-alert-summary/foehn-validation-alert-summary.component.d.ts +0 -20
- package/foehn-validation-alert-summary/foehn-validation-alert-summary.module.d.ts +0 -9
- package/foehn-validation-alerts/foehn-validation-alerts.component.d.ts +0 -14
- package/foehn-validation-alerts/foehn-validation-alerts.module.d.ts +0 -8
- package/form-error.d.ts +0 -5
- package/form-post-response.d.ts +0 -19
- package/gesdem/gesdem-error-handler.service.d.ts +0 -22
- package/gesdem/gesdem-event.service.d.ts +0 -16
- package/gesdem/gesdem-handler.service.d.ts +0 -52
- package/gesdem/gesdem-loader.guard.d.ts +0 -2
- package/gesdem/gesdem-statut-utils.d.ts +0 -12
- package/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.d.ts +0 -39
- package/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.d.ts +0 -59
- package/gesdem-action-recovery/gesdem-action-recovery.module.d.ts +0 -17
- package/gesdem-action-recovery/gesdem-action-recovery.service.d.ts +0 -24
- package/gesdem-action-recovery/reprise-info.d.ts +0 -6
- package/gesdem-confirmation/gesdem-confirmation.component.d.ts +0 -65
- package/gesdem-confirmation/gesdem-confirmation.module.d.ts +0 -12
- package/gesdem-error/gesdem-error.component.d.ts +0 -34
- package/gesdem-error/gesdem-error.module.d.ts +0 -12
- package/global.const.d.ts +0 -1
- package/helpers/demande.helper.d.ts +0 -3
- package/helpers/object.helper.d.ts +0 -30
- package/i18n-form.d.ts +0 -5
- package/index.d.ts +0 -5
- package/pipes/currency.pipe.d.ts +0 -10
- package/pipes/date.pipe.d.ts +0 -12
- package/pipes/formatIde.pipe.d.ts +0 -7
- package/pipes/pipes.module.d.ts +0 -9
- package/prestations-ng-core.module.d.ts +0 -12
- package/public-api.d.ts +0 -238
- package/refinf/model/address-type-light.d.ts +0 -5
- package/refinf/model/canton.d.ts +0 -4
- package/refinf/model/district.d.ts +0 -7
- package/refinf/model/municipality.d.ts +0 -9
- package/refinf/model/place-of-origin.d.ts +0 -9
- package/refinf/model/postal-locality.d.ts +0 -11
- package/sdk-appinfo/application-info.d.ts +0 -61
- package/sdk-appinfo/application-info.service.d.ts +0 -32
- package/sdk-currency/currency.helper.d.ts +0 -9
- package/sdk-date/date.helper.d.ts +0 -20
- package/sdk-dictionary/default-dictionary.d.ts +0 -2
- package/sdk-dictionary/sdk-dictionary.module.d.ts +0 -7
- package/sdk-dictionary/sdk-dictionary.pipe.d.ts +0 -12
- package/sdk-dictionary/sdk-dictionary.service.d.ts +0 -44
- package/sdk-drafts/draft.model.d.ts +0 -5
- package/sdk-drafts/drafts-container.component.d.ts +0 -33
- package/sdk-drafts/drafts.module.d.ts +0 -14
- package/sdk-drafts/drafts.service.d.ts +0 -20
- package/sdk-epayment/model/EPaymentParameters.d.ts +0 -21
- package/sdk-epayment/pending-payment/pending-payment.component.d.ts +0 -9
- package/sdk-epayment/sdk-epayment.component.d.ts +0 -33
- package/sdk-epayment/sdk-epayment.module.d.ts +0 -11
- package/sdk-epayment/sdk-epayment.service.d.ts +0 -21
- package/sdk-events-logger/sdk-event-type.d.ts +0 -12
- package/sdk-events-logger/sdk-event.d.ts +0 -8
- package/sdk-events-logger/sdk-events-logger.service.d.ts +0 -18
- package/sdk-recaptcha/grecaptcha/grecaptcha.component.d.ts +0 -39
- package/sdk-recaptcha/recaptcha.service.d.ts +0 -44
- package/sdk-recaptcha/sdk-recaptcha.component.d.ts +0 -27
- package/sdk-recaptcha/sdk-recaptcha.module.d.ts +0 -9
- package/sdk-redirect/iam-expired-interceptor.service.d.ts +0 -12
- package/sdk-redirect/redirect.component.d.ts +0 -22
- package/sdk-redirect/sdk-redirect.module.d.ts +0 -9
- package/sdk-session-info/session-info-data.d.ts +0 -29
- package/sdk-session-info/session-info-with-application.service.d.ts +0 -20
- package/sdk-session-info/session-info.service.d.ts +0 -17
- package/sdk-statistics/sdk-statistics.service.d.ts +0 -24
- package/sdk-support-alert/support-alert-container.component.d.ts +0 -20
- package/sdk-support-alert/support-alert.component.d.ts +0 -12
- package/sdk-support-alert/support-alert.model.d.ts +0 -12
- package/sdk-support-alert/support-alert.module.d.ts +0 -10
- package/sdk-support-alert/support-alert.service.d.ts +0 -34
- package/service-locator.d.ts +0 -4
- package/supported-browser.d.ts +0 -1
- package/validation/validation-handler.service.d.ts +0 -15
package/UPGRADING_V19.md
ADDED
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
# PRESTAKIT : Upgrading from v18 to v19
|
|
2
|
+
|
|
3
|
+
To migrate your project from `prestakit` v18 to v19, you need to migrate prestations-ng and prestations-be, as usual.
|
|
4
|
+
But to migrate to prestations-be v19, you need to migrate your project to Spring Boot 4 / Java 25.
|
|
5
|
+
|
|
6
|
+
Let's start by migrating to Spring Boot 4 / prestations-be v19.
|
|
7
|
+
|
|
8
|
+
## PRESTATIONS-BE (via parent - Spring boot 4 / java 25)
|
|
9
|
+
|
|
10
|
+
From here on, we are in the root folder of your project, for example ~/git/cybsdk/skeleton.
|
|
11
|
+
|
|
12
|
+
### Spring Boot 4
|
|
13
|
+
|
|
14
|
+
You can switch to Java 25 `jdk25` + change in IntelliJ: right-click on your project > Open Module Settings > Project > set "SDK" to `jdk25` from devtools and "Language
|
|
15
|
+
level" to `25` in "Modules"
|
|
16
|
+
|
|
17
|
+
Use the latest application-parent v15+ in your `pom.xml`.
|
|
18
|
+
|
|
19
|
+
You can use this OpenRewrite recipe to simplify the migration (run with java 25).
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
source ~/devtools/fordev.sh 25 20
|
|
23
|
+
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run -Drewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-spring:RELEASE -Drewrite.activeRecipes=org.openrewrite.java.spring.boot4.UpgradeSpringBoot_4_0 -Pnof,noft
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
#### Fixes
|
|
27
|
+
|
|
28
|
+
Fix application.properties :
|
|
29
|
+
|
|
30
|
+
```diff
|
|
31
|
+
# Remove the following properties if it was added by the recipe
|
|
32
|
+
spring.liquibase.password=${spring.datasource.password}
|
|
33
|
+
spring.liquibase.username=${spring.datasource.username}
|
|
34
|
+
Replace the spring.jackson.serialization.WRITE_DATES_AS_TIMESTAMPS property by spring.jackson.datatype.datetime.write-dates-as-timestamps if it was not done by the recipe
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
If the following plugin with Lombok path was added by the recipe, remove this plugin:
|
|
38
|
+
|
|
39
|
+
```xml
|
|
40
|
+
<plugin>
|
|
41
|
+
<groupId>org.apache.maven.plugins</groupId>
|
|
42
|
+
<artifactId>maven-compiler-plugin</artifactId>
|
|
43
|
+
<configuration>
|
|
44
|
+
<annotationProcessorPaths>
|
|
45
|
+
<path>
|
|
46
|
+
<groupId>org.projectlombok</groupId>
|
|
47
|
+
<artifactId>lombok</artifactId>
|
|
48
|
+
<version>1.18.40</version>
|
|
49
|
+
</path>
|
|
50
|
+
</annotationProcessorPaths>
|
|
51
|
+
</configuration>
|
|
52
|
+
</plugin>
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
If the code uses `AutoConfigureMockMvc`, add:
|
|
56
|
+
|
|
57
|
+
```xml
|
|
58
|
+
<dependency>
|
|
59
|
+
<groupId>org.springframework.boot</groupId>
|
|
60
|
+
<artifactId>spring-boot-starter-webmvc-test</artifactId>
|
|
61
|
+
<scope>test</scope>
|
|
62
|
+
</dependency>
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
And replace the old `AutoConfigureMockMvc` import which is not recognized anymore by the new one.
|
|
66
|
+
|
|
67
|
+
If we use in pom.xml Spring/Hibernate dependencies (like hibernate-jpamodelgen), check the Spring Boot 4 migration
|
|
68
|
+
guide to see if it has been replaced by another library: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-4.0-Migration-Guide
|
|
69
|
+
|
|
70
|
+
### Jackson migration
|
|
71
|
+
|
|
72
|
+
With Spring Boot 4, Jackson 3 is now used instead of Jackson 2, so we need to replace the previous Jackson 2 classes.
|
|
73
|
+
Replace `com.fasterxml.jackson.databind.ObjectMapper` with `tools.jackson.databind.json.JsonMapper`.
|
|
74
|
+
|
|
75
|
+
### BO : Package renaming
|
|
76
|
+
|
|
77
|
+
- `ch.vd.cyberadminbe.jms` has been moved to `ch.vd.cyber.backofficebe.jms`
|
|
78
|
+
- `ch.vd.cyberadminbe.security` has been moved to `ch.vd.cyber.backofficebe.security`
|
|
79
|
+
- `ch.vd.cyberadminbe.editique` has been moved to `ch.vd.cyber.backofficebe.editique`
|
|
80
|
+
- `cyberadminbe.config.CyberAdminBeEsbHttpConfig` has renamed to `backofficebe.config.BoCommonEsbHttpConfig`
|
|
81
|
+
|
|
82
|
+
### BO : Brave Tracer
|
|
83
|
+
|
|
84
|
+
If you are using Brave Tracer (search `brace.Tracer` in the code, usually in backoffices), you need to replace it with
|
|
85
|
+
OpenTelemetry by adding the following dependencies (already included by `ch.vd.cyber:starter-bo-jdbc-jms` and `ch.vd.cyber:starter-prestation`):
|
|
86
|
+
|
|
87
|
+
```xml
|
|
88
|
+
<!-- Tracing -->
|
|
89
|
+
<dependency>
|
|
90
|
+
<groupId>org.springframework.boot</groupId>
|
|
91
|
+
<artifactId>spring-boot-micrometer-tracing-opentelemetry</artifactId>
|
|
92
|
+
</dependency>
|
|
93
|
+
<dependency>
|
|
94
|
+
<groupId>io.micrometer</groupId>
|
|
95
|
+
<artifactId>micrometer-tracing-bridge-otel</artifactId>
|
|
96
|
+
</dependency>
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
And replace `brave.Tracer` imports by `io.micrometer.tracing.Tracer`;
|
|
100
|
+
|
|
101
|
+
#### BO : EsbMessageListenerWithSleuthIntegration
|
|
102
|
+
|
|
103
|
+
This base class has been moved from `ch.vd.cyber.sdk:cyberadmin-be` to `ch.vd.cyber.sdk:backoffice-be`
|
|
104
|
+
and renamed `EsbMessageListenerWithTracingPropagation`.
|
|
105
|
+
the constructor has also been updated :
|
|
106
|
+
|
|
107
|
+
```java
|
|
108
|
+
import ch.vd.cyberadminbe.jms.EsbMessageListenerWithSleuthIntegration;
|
|
109
|
+
import brave.Tracer;
|
|
110
|
+
|
|
111
|
+
public class MyListener extends EsbMessageListenerWithSleuthIntegration {
|
|
112
|
+
public MyListener(final EsbJmsTemplate nozipEsbTemplate,
|
|
113
|
+
final Tracer tracer) {
|
|
114
|
+
super(nozipEsbTemplate, tracer);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
should now be :
|
|
120
|
+
|
|
121
|
+
```java
|
|
122
|
+
import ch.vd.cyber.backofficebe.jms.EsbMessageListenerWithTracingPropagation;
|
|
123
|
+
import io.micrometer.tracing.propagation.Propagator;
|
|
124
|
+
import io.micrometer.tracing.Tracer;
|
|
125
|
+
|
|
126
|
+
public class MyListener extends EsbMessageListenerWithTracingPropagation {
|
|
127
|
+
public MyListener(final EsbJmsTemplate nozipEsbTemplate,
|
|
128
|
+
final Tracer tracer,
|
|
129
|
+
final Propagator propagator) {
|
|
130
|
+
super(nozipEsbTemplate, tracer, propagator);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
finally, if you have mock issues with you integration tests, you can use `ch.vd.cyber.backofficebe.jms.JmsTestUtils.mockTracingPropagation(final Tracer tracerMock, final Propagator propagatorMock)`
|
|
136
|
+
|
|
137
|
+
### BO : ESB Integration
|
|
138
|
+
|
|
139
|
+
- Check that you should always create your ListenerContainer with `ch.vd.cyber.backofficebe.jms.EsbConfigUtils.createDefaultMessageListenerContainer(...)`
|
|
140
|
+
- This simplifies the configuration and ensures that the correct `MessageListenerContainer` is used with the new tracing integration.
|
|
141
|
+
|
|
142
|
+
### Property migration
|
|
143
|
+
|
|
144
|
+
Run your application with this dependency :
|
|
145
|
+
|
|
146
|
+
```
|
|
147
|
+
<dependency>
|
|
148
|
+
<groupId>org.springframework.boot</groupId>
|
|
149
|
+
<artifactId>spring-boot-properties-migrator</artifactId>
|
|
150
|
+
<scope>runtime</scope>
|
|
151
|
+
</dependency>
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
Look for logs that indicate property you should migrate (watch for WARN logs of class PropertiesMigrationListener), update them and remove the dependency
|
|
155
|
+
|
|
156
|
+
### Debugging tips
|
|
157
|
+
|
|
158
|
+
Spring boot 4 doesn't support calling a controller with a trailing slash, fix the url called (/api/ping != /api/ping**/**)
|
|
159
|
+
|
|
160
|
+
### Clean Sonar code smells
|
|
161
|
+
|
|
162
|
+
You can use the following OpenRewrite recipes to clean Sonar code smells. It is recommended to do it after the migration to avoid mixing the migration changes with code cleaning changes, and to make it easier to review.
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run -Drewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-testing-frameworks:RELEASE -Drewrite.activeRecipes=org.openrewrite.java.testing.junit.JUnit6BestPractices, -Pnof,noft
|
|
166
|
+
|
|
167
|
+
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run -Drewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-static-analysis:RELEASE -Drewrite.activeRecipes=org.openrewrite.staticanalysis.CommonStaticAnalysis -Pnof,noft
|
|
168
|
+
|
|
169
|
+
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run --define rewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-testing-frameworks:RELEASE --define rewrite.activeRecipes=org.openrewrite.java.testing.mockito.MockitoBestPractices --define rewrite.exportDatatables=true -Pnof,noft
|
|
170
|
+
|
|
171
|
+
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run -Drewrite.activeRecipes=org.openrewrite.java.RemoveUnusedImports -Pnof,noft
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
Take a look at Sonar to see other things that you can improve or ignore.
|
|
Binary file
|