[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Patch] Add python-rope
From: |
Lukas Gradl |
Subject: |
Re: [Patch] Add python-rope |
Date: |
Sat, 21 May 2016 18:24:05 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Hi Ben,
Thank you for your review!
Ben Woodcroft <address@hidden> 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 address@hidden 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
>From faf968a8bebaffdd14c60407aebca0ec051acf8f Mon Sep 17 00:00:00 2001
From: Lukas Gradl <address@hidden>
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 © 2015 Kyle Meyer <address@hidden>
;;; Copyright © 2015, 2016 Chris Marusich <address@hidden>
;;; Copyright © 2016 Danny Milosavljevic <address@hidden>
+;;; Copyright © 2016 Lukas Gradl <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -8760,3 +8761,30 @@ respectively.")
(description (string-append "This is an experimental compiler for a subset 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, fields
+and parameters in Python 2 source code. These refactorings can also be applied
+to occurences in strings and comments.")
+ (license gpl2)))
--
2.7.4