apache / incubator-kie-tools

Tools for KIE
Apache License 2.0
244 stars 171 forks source link

[uniforms-patternfly] Upgrade @patternfly to v5.0.0 #1877

Open lordrip opened 1 year ago

lordrip commented 1 year ago

Context

@patternfly has released its 5.0.0 version.

Upgrade information: https://staging.patternfly.org/get-started/upgrade

Goal

The goal for this issue is to upgrade @patternfly in the following repositories:

Notes

@kie-tools/uniforms-patternfly depends on:

    "@patternfly/react-core": "^4.276.6",
    "@patternfly/react-icons": "^4.93.6",

Related issue: https://github.com/KaotoIO/kaoto-ui/issues/2209

lordrip commented 1 year ago

There are the dependent packages from the repository image

Taking this into account, what would be the best way to upgrade without breaking other package dependencies? Maybe create a uniforms-patternfly-1.0.0 branch and make the update? Later on link the dependency using branch resolution from yarn in the final consumers.

tiagobento commented 1 year ago

We usually upgrade for every package. PatternFly is extensively used on KIE Tools. Pretty much everywhere. Such upgrade is usually treated as a Major change. We even have a "Dependency consistency" check that runs to make sure all packages are using the same versions of dependencies.

There is, however, a way to bypass that. Adding an exception to https://github.com/kiegroup/kie-tools/blob/main/.syncpackrc.json will allow a package to not be aligned with others.

I don't recommend doing that, though, as in practice, packages that depend on uniforms-patternfly and are still using PF4 will be mixing imports. CSS will probably get messy, and this needs to be thoroughly tested.

We have PatternFly and React upgrades on the priority queue, though. We just can't provide an ETA for when it will land.

lordrip commented 1 year ago

Sure thing @tiagobento, I agree with you about not mixing different @patternfly versions.

lordrip commented 11 months ago

The library was temporarily ported to https://github.com/KaotoIO/uniforms-patternfly