camunda-bpm-platform icon indicating copy to clipboard operation
camunda-bpm-platform copied to clipboard

Support for Quarkus 3.8 LTS release

Open ThorbenLindhauer opened this issue 1 year ago • 6 comments

User Story (Required on creation)

  • As an software developer, I can use the Camunda Quarkus extension with the latest Quarkus LTS release

Functional Requirements (Required before implementation)

  • The Quarkus extension depends on a patch level of the latest Quarkus LTS release

Technical Requirements (Required before implementation)

Limitations of Scope

Hints

  • Details on LTS: https://quarkus.io/blog/lts-releases/
  • Quarkus 3.8 is scheduled for the end of February (https://quarkus.io/blog/our-plans-for-quarkus-3-7-3-8-3-9-released/).
    • Since Quarkus 3.7 and 3.8 are feature-wise the same, we could already start working on this topic with the Quarkus 3.7 release, scheduled for January 31st.

Links

  • https://jira.camunda.com/browse/SEC-499
  • https://jira.camunda.com/browse/SEC-723
  • https://jira.camunda.com/browse/OB-34

Breakdown

### camunda-bpm-platform PR
- [ ] https://github.com/camunda/camunda-bpm-platform/pull/4073
- [ ] https://github.com/camunda/camunda-bpm-platform/pull/4113
### camunda-docs-manual PR
- [ ] https://github.com/camunda/camunda-docs-manual/pull/1597

Dev2QA handover

  • [ ] Does this ticket need a QA test and the testing goals are not clear from the description? Add a Dev2QA handover comment

ThorbenLindhauer avatar Sep 26 '23 13:09 ThorbenLindhauer

Issues Identified during the Upgrade to Quarkus 3.7.1

Context: BeanContainer#instance is marked as @Deprecated in Quarkus 3.2.6.Final and is mentioned to be removed in future releases. Problem: The above method does not exist in Quarkus 3.7.1 Solution: Replace with BeanContainer#beanInstance(Class, Annotation...).create().get() as indicated by the javadoc of Quarkus 3.2.6.Final. Here is an example of the change in the Quarkus API

psavidis avatar Feb 05 '24 15:02 psavidis

Pending Upgrade

The release of Quarkus 3.8 is at the end of February. There will be a follow-up Pull Request for upgrading from 3.7 to 3.8.

psavidis avatar Feb 07 '24 08:02 psavidis

@psavidis I have tried the datasource quarkus example (dev and non-dev mode, h2 in memory) with the changes and notice:

  • with 3.2 and 7.20, an authorizationService bean is present in the dev mode
  • with 3.7 and 7.21, that bean is missing

💭 Shall we double check if this is problem that didn't surface with the current tests? ❌ License check is missing.

yanavasileva avatar Feb 07 '24 10:02 yanavasileva

@psavidis I have tried the datasource quarkus example (dev and non-dev mode, h2 in memory) with the changes and notice:

  • with 3.2 and 7.20, an authorizationService bean is present in the dev mode
  • with 3.7 and 7.21, that bean is missing

💭 Shall we double check if this is problem that didn't surface with the current tests? ❌ License check is missing.

  • 7.20.0 with Quarkus 3.2.6.Final have 81 beans in total
  • 7.21.0-SNAPSHOT([3785-upgrade-quarkus](https://github.com/camunda/camunda-bpm-platform/tree/3785-upgrade-quarkus)) with Quarkus 3.7.1 have in 87 beans in total
  • I can find for both of the the AuthorizationService listed in the beans page of quarkus:dev UI
Here is the detailed comparison of the beans Screenshot 2024-02-08 at 1 24 08 PM

psavidis avatar Feb 08 '24 11:02 psavidis

Update

Quarkus 3.8 is scheduled for release at the 28th of February 2024.

A new Pull Request will be raised then to upgrade 3.7.1 to 3.8.0

psavidis avatar Feb 09 '24 10:02 psavidis

Update

Quarkus 3.7.2 is merged to master. The progress of this ticket will continue after 28th of February 2024 where Quarkus 3.8.0 will be released and 2 more Pull Requests will be raised to make the upgrade.

psavidis avatar Feb 14 '24 13:02 psavidis

Update

  • Quarkus 3.8.0 has been released to maven central on 21st Feb 2024.

psavidis avatar Feb 26 '24 13:02 psavidis

License checking is done

Assigning to @yanavasileva to proceed with the review of the Pull Request that upgrades to Quarkus 3.8.0

psavidis avatar Feb 27 '24 17:02 psavidis

@psavidis, we need to update: https://github.com/camunda/camunda-docs-manual/blob/master/content/user-guide/quarkus-integration/version-compatibility.md?plain=1#L39-L40

yanavasileva avatar Feb 28 '24 14:02 yanavasileva

@psavidis, we need to update: https://github.com/camunda/camunda-docs-manual/blob/master/content/user-guide/quarkus-integration/version-compatibility.md?plain=1#L39-L40

@yanavasileva There is a PR for this change which didn't have a reviewer assigned. I've just added you to make that visible.

psavidis avatar Feb 28 '24 14:02 psavidis

Next Steps after All PRs are merged

The QA can proceed with the manual testing of the newly updated Quarkus 3.8 extension, as described in the Dev2QA handover section using the latest snapshot artifacts.

psavidis avatar Feb 28 '24 14:02 psavidis

This was verified by running the examples and everything worked as expected.

Image

gbetances089 avatar Mar 04 '24 09:03 gbetances089