CollectionAsync: use unique string keys to index _asyncTemplateItems … #41395
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: TS Declarations | |
concurrency: | |
group: wf-${{github.event.pull_request.number || github.sha}}-${{github.workflow}} | |
cancel-in-progress: true | |
on: | |
pull_request: | |
paths-ignore: | |
- 'apps/**/*.md' | |
push: | |
branches: [25_1] | |
jobs: | |
check-ts-bundle: | |
runs-on: devextreme-shr2 | |
timeout-minutes: 60 | |
steps: | |
- name: Get sources | |
uses: actions/checkout@v4 | |
- name: Use Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
- 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 | |
run: | | |
corepack enable | |
pnpm install | |
- name: Check dx.all.d.ts is up-to-date | |
working-directory: ./packages/devextreme | |
run: | | |
target=./ts/dx.all.d.ts | |
cp $target $target.current | |
pnpm run regenerate | |
if ! diff $target.current $target -U 5 > $target.diff; then | |
echo "FAIL: $target is outdated:" | |
cat $target.diff | sed "1,2d" | |
echo "Execute 'pnpm run regenerate-all' to update dx.all.d.ts" | |
exit 1 | |
else | |
echo "TS is up-to-date" | |
fi | |
validate-declarations: | |
runs-on: devextreme-shr2 | |
timeout-minutes: 60 | |
steps: | |
- name: Get sources | |
uses: actions/checkout@v4 | |
- name: Use Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
- 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 | |
run: | | |
corepack enable | |
pnpm install | |
- name: Validate declarations | |
working-directory: ./packages/devextreme | |
run: | | |
pnpm run validate-ts | |
pnpm run validate-declarations | |
notify: | |
runs-on: devextreme-shr2 | |
name: Send notifications | |
needs: [check-ts-bundle, validate-declarations] | |
if: github.event_name != 'pull_request' && contains(needs.*.result, 'failure') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: DevExpress/github-actions/send-teams-notification@v1 | |
with: | |
hook_url: ${{secrets.TEAMS_ALERT}} | |
bearer_token: ${{secrets.GITHUB_TOKEN}} | |
specific_repo: DevExpress/DevExtreme |