Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC 65: Switching to "Py3-first" for WPT tests on CI #65

Merged
merged 6 commits into from Nov 23, 2020

Conversation

ziransun
Copy link
Member

No description provided.

@stephenmcgruer stephenmcgruer changed the title RFC 59: Switching to "Py3-first" for WPT tests on CI RFC 65: Switching to "Py3-first" for WPT tests on CI Oct 28, 2020
rfcs/Py3-first.md Outdated Show resolved Hide resolved
Copy link
Contributor

@jgraham jgraham left a comment

Choose a reason for hiding this comment

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

Is there a proposal for the date when these changes will occur?

Copy link
Contributor

@Ms2ger Ms2ger left a comment

Choose a reason for hiding this comment

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

👍

@stephenmcgruer
Copy link
Contributor

stephenmcgruer commented Oct 29, 2020

Is there a proposal for the date when these changes will occur?

Not yet. I would suggest that we make it part of the RFC to say we aim to switchover shortly after merge, but will announce the switchover in [PLACES] with X days notice.

Before we get there, we need to determine what are the list of blocking issues versus which aren't blocking. The blocking issues I know of are:

  • The threading issue - this is our riskiest blocker.
  • The flaky-failure when trying to install Py3 on the Windows test-suite bots.
  • The other 'switch to Py3' pull requests should probably all be in a reasonably reviewed state before we land the RFC (basically so there are no surprises when it comes to switchover day).

Are there any other blocking issues folks are aware of?

rfcs/Py3-first.md Outdated Show resolved Hide resolved
rfcs/Py3-first.md Outdated Show resolved Hide resolved
@Hexcles
Copy link
Member

Hexcles commented Oct 29, 2020

The threading issue - this is our riskiest blocker.

With a tight-ish time frame in front us, I think we should take web-platform-tests/wpt#26111 to work around this for now. We talked about experimenting with multiprocessing; I fully agree this is something we should try, but we probably don't want to block the migration on the experiment.

@stephenmcgruer
Copy link
Contributor

With a tight-ish time frame in front us, I think we should take web-platform-tests/wpt#26111 to work around this for now. We talked about experimenting with multiprocessing; I fully agree this is something we should try, but we probably don't want to block the migration on the experiment.

Sorry, last I checked I thought the fix did not actually address the encoding problem. Did the locking added in web-platform-tests/wpt@b7fa472 definitely resolve the encoding import errors?

@Hexcles
Copy link
Member

Hexcles commented Oct 29, 2020

Sorry, should've made that clear in the PR. The answer is yes, but see web-platform-tests/wpt#26111 (review) for caveats...

@stephenmcgruer
Copy link
Contributor

Sorry, should've made that clear in the PR. The answer is yes, but see web-platform-tests/wpt#26111 (review) for caveats...

I see. That changes my opinion on this; if we have a valid (albeit scary) workaround and are committed to finding a proper path forward that will remove the workaround (which we are; I am happy to own that myself), I don't think the threading issue should block the RFC then.

@jgraham , WDYT about the threading issue given this?

@jgraham
Copy link
Contributor

jgraham commented Oct 29, 2020

Ideally I'd like us to try the absolute import thing first. If we can't make that work we could fall back to the existing patch, but I think we should be very wary of taking something that pokes at so many internals; if we drop the ball on fixing the underlying issue it seems almost certain we'll see breakage at some point.

@stephenmcgruer
Copy link
Contributor

Ideally I'd like us to try the absolute import thing first. If we can't make that work we could fall back to the existing patch, but I think we should be very wary of taking something that pokes at so many internals; if we drop the ball on fixing the underlying issue it seems almost certain we'll see breakage at some point.

Ack, I can own experimenting with that over the next few (business) days.

@stephenmcgruer
Copy link
Contributor

Ack, I can own experimenting with that over the next few (business) days.

To keep folks up-to-date on this, I am playing with it in web-platform-tests/wpt#26328 . My next task is to diff a set of trigger runs that I did for Chrome Dev.

@stephenmcgruer
Copy link
Contributor

stephenmcgruer commented Nov 9, 2020

An update:

  • We believe we have cleared the path for the Windows 3.8 installation issue.
  • The Python file handler threading issue has a proposed PR by me out for review now, but it's a fairly invasive change and will likely need an RFC of its own anyway.

EDIT: RFC filed for Python file handler change - #68

Copy link
Contributor

@stephenmcgruer stephenmcgruer left a comment

Choose a reason for hiding this comment

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

This depends on #68 (and the related fix), but once that's in this LGTM.

rfcs/Py3-first.md Outdated Show resolved Hide resolved
rfcs/Py3-first.md Outdated Show resolved Hide resolved
stephenmcgruer added a commit to web-platform-tests/wpt that referenced this pull request Nov 11, 2020
Copy link
Contributor

@jgraham jgraham left a comment

Choose a reason for hiding this comment

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

So I generally agree with everything here, but I'd like a Python 3 meta RFC formalizing the timeline for all the steps, rather than just having an RFC for one part of the process and the overall framework in an issue. I can write that.

@stephenmcgruer
Copy link
Contributor

So I generally agree with everything here, but I'd like a Python 3 meta RFC formalizing the timeline for all the steps, rather than just having an RFC for one part of the process and the overall framework in an issue. I can write that.

I mean, no objection since you're willing to write it, but isn't that two lines?

  • November 2020: Py3-first
  • Feburary 2021: Py3-only

@jgraham
Copy link
Contributor

jgraham commented Nov 12, 2020

I've written #69 to detail the overall transition plan.

The one thing I realised while writing that that isn't covered here is the behaviour of wpt --py3; I think we need a --py2 option during the transition. I can make a PR for that.

@jgraham
Copy link
Contributor

jgraham commented Nov 12, 2020

Co-authored-by: Stephen McGruer <stephen.mcgruer@gmail.com>
@stephenmcgruer stephenmcgruer merged commit 4f607b6 into web-platform-tests:master Nov 23, 2020
stephenmcgruer pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 23, 2020
See the RFC: web-platform-tests/rfcs#65

This affects:
* On push: Full test-suite runs.
* On pull-request:
    * The with-pr affected-results check.
    * The without-pr affected-results check.
    * The stability checks.
stephenmcgruer added a commit to web-platform-tests/wpt that referenced this pull request Nov 23, 2020
stephenmcgruer added a commit to web-platform-tests/wpt that referenced this pull request Nov 23, 2020
See the RFC: web-platform-tests/rfcs#65

This also affects `infrastructure/ tests: Windows 10`, but that job is currently only manually triggered and is basically unused.

Co-authored-by: Mustapha Jaber <mustjab@users.noreply.github.com>
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Dec 1, 2020
…thon 3 only, a=testonly

Automatic update from web-platform-tests
[Taskcluster] Switch wpt run on CI to Python 3 only (#26252)

See the RFC: web-platform-tests/rfcs#65

This affects:
* On push: Full test-suite runs.
* On pull-request:
    * The with-pr affected-results check.
    * The without-pr affected-results check.
    * The stability checks.
--

wpt-commits: 26c1676d2b6d7632f8de4ec3537896b3f45bd394
wpt-pr: 26252
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Dec 1, 2020
…afari test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Safari test-suite runs (#25044)

See the RFC: web-platform-tests/rfcs#65
--

wpt-commits: 21d61bde300f8ff06ea94fdd6eea32e8d2bf2a91
wpt-pr: 25044
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Dec 1, 2020
…dge test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Edge test-suite runs (#24952)

See the RFC: web-platform-tests/rfcs#65

This also affects `infrastructure/ tests: Windows 10`, but that job is currently only manually triggered and is basically unused.

Co-authored-by: Mustapha Jaber <mustjab@users.noreply.github.com>
--

wpt-commits: 79c46570895f9a2bf51b812355b93b2fac116318
wpt-pr: 24952
sylvestre pushed a commit to sylvestre/gecko-dev that referenced this pull request Dec 1, 2020
…thon 3 only, a=testonly

Automatic update from web-platform-tests
[Taskcluster] Switch wpt run on CI to Python 3 only (#26252)

See the RFC: web-platform-tests/rfcs#65

This affects:
* On push: Full test-suite runs.
* On pull-request:
    * The with-pr affected-results check.
    * The without-pr affected-results check.
    * The stability checks.
--

wpt-commits: 26c1676d2b6d7632f8de4ec3537896b3f45bd394
wpt-pr: 26252
sylvestre pushed a commit to sylvestre/gecko-dev that referenced this pull request Dec 1, 2020
…afari test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Safari test-suite runs (#25044)

See the RFC: web-platform-tests/rfcs#65
--

wpt-commits: 21d61bde300f8ff06ea94fdd6eea32e8d2bf2a91
wpt-pr: 25044
sylvestre pushed a commit to sylvestre/gecko-dev that referenced this pull request Dec 1, 2020
…dge test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Edge test-suite runs (#24952)

See the RFC: web-platform-tests/rfcs#65

This also affects `infrastructure/ tests: Windows 10`, but that job is currently only manually triggered and is basically unused.

Co-authored-by: Mustapha Jaber <mustjab@users.noreply.github.com>
--

wpt-commits: 79c46570895f9a2bf51b812355b93b2fac116318
wpt-pr: 24952
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Dec 3, 2020
…thon 3 only, a=testonly

Automatic update from web-platform-tests
[Taskcluster] Switch wpt run on CI to Python 3 only (#26252)

See the RFC: web-platform-tests/rfcs#65

This affects:
* On push: Full test-suite runs.
* On pull-request:
    * The with-pr affected-results check.
    * The without-pr affected-results check.
    * The stability checks.
--

wpt-commits: 26c1676d2b6d7632f8de4ec3537896b3f45bd394
wpt-pr: 26252

UltraBlame original commit: 199301f4505bc4cadf7abbf46858d03abb01196a
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Dec 3, 2020
…afari test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Safari test-suite runs (#25044)

See the RFC: web-platform-tests/rfcs#65
--

wpt-commits: 21d61bde300f8ff06ea94fdd6eea32e8d2bf2a91
wpt-pr: 25044

UltraBlame original commit: 5c0233612758e709865f37f4a3698761f1021638
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Dec 3, 2020
…dge test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Edge test-suite runs (#24952)

See the RFC: web-platform-tests/rfcs#65

This also affects `infrastructure/ tests: Windows 10`, but that job is currently only manually triggered and is basically unused.

Co-authored-by: Mustapha Jaber <mustjabusers.noreply.github.com>
--

wpt-commits: 79c46570895f9a2bf51b812355b93b2fac116318
wpt-pr: 24952

UltraBlame original commit: a27b5f9fc60da817c0a11ce402e816973ccdc831
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Dec 3, 2020
…thon 3 only, a=testonly

Automatic update from web-platform-tests
[Taskcluster] Switch wpt run on CI to Python 3 only (#26252)

See the RFC: web-platform-tests/rfcs#65

This affects:
* On push: Full test-suite runs.
* On pull-request:
    * The with-pr affected-results check.
    * The without-pr affected-results check.
    * The stability checks.
--

wpt-commits: 26c1676d2b6d7632f8de4ec3537896b3f45bd394
wpt-pr: 26252

UltraBlame original commit: 199301f4505bc4cadf7abbf46858d03abb01196a
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Dec 3, 2020
…afari test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Safari test-suite runs (#25044)

See the RFC: web-platform-tests/rfcs#65
--

wpt-commits: 21d61bde300f8ff06ea94fdd6eea32e8d2bf2a91
wpt-pr: 25044

UltraBlame original commit: 5c0233612758e709865f37f4a3698761f1021638
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Dec 3, 2020
…dge test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Edge test-suite runs (#24952)

See the RFC: web-platform-tests/rfcs#65

This also affects `infrastructure/ tests: Windows 10`, but that job is currently only manually triggered and is basically unused.

Co-authored-by: Mustapha Jaber <mustjabusers.noreply.github.com>
--

wpt-commits: 79c46570895f9a2bf51b812355b93b2fac116318
wpt-pr: 24952

UltraBlame original commit: a27b5f9fc60da817c0a11ce402e816973ccdc831
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Dec 3, 2020
…thon 3 only, a=testonly

Automatic update from web-platform-tests
[Taskcluster] Switch wpt run on CI to Python 3 only (#26252)

See the RFC: web-platform-tests/rfcs#65

This affects:
* On push: Full test-suite runs.
* On pull-request:
    * The with-pr affected-results check.
    * The without-pr affected-results check.
    * The stability checks.
--

wpt-commits: 26c1676d2b6d7632f8de4ec3537896b3f45bd394
wpt-pr: 26252

UltraBlame original commit: 199301f4505bc4cadf7abbf46858d03abb01196a
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Dec 3, 2020
…afari test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Safari test-suite runs (#25044)

See the RFC: web-platform-tests/rfcs#65
--

wpt-commits: 21d61bde300f8ff06ea94fdd6eea32e8d2bf2a91
wpt-pr: 25044

UltraBlame original commit: 5c0233612758e709865f37f4a3698761f1021638
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Dec 3, 2020
…dge test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Edge test-suite runs (#24952)

See the RFC: web-platform-tests/rfcs#65

This also affects `infrastructure/ tests: Windows 10`, but that job is currently only manually triggered and is basically unused.

Co-authored-by: Mustapha Jaber <mustjabusers.noreply.github.com>
--

wpt-commits: 79c46570895f9a2bf51b812355b93b2fac116318
wpt-pr: 24952

UltraBlame original commit: a27b5f9fc60da817c0a11ce402e816973ccdc831
sidvishnoi pushed a commit to sidvishnoi/gecko-webmonetization that referenced this pull request Dec 10, 2020
…thon 3 only, a=testonly

Automatic update from web-platform-tests
[Taskcluster] Switch wpt run on CI to Python 3 only (#26252)

See the RFC: web-platform-tests/rfcs#65

This affects:
* On push: Full test-suite runs.
* On pull-request:
    * The with-pr affected-results check.
    * The without-pr affected-results check.
    * The stability checks.
--

wpt-commits: 26c1676d2b6d7632f8de4ec3537896b3f45bd394
wpt-pr: 26252
sidvishnoi pushed a commit to sidvishnoi/gecko-webmonetization that referenced this pull request Dec 10, 2020
…afari test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Safari test-suite runs (#25044)

See the RFC: web-platform-tests/rfcs#65
--

wpt-commits: 21d61bde300f8ff06ea94fdd6eea32e8d2bf2a91
wpt-pr: 25044
sidvishnoi pushed a commit to sidvishnoi/gecko-webmonetization that referenced this pull request Dec 10, 2020
…dge test-suite runs, a=testonly

Automatic update from web-platform-tests
[Azure Pipelines] Use Python 3.8.x for Edge test-suite runs (#24952)

See the RFC: web-platform-tests/rfcs#65

This also affects `infrastructure/ tests: Windows 10`, but that job is currently only manually triggered and is basically unused.

Co-authored-by: Mustapha Jaber <mustjab@users.noreply.github.com>
--

wpt-commits: 79c46570895f9a2bf51b812355b93b2fac116318
wpt-pr: 24952
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.

None yet

6 participants