Since both lists contain only strings, couldn't you directly compare them?  That would cover the case where the lengths were different (lines 109-110) as well as the case where the names had changed (lines 114-116).
```
if names != current_names:
```