Skip to content

Add support for Upgrade a mixed content request.#34794

Merged
jdm merged 1 commit intoservo:mainfrom
shubhamg13:mixed
Feb 10, 2025
Merged

Add support for Upgrade a mixed content request.#34794
jdm merged 1 commit intoservo:mainfrom
shubhamg13:mixed

Conversation

@shubhamg13
Copy link
Copy Markdown
Member

Add support for Upgrade a mixed content request to a potentially trustworthy URL.


  • ./mach build -d does not report any errors
  • ./mach test-tidy does not report any errors
  • These changes fix #___ (GitHub issue number if applicable)
  • There are tests for these changes (covered by WPT)

@shubhamg13
Copy link
Copy Markdown
Member Author

@jdm , @gterzian , @simonwuelker

@shubhamg13
Copy link
Copy Markdown
Member Author

@jdm
Copy link
Copy Markdown
Member

jdm commented Dec 30, 2024

We don't run those tests in CI yet. Could you update https://github.com/servo/servo/blob/main/tests/wpt/include.ini to add that directory to the tests that we run?

@shubhamg13
Copy link
Copy Markdown
Member Author

shubhamg13 commented Dec 31, 2024

We don't run those tests in CI yet. Could you update https://github.com/servo/servo/blob/main/tests/wpt/include.ini to add that directory to the tests that we run?

Added to list, Please take a look.

Thanks

@jdm jdm added the T-linux-wpt Do a try run of the WPT label Dec 31, 2024
@github-actions github-actions bot removed the T-linux-wpt Do a try run of the WPT label Dec 31, 2024
@github-actions
Copy link
Copy Markdown

🔨 Triggering try run (#12557516228) for Linux WPT

@github-actions
Copy link
Copy Markdown

⚠️ Try run (#12557516228) failed.

@shubhamg13 shubhamg13 requested a review from gterzian as a code owner January 28, 2025 04:06
@jdm jdm added the T-linux-wpt Do a try run of the WPT label Jan 29, 2025
@github-actions github-actions bot removed the T-linux-wpt Do a try run of the WPT label Jan 29, 2025
@github-actions
Copy link
Copy Markdown

🔨 Triggering try run (#13026777949) for Linux (WPT)

@github-actions
Copy link
Copy Markdown

⚠️ Try run (#13026777949) failed.

@shubhamg13 shubhamg13 marked this pull request as draft February 5, 2025 08:47
@shubhamg13 shubhamg13 force-pushed the mixed branch 9 times, most recently from bf34b94 to 3718d02 Compare February 7, 2025 10:08
@shubhamg13 shubhamg13 marked this pull request as ready for review February 7, 2025 10:10
@shubhamg13 shubhamg13 requested a review from jdm February 7, 2025 10:10
@shubhamg13
Copy link
Copy Markdown
Member Author

@xiaochengh

@jdm jdm added the T-linux-wpt Do a try run of the WPT label Feb 7, 2025
@github-actions github-actions bot removed the T-linux-wpt Do a try run of the WPT label Feb 7, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Feb 7, 2025

🔨 Triggering try run (#13200587682) for Linux (WPT)

@github-actions
Copy link
Copy Markdown

github-actions bot commented Feb 7, 2025

Test results for linux-wpt-layout-2020 from try job (#13200587682):

Flaky unexpected result (23)
  • TIMEOUT [expected OK] /_webgl/conformance/rendering/texture-switch-performance.html (#23384)
    • NOTRUN [expected PASS] subtest: Overall test
  • PASS [expected FAIL] /css/compositing/mix-blend-mode/mix-blend-mode-video-sibling.html (#32849)
  • TIMEOUT [expected PASS] /css/css-fonts/metrics-override-normal-keyword.html
  • FAIL [expected PASS] /css/css-overflow/line-clamp/line-clamp-with-floats-010.tentative.html (#35018)
  • PASS [expected FAIL] /css/css-tables/table-cell-overflow-auto-scrolled.html (#35011)
  • OK /css/css-values/cap-invalidation.html (#32757)
    • FAIL [expected PASS] subtest: CSS Values and Units Test: cap invalidation

      uncaught exception: Error: assert_not_equals: expect the capital height of Ahem and sans-serif to be different got disallowed value 371.3333333333333
      

  • OK /encoding/legacy-mb-japanese/shift_jis/sjis-encode-form-ms_kanji.html?1-1000
    • FAIL [expected PASS] subtest: U+30AD キ %83%4C

      assert_equals: expected "%83%4C" but got ""
      

    • FAIL [expected PASS] subtest: U+30AE ギ %83%4D

      str is undefined
      

    • FAIL [expected PASS] subtest: U+30AF ク %83%4E

      str is undefined
      

    • FAIL [expected PASS] subtest: U+30B0 グ %83%4F

      str is undefined
      

    • FAIL [expected PASS] subtest: U+30B1 ケ %83%50

      str is undefined
      

    • FAIL [expected PASS] subtest: U+30B2 ゲ %83%51

      str is undefined
      

    • FAIL [expected PASS] subtest: U+30B3 コ %83%52

      str is undefined
      

    • FAIL [expected PASS] subtest: U+30B4 ゴ %83%53

      str is undefined
      

    • FAIL [expected PASS] subtest: U+30B5 サ %83%54

      str is undefined
      

    • FAIL [expected PASS] subtest: U+30B6 ザ %83%55

      str is undefined
      

    • And 390 more unexpected results...
  • OK /html/browsers/browsing-the-web/navigating-across-documents/008.html (#24456)
    • FAIL [expected PASS] subtest: Link with onclick form submit to javascript url and href navigation

      assert_equals: expected "href" but got "click"
      

  • ERROR [expected OK] /html/browsers/browsing-the-web/navigating-across-documents/anchor-fragment-form-submit-longfragment.html
  • OK /html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/iframe-nosrc.html (#34819)
    • PASS [expected FAIL] subtest: link click
    • PASS [expected FAIL] subtest: form submission
  • OK /html/browsers/windows/browsing-context-names/duplicate-name-order.html (#34623)
    • PASS [expected FAIL] subtest: Duplicate name lookup order
  • TIMEOUT [expected OK] /html/infrastructure/urls/base-url/document-base-url-window-initiator-is-not-opener.https.window.html (#30970)
  • OK /html/rendering/non-replaced-elements/flow-content-0/dialog.html (#34147)
    • FAIL [expected PASS] subtest: Closed dialog in width: 538px iframe

      Value is not an object.
      

    • FAIL [expected PASS] subtest: Open dialog in width: 538px iframe

      Value is not an object.
      

  • OK /html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-nav-link-click.html (#32664)
    • FAIL [expected PASS] subtest: Navigating iframe loading='lazy' before it is loaded: link click

      uncaught exception: Error: assert_equals: expected "http://web-platform.test:8000/html/semantics/embedded-content/the-iframe-element/support/blank.htm?nav" but got "http://web-platform.test:8000/html/semantics/embedded-content/the-iframe-element/support/blank.htm?src"
      

  • OK /html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-nav-location-replace.html (#32604)
    • FAIL [expected PASS] subtest: Navigating iframe loading='lazy' before it is loaded: location.replace

      uncaught exception: Error: assert_equals: expected "http://web-platform.test:8000/html/semantics/embedded-content/the-iframe-element/support/blank.htm?nav" but got "http://web-platform.test:8000/html/semantics/embedded-content/the-iframe-element/support/blank.htm?src"
      

  • OK [expected CRASH] /html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-2.html (#22667)
    • FAIL [expected TIMEOUT] subtest: Check that popups from a sandboxed iframe escape the sandbox if allow-popups-to-escape-sandbox is used

      assert_equals: It came from a sandboxed iframe expected "null" but got "http://web-platform.test:8000"
      

  • CRASH [expected TIMEOUT] /html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html (#24066)
  • OK /html/semantics/forms/form-submission-0/form-submit-iframe-then-location-navigate.html (#29634)
    • PASS [expected FAIL] subtest: Verifies that location navigations take precedence when following form submissions.
  • TIMEOUT [expected OK] /mixed-content/gen/top.meta/unset/audio-tag.https.html
    • TIMEOUT [expected PASS] subtest: Mixed-Content: Expects allowed for audio-tag to same-http origin and keep-scheme redirection from https context.

      Test timed out
      

    • NOTRUN [expected PASS] subtest: Mixed-Content: Expects allowed for audio-tag to same-http origin and no-redirect redirection from https context.
    • NOTRUN [expected PASS] subtest: Mixed-Content: Expects allowed for audio-tag to same-http origin and swap-scheme redirection from https context.
    • NOTRUN [expected PASS] subtest: Mixed-Content: Expects allowed for audio-tag to same-https origin and keep-scheme redirection from https context.
    • NOTRUN [expected PASS] subtest: Mixed-Content: Expects allowed for audio-tag to same-https origin and no-redirect redirection from https context.
  • TIMEOUT [expected OK] /resource-timing/initiator-type/dynamic-insertion.html
    • TIMEOUT [expected FAIL] subtest: A font should have the 'css' initiator type.

      Test timed out
      

    • NOTRUN [expected PASS] subtest: A stylesheet should have the 'link' initiator type.
    • NOTRUN [expected FAIL] subtest: A iframe should have the 'iframe' initiator type.
    • NOTRUN [expected PASS] subtest: A script should have the 'script' initiator type.
    • NOTRUN [expected PASS] subtest: A XMLHttpRequest should have the 'xmlhttprequest' initiator type.
  • TIMEOUT [expected OK] /resource-timing/nested-context-navigations-iframe.html (#24311)
    • TIMEOUT [expected PASS] subtest: Test that crossorigin iframe navigations are not observable by the parent, even after history navigations by the parent

      Test timed out
      

    • NOTRUN [expected PASS] subtest: Test that cross-site iframe navigations are not observable by the parent, even after history navigations by the parent
    • NOTRUN [expected PASS] subtest: Test that iframe navigations are not observable by the parent
    • NOTRUN [expected PASS] subtest: Test that crossorigin iframe navigations are not observable by the parent
    • NOTRUN [expected PASS] subtest: Test that cross-site iframe navigations are not observable by the parent
    • NOTRUN [expected PASS] subtest: Test that iframe refreshes are not observable by the parent
    • NOTRUN [expected PASS] subtest: Test that crossorigin iframe refreshes are not observable by the parent
    • NOTRUN [expected PASS] subtest: Test that cross-site iframe refreshes are not observable by the parent
  • TIMEOUT /resource-timing/test_resource_timing.https.html (#25216)
    • PASS [expected FAIL] subtest: PerformanceEntry has correct name, initiatorType, startTime, and duration (img)
  • TIMEOUT [expected OK] /webstorage/localstorage-about-blank-3P-iframe-opens-3P-window.partitioned.html (#29053)
    • TIMEOUT [expected PASS] subtest: StorageKey: test 3P about:blank window opened from a 3P iframe

      Test timed out
      

Stable unexpected results that are known to be intermittent (15)
  • TIMEOUT /FileAPI/BlobURL/cross-partition-navigation.https.html (#35133)
    • PASS [expected FAIL] subtest: Blob URL should partition subframe navigation.
  • TIMEOUT /FileAPI/url/url-in-tags-revoke.window.html (#19978)
    • TIMEOUT [expected PASS] subtest: Fetching a blob URL immediately before revoking it works in <script> tags.

      Test timed out
      

  • TIMEOUT [expected PASS] /_mozilla/gfx-rs-gecko/descriptor-ranges.html (#23258)
  • OK /fetch/metadata/generated/css-font-face.https.sub.tentative.html (#32732)
    • FAIL [expected PASS] subtest: sec-fetch-storage-access - Cross-site

      promise_test: Unhandled rejection with value: object "Error: Failed to query for recorded headers."
      

  • OK /fetch/metadata/generated/css-font-face.sub.tentative.html (#34624)
    • PASS [expected FAIL] subtest: sec-fetch-storage-access - Not sent to non-trustworthy same-origin destination
    • PASS [expected FAIL] subtest: sec-fetch-storage-access - Not sent to non-trustworthy same-site destination
  • OK /html/browsers/browsing-the-web/navigating-across-documents/refresh/same-document-refresh.html (#34597)
    • FAIL [expected PASS] subtest: Same-Document Referrer from Refresh

      assert_equals: original page loads expected "http://web-platform.test:8000/html/browsers/browsing-the-web/navigating-across-documents/refresh/resources/refresh-with-section.sub.html?url=%23section" but got "http://web-platform.test:8000/html/browsers/browsing-the-web/navigating-across-documents/refresh/resources/refresh-with-section.sub.html?url=%23section#section"
      

  • ERROR [expected TIMEOUT] /html/canvas/element/manual/imagebitmap/createImageBitmap-transfer.html (#34119)
  • CRASH [expected OK] /html/canvas/offscreen/canvas-host/2d.canvas.host.size.large.html (#34117)
  • OK /html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-nav-location-replace-set-src.html (#32697)
    • PASS [expected FAIL] subtest: Navigating iframe loading='lazy' and then setting src: location.replace
  • CRASH [expected TIMEOUT] /html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html (#22647)
  • TIMEOUT /html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html (#24057)
    • TIMEOUT [expected FAIL] subtest: Check that popups from a sandboxed iframe escape the sandbox if allow-popups-to-escape-sandbox is used

      Test timed out
      

  • CRASH [expected TIMEOUT] /html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html (#22154)
  • OK /navigation-timing/test-navigation-type-reload.html (#33334)
    • FAIL [expected PASS] subtest: Reload domComplete > Original domComplete

      assert_true: Reload domComplete > Original domComplete expected true got false
      

    • FAIL [expected PASS] subtest: Reload domContentLoadedEventStart > Original domContentLoadedEventStart

      assert_true: Reload domContentLoadedEventStart > Original domContentLoadedEventStart expected true got false
      

    • FAIL [expected PASS] subtest: Reload domInteractive > Original domInteractive

      assert_true: Reload domInteractive > Original domInteractive expected true got false
      

    • FAIL [expected PASS] subtest: Reload fetchStart > Original fetchStart

      assert_true: Reload fetchStart > Original fetchStart expected true got false
      

    • FAIL [expected PASS] subtest: Reload loadEventEnd > Original loadEventEnd

      assert_true: Reload loadEventEnd > Original loadEventEnd expected true got false
      

    • FAIL [expected PASS] subtest: Reload loadEventStart > Original loadEventStart

      assert_true: Reload loadEventStart > Original loadEventStart expected true got false
      

  • TIMEOUT [expected OK] /performance-timeline/navigation-id-detached-frame.tentative.html (#34773)
    • TIMEOUT [expected PASS] subtest: The navigation_id getter does not crash a window of detached frame

      Test timed out
      

  • OK /resize-observer/change-layout-in-error.html (#32629)
    • PASS [expected FAIL] subtest: Changing layout in window error handler should not result in lifecyle loop when resize observer loop limit is reached.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Feb 7, 2025

✨ Try run (#13200587682) succeeded.

@shubhamg13 shubhamg13 force-pushed the mixed branch 3 times, most recently from 3c92a1f to a5866df Compare February 9, 2025 13:26
Copy link
Copy Markdown
Member

@jdm jdm left a comment

Choose a reason for hiding this comment

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

Approving this with the understanding that the // TODO : Needs to revisit will be addressed in a followup change.

@jdm jdm added this pull request to the merge queue Feb 10, 2025
Merged via the queue into servo:main with commit b72932b Feb 10, 2025
@shubhamg13 shubhamg13 deleted the mixed branch February 10, 2025 06:42
sagudev added a commit that referenced this pull request Feb 10, 2025
It was accidentally introduced in #34794

Signed-off-by: Samson <[email protected]>
mrobinson pushed a commit that referenced this pull request Feb 10, 2025
It was accidentally introduced in #34794

Signed-off-by: Samson <[email protected]>
github-merge-queue bot pushed a commit that referenced this pull request Feb 10, 2025
It was accidentally introduced in #34794

Signed-off-by: Samson <[email protected]>
Asun0204 added a commit to Asun0204/servo that referenced this pull request Feb 11, 2025
…-layout-2020)

{"fail_fast": false, "matrix": [{"name": "Linux", "workflow": "linux", "wpt_layout": "none", "profile": "release", "unit_tests": false, "build_libservo": false, "bencher": false, "wpt_args": ""}]}
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.

3 participants