From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lukas Gradl Subject: Re: [Patch] Add python-rope Date: Sat, 21 May 2016 18:24:05 -0500 Message-ID: <8760u7f10q.fsf@openmailbox.org> References: <87y474st15.fsf@openmailbox.org> <573FA377.5030003@uq.edu.au> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:33781) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b4GOW-0006LZ-Vl for guix-devel@gnu.org; Sat, 21 May 2016 19:33:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b4GOS-0007O0-Tu for guix-devel@gnu.org; Sat, 21 May 2016 19:33:20 -0400 Received: from mail2.openmailbox.org ([62.4.1.33]:48179) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b4GOS-0007NH-GV for guix-devel@gnu.org; Sat, 21 May 2016 19:33:16 -0400 In-Reply-To: <573FA377.5030003@uq.edu.au> (Ben Woodcroft's message of "Sat, 21 May 2016 09:53:27 +1000") 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" To: Ben Woodcroft Cc: guix-devel@gnu.org --=-=-= Content-Type: text/plain Hi Ben, Thank you for your review! Ben Woodcroft writes: > > Looking forward to trying elpy out. > > There is no particular reason why the old (0.10.2) would be needed, > AFAIK. > > OK. Is it necessary then? We try not to keep old packages around if > possible. > OK, No, I do not think it is necessary. Removed. I ran into some initial problems with the 0.10.3 version due to my limited understanding of the python build system. I then compared to 0.10.2 which made me aware of some errors. So I ended up with definitions for both versions. > There are some tests that fail on the python-3 version. According to > this (https://groups.google.com/forum/#!topic/rope-dev/rmimG01CHUk), > upstream seems to have no particular interest in fixing that at the > moment. > > The rope_py3k doesn't appear to be maintained, the repository at > https://bitbucket.org/zjes/rope-0.9.3_py3k/ has been deleted and the > last release was in 2013. Do you use this library yourself? Otherwise > it is an unmaintained library lacking unit tests. If you are confident > of including it I'd say rename it to rope_py3k as it is more than a > fork of rope, commit it separately, and enable tests where possible > (most pass according to your link). WDYT? I do not use this library myself. I write mostly python-3 code myself, so I would have liked a python-3 version of rope. It seems that elpy is focusing more on jedi for python-3, so I will probably look at that. If nobody else is interested in a rope_py3k package then let's just drop it. > > Do you know if the rope you have packaged for python2 works on python3 > ? I did some digging, the short answer to this question is no, not > yet, unfortunately. > https://github.com/python-rope/rope/issues/57 It does indeed not run on python-3. About 57 test fail with python-3. > > I'll only review the python2-rope@0.10.3 for now then. > > +(define-public python2-rope > + (package > + (name "python2-rope") > + (version "0.10.3") > + (source > + (origin > + (method url-fetch) > + (uri (pypi-uri "rope" version)) > + (sha256 > + (base32 > + "18k5znhpwvrfck3yp0jmhd5j8r0f0s8bk1zh5yhs2cfgmfhbwigb")))) > + (arguments > + `(#:python ,python-2)) > > > Might be good to add a comment here saying only python2 is supported, > with a URL so that later we can check on progress. I agree. Done. > > + (build-system python-build-system) > + (native-inputs > + `(("python2-unittest2" ,python2-unittest2) > + ("python2-setuptools" ,python2-setuptools))) > + (home-page "http://rope.sf.net/") > > > https://github.com/python-rope/rope might be a better choice since the > sf address redirects there. Indeed. I did not notice that before. > > + (synopsis "Refactoring library for Python") > + (description "Rope is a Refactoring library for Python.") > > > Would it be possible to expand on this description, perhaps with a few > examples of refactoring processes? Also s/Refactoring/refactoring/. > I expanded it a bit. I am not exactly sure what to write as I am not very familiar with the project. Hope this will make it more clear. An updated patch is attached. Thank you for your review! Best, Lukas --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-python-Add-python-rope.patch Content-Transfer-Encoding: quoted-printable >From faf968a8bebaffdd14c60407aebca0ec051acf8f Mon Sep 17 00:00:00 2001 From: Lukas Gradl Date: Sat, 21 May 2016 18:19:42 -0500 Subject: [PATCH] gnu: python: Add python-rope. * gnu/packages/python.scm (python-rope): New variable. --- gnu/packages/python.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 37c8594..6eafd03 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -18,6 +18,7 @@ ;;; Copyright =C2=A9 2015 Kyle Meyer ;;; Copyright =C2=A9 2015, 2016 Chris Marusich ;;; Copyright =C2=A9 2016 Danny Milosavljevic +;;; Copyright =C2=A9 2016 Lukas Gradl ;;; ;;; This file is part of GNU Guix. ;;; @@ -8760,3 +8761,30 @@ respectively.") (description (string-append "This is an experimental compiler for a subs= et of Python. It generates C++ code and a Makefile.")) (license (list gpl3 bsd-3 license:expat)))) + + +(define-public python2-rope + (package + (name "python2-rope") + (version "0.10.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "rope" version)) + (sha256 + (base32 + "18k5znhpwvrfck3yp0jmhd5j8r0f0s8bk1zh5yhs2cfgmfhbwigb")))) + (arguments + `(#:python ,python-2)) ;; Rope is python-2 only + ;; (https://github.com/python-rope/rope/issues/57) + (build-system python-build-system) + (native-inputs + `(("python2-unittest2" ,python2-unittest2) + ("python2-setuptools" ,python2-setuptools))) + (home-page "https://github.com/python-rope/rope") + (synopsis "Refactoring library for Python") + (description "Rope is a refactoring library for Python. It facilitates +the renaming, moving and extracting of attributes, functions, modules, fie= lds +and parameters in Python 2 source code. These refactorings can also be ap= plied +to occurences in strings and comments.") + (license gpl2))) --=20 2.7.4 --=-=-=--