updated to use semantic versioning