Bug 164667 - run-safari does not work for open source contributors
Summary: run-safari does not work for open source contributors
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: mitz
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2016-11-11 17:06 PST by Joseph Pecoraro
Modified: 2016-11-12 02:35 PST (History)
11 users (show)

See Also:


Attachments
Pass DYLD_* environment variables over arch(1) (2.92 KB, patch)
2016-11-12 00:16 PST, mitz
joepeck: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph Pecoraro 2016-11-11 17:06:31 PST
Summary:
run-safari does not appear to work for open source contributors.

They end up having to use debug-safari.

Either we should make run-safari work, or change the instructions <https://webkit.org/running-webkit/>

> [16:19:45]  Rik`:	it seems run-safari is just using system webkit rather than the one I built
> [16:20:48]  dcrousso:	oh yeah Rik` I have that issue too
> [16:21:01]  dcrousso:	I have to use `debug-safari` instead
> [16:21:17]  dcrousso:	followed by `r` or `run`
> [16:21:31]  dcrousso:	ive been doing that for 2 years now
> [16:22:34]  Rik`:	maybe we should update the instructions on https://webkit.org/running-webkit/ ?
> [16:26:41]  Rik`:	I've found this info https://trac.webkit.org/wiki/WebKitNightlyElCapWorkaround but that didn't change things
> [16:29:06]  dcrousso:	yeah ever since ElCapitan it hasnt been working

It seems as though run-safari does launch SafariForWebKitDevelopment but is using System WebKit frameworks instead of the built WebKit frameworks.
Comment 1 Radar WebKit Bug Importer 2016-11-11 17:09:46 PST
<rdar://problem/29229894>
Comment 2 mitz 2016-11-12 00:03:33 PST
I can reproduce this in macOS Sierra 10.12.1. I can see that the “arch” branch is taken in webkitdirs.pm’s runWebKitApp(). If iI force the “system { $appPath }” code path to be taken, the right frameworks are picked up.

I think this is due to arch(1) itself being restricted and therefore not carrying over DYLD_FRAMEWORK_PATH from the environment into what it’s executing. I think we have a workaround for that in one of the other scripts.
Comment 3 mitz 2016-11-12 00:05:27 PST
See <https://trac.webkit.org/r190412>, the fix for bug 149711, which was the same issue with run-api-tests.
Comment 4 mitz 2016-11-12 00:16:31 PST
Created attachment 294607 [details]
Pass DYLD_* environment variables over arch(1)
Comment 5 Joseph Pecoraro 2016-11-12 00:25:34 PST
Comment on attachment 294607 [details]
Pass DYLD_* environment variables over arch(1)

r=me! Thanks Dan!
Comment 6 mitz 2016-11-12 00:27:34 PST
Fixed in <https://trac.webkit.org/r208644>.
Comment 7 Joseph Pecoraro 2016-11-12 00:28:38 PST
Comment on attachment 294607 [details]
Pass DYLD_* environment variables over arch(1)

View in context: https://bugs.webkit.org/attachment.cgi?id=294607&action=review

> Tools/Scripts/run-api-tests:-391
> -sub archCommandLineArgumentsForRestrictedEnvironmentVariables()

You may be able to remove a forward declaration for this at the top of this file. Now that it has moved.
Comment 8 Anthony Ricaud 2016-11-12 02:35:10 PST
Thanks, that fixed it!