code: def _newer_tags_get(current_highest, versions):
      
      newer = []
      for major in current_highest:
          highest_version = current_highest[major]
          for version in versions:
              version = version.lstrip('v')
              if version.startswith(major) and version_gt(version,
                      highest_version):
                  newer.append(version)
  
      _check_newer_major(current_highest, versions)
  
      return newer
docs: Returns versions from versions which are greater than than the highest
      version in each major. If a newer major is present in versions which is
      not present on current_highest, an exception will be raised.
      @param current_highest: as returned by VersionsFile.highest_version_major()
      @param versions: a list of versions.
      @return: a list of versions.
      @raise MissingMajorException: A new version from a newer major branch is
          exists, but will not be downloaded due to it not being in majors.