acs-aem-commons icon indicating copy to clipboard operation
acs-aem-commons copied to clipboard

What's the proper way to upgrade ACS Commons across major version?

Open jorgenson112358 opened this issue 1 year ago • 0 comments

Required Information

  • [ ] AEM Version, including Service Packs, Cumulative Fix Packs, etc: 6.5.17
  • [ ] ACS AEM Commons Version: 4.3.2
  • [ ] Reproducible on Latest? yes

Expected Behavior

composite-multifield.js does not load for authoring dialogs unless I want it to

Actual Behavior

composite-multifield.js loads for all authoring dialogs whether I'm using it or not and throws an exception because underscore is undefined when trying to save the authoring dialog

Steps to Reproduce

Install v3 of ACS Commons. Install v4 of ACS Commons. See that /apps/acs-commons/touchui-widgets is still a jcr:primaryType of cq:ClientLibraryFolder with categories including cq.authoring.dialog.

Notes

Hi, I'm wondering what the proper way to upgrade ACS Commons is so it updates older node type definitions? What I'm seeing is an older jcr:primaryType for /apps/acs-commons/touchui-widgets. It's in my AEM instances as a cq:ClientLibraryFolder but newer versions of ACS Commons have it as just nt:folder. Digging through the git history, it looks like this node primaryType was changed in the v3 to v4 upgrade.

This is the same issue reported here but I don't see an response or resolution to that. https://github.com/Adobe-Consulting-Services/acs-aem-commons/issues/2917

The problem I'm seeing is that because it's a cq:ClientLibraryFolder, it has some categories on it including cq.authoring.dialog which is causing an error to happen because it depends on underscore but there's no underscore clientlib category defined in my system which appears to maybe be something that was deprecated by AEM somewhere in the 6.5.x series (I'm on 6.5.17). And when I go to save an authoring dialog it's trying to run an underscore command for _.isEmpty and _ is undefined which causes the authoring dialog to stop js execution and be unable to save properly.

So what is the proper way to upgrade ACS Commons for a system that originally had ACS Commons pre-v4.0 installed and get it to upgrade all the nodes properly? Can I just uninstall the acs-commons apps package and then install a v4+ package, or v6 if I want to get to latest?

jorgenson112358 avatar Sep 08 '23 17:09 jorgenson112358