docs: def bumpversion(self, part, commit=True, tag=False, message=None,
                      allow_dirty=False):
          """ Run bumpversion.main() with the specified arguments, and return the
          new computed version string.
          """
          import bumpversion
  
          args = (
              (['--verbose'] if self.verbose > 1 else []) +
              (['--allow-dirty'] if allow_dirty else []) +
              (['--commit'] if commit else ['--no-commit']) +
              (['--tag'] if tag else ['--no-tag']) +
              (['--message', message] if message is not None else []) +
              ['--list', part]
          )
          log.debug(
              "$ bumpversion %s" % " ".join(a.replace(" ", "\\ ") for a in args))
  
          with capture_logger("bumpversion.list") as out:
              bumpversion.main(args)
  
          last_line = out.getvalue().splitlines()[-1]
          new_version = last_line.replace("new_version=", "")
          return new_version