Issue metadata
Sign in to add a comment
|
[WPT Export] Prevent export of work-in-progress WPTs. |
||||||||||||||||||||||||
Issue descriptionOften, I find myself fiddling around with code before I'm really ready to invite commentary on an idea with folks in a public forum. It would be lovely if I could upload these experimental CLs to run through the bots or to save for later without also triggering an exported PR to web-platform-tests. I could imagine this taking the form of an additional flag in the CL description. Perhaps `WIP: 1` or `Don't-Export-Me: Bro` or something less clever and more readable? WDYT?
,
Jul 3 2017
I believe it's possible, and that web-platform-tests used to run a build on every push to an in-repository branch--not just pull requests. Two months ago, this was limited to only building on the master branch (https://github.com/w3c/web-platform-tests/pull/5704/files), likely to cut down the length of the Travis queue (many PRs were adding two builds to the queue--one for the push to the branch and one for the PR to master).
,
Jul 3 2017
Bob, would you happen to know if it's possible to run jobs for a branch, then create a PR for the branch, and have the previous job associated with it instead of re-running? That would mean that we could run the jobs before landing in Chromium, and the create a PR that can be merged immediately.
,
Jul 3 2017
I don't believe so. The builds for the branch belong to that branch. A PR requires a build of the base (master) branch at a commit where the head branch is merged in. Any builds of the head branch would be ignored. This makes sense, because the head could be built on an outdated master. There may not be merge conflicts, but the build result could be invalidated by changes in current master by the time a PR of that branch is opened. We would want a build to re-validate the head branch on current master.
,
Jul 3 2017
The branches would always be created on the most recent master, but when it's time to merge that can of course have changed, yes. Somewhat off-topic, but when the master branch changes, do all Travis jobs for open PRs run again? If not, then such mishaps are not entirely prevented. (One way of making this not matter would of course be to make the jobs runs very fast in the first place.)
,
Jul 3 2017
They don't run again when master changes, so that risk is definitely there, but probably lower, assuming PRs are merged in a timely manner (and by someone with knowledge of current state of master). That said, we've had some instances in WPT where simultaneous PRs have created breakages. A somewhat timely build-able base branch with the PR changes is necessary, but not sufficient to ensure unbroken merges.
,
Jul 3 2017
OK, so the takeaway is that in order to export changes quickly after they land in Chromium, already having PRs (not branches) in wpt is necessary. Since nobody is notified about those PRs, I guess they don't bother many people. So... mkwst@, have you had people commenting on those WIP PRs, or why would you prefer them to not exist? (I was also surprised by them, but trying to pin down the biggest pain point.)
,
Jul 4 2017
> So... mkwst@, have you had people commenting on those WIP PRs, or why would you prefer them to not exist? (I was also surprised by them, but trying to pin down the biggest pain point.) I'd prefer for them not to exist. Basically, I'd like to be able to work in private until I have something with enough substance to put out in the world. Especially when experimenting with something new and weird, I'd prefer to be able to present a proposal to folks in a vaguely fleshed-out explainer, rather than folks being automatically CC'd on a PR full of barely-thought-out tests. In these cases, I don't think running things through the stability checks has any real value: the tests probably barely work in `content_shell`, much less on Safari. An alternative approach would be to add a new directory to `//LayoutTests/` that would let me write tests that are executed via `wptserve`, but that aren't meant to be part of the `web-platform-tests` repository. As-is, I only care about the export question we're discussing here because it's otherwise impossible to write tests that won't cause me more work later. :)
,
Jul 4 2017
It is possible to mark a review as private in Gerrit, but that's not a feature I've used, and everyone would have to be annoyed once before learning that's how to work around this problem. Just not creating the PRs and seeing if that creates other problems SGTM. jeffcarp@, would that be a simple change for now?
,
Jul 4 2017
I guess I'd be fine with marking the review as private if that works today. It would make it more difficult to share with non-committers, though, which is a big drawback. *shrug* Just not creating the PR seems like the simplest solution for the moment, and the least time investment, given how often this kind of switch is likely to be used.
,
Jul 5 2017
,
Jul 5 2017
This is similar to issue 727914 .
,
Jul 5 2017
Hi sorry I'm late to the party - we already had feedback on the "over eager" creation of PRs and I made issue 727914 (only make PRs for CLs with reviewers) to fix it. I created and landed a CL for that issue (crrev.com/c/528453) however ended up not working as intended. I haven't gotten around to debugging the problem further.
,
Jul 5 2017
|
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by foolip@chromium.org
, Jul 3 2017