def make_whereis_output(): ignore, filename = tempfile.mkstemp(prefix="gitannex-whereis-output-") proc = gitannex.make_whereis_proc() count = 0 outfile = file(filename, "w") while proc.returncode is None: try: line = proc.stdout.next() outfile.write(line) except StopIteration: outfile.close() break count += 1 return filename
def parse_whereis_cmd(session, repoids, convert_to_unicode=True, verbose_warning=True): proc = gitannex.make_whereis_proc() count = 0 while proc.returncode is None: try: line = proc.stdout.next() except StopIteration: break parse_whereis_line( session, line, repoids, convert_to_unicode=convert_to_unicode, verbose_warning=verbose_warning ) count += 1 if not count % 5000: print "committing at count %d" % count session.commit() if proc.returncode: raise RuntimeError, "command returned %d" % proc.returncode session.commit()