Skip to content

MicroProfile 4.0 Notes

Tim Quinn edited this page Oct 1, 2020 · 8 revisions

Problem with backward compatibility (I think not justified): https://github.com/eclipse/microprofile-config/issues/593#issuecomment-677596717

Added possibility to read subset of config as a class - similar to what we have with Config.as(Something.class) in Helidon SE - this is a lot of reflection to do (just see helidon-config-object-mapping...

Based on the release notes section only, there's basically two new things here. The first relates to the use of tags in metrics, moving parts of the names into the tags. The other change is related to scopes of bulkheads and circuit breakers. We've already fixed the scope of bulkheads and circuit breakers in our 2.1.1 implementation.

Seemingly minor impact on our implementation. Previously-deprecated annotation now removed. New support for a config value indicating the default status for ready. There was also some discussion about how the /health/ready endpoint should respond before the service is truly "started." We will want to make sure we do the right thing in that case.

Relatively minor changes to the spec. Previously-deprecated methods have been removed, Model interfaces no longer extend Map so we might be able to remove some extra work we did earlier to deal with that in the yaml/json mappings. We have layered on SmallRye's OpenAPI implementation and their master branch contains some reorganization -- nothing that makes too much work for us but there is some work to do here.

Update 01 Oct 2020 - I have done some work on our SE code base to reflect the changes in the spec, changes in the SmallRye implementation (they have restructured what modules they build and some internals). While I do not have it completely working yet, I believe I am close. It looks as if we will need to revise approximately 15 files. There will be some additional work in our MP code but I have not looked at that very closely yet.