Don’t move unknown pseudo-elements to the end of selectors (#10962)

* Don’t move `::deep` pseudo element to end of selector when using `@apply`

* Update changelog

* Move pseudo-elements in two passes

* Rewrite pseudo-element relocation logic

* Update test

`::test` is an unknown pseudo element and therefore may be actionable _and_ nestable

* Add tests

* Simplify tests

* Simplify

* run tests on CI multiple times

This works around the timeouts/flakeyness of GitHub Actions

* Update formatting

* Add comment

* Mark webkit peusdo elements as terminal

* update comment

* only execute the `global-setup` once

* Simplify

NO SORT FN YAY

* Use typedefs

* Update changelog

* Update changelog

* update again

---------

Co-authored-by: Robin Malfait <malfait.robin@gmail.com>
This commit is contained in:
Jordan Pittman 2023-04-07 10:45:47 -04:00 • committed by GitHub
parent 467a39e0d5
commit e3a9d5f53b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
16 changed files with 232 additions and 157 deletions

View file

@ -50,7 +50,10 @@ jobs:
run: npm run build
- name: Test
run: npm run test
run: |
npm run test || \
npm run test || \
npm run test || exit 1
- name: Lint
run: npm run style

View file

@ -66,7 +66,10 @@ jobs:
run: npx turbo run build --filter=//
- name: Test
run: npx turbo run test --filter=//
run: |
npx turbo run test --filter=// || \
npx turbo run test --filter=// || \
npx turbo run test --filter=// || exit 1
- name: Lint
run: npx turbo run style --filter=//

View file

@ -78,4 +78,7 @@ jobs:
run: npx turbo run build --filter=//
- name: Test ${{ matrix.integration }}
run: npx turbo run test --filter=./integrations/${{ matrix.integration }}
run: |
npx turbo run test --filter=./integrations/${{ matrix.integration }} || \
npx turbo run test --filter=./integrations/${{ matrix.integration }} || \
npx turbo run test --filter=./integrations/${{ matrix.integration }} || exit 1

View file

@ -77,4 +77,7 @@ jobs:
run: npm run build
- name: Test ${{ matrix.integration }}
run: npm run test --prefix ./integrations/${{ matrix.integration }}
run: |
npm run test --prefix ./integrations/${{ matrix.integration }} || \
npm run test --prefix ./integrations/${{ matrix.integration }} || \
npm run test --prefix ./integrations/${{ matrix.integration }} || exit 1

View file

@ -65,7 +65,10 @@ jobs:
working-directory: standalone-cli
- name: Test
run: npm test
run: |
npm test || \
npm test || \
npm test || exit 1
working-directory: standalone-cli
- name: Release

View file

@ -387,7 +387,10 @@ jobs:
run: npm run build
- name: Test
run: npm test
run: |
npm test || \
npm test || \
npm test || exit 1
- name: 'Version based on commit: 0.0.0-${{ env.RELEASE_CHANNEL }}.${{ env.SHA_SHORT }}'
run: npm version 0.0.0-${{ env.RELEASE_CHANNEL }}.${{ env.SHA_SHORT }} --force --no-git-tag-version

View file

@ -44,7 +44,10 @@ jobs:
run: npm run build
- name: Test
run: npm run test
run: |
npm run test || \
npm run test || \
npm run test || exit 1
- name: Resolve version
id: vars