New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 625875 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jul 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 3
Type: Bug



Sign in to add a comment

GN generates .plist with wrong xcallback schemes.

Project Member Reported by jif@chromium.org, Jul 5 2016

Issue description

For the kif web test target:
With GYP the generated .plist contains chromekifwebtests-x-callback
With GN the generated .plist contains chrome_kif_webtests-x-callback

This is a problem because iOS does not open apps with schemes that contain '_' (I assume iOS follows the RFC 3986 spec).

This results in webScenarioBrowsingLinkWithCallbackAppURLScheme being broken when building with GN.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jul 12 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b17a345954748b984d68e06080ad9733339f4dd2

commit b17a345954748b984d68e06080ad9733339f4dd2
Author: sdefresne <sdefresne@chromium.org>
Date: Tue Jul 12 18:14:21 2016

Fix build/config/mac/gen_plist.py.

When a modifier was used for a substitution, the modifier variable
value starts with a semi-colon but since the code was testing with
string without the semi-colon no substitution was performed.

The substitution rules for :identifier and :rfc1034identifier were
swapped (:rfc1034identifier is the one using '-').

If the value contained '_' the :rfc1034idenfifier modifier should
have substitued a '-' but didn't (gyp had the same issue, fixed by
https://codereview.chromium.org/2141973002/).

BUG= 625875 

Review-Url: https://codereview.chromium.org/2142903002
Cr-Commit-Position: refs/heads/master@{#404814}

[modify] https://crrev.com/b17a345954748b984d68e06080ad9733339f4dd2/build/config/mac/gen_plist.py

Project Member

Comment 2 by bugdroid1@chromium.org, Jul 13 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/294a049c6a1c20712a9a813c48e45dc78cfcbfa3

commit 294a049c6a1c20712a9a813c48e45dc78cfcbfa3
Author: sdefresne <sdefresne@chromium.org>
Date: Wed Jul 13 02:17:45 2016

Roll gyp to e7079f0e0e14108ab0dba58728ff219637458563.

Picks up:
  e7079f0 Fix :rfc1034identifier when the value contains underscore.

BUG= 625875 

Review-Url: https://codereview.chromium.org/2135313004
Cr-Commit-Position: refs/heads/master@{#404900}

[modify] https://crrev.com/294a049c6a1c20712a9a813c48e45dc78cfcbfa3/DEPS

Project Member

Comment 3 by bugdroid1@chromium.org, Jul 13 2016

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/chrome/ios_internal.git/+/9874d3999ee4a555c58b60b33f5abf13e37e47c2

commit 9874d3999ee4a555c58b60b33f5abf13e37e47c2
Author: sdefresne <sdefresne@google.com>
Date: Wed Jul 13 12:55:42 2016

Project Member

Comment 4 by bugdroid1@chromium.org, Jul 13 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/727206c66f12e422f3cea79fe83ffd25e24aeabf

commit 727206c66f12e422f3cea79fe83ffd25e24aeabf
Author: sdefresne <sdefresne@chromium.org>
Date: Wed Jul 13 14:40:30 2016

Use :rfc1034identifier modifier to remove '_' in BUNDLE_ID_TEST_NAME.

When building with "gn", there is no way to perform the substitution
using shell commands to remove underscore from BUNDLE_ID_TEST_NAME,
so instead use :rfc1034identifier modifier implemented by the scripts
used both gyp and gn to perform substitutions in Info.plist files.

BUG= 625875 

Review-Url: https://codereview.chromium.org/2146483002
Cr-Commit-Position: refs/heads/master@{#405146}

[modify] https://crrev.com/727206c66f12e422f3cea79fe83ffd25e24aeabf/testing/gtest.gyp
[modify] https://crrev.com/727206c66f12e422f3cea79fe83ffd25e24aeabf/testing/gtest_ios/unittest-Info.plist

Project Member

Comment 5 by bugdroid1@chromium.org, Jul 13 2016

Labels: merge-merged-2795
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/727206c66f12e422f3cea79fe83ffd25e24aeabf

commit 727206c66f12e422f3cea79fe83ffd25e24aeabf
Author: sdefresne <sdefresne@chromium.org>
Date: Wed Jul 13 14:40:30 2016

Use :rfc1034identifier modifier to remove '_' in BUNDLE_ID_TEST_NAME.

When building with "gn", there is no way to perform the substitution
using shell commands to remove underscore from BUNDLE_ID_TEST_NAME,
so instead use :rfc1034identifier modifier implemented by the scripts
used both gyp and gn to perform substitutions in Info.plist files.

BUG= 625875 

Review-Url: https://codereview.chromium.org/2146483002
Cr-Commit-Position: refs/heads/master@{#405146}

[modify] https://crrev.com/727206c66f12e422f3cea79fe83ffd25e24aeabf/testing/gtest.gyp
[modify] https://crrev.com/727206c66f12e422f3cea79fe83ffd25e24aeabf/testing/gtest_ios/unittest-Info.plist

Project Member

Comment 6 by bugdroid1@chromium.org, Jul 18 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/43b9c63e834916b79837e5c57e52e31adc23d431

commit 43b9c63e834916b79837e5c57e52e31adc23d431
Author: sdefresne <sdefresne@chromium.org>
Date: Mon Jul 18 09:51:03 2016

Initialize use_ios_simulator from current_cpu.

It is technically possible to build a fat binary that works on both
simulator and device, thus the use_ios_simulator value depends on
the cpu from the current toolchain (aka current_cpu) and not the
cpu from the default toolchain (aka target_cpu).

BUG= 625875 

Review-Url: https://codereview.chromium.org/2150433003
Cr-Commit-Position: refs/heads/master@{#405970}

[modify] https://crrev.com/43b9c63e834916b79837e5c57e52e31adc23d431/build/config/ios/ios_sdk.gni

Project Member

Comment 7 by bugdroid1@chromium.org, Jul 18 2016

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/chrome/ios_internal.git/+/8d0476d505ff97c06d43abb7c60602fc2b1d244c

commit 8d0476d505ff97c06d43abb7c60602fc2b1d244c
Author: sdefresne <sdefresne@google.com>
Date: Mon Jul 18 12:21:43 2016

Status: Fixed (was: Assigned)

Sign in to add a comment