iOS EWS queue name should be consistent
authorddkilzer@apple.com <ddkilzer@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 19 Jan 2015 07:15:38 +0000 (07:15 +0000)
committerddkilzer@apple.com <ddkilzer@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 19 Jan 2015 07:15:38 +0000 (07:15 +0000)
<http://webkit.org/b/140585>

Reviewed by Daniel Bates.

* Scripts/webkitpy/common/config/ews.json: Rename 'ios-device'
to 'ios'.
* Scripts/webkitpy/common/config/ports.py: Ditto.
(DeprecatedPort.port):
(IOSPort):
* Scripts/webkitpy/port/ios.py: Ditto.
(IOSPort):

* Scripts/webkitpy/port/factory.py:
(PortFactory): Re-order PORT_CLASSES so ios.IOSSimulatorPort
appears before ios.IOSPort.  If this is not done,
`run-webkit-tests --ios-simulator` will get the wrong Port class
(IOSPort instead of IOSSimulatorPort) due to the way that
PortFactory.get() uses prefix matching of <Port>.port_name to
find the correct class to use.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@178641 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/Scripts/webkitpy/common/config/ews.json
Tools/Scripts/webkitpy/common/config/ports.py
Tools/Scripts/webkitpy/port/factory.py
Tools/Scripts/webkitpy/port/ios.py

index 6048289d4f8f60f03c870e5343015e367d67bedb..2f2266273718f137a676aa6cf77a22641978077a 100644 (file)
@@ -1,3 +1,26 @@
+2015-01-18  David Kilzer  <ddkilzer@apple.com>
+
+        iOS EWS queue name should be consistent
+        <http://webkit.org/b/140585>
+
+        Reviewed by Daniel Bates.
+
+        * Scripts/webkitpy/common/config/ews.json: Rename 'ios-device'
+        to 'ios'.
+        * Scripts/webkitpy/common/config/ports.py: Ditto.
+        (DeprecatedPort.port):
+        (IOSPort):
+        * Scripts/webkitpy/port/ios.py: Ditto.
+        (IOSPort):
+
+        * Scripts/webkitpy/port/factory.py:
+        (PortFactory): Re-order PORT_CLASSES so ios.IOSSimulatorPort
+        appears before ios.IOSPort.  If this is not done,
+        `run-webkit-tests --ios-simulator` will get the wrong Port class
+        (IOSPort instead of IOSSimulatorPort) due to the way that
+        PortFactory.get() uses prefix matching of <Port>.port_name to
+        find the correct class to use.
+
 2015-01-18  Alexey Proskuryakov  <ap@apple.com>
 
         build.webkit.org/dashboard: OS X EWS is now on Mavericks
 2015-01-18  Alexey Proskuryakov  <ap@apple.com>
 
         build.webkit.org/dashboard: OS X EWS is now on Mavericks
index b2ecda3b4f051871169ad89fce9b7d19dfc21f76..03e38ddceb908dff85326830d40bacfd9c9b2646 100644 (file)
@@ -15,7 +15,7 @@
         "port": "win"
     },
     "iOS EWS": {
         "port": "win"
     },
     "iOS EWS": {
-        "port": "ios-device",
+        "port": "ios",
         "architecture": "armv7"
     },
     "Mac EWS": {
         "architecture": "armv7"
     },
     "Mac EWS": {
index 042e896bb78fd01e5fdc6030c4e5bd2f35b739ae..b27b9446e903ed012283d3376aeef3d31b70949c 100644 (file)
@@ -64,7 +64,7 @@ class DeprecatedPort(object):
     def port(port_name):
         ports = {
             "gtk-wk2": GtkWK2Port,
     def port(port_name):
         ports = {
             "gtk-wk2": GtkWK2Port,
-            "ios-device": IOSPort,
+            "ios": IOSPort,
             "mac": MacPort,
             "mac-wk2": MacWK2Port,
             "win": WinPort,
             "mac": MacPort,
             "mac-wk2": MacWK2Port,
             "win": WinPort,
@@ -121,7 +121,7 @@ class DeprecatedPort(object):
 
 
 class IOSPort(DeprecatedPort):
 
 
 class IOSPort(DeprecatedPort):
-    port_flag_name = "ios-device"
+    port_flag_name = "ios"
 
     def build_webkit_command(self, build_style=None):
         command = super(IOSPort, self).build_webkit_command(build_style=build_style)
 
     def build_webkit_command(self, build_style=None):
         command = super(IOSPort, self).build_webkit_command(build_style=build_style)
index 542379cb58d35eae603ba1ae094ff4da8bf61d7d..1771658a02b56dbb51b7ee1f1113f36c90eca2fb 100644 (file)
@@ -80,11 +80,19 @@ def _builder_options(builder_name):
 
 
 class PortFactory(object):
 
 
 class PortFactory(object):
+    # Order matters.  For port classes that have a port_name with a
+    # common prefix, the more specific port class should be listed
+    # first.  For example, 'ios.IOSSimulatorPort' (port_name='ios-simulator')
+    # should be listed before 'ios.IOSPort' (port_name='ios').  If this
+    # rule is not followed, then `webkit-patch --ios-simulator` will try
+    # to use IOSPort instead of IOSSimulatorPort because 'ios'
+    # (IOSPort.port_name) is a prefix of 'ios-simulator' (port_name
+    # derived from '--ios-simulator' command-line switch), for example.
     PORT_CLASSES = (
         'efl.EflPort',
         'gtk.GtkPort',
     PORT_CLASSES = (
         'efl.EflPort',
         'gtk.GtkPort',
-        'ios.IOSPort',
         'ios.IOSSimulatorPort',
         'ios.IOSSimulatorPort',
+        'ios.IOSPort',
         'mac.MacPort',
         'mock_drt.MockDRTPort',
         'test.TestPort',
         'mac.MacPort',
         'mock_drt.MockDRTPort',
         'test.TestPort',
index a1c79be8e7663c3f56a2d5578f8d9081f41ac875..710a27dc730da04c5121989f4060af96e1fe170e 100644 (file)
@@ -43,10 +43,10 @@ _log = logging.getLogger(__name__)
 
 
 class IOSPort(ApplePort):
 
 
 class IOSPort(ApplePort):
-    port_name = "ios-device"
+    port_name = "ios"
 
     ARCHITECTURES = ['armv7', 'armv7s', 'arm64']
 
     ARCHITECTURES = ['armv7', 'armv7s', 'arm64']
-    VERSION_FALLBACK_ORDER = ['ios-device-7', 'ios-device-8']
+    VERSION_FALLBACK_ORDER = ['ios-7', 'ios-8']
 
     @classmethod
     def determine_full_port_name(cls, host, options, port_name):
 
     @classmethod
     def determine_full_port_name(cls, host, options, port_name):