diff --git a/lib/spack/spack/modules.py b/lib/spack/spack/modules.py
index 9a021a7c4911c44397c433e1ffddce04cd49231b..115d4d9a37044fe699004d2b3931145d0495c50d 100644
--- a/lib/spack/spack/modules.py
+++ b/lib/spack/spack/modules.py
@@ -182,18 +182,13 @@ def dependencies(request='All'):
         # TODO : the code down below is quite similar to build_environment.setup_package and needs to be
         # TODO : factored out to a single place
         for item in dependencies('All'):
-            try:
-                package = self.spec[item.name].package
-                modules = parent_class_modules(package.__class__)
-                for mod in modules:
-                    set_module_variables_for_package(package, mod)
-                set_module_variables_for_package(package, package.module)
-                package.setup_dependent_package(self.pkg.module, self.spec)
-                package.setup_dependent_environment(spack_env, env, self.spec)
-            except KeyError as e:
-                # The extends was conditional, so it doesn't count here
-                # eg: extends('python', when='+python')
-                tty.debug(str(e))
+            package = self.spec[item.name].package
+            modules = parent_class_modules(package.__class__)
+            for mod in modules:
+                set_module_variables_for_package(package, mod)
+            set_module_variables_for_package(package, package.module)
+            package.setup_dependent_package(self.pkg.module, self.spec)
+            package.setup_dependent_environment(spack_env, env, self.spec)
 
         # Package-specific environment modifications
         set_module_variables_for_package(self.pkg, self.pkg.module)