-
Notifications
You must be signed in to change notification settings - Fork 686
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[bug]: Difficulty upgrading mono-repo to 7.x because of pwa-buildpack targets #2717
Comments
Hi @brendanfalkowski. Thank you for your report. Please, add a comment to assign the issue:
|
Hi @brendanfalkowski , I've build a mono-repo as well, we have a storefront scaffolded with the pwa studio storefront-concept as it's base structure. We've also created our own packages/ui and managed to get it working properly. inside
Not sure if this helps, if you'd like we could jump on a quick call. let me know |
Made https://jira.corp.magento.com/browse/PWA-955 for internal tracking. |
Going to self-close this. The Magento team helped track this down. Details for those interested: At the time we cloned PWA Studio to diff for upstream merging (2019-08-22), there was a mismatch (in "develop" branch) between the PageBuilder dependency (2.0.0 required) and the code in PWA Studio which used extensibility features to implement it. If the associated changes had been merged back to "develop" just before we pulled, then it would have worked. Just bad luck timing. So some exports were absent from the PageBuilder version we were targeting based on the upstream diff. Manually bumping PageBuilder fixed this without beginning another upstream merge. |
Describe the bug
I am upgrading a mono-repo project that originated in 2018-11 from version 5.x to 7.x (diff taken 2020-07-22).
By mono-repo project, what I mean is we forked the full
magento/pwa-studio
and established the folderpackages/custom
which duplicated Venia UI/Concept and has been heavily customized. We have backmerged updates at 3.x, 4.x, 5.x, and now 7.x to maintain forward compatibility.It's not clear how the targets/intercepts concepts can be lifted from
packages/venia-ui
and transplanted inpackages/custom
. The tooling inpackages/pwa-buildpack
is hardcoded to believe the build tooling always extendsvenia-ui
but we don't use components ofvenia-ui
in our frontend.All diffs have been integrated and issues resolved by tracing failures from
yarn run build
(which targets ourpackages/custom
not Venia). The build errors out onRichContent/richContentRenderers.js
which attempts the reference the generated renderers invenia-ui
.I tried various core edits to force the code in
packages/pwa-buildpack
andpackages/venia-ui
to stop using relative paths directed at thevenia-ui
package, but can't find the right combination that resolves the error. In fact, each edit throws more errors/warnings than the singular RichContent error (above).I also explored eliminating targets/intercepts and RichContent from our custom package's build, but realized this isn't possible because PageBuilder requires this integration to function. PageBuilder is the #1 reason we need the 7.x updates (not module UI).
Additional context
I read the dev docs for PageBuilder and PWA Buildpack for background and relevant code, but don't understand how to make the build step that generates
richContentRenderers.js
work by configuration or core hacks. It's not clear if a mono-repo that doesn't run its build scripts off Venia packages can be made to work with the extensibility tooling that was created for "create-pwa" originated projects.Our aim has been to avoid core changes to building tooling, and not worry about syncing between our components and Venia's components (the whole site's UI has already been built out). Ultimately we expect ever needing to extend Venia components or utilize third-party extensions for UI. We're only blocked by the PageBuilder implementation requiring the extensibility framework.
Please complete the following device information:
npm -v
: 6.9.0node -v
: 10.16.2Please let us know what packages this bug is in regards to:
venia-concept
venia-ui
pwa-buildpack
peregrine
pwa-devdocs
upward-js
upward-spec
create-pwa
The text was updated successfully, but these errors were encountered: