From: Ian Jackson Date: Mon, 3 Apr 2017 15:28:57 +0000 (+0100) Subject: wip ownsource system stuff X-Git-Tag: hippotat/1.0.0~55^2~108 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=hippotat.git;a=commitdiff_plain;h=16374080f59fc07491193203175c603599a8ec5d wip ownsource system stuff --- diff --git a/hippotatlib/ownsource.py b/hippotatlib/ownsource.py index fab7365..4f1db67 100644 --- a/hippotatlib/ownsource.py +++ b/hippotatlib/ownsource.py @@ -33,7 +33,7 @@ class SourceShipmentPreparer(): s.rune_portmanteau = r''' outfile=$1; shift rm -f "$outfile" - GZIP=-9 tar zcf "$outfile" "$@" + GZIP=-1 tar zcf "$outfile" "$@" ''' s.manifest_name='0000-MANIFEST.txt' # private @@ -141,17 +141,27 @@ class SourceShipmentPreparer(): d = s.src_parentfinder(d, infol) s.mk_from_dir(d, infol) + def mk_from_module(s, m, infol): + try: file = m.__file__ + except AttributeError: return + infol.append(m.__name__) + s.mk_from_src(file, infol) + s.manifest_append(None, ['spong',file]) + #s.report_from_package(file, infol) + def mk_from_srcs(s, dirs=sys.path): s.mk_from_src(sys.argv[0], ['argv[0]']) for d in sys.path: s.mk_from_src(d, ['sys.path']) + for m in sys.modules.values(): + s.mk_from_module(m, ['sys.modules']) def mk_portmanteau(s): cmdl = s.rune_shell + [ s.rune_portmanteau, 'x', s.output_name, s.manifest_name ] mfh = s.open_output_fh(s.manifest_name,'w') for (name, info) in s._manifest: - cmdl.append(name) + if name is not None: cmdl.append(name) print('%s\t%s' % (name,info), file=mfh) mfh.close() subprocess.run(cmdl, diff --git a/srcbombtest.py b/srcbombtest.py index 8c6e152..25bc318 100755 --- a/srcbombtest.py +++ b/srcbombtest.py @@ -2,5 +2,7 @@ from hippotatlib.ownsource import SourceShipmentPreparer +import twisted + p = SourceShipmentPreparer('tmp') p.generate()