code: def bump_version(project, source, force_init):  # type: (str, str, bool, bool) ->int
      
      file_opener = FileOpener()
      # logger.debug("Starting version jiggler...")
      jiggler = JiggleVersion(project, source, file_opener, force_init)
  
      logger.debug(
          "Current, next : {0} -> {1} : {2}".format(
              jiggler.current_version, jiggler.version, jiggler.schema
          )
      )
      if not jiggler.version_finder.validate_current_versions():
  
          logger.debug(unicode(jiggler.version_finder.all_current_versions()))
          logger.error("Versions not in sync, won't continue")
          die(-1, "Versions not in sync, won't continue")
      changed = jiggler.jiggle_all()
      logger.debug("Changed {0} files".format(changed))
      return changed
docs: Entry point
      :return: