641bf8745d
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> |
||
---|---|---|
.. | ||
binary_size | ||
build | ||
builder_name_schema | ||
checkout | ||
ct | ||
doxygen | ||
env | ||
flavor | ||
git | ||
gsutil | ||
infra | ||
isolate | ||
run | ||
skia_swarming | ||
swarming | ||
swarming_client | ||
vars | ||
README.md |
Skia Recipe Modules
This directory contains recipe modules designed to be used by recipes (see infra/bots/recipes). They are all Skia-specific and some are interrelated:
- builder_name_schema - Helps to derive expected behavior from task (formerly builder) names.
- core - Use as a starting point for most recipes: runs setup and sync steps.
- ct - Shared Cluster Telemetry utilities.
- flavor - Allows the caller to specify a high-level command to run, leaving the platform-specific details to be handled by the specific flavor module.
- infra - Shared infrastructure-related utilities.
- run - Utilities for running commands.
- swarming - Utilities for running Swarming tasks.
- vars - Common global variables used by Skia recipes/modules.
When you change a recipe module, you generally need to re-train the simulation test:
$ python infra/bots/recipes.py test run --train
Or:
$ cd infra/bots; make train
Each recipe module contains a few files:
- api.py - This is the meat of the module.
- __init__.py - Contains a single DEPS variable, indicating the other recipe modules on which this module depends.
- example.py - Optional, this file contains examples which demonstrate how to use the module and should contain enough tests to achieve 100% coverage for the module. The tests are run using the recipes test command above.