Skip to content
This repository was archived by the owner on Jan 6, 2023. It is now read-only.

Conversation

@alexeykuzmin
Copy link
Contributor

@alexeykuzmin alexeykuzmin commented Jun 19, 2017

This pr is created as a replacement for the #311.

/cc @tonyganch @kevinsawicki @zcbenz

// We might have been waiting for both beforeunload and unload ACK.
// Check if tab is to be unloaded first.
if (rfhi->IsWaitingForUnloadACK()) {
+#if 0
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Below is a copy the original comment by @zcbenz in #311:

This patch is still needed, it is used to suppress the unresponsive event when a beforeunload event handler spends too much time running (like showing a confirm dialog).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We cannot keep this patch as it is, it's not longer applicable.
The code around have been significantly changed by the Chromium team, see https://crbug.com/418266 and the related CLs.

I would appreciate some help with fixing this patch. @kevinsawicki, maybe you can take a look?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems that the patch has stopped working long time ago: electron/electron#6146, I think we can leave it be now and look into it in future.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, cool.

@alexeykuzmin
Copy link
Contributor Author

There is a problem with Windows build. To be more precise with the gclient.
When it's run on Windows among other scripts it executes cipd.bat which tries to use PowerShell and fails:

'powershell' is not recognized as an internal or external command,
operable program or batch file.

@kevinsawicki, since you are the person who added gclient in #309,
could you please take a look?

@kevinsawicki
Copy link
Contributor

could you please take a look?

Taking a look now

@kevinsawicki
Copy link
Contributor

@alexeykuzmin Windows builds should be compiling now, there was an issue with the PATH on the CI workers and powershell was not available from it, fixed now.

I also updated the depot_tools submodule to latest just to pull in any other gclient fixes that may be in there.

@tonyganch
Copy link
Contributor

@kevinsawicki, I see "Permission denied" errors at the very end of win builds now: http://208.52.191.140:8080/job/libcc-win-ia32/155/console

@kevinsawicki
Copy link
Contributor

I see "Permission denied" errors at the very end of win builds now: http://208.52.191.140:8080/job/libcc-win-ia32/155/console

Weird, I've seen this once before but it seemed to pass the next time the build ran, don't see anything very helpful in the google results for it.

struct LatencyComponent {
// Nondecreasing number that can be used to determine what events happened
diff --git a/ui/latency/ui_latency_export.h b/ui/latency/ui_latency_export.h
new file mode 100644
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem with this approach is that the patch will be successfully applied only for the first time. If you run ./script/update once more, ui_latency_export.h will already be present from the first run and git apply will fail.

@alexeykuzmin
Copy link
Contributor Author

The only problem left in static_library build on Windows is:

LINK(DLL) events.dll events.dll.lib events.dll.pdb
FAILED: events.dll events.dll.lib events.dll.pdb
D:/libcc/vendor/depot_tools/python276_bin/python.exe ../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x64 False link.exe /nologo /IMPLIB:./events.dll.lib /DLL /OUT:./events.dll /PDB:./events.dll.pdb @./events.dll.rsp
event.obj : warning LNK4217: locally defined symbol ??0LatencyInfo@ui@@QEAA@XZ (public: __cdecl ui::LatencyInfo::LatencyInfo(void)) imported in function "protected: __cdecl ui::Event::Event(struct tagMSG const &,enum ui::EventType,int)" (??0Event@ui@@IEAA@AEBUtagMSG@@W4EventType@1@H@Z)
LINK : error LNK1218: warning treated as error; no output file generated

The latest changes in Chromium related to LatencyInfo were made in CL 2783973002. Related changes in this PR are 2140ff4 and ec6f131.
Any thoughts? @kevinsawicki @zcbenz

@alexeykuzmin alexeykuzmin changed the title Upgrade to Chromium 59 [WIP] Upgrade to Chromium 59 Jun 27, 2017
@zcbenz
Copy link
Contributor

zcbenz commented Jun 28, 2017

@alexeykuzmin Have you tried changing latency from source_set to component?

@alexeykuzmin alexeykuzmin force-pushed the upgrade-to-chromium-59 branch from ec6f131 to 469242c Compare June 28, 2017 11:54
@alexeykuzmin
Copy link
Contributor Author

Have you tried changing latency from source_set to component?

@zcbenz It looks like it helped. Thanks!

@alexeykuzmin
Copy link
Contributor Author

Links to all the builds lead to 404 error pages. Is it ok?

@zcbenz
Copy link
Contributor

zcbenz commented Jun 28, 2017

@alexeykuzmin I'm not sure what happened, those links work fine on my side, the CI is failing for failing to apply patches:

warning: squelched 55 whitespace errors
warning: 60 lines add whitespace errors.
C:\e\workspace\libcc-win-ia32\patches\latency_info.patch:6: trailing whitespace.

C:\e\workspace\libcc-win-ia32\patches\latency_info.patch:7: trailing whitespace.
import("//testing/test.gni")
C:\e\workspace\libcc-win-ia32\patches\latency_info.patch:8: trailing whitespace.

C:\e\workspace\libcc-win-ia32\patches\latency_info.patch:10: trailing whitespace.
component("latency") {
C:\e\workspace\libcc-win-ia32\patches\latency_info.patch:11: trailing whitespace.
  sources = [
error: git apply: bad git-diff - expected /dev/null on line 72
latency_info.patch failed to apply
Error executing command ` python .\script\cibuild `.

I'll reset the workspace and restart the build.

@zcbenz
Copy link
Contributor

zcbenz commented Jun 28, 2017

And there are lots of warnings because of lines like this, which has a trailing space after +:

+ 

@alexeykuzmin
Copy link
Contributor Author

alexeykuzmin commented Jun 28, 2017

@zcbenz

error: git apply: bad git-diff - expected /dev/null on line 72
latency_info.patch failed to apply

I'm pretty sure it's caused by line-endings in a patch file being converted to "CRLF" on checkout. Do we set core.autocrlf false in global git config on Windows build machines?

@alexeykuzmin
Copy link
Contributor Author

And there are lots of warnings because of lines like this, which has a trailing space after +

I have also seen those warnings on my Windows machine, but they seem to be harmless.

@kevinsawicki, trailing space should be there, right? For example you have added some here: 6a905a1.

@alexeykuzmin
Copy link
Contributor Author

@zcbenz

I'm not sure what happened, those links work fine on my side

For example libcc-win-ia32 leads to http://208.52.191.140:8080/job/libcc-win-ia32/166/ and the response is:

HTTP ERROR 404

Problem accessing /job/libcc-win-ia32/166/. Reason:

    Not Found
Powered by Jetty://

@kevinsawicki
Copy link
Contributor

I have also seen those warnings on my Windows machine, but they seem to be harmless.

Yeah, these are just git apply warnings and can be ignored, they only appear on windows.

@alexeykuzmin
Copy link
Contributor Author

error: git apply: bad git-diff - expected /dev/null on line 72
latency_info.patch failed to apply

I'm pretty sure it's caused by line-endings in a patch file being converted to "CRLF" on checkout. Do we set core.autocrlf false in global git config on Windows build machines?

@kevinsawicki @zcbenz
In the repo "latency_info.patch" has LF line-endings. On my Windows machine git wasn't configured properly and I had exactly the same error, changing line-endings to LF fixed it.
Can we run git config --global core.autocrlf false on Windows build bots before checkout?

@alexeykuzmin
Copy link
Contributor Author

libchromiumcontent-osx build:

error: ui/latency/ui_latency_export.h: already exists in working directory
latency_info.patch failed to apply

It looks like the workspace was not cleared before the build and "ui/latency/ui_latency_export.h" was left in the Chromium tree from the previous build. Maybe it would make sense to remove all untracked files before applying patches?

@zcbenz zcbenz force-pushed the upgrade-to-chromium-59 branch 3 times, most recently from d3c6dcb to d6dd947 Compare June 29, 2017 08:29
@zcbenz
Copy link
Contributor

zcbenz commented Jun 29, 2017

@kevinsawicki It seems that we have to upgrade our CI machine to newer Linux distributions now.

Currently cross compilation is broken because the clang binary now links the targets with libstdc++ that is newer than the one installed on our CI machines, so indeterminate executables (like mksnapshot) are no longer able to run on the CI machines, resulting in build failures.

I have tried to revert to an old version of clang that works, but the build can not pass even with some hacks (9296aa9, 043faa2, d6dd947), some build configurations are assuming the version of clang.

Another choice is to build with gcc instead of clang, but I don't think we should do it.

@zcbenz zcbenz force-pushed the upgrade-to-chromium-59 branch from deed77b to 67ba62e Compare June 29, 2017 08:39
@zcbenz
Copy link
Contributor

zcbenz commented Jun 29, 2017

@alexeykuzmin I pushed a few commits trying to fix the patching, I don't know whether it works though because the Windows CI is down for now.

@alexeykuzmin alexeykuzmin force-pushed the upgrade-to-chromium-59 branch from 763d8a8 to 349396d Compare August 15, 2017 14:53
@alexeykuzmin
Copy link
Contributor Author

@zcbenz, @jkleinsc
Can someone please run Linux builds?
I had to make a rebase to fix merge conflicts after merging #344.

@jkleinsc
Copy link
Member

@alexeykuzmin builds are on their way

@jkleinsc jkleinsc merged commit 2a875ef into master Aug 16, 2017
@alexeykuzmin alexeykuzmin deleted the upgrade-to-chromium-59 branch August 17, 2017 17:34
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants