Skip to content

Commit

Permalink
Merge pull request #9 from flutter/master
Browse files Browse the repository at this point in the history
Update master
  • Loading branch information
skia-flutter-autoroll authored Apr 14, 2020
2 parents b64dd60 + 7dccc73 commit 059291c
Show file tree
Hide file tree
Showing 460 changed files with 13,189 additions and 4,330 deletions.
71 changes: 30 additions & 41 deletions .cirrus.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
gcp_credentials: ENCRYPTED[987a78af29b91ce8489594c9ab3fec21845bbe5ba68294b8f6def3cf0d380830f06687a89ea69c87344c5ade369700fe]

web_shard_template: &WEB_SHARD_TEMPLATE
only_if: "changesInclude('.cirrus.yml', 'lib/web_ui/**', 'web_sdk/**') || $CIRRUS_PR == ''"
only_if: "changesInclude('.cirrus.yml', 'DEPS', 'lib/web_ui/**', 'web_sdk/**') || $CIRRUS_PR == ''"
environment:
# As of October 2019, the Web shards needed more than 6G of RAM.
CPU: 2
MEMORY: 8G
# As of March 2020, the Web shards needed 16G of RAM and 4 CPUs to run all framework tests with goldens without flaking.
CPU: 4
MEMORY: 16G
compile_host_script: |
cd $ENGINE_PATH/src
./flutter/tools/gn --unoptimized --full-dart-sdk
Expand Down Expand Up @@ -60,10 +60,23 @@ task:
cd $ENGINE_PATH/src/out/host_release/
./txt_benchmarks --benchmark_format=json > txt_benchmarks.json
./fml_benchmarks --benchmark_format=json > fml_benchmarks.json
./shell_benchmarks --benchmark_format=json > shell_benchmarks.json
cd $ENGINE_PATH/src/flutter/testing/benchmark
pub get
dart bin/parse_and_send.dart ../../../out/host_release/txt_benchmarks.json
dart bin/parse_and_send.dart ../../../out/host_release/fml_benchmarks.json
dart bin/parse_and_send.dart ../../../out/host_release/shell_benchmarks.json
- name: build_and_test_linux_release
compile_host_script: |
cd $ENGINE_PATH/src
./flutter/tools/gn --runtime-mode=release
ninja -C out/host_release
test_host_script: |
cd $ENGINE_PATH/src
./flutter/testing/run_tests.sh host_release
# The following test depends on Flutter framework repo. It may fail if the
# framework repo is currently broken.
- name: build_and_test_linux_unopt_debug
compile_host_script: |
cd $ENGINE_PATH/src
Expand Down Expand Up @@ -126,6 +139,16 @@ task:
- name: web_tests-7_last-linux # last Web shard must end with _last
<< : *WEB_SHARD_TEMPLATE

- name: web_engine_analysis
compile_host_script: |
cd $ENGINE_PATH/src
./flutter/tools/gn --unoptimized --full-dart-sdk
ninja -C out/host_debug_unopt
script:
- cd $ENGINE_PATH/src/flutter/lib/web_ui
- $ENGINE_PATH/src/out/host_debug_unopt/dart-sdk/bin/pub get
- $ENGINE_PATH/src/out/host_debug_unopt/dart-sdk/bin/dartanalyzer --fatal-warnings --fatal-hints dev/ lib/ test/ tool/

- name: web_engine_integration_test_linux
compile_host_script: |
cd $ENGINE_PATH/src
Expand All @@ -146,6 +169,9 @@ task:
- $FRAMEWORK_PATH/flutter/bin/flutter config --local-engine=host_debug_unopt --no-analytics --enable-web
- $FRAMEWORK_PATH/flutter/bin/flutter pub get --local-engine=host_debug_unopt
- $FRAMEWORK_PATH/flutter/bin/flutter drive -v --target=test_driver/text_editing_e2e.dart -d web-server --release --browser-name=chrome --local-engine=host_debug_unopt
- $FRAMEWORK_PATH/flutter/bin/flutter drive -v --target=test_driver/platform_messages_e2e.dart -d web-server --release --browser-name=chrome --local-engine=host_debug_unopt
- $FRAMEWORK_PATH/flutter/bin/flutter drive -v --target=test_driver/treeshaking_e2e.dart -d web-server --profile --browser-name=chrome --local-engine=host_debug_unopt
- $FRAMEWORK_PATH/flutter/bin/flutter drive -v --target=test_driver/image_loading_e2e.dart -d web-server --release --browser-name=chrome --local-engine=host_debug_unopt

- name: build_and_test_web_linux_firefox
compile_host_script: |
Expand Down Expand Up @@ -186,40 +212,3 @@ task:
cd $ENGINE_PATH/src
./flutter/tools/fuchsia/build_fuchsia_artifacts.py --engine-version HEAD --runtime-mode debug --no-lto --archs x64
cd $ENGINE_PATH/src/flutter
# WINDOWS
task:
gce_instance:
image_project: flutter-cirrus
image_name: flutter-engine-windows-server-2016
zone: us-central1-a
platform: windows
cpu: 32
memory: 32Gb
disk: 50
env:
# Cirrus is somehow not picking up the environment variables set in the VM image.
PATH: "c:/depot_tools;c:/MinGit/cmd;$PATH"
DEPOT_TOOLS_WIN_TOOLCHAIN: 0
GYP_MSVS_OVERRIDE_PATH: "c:/Program Files (x86)/Microsoft Visual Studio/2017/Community"
ENGINE_PATH: "c:/flutter/engine"
setup_script: |
REM robocopy can return 1 for successful copy; suppress its error code.
REM move somehow doesn't work as it complains that the file is being used by another process.
robocopy %CIRRUS_WORKING_DIR% %ENGINE_PATH%/src/flutter /MIR| (cmd /s /c exit /b 0)
cd %ENGINE_PATH%/src
gclient sync
matrix:
- name: build_and_test_windows_unopt_debug
compile_host_script: |
cd %ENGINE_PATH%/src
python flutter/tools/gn --runtime-mode debug --unoptimized
ninja -C out/host_debug_unopt
test_host_script: |
cd %ENGINE_PATH%/src
python flutter/testing/run_tests.py --type=engine
- name: build_windows_opt_debug
compile_host_script: |
cd %ENGINE_PATH%/src
python flutter/tools/gn --runtime-mode debug
ninja -C out/host_debug
1 change: 0 additions & 1 deletion .github/auto_assign.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ reviewers:
- franciscojma86
- cbracken
- flar
- stuartmorgan

# A number of reviewers added to the pull request
# Set 0 to add all the reviewers (default: 0)
Expand Down
8 changes: 5 additions & 3 deletions BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ group("flutter") {

public_deps = []

if (!(is_fuchsia && using_fuchsia_sdk)) {
if (!is_fuchsia) {
public_deps += [
"//flutter/lib/snapshot:generate_snapshot_bin",
"//flutter/lib/snapshot:kernel_platform_files",
Expand All @@ -40,14 +40,14 @@ group("flutter") {
public_deps += [ "//flutter/tools/const_finder" ]
}

if (is_fuchsia && using_fuchsia_sdk) {
if (is_fuchsia) {
public_deps += [
"//flutter/shell/platform/fuchsia",
"//flutter/shell/testing($host_toolchain)",
]
}

if (!is_fuchsia && !is_fuchsia_host) {
if (!is_fuchsia) {
if (current_toolchain == host_toolchain) {
public_deps += [
"//flutter/flutter_frontend_server:frontend_server",
Expand Down Expand Up @@ -75,6 +75,8 @@ group("flutter") {
"//flutter/lib/ui:ui_unittests",
"//flutter/runtime:runtime_unittests",
"//flutter/shell/common:shell_unittests",
"//flutter/shell/platform/common/cpp:common_cpp_core_unittests",
"//flutter/shell/platform/common/cpp:common_cpp_unittests",
"//flutter/shell/platform/common/cpp/client_wrapper:client_wrapper_unittests",
"//flutter/shell/platform/embedder:embedder_unittests",
"//flutter/shell/platform/glfw/client_wrapper:client_wrapper_glfw_unittests",
Expand Down
59 changes: 35 additions & 24 deletions DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -26,20 +26,20 @@ vars = {
'skia_git': 'https://skia.googlesource.com',
# OCMock is for testing only so there is no google clone
'ocmock_git': 'https://github.com/erikdoe/ocmock.git',
'skia_revision': '320c32bfa3062b0c67270667df5e4df1856f176e',
'skia_revision': 'ad653d8378d7a17502956c4addebb68eb3129961',

# When updating the Dart revision, ensure that all entries that are
# dependencies of Dart are also updated to match the entries in the
# Dart SDK's DEPS file for that revision of Dart. The DEPS file for
# Dart is: https://github.com/dart-lang/sdk/blob/master/DEPS.
# You can use //tools/dart/create_updated_flutter_deps.py to produce
# updated revision list of existing dependencies.
'dart_revision': '7c5059f528814e14dc9ff29ee1629b922daf77a4',
'dart_revision': '3e43a3dcadf96c0f1e30b12e0a1805df5a336c3c',

# WARNING: DO NOT EDIT MANUALLY
# The lines between blank lines above and below are generated by a script. See create_updated_flutter_deps.py
'dart_args_tag': '1.5.3',
'dart_async_tag': '2.0.8',
'dart_args_tag': '1.6.0',
'dart_async_tag': '2.4.1',
'dart_bazel_worker_tag': 'v0.1.22',
'dart_boolean_selector_tag': '1.0.4',
'dart_boringssl_gen_rev': 'b9e27cff1ff0803e97ab1f88764a83be4aa94a6d',
Expand All @@ -60,9 +60,9 @@ vars = {
'dart_http_retry_tag': '0.1.1',
'dart_http_tag': '0.12.0+2',
'dart_http_throttle_tag': '1.0.2',
'dart_intl_tag': '0.15.7',
'dart_intl_tag': '0.16.1',
'dart_json_rpc_2_tag': '2.0.9',
'dart_linter_tag': '0.1.112',
'dart_linter_tag': '0.1.115',
'dart_logging_tag': '0.11.3+2',
'dart_markdown_tag': '2.1.1',
'dart_matcher_tag': '0.12.5',
Expand All @@ -71,14 +71,13 @@ vars = {
'dart_mustache_tag': '5e81b12215566dbe2473b2afd01a8a8aedd56ad9',
'dart_oauth2_tag': '1.2.1',
'dart_observatory_pub_packages_rev': '0894122173b0f98eb08863a7712e78407d4477bc',
'dart_package_config_tag': '87a8b5184020ebcc13b34ee95dde58f851b68ca3',
'dart_package_resolver_tag': '1.0.10',
'dart_package_config_tag': 'v1.9.2',
'dart_path_tag': '1.6.2',
'dart_pedantic_tag': 'v1.8.0',
'dart_pedantic_tag': 'v1.9.0',
'dart_pool_tag': '1.3.6',
'dart_protobuf_rev': '3746c8fd3f2b0147623a8e3db89c3ff4330de760',
'dart_pub_rev': '429a06039d185149f387a65e3503b0693ce6d24e',
'dart_pub_semver_tag': '1.4.2',
'dart_pub_rev': '3606265962da4248d34d352aa3d170aae4496a90',
'dart_pub_semver_tag': 'v1.4.4',
'dart_quiver-dart_tag': '2.0.0+1',
'dart_resource_rev': 'f8e37558a1c4f54550aa463b88a6a831e3e33cd6',
'dart_root_certificates_rev': '16ef64be64c7dfdff2b9f4b910726e635ccc519e',
Expand All @@ -88,7 +87,7 @@ vars = {
'dart_shelf_web_socket_tag': '0.2.2+3',
'dart_source_map_stack_trace_tag': '2.0.0',
'dart_source_maps_tag': '8af7cc1a1c3a193c1fba5993ce22a546a319c40e',
'dart_source_span_tag': '1.5.5',
'dart_source_span_tag': '1.7.0',
'dart_stack_trace_tag': '1.9.3',
'dart_stagehand_tag': 'v3.3.7',
'dart_stream_channel_tag': '2.0.0',
Expand All @@ -100,7 +99,7 @@ vars = {
'dart_typed_data_tag': '1.1.6',
'dart_usage_tag': '3.4.0',
'dart_watcher_rev': '0.9.7+14',
'dart_web_socket_channel_tag': '1.0.9',
'dart_web_socket_channel_tag': '1.0.15',
'dart_yaml_tag': '2.2.0',

'ocmock_tag': 'v3.4.3',
Expand All @@ -114,6 +113,9 @@ vars = {
# Checkout Windows dependencies only if we are building on Windows.
'download_windows_deps' : 'host_os == "win"',

# Checkout Linux dependencies only when building on Linux.
'download_linux_deps': 'host_os == "linux"',

# An LLVM backend needs LLVM binaries and headers. To avoid build time
# increases we can use prebuilts. We don't want to download this on every
# CQ/CI bot nor do we want the average Dart developer to incur that cost.
Expand All @@ -137,7 +139,7 @@ allowed_hosts = [
]

deps = {
'src': 'https://github.com/flutter/buildroot.git' + '@' + 'd14f3c708fb132381f7053b4ee9e628be915ed96',
'src': 'https://github.com/flutter/buildroot.git' + '@' + '036715c76da60220b39312ea066cd65d32c2157d',

# Fuchsia compatibility
#
Expand Down Expand Up @@ -177,6 +179,9 @@ deps = {
'src/third_party/icu':
Var('chromium_git') + '/chromium/deps/icu.git' + '@' + '5005010d694e16571b8dfbf07d70817841f80a69',

'src/third_party/khronos':
Var('chromium_git') + '/chromium/src/third_party/khronos.git' + '@' + '7122230e90547962e0f0c627f62eeed3c701f275',

'src/third_party/boringssl':
Var('github_git') + '/dart-lang/boringssl_gen.git' + '@' + Var('dart_boringssl_gen_rev'),

Expand Down Expand Up @@ -228,7 +233,7 @@ deps = {
Var('dart_git') + '/dart2js_info.git' + '@' + Var('dart_dart2js_info_tag'),

'src/third_party/dart/third_party/pkg/dartdoc':
Var('dart_git') + '/[email protected].2',
Var('dart_git') + '/[email protected].3',

'src/third_party/dart/third_party/pkg/ffi':
Var('dart_git') + '/ffi.git' + '@' + Var('dart_ffi_tag'),
Expand Down Expand Up @@ -377,11 +382,8 @@ deps = {
'src/third_party/dart/third_party/pkg_tested/package_config':
Var('dart_git') + '/package_config.git' + '@' + Var('dart_package_config_tag'),

'src/third_party/dart/third_party/pkg_tested/package_resolver':
Var('dart_git') + '/package_resolver.git' + '@' + Var('dart_package_resolver_tag'),

'src/third_party/dart/tools/sdks':
{'packages': [{'version': 'version:2.8.0-dev.0.0', 'package': 'dart/dart-sdk/${{platform}}'}], 'dep_type': 'cipd'},
{'packages': [{'version': 'version:2.8.0-dev.18.0', 'package': 'dart/dart-sdk/${{platform}}'}], 'dep_type': 'cipd'},

# WARNING: end of dart dependencies list that is cleaned up automatically - see create_updated_flutter_deps.py.

Expand Down Expand Up @@ -432,7 +434,7 @@ deps = {
'packages': [
{
'package': 'flutter/android/ndk/${{platform}}',
'version': 'version:r19b'
'version': 'version:r21.0.6113669'
}
],
'condition': 'download_android_deps',
Expand Down Expand Up @@ -521,8 +523,8 @@ deps = {
'src/buildtools/{host_os}-x64/clang': {
'packages': [
{
'package': 'fuchsia/clang/${{platform}}',
'version': 'git_revision:de39621f0f03f20633bdfa50bde97a3908bf6e98'
'package': 'fuchsia/third_party/clang/${{platform}}',
'version': 'git_revision:7e9747b50bcb1be28d4a3236571e8050835497a6'
}
],
'condition': 'host_os == "mac" or host_os == "linux"',
Expand All @@ -536,7 +538,7 @@ deps = {
'packages': [
{
'package': 'fuchsia/sdk/core/mac-amd64',
'version': 'eGWV8Up-Giv-15K1FBRnkFQompVx2GpVBNomG09my_wC'
'version': '8JtFK64mmIC2zTEj9ICMrcQBITqKDZVQluLVKczro9kC'
}
],
'condition': 'host_os == "mac"',
Expand All @@ -556,7 +558,7 @@ deps = {
'packages': [
{
'package': 'fuchsia/sdk/core/linux-amd64',
'version': '6ds94xRmD_5jjJ9jn1pngltBcWUyduH4JF-PxklsD50C'
'version': 'LnaL23_DpQsbnbs-byJi-UoGe1XerKCfLjb4_XkxMRoC'
}
],
'condition': 'host_os == "linux"',
Expand Down Expand Up @@ -626,4 +628,13 @@ hooks = [
'src/third_party/dart/third_party/7zip.tar.gz.sha1',
],
},
{
'name': 'linux_sysroot',
'pattern': '.',
'condition': 'download_linux_deps',
'action': [
'python',
'src/build/linux/sysroot_scripts/install-sysroot.py',
'--arch=x64'],
},
]
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Flutter Engine
==============

[![Build Status - Cirrus][]][Build status]

Flutter is Google's mobile app SDK for crafting high-quality native interfaces
Expand Down
10 changes: 7 additions & 3 deletions analysis_options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,13 @@
# private fields, especially on the Window object):

analyzer:
# this test pretends to be part of dart:ui and results in lots of false
# positives.
exclude: [ testing/dart/window_hooks_integration_test.dart ]
exclude: [
# this test pretends to be part of dart:ui and results in lots of false
# positives.
testing/dart/window_hooks_integration_test.dart,
# Fixture depends on dart:ui and raises false positives.
flutter_frontend_server/test/fixtures/lib/main.dart
]
strong-mode:
implicit-casts: false
implicit-dynamic: false
Expand Down
4 changes: 2 additions & 2 deletions ci/check_gn_format.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ def main():
for gn_file in GetGNFiles(args.root_directory):
if subprocess.call(gn_command + [ gn_file ]) != 0:
print "ERROR: '%s' is incorrectly formatted." % os.path.relpath(gn_file, args.root_directory)
print "Format the same with 'gn format' using the 'gn' binary in //buildtools."
print "Or, run ./ci/check_gn_format.py with '--dry-run false'"
print "Format the same with 'gn format' using the 'gn' binary in third_party/gn/gn."
print "Or, run ./ci/check_gn_format.py without '--dry-run'"
return 1

return 0
Expand Down
2 changes: 1 addition & 1 deletion ci/format.sh
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ fi;

BASE_SHA="$(git fetch $UPSTREAM master > /dev/null 2>&1 && \
(git merge-base --fork-point FETCH_HEAD HEAD || git merge-base FETCH_HEAD HEAD))"
CLANG_FILES_TO_CHECK="$(git diff $DIFF_OPTS $BASE_SHA -- $CLANG_FILETYPES)"
CLANG_FILES_TO_CHECK="$(git ls-files $CLANG_FILETYPES)"
FAILED_CHECKS=0
for f in $CLANG_FILES_TO_CHECK; do
set +e
Expand Down
Loading

0 comments on commit 059291c

Please sign in to comment.