'Generate a list of dictionaries, each of which contains the information about a repository that will
be necessary for installing it into a local Galaxy instance.'

@web.json
def get_repository_information(self, trans, repository_ids, changeset_revisions, **kwd):

    includes_tools = False
    includes_tools_for_display_in_tool_panel = False
    has_repository_dependencies = False
    has_repository_dependencies_only_if_compiling_contained_td = False
    includes_tool_dependencies = False
    repo_info_dicts = []
    for tup in zip(util.listify(repository_ids), util.listify(changeset_revisions)):
        (repository_id, changeset_revision) = tup
        (repo_info_dict, cur_includes_tools, cur_includes_tool_dependencies, cur_includes_tools_for_display_in_tool_panel, cur_has_repository_dependencies, cur_has_repository_dependencies_only_if_compiling_contained_td) = repository_util.get_repo_info_dict(trans.app, trans.user, repository_id, changeset_revision)
        if (cur_has_repository_dependencies and (not has_repository_dependencies)):
            has_repository_dependencies = True
        if (cur_has_repository_dependencies_only_if_compiling_contained_td and (not has_repository_dependencies_only_if_compiling_contained_td)):
            has_repository_dependencies_only_if_compiling_contained_td = True
        if (cur_includes_tools and (not includes_tools)):
            includes_tools = True
        if (cur_includes_tool_dependencies and (not includes_tool_dependencies)):
            includes_tool_dependencies = True
        if (cur_includes_tools_for_display_in_tool_panel and (not includes_tools_for_display_in_tool_panel)):
            includes_tools_for_display_in_tool_panel = True
        repo_info_dicts.append(encoding_util.tool_shed_encode(repo_info_dict))
    return dict(includes_tools=includes_tools, includes_tools_for_display_in_tool_panel=includes_tools_for_display_in_tool_panel, has_repository_dependencies=has_repository_dependencies, has_repository_dependencies_only_if_compiling_contained_td=has_repository_dependencies_only_if_compiling_contained_td, includes_tool_dependencies=includes_tool_dependencies, repo_info_dicts=repo_info_dicts)
