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

Migrate package manager: NPM -> PNPM #27320

Closed
wants to merge 91 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
91 commits
Select commit Hold shift + click to select a range
13e5685
WIP: pnpm package manager
May 3, 2024
94af5d4
WIP: pnpm package manager
May 3, 2024
44b6a57
Fix all:build script
May 6, 2024
0825ebe
Temporary ignore TS errors
May 6, 2024
787baf3
Fix CI
May 6, 2024
3c66849
Fix CI
May 6, 2024
f07a325
Update GHA for pnpm
May 7, 2024
325c1f0
Add devextreme-screenshot-comparer package to demos
May 7, 2024
ee3bcf6
Fix e2e deps
May 7, 2024
db940c5
Fix systemjs build
May 7, 2024
b63bec5
Fixes
May 7, 2024
9e66f1f
Fixes
May 7, 2024
25dd03e
Fixes 2
May 7, 2024
5db7eeb
Hoist devextreme|-dist to the root
May 7, 2024
949424d
Fix demos deps
May 7, 2024
e278b7d
NX caching, debug logging
May 8, 2024
9217d9a
Fix qunit test runner
May 8, 2024
d43f507
Fix qunit test runner - inferno and deps
May 8, 2024
ced96c1
Fix tgz installations, fix systemjs builder
May 8, 2024
a06be6e
Use NPM for bundler tests, fix localization generation
May 8, 2024
0fa2c47
Fix tests
May 8, 2024
f2ef8c2
More deps and GHA fixes
May 8, 2024
86c522a
Set publishConfig for wrappers
May 8, 2024
eaa7066
Merge 24.1
May 10, 2024
46063d0
Fix NX cache, remove WA for wrappers
May 10, 2024
a357b50
Use NX for run CI tasks
May 10, 2024
10d62d5
Merge branch '24_1' into ci/pnpm
May 10, 2024
cf4a30a
failed tests research
May 10, 2024
101ab8a
Fix demos tests
May 10, 2024
4d636dd
Research
May 10, 2024
9af04b8
Upgrade testcafe for e2e tests
May 10, 2024
3ac6f1b
Upgrade testcafe, fix demos deps, fix passing params
May 10, 2024
1d36306
Downgrade testcafe to 2.5.0
May 10, 2024
3eff734
WA: add axe-core to the root
May 13, 2024
0ca8a4b
Fix angular gulpfile
May 13, 2024
1bc47bb
Research
May 13, 2024
698ce11
Fix demos frameworks configs
May 13, 2024
5219a79
Merge branch '24_1' into ci/pnpm
May 13, 2024
ed93815
Research
May 14, 2024
b16479c
Fix playground Vue building
May 14, 2024
3834fb8
Research
May 14, 2024
5e7e4d7
try
pomahtri May 14, 2024
646bb2f
try
pomahtri May 14, 2024
9e6c36b
try
pomahtri May 14, 2024
d0666f4
Update zone.js main links
May 14, 2024
fd36a36
Add chrome setup step, research demos
May 14, 2024
e3389aa
Research
May 14, 2024
df5497e
Research
May 15, 2024
9aab117
Turn off debug logs
May 15, 2024
b9382e4
Merge 24.1
May 17, 2024
0ad51eb
Try old approach for testcafe tests
May 17, 2024
87f557a
Merge branch '24_1' into ci/pnpm
May 17, 2024
49e91f8
Upgrade testcafe to 2.6.2
May 17, 2024
6e23ac8
Update angular fluent etalons
May 17, 2024
d5c67b6
Fix devextreme/time_zone_utils import
May 20, 2024
1fd3dc4
Update etalons
May 20, 2024
20ce46c
Update etalons 2
May 20, 2024
056b5d9
Research
May 20, 2024
877dd15
Add corepack enable
May 21, 2024
917c308
Research
May 21, 2024
4b77b2a
Merge 24.1
May 21, 2024
66e31f8
Revert "Update etalons"
May 21, 2024
86d5cff
Revert "Update etalons 2"
May 21, 2024
84574a1
Revert "Update angular fluent etalons"
May 21, 2024
106ac15
Skip broken tests
May 21, 2024
6075f63
Merge 24.1
May 22, 2024
00a64f2
More unstable tests ignored
May 22, 2024
6ea96da
Get rid of root deps
May 22, 2024
a37f3d3
Fix eslint configs
May 22, 2024
d5f03bc
Ignore test
May 22, 2024
8bce811
Lint tune
May 22, 2024
f8fa935
Merge branch '24_1' into ci/pnpm
pomahtri Jun 3, 2024
05c59e7
gen: pnpm-lock
pomahtri Jun 3, 2024
a788fa1
fix: add ts to e2e typescript
pomahtri Jun 3, 2024
6abb248
fix: set package-manager-strict=false
pomahtri Jun 3, 2024
897c839
fix devextreme dep in e2e typescript
pomahtri Jun 3, 2024
442f252
fix: set pnpm run all:build to dev mode
pomahtri Jun 3, 2024
a223b5c
tmp fix gantt demos
pomahtri Jun 3, 2024
5800a2d
tmp increase timeout
pomahtri Jun 3, 2024
24ac8b5
comment some more tests
pomahtri Jun 3, 2024
8932637
Merge branch '24_1' into ci/pnpm
pomahtri Jun 4, 2024
49f835c
gen: pnpm-lock
pomahtri Jun 4, 2024
9acf233
Merge branch '24_1' into ci/pnpm
pomahtri Jun 5, 2024
fcf3518
Merge branch '24_1' into ci/pnpm
pomahtri Jun 9, 2024
a1e8038
Merge branch '24_1' into ci/pnpm
pomahtri Jun 10, 2024
606c633
Merge branch '24_1' into ci/pnpm
pomahtri Jun 11, 2024
a6e96f3
fix duplicate pack target
pomahtri Jun 11, 2024
12d67d1
fix lock
pomahtri Jun 11, 2024
4ee1e05
Merge branch '24_1' into ci/pnpm
pomahtri Jun 13, 2024
1427f4f
Merge branch '24_1' into ci/pnpm
pomahtri Jun 14, 2024
9a9ba16
Merge branch '24_1' into ci/pnpm
pomahtri Jun 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
35 changes: 24 additions & 11 deletions .github/actions/run-qunit-tests/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,17 +80,6 @@ runs:
with:
node-version: '20'

- name: Restore npm cache
uses: actions/cache@v4
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-modules-${{ hashFiles('**/package-lock.json') }}
restore-keys: ${{ runner.os }}-node-modules

- name: Run npm install
shell: bash
run: npm install --no-audit --no-fund

- name: Download artifacts
uses: actions/download-artifact@v3
with:
Expand All @@ -104,6 +93,30 @@ runs:
rm -rf artifacts/npm
7z x artifacts.zip

- uses: pnpm/action-setup@v3
with:
version: 9
run_install: false

- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV

- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: |
${{ env.STORE_PATH }}
.nx/cache
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-

- name: Install dependencies
shell: bash
run: pnpm install

- name: Build dotnet
working-directory: ./packages/devextreme
shell: bash
Expand Down
42 changes: 31 additions & 11 deletions .github/workflows/default_workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,24 +18,44 @@ jobs:
name: main
runs-on: devextreme-shr2
timeout-minutes: 30

steps:
- name: Get sources
uses: actions/checkout@v4

- name: Restore npm cache
uses: actions/cache@v4

- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: '20'

- uses: pnpm/action-setup@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-modules-${{ hashFiles('**/package-lock.json') }}
restore-keys: ${{ runner.os }}-node-modules
version: 9
run_install: false

- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV

- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: |
${{ env.STORE_PATH }}
.nx/cache
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-

- name: Install dependencies
run: |
corepack enable
pnpm install

- name: Run npm install
run: npm ci --no-audit --no-fund

- name: Run targets
run: >
npx nx run-many
pnpx nx run-many
-t test
--exclude
devextreme
Expand Down
31 changes: 23 additions & 8 deletions .github/workflows/demos_unit_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,31 @@ jobs:
with:
node-version: '20'

- name: Restore npm cache
uses: actions/cache@v4
- uses: pnpm/action-setup@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-modules-${{ hashFiles('package-lock.json') }}
restore-keys: ${{ runner.os }}-node-modules
version: 9
run_install: false

- name: Run npm install
run: npm install --no-audit --no-fund
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV

- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: |
${{ env.STORE_PATH }}
.nx/cache
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-

- name: Install dependencies
run: |
corepack enable
pnpm install

- name: Run unit tests
working-directory: apps/demos
run: npx nx test
run: pnpx nx test
67 changes: 48 additions & 19 deletions .github/workflows/demos_visual_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ on:
env:
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_TOKEN }}
NX_SKIP_NX_CACHE: ${{ (github.event_name != 'pull_request' || contains( github.event.pull_request.labels.*.name, 'skip-cache')) && 'true' || 'false' }}
BUILD_TEST_INTERNAL_PACKAGE: true

jobs:
build:
Expand All @@ -30,18 +31,33 @@ jobs:
with:
node-version: '20'

- name: Restore npm cache
uses: actions/cache@v4
- uses: pnpm/action-setup@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-modules-${{ hashFiles('package-lock.json') }}
restore-keys: ${{ runner.os }}-node-modules
version: 9
run_install: false

- name: DevExtreme - Install packages
run: npm install --no-audit --no-fund
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV

- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: |
${{ env.STORE_PATH }}
.nx/cache
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-

- name: Install dependencies
run: |
corepack enable
pnpm install

- name: DevExtreme - Build
run: npx nx build devextreme-main
run: pnpx nx build devextreme-main

testcafe:
needs:
Expand Down Expand Up @@ -73,20 +89,33 @@ jobs:
with:
node-version: '20'

- name: Restore npm cache
uses: actions/cache@v4
- uses: pnpm/action-setup@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-modules-${{ hashFiles('package-lock.json') }}
restore-keys: ${{ runner.os }}-node-modules
version: 9
run_install: false

- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV

- name: DevExtreme - Install packages
run: npm install --no-audit --no-fund
- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: |
${{ env.STORE_PATH }}
.nx/cache
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-

- name: Install dependencies
run: |
corepack enable
pnpm install

- name: DevExtreme - Build
env:
BUILD_TEST_INTERNAL_PACKAGE: true
run: npx nx build devextreme-main
run: pnpx nx build devextreme-main

- name: Run Web Server
run: |
Expand All @@ -111,7 +140,7 @@ jobs:
# DISABLE_DEMO_TEST_SETTINGS: ignore # Uncomment to ignore the `ignore` field
# DISABLE_DEMO_TEST_SETTINGS: comparison-options # Uncomment to ignore the `comparison-options` field
CI_ENV: true # The `ignore` field in the visualtestrc.json should be disabled when running test locally
run: npx nx test-testcafe
run: pnpx nx test-testcafe

- name: Show accessibility warnings
if: matrix.STRATEGY == 'accessibility'
Expand Down
Loading
Loading