Allow obfuscated classes on bootclasspath

Previously, the signature_trie python library would reject classes
which started with a lower case character which in turn caused the
verify_overlaps tool to fail. That meant that it was impossible to
add obfuscated classes (which commonly used lower case characters
for their name) from being used on the bootclasspath.

This change removes that restriction and the accompanying test.

Bug: 265833521
Test: TH and partner testing
Change-Id: I70710484e427f64d79fb30301f3413f3b67b27e7
This commit is contained in:
Paul Duffin 2023-01-18 12:59:23 +00:00
parent ee37e8e8ed
commit 0f386bc12b
2 changed files with 0 additions and 12 deletions

View file

@ -150,10 +150,6 @@ class InteriorNode(Node):
f"wildcard '{last_element}' and "
f"member signature '{member[0]}'")
wildcard = [last_element]
elif last_element.islower():
raise Exception(f"Invalid signature '{signature}': last element "
f"'{last_element}' is lower case but should be an "
f"upper case class name or wildcard")
else:
packages = elements[0:-1]
# Split the class name into outer / inner classes

View file

@ -117,14 +117,6 @@ class TestSignatureToElements(unittest.TestCase):
self.assertEqual(elements, self.signature_to_elements(signature))
self.assertEqual(signature, self.elements_to_signature(elements))
def test_invalid_no_class_or_wildcard(self):
signature = "java/lang"
with self.assertRaises(Exception) as context:
self.signature_to_elements(signature)
self.assertIn(
"last element 'lang' is lower case but should be an "
"upper case class name or wildcard", str(context.exception))
def test_non_standard_class_name(self):
elements = [
("package", "javax"),