get_project_info added plus additional defensive programming