def project_partitioning(columnlist, input_partitioning):

    if input_partitioning.hash_partitioned <= frozenset(columnlist):
        # Translate to new schema.

        # In general, Apply can make hash partitioning into a disjunction
        # for example, Apply(b=a, c=a)
        #     b or c could be the partition attribute but not both together
        # We are conservative: just pick the first
        newrefs = {}
        for newi, old in [(newi, old)
                          for newi, old in enumerate(columnlist)
                          if old in input_partitioning.hash_partitioned]:
            # keep only the first instance of input column
            if old not in newrefs:
                newrefs[old] = newi

        return RepresentationProperties(
            hash_partitioned=frozenset(
                expression.UnnamedAttributeRef(i)
                for i in newrefs.values()))
    else:
        return RepresentationProperties()
Get a list of repositories across all the organizations that a user can access.
dataset/ETHPy150Open uwescience/raco/raco/algebra.py/project_partitioning--crossover with--dataset/ETHPy150Open dustin/py-github/github/githubtest.py/OrganizationTest.testOrganizationRepositories