Skip to content

Commit a275d98

Browse files
shakyShanegithub-actions[bot]
authored andcommitted
Release build 4.21.0 [ci release]
1 parent 5989407 commit a275d98

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+16752
-6833
lines changed

.github/workflows/tests.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,9 +69,15 @@ jobs:
6969
if: always()
7070
with:
7171
name: playwright-report
72-
path: playwright-report/
72+
path: test-results
7373
retention-days: 5
7474
- run: npm run test-int-x
75+
- uses: actions/upload-artifact@v2
76+
if: always()
77+
with:
78+
name: playwright-report-pages
79+
path: packages/special-pages/test-results
80+
retention-days: 5
7581
- name: Build docs
7682
run: npm run docs
7783

Package.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ let package = Package(
2121
dependencies: [],
2222
resources: [
2323
.process("dist/contentScope.js"),
24+
.process("dist/contentScopeIsolated.js"),
2425
.copy("dist/pages"),
2526
]
2627
),

Sources/ContentScopeScripts/dist/contentScope.js

Lines changed: 40 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -427,6 +427,27 @@
427427
return false
428428
}
429429

430+
/**
431+
* @param {*[]} argsArray
432+
* @returns {string}
433+
*/
434+
function debugSerialize (argsArray) {
435+
const maxSerializedSize = 1000;
436+
const serializedArgs = argsArray.map((arg) => {
437+
try {
438+
const serializableOut = JSON.stringify(arg);
439+
if (serializableOut.length > maxSerializedSize) {
440+
return `<truncated, length: ${serializableOut.length}, value: ${serializableOut.substring(0, maxSerializedSize)}...>`
441+
}
442+
return serializableOut
443+
} catch (e) {
444+
// Sometimes this happens when we can't serialize an object to string but we still wish to log it and make other args readable
445+
return '<unserializable>'
446+
}
447+
});
448+
return JSON.stringify(serializedArgs)
449+
}
450+
430451
/**
431452
* @template {object} P
432453
* @typedef {object} ProxyObject<P>
@@ -469,7 +490,7 @@
469490
kind: this.property,
470491
documentUrl: document.location.href,
471492
stack: getStack(),
472-
args: JSON.stringify(args[2])
493+
args: debugSerialize(args[2])
473494
});
474495
}
475496
// The normal return value
@@ -598,12 +619,7 @@
598619
}
599620

600621
function parseVersionString (versionString) {
601-
const [major = 0, minor = 0, patch = 0] = versionString.split('.').map(Number);
602-
return {
603-
major,
604-
minor,
605-
patch
606-
}
622+
return versionString.split('.').map(Number)
607623
}
608624

609625
/**
@@ -612,12 +628,20 @@
612628
* @returns {boolean}
613629
*/
614630
function satisfiesMinVersion (minVersionString, applicationVersionString) {
615-
const { major: minMajor, minor: minMinor, patch: minPatch } = parseVersionString(minVersionString);
616-
const { major, minor, patch } = parseVersionString(applicationVersionString);
617-
618-
return (major > minMajor ||
619-
(major >= minMajor && minor > minMinor) ||
620-
(major >= minMajor && minor >= minMinor && patch >= minPatch))
631+
const minVersions = parseVersionString(minVersionString);
632+
const currentVersions = parseVersionString(applicationVersionString);
633+
const maxLength = Math.max(minVersions.length, currentVersions.length);
634+
for (let i = 0; i < maxLength; i++) {
635+
const minNumberPart = minVersions[i] || 0;
636+
const currentVersionPart = currentVersions[i] || 0;
637+
if (currentVersionPart > minNumberPart) {
638+
return true
639+
}
640+
if (currentVersionPart < minNumberPart) {
641+
return false
642+
}
643+
}
644+
return true
621645
}
622646

623647
/**
@@ -762,6 +786,9 @@
762786
...baseFeatures,
763787
'webCompat'
764788
],
789+
'apple-isolated': [
790+
'duckPlayer'
791+
],
765792
android: [
766793
...baseFeatures,
767794
'clickToLoad'

0 commit comments

Comments
 (0)