summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authoriarspider <iarspider@gmail.com>2021-11-08 20:22:33 +0100
committerGitHub <noreply@github.com>2021-11-08 19:22:33 +0000
commitf164bae4a30f125d39872dc45cc3dfcdbb8ef328 (patch)
treefb3fcae842d4e8e5d21e79c2946b6a55d11f190c /lib
parentdb504db9aab2429991306ceb47039c3b34b5d886 (diff)
downloadspack-f164bae4a30f125d39872dc45cc3dfcdbb8ef328.tar.gz
spack-f164bae4a30f125d39872dc45cc3dfcdbb8ef328.tar.bz2
spack-f164bae4a30f125d39872dc45cc3dfcdbb8ef328.tar.xz
spack-f164bae4a30f125d39872dc45cc3dfcdbb8ef328.zip
Python tests: skip importing weirdly-named modules (#27151)
* Python tests: allow importing weirdly-named modules e.g. with dashes in name * SIP tests: allow importing weirdly-named modules * Skip modules with invalid names * Changes from review * Update from review * Update from review * Cleanup
Diffstat (limited to 'lib')
-rw-r--r--lib/spack/spack/build_systems/python.py3
-rw-r--r--lib/spack/spack/build_systems/sip.py3
2 files changed, 6 insertions, 0 deletions
diff --git a/lib/spack/spack/build_systems/python.py b/lib/spack/spack/build_systems/python.py
index a308e77cb9..2d003f38e3 100644
--- a/lib/spack/spack/build_systems/python.py
+++ b/lib/spack/spack/build_systems/python.py
@@ -4,6 +4,7 @@
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import inspect
import os
+import re
import shutil
import llnl.util.tty as tty
@@ -144,6 +145,8 @@ class PythonPackage(PackageBase):
modules.append(path.replace(root + os.sep, '', 1).replace(
'.py', '').replace('/', '.'))
+ modules = [mod for mod in modules if re.match('[a-zA-Z0-9._]+$', mod)]
+
tty.debug('Detected the following modules: {0}'.format(modules))
return modules
diff --git a/lib/spack/spack/build_systems/sip.py b/lib/spack/spack/build_systems/sip.py
index 814aa2605b..49fdd621ee 100644
--- a/lib/spack/spack/build_systems/sip.py
+++ b/lib/spack/spack/build_systems/sip.py
@@ -5,6 +5,7 @@
import inspect
import os
+import re
import llnl.util.tty as tty
from llnl.util.filesystem import find, join_path, working_dir
@@ -81,6 +82,8 @@ class SIPPackage(PackageBase):
modules.append(path.replace(root + os.sep, '', 1).replace(
'.py', '').replace('/', '.'))
+ modules = [mod for mod in modules if re.match('[a-zA-Z0-9._]+$', mod)]
+
tty.debug('Detected the following modules: {0}'.format(modules))
return modules