1. `bumpversion` is more general and has more functionality than `semver` in the article
2. `bump2version` is the currently maintained version[0]
I currently use `bumpversion` to manage versioning in applications with many different versioning schemes as well as managing the versioning of their deployment environments (such as updating Terraform files, etc).