From e73e249038e928fce0a6a38d033afed0b2b7bd43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=A4in=C3=B6=20M=C3=A4kel=C3=A4?= Date: Tue, 19 Dec 2023 14:24:06 +0200 Subject: [PATCH 1/2] extractors: Detect arm64 as ARM 64Bit --- src/feedback_plugin/data_processing/extractors.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/feedback_plugin/data_processing/extractors.py b/src/feedback_plugin/data_processing/extractors.py index 394448d..1b8055e 100644 --- a/src/feedback_plugin/data_processing/extractors.py +++ b/src/feedback_plugin/data_processing/extractors.py @@ -89,7 +89,7 @@ def extract_machine_architecture(upload: dict[str, list[str]]) -> str: machine_architecture = 'x86' elif re.match('^armv[5-7]', machine): machine_architecture = 'ARM 32Bit' - elif re.match('^aarch64$', machine): + elif re.match('^(aarch64|arm64)$', machine): machine_architecture = 'ARM 64Bit' elif re.match('^hp_', machine): machine_architecture = 'HP Itanium' From 87d9eb862c73eb00c189ede26fbc807ea0b57d61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=A4in=C3=B6=20M=C3=A4kel=C3=A4?= Date: Tue, 19 Dec 2023 14:29:21 +0200 Subject: [PATCH 2/2] extractors: Pass ARM generations through Putting all 32-bit ARMs in the same group loses information that is present in the original data. It might, for example, be interesting to see how popular armel is compared to armhf. aarch64 and arm64 are marked as armv8 to stay somewhat consistent with the names for earlier generations. --- src/feedback_plugin/data_processing/extractors.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/feedback_plugin/data_processing/extractors.py b/src/feedback_plugin/data_processing/extractors.py index 1b8055e..99f8fad 100644 --- a/src/feedback_plugin/data_processing/extractors.py +++ b/src/feedback_plugin/data_processing/extractors.py @@ -87,10 +87,8 @@ def extract_machine_architecture(upload: dict[str, list[str]]) -> str: elif re.match('^[ix][3-6]*86$', machine): # This check must happen after x86_64 machine_architecture = 'x86' - elif re.match('^armv[5-7]', machine): - machine_architecture = 'ARM 32Bit' elif re.match('^(aarch64|arm64)$', machine): - machine_architecture = 'ARM 64Bit' + machine_architecture = 'armv8' elif re.match('^hp_', machine): machine_architecture = 'HP Itanium' elif re.match('^alpha', machine):