def __get_rows()

in libmozdata/redash.py [0:0]


    def __get_rows(channel, versions, rows):
        if channel == "beta":
            pat = re.compile(r"([0-9]+\.0)b[0-9]+")
            _versions = set()
            for v in versions:
                m = pat.match(v)
                if m:
                    _versions.add(m.group(1))
        else:
            _versions = set(versions)

        majors = set()
        pat_major = re.compile(r"([0-9]+)")
        for v in versions:
            m = pat_major.match(v)
            if m:
                majors.add(m.group(1))

        _rows = []
        for row in rows:
            if row["channel"] == channel:
                if "build_version" not in row:
                    continue

                v = row["build_version"]

                if not v:
                    continue

                if v in _versions:
                    _rows.append(row)
                elif majors:
                    m = pat_major.match(v)
                    if m and m.group(1) in majors:
                        _rows.append(row)

        return _rows