Upgrade build stack to pnpm, Node 16, Lerna 6 by lucas-koehler · Pull Request #2148 · eclipsesource/jsonforms

Skip to content

Navigation Menu

Sign in

Appearance settings

Conversation

@lucas-koehler

  • Move to Node 16.13+
  • Use PNPM 8.5+ as package manager instead of NPM
  • Upgrade to Lerna 6
  • Explicitly add all needed dependencies to packages as PNPM does not hoist application dependencies
  • Use explicit PNPM workspace references for jsonforms packages
  • Increase various dependencies to reflect the actually needed versions
  • Migrate to Jest 27
  • Increase Typedoc version to ~0.21.9 to be compatible with Node 16
  • Increase base lib version from ES6 to ES2016
  • Improve stability of prepare example apps script
  • BREAKING: Remove vue2 to avoid migration cost
  • ci: Increase Node's available RAM for test execution to 4GB
  • Set pnpm's dependency resolution to highest compatible (same as npm)

@netlify

@lucas-koehler

@sdirix The netlify build fails because node 16 and pnpm are not available there, yet.

@coveralls

Coverage Status

coverage: 84.254%. remained the same when pulling 7a281d7 on 2110-node16-pnpm-lerna6 into 369370a on master.

@lucas-koehler

@sdirix I rebased the changes. Netlify still fails as it does not have pnpm and node 16 configured.

sdirix

Choose a reason for hiding this comment

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

I had a first look and only very minor comments. As a next step I will actually test it.

@sdirix

Seems the mac tests still fail. So let's exclude them again and create a follow up issue to fix them

- Move to Node 16.13+
- Use PNPM 8.5+ as package manager instead of NPM
- Upgrade to Lerna 6
- Explicitly add all needed dependencies to packages as PNPM does not hoist dependencies
- Use explicit PNPM workspace references for jsonforms packages
- Increase various dependencies as PNPM installs the specified version by default instead of the highest possible one
- Migrate to Jest 27
- Increase Typedoc version to ~0.21.9 to be compatible with Node 16

TODO: Fix Setup for the vue packages
- Update dependencies
- Directly configure jest with ts-jest in vue package to make tests work
- Core uses Array.includes only contained in ES2016
- ES2016 is supported by all relevant browsers
Adapt path to copy the css theme file to the local node_modules folder created by pnpm

@lucas-koehler

@lucas-koehler

Follow up issue to fix the macOS tests: #2159

sdirix

Choose a reason for hiding this comment

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

Works great for me!

@sdirix sdirix deleted the 2110-node16-pnpm-lerna6 branch

July 11, 2023 12:59

This was referenced

Jul 11, 2023