Skip to content
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

[JS] Move to npm ^8 and fix webpack config #6639

Merged
merged 2 commits into from
Oct 27, 2021
Merged

Conversation

paulcam206
Copy link
Member

@paulcam206 paulcam206 commented Oct 26, 2021

Related Issue

Fixes #6634
Fixes #6635
Fixes #6636
Fixes #6637
Fixes #6638

Description

Kind of a large set of changes here -- it ended up being somewhat necessary to do all of these things at once in order to keep everything building/running correctly. The laundry list of changes:

  • Move to npm ^8
    • ACTION REQUIRED: In order to continue to work with our NodeJS codebase, your npm instance needs to be updated (npm i -g npm@latest).
    • Aside from just keeping our codebase fresh, this also sets us up to investigate using workspaces as a lerna replacement
  • Move to node ^14
    • I'm not sure if there's really any impact here, but you should update your local NodeJS install to a recent v14LTS build
    • We currently target NodeJS 10 or 12, but 14 is the current LTS release. It's worth noting that there really wasn't much in the way of change in our codebase here...
  • Lift common dependencies to root project
    • This makes updating dependencies easier and makes npm i and npx lerna bootstrap faster
  • Move everything over to webpack ^5
    • There were some places where we were using outdated ^4 versions
    • We also needed to finish the migration from ^4 everywhere -- various plugins we used weren't updated at the same time leading to deprecation warnings during builds
  • Updated to the latest eslint and verified that rules work

How Verified

  • local builds, spec generation, site spot check
Microsoft Reviewers: Open in CodeFlow

@ghost
Copy link

ghost commented Oct 26, 2021

Hi @paulcam206. Thanks for helping make the AdaptiveCards JS renderer + tooling better. As additional verification, once the JS build succeeds, please go to the test site to test out your website/designer changes.

@licanhua
Copy link
Contributor

I didn't see the workspace is replaced, and lerna is still used.

@paulcam206
Copy link
Member Author

I didn't see the workspace is replaced, and lerna is still used.

As noted in the description:

Aside from just keeping our codebase fresh, this also sets us up to investigate using workspaces as a lerna replacement

This PR gets us ready to evaluate moving, but I didn't want to muddy this PR with those changes (should they be feasible). The investigation for workspaces is being tracked in #6481

Copy link
Contributor

@beervoley beervoley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM :)

@paulcam206 paulcam206 merged commit 7bccd10 into main Oct 27, 2021
@paulcam206 paulcam206 deleted the paulcam/npm8-cleanup branch October 27, 2021 19:33
michaelfarnsworth pushed a commit to michaelfarnsworth/AdaptiveCards that referenced this pull request Nov 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants