Polish spack.util.environment (#35812)
				
					
				
			Update `spack.util.environment` to remove legacy idioms. * Remove kwargs from method signature and use a class for traces * Uppercase a few global variables * spack.util.environment: add type-hints * Improve docstrings * Fixed most style issues reported by pylint
This commit is contained in:
		 Massimiliano Culpo
					Massimiliano Culpo
				
			
				
					committed by
					
						 GitHub
						GitHub
					
				
			
			
				
	
			
			
			 GitHub
						GitHub
					
				
			
						parent
						
							b17113b63d
						
					
				
				
					commit
					046416479a
				
			| @@ -69,13 +69,13 @@ | ||||
| from spack.installer import InstallError | ||||
| from spack.util.cpus import cpus_available | ||||
| from spack.util.environment import ( | ||||
|     SYSTEM_DIRS, | ||||
|     EnvironmentModifications, | ||||
|     env_flag, | ||||
|     filter_system_paths, | ||||
|     get_path, | ||||
|     inspect_path, | ||||
|     is_system_path, | ||||
|     system_dirs, | ||||
|     validate, | ||||
| ) | ||||
| from spack.util.executable import Executable | ||||
| @@ -397,7 +397,7 @@ def set_compiler_environment_variables(pkg, env): | ||||
| 
 | ||||
|     env.set("SPACK_COMPILER_SPEC", str(spec.compiler)) | ||||
| 
 | ||||
|     env.set("SPACK_SYSTEM_DIRS", ":".join(system_dirs)) | ||||
|     env.set("SPACK_SYSTEM_DIRS", ":".join(SYSTEM_DIRS)) | ||||
| 
 | ||||
|     compiler.setup_custom_environment(pkg, env) | ||||
| 
 | ||||
|   | ||||
| @@ -575,7 +575,7 @@ def setup_main_options(args): | ||||
|     if args.debug: | ||||
|         spack.util.debug.register_interrupt_handler() | ||||
|         spack.config.set("config:debug", True, scope="command_line") | ||||
|         spack.util.environment.tracing_enabled = True | ||||
|         spack.util.environment.TRACING_ENABLED = True | ||||
| 
 | ||||
|     if args.timestamp: | ||||
|         tty.set_timestamp(True) | ||||
|   | ||||
| @@ -71,7 +71,7 @@ def guess_core_compilers(name, store=False): | ||||
|             # A compiler is considered to be a core compiler if any of the | ||||
|             # C, C++ or Fortran compilers reside in a system directory | ||||
|             is_system_compiler = any( | ||||
|                 os.path.dirname(x) in spack.util.environment.system_dirs | ||||
|                 os.path.dirname(x) in spack.util.environment.SYSTEM_DIRS | ||||
|                 for x in compiler["paths"].values() | ||||
|                 if x is not None | ||||
|             ) | ||||
|   | ||||
| @@ -16,7 +16,7 @@ | ||||
| import spack.config | ||||
| import spack.spec | ||||
| from spack.paths import build_env_path | ||||
| from spack.util.environment import set_env, system_dirs | ||||
| from spack.util.environment import SYSTEM_DIRS, set_env | ||||
| from spack.util.executable import Executable, ProcessError | ||||
| 
 | ||||
| # | ||||
| @@ -160,7 +160,7 @@ def wrapper_environment(working_env): | ||||
|         SPACK_DEBUG_LOG_ID="foo-hashabc", | ||||
|         SPACK_COMPILER_SPEC="gcc@4.4.7", | ||||
|         SPACK_SHORT_SPEC="foo@1.2 arch=linux-rhel6-x86_64 /hashabc", | ||||
|         SPACK_SYSTEM_DIRS=":".join(system_dirs), | ||||
|         SPACK_SYSTEM_DIRS=":".join(SYSTEM_DIRS), | ||||
|         SPACK_CC_RPATH_ARG="-Wl,-rpath,", | ||||
|         SPACK_CXX_RPATH_ARG="-Wl,-rpath,", | ||||
|         SPACK_F77_RPATH_ARG="-Wl,-rpath,", | ||||
|   | ||||
| @@ -230,16 +230,6 @@ def test_path_manipulation(env): | ||||
|     assert os.environ["PATH_LIST_WITH_DUPLICATES"].count("/duplicate") == 1 | ||||
| 
 | ||||
| 
 | ||||
| def test_extra_arguments(env): | ||||
|     """Tests that we can attach extra arguments to any command.""" | ||||
|     env.set("A", "dummy value", who="Pkg1") | ||||
|     for x in env: | ||||
|         assert "who" in x.args | ||||
| 
 | ||||
|     env.apply_modifications() | ||||
|     assert "dummy value" == os.environ["A"] | ||||
| 
 | ||||
| 
 | ||||
| def test_extend(env): | ||||
|     """Tests that we can construct a list of environment modifications | ||||
|     starting from another list. | ||||
|   | ||||
| @@ -237,7 +237,7 @@ def test_guess_core_compilers(self, factory, module_configuration, monkeypatch): | ||||
|         module_configuration("missing_core_compilers") | ||||
| 
 | ||||
|         # Our mock paths must be detected as system paths | ||||
|         monkeypatch.setattr(spack.util.environment, "system_dirs", ["/path/to"]) | ||||
|         monkeypatch.setattr(spack.util.environment, "SYSTEM_DIRS", ["/path/to"]) | ||||
| 
 | ||||
|         # We don't want to really write into user configuration | ||||
|         # when running tests | ||||
|   | ||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Reference in New Issue
	
	Block a user