- Initialize rowsDecoded in SkSampledCodec. Otherwise,
fillIncompleteImage may be called with an uninitialized
value. This change was originally uploaded to AOSP as
https://android-review.googlesource.com/c/platform/external/skia/+/785816
- If SkPngCodec hits an error, still transform from the
interlace buffer (if needed) and set rowsDecoded properly.
- Do not copy uninitialized memory from the interlace buffer.
- Make BRD treat kErrorInInput like kIncompleteInput. The two errors
are different for the purposes of incremental decode. For a direct
decode, they're essentially the same - part was decoded, but then
the decode was interrupted. This allows testing images with
errors on the bots without reporting a failure.
- Add some images to test incomplete pngs
- errorInInput.png: color_wheel.png truncated with extra 0s at the
end to trigger kErrorInInput
- incInterlaced.png: basi3p02.png (from PNGSuite) similarly modified.
This triggers kIncompleteInput. We have several incomplete PNGs that
we are testing on the bots, but this is the first interlaced
- errorInInputInterlaced.png: This is the same as incInterlaced with
more zeroes at the end. The incorrect CRC (all zeroes) results in
kErrorInInput
Change-Id: I25e1ea917e1c1ca212f104cb9d70290265a51b2d
Reviewed-on: https://skia-review.googlesource.com/c/161822
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Also make a CPU only and GPU only build (although
the latter still has a lot of CPU logic).
Bug: skia:
Change-Id: I857c2300021c2adb5344865c28e4ad3e8d332954
Reviewed-on: https://skia-review.googlesource.com/c/162022
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Previously we didn't do this at all for multiple-texture ops.
Improve the test detecting when filtering can be disabled.
Make draw_image_set GM create tiles with pixel of overlap for correct
filtering.
Add draw_image_set_rect_to_rect to exercise filtering/aa disablement
in combination with tiling.
Makes SkGpuDevice filter out inverted src rects (as is done implicitly
in SkBaseDevice by relying on drawImageRect).
Puts GrTextureOp::fFilter in bitfield.
Change-Id: Iee96cb54d665877c7f4aee422a3a7af2b249b1d6
Reviewed-on: https://skia-review.googlesource.com/c/161641
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
That's what their treemap says and we should try to match it.
Bug: skia:
Change-Id: Iefa95c0440eb6b45a94a72c1beffb8a1199152a4
Reviewed-on: https://skia-review.googlesource.com/c/161825
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
We have a similar ingestion strategy to Gold.
I tried to use something off the shelf like benchmark.js
but passing the PathKit context into the benchmarks was
non-trivial. Plus, making a basic benchmarking tool
ended up being not too hard.
We should be able to re-use the docker container/aggregator
for CanvasKit too.
Bug: skia:
Change-Id: I613dfc58ea57c31cf71566a8ac55f8df9272ad25
Reviewed-on: https://skia-review.googlesource.com/c/161620
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
Also remove the unit tests that were enforcing those rules,
and the blacklist of that unit test.
Bug: skia:
Change-Id: I802c9e81a412fe0b19d02f9224b801f4fbd901f2
Reviewed-on: https://skia-review.googlesource.com/c/161562
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Change-Id: Id9e86327bf85f766fac67704078e00bac4af346d
Reviewed-on: https://skia-review.googlesource.com/c/161422
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Change-Id: I92ea1b75bc72515d55bd753d42a6bfa0e701829e
Reviewed-on: https://skia-review.googlesource.com/c/161045
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
This creates a nice readable display, since Bloaty
doesn't allow filtering through the CLI.
Additionally, rename the flutter job to accurately
represent what settings it actually is (32 bit ARM built
with clang).
Bug: skia:
Change-Id: Iaed313caf43a31105adc8c85c545cc6cb2bcbe30
Reviewed-on: https://skia-review.googlesource.com/c/160920
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Bug: skia:
Change-Id: Ibb47179315d191af5023039212e4c9b5e784bb75
Reviewed-on: https://skia-review.googlesource.com/c/160765
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Building CanvasKit uses very similar logic to PathKit, so there
was a fair amount of copy/paste/customize.
Fixes the name of skia.js/wasm -> canvaskit.js/wasm and
adds a package.json to formally track versions.
Also move PathKit helper scripts to align better.
Docs-Preview: https://skia.org/?cl=160463
Bug: skia:
Change-Id: Ie75b30592dcc4d520dca41f6f5579006aaa8849b
Reviewed-on: https://skia-review.googlesource.com/c/160463
Reviewed-by: Eric Boren <borenet@google.com>
Additionally, include the revision name in the json file name
to avoid collisions.
Bug: skia:
Change-Id: I6601c28679f82406721d740041a60077b460c0f4
Reviewed-on: https://skia-review.googlesource.com/c/160560
Reviewed-by: Eric Boren <borenet@google.com>
Uses Docker to compile an APK and then run it on an emulator.
We use a specialized image for build (includes Clang, etc)
And then the 3rd party base image for just the test (which
has the emulator and SDK on it).
Bug: skia:7578, skia:7692
Change-Id: I948e0b091868e7173b00e3affd7c3d59a5cd1ec2
Reviewed-on: https://skia-review.googlesource.com/c/159681
Reviewed-by: Stephan Altmueller <stephana@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
This should be extensible to do something similar
for libskia and other outputs.
Bug: skia:
Change-Id: Id9f30a82f4eb0e7ce868a32409b1be429917e7f6
Reviewed-on: https://skia-review.googlesource.com/c/160220
Reviewed-by: Eric Boren <borenet@google.com>
Automatic commit by the UpdateGoDEPS bot.
TBR=borenet@google.com
Change-Id: Ief8d475f1f6b44cd52a7e96da08937fac657daa5
Reviewed-on: https://skia-review.googlesource.com/c/159401
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: Eric Boren <borenet@google.com>
Bug: skia:
Change-Id: I41b3a0a4eea61e095bfda8affc17db0a0a7a91c5
Reviewed-on: https://skia-review.googlesource.com/c/159144
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Just delete the symlink.
Bug: skia:
Change-Id: I7648d56c215c63bd2a509e6e977fe6fda2d5871a
Reviewed-on: https://skia-review.googlesource.com/c/159064
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
This is a reland of b8fef7c986
readpixels is now disabled on serialize-8888.
The image encoding means it doesn't quite round trip,
though the image looks fine to the eye.
Original change's description:
> clamp gamut if needed in SkConvertPixels
>
> We need to clamp here for all the same reasons we need to clamp when
> blitting. I've centralized the clamp's implementation to help that.
>
> I've allowed any --config to run this GM. --config 565 was actually
> pointing out this problem by asserting, and now looks fine.
>
> Change-Id: Icc066792fc53747b161302d200abdd8dc4669f7f
> Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
> Reviewed-on: https://skia-review.googlesource.com/158721
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
Change-Id: I07601149e1d1e070bf96361f5303569b6a7b4e2a
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Reviewed-on: https://skia-review.googlesource.com/c/159001
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Bug: skia:
Change-Id: Ic806bddcdc1130e9b96158c19dbff9e16900020c
Reviewed-on: https://skia-review.googlesource.com/157565
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Bug: skia:8388
Change-Id: Id546d043a3a9be546f592dcab37325bc6b6c4e89
Reviewed-on: https://skia-review.googlesource.com/155164
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
* Add more frequent task status updates.
* Add exponential retries when hitting GCS.
Bug: skia:8087
Bug: skia:8387
Change-Id: Iff8320b88999fde53c1ad4814dc9243ebd8138a8
Reviewed-on: https://skia-review.googlesource.com/155163
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: 784662
Change-Id: I49b8b396956e3442713ca2750fe19fd35f0797f0
Reviewed-on: https://skia-review.googlesource.com/158221
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
The go_deps asset is almost two months old...
Bug: skia:
Change-Id: I3910d1812a3c8ec4b599e959b76f8d60202b877a
Reviewed-on: https://skia-review.googlesource.com/157425
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
This reverts commit 9875bf5ef4.
Reason for revert: Killing ASAN bots.
Original change's description:
> bump NDK packages to r18
>
> Newer Clang, GCC is gone.
>
> Clang now supports half-float math on ARMv8, which is pretty neat.
>
> They've dropped support for everything below NDK version 16,
> which happens to be what we target for 32-bit ARM.
>
> Change-Id: Idd1b1b557c5ecaabec4040026fd2ad5adfee5ee7
> Reviewed-on: https://skia-review.googlesource.com/157260
> Reviewed-by: Derek Sollenberger <djsollen@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
TBR=djsollen@google.com,mtklein@google.com
Change-Id: Iea97d710ed9f17cb38bd08237e8da714ba42ce12
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/157430
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Newer Clang, GCC is gone.
Clang now supports half-float math on ARMv8, which is pretty neat.
They've dropped support for everything below NDK version 16,
which happens to be what we target for 32-bit ARM.
Change-Id: Idd1b1b557c5ecaabec4040026fd2ad5adfee5ee7
Reviewed-on: https://skia-review.googlesource.com/157260
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
This reverts commit 297caafc58.
Reason for revert: I think I have identified a test that shows the perf differences: https://perf.skia.org/e/?begin=1537548564&end=1537984657&keys=5743052312281088
Original change's description:
> [infra] Enable QuadroP400 bots on rack:2
>
> I tried to determine the differences between rack:1 and rack:2 using
> trybots, but didn't have much luck. Hopefully whatever issue that was
> causing differences has gone away, but if not, hopefully it will be
> easier to identify the differences using Perf.
>
> Change-Id: If9b16e8e247737cfc61bf00629eb68b8751bbf3a
> Reviewed-on: https://skia-review.googlesource.com/156500
> Reviewed-by: Kevin Lubick <kjlubick@google.com>
> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
TBR=benjaminwagner@google.com,kjlubick@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: Icc89ef83d0f981d22edb15ef934ac07ba1ab5bf3
Reviewed-on: https://skia-review.googlesource.com/157221
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Bug: skia:
Change-Id: I7fc9b7a208c8edf5be970f5139e1916a756288af
Reviewed-on: https://skia-review.googlesource.com/156680
Commit-Queue: Stephan Altmueller <stephana@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
I tried to determine the differences between rack:1 and rack:2 using
trybots, but didn't have much luck. Hopefully whatever issue that was
causing differences has gone away, but if not, hopefully it will be
easier to identify the differences using Perf.
Change-Id: If9b16e8e247737cfc61bf00629eb68b8751bbf3a
Reviewed-on: https://skia-review.googlesource.com/156500
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Removes the CCPR blacklist for Vulkan, and disables geometry shaders
on Vulkan while we continue to investigate http://skbug.com/7733.
Bug: skia:7733
Bug: skia:8408
Change-Id: I85b89a2f0170abed946441adbbf7c0b075897096
Reviewed-on: https://skia-review.googlesource.com/153625
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
I edited some of the samples that had only white things to have
some color so we can see them in gold. Those now have the
suffix _edit.
Additionally, I removed one that required a bundled image that we
don't have (WeAccept.json)
NOTRY: true
Bug: skia:
Change-Id: Ie5104315f5ebf19f9c5f7f2b7a58454d8def2737
Reviewed-on: https://skia-review.googlesource.com/156182
Reviewed-by: Florin Malita <fmalita@chromium.org>
Change-Id: Ifcd32b5cf4000c34567a7643dc294d39611d9f42
Reviewed-on: https://skia-review.googlesource.com/155780
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
checkout/api.py populates patch_projects mapping which has no effect.
All of its usages were migrated to repo_path_map mapping.
Populate repo_path_map instead.
R=rmistry@chromium.org
Bug: 694348
Change-Id: I4fc6fe86565f75f4b4b5b5ca041f584d30fcd8a5
Reviewed-on: https://skia-review.googlesource.com/155632
Auto-Submit: Nodir Turakulov <nodir@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Change-Id: I4f311b21de42b9f0689b9a0a488728e34ea4d332
Reviewed-on: https://skia-review.googlesource.com/155563
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Change-Id: Iee1dbb2f008a4b79f7c213016ff97b9b50fbd673
Reviewed-on: https://skia-review.googlesource.com/154500
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Bug: skia:
Change-Id: I41d45b2577104d5a172cf06e5241c4a33e6d8e19
Reviewed-on: https://skia-review.googlesource.com/154181
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Stephan Altmueller <stephana@google.com>
Bug: skia:
Change-Id: I3829035a33a3bf147dd4ca90a0a45443a5b28eb6
Reviewed-on: https://skia-review.googlesource.com/154042
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
This deletes the previous hand-built drivers and the
distinction between a debug and non-debug driver.
Bug: skia:
Change-Id: Ia733783d703da803f76361c61b938d9ce70c88f0
Reviewed-on: https://skia-review.googlesource.com/150163
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
We don't have anything drawing colors outside sRGB,
but now that we've got SkPaint::setColor4f(), that's easy.
Looks like we have lots of work to do.
Pin GrColor4f floats before converting to unsigned.
Underflowing floats would get pinned to 255 spuriously
instead of to 0. I think this fixes the failing CQ
bot, and the white square problem.
Change-Id: I866963ff026e6ab891b4c7d57decc43538000099
Reviewed-on: https://skia-review.googlesource.com/153640
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
We added this a while ago while debugging some many-files-failing
build failures, but keeping -k 0 now just makes single failures
harder to find in the log. Now the first failure will stop the
build and be at the bottom of the log.
Change-Id: I1ed2825f2c64702a228903067230356f09b90046
Reviewed-on: https://skia-review.googlesource.com/152589
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Note: This is also used by the infra repository.
Bug: skia:
Change-Id: Icc0dd23783ea96c0eacf123e70f9c1e2129d4365
Reviewed-on: https://skia-review.googlesource.com/151668
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Stephan Altmueller <stephana@google.com>
Bug: skia:6863
Change-Id: Ic096f4837fd245475a5966a1b5da403027cf429f
Reviewed-on: https://skia-review.googlesource.com/151360
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
After discussing with bsalomon, we think QuadroP400 gives us good enough
coverage for NVIDIA Pascal.
No-Try: true
Change-Id: If50a80d872ae9dc2c5987b3e31804a8e16325888
Reviewed-on: https://skia-review.googlesource.com/150908
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
See https://bugs.chromium.org/p/chromium/issues/detail?id=784662 for
more context. We need to distinguish between existing bots and the new
bots in order to have consistent performance measurements.
This is step 2 of 3:
1. Add rack:1 dimension to bots.cfg for current Skia QuadroP400 bots.
2. Add rack:1 dimension to our tasks to ensure they only run on the
current bots.
3. Add build{330..335}-a9 to bots.cfg with rack:2 dimension.
Bug: chromium:784662
Change-Id: I1e5ff0aa0ebd69e00f4933ca50eef6cef520bc66
Reviewed-on: https://skia-review.googlesource.com/150911
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Change-Id: Ifc0b0ad39d9a35625691b3fb12e6e6c65166d760
Reviewed-on: https://skia-review.googlesource.com/150903
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
This adds 2 docker containers (based on the ones used for PathKit
added in https://skia-review.googlesource.com/c/skia/+/147042)
which bundle Chrome and puppeteer to allow the lottiecap.js
to be run anywhere.
This adds a recipe (test_lottie_web.py) to drive the docker
container and do a little bit of set-up (and a few docs/bug
fixes discovered in the test_pathkit.py that it was based on).
Additionally, this modifies lottiecap.js to support POSTing
output to a running go server (again, the same as PathKit)
which has the image data hashed and the metadata added to
a large JSON output.
This re-works driver.html to avoid re-loading the JSON object
25 times. The performance boost is important because, right now,
the lottie files are processed individually.
In a future CL, I want to address the two TODOs in
lottie-web-aggregator.go
Bug: skia:8108
Change-Id: I100c9ce23dcc5033a27287211cbf0db898960da9
Reviewed-on: https://skia-review.googlesource.com/149282
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
- This bot didn't start failing the non-ERA version that was added
yesterday, so I suspect it's going to pass all versions.
- Also, the CCPR Pixel bots are continuing to fail, but it's not clear
if the non-ERA version is passing, so label the failures to find out.
Bug: skia:
Change-Id: Ib5fcb3cf03065453fe31c2a4ac8a9f2fd5bdeaf8
Reviewed-on: https://skia-review.googlesource.com/149982
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Bug: skia:6653
Change-Id: I034c8183c5550914d155acf842a7a73c6f1b5d15
Reviewed-on: https://skia-review.googlesource.com/149680
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This will help us distinguish between "rendered by skottie",
"rendered by lottie-web", etc.
Bug: skia:8108
Change-Id: I48b489adf8f8b7f950df397e5e94c1103dc4d306
Reviewed-on: https://skia-review.googlesource.com/149237
Reviewed-by: Stephan Altmueller <stephana@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Bug: skia:
Change-Id: Ib3616e1504175b7862ad0a78837cc8eca7a8deb9
Reviewed-on: https://skia-review.googlesource.com/149227
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Add "PowerVR" to GT7600, GT7800, and GX6450 (iOS jobs).
Add model number G6430 to NexusPlayer.
Change-Id: Id0beb9e25ac793378fcd353836a43b2ea9db1aef
Reviewed-on: https://skia-review.googlesource.com/148668
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
The Braswell (IntelHD405) bots are way over-capacity. The Perf Debug
jobs are responsible for about half of the bot time.
We don't upload any data from Perf Debug jobs, so the only point of
running them is to catch asserts. It seems unlikely that the Braswell
bots would be the only ones to assert, since we also have Sandy Bridge,
Bay Trail, and Kaby Lake bots running the same configs.
No-Try: true
Change-Id: Id71086aade9f143d76fe80c03e41f7f9b52e911b
Reviewed-on: https://skia-review.googlesource.com/148675
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This is a followup to
https://skia-review.googlesource.com/c/skia/+/145431
Also clean up old job names in recipe expectations.
No-Try: true
Change-Id: Ic63a64a98fb39076680941bb2415b7bb64415179
Reviewed-on: https://skia-review.googlesource.com/148671
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Consolidates the karma files into one for docker/asmjs/wasm and all
combinations.
The asm.js build seems to have some small imprecisions that we didn't
see as much as with WASM, probably due to JS limitations/differences
to c++'s floats.
To address these, I've marked some (5) tests in PathOps* as flaky
because they fail on Release, Debug or Test versions of the asm.js build.
Other then that, asm.js seems basically identical to the WASM.
WASM is much smaller, 416k vs 877k and seems to load faster (not
measured).
Note to reviewers:
example.html was copied from npm-wasm version, so doesn't need
further review.
Bug: skia:8216
Change-Id: Ib92b90fa6c598de85a0be319d46b25693ae5aaa4
Reviewed-on: https://skia-review.googlesource.com/148396
Reviewed-by: Stephan Altmueller <stephana@google.com>
From robertphillips:
- not many Android devices use PowerVR chips
- the NexusPlayer is not getting P
- We're also ignoring the NexusPlayer vk gold result bc the driver
doesn't seem to be clearing the color buffer so almost all the
images are incorrect.
Bug: skia:7021 skia:6132 skia:7191 skia:7244 skia:7018 skia:7837 skia:8166
Change-Id: I2a1e9748deeee7f9cab6294b961783182ed5351e
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/148667
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Bug: skia:
Change-Id: I0222016ff079da2199e3658f1657aecc3f80f401
Reviewed-on: https://skia-review.googlesource.com/148389
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Change-Id: I13f402438825b2251a9149995d5c61b14f2e08a3
Reviewed-on: https://skia-review.googlesource.com/148122
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
The config refactor inadvertently included Android and Mac *SAN bots.
Change-Id: I158c25be9fbd098cd903741eb78209c8ee95d8df
Reviewed-on: https://skia-review.googlesource.com/148302
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Also simplify (i.e. remove) the "copy to tmp dir" step.
Bug: skia:
Change-Id: I88a12aeaa1ad131588f66ac306909ec892e5ad18
Reviewed-on: https://skia-review.googlesource.com/148021
Reviewed-by: Stephan Altmueller <stephana@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Bug: skia:8263
Change-Id: Ic5003128485116c66ae1ed61e8727b9b1c33aa1a
Reviewed-on: https://skia-review.googlesource.com/147968
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
No-Try: true
Change-Id: I9ca13921cdc5ed388b6b4ba46d99a2d4e4735158
Reviewed-on: https://skia-review.googlesource.com/146532
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Move all CPU configs except 8888 to new BonusConfigs bots
(and keep them running on the *SAN bots), and turn on the
new rec2020 configs there too.
Change-Id: I0bba4b88c580cb627e2842f136318d98373c0543
Reviewed-on: https://skia-review.googlesource.com/147813
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
To get the gold images out of the browser tests, this adds
testReporter.js and pathkit_aggregator.go. testReporter bundles
up the output as a base64 encoded PNG and sends it over the local
network to pathkit_aggregator. pathkit_aggregator will keep
a list of test results reported in this way and write the PNGs
to /OUT of the container (which is the swarming output directory).
Finally, after all the tests are run, the helper script "test_pathkit.sh"
makes a POST request that creates the JSON file that gold expects
(following the schema https://github.com/google/skia-buildbot/blob/master/golden/docs/INGESTION.md)
pathkit_aggregator takes many command line arguments which control
the keys that Gold needs in order to ingest and handle the data.
Of note, this creates a new set (i.e. source_type) of gold images
called "pathkit", which will distinguish it from "gm", "image", etc.
There will be at least 2 sub-sets of "pathkit" images, "canvas" and "svg",
(representing the 2 output types of PathKit). This CL doesn't
quite handle SVG yet, as it needs a way to convert SVG to PNG in the
browser and will be addressed in a follow up CL.
A "standard" gm is sized at 600x600. This was arbitrarily picked.
Note that the functions in testReporter.js return Promises based
on the fetch requests to post the data. This eliminates the race
condition between the /report_gold_data and /dump_json since
running the karma tests won't return until all reports are done.
Other changes of note:
- Adds go to karma-chrome-tests container.
- renames recipe_modules/build/wasm.py -> pathkit.py to be consistent with
the name of test_pathkit.py and make for easier grepping.
- Increases the JS test timeout to 10s (up from 5) to hopefully avoid
the flakes seen in the Debug Test.
Bug: skia:8216
Change-Id: Ic2cad54f3d19cc16601cf2e9a87798db1e6887a2
Reviewed-on: https://skia-review.googlesource.com/147042
Reviewed-by: Stephan Altmueller <stephana@google.com>
Because of https://skia-review.googlesource.com/c/skia/+/146165 and
https://skia-review.googlesource.com/c/skia/+/146100 we have a way
to turn PathOps tests into JSON, which has input paths (as Cmd arrays),
combination verb and expected output.
In this CL, we make tests from the JSON, compare them to the expected
output and, optionally, create SVGs to visualize the difference if any.
API changes (nothing breaking on release builds):
- Exposes SkRect as a JS Object. No need to call delete() on this.
- expose path.getBounds() and path.computeTightBounds()
- Remove SkRegion exposure (debug/test only), which was going to be
used for this purpose, but the approach in this CL works fine.
- Add loadCmdsTypedArray(cmd) helper function to JS [see helper.js].
This was previously known as `floatTypedArrayFrom2D` in the
old shell.html, and is now exposed to avoid clients having to
implement this boilerplate by themselves.
- Add set/getFillType - mostly for testing the difference between
a Winding and an EvenOdd path.
Bug: skia:8216
Change-Id: I2cd25ce2e1e7f285c79c596678678e62135963f0
Reviewed-on: https://skia-review.googlesource.com/146524
Reviewed-by: Cary Clark <caryclark@google.com>
This adds a few JS tests (see *.spec.test) and runs them
using Karma and a Docker image containing Karma, node, and
Chrome (currently at 68).
We only add a Debug Test here because the Release version
has some test helpers (e.g. Region) compiled out. If those
end up not mattering for tests, we can add in a Release version.
Bug: skia:8216
Change-Id: Ica6ab3a4f21688cfa175a90d42c2254d38e8fcf1
Reviewed-on: https://skia-review.googlesource.com/145723
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:8185
Change-Id: Id40f288515169a378926d6042cc76a976cdf7513
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/145892
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:8081
Change-Id: Ibcb82389668bd9ea7395e498696417d5701761c0
Reviewed-on: https://skia-review.googlesource.com/140782
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
They crash, presumably because they use multiple large images.
Change-Id: I277958cd6661820085b4e1a04e0668e3a3e9fddc
Reviewed-on: https://skia-review.googlesource.com/145880
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Adds arc, arcTo, rect and Path2D names for quadTo, cubicTo, close.
Adds conic verb support (approximated with 2 quads).
Breaking changes:
Some functions have been moved to be member functions:
PathKit.Simplify(path) -> path.simplify()
PathKit.ToCanvas(path, ctx) -> path.toCanvas(ctx)
PathKit.ToSVGString(path) -> path.toSVGString()
PathKit.ToPath2D(path) -> path.toPath2D()
PathKit.ToCmds(path) -> path.toCmds()
PathKit.ResolveBuilder(builder) -> builder.resolve()
PathKit.GetBoundaryPathFromRegion(region) -> region.getBoundaryPath()
Pathkit.ApplyPathOp(pathOne, pathTwo, op) still exists, but there's
now also pathOne.op(pathTwo, op) for cases when that's easier.
As per custom with version 0.x.y projects, I'm bumping the
minor version (in npm) for these breaking changes instead of the
major version (which will happen when we are version >= 1.0.0).
This also has some small improvements to the output code size.
The biggest jump was from enabling the closure compiler on the
helper JS, which trimmed it down by about 40%. Using the closure
compiler requires the JRE on the bots, which prompted the emsdk-base
image change.
Bug: skia:8216
Change-Id: I40902d23380093c34d1679df0255bcb0eaa77b01
Reviewed-on: https://skia-review.googlesource.com/145420
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Bug: skia:
Change-Id: I3437830069de5ff8ace21115024396120d21b2a0
Reviewed-on: https://skia-review.googlesource.com/145482
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
I'm keeping the Release jobs for a few commits for blame.
There are a few reasons for this change:
- This will free up more Mac VMs for Build jobs.
- The CPU jobs currently run on VMs, which don't provide reliable perf
numbers.
- The two bare-metal MacMini7.1 bots (currently running the GPU TSAN
jobs) are over-capacity.
- Lets us test AVX2 rather than AVX.
I used the MacBookPro11.5 for all of these, but we could spread them
out to other Mac bots if it's too much load for these bots.
No-Try: true
Change-Id: I8c97e194c4f3e0018e7e646b93c3d96db8d0ca82
Reviewed-on: https://skia-review.googlesource.com/145431
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
iOS builds still causing an error on installation:
ERROR: Install failed. Got error "APIInternalError".
stephana will help with debugging this when he's back in the office.
Bug: chromium:862292
Change-Id: I8fdff24938f000da550e1c5420c7ac312f09dce7
Reviewed-on: https://skia-review.googlesource.com/144440
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This contains the Go code dependencies of our infra repo and will be
used to insulate us from upstream changes which break us due to API
changes, etc.
Bug: skia:
Change-Id: I6ce36a4e41b6d7686fe2598ba980640854cd4f11
Reviewed-on: https://skia-review.googlesource.com/145158
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Change-Id: I88ee8200b82d12ba8cee637e01b360ce2d2bb2b3
Reviewed-on: https://skia-review.googlesource.com/145360
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Change-Id: I0eb3dcc4d38eb2aeab22d1df1515e499cf21dc62
Reviewed-on: https://skia-review.googlesource.com/144608
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This adds a job to build it and adds it to the npm
under /bin/debug.
The debug build is useful for clients because it
has all the debug symbols, which makes it possible to
see which WASM calls are taking the longest when using
DevTools' Performance testing.
Bug: skia:8216
Change-Id: I3068cb395f29c1de927508cf15c419f5af284eb7
Reviewed-on: https://skia-review.googlesource.com/145337
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Bug: skia:
Change-Id: Ibdfa20023019dc6372293600b0b1b4607916694f
Reviewed-on: https://skia-review.googlesource.com/145330
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
This creates a new named cache docker for this and future
docker-based jobs to use, to avoid permission snafus with
the normal "work" named cache.
Remove old WASM build, which was using the janky CIPD
emsdk asset and wasn't really exercising what we needed.
Bug: skia:8216
Change-Id: I993bba38b4978ca5eebb97e5b5b21729d55a072d
Reviewed-on: https://skia-review.googlesource.com/145140
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This reverts commit 63fac808ee.
Reason for revert: Fiddle problem seems to be fixed
Original change's description:
> Disable bookmaker CLs automatic CQ+2 for now
>
> Disable till problem described in
> https://bugs.chromium.org/p/skia/issues/detail?id=8151#c8 is fixed
>
> Bug: skia:8151
> Change-Id: Ie726829f3b13b587e14192dbf0104d04934a18dc
> Reviewed-on: https://skia-review.googlesource.com/142503
> Reviewed-by: Ravi Mistry <rmistry@google.com>
> Reviewed-by: Cary Clark <caryclark@google.com>
> Commit-Queue: Ravi Mistry <rmistry@google.com>
TBR=rmistry@google.com,caryclark@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: skia:8151
Change-Id: If09f3ab783d3b616bc96ba8994e6220039f6fc00
Reviewed-on: https://skia-review.googlesource.com/145324
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).
Please review the expectation changes, and LGTM+CQ.
More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
https://crrev.com/5300616351f523c605de80f5ece8c29321a78847 bot_update: expose patch_refs as an option to ensure_checkout. (jbudorick@chromium.org)
R=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3719ebfe726d6662c0e3b8a9f4e21ca62000a292
Reviewed-on: https://skia-review.googlesource.com/145144
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
This CL prepares for installing Xcode in a Swarming cache dir from a
CIPD package. https://skia-review.googlesource.com/c/skia/+/144608
After that, I hope to isolate the xSAN libs in the Build task so that
we don't need Xcode on the xSAN test bots. Baby steps.
Change-Id: I61dbe9474eceff42cbfd824c429db382b68a8c35
Reviewed-on: https://skia-review.googlesource.com/145143
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
This CL prepares for installing Xcode in a Swarming cache dir from a
CIPD package. https://skia-review.googlesource.com/c/skia/+/144608
Change-Id: I123a409f97397cc0e87de0dcd05d7ea08d3c0524
Reviewed-on: https://skia-review.googlesource.com/144903
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This is necessary for lottie-ci so we can upload to different
buckets and fetch different hash files.
Bug: skia:
Change-Id: I98b4d551df34473e2b5fc04284b0de04fbc097f3
Reviewed-on: https://skia-review.googlesource.com/144840
Commit-Queue: Stephan Altmueller <stephana@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:
Change-Id: I0f29f3f30c2519712d9f981d9a242c340d4577aa
Reviewed-on: https://skia-review.googlesource.com/144303
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Mac Build tasks are stuck on 10.13.3 due to unresolved issues with
building iOS and MoltenVK.
Bug: chromium:862292
Change-Id: I4195971a5a027fc502aaea01570e43ec19976055
Reviewed-on: https://skia-review.googlesource.com/142330
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Bug: skia:8185
Change-Id: Idef6ed3d0e886cb89b91e65a3253991136b94186
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/144126
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
In https://skia-review.googlesource.com/c/skia/+/143107, the Metal tasks
were added with a whitelist of one unit test, so there are no Gold
results to upload. Gold treats the empty results files as invalid, which
generates Trooper alerts.
No-Try: true
Change-Id: Ifcdfccefb173c5cb970d60da5b7c3a89d6bc15db
Reviewed-on: https://skia-review.googlesource.com/143500
Commit-Queue: Stephan Altmueller <stephana@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
It is unused, is becoming a maintainence burden and source of bugs,
and takes up a lot of time on the *SAN bots.
Change-Id: If383eb6e4838ca23140f9e16d518b1bfc655fa12
Reviewed-on: https://skia-review.googlesource.com/143307
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>