diff --git a/lib/devpipeline_core/sanitizer.py b/lib/devpipeline_core/sanitizer.py
index <HASH>..<HASH> 100644
--- a/lib/devpipeline_core/sanitizer.py
+++ b/lib/devpipeline_core/sanitizer.py
@@ -8,19 +8,17 @@ import devpipeline_core.plugin
 
 
 def _sanitize_empty_depends(configuration, error_fn):
-    for component_name in configuration.components():
-        component = configuration.get(component_name)
+    for name, component in configuration.items():
         for dep in component.get_list("depends"):
             if not dep:
-                error_fn("Empty dependency in {}".format(component_name))
+                error_fn("Empty dependency in {}".format(name))
 
 
 _IMPLICIT_PATTERN = re.compile(R'\$\{([a-z_\-0-9\.]+):.+\}')
 
 
 def _sanitize_implicit_depends(configuration, error_fn):
-    for component_name in configuration.components():
-        component = configuration.get(component_name)
+    for name, component in configuration.items():
         component_deps = component.get_list("depends")
         for key in component:
             val = component.get(key, raw=True)
@@ -30,7 +28,7 @@ def _sanitize_implicit_depends(configuration, error_fn):
                 if dep not in component_deps:
                     error_fn(
                         "{}:{} has an implicit dependency on {}".format(
-                            component_name, key, dep))
+                            name, key, dep))
 
 
 _SANITIZERS = devpipeline_core.plugin.query_plugins(
Fix #5 - Use dictionary-like interface to access component configurations