From cf705bfbd529f1596ac9b844188f4a3f47b4ef01 Mon Sep 17 00:00:00 2001 From: William Wong Date: Wed, 11 Mar 2026 22:42:44 +0000 Subject: [PATCH 1/9] Ignore *.tgz --- .gitignore | 1 + packages/isomorphic-react-dom/.gitignore | 7 ++++--- packages/isomorphic-react/.gitignore | 7 ++++--- packages/repack/adaptivecards/.gitignore | 1 + packages/repack/base64-js/.gitignore | 1 + packages/repack/botframework-directlinejs/.gitignore | 1 + packages/repack/html-react-parser/.gitignore | 1 + .../microsoft-cognitiveservices-speech-sdk/.gitignore | 1 + packages/repack/object-assign/.gitignore | 1 + packages/repack/react-dom/.gitignore | 1 + packages/repack/react-dom@baseline/.gitignore | 1 + packages/repack/react-dom@umd/.gitignore | 1 + packages/repack/react-is/.gitignore | 1 + packages/repack/react/.gitignore | 1 + packages/repack/react@baseline/.gitignore | 1 + packages/repack/react@umd/.gitignore | 1 + packages/support/cldr-data-downloader/.gitignore | 3 ++- packages/support/cldr-data/.gitignore | 5 +++-- packages/test/dev-server/.gitignore | 3 ++- packages/test/harness/.gitignore | 6 +++--- packages/test/page-object/.gitignore | 6 +++--- packages/test/test-assets/.gitignore | 1 + packages/test/web-server/.gitignore | 5 +++-- packages/vibe-grep/.gitignore | 2 ++ 24 files changed, 41 insertions(+), 18 deletions(-) create mode 100644 packages/vibe-grep/.gitignore diff --git a/.gitignore b/.gitignore index b5756d63b6..01c63dcfc7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ /__tests__/__image_snapshots__/**/__diff_output__ /__tests__/html2/**/*.snap-*-diff.png /.env +/*.tar /*.tgz /coverage /debug.log diff --git a/packages/isomorphic-react-dom/.gitignore b/packages/isomorphic-react-dom/.gitignore index e90dde734c..62b899b6ae 100644 --- a/packages/isomorphic-react-dom/.gitignore +++ b/packages/isomorphic-react-dom/.gitignore @@ -1,3 +1,4 @@ -/dist -/lib -/node_modules \ No newline at end of file +/*.tgz +/dist/ +/lib/ +/node_modules/ diff --git a/packages/isomorphic-react/.gitignore b/packages/isomorphic-react/.gitignore index e90dde734c..62b899b6ae 100644 --- a/packages/isomorphic-react/.gitignore +++ b/packages/isomorphic-react/.gitignore @@ -1,3 +1,4 @@ -/dist -/lib -/node_modules \ No newline at end of file +/*.tgz +/dist/ +/lib/ +/node_modules/ diff --git a/packages/repack/adaptivecards/.gitignore b/packages/repack/adaptivecards/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/adaptivecards/.gitignore +++ b/packages/repack/adaptivecards/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/base64-js/.gitignore b/packages/repack/base64-js/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/base64-js/.gitignore +++ b/packages/repack/base64-js/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/botframework-directlinejs/.gitignore b/packages/repack/botframework-directlinejs/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/botframework-directlinejs/.gitignore +++ b/packages/repack/botframework-directlinejs/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/html-react-parser/.gitignore b/packages/repack/html-react-parser/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/html-react-parser/.gitignore +++ b/packages/repack/html-react-parser/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/microsoft-cognitiveservices-speech-sdk/.gitignore b/packages/repack/microsoft-cognitiveservices-speech-sdk/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/microsoft-cognitiveservices-speech-sdk/.gitignore +++ b/packages/repack/microsoft-cognitiveservices-speech-sdk/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/object-assign/.gitignore b/packages/repack/object-assign/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/object-assign/.gitignore +++ b/packages/repack/object-assign/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/react-dom/.gitignore b/packages/repack/react-dom/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/react-dom/.gitignore +++ b/packages/repack/react-dom/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/react-dom@baseline/.gitignore b/packages/repack/react-dom@baseline/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/react-dom@baseline/.gitignore +++ b/packages/repack/react-dom@baseline/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/react-dom@umd/.gitignore b/packages/repack/react-dom@umd/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/react-dom@umd/.gitignore +++ b/packages/repack/react-dom@umd/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/react-is/.gitignore b/packages/repack/react-is/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/react-is/.gitignore +++ b/packages/repack/react-is/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/react/.gitignore b/packages/repack/react/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/react/.gitignore +++ b/packages/repack/react/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/react@baseline/.gitignore b/packages/repack/react@baseline/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/react@baseline/.gitignore +++ b/packages/repack/react@baseline/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/repack/react@umd/.gitignore b/packages/repack/react@umd/.gitignore index 3d2bc62692..18976f7c55 100644 --- a/packages/repack/react@umd/.gitignore +++ b/packages/repack/react@umd/.gitignore @@ -1,2 +1,3 @@ +/*.tgz /dist/ /node_modules/ diff --git a/packages/support/cldr-data-downloader/.gitignore b/packages/support/cldr-data-downloader/.gitignore index c2658d7d1b..99694258b7 100644 --- a/packages/support/cldr-data-downloader/.gitignore +++ b/packages/support/cldr-data-downloader/.gitignore @@ -1 +1,2 @@ -node_modules/ +/*.tgz +/node_modules/ diff --git a/packages/support/cldr-data/.gitignore b/packages/support/cldr-data/.gitignore index 135f415ffd..0a8f999b19 100644 --- a/packages/support/cldr-data/.gitignore +++ b/packages/support/cldr-data/.gitignore @@ -1,4 +1,5 @@ -/node_modules +/*.tgz +/node_modules/ # CLDR downloaded files. -/dist +/dist/ diff --git a/packages/test/dev-server/.gitignore b/packages/test/dev-server/.gitignore index 07e6e472cc..99694258b7 100644 --- a/packages/test/dev-server/.gitignore +++ b/packages/test/dev-server/.gitignore @@ -1 +1,2 @@ -/node_modules +/*.tgz +/node_modules/ diff --git a/packages/test/harness/.gitignore b/packages/test/harness/.gitignore index bfa00685df..18976f7c55 100644 --- a/packages/test/harness/.gitignore +++ b/packages/test/harness/.gitignore @@ -1,3 +1,3 @@ -/dist -/lib -/node_modules +/*.tgz +/dist/ +/node_modules/ diff --git a/packages/test/page-object/.gitignore b/packages/test/page-object/.gitignore index bfa00685df..18976f7c55 100644 --- a/packages/test/page-object/.gitignore +++ b/packages/test/page-object/.gitignore @@ -1,3 +1,3 @@ -/dist -/lib -/node_modules +/*.tgz +/dist/ +/node_modules/ diff --git a/packages/test/test-assets/.gitignore b/packages/test/test-assets/.gitignore index 9432945cda..77c21a08ae 100644 --- a/packages/test/test-assets/.gitignore +++ b/packages/test/test-assets/.gitignore @@ -1,3 +1,4 @@ +/*.tgz /make.com /node_modules/ /out/ diff --git a/packages/test/web-server/.gitignore b/packages/test/web-server/.gitignore index 666eb6c142..cf4bd13255 100644 --- a/packages/test/web-server/.gitignore +++ b/packages/test/web-server/.gitignore @@ -1,4 +1,5 @@ /.env* -/dist -/node_modules +/*.tgz +/dist/ +/node_modules/ /serve.json diff --git a/packages/vibe-grep/.gitignore b/packages/vibe-grep/.gitignore new file mode 100644 index 0000000000..99694258b7 --- /dev/null +++ b/packages/vibe-grep/.gitignore @@ -0,0 +1,2 @@ +/*.tgz +/node_modules/ From ed24e25fc291395de84db66704d50196cbdc3b47 Mon Sep 17 00:00:00 2001 From: William Wong Date: Wed, 11 Mar 2026 22:42:52 +0000 Subject: [PATCH 2/9] Centralize npm run build --- .github/workflows/pull-request-validation.yml | 35 +++++++++++++++++-- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pull-request-validation.yml b/.github/workflows/pull-request-validation.yml index 13163b6857..ef863705fd 100644 --- a/.github/workflows/pull-request-validation.yml +++ b/.github/workflows/pull-request-validation.yml @@ -83,6 +83,19 @@ jobs: path: docker.zip retention-days: 1 + - name: Pack all packages + run: npm exec --workspaces -- npm pack + + - name: Tar all tarballs + run: find . -type f -name '*.tgz' -not -path '*/node_modules/*' -print0 | tar --null -cvf tarballs.tar --files-from=- + + - uses: actions/upload-artifact@v7 + with: + compression-level: 0 + name: tarballs + path: tarballs.tar + retention-days: 1 + build-browser: name: Build test harness runs-on: windows-latest @@ -134,7 +147,7 @@ jobs: - run: npm clean-install --strict-peer-deps - - run: npm run build --if-present + # - run: npm run build --if-present - run: npm run precommit --if-present @@ -153,7 +166,15 @@ jobs: - run: npm clean-install --strict-peer-deps - - run: npm run build --if-present + - name: Download tarballs + uses: actions/download-artifact@v8 + with: + name: tarballs + + - name: Extract tarballs + run: npm exec --workspaces -- tar --skip-old-files --strip-components=1 -xf *.tgz + + # - run: npm run build --if-present - name: Run jest --testPathPattern packages/ run: | @@ -200,7 +221,15 @@ jobs: - run: npm clean-install --strict-peer-deps - - run: npm run build --if-present + - name: Download tarballs + uses: actions/download-artifact@v8 + with: + name: tarballs + + - name: Extract tarballs + run: npm exec --workspaces -- tar --skip-old-files --strip-components=1 -xf *.tgz + + # - run: npm run build --if-present - name: Run tsd under packages/bundle (CJS) run: ../../node_modules/.bin/tsd -t ./dist/botframework-webchat.d.ts From 568b1a8d5b23b35b96c7b7d7c0fd03c82788e83e Mon Sep 17 00:00:00 2001 From: William Wong Date: Thu, 12 Mar 2026 09:28:50 +0000 Subject: [PATCH 3/9] Fix dependencies --- .github/workflows/pull-request-validation.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.github/workflows/pull-request-validation.yml b/.github/workflows/pull-request-validation.yml index ef863705fd..b6430710e6 100644 --- a/.github/workflows/pull-request-validation.yml +++ b/.github/workflows/pull-request-validation.yml @@ -134,6 +134,8 @@ jobs: static-code-analysis: name: Static code analysis + needs: + - build # Needed for resolving dependencies across packages runs-on: ubuntu-latest steps: @@ -147,12 +149,22 @@ jobs: - run: npm clean-install --strict-peer-deps + - name: Download tarballs + uses: actions/download-artifact@v8 + with: + name: tarballs + + - name: Extract tarballs + run: npm exec --workspaces -- tar --skip-old-files --strip-components=1 -xf *.tgz + # - run: npm run build --if-present - run: npm run precommit --if-present unit-test: name: Unit test + needs: + - build runs-on: ubuntu-latest steps: @@ -208,6 +220,8 @@ jobs: type-definitions-test: name: Type definitions test + needs: + - build runs-on: ubuntu-latest steps: From 6575855fbeb6284c9dd7d047d9234321eab4ba77 Mon Sep 17 00:00:00 2001 From: William Wong Date: Thu, 12 Mar 2026 11:18:01 +0000 Subject: [PATCH 4/9] Use --call --- .github/workflows/pull-request-validation.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pull-request-validation.yml b/.github/workflows/pull-request-validation.yml index b6430710e6..e1b3fa4fed 100644 --- a/.github/workflows/pull-request-validation.yml +++ b/.github/workflows/pull-request-validation.yml @@ -155,7 +155,7 @@ jobs: name: tarballs - name: Extract tarballs - run: npm exec --workspaces -- tar --skip-old-files --strip-components=1 -xf *.tgz + run: npm exec --workspaces --call tar --skip-old-files --strip-components=1 -xf *.tgz # - run: npm run build --if-present @@ -184,7 +184,7 @@ jobs: name: tarballs - name: Extract tarballs - run: npm exec --workspaces -- tar --skip-old-files --strip-components=1 -xf *.tgz + run: npm exec --workspaces --call tar --skip-old-files --strip-components=1 -xf *.tgz # - run: npm run build --if-present @@ -241,7 +241,7 @@ jobs: name: tarballs - name: Extract tarballs - run: npm exec --workspaces -- tar --skip-old-files --strip-components=1 -xf *.tgz + run: npm exec --workspaces --call tar --skip-old-files --strip-components=1 -xf *.tgz # - run: npm run build --if-present From d8726338adcf469f87b9cc1c75e88f79fe52b744 Mon Sep 17 00:00:00 2001 From: William Wong Date: Thu, 12 Mar 2026 11:24:40 +0000 Subject: [PATCH 5/9] Quote call command --- .github/workflows/pull-request-validation.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pull-request-validation.yml b/.github/workflows/pull-request-validation.yml index e1b3fa4fed..8b1e0436a0 100644 --- a/.github/workflows/pull-request-validation.yml +++ b/.github/workflows/pull-request-validation.yml @@ -155,7 +155,7 @@ jobs: name: tarballs - name: Extract tarballs - run: npm exec --workspaces --call tar --skip-old-files --strip-components=1 -xf *.tgz + run: npm exec --workspaces --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' # - run: npm run build --if-present @@ -184,7 +184,7 @@ jobs: name: tarballs - name: Extract tarballs - run: npm exec --workspaces --call tar --skip-old-files --strip-components=1 -xf *.tgz + run: npm exec --workspaces --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' # - run: npm run build --if-present @@ -241,7 +241,7 @@ jobs: name: tarballs - name: Extract tarballs - run: npm exec --workspaces --call tar --skip-old-files --strip-components=1 -xf *.tgz + run: npm exec --workspaces --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' # - run: npm run build --if-present From a5650268cda8cd29a7d3097b2c9645b770e8a124 Mon Sep 17 00:00:00 2001 From: William Wong Date: Thu, 12 Mar 2026 11:25:02 +0000 Subject: [PATCH 6/9] Sort --- .github/workflows/pull-request-validation.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pull-request-validation.yml b/.github/workflows/pull-request-validation.yml index 8b1e0436a0..bf1b60f84c 100644 --- a/.github/workflows/pull-request-validation.yml +++ b/.github/workflows/pull-request-validation.yml @@ -155,7 +155,7 @@ jobs: name: tarballs - name: Extract tarballs - run: npm exec --workspaces --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' + run: npm exec --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' --workspaces # - run: npm run build --if-present @@ -184,7 +184,7 @@ jobs: name: tarballs - name: Extract tarballs - run: npm exec --workspaces --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' + run: npm exec --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' --workspaces # - run: npm run build --if-present @@ -241,7 +241,7 @@ jobs: name: tarballs - name: Extract tarballs - run: npm exec --workspaces --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' + run: npm exec --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' --workspaces # - run: npm run build --if-present From 6a2db8b3eebe8339db4dad39712376cfb09f7506 Mon Sep 17 00:00:00 2001 From: William Wong Date: Thu, 12 Mar 2026 11:33:06 +0000 Subject: [PATCH 7/9] Build browser matrix --- .github/workflows/pull-request-validation.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pull-request-validation.yml b/.github/workflows/pull-request-validation.yml index bf1b60f84c..28851111d8 100644 --- a/.github/workflows/pull-request-validation.yml +++ b/.github/workflows/pull-request-validation.yml @@ -97,8 +97,14 @@ jobs: retention-days: 1 build-browser: - name: Build test harness - runs-on: windows-latest + name: Verify build-browser + strategy: + matrix: + os: + - macos-latest + - ubuntu-latest + - windows-latest + runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 From 3cce1a44f74a022e6a7d970ca09fedb68144091a Mon Sep 17 00:00:00 2001 From: William Wong Date: Thu, 12 Mar 2026 11:35:21 +0000 Subject: [PATCH 8/9] Add extract tarballs --- .github/workflows/pull-request-validation.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/pull-request-validation.yml b/.github/workflows/pull-request-validation.yml index 28851111d8..47588fd5fa 100644 --- a/.github/workflows/pull-request-validation.yml +++ b/.github/workflows/pull-request-validation.yml @@ -161,6 +161,9 @@ jobs: name: tarballs - name: Extract tarballs + run: tar -xvf tarballs.tar + + - name: Unpack tarballs run: npm exec --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' --workspaces # - run: npm run build --if-present @@ -190,6 +193,9 @@ jobs: name: tarballs - name: Extract tarballs + run: tar -xvf tarballs.tar + + - name: Unpack tarballs run: npm exec --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' --workspaces # - run: npm run build --if-present @@ -247,6 +253,9 @@ jobs: name: tarballs - name: Extract tarballs + run: tar -xvf tarballs.tar + + - name: Unpack tarballs run: npm exec --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' --workspaces # - run: npm run build --if-present From 58ce00f11a246afb8e43704f8c7258535e236afd Mon Sep 17 00:00:00 2001 From: William Wong Date: Thu, 12 Mar 2026 11:49:19 +0000 Subject: [PATCH 9/9] Build cldr-data --- .github/workflows/pull-request-validation.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pull-request-validation.yml b/.github/workflows/pull-request-validation.yml index 47588fd5fa..5e14e26873 100644 --- a/.github/workflows/pull-request-validation.yml +++ b/.github/workflows/pull-request-validation.yml @@ -166,8 +166,6 @@ jobs: - name: Unpack tarballs run: npm exec --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' --workspaces - # - run: npm run build --if-present - - run: npm run precommit --if-present unit-test: @@ -198,7 +196,9 @@ jobs: - name: Unpack tarballs run: npm exec --call 'tar --skip-old-files --strip-components=1 -xf *.tgz' --workspaces - # - run: npm run build --if-present + - name: Build cldr-data # Required for unit testing + run: npm run build + working-directory: ./packages/support/cldr-data/ - name: Run jest --testPathPattern packages/ run: |