project.parent() returns None instead of throwing KeyError