def process_track_settings(track_dict, release_inc_override):
    settings = {}
    settings['name'] = track_dict['name']
    vcs_uri = track_dict['vcs_uri']
    # Is the vcs_uri set?
    if vcs_uri is None or vcs_uri.lower() == ':{none}':
        error("The '{0}' must be set to something other than None."
              .format(DEFAULT_TEMPLATE['vcs_uri'].name),
              exit=True)
    # Is the vcs_type set and valid?
    vcs_type = track_dict['vcs_type']
    vcs_type_prompt = DEFAULT_TEMPLATE['vcs_type']
    if vcs_type is None or vcs_type.lower() not in vcs_type_prompt.values:
        error("The '{0}' cannot be '{1}', valid values are: {2}"
              .format(vcs_type_prompt.name, vcs_type, vcs_type_prompt.values),
              exit=True)
    settings['vcs_type'] = vcs_type
    # Is the version set to auto?
    version = track_dict['version']
    track_dict['ros_distro'] = str(track_dict['ros_distro'].lower())
    repo = None
    if version.lower() == ':{auto}':
        # Is the vcs_type either hg, git, or svn?
        if ['git', 'hg', 'svn'] not in vcs_type:
            error("Auto detection of version is not supported for '{0}'"
                  .format(vcs_type), exit=True)
        devel_branch = track_dict['devel_branch']
        try:
            string_types = [str, unicode]
        except NameError:
            string_types = [str]
        if type(devel_branch) in string_types \
           and devel_branch.lower() == ':{none}':
            devel_branch = None
        version, repo = find_version_from_upstream(vcs_uri,
                                                   vcs_type,
                                                   devel_branch,
                                                   track_dict['ros_distro'])
        if version is None:
            warning("Could not determine the version automatically.")
    if version is None or version == ':{ask}':
        ret = safe_input('What version are you releasing '
                         '(version should normally be MAJOR.MINOR.PATCH)? ')
        if not ret:
            error("You must specify a version to continue.", exit=True)
        version = ret
    settings['version'] = version
    vcs_uri = vcs_uri.replace(':{version}', version)
    settings['vcs_local_uri'] = repo.get_path() if repo else vcs_uri
    # Now that we have a version, template the vcs_uri if needed
    if ':{version}' in vcs_uri:
        vcs_uri = vcs_uri.replace(':{version}', version)
    settings['vcs_uri'] = vcs_uri
    # Is the release tag set to ask
    release_tag = track_dict['release_tag']
    release_tag_prompt = DEFAULT_TEMPLATE['release_tag']
    if release_tag is not None and release_tag == ':{ask}':
        ret = safe_input('What upstream tag should bloom import from? ')
        if not ret:
            error("You must specify a release tag.", exit=True)
        release_tag = ret
    elif release_tag is None or release_tag.lower() == ':{none}':
        if vcs_type not in ['svn', 'tar']:
            error("'{0}' can not be None unless '{1}' is either 'svn' or 'tar'"
                  .format(release_tag_prompt.name, vcs_type_prompt.name))
        release_tag = ':{none}'
    else:
        release_tag = release_tag.replace(':{version}', version)
    settings['release_tag'] = release_tag
    # Transfer other settings
    settings['devel_branch'] = track_dict['devel_branch']
    settings['patches'] = track_dict['patches'] or ''
    settings['ros_distro'] = track_dict['ros_distro']
    # Release increment
    if 'last_version' in track_dict and track_dict['last_version'] != version:
        next_release_inc = str(0)
    else:
        next_release_inc = str(int(track_dict['release_inc']) + 1)
    settings['release_inc'] = release_inc_override or next_release_inc
    return settings
dataset/ETHPy150Open ros-infrastructure/bloom/bloom/commands/git/release.py/process_track_settings/swapped operands of `not in`