gnu: emacs-elpy: Update to 1.35.0-0.8d0de31.

* gnu/packages/emacs-xyz.scm (emacs-elpy): Update to 1.35.0-0.8d0de31.
[source]: Use git-fetch.
[phases]{patch-ffip-project-search-call}: Delete.
{disable-broken-tests}: New phase.
[propagated-inputs]{python-rope}: Remove.
This commit is contained in:
Maxim Cournoyer 2021-10-31 01:18:19 -04:00
parent 18dd5e45e4
commit d42a56f8ae
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -10545,86 +10545,92 @@ (define-public emacs-highlight-indentation
(license license:gpl2+)))) (license license:gpl2+))))
(define-public emacs-elpy (define-public emacs-elpy
(package ;; Use the latest commit, as it contains unreleased fixes for Python 3.9 and
(name "emacs-elpy") ;; Jedi 0.18.
(version "1.35.0") (let ((commit "8d0de310d41ebf06b22321a8534546447456870c")
(source (origin (revision "0"))
(method git-fetch) (package
(uri (git-reference (name "emacs-elpy")
(url "https://github.com/jorgenschaefer/elpy") (version (git-version "1.35.0" revision commit))
(commit version))) (source (origin
(file-name (git-file-name name version)) (method git-fetch)
(sha256 (uri (git-reference
(base32 (url "https://github.com/jorgenschaefer/elpy")
"07rdb9w3bxzfr07224awa541xdy116hyc2b3bpl3fc3ikddmbydk")))) (commit commit)))
(build-system emacs-build-system) (file-name (git-file-name name version))
(arguments (sha256
`(#:include (cons* "^elpy/[^/]+\\.py$" "^snippets\\/" %default-include) (base32
#:phases "0hg6yk0wkfh2rwcc4h0bb6m2p3dg62ja22mjpa94khq52lv1piwf"))))
(modify-phases %standard-phases (build-system emacs-build-system)
(add-after 'unpack 'patch-ffip-project-search-call (arguments
(lambda _ `(#:include (cons* "^elpy/[^/]+\\.py$" "^snippets\\/" %default-include)
;; Since version 6.0.0 of find-file-in-project, #:phases
;; ffip-project-search doesn't accept a third argument anymore (modify-phases %standard-phases
;; (see: https://github.com/jorgenschaefer/elpy/issues/1889). (add-after 'unpack 'disable-broken-tests
(substitute* "elpy.el" ;; Some tests are known to have problems with Python 3.9; disable
(("\\((ffip-project-search nil nil) project-root\\)" _ signature) ;; them (see: https://github.com/jorgenschaefer/elpy/issues/1856).
(format #f "(let ((ffip-project-root project-root)) (~a))" (lambda _
signature))))) (substitute* "test/elpy-refactor-rename-test.el"
;; The default environment of the RPC uses Virtualenv to install ((".*ert-deftest elpy-refactor.*rename-in-multiple-files.*"
;; Python dependencies from PyPI. We don't want/need this in Guix. all)
(add-before 'check 'do-not-use-virtualenv (string-append all " :expected-result :failed\n")))
(lambda _ (substitute* "test/elpy-multiedit-python-symbol-at-point-test.el"
(setenv "ELPY_TEST_DONT_USE_VIRTUALENV" "1") ((".*ert-deftest elpy-multiedit.*should-save-some-buffers.*"
(substitute* "elpy-rpc.el" all)
(("defcustom elpy-rpc-virtualenv-path 'default") (string-append all " :expected-result :failed\n")))))
"defcustom elpy-rpc-virtualenv-path 'system")))) ;; The default environment of the RPC uses Virtualenv to install
(add-before 'check 'build-doc ;; Python dependencies from PyPI. We don't want/need this in Guix.
(lambda _ (add-before 'check 'do-not-use-virtualenv
(with-directory-excursion "docs" (lambda _
(invoke "make" "info" "man")) (setenv "ELPY_TEST_DONT_USE_VIRTUALENV" "1")
;; Move .info file at the root so that it can installed by the (substitute* "elpy-rpc.el"
;; 'move-doc phase. (("defcustom elpy-rpc-virtualenv-path 'default")
(rename-file "docs/_build/texinfo/Elpy.info" "Elpy.info"))) "defcustom elpy-rpc-virtualenv-path 'system"))))
(add-after 'build-doc 'install-manpage (add-before 'check 'build-doc
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (with-directory-excursion "docs"
(man1 (string-append out "/share/man/man1"))) (invoke "make" "info" "man"))
(mkdir-p man1) ;; Move .info file at the root so that it can installed by the
(copy-file "docs/_build/man/elpy.1" ;; 'move-doc phase.
(string-append man1 "/elpy.1")))))) (rename-file "docs/_build/texinfo/Elpy.info" "Elpy.info")))
#:tests? #t (add-after 'build-doc 'install-manpage
#:test-command '("ert-runner"))) (lambda* (#:key outputs #:allow-other-keys)
(propagated-inputs (let* ((out (assoc-ref outputs "out"))
`(("emacs-company" ,emacs-company) (man1 (string-append out "/share/man/man1")))
("emacs-find-file-in-project" ,emacs-find-file-in-project) (mkdir-p man1)
("emacs-highlight-indentation" ,emacs-highlight-indentation) (copy-file "docs/_build/man/elpy.1"
("emacs-yasnippet" ,emacs-yasnippet) (string-append man1 "/elpy.1"))))))
("pyvenv" ,emacs-pyvenv) #:tests? #t
("s" ,emacs-s) #:test-command '("ert-runner")))
;; The following are recommended Python dependencies that make Elpy (propagated-inputs
;; much more useful. Installing these avoids Elpy prompting to install them `(("emacs-company" ,emacs-company)
;; from PyPI using pip. ("emacs-find-file-in-project" ,emacs-find-file-in-project)
("python-autopep8" ,python-autopep8) ("emacs-highlight-indentation" ,emacs-highlight-indentation)
("python-black" ,python-black) ("emacs-yasnippet" ,emacs-yasnippet)
("python-flake8" ,python-flake8) ("pyvenv" ,emacs-pyvenv)
("python-jedi" ,python-jedi) ("s" ,emacs-s)
("python-rope" ,python-rope) ;; The following are recommended Python dependencies that make Elpy
("python-yapf" ,python-yapf))) ;; much more useful. Installing these avoids Elpy prompting to install them
(native-inputs ;; from PyPI using pip.
`(("ert-runner" ,emacs-ert-runner) ("python-autopep8" ,python-autopep8)
("emacs-f" ,emacs-f) ("python-black" ,python-black)
("python" ,python-wrapper) ("python-flake8" ,python-flake8)
;; For documentation. ("python-jedi" ,python-jedi)
("python-sphinx" ,python-sphinx) ("python-yapf" ,python-yapf)))
("texinfo" ,texinfo))) (native-inputs
(home-page "https://github.com/jorgenschaefer/elpy") `(("ert-runner" ,emacs-ert-runner)
(synopsis "Python development environment for Emacs") ("emacs-f" ,emacs-f)
(description "Elpy brings powerful Python editing to Emacs. It combines ("python" ,python-wrapper)
;; For documentation.
("python-sphinx" ,python-sphinx)
("texinfo" ,texinfo)))
(home-page "https://github.com/jorgenschaefer/elpy")
(synopsis "Python development environment for Emacs")
(description "Elpy brings powerful Python editing to Emacs. It combines
and configures a number of other packages written in Emacs Lisp as well as and configures a number of other packages written in Emacs Lisp as well as
Python, together offering features such as navigation, documentation, Python, together offering features such as navigation, documentation,
completion, interactive development and more.") completion, interactive development and more.")
(license license:gpl3+))) (license license:gpl3+))))
(define-public emacs-rainbow-delimiters (define-public emacs-rainbow-delimiters
(package (package