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

feat: upgrade to Chromium 69.0.3497.106 #14972

Merged
merged 92 commits into from Oct 10, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
aefb891
roll Chromium to 69.0.3497.106
nornagon Sep 21, 2018
ef12492
update chromium and v8 patches
nornagon Sep 21, 2018
ea98fb3
//tools/gn was removed
nornagon Oct 2, 2018
3b047f1
more gclient_gn_args
nornagon Oct 2, 2018
f514445
roll node to tmp version (branch more-patches)
nornagon Oct 2, 2018
3ded109
stop using x-devtools-emulate-network-conditions-client-id header
nornagon Oct 2, 2018
90aa277
Migrate MediaResponseCallback to OnceCallback
nornagon Oct 2, 2018
4f540fe
Replace DupCryptoBuffer with bssl::UpRef
nornagon Oct 2, 2018
a7c687f
ChildProcessSecurityPolicy: only use granted schemes for requests
nornagon Oct 2, 2018
c576d44
Rename base::Timer to base::TimerBase
nornagon Oct 2, 2018
2a3a845
Change CreateWebUIControllerForURL() to return a unique_ptr
nornagon Oct 2, 2018
d13e332
Unify notification-related permission checks in its PermissionContext
nornagon Oct 2, 2018
95cec24
FIXME: Move persistent notification id from notification database to …
nornagon Oct 2, 2018
ec1bd53
FIXME: Delete RenderWidgetHostViewMac::AcceleratedWidgetGetNSView
nornagon Oct 2, 2018
18128a1
Use CompletionOnceCallback
nornagon Oct 2, 2018
9c2cd5a
Support add/overwrite redirect request headers in NavigationURLLoader
nornagon Oct 2, 2018
7861f75
media: Refactor KeySystemSupport
nornagon Oct 2, 2018
af03e4a
Rename content::PermissionManager into content::PermissionControllerD…
nornagon Oct 2, 2018
4570330
Rename WebContentsDelegate methods
nornagon Oct 2, 2018
e3fef30
Refactor RWH::RestartHang...Timeout... into a generic base::Closure
nornagon Oct 2, 2018
63176ac
Collect NV12, YUY2, and BGRA overlay support information in GPUInfo
nornagon Oct 2, 2018
eef375a
Port //services/device/geolocation to network::SimpleURLLoader
nornagon Oct 2, 2018
56bc636
Make content::PermissionManager a delegate of PermissionController
nornagon Oct 2, 2018
9e110ec
Remove content::SpeechRecognitionResult
nornagon Oct 2, 2018
0955fa7
Remove unused RunMicrotasksObserver
nornagon Oct 2, 2018
2d46164
Switch NetworkDelegate to OnceCallbacks
nornagon Oct 2, 2018
34e54b9
Remove WebContentsUserData::kLocatorKey
nornagon Oct 2, 2018
b877437
Fixed reporting for iframe ugprade-insecure-requests upgrades
nornagon Oct 2, 2018
42120b4
Remove SupportsOCSPStapling from CertVerifier and CertVerifyProc
nornagon Oct 2, 2018
120b607
Move Net.HttpRequestCompletionErrorCodes to NetworkContext
nornagon Oct 2, 2018
7ce338e
Handle deleting cookies with session-only policy in network service
nornagon Oct 2, 2018
b57b342
Remove PlatformAccelerator
nornagon Oct 2, 2018
1adfa4d
Rename WebFrameClient to WebLocalFrameClient
nornagon Oct 2, 2018
8d9f24d
Remove WebCanvas alias, use cc::PaintCanvas directly in blink
nornagon Oct 2, 2018
816c2f1
Split WebWidgetClient and WebViewClient
nornagon Oct 2, 2018
bacc36d
Replace more loading methods in WebLocalFrame
nornagon Oct 2, 2018
7589c56
fix: intercept the isolate_holder's new isolate and register it with …
MarshallOfSound Oct 3, 2018
d8e58df
chore: update CHROME_VERSION_STRING
MarshallOfSound Oct 3, 2018
f4f70a1
chore: bump node
MarshallOfSound Oct 3, 2018
9190245
fix: exe_and_shlib_deps does not exist anymore
MarshallOfSound Oct 3, 2018
d3a0a23
fix: include algorithm in notification_presenter
MarshallOfSound Oct 3, 2018
8eb15f7
Creates TaskScheduler and MessageLoop on main thread early
nornagon Oct 3, 2018
647322e
native_desktop_media_list.h depends on //chrome/app:generated_resources
nornagon Oct 3, 2018
98829aa
fix default_app.js calling no-longer-existent API
nornagon Oct 3, 2018
f5eaa97
migrate off QuitCurrent*Deprecated in browser.cc
nornagon Oct 3, 2018
7aa01bc
chore: dont use bundled fontconfig
MarshallOfSound Oct 4, 2018
80ffc26
fixme: disable pepper flash
MarshallOfSound Oct 4, 2018
f03001c
chore: re-land GetBgColor libgtkui export patch
MarshallOfSound Oct 4, 2018
06dbc7f
chore: update sysroot
MarshallOfSound Oct 4, 2018
a0c2f3d
chore: re-enable bundled font config, we should fix the sysroot
MarshallOfSound Oct 4, 2018
92e95a4
update sysroot
nornagon Oct 4, 2018
85372ec
update,,, sysroots? again????
nornagon Oct 4, 2018
67611d6
Refactor of ServiceManagerContext
nornagon Oct 4, 2018
6df9c04
Hook up HttpAuthHandlerFactory configuration to the network service
nornagon Oct 4, 2018
c920e45
Stop using ResourceContext::GetHostResolver()
nornagon Oct 4, 2018
56e26c2
clang-format
nornagon Oct 4, 2018
66018eb
FIXME: disable non-compiling LOGFONT IPC message
nornagon Oct 5, 2018
b539e4d
roll node to 10.11.0
nornagon Oct 5, 2018
fb4b50c
fix: linking pepper flash on Linux
ckerr Oct 5, 2018
be719a1
fix: Use the new isolate initialization api
deepak1556 Oct 5, 2018
55d3720
chore: gn format
deepak1556 Oct 5, 2018
f668fc8
chore: roll node
deepak1556 Oct 5, 2018
f027e62
fix: only call NetworkService::SetUpHttpAuth once.
ckerr Oct 5, 2018
e28eeb0
fix notification permission handler
nornagon Oct 5, 2018
a6256c6
feat: getGPUInfo not longer supports 'complete' on macOS
zcbenz Oct 8, 2018
7ba287a
test: make netLog test pass when app crash on exit
zcbenz Oct 8, 2018
878c5b6
fix: disable the V2 sandbox on macOS
zcbenz Oct 8, 2018
4017f3f
fix: make lint run on Windows in PowerShell
brenca Oct 8, 2018
4088dec
FIXME! disable osr for now
brenca Oct 8, 2018
e548ed1
fix: remove conflicting header
brenca Oct 8, 2018
a71755e
fix: crash in webRequest due to unsafe static_cast
nornagon Oct 8, 2018
363aafc
fix: ensure webcontents is destroyed before its associated browser co…
deepak1556 Oct 8, 2018
26a46b6
ci: enable stack dumping in tests
nornagon Oct 8, 2018
7ec05fb
spec: update media-started-playing tests based on the autoplay policy
deepak1556 Oct 9, 2018
ba14dbe
FIXME: disable net log spec
deepak1556 Oct 9, 2018
3364c04
FIXME: disable document.visibilityState/hidden <webview> spec
deepak1556 Oct 9, 2018
a71c814
fixme: always run "nightly-release-test" workflow
alexeykuzmin Oct 9, 2018
f7dee77
fixme: allow huge Electron archives
alexeykuzmin Oct 9, 2018
2815364
fix: compile error on mas
nornagon Oct 9, 2018
ee8a54d
chore: update line reference in gpuinfo comment
nornagon Oct 9, 2018
edb96c8
FIXME: disable getGPUInfo test to unblock merge
nornagon Oct 9, 2018
c8a9a3f
FIXME: disable isCurrentlyAudible test to unblock merge
nornagon Oct 9, 2018
1a17ce8
FIXME: try enabling dcheck to see if that will get us more info on li…
nornagon Oct 9, 2018
373ffa9
docs: document BrowserWindow.setBackgroundColor
nornagon Oct 9, 2018
30850f4
fix: [mac] restore SetBackgroundColor functionality
nornagon Oct 9, 2018
f8f318d
FIXME: temporary debugging to maybe diagnose netlog issue on mac
nornagon Oct 9, 2018
6b621e2
fix: use valid markdown syntax in browser-window.md to fix docs linter
MarshallOfSound Oct 10, 2018
19e02cd
chore: add logging to zip-symbols.py to help debugging timeouts
MarshallOfSound Oct 10, 2018
a5c3091
chore: remove --enable-logging, causing issues on CI
MarshallOfSound Oct 10, 2018
2b8ef34
fixme: dont use --enable-logging on the ffmpeg verify phase
MarshallOfSound Oct 10, 2018
2420cdf
fix: ensure that the window is focused when testing spellchecker
MarshallOfSound Oct 10, 2018
dd43e92
fix: simplify SetBackgroundColor
codebytere Oct 10, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
27 changes: 18 additions & 9 deletions .circleci/config.yml
Expand Up @@ -28,6 +28,9 @@ env-release-build: &env-release-build
env-headless-testing: &env-headless-testing
DISPLAY: ':99.0'

env-stack-dumping: &env-stack-dumping
ELECTRON_ENABLE_STACK_DUMPING: '1'

env-browsertests: &env-browsertests
GN_EXTRA_ARGS: 'is_component_ffmpeg = false'
BUILD_TARGET: electron:chromium_browsertests
Expand Down Expand Up @@ -606,7 +609,7 @@ steps-tests: &steps-tests
command: |
cd src
export ELECTRON_OUT_DIR=Default
(cd electron && npm run test -- --ci --enable-logging)
(cd electron && npm run test -- --ci)
- run:
name: Check test results existence
command: |
Expand Down Expand Up @@ -944,6 +947,7 @@ jobs:
<<: *machine-linux-medium
environment:
<<: *env-headless-testing
<<: *env-stack-dumping
<<: *steps-tests

linux-x64-release-tests:
Expand All @@ -965,6 +969,7 @@ jobs:
environment:
<<: *env-ia32
<<: *env-headless-testing
<<: *env-stack-dumping
<<: *steps-tests

linux-ia32-release-tests:
Expand All @@ -985,10 +990,14 @@ jobs:

osx-testing-tests:
<<: *machine-mac
environment:
<<: *env-stack-dumping
<<: *steps-tests

mas-testing-tests:
<<: *machine-mac
environment:
<<: *env-stack-dumping
<<: *steps-tests

# Layer 4: Summary.
Expand Down Expand Up @@ -1077,14 +1086,14 @@ workflows:
- mas-testing

nightly-release-test:
triggers:
- schedule:
cron: "0 0 * * *"
filters:
branches:
only:
- master
- *chromium-upgrade-branches
# triggers:
# - schedule:
# cron: "0 0 * * *"
# filters:
# branches:
# only:
# - master
# - *chromium-upgrade-branches
jobs:
- linux-checkout

Expand Down
4 changes: 1 addition & 3 deletions BUILD.gn
Expand Up @@ -216,8 +216,8 @@ static_library("electron_lib") {
"//content/public/app:both",
"//content/public/child",
"//content/public/common:service_names",
"//device/geolocation",
"//gin",
"//media/mojo/interfaces",
"//net:net_resources",
"//ppapi/host",
"//ppapi/proxy",
Expand Down Expand Up @@ -693,7 +693,6 @@ if (is_mac) {
":electron_lib",
":js2asar",
":packed_resources",
"//build/config:exe_and_shlib_deps",
"//content:sandbox_helper_win",
"//ui/strings",
]
Expand Down Expand Up @@ -798,7 +797,6 @@ group("chromium_unittests") {
"//third_party/blink/public:all_blink",
"//third_party/blink/public:test_support",
"//third_party/leveldatabase:env_chromium_unittests",
"//tools/gn:gn_unittests",
"//ui/base:ui_base_unittests",
"//ui/compositor:compositor_unittests",
"//ui/display:display_unittests",
Expand Down
40 changes: 27 additions & 13 deletions DEPS
@@ -1,6 +1,18 @@
gclient_gn_args_file = 'src/build/config/gclient_args.gni'
gclient_gn_args = [
'build_with_chromium',
'checkout_android',
'checkout_android_native_support',
'checkout_libaom',
'checkout_nacl',
'checkout_oculus_sdk'
]

vars = {
'chromium_version': '68.0.3440.128',
'node_version': '18a9880b70039f5d41ee860a95fe84e5ef928973',
'chromium_version':
'69.0.3497.106',
'node_version':
'5331c9dc72e0db379a675efdb98f6a67bf7f23f0',

'boto_version': 'f7574aa6cc2c819430c1f05e9a1a1a666ef8169b',
'pyyaml_version': '3.12',
Expand All @@ -15,16 +27,25 @@ vars = {
# Python interface to Amazon Web Services. Is used for releases only.
'checkout_boto': False,

'checkout_nacl': False,
'checkout_libaom': True,
'checkout_oculus_sdk': False,

# Python "requests" module is used for releases only.
'checkout_requests': False,

# It is always needed for normal Electron builds,
# but might be impossible for custom in-house builds.
'download_external_binaries': True,

'checkout_nacl':
False,
'checkout_libaom':
True,
'checkout_oculus_sdk':
False,
'build_with_chromium':
True,
'checkout_android':
False,
'checkout_android_native_support':
False,
}

deps = {
Expand Down Expand Up @@ -100,10 +121,3 @@ hooks = [
recursedeps = [
'src',
]

gclient_gn_args = [
'checkout_libaom',
'checkout_nacl',
'checkout_oculus_sdk',
]
gclient_gn_args_file = 'src/build/config/gclient_args.gni'
25 changes: 13 additions & 12 deletions atom/app/atom_content_client.cc
Expand Up @@ -44,7 +44,7 @@ namespace {
bool IsWidevineAvailable(
base::FilePath* cdm_path,
std::vector<media::VideoCodec>* codecs_supported,
bool* supports_persistent_license,
base::flat_set<media::CdmSessionType>* session_types_supported,
base::flat_set<media::EncryptionMode>* modes_supported) {
static enum {
NOT_CHECKED,
Expand All @@ -71,12 +71,11 @@ bool IsWidevineAvailable(
codecs_supported->push_back(media::VideoCodec::kCodecH264);
#endif // BUILDFLAG(USE_PROPRIETARY_CODECS)

// TODO(crbug.com/767941): Push persistent-license support info here once
// we check in a new CDM that supports it on Linux.
// TODO(crbug.com/767941): Push persistent-license support info here once
// we check in a new CDM that supports it on Linux.
session_types_supported->insert(media::CdmSessionType::kTemporary);
#if defined(OS_CHROMEOS)
*supports_persistent_license = true;
#else
*supports_persistent_license = false;
session_types_supported->insert(media::CdmSessionType::kPersistentLicense);
#endif // defined(OS_CHROMEOS)

modes_supported->insert(media::EncryptionMode::kCenc);
Expand Down Expand Up @@ -211,8 +210,8 @@ void AtomContentClient::AddAdditionalSchemes(Schemes* schemes) {

void AtomContentClient::AddPepperPlugins(
std::vector<content::PepperPluginInfo>* plugins) {
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
#if BUILDFLAG(ENABLE_PEPPER_FLASH)
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
AddPepperFlashFromCommandLine(command_line, plugins);
#endif // BUILDFLAG(ENABLE_PEPPER_FLASH)
ComputeBuiltInPlugins(plugins);
Expand All @@ -225,10 +224,10 @@ void AtomContentClient::AddContentDecryptionModules(
#if defined(WIDEVINE_CDM_AVAILABLE)
base::FilePath cdm_path;
std::vector<media::VideoCodec> video_codecs_supported;
bool supports_persistent_license = false;
base::flat_set<media::CdmSessionType> session_types_supported;
base::flat_set<media::EncryptionMode> encryption_modes_supported;
if (IsWidevineAvailable(&cdm_path, &video_codecs_supported,
&supports_persistent_license,
&session_types_supported,
&encryption_modes_supported)) {
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
auto cdm_version_string =
Expand All @@ -239,11 +238,13 @@ void AtomContentClient::AddContentDecryptionModules(
const base::Version version(cdm_version_string);
DCHECK(version.IsValid());

content::CdmCapability capability(
video_codecs_supported, encryption_modes_supported,
session_types_supported, base::flat_set<media::CdmProxy::Protocol>());

cdms->push_back(content::CdmInfo(
kWidevineCdmDisplayName, kWidevineCdmGuid, version, cdm_path,
kWidevineCdmFileSystemId, video_codecs_supported,
supports_persistent_license, encryption_modes_supported,
kWidevineKeySystem, false));
kWidevineCdmFileSystemId, capability, kWidevineKeySystem, false));
}
#endif // defined(WIDEVINE_CDM_AVAILABLE)
}
Expand Down
10 changes: 10 additions & 0 deletions atom/app/atom_main_delegate.cc
Expand Up @@ -35,6 +35,10 @@
#include "atom/common/common_message_generator.h"
#endif

#if defined(OS_MACOSX)
#include "atom/app/atom_main_delegate_mac.h"
#endif

namespace atom {

namespace {
Expand Down Expand Up @@ -158,6 +162,12 @@ void AtomMainDelegate::PreSandboxStartup() {
#endif
}

void AtomMainDelegate::PreContentInitialization() {
#if defined(OS_MACOSX)
RegisterAtomCrApp();
#endif
}

content::ContentBrowserClient* AtomMainDelegate::CreateContentBrowserClient() {
browser_client_.reset(new AtomBrowserClient);
return browser_client_.get();
Expand Down
1 change: 1 addition & 0 deletions atom/app/atom_main_delegate.h
Expand Up @@ -22,6 +22,7 @@ class AtomMainDelegate : public brightray::MainDelegate {
// content::ContentMainDelegate:
bool BasicStartupComplete(int* exit_code) override;
void PreSandboxStartup() override;
void PreContentInitialization() override;
content::ContentBrowserClient* CreateContentBrowserClient() override;
content::ContentRendererClient* CreateContentRendererClient() override;
content::ContentUtilityClient* CreateContentUtilityClient() override;
Expand Down
15 changes: 15 additions & 0 deletions atom/app/atom_main_delegate_mac.h
@@ -0,0 +1,15 @@
// Copyright 2013 Slack Technologies, Inc. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef ATOM_APP_ATOM_MAIN_DELEGATE_MAC_H_
#define ATOM_APP_ATOM_MAIN_DELEGATE_MAC_H_

namespace atom {

// Initializes NSApplication.
void RegisterAtomCrApp();

} // namespace atom

#endif // ATOM_APP_ATOM_MAIN_DELEGATE_MAC_H_
6 changes: 6 additions & 0 deletions atom/app/atom_main_delegate_mac.mm
Expand Up @@ -4,6 +4,7 @@

#include "atom/app/atom_main_delegate.h"

#include "atom/browser/mac/atom_application.h"
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/mac/bundle_locations.h"
Expand Down Expand Up @@ -63,4 +64,9 @@
base::mac::SetBaseBundleID(base_bundle_id.c_str());
}

void RegisterAtomCrApp() {
// Force the NSApplication subclass to be used.
[AtomApplication sharedApplication];
}

} // namespace atom
3 changes: 2 additions & 1 deletion atom/app/node_main.cc
Expand Up @@ -51,7 +51,7 @@ int NodeMain(int argc, char* argv[]) {
base::TaskScheduler::CreateAndStartWithDefaultParams("Electron");

// Initialize gin::IsolateHolder.
JavascriptEnvironment gin_env;
JavascriptEnvironment gin_env(loop);

// Explicitly register electron's builtin modules.
NodeBindings::RegisterBuiltinModules();
Expand Down Expand Up @@ -100,6 +100,7 @@ int NodeMain(int argc, char* argv[]) {
node::RunAtExit(env);
gin_env.platform()->DrainTasks(env->isolate());
gin_env.platform()->CancelPendingDelayedTasks(env->isolate());
gin_env.platform()->UnregisterIsolate(env->isolate());

node::FreeEnvironment(env);
}
Expand Down
2 changes: 1 addition & 1 deletion atom/browser/api/atom_api_app.cc
Expand Up @@ -1173,7 +1173,7 @@ v8::Local<v8::Promise> App::GetGPUInfo(v8::Isolate* isolate,

auto* const info_mgr = GPUInfoManager::GetInstance();
if (info_type == "complete") {
#if defined(OS_MACOSX) || defined(OS_WIN)
#if defined(OS_WIN)
info_mgr->FetchCompleteInfo(promise);
#else
info_mgr->FetchBasicInfo(promise);
Expand Down
5 changes: 4 additions & 1 deletion atom/browser/api/atom_api_net_log.cc
Expand Up @@ -11,6 +11,7 @@
#include "atom/common/native_mate_converters/callback.h"
#include "atom/common/native_mate_converters/file_path_converter.h"
#include "base/command_line.h"
#include "base/logging.h"
#include "components/net_log/chrome_net_log.h"
#include "content/public/browser/storage_partition.h"
#include "native_mate/dictionary.h"
Expand Down Expand Up @@ -103,11 +104,13 @@ void NetLog::StopLogging(mate::Arguments* args) {

void NetLog::OnNewState(const base::DictionaryValue& state) {
net_log_state_ = state.CreateDeepCopy();
auto logging_state = GetLoggingState();
LOG(INFO) << "Got new state: " << logging_state;

if (stop_callback_queue_.empty())
return;

if (GetLoggingState() == "NOT_LOGGING") {
if (logging_state == "NOT_LOGGING") {
for (auto& callback : stop_callback_queue_) {
if (!callback.is_null())
net_log_writer_->GetFilePathToCompletedLog(callback);
Expand Down