From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Famulari Subject: Re: [PATCH 6/18] gnu: Add python-beautifulsoup4 Date: Mon, 15 Feb 2016 20:45:48 -0500 Message-ID: <20160216014548.GF3984@jasmine> References: <87io1psge4.fsf@dustycloud.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:60796) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aVUi4-0004gH-F2 for guix-devel@gnu.org; Mon, 15 Feb 2016 20:45:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aVUhz-0002mT-Mb for guix-devel@gnu.org; Mon, 15 Feb 2016 20:45:48 -0500 Received: from out2-smtp.messagingengine.com ([66.111.4.26]:42753) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aVUhz-0002mP-Ip for guix-devel@gnu.org; Mon, 15 Feb 2016 20:45:43 -0500 Content-Disposition: inline In-Reply-To: <87io1psge4.fsf@dustycloud.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Christopher Allan Webber Cc: guix-devel@gnu.org On Mon, Feb 15, 2016 at 03:28:03PM -0800, Christopher Allan Webber wrote: > From 12fea50a946441277e38cc6e7ef266c08738193e Mon Sep 17 00:00:00 2001 > From: Christopher Allan Webber > Date: Sat, 13 Feb 2016 18:35:57 -0800 > Subject: [PATCH 06/18] gnu: Add python-beautifulsoup4 > > * gnu/packages/python.scm (python-beautifulsoup4, python2-beautifulsoup4): > New variables. I actually have a patch for this in one of my WIP branches, too :) > --- > gnu/packages/python.scm | 33 +++++++++++++++++++++++++++++++++ > 1 file changed, 33 insertions(+) > > diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm > index 3ef552d..d7498dd 100644 > --- a/gnu/packages/python.scm > +++ b/gnu/packages/python.scm > @@ -4573,6 +4573,39 @@ libxml2 and libxslt.") > (define-public python2-lxml > (package-with-python2 python-lxml)) > > +;; beautifulsoup4 has a totally different namespace than 3.x, > +;; and pypi seems to put it under its own name, so I guess we should too > +(define-public python-beautifulsoup4 > + (package > + (name "python-beautifulsoup4") > + (version "4.4.1") > + (source > + (origin > + (method url-fetch) > + (uri (pypi-uri "beautifulsoup4" version)) > + (sha256 > + (base32 > + "1d36lc4pfkvl74fmzdib2nqnvknm0jddgf2n9yd7im150qyh3m47")))) > + (build-system python-build-system) > + (inputs > + `(("python-lxml" ,python-lxml) > + ("python-html5lib" ,python-html5lib))) I didn't find these necessary for the build process and test suite. Are you sure they aren't supposed to be provided by the application that uses beautifulsoup4? > + (home-page > + "http://www.crummy.com/software/BeautifulSoup/bs4/") > + (synopsis > + "Python screen-scraping library") > + (description > + "HTML/XML parser for quick-turnaround applications like screen-scraping. > +Can parse even extremely broken HTML.") How about this: "Beautiful Soup is a Python library designed for rapidly setting up screen-scraping projects. It offers Pythonic idioms for navigating, searching, and modifying a parse tree, providing a toolkit for dissecting a document and extracting what you need. It automatically converts incoming documents to Unicode and outgoing documents to UTF-8." > + (license bsd-3) It uses the Expat license, and has some code from html5lib, which is also Expat. > + (properties `((python2-variant . ,(delay python2-beautifulsoup4)))))) > + > +(define-public python2-beautifulsoup4 > + (package > + (inherit (package-with-python2 > + (strip-python2-variant python-beautifulsoup4))) > + (inputs `(("python2-setuptools" ,python2-setuptools))))) > + > (define-public python2-pil > (package > (name "python2-pil") > -- > 2.6.3 > >