mirror of
https://github.com/cypress-io/cypress.git
synced 2026-02-15 03:31:18 -06:00
dependency: update dependency electron to v36.8.1 (#32371)
* chore(deps): update dependency electron to v36.8.1 * bump node version * update workflow files + publish-binary script * bump base-internal images * remove current node version from additional test * bump circleci cache * allow node_version env var * Update .circleci/workflows.yml * index on renovate/electron-36.x:95d10b1d53Merge branch 'develop' into renovate/electron-36.x * index on renovate/electron-36.x:95d10b1d53Merge branch 'develop' into renovate/electron-36.x * index on renovate/electron-36.x:95d10b1d53Merge branch 'develop' into renovate/electron-36.x * bump types/node * update some node versions * update integrity check and electron instrcutions * correctly call net.family with net family type * Revert "correctly call net.family with net family type" This reverts commit505ff949a8. * update location of note types * more clearly type frame * fix type issues in agent.ts file * fix agent call * replace proxyquire in webpack-dev-server package * add changelog --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com> Co-authored-by: Jennifer Shehane <jennifer@cypress.io> Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
This commit is contained in:
@@ -38,7 +38,7 @@ mainBuildFilters: &mainBuildFilters
|
||||
- /^release\/\d+\.\d+\.\d+$/
|
||||
# use the following branch as well to ensure that v8 snapshot cache updates are fully tested
|
||||
- 'update-v8-snapshot-cache-on-develop'
|
||||
- 'feature/cli_to_vitest'
|
||||
- 'renovate/electron-36.x'
|
||||
|
||||
# usually we don't build Mac app - it takes a long time
|
||||
# but sometimes we want to really confirm we are doing the right thing
|
||||
@@ -49,7 +49,7 @@ macWorkflowFilters: &darwin-workflow-filters
|
||||
- equal: [ develop, << pipeline.git.branch >> ]
|
||||
# use the following branch as well to ensure that v8 snapshot cache updates are fully tested
|
||||
- equal: [ 'update-v8-snapshot-cache-on-develop', << pipeline.git.branch >> ]
|
||||
- equal: [ 'feature/cli_to_vitest', << pipeline.git.branch >> ]
|
||||
- equal: [ 'renovate/electron-36.x', << pipeline.git.branch >> ]
|
||||
- matches:
|
||||
pattern: /^release\/\d+\.\d+\.\d+$/
|
||||
value: << pipeline.git.branch >>
|
||||
@@ -60,7 +60,7 @@ linuxArm64WorkflowFilters: &linux-arm64-workflow-filters
|
||||
- equal: [ develop, << pipeline.git.branch >> ]
|
||||
# use the following branch as well to ensure that v8 snapshot cache updates are fully tested
|
||||
- equal: [ 'update-v8-snapshot-cache-on-develop', << pipeline.git.branch >> ]
|
||||
- equal: [ 'feature/cli_to_vitest', << pipeline.git.branch >> ]
|
||||
- equal: [ 'renovate/electron-36.x', << pipeline.git.branch >> ]
|
||||
- matches:
|
||||
pattern: /^release\/\d+\.\d+\.\d+$/
|
||||
value: << pipeline.git.branch >>
|
||||
@@ -83,7 +83,7 @@ windowsWorkflowFilters: &windows-workflow-filters
|
||||
- equal: [ develop, << pipeline.git.branch >> ]
|
||||
# use the following branch as well to ensure that v8 snapshot cache updates are fully tested
|
||||
- equal: [ 'update-v8-snapshot-cache-on-develop', << pipeline.git.branch >> ]
|
||||
- equal: [ 'feature/cli_to_vitest', << pipeline.git.branch >> ]
|
||||
- equal: [ 'renovate/electron-36.x', << pipeline.git.branch >> ]
|
||||
- matches:
|
||||
pattern: /^release\/\d+\.\d+\.\d+$/
|
||||
value: << pipeline.git.branch >>
|
||||
@@ -92,7 +92,7 @@ executors:
|
||||
# the Docker image with Cypress dependencies and Chrome browser
|
||||
cy-doc:
|
||||
docker:
|
||||
- image: cypress/base-internal:22.15.1-bullseye
|
||||
- image: cypress/base-internal:22.18.0-bullseye
|
||||
# by default, we use "medium" to balance performance + CI costs. bump or reduce on a per-job basis if needed.
|
||||
resource_class: medium
|
||||
environment:
|
||||
@@ -100,7 +100,7 @@ executors:
|
||||
|
||||
kitchensink-executor:
|
||||
docker:
|
||||
- image: cypress/base-internal:22.15.1-bullseye
|
||||
- image: cypress/base-internal:22.18.0-bullseye
|
||||
# by default, we use "medium" to balance performance + CI costs. bump or reduce on a per-job basis if needed.
|
||||
resource_class: medium
|
||||
environment:
|
||||
@@ -109,7 +109,7 @@ executors:
|
||||
# Docker image with non-root "node" user
|
||||
non-root-docker-user:
|
||||
docker:
|
||||
- image: cypress/base-internal:22.15.1-bullseye
|
||||
- image: cypress/base-internal:22.18.0-bullseye
|
||||
user: node
|
||||
environment:
|
||||
PLATFORM: linux
|
||||
@@ -163,7 +163,7 @@ commands:
|
||||
name: Set environment variable to determine whether or not to persist artifacts
|
||||
command: |
|
||||
echo "Setting SHOULD_PERSIST_ARTIFACTS variable"
|
||||
echo 'if ! [[ "$CIRCLE_BRANCH" != "develop" && "$CIRCLE_BRANCH" != "release/"* && "$CIRCLE_BRANCH" != "feature/cli_to_vitest" ]]; then
|
||||
echo 'if ! [[ "$CIRCLE_BRANCH" != "develop" && "$CIRCLE_BRANCH" != "release/"* && "$CIRCLE_BRANCH" != "renovate/electron-36.x" ]]; then
|
||||
export SHOULD_PERSIST_ARTIFACTS=true
|
||||
fi' >> "$BASH_ENV"
|
||||
# You must run `setup_should_persist_artifacts` command and be using bash before running this command
|
||||
@@ -646,9 +646,9 @@ commands:
|
||||
if [[ ! -f better_sqlite3.node ]]; then
|
||||
set -x
|
||||
apt update && apt install -y docker.io
|
||||
docker run -d --name better-sqlite3-builder cypress/base-internal:22.15.1-glibc2.31 /bin/bash -c "sleep 1000000000"
|
||||
docker run -d --name better-sqlite3-builder cypress/base-internal:22.18.0-glibc-2.31 /bin/bash -c "sleep 1000000000"
|
||||
docker cp ~/cypress/node_modules/better-sqlite3 better-sqlite3-builder:/better-sqlite3
|
||||
docker exec -it better-sqlite3-builder /bin/bash -c "cd /better-sqlite3 && source /root/.bashrc && chown -R root:root . && npm install --ignore-scripts && npx --no-install prebuild -r electron -t 36.4.0 --include-regex 'better_sqlite3.node$'"
|
||||
docker exec -it better-sqlite3-builder /bin/bash -c "cd /better-sqlite3 && source /root/.bashrc && chown -R root:root . && npm install --ignore-scripts && npx --no-install prebuild -r electron -t 36.8.1 --include-regex 'better_sqlite3.node$'"
|
||||
docker cp better-sqlite3-builder:/better-sqlite3/build/Release/better_sqlite3.node ~/cypress/node_modules/better-sqlite3/build/Release/better_sqlite3.node
|
||||
docker rm -f better-sqlite3-builder
|
||||
cp ~/cypress/node_modules/better-sqlite3/build/Release/better_sqlite3.node ~/cypress/better_sqlite3.node
|
||||
@@ -1947,7 +1947,7 @@ jobs:
|
||||
working_directory: ~/cypress
|
||||
docker:
|
||||
# we need an image with yarn 4 berry installed on it to run this test
|
||||
- image: cypress/base-internal:22.15.1-yarn-berry
|
||||
- image: cypress/base-internal:22.18.0-yarn-berry
|
||||
environment:
|
||||
# needed to inform the bootstrap-docker-container.sh script to link the binary in the system-test project directory
|
||||
REPO_DIR: /root/cypress
|
||||
@@ -1981,7 +1981,7 @@ jobs:
|
||||
parallelism: 1
|
||||
working_directory: ~/cypress
|
||||
docker:
|
||||
- image: cypress/base-internal:22.15.1-bullseye
|
||||
- image: cypress/base-internal:22.18.0-bullseye
|
||||
environment:
|
||||
# needed to inform the bootstrap-docker-container.sh script to link the binary in the system-test project directory
|
||||
REPO_DIR: /root/cypress
|
||||
@@ -2635,7 +2635,7 @@ jobs:
|
||||
<<: *defaults
|
||||
resource_class: small
|
||||
docker:
|
||||
- image: cypress/base-internal:22.15.1
|
||||
- image: cypress/base-internal:22.18.0
|
||||
steps:
|
||||
- maybe_skip_binary_jobs
|
||||
- restore_workspace_binaries
|
||||
|
||||
@@ -1 +1 @@
|
||||
22.15.1
|
||||
22.18.0
|
||||
@@ -11,6 +11,12 @@ _Released 9/23/2025 (PENDING)_
|
||||
|
||||
- Update the styles for command grouping 'line' so on expansion it is displayed correctly. Addressed in [#32521](https://github.com/cypress-io/cypress/pull/32521)
|
||||
|
||||
**Dependency Updates:**
|
||||
|
||||
- Upgraded `electron` from `36.4.0` to `36.8.1`. Addressed in [#32371](https://github.com/cypress-io/cypress/pull/32371).
|
||||
- Upgraded bundled Node.js version from `22.15.1` to `22.18.0`. Addressed in [#32371](https://github.com/cypress-io/cypress/pull/32371).
|
||||
- Upgraded bundled Chromium version from `136.0.7103.149` to `136.0.7103.177`. Addressed in [#32371](https://github.com/cypress-io/cypress/pull/32371).
|
||||
|
||||
## 15.2.0
|
||||
|
||||
_Released 9/9/2025_
|
||||
|
||||
@@ -31,7 +31,7 @@ services:
|
||||
- .:/opt/cypress
|
||||
ci:
|
||||
# This should mirror the image used in workflows.yml
|
||||
image: cypress/base-internal:22.15.1-bullseye
|
||||
image: cypress/base-internal:22.18.0-bullseye
|
||||
ports:
|
||||
- 5566:5566
|
||||
- 5567:5567
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
"@schematics/angular": "^20.1.6",
|
||||
"@types/chai-enzyme": "0.6.13",
|
||||
"@types/mocha": "8.0.3",
|
||||
"@types/node": "^22.17.1",
|
||||
"@types/node": "^22.18.0",
|
||||
"eslint": "^9.31.0",
|
||||
"typescript": "~5.4.5",
|
||||
"vitest": "^3.2.4"
|
||||
|
||||
@@ -69,7 +69,6 @@ function generateCTSpec ({ tree, appPath, component }: { tree: Tree, appPath: st
|
||||
const componentFilename = component['name'].split('.')[0]
|
||||
const componentName = componentMatch ? componentMatch[0] : componentFilename
|
||||
|
||||
// eslint-disable-next-line no-console
|
||||
console.log(`Creating new component spec for: ${componentName}\n`)
|
||||
|
||||
return tree.create(`${appPath}/${componentFilename}.component.cy.ts`, ctSpecContent({ componentName, componentFilename }))
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@packages/eslint-config": "0.0.0-development",
|
||||
"@types/node": "^20.16.0",
|
||||
"@types/node": "^22.18.0",
|
||||
"chai-as-promised": "^7.1.1",
|
||||
"chokidar": "^3.5.3",
|
||||
"eslint": "^9.31.0",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"types": [
|
||||
"cypress",
|
||||
"./support",
|
||||
"./node_modules/@types/node"
|
||||
"node"
|
||||
]
|
||||
},
|
||||
"include": [
|
||||
|
||||
@@ -29,15 +29,13 @@
|
||||
"webpack-merge": "^5.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "20.16.0",
|
||||
"@types/proxyquire": "^1.3.28",
|
||||
"@types/node": "22.18.0",
|
||||
"@types/speed-measure-webpack-plugin": "^1.3.4",
|
||||
"@types/webpack-bundle-analyzer": "4.7.0",
|
||||
"chai": "^4.3.6",
|
||||
"cross-env": "7.0.3",
|
||||
"dedent": "^0.7.0",
|
||||
"mocha": "^9.2.2",
|
||||
"proxyquire": "2.1.3",
|
||||
"sinon": "^13.0.1",
|
||||
"snap-shot-it": "^7.9.10",
|
||||
"ts-node": "^10.9.2",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import path from 'path'
|
||||
import proxyquire from 'proxyquire'
|
||||
import { expect } from 'chai'
|
||||
import sinon from 'sinon'
|
||||
|
||||
import { createModuleMatrixResult } from './test-helpers/createModuleMatrixResult'
|
||||
import EventEmitter from 'events'
|
||||
@@ -16,25 +16,29 @@ describe('devServer', function () {
|
||||
this.timeout(10 * 1000)
|
||||
|
||||
it('creates a new devServer webpack5, webpackDevServer5', async () => {
|
||||
const { devServer } = proxyquire('../src/devServer', {
|
||||
'./helpers/sourceRelativeWebpackModules': {
|
||||
sourceDefaultWebpackDependencies: () => {
|
||||
return createModuleMatrixResult({
|
||||
webpack: 5,
|
||||
webpackDevServer: 5,
|
||||
})
|
||||
} },
|
||||
}) as typeof import('../src/devServer')
|
||||
const sourceRelativeWebpackModules = require('../src/helpers/sourceRelativeWebpackModules')
|
||||
const stub = sinon.stub(sourceRelativeWebpackModules, 'sourceDefaultWebpackDependencies')
|
||||
.returns(createModuleMatrixResult({
|
||||
webpack: 5,
|
||||
webpackDevServer: 5,
|
||||
}))
|
||||
|
||||
const result = await devServer.create({
|
||||
specs: [],
|
||||
cypressConfig,
|
||||
webpackConfig: {},
|
||||
devServerEvents: new EventEmitter(),
|
||||
})
|
||||
try {
|
||||
const devServerModule = require('../src/devServer')
|
||||
const { devServer } = devServerModule
|
||||
|
||||
expect(result.server).to.be.instanceOf(require('webpack-dev-server'))
|
||||
expect(result.version).to.eq(5)
|
||||
const result = await devServer.create({
|
||||
specs: [],
|
||||
cypressConfig,
|
||||
webpackConfig: {},
|
||||
devServerEvents: new EventEmitter(),
|
||||
})
|
||||
|
||||
expect(result.server).to.be.instanceOf(require('webpack-dev-server'))
|
||||
expect(result.version).to.eq(5)
|
||||
} finally {
|
||||
stub.restore()
|
||||
}
|
||||
})
|
||||
|
||||
// Writing to disk includes the correct source map size, where the difference will be made up from stat size vs parsed size
|
||||
@@ -52,27 +56,28 @@ describe('devServer', function () {
|
||||
|
||||
WEBPACK_DEV_SERVER_VERSIONS.forEach((version) => {
|
||||
it(`works for webpack-dev-server v${version}`, async () => {
|
||||
const { devServer } = proxyquire('../src/devServer', {
|
||||
'./helpers/sourceRelativeWebpackModules': {
|
||||
sourceDefaultWebpackDependencies: () => {
|
||||
// using webpack version to wds version as it really doesn't matter much when testing here.
|
||||
// webpack config is tested separately in makeWebpackConfig tests
|
||||
return createModuleMatrixResult({
|
||||
webpack: version,
|
||||
webpackDevServer: version,
|
||||
})
|
||||
} },
|
||||
}) as typeof import('../src/devServer')
|
||||
const sourceRelativeWebpackModules = require('../src/helpers/sourceRelativeWebpackModules')
|
||||
const stub = sinon.stub(sourceRelativeWebpackModules, 'sourceDefaultWebpackDependencies')
|
||||
.returns(createModuleMatrixResult({
|
||||
webpack: version,
|
||||
webpackDevServer: version,
|
||||
}))
|
||||
|
||||
const result = await devServer.create({
|
||||
specs: [],
|
||||
cypressConfig,
|
||||
webpackConfig: {},
|
||||
devServerEvents: new EventEmitter(),
|
||||
})
|
||||
try {
|
||||
const devServerModule = require('../src/devServer')
|
||||
const { devServer } = devServerModule
|
||||
|
||||
// @ts-expect-error
|
||||
expect(result.server.options.devMiddleware.writeToDisk).to.be.true
|
||||
const result = await devServer.create({
|
||||
specs: [],
|
||||
cypressConfig,
|
||||
webpackConfig: {},
|
||||
devServerEvents: new EventEmitter(),
|
||||
})
|
||||
|
||||
expect(result.server.options.devMiddleware.writeToDisk).to.be.true
|
||||
} finally {
|
||||
stub.restore()
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
@@ -113,7 +113,7 @@
|
||||
"@types/lodash": "^4.14.168",
|
||||
"@types/markdown-it": "12.2.3",
|
||||
"@types/mocha": "8.0.3",
|
||||
"@types/node": "22.15.1",
|
||||
"@types/node": "22.18.0",
|
||||
"@types/prismjs": "1.16.0",
|
||||
"@types/react": "18.3.12",
|
||||
"@types/react-dom": "18.3.1",
|
||||
@@ -143,7 +143,7 @@
|
||||
"dedent": "^0.7.0",
|
||||
"del": "3.0.0",
|
||||
"detect-port": "^2.1.0",
|
||||
"electron": "36.4.0",
|
||||
"electron": "36.8.1",
|
||||
"electron-builder": "^25.1.8",
|
||||
"enzyme-adapter-react-16": "1.12.1",
|
||||
"eslint": "^8.56.0",
|
||||
@@ -217,7 +217,7 @@
|
||||
"yarn-deduplicate": "3.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=22.15.1",
|
||||
"node": ">=22.18.0",
|
||||
"yarn": ">=1.22.22"
|
||||
},
|
||||
"productName": "Cypress",
|
||||
|
||||
@@ -165,7 +165,7 @@ Upgrading `electron` involves more than just bumping this package's `package.jso
|
||||
- [ ] `@types/node` used throughout the monorepo to determine compatible node types. The major version of this package must reflect the node version set in [`/.node-version`](../../.node-version).
|
||||
- [ ] [github workflows](../../.github) - used for repository templates, vulnerability detection, and V8 snapshots. If the node version for Snyk needs to be updated, then the required pull request check into `develop` must also be updated. A repository administrator will need to accomplish this.
|
||||
- [ ] [`/package.json`](../../package.json) - update `engines`
|
||||
- [ ] [`docker-compose.yml`](../../docker-compose.yml) - update Docker image to the new matching `browsers` image
|
||||
- [ ] [`docker-compose.yml`](../../docker-compose.yml) - update Docker image to the new matching `internal` image
|
||||
- [ ] [`/system-tests/test-binary/*`](../../system-tests/test-binary) - update binary system tests to use the newly published Ubuntu and Node images mentioned above, if applicable
|
||||
- [ ] Do a global search for the old Node.js version to identify any new areas that may need updating/unification, and update those locations (and this document!)
|
||||
|
||||
@@ -236,7 +236,7 @@ For more detailed information about the build system, see [BUILD.md](./BUILD.md)
|
||||
|
||||
#### Integrity Check Failures
|
||||
|
||||
*Solution*: Update the string representation of `fs.readFileSync` in [scripts/binary/binary-integrity-check-source.js](../../scripts/binary/binary-integrity-check-source.js) to match the string generated by the new version of electron. Create a throw-away script and simply `console.log(fs.readFileSync.toString())`, and execute it with *Electron* rather than *Node*.
|
||||
*Solution*: Update the string representation of `fs.readFileSync` in [scripts/binary/binary-integrity-check-source.js](../../scripts/binary/binary-integrity-check-source.js) to match the string generated by the new version of electron. To do this, create a throw-away script that runs `console.log(fs.readFileSync.toString())`. Execute this with *Electron* rather than *Node* (ie. `npm i -g electron@x.y.z && electron throwaway-script.js`).
|
||||
|
||||
#### ResizeObserver errors in Component Test
|
||||
|
||||
|
||||
@@ -203,7 +203,6 @@ export async function pkgElectronApp (
|
||||
})
|
||||
}
|
||||
} catch (err) {
|
||||
// eslint-disable-next-line no-console
|
||||
console.log((err as Error).stack)
|
||||
|
||||
return process.exit(1)
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
/* eslint-disable no-console */
|
||||
console.log(process.version.replace('v', ''))
|
||||
process.exit(0)
|
||||
|
||||
@@ -278,7 +278,7 @@ describe('open', () => {
|
||||
errCb(err)
|
||||
|
||||
expect(process.exit).toHaveBeenCalledWith(1)
|
||||
// eslint-disable-next-line no-console
|
||||
|
||||
expect(console.error).toHaveBeenCalledWith(err)
|
||||
})
|
||||
})
|
||||
@@ -385,7 +385,7 @@ describe('open', () => {
|
||||
describe('error handling', () => {
|
||||
beforeEach(() => {
|
||||
vi.spyOn(console, 'debug').mockImplementation(() => {})
|
||||
// eslint-disable-next-line no-console
|
||||
|
||||
vi.mocked(console.debug).mockName('console.debug')
|
||||
})
|
||||
|
||||
@@ -397,7 +397,6 @@ describe('open', () => {
|
||||
it('logs error stack and exits with code 1', async () => {
|
||||
await expect(open('nonexistent/path', argv))
|
||||
|
||||
// eslint-disable-next-line no-console
|
||||
expect(console.debug).toHaveBeenCalledWith(expect.any(String))
|
||||
expect(process.exit).toHaveBeenCalledWith(1)
|
||||
})
|
||||
@@ -411,7 +410,6 @@ describe('open', () => {
|
||||
it('logs error stack and exits with code 1', async () => {
|
||||
await open(appPath, argv)
|
||||
|
||||
// eslint-disable-next-line no-console
|
||||
expect(console.debug).toHaveBeenCalledWith(expect.any(String))
|
||||
expect(process.exit).toHaveBeenCalledWith(1)
|
||||
})
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
"@packages/types": "0.0.0-development",
|
||||
"@types/chai": "4.2.15",
|
||||
"@types/mocha": "8.2.2",
|
||||
"@types/node": "20.16.0",
|
||||
"@types/node": "22.18.0",
|
||||
"@types/pngjs": "^6.0.1",
|
||||
"ansi-styles": "^5",
|
||||
"chai": "4.2.0",
|
||||
|
||||
@@ -367,19 +367,25 @@ class HttpsAgent extends https.Agent {
|
||||
}
|
||||
}
|
||||
|
||||
createConnection (options: HttpsRequestOptions, cb: http.SocketCallback) {
|
||||
createConnection (options: HttpsRequestOptions, cb?: any): any {
|
||||
if (process.env.HTTPS_PROXY) {
|
||||
const proxy = getProxyForUrl(options.href)
|
||||
|
||||
if (proxy) {
|
||||
options.proxy = <string>proxy
|
||||
|
||||
return this.createUpstreamProxyConnection(<HttpsRequestOptionsWithProxy>options, cb)
|
||||
// If no callback is provided, we can't handle the async proxy connection
|
||||
// Return the direct connection instead
|
||||
if (!cb) {
|
||||
return super.createConnection(options)
|
||||
}
|
||||
|
||||
return this.createUpstreamProxyConnection(<HttpsRequestOptionsWithProxy>options, cb as any)
|
||||
}
|
||||
}
|
||||
|
||||
// @ts-ignore
|
||||
cb(null, super.createConnection(options))
|
||||
cb?.(null, super.createConnection(options) as any)
|
||||
}
|
||||
|
||||
createUpstreamProxyConnection (options: HttpsRequestOptionsWithProxy, cb: http.SocketCallback) {
|
||||
@@ -443,7 +449,7 @@ class HttpsAgent extends https.Agent {
|
||||
options.servername = hostname
|
||||
}
|
||||
|
||||
return cb(undefined, super.createConnection(options, undefined))
|
||||
return cb(undefined, super.createConnection(options) as any)
|
||||
}
|
||||
|
||||
cb(undefined, proxySocket)
|
||||
|
||||
@@ -210,27 +210,27 @@ class SourcemapSupport {
|
||||
)
|
||||
|
||||
state.curPos = pos
|
||||
frame = cloneCallSite(frame)
|
||||
const clonedFrame = cloneCallSite(frame) as any
|
||||
|
||||
frame.getFileName = function getFileName () {
|
||||
return pos.source || pos.name || undefined
|
||||
clonedFrame.getFileName = function getFileName (): string | null {
|
||||
return pos.source || pos.name || null
|
||||
}
|
||||
|
||||
frame.getLineNumber = function getLineNumber () {
|
||||
clonedFrame.getLineNumber = function getLineNumber () {
|
||||
return pos.line
|
||||
}
|
||||
|
||||
frame.getColumnNumber = function getColumnNumber () {
|
||||
clonedFrame.getColumnNumber = function getColumnNumber () {
|
||||
return pos.column + 1
|
||||
}
|
||||
|
||||
frame.getScriptNameOrSourceURL = function getScriptNameOrSourceURL () {
|
||||
clonedFrame.getScriptNameOrSourceURL = function getScriptNameOrSourceURL () {
|
||||
return pos.source || pos.name || ''
|
||||
}
|
||||
|
||||
frame.codeFrames = pos.codeFrames
|
||||
clonedFrame.codeFrames = pos.codeFrames
|
||||
|
||||
return frame
|
||||
return clonedFrame
|
||||
}
|
||||
|
||||
return frame
|
||||
|
||||
@@ -172,7 +172,7 @@
|
||||
"@types/chrome": "0.0.101",
|
||||
"@types/chrome-remote-interface": "0.31.14",
|
||||
"@types/http-proxy": "1.17.4",
|
||||
"@types/node": "20.16.0",
|
||||
"@types/node": "22.18.0",
|
||||
"@types/request-promise": "^4.1.48",
|
||||
"@types/tar": "^6.1.0",
|
||||
"babel-loader": "10.0.0",
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@packages/eslint-config": "0.0.0-development",
|
||||
"@types/node": "^22.13.10",
|
||||
"@types/node": "^22.18.0",
|
||||
"@vitest/coverage-v8": "^3.2.4",
|
||||
"eslint": "^9.22.0",
|
||||
"rimraf": "^6.0.1",
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
"semver": "^7.7.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "20.16.0",
|
||||
"@types/node": "22.18.0",
|
||||
"axios": "^1.8.3",
|
||||
"better-sqlite3": "11.10.0",
|
||||
"devtools-protocol": "0.0.1459876",
|
||||
|
||||
@@ -94,7 +94,7 @@ function validateElectron (electron) {
|
||||
|
||||
function validateFs (fs) {
|
||||
// Hard coded function as this is electron code and there's not an easy way to get the function string at package time. If this fails on an updated version of electron, we'll need to update this.
|
||||
if (originalToString.call(fs.readFileSync) !== `function(t,e){const r=splitPath(t);return r.isAsar?readFileFromArchiveSync(r,e):R.apply(this,arguments)}`) {
|
||||
if (originalToString.call(fs.readFileSync) !== `function(t,e){const r=splitPath(t);return r.isAsar?readFileFromArchiveSync(r,e):T.apply(this,arguments)}`) {
|
||||
console.error(`Integrity check failed for toString.call(fs.readFileSync)`)
|
||||
throw new Error(integrityErrorMessage)
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ const { getNextVersionForBinary } = require('../get-next-version')
|
||||
job_name: process.env.CIRCLE_JOB,
|
||||
triggered_workflow_id: process.env.CIRCLE_WORKFLOW_ID,
|
||||
triggered_job_url: process.env.CIRCLE_BUILD_URL,
|
||||
branch: process.env.CIRCLE_BRANCH,
|
||||
branch: 'electron-36-8-1',
|
||||
should_persist_artifacts: Boolean(process.env.SHOULD_PERSIST_ARTIFACTS),
|
||||
binary_version: nextVersion,
|
||||
},
|
||||
|
||||
@@ -18,7 +18,7 @@ function isAllowlistedEnv (key, value) {
|
||||
['true', 'false', 'TRUE', 'FALSE', 'True', 'False'].includes(value)
|
||||
|| value.length < 4
|
||||
// allow some envs that are not sensitive
|
||||
|| ['nodejs_version', 'CF_DOMAIN', 'SKIP_RELEASE_CHANGELOG_VALIDATION_FOR_BRANCHES', 'CIRCLE_PROJECT_REPONAME', 'CIRCLE_PR_REPONAME', 'CIRCLE_BRANCH', 'CIRCLE_PROJECT_USERNAME',
|
||||
|| ['nodejs_version', 'NODE_VERSION', 'CF_DOMAIN', 'SKIP_RELEASE_CHANGELOG_VALIDATION_FOR_BRANCHES', 'CIRCLE_PROJECT_REPONAME', 'CIRCLE_PR_REPONAME', 'CIRCLE_BRANCH', 'CIRCLE_PROJECT_USERNAME',
|
||||
'HOME', 'HOMEPATH', 'PLATFORM', 'HOSTNAME', 'PWD', 'INIT_CWD', 'USER', 'SUDO_USER', 'USERNAME', 'USERPROFILE', 'LOGNAME', 'npm_config_loglevel'].includes(key)
|
||||
// ignore npm_package_ envs https://docs.npmjs.com/cli/v11/using-npm/scripts#packagejson-vars
|
||||
|| key.startsWith('npm_package_')
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
"react-dom": "19.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^20",
|
||||
"@types/node": "^22.18.0",
|
||||
"@types/react": "^19",
|
||||
"@types/react-dom": "^19",
|
||||
"postcss": "^8",
|
||||
|
||||
@@ -254,12 +254,12 @@
|
||||
dependencies:
|
||||
tslib "^2.8.0"
|
||||
|
||||
"@types/node@^20":
|
||||
version "20.17.6"
|
||||
resolved "https://registry.npmjs.org/@types/node/-/node-20.17.6.tgz#6e4073230c180d3579e8c60141f99efdf5df0081"
|
||||
integrity sha512-VEI7OdvK2wP7XHnsuXbAJnEpEkF6NjSN45QJlL4VGqZSXsnicpesdTWsg9RISeSdYd3yeRj/y3k5KGjUXYnFwQ==
|
||||
"@types/node@^22.18.0":
|
||||
version "22.18.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.18.0.tgz#9e4709be4f104e3568f7dd1c71e2949bf147a47b"
|
||||
integrity sha512-m5ObIqwsUp6BZzyiy4RdZpzWGub9bqLJMvZDD0QMXhxjqMHMENlj+SqF5QxoUwaQNFe+8kz8XM8ZQhqkQPTgMQ==
|
||||
dependencies:
|
||||
undici-types "~6.19.2"
|
||||
undici-types "~6.21.0"
|
||||
|
||||
"@types/prop-types@*":
|
||||
version "15.7.13"
|
||||
@@ -1071,10 +1071,10 @@ typescript@^5:
|
||||
resolved "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz#5f3449e31c9d94febb17de03cc081dd56d81db5b"
|
||||
integrity sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==
|
||||
|
||||
undici-types@~6.19.2:
|
||||
version "6.19.8"
|
||||
resolved "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02"
|
||||
integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==
|
||||
undici-types@~6.21.0:
|
||||
version "6.21.0"
|
||||
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb"
|
||||
integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==
|
||||
|
||||
util-deprecate@^1.0.2:
|
||||
version "1.0.2"
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@tsconfig/node20": "^20.1.4",
|
||||
"@types/node": "^20.17.0",
|
||||
"@types/node": "^22.18.0",
|
||||
"@vitejs/plugin-vue": "^5.1.4",
|
||||
"@vue/tsconfig": "^0.5.1",
|
||||
"npm-run-all2": "^7.0.1",
|
||||
|
||||
@@ -276,12 +276,12 @@
|
||||
resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50"
|
||||
integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==
|
||||
|
||||
"@types/node@^20.17.0":
|
||||
version "20.17.3"
|
||||
resolved "https://registry.npmjs.org/@types/node/-/node-20.17.3.tgz#1ad87177c53fa2b237e79a4929fd37932f779f0c"
|
||||
integrity sha512-tSQrmKKatLDGnG92h40GD7FzUt0MjahaHwOME4VAFeeA/Xopayq5qLyQRy7Jg/pjgKIFBXuKcGhJo+UdYG55jQ==
|
||||
"@types/node@^22.18.0":
|
||||
version "22.18.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.18.0.tgz#9e4709be4f104e3568f7dd1c71e2949bf147a47b"
|
||||
integrity sha512-m5ObIqwsUp6BZzyiy4RdZpzWGub9bqLJMvZDD0QMXhxjqMHMENlj+SqF5QxoUwaQNFe+8kz8XM8ZQhqkQPTgMQ==
|
||||
dependencies:
|
||||
undici-types "~6.19.2"
|
||||
undici-types "~6.21.0"
|
||||
|
||||
"@vitejs/plugin-vue@^5.1.4":
|
||||
version "5.1.4"
|
||||
@@ -926,10 +926,10 @@ typescript@~5.6.0:
|
||||
resolved "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz#5f3449e31c9d94febb17de03cc081dd56d81db5b"
|
||||
integrity sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==
|
||||
|
||||
undici-types@~6.19.2:
|
||||
version "6.19.8"
|
||||
resolved "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02"
|
||||
integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==
|
||||
undici-types@~6.21.0:
|
||||
version "6.21.0"
|
||||
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb"
|
||||
integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==
|
||||
|
||||
vite@^5.4.18:
|
||||
version "5.4.18"
|
||||
|
||||
@@ -3,7 +3,7 @@ import systemTests from '../lib/system-tests'
|
||||
describe('module API', () => {
|
||||
systemTests.it('can run module API Mocha spec', {
|
||||
timeout: 240000,
|
||||
dockerImage: 'cypress/base-internal:22.15.1-bullseye',
|
||||
dockerImage: 'cypress/base-internal:22.18.0-bullseye',
|
||||
withBinary: true,
|
||||
project: 'module-api',
|
||||
browser: 'electron',
|
||||
|
||||
@@ -31,7 +31,7 @@ describe('binary node versions', () => {
|
||||
'cypress/base:22.0.0',
|
||||
'cypress/base:22.7.0',
|
||||
'cypress/base:22.12.0',
|
||||
'cypress/base:22.14.0',
|
||||
'cypress/base:22.18.0',
|
||||
'cypress/base:24.0.0',
|
||||
].forEach(smokeTestDockerImage)
|
||||
})
|
||||
@@ -43,7 +43,7 @@ describe('type: module', () => {
|
||||
'cypress/base:22.0.0',
|
||||
'cypress/base:22.7.0',
|
||||
'cypress/base:22.12.0',
|
||||
'cypress/base:22.14.0',
|
||||
'cypress/base:22.18.0',
|
||||
'cypress/base:24.0.0',
|
||||
].forEach((dockerImage) => {
|
||||
systemTests.it(`can run in ${dockerImage}`, {
|
||||
|
||||
37
yarn.lock
37
yarn.lock
@@ -8179,10 +8179,10 @@
|
||||
dependencies:
|
||||
"@types/node" "*"
|
||||
|
||||
"@types/node@*", "@types/node@>=10.0.0", "@types/node@^22.13.10", "@types/node@^22.17.1", "@types/node@^22.7.7":
|
||||
version "22.17.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.17.1.tgz#484a755050497ebc3b37ff5adb7470f2e3ea5f5b"
|
||||
integrity sha512-y3tBaz+rjspDTylNjAX37jEC3TETEFGNJL6uQDxwF9/8GLLIjW1rvVHlynyuUKMnMr1Roq8jOv3vkopBjC4/VA==
|
||||
"@types/node@*", "@types/node@22.18.0", "@types/node@>=10.0.0", "@types/node@^22.18.0", "@types/node@^22.7.7":
|
||||
version "22.18.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.18.0.tgz#9e4709be4f104e3568f7dd1c71e2949bf147a47b"
|
||||
integrity sha512-m5ObIqwsUp6BZzyiy4RdZpzWGub9bqLJMvZDD0QMXhxjqMHMENlj+SqF5QxoUwaQNFe+8kz8XM8ZQhqkQPTgMQ==
|
||||
dependencies:
|
||||
undici-types "~6.21.0"
|
||||
|
||||
@@ -8191,26 +8191,12 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-16.9.1.tgz#0611b37db4246c937feef529ddcc018cf8e35708"
|
||||
integrity sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==
|
||||
|
||||
"@types/node@20.16.0":
|
||||
version "20.16.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.16.0.tgz#02e5cd414f76bf345874ee65a1e5590d755d894f"
|
||||
integrity sha512-vDxceJcoZhIVh67S568bm1UGZO0DX0hpplJZxzeXMKwIPLn190ec5RRxQ69BKhX44SUGIxxgMdDY557lGLKprQ==
|
||||
dependencies:
|
||||
undici-types "~6.19.2"
|
||||
|
||||
"@types/node@22.15.1":
|
||||
version "22.15.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.15.1.tgz#4cd2c8717a61ae2979c6a0624b4d1b67415bf2c0"
|
||||
integrity sha512-gSZyd0Qmv7qvbd2fJ9HGdYmv1yhNdelIA4YOtN6vkcmSwFhthxSEsBgU/JYZcXjWT6DFzoATcHrc52Ckh8SeRA==
|
||||
dependencies:
|
||||
undici-types "~6.21.0"
|
||||
|
||||
"@types/node@^12.12.29", "@types/node@^12.12.7":
|
||||
version "12.20.55"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240"
|
||||
integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==
|
||||
|
||||
"@types/node@^20.1.0", "@types/node@^20.16.0":
|
||||
"@types/node@^20.1.0":
|
||||
version "20.16.12"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.16.12.tgz#61cc9be049584b472fa31e465aa0ab3c090dac56"
|
||||
integrity sha512-LfPFB0zOeCeCNQV3i+67rcoVvoN5n0NVuR2vLG0O5ySQMgchuZlC4lgz546ZOJyDtj5KIgOxy+lacOimfqZAIA==
|
||||
@@ -8302,11 +8288,6 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7"
|
||||
integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==
|
||||
|
||||
"@types/proxyquire@^1.3.28":
|
||||
version "1.3.28"
|
||||
resolved "https://registry.yarnpkg.com/@types/proxyquire/-/proxyquire-1.3.28.tgz#05a647bb0d8fe48fc8edcc193e43cc79310faa7d"
|
||||
integrity sha512-SQaNzWQ2YZSr7FqAyPPiA3FYpux2Lqh3HWMZQk47x3xbMCqgC/w0dY3dw9rGqlweDDkrySQBcaScXWeR+Yb11Q==
|
||||
|
||||
"@types/qs@*":
|
||||
version "6.9.6"
|
||||
resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.6.tgz#df9c3c8b31a247ec315e6996566be3171df4b3b1"
|
||||
@@ -14924,10 +14905,10 @@ electron-to-chromium@^1.5.173:
|
||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.185.tgz#b4f9189c4ef652ddf9f1bb37529e2b79f865e912"
|
||||
integrity sha512-dYOZfUk57hSMPePoIQ1fZWl1Fkj+OshhEVuPacNKWzC1efe56OsHY3l/jCfiAgIICOU3VgOIdoq7ahg7r7n6MQ==
|
||||
|
||||
electron@36.4.0:
|
||||
version "36.4.0"
|
||||
resolved "https://registry.yarnpkg.com/electron/-/electron-36.4.0.tgz#9463bf5fa7565ae7be3a274f7f6a46359bcfe74d"
|
||||
integrity sha512-LLOOZEuW5oqvnjC7HBQhIqjIIJAZCIFjQxltQGLfEC7XFsBoZgQ3u3iFj+Kzw68Xj97u1n57Jdt7P98qLvUibQ==
|
||||
electron@36.8.1:
|
||||
version "36.8.1"
|
||||
resolved "https://registry.yarnpkg.com/electron/-/electron-36.8.1.tgz#c27dfb13fcc1bedf29929fe67430ee13a778c4df"
|
||||
integrity sha512-honaH58/cyCb9QAzIvD+WXWuNIZ0tW9zfBqMz5wZld/rXB+LCTEDb2B3TAv8+pDmlzPlkPio95RkUe86l6MNjg==
|
||||
dependencies:
|
||||
"@electron/get" "^2.0.0"
|
||||
"@types/node" "^22.7.7"
|
||||
|
||||
Reference in New Issue
Block a user