From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id C97FE13888F for ; Fri, 9 Oct 2015 20:33:41 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id A3968E06FE; Fri, 9 Oct 2015 20:33:38 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 36CB9E06FE for ; Fri, 9 Oct 2015 20:33:37 +0000 (UTC) Received: from professor-x (S010634bdfa9ecf80.vc.shawcable.net [96.49.31.57]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: dolsen) by smtp.gentoo.org (Postfix) with ESMTPSA id 2F79633BE2F for ; Fri, 9 Oct 2015 20:33:37 +0000 (UTC) Date: Fri, 9 Oct 2015 13:32:49 -0700 From: Brian Dolbec To: gentoo-catalyst@lists.gentoo.org Subject: Re: [gentoo-catalyst] [PATCH] contents: punt unused module Message-ID: <20151009133249.2d225010.dolsen@gentoo.org> In-Reply-To: <1444370019-8637-1-git-send-email-vapier@gentoo.org> References: <1444370019-8637-1-git-send-email-vapier@gentoo.org> Organization: Gentoo Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-catalyst@lists.gentoo.org Reply-to: gentoo-catalyst@lists.gentoo.org MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Archives-Salt: 094f59a9-3eb3-4968-a2ac-68185645f2f3 X-Archives-Hash: 5988407d37a8deca67a441cbae592fa4 On Fri, 9 Oct 2015 01:53:39 -0400 Mike Frysinger wrote: > It looks like this code has all been moved to the external DeComp pkg. > --- > catalyst/contents.py | 87 > ---------------------------------------------------- 1 file changed, > 87 deletions(-) delete mode 100644 catalyst/contents.py > > diff --git a/catalyst/contents.py b/catalyst/contents.py > deleted file mode 100644 > index 73eda61..0000000 > --- a/catalyst/contents.py > +++ /dev/null > @@ -1,87 +0,0 @@ > - > -from collections import namedtuple > -from subprocess import Popen, PIPE > - > -from catalyst.support import CatalystError, warn > - > - > -# use ContentsMap.fields for the value legend > -# Key:[function, cmd] > -CONTENTS_DEFINITIONS = { > - # 'find' is disabled because it requires the source path, > which is not > - # always available > - #"find" :["calc_contents","find %(path)s"], > - "tar_tv":["calc_contents","tar --xattrs tvf %(file)s"], > - "tar_tvz":["calc_contents","tar --xattrs tvzf %(file)s"], > - "tar_tvj":["calc_contents","tar --xattrs -I lbzip2 -tvf > %(file)s"], > - "isoinfo_l":["calc_contents","isoinfo -l -i %(file)s"], > - # isoinfo_f should be a last resort only > - "isoinfo_f":["calc_contents","isoinfo -f -i %(file)s"], > -} > - > - > -class ContentsMap(object): > - '''Class to encompass all known commands to list > - the contents of an archive''' > - > - > - fields = ['func', 'cmd'] > - > - > - def __init__(self, defs=None): > - '''Class init > - > - @param defs: dictionary of Key:[function, cmd] > - ''' > - if defs is None: > - defs = {} > - #self.contents = {} > - self.contents_map = {} > - > - # create the archive type namedtuple classes > - for name in list(defs): > - #obj = self.contents[name] = > namedtuple(name, self.fields) > - obj = namedtuple(name, self.fields) > - obj.__slots__ = () > - self.contents_map[name] = > obj._make(defs[name]) > - del obj > - > - > - def generate_contents(self, file_, getter="auto", > verbose=False): > - try: > - archive = getter > - if archive == 'auto' and > file_.endswith('.iso'): > - archive = 'isoinfo_l' > - if (archive in ['tar_tv','auto']): > - if file_.endswith('.tgz') or > file_.endswith('.tar.gz'): > - archive = 'tar_tvz' > - elif file_.endswith('.tbz2') or > file_.endswith('.tar.bz2'): > - archive = 'tar_tvj' > - elif file_.endswith('.tar'): > - archive = 'tar_tv' > - > - if archive == 'auto': > - warn('File %r has unknown type for > automatic detection.' > - % (file_, )) > - return None > - else: > - getter = archive > - func = getattr(self, '_%s_' % > self.contents_map[getter].func) > - return func(file_, > self.contents_map[getter].cmd, verbose) > - except: > - raise CatalystError( > - "Error generating contents, is > appropriate utility " + > - "(%s) installed on your system?" > - % (self.contents_map[getter].cmd), > print_traceback=True) - > - > - @staticmethod > - def _calc_contents_(file_, cmd, verbose): > - _cmd = (cmd % {'file': file_ }).split() > - proc = Popen(_cmd, stdout=PIPE, stderr=PIPE) > - results = proc.communicate() > - result = "\n".join(results) > - if verbose: > - print result > - return result > - Yeah, punt it, I didn't do it initially in case there was problems. But it fits better living with the compression/decompression code. It will be easier to keep them all in sync. The only thing extra the contents has is iso capability. -- Brian Dolbec