Skip to content

Conversation

wjhsf
Copy link
Contributor

@wjhsf wjhsf commented Oct 7, 2025

Details

This PR adds a CI run of the tests with API_VERSION=66 and updates the config to run in chrome, firefox, and safari. It also (hopefully) connects to saucelabs when run in CI. If the LEGACY_BROWSERS var is set in CI, then it runs slightly old chrome and safari (not that legacy, imo 🤷).

Does this pull request introduce a breaking change?

  • 😮‍💨 No, it does not introduce a breaking change.
  • 💔 Yes, it does introduce a breaking change.

Does this pull request introduce an observable change?

  • 🤞 No, it does not introduce an observable change.
  • 🔬 Yes, it does include an observable change.

GUS work item

@wjhsf wjhsf requested a review from a team as a code owner October 7, 2025 18:54
I'm not convinced this is the right place to do it
@wjhsf
Copy link
Contributor Author

wjhsf commented Oct 9, 2025

/nucleus ingore --reason "PR isn't ready and I want to watch CI"

Copy link
Contributor

❌ Error Parsing Command

Unknown arguments: reason, ingore

/nucleus <command>

Commands:
  /nucleus deploy                           Perform deploy
  /nucleus help                             Display usage information
  /nucleus ignore                           Ignore test failures
  /nucleus ping                             Ping Nucleus
  /nucleus release                          Perform release
  /nucleus reset-auto-increment             Reset auto-increment value for
  [incrementValue]                          project
  /nucleus skip-dep-update                  Opt-out from the upstream dependency
                                            update
  /nucleus skip-deployment                  Mark deployment as skipped for the
                                            workflow associated with this PR
  /nucleus start                            Start the Nucleus workflow
                                            associated with this pull-request.
  /nucleus stop                             Stops the workflow associated with
                                            this PR.
  /nucleus test                             Build project and execute tests.
                                            This command may be executed to
                                            re-run the testing stage.
  /nucleus update-downstream-deps           Update downstream dependents
  /nucleus bump-version [version]           Bump version

Options:
  --help  Show help                                                    [boolean]

Examples:
  /nucleus release 1.2.0  Release version 1.2.0

Unknown arguments: reason, ingore

@wjhsf
Copy link
Contributor Author

wjhsf commented Oct 9, 2025

/nucleus ignore --reason "PR isn't ready and I want to watch CI"

wjhsf and others added 3 commits October 14, 2025 15:32
* test(wtr): change from filename-based config to magic directive

* test(wtr): actually use JSON

* test(wtr): let spec file set config for whole dir

* test(wtr): fix CTE tests
@wjhsf wjhsf force-pushed the wjh/wtr-keep-on-enving branch from 5bf64d8 to e928017 Compare October 15, 2025 19:37
browserName: 'safari',
browserVersion: 'latest',
}),
...(options.LEGACY_BROWSERS
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is somewhat misleading, how much does things change in (2 versions prior to latest?) to call them legacy?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a silly name, but it's what we did with the Karma tests.

import { API_VERSION } from '../../../helpers/options';

it(`should support call expressions`, () => {
const cteEnabled = API_VERSION >= 66;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thinking if this should be hoisted to global config or something so it's easier to update this in the future and we don't have to drill down all the way?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CTE was introduced in API version 66; this check will never need to be updated.

// Potential workaround: https://github.com/modernweb-dev/web/issues/2588
concurrency: 1,
browserLogs: false,
concurrency: options.CI ? 6 : 1,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

curious about 6, does this follow any known limitation?
Also, any thoughts on decoupling concurrency with CI and making it an ENV variable?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I copied this from the docs. When run locally, tests cannot be run concurrently, due to the timing issue mentioned in the code comment. I don't know whether or not the limitation exists when run with SauceLabs, so I made this change to find out.

browserName: 'chrome',
browserVersion: 'latest',
}),
// sauceLabsLauncher({
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🫠

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SauceLabs seems to be flaky. So I'm starting with running just one browser, and I'll add more later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants