Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3c8464e0 authored by Andrei-Valentin Onea's avatar Andrei-Valentin Onea Committed by Automerger Merge Worker
Browse files

Merge "Drop deprecated API lists from csv merge script" am: 269f5844 am: 33afbc93

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1392982

Change-Id: Icb900741395045bb16853cc18cf5aeafa4ef08d2
parents 7f61eb26 33afbc93
Loading
Loading
Loading
Loading
+3 −53
Original line number Diff line number Diff line
@@ -34,26 +34,6 @@ FLAG_PUBLIC_API = 'public-api'
FLAG_SYSTEM_API = 'system-api'
FLAG_TEST_API = 'test-api'

OLD_FLAG_SDK = "whitelist"
OLD_FLAG_UNSUPPORTED = "greylist"
OLD_FLAG_BLOCKED = "blacklist"
OLD_FLAG_MAX_TARGET_O = "greylist-max-o"
OLD_FLAG_MAX_TARGET_P = "greylist-max-p"
OLD_FLAG_MAX_TARGET_Q = "greylist-max-q"
OLD_FLAG_MAX_TARGET_R = "greylist-max-r"

OLD_FLAGS_TO_NEW = {
    OLD_FLAG_SDK: FLAG_SDK,
    OLD_FLAG_UNSUPPORTED: FLAG_UNSUPPORTED,
    OLD_FLAG_BLOCKED: FLAG_BLOCKED,
    OLD_FLAG_MAX_TARGET_O: FLAG_MAX_TARGET_O,
    OLD_FLAG_MAX_TARGET_P: FLAG_MAX_TARGET_P,
    OLD_FLAG_MAX_TARGET_Q: FLAG_MAX_TARGET_Q,
    OLD_FLAG_MAX_TARGET_R: FLAG_MAX_TARGET_R,
}

NEW_FLAGS_TO_OLD = dict(zip(OLD_FLAGS_TO_NEW.values(), OLD_FLAGS_TO_NEW.keys()))

# List of all known flags.
FLAGS_API_LIST = [
    FLAG_SDK,
@@ -205,36 +185,6 @@ class FlagsDict:
            "Please visit go/hiddenapi for more information.").format(
                source, "\n".join(flags_subset - ALL_FLAGS_SET))

    def convert_to_new_flag(self, flag):
      """Converts old flag to a new variant.

      Flags that are considered old are replaced with new versions.
      Otherwise, it is a no-op.

      Args:
        flag: a string, representing SDK flag.

      Returns:
         A string. Result of conversion.

      """
      return OLD_FLAGS_TO_NEW.get(flag, flag)

    def convert_to_old_flag(self, flag):
      """Converts a new flag to a old variant.

      No-op if there is no suitable old flag.
      Only used to support backwards compatibility.

      Args:
        flag: a string, representing SDK flag.

      Returns:
         A string. Result of conversion.

      """
      return NEW_FLAGS_TO_OLD.get(flag, flag)

    def filter_apis(self, filter_fn):
        """Returns APIs which match a given predicate.

@@ -272,7 +222,7 @@ class FlagsDict:
        """
        lines = []
        for api in self._dict:
          flags = sorted([self.convert_to_old_flag(flag) for flag in self._dict[api]])
          flags = sorted(self._dict[api])
          lines.append(",".join([api] + flags))
        return sorted(lines)

@@ -298,12 +248,12 @@ class FlagsDict:
        # Check that all flags are known.
        csv_flags = set()
        for csv in csv_values:
          csv_flags.update([self.convert_to_new_flag(flag) for flag in csv[1:]])
          csv_flags.update(csv[1:])
        self._check_flags_set(csv_flags, source)

        # Iterate over all CSV lines, find entry in dict and append flags to it.
        for csv in csv_values:
            flags = [self.convert_to_new_flag(flag) for flag in csv[1:]]
            flags = csv[1:]
            if (FLAG_PUBLIC_API in flags) or (FLAG_SYSTEM_API in flags):
                flags.append(FLAG_SDK)
            self._dict[csv[0]].update(flags)
+8 −9
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@ class TestHiddenapiListGeneration(unittest.TestCase):
        flags.parse_and_merge_csv(['A,' + FLAG_SDK, 'B', 'C'])
        flags.assign_flag(FLAG_UNSUPPORTED, set(['C']))
        self.assertEqual(flags.generate_csv(),
            [ 'A,' + OLD_FLAG_SDK, 'B', 'C,' + OLD_FLAG_UNSUPPORTED ])
            [ 'A,' + FLAG_SDK, 'B', 'C,' + FLAG_UNSUPPORTED ])

        # Check three things:
        # (1) B is selected as valid unassigned
@@ -50,8 +50,7 @@ class TestHiddenapiListGeneration(unittest.TestCase):
        # Test empty CSV entry.
        self.assertEqual(flags.generate_csv(), [])

        # Test new additions. CSV generator produces values with old flags
        # to be backwards compatible.
        # Test new additions.
        flags.parse_and_merge_csv([
            'A,' + FLAG_UNSUPPORTED,
            'B,' + FLAG_BLOCKED + ',' + FLAG_MAX_TARGET_O,
@@ -60,11 +59,11 @@ class TestHiddenapiListGeneration(unittest.TestCase):
            'E,' + FLAG_BLOCKED + ',' + FLAG_TEST_API,
        ])
        self.assertEqual(flags.generate_csv(), [
            'A,' + OLD_FLAG_UNSUPPORTED,
            'B,' + OLD_FLAG_BLOCKED + "," + OLD_FLAG_MAX_TARGET_O,
            'C,' + FLAG_SYSTEM_API + ',' + OLD_FLAG_SDK,
            'D,' + OLD_FLAG_UNSUPPORTED + ',' + FLAG_TEST_API,
            'E,' + OLD_FLAG_BLOCKED + ',' + FLAG_TEST_API,
            'A,' + FLAG_UNSUPPORTED,
            'B,' + FLAG_BLOCKED + "," + FLAG_MAX_TARGET_O,
            'C,' + FLAG_SYSTEM_API + ',' + FLAG_SDK,
            'D,' + FLAG_UNSUPPORTED + ',' + FLAG_TEST_API,
            'E,' + FLAG_BLOCKED + ',' + FLAG_TEST_API,
        ])

        # Test unknown flag.
@@ -78,7 +77,7 @@ class TestHiddenapiListGeneration(unittest.TestCase):
        # Test new additions.
        flags.assign_flag(FLAG_UNSUPPORTED, set([ 'A', 'B' ]))
        self.assertEqual(flags.generate_csv(),
            [ 'A,' + OLD_FLAG_UNSUPPORTED + "," + OLD_FLAG_SDK, 'B,' + OLD_FLAG_UNSUPPORTED ])
            [ 'A,' + FLAG_UNSUPPORTED + "," + FLAG_SDK, 'B,' + FLAG_UNSUPPORTED ])

        # Test invalid API signature.
        with self.assertRaises(AssertionError):