9 Commits

Author SHA1 Message Date
Jordan Pittman
a0f8314445 Add a stub prepare-release workflow
The `workflow_dispatch` trigger will not work for v3 unless this file is present
2024-08-01 09:59:49 -04:00
Robin Malfait
32cf8aa0fb
remove v3 codebase 2024-03-05 13:29:12 +01:00
A Dev $el
ac43650f67 Ensure CI jobs don't run for longer than 15 minutes (#11496)
* fix: prevent long unwanted runs!

* add timeout-minutes to all the workflows

---------

Co-authored-by: Robin Malfait <malfait.robin@gmail.com>
2023-07-13 11:48:35 -04:00
Jordan Pittman
e3a9d5f53b
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>
2023-04-07 10:45:47 -04:00
Robin Malfait
924ae7aca6
swap to stable engines when preparing the release 2023-02-08 16:11:01 +01:00
Robin Malfait
b1f4da70d1
Separate stable and oxide engines (#10359)
* separate `stable` and `oxide` mode (package.json in this case)

* drop `install` script (we use a workspace now)

* change required engine to 16

* enable OXIDE by default

* ignore generated `oxide` files

* splitup package.json scripts into "public" and "private" scripts

Not ideal of course, but this should make it a tiny bit easier to know
which scripts _you_ as a developer / contributor have to run.

* drop `workspaces` from the `stable` engine

* drop `oxide` related build files from the `stable` engine

* drop `oxide` engine specific dependencies from the `stable` engine

* use the `oxide-node-api-shim` for the `stable` engine

* add little script to swap the engines

* drop `oxide:build` from `turbo` config

* configure `ci` for `stable` and `oxide` engines

- rename `nodejs.yml` -> `ci.yml`
- add `ci-stable.yml` (for stable mode and Node 12)
- ensure to use the `stable` engine in the `ci-stable.yml` workflow
- drop `oxide:___` specific scripts

* rename `release-insiders` to `release-insiders-stable`

This way we will be able to remove all files that contain `stable` once
we are ready.

* rename `release-insiders-oxide` to just `release-insiders`

* cleanup insider related workflows

* rename `release` -> `release-stable`

* rename `release-oxide` -> `release`

* change names of release workflows

* drop `oxide-` prefix from jobs

* inline node versions

* do not use `turbo` for the stable build

Can't use it because we don't have a workspace in the stable build.

* re-rename CI workflow

* encode default engine in relevant `package.json` files

* make Node 12 work

* increase `node-version` matrix

* make release workflows explicit (per engine)

* add `Oxide` to workflow name

* add integration tests for the `oxide` engine

* add integration tests for the `stable` engine

* run `oxide` integrations against node `18`

* run `stable` integration tests against node 18

We should test node 12 for tailwindcss, but integrations itself can run
against a newer version. In fact, we always ran them against node 16.

* use `localhost` instead of `0.0.0.0`

* ensure `webpack-4` works on Node 18

* run relese scripst directly

Instead of going via `npm`. It's a bit nicer and quicker!

* drop unused scripts

* sync package-lock.json

* ensure to generate the plugin list before running `jest`

We _could_ use an `npm run pretest`, but then you can't run `jest`
directly anymore (which is required for some tools like vscode
extensions).

* cleanup npm scripts

* drop pretend comments

* fix typo

* add `build:rust` as a pre-jest run script
2023-01-19 11:58:25 -05:00
Michael J. Rasicci
9e8d37a8e2
Add standalone-cli build for Windows Arm64 platform (#10001)
* Add standalone-cli build for Windows ARM64

* Fix path to binary on windows

* Fix style

* Simplify Windows mapping in standalone CLI tests

Co-authored-by: Jordan Pittman <jordan@cryptica.me>
2022-12-05 12:39:04 -05:00
Robin Malfait
3c7fc692d3
Workflow improvements (#9609)
* remove unnecessary download links

GitHub already shows them in a table right below it.

* detach `npm run style` from `npm run test`

* decouple lint from test in workflows

Which means that we don't need to do the crazy linking in certain
workflows.

* hoist the `CI` environment variable

* create dedicated `lint` job

The `lint` tests will run against source files and should not be
dependant on a specific node version. Instead of running the `npm run
style` on every node version we use, we can and should only run it once.

* remove `prettier-plugin-tailwindcss`

As long as we use older versions of node/npm where we can't have
ourselves as a dependency, it is a bit of a mess to maintain properly
sorted html in tests.

Let's remove it for now until we have a better solution!
2022-10-20 18:10:18 +02:00
Robin Malfait
cb6e45a3bc
Prepare for release (#9605)
* rename `build-cli.yml` to `prepare-release.yml`

In other repo's we will also have a `prepare-release` so this makes it a
bit more consistent.

* use common CONSTANT_CASE for environment variables

* use `strategy` for defining the node version

* add script to get the release notes

* add release notes to release draft

* use CONSTANT_CASE for environment variables

* improve consistency for relase related scripts
2022-10-19 15:52:39 +02:00