Control: tag -1 -moreinfo

On Mon, May 27, 2019 at 09:33:05PM +0200, Paul Gevers wrote:
> Control: tags -1 confirmed moreinfo
> 
> On Sun, 12 May 2019 19:33:57 -0400 Nicholas D Steeves
> <nstee...@gmail.com> wrote:
> > Please unblock package elpy
> > 
> > I'm filing this unblock request before uploading to unstable.
> 
> Please go ahead and remove the moreinfo tag when there is something to
> unblock.

Done!  Updated debdiff is attached.

Thank you,
Nicholas
[The following lists of changes regard files as different if they have
different names, permissions or owners.]

Files in second .deb but not in first
-------------------------------------
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_sources/concepts.rst.txt
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_sources/editing.rst.txt
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_sources/extending.rst.txt
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_sources/ide.rst.txt
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_sources/index.rst.txt
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_sources/introduction.rst.txt
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_sources/quickstart.rst.txt
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/ajax-loader.gif
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/basic.css
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/classic.css
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/comment-bright.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/comment-close.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/comment.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/default.css
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/documentation_options.js
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/down-pressed.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/down.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/file.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/language_data.js
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/minus.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/plus.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/pygments.css
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/up-pressed.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/_static/up.png
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/concepts.html
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/editing.html
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/extending.html
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/genindex.html
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/ide.html
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/index.html
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/introduction.html
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/objects.inv
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/quickstart.html
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/search.html
-rw-r--r--  root/root   /usr/share/doc/elpa-elpy/html/searchindex.js
lrwxrwxrwx  root/root   /usr/share/doc/elpa-elpy/html/_static/doctools.js -> ../../../../javascript/sphinxdoc/1.0/doctools.js
lrwxrwxrwx  root/root   /usr/share/doc/elpa-elpy/html/_static/jquery.js -> ../../../../javascript/sphinxdoc/1.0/jquery.js
lrwxrwxrwx  root/root   /usr/share/doc/elpa-elpy/html/_static/searchtools.js -> ../../../../javascript/sphinxdoc/1.0/searchtools.js
lrwxrwxrwx  root/root   /usr/share/doc/elpa-elpy/html/_static/sidebar.js -> ../../../../javascript/sphinxdoc/1.0/sidebar.js
lrwxrwxrwx  root/root   /usr/share/doc/elpa-elpy/html/_static/underscore.js -> ../../../../javascript/sphinxdoc/1.0/underscore.js

Control files: lines which differ (wdiff format)
------------------------------------------------
Installed-Size: [-567-] {+817+}
Recommends: emacs (>= 46.0), [-python3-jedi-] {+python3-jedi, libjs-sphinxdoc+}
Version: [-1.28.0-1-] {+1.28.0-2+}
diff -Nru elpy-1.28.0/debian/changelog elpy-1.28.0/debian/changelog
--- elpy-1.28.0/debian/changelog	2019-01-05 17:13:12.000000000 -0500
+++ elpy-1.28.0/debian/changelog	2019-05-29 18:05:30.000000000 -0400
@@ -1,3 +1,25 @@
+elpy (1.28.0-2) unstable; urgency=medium
+
+  * debian/rules: Disable DH_VERBOSE.
+  * Use sphinx to generate documentation in html format, and use
+    debian/docs to install it.
+    (Closes: #928633)
+  * Add libjs-sphinxdoc to Recommends.  This package's html doc search page
+    fails gracefully with "Please activate JavaScript to enable the search
+    functionality" if a user chooses not to install libjs-sphinxdoc.
+  * debian/README.Debian: Make explicit how Debian's Elpy package does
+    not ship with support for Python 2. (Closes: #927084)
+  * debian/control: Clarify comment explaining why the Python 2 package
+    python-autopep8 is a build dependency.
+  * Add 0002-Add-a-quickstart-section-to-the-documentation-1598.patch
+    (Closes: #927085)
+  * Add 0004-Enable-elpy-mode-in-python-buffer-when-enabling-Elpy.patch,
+    and its prerequisite 0003-Make-sure-we-cannot-load-Elpy-twice.patch.
+    Also add 0005-Fix-typo.patch, which is a fixup for the 0003-* patch.
+    See DEP-3 headers of patches for more information. (Closes: #926326)
+
+ -- Nicholas D Steeves <nstee...@gmail.com>  Wed, 29 May 2019 18:05:30 -0400
+
 elpy (1.28.0-1) unstable; urgency=medium
 
   * New upstream version.
diff -Nru elpy-1.28.0/debian/control elpy-1.28.0/debian/control
--- elpy-1.28.0/debian/control	2019-01-05 00:51:45.000000000 -0500
+++ elpy-1.28.0/debian/control	2019-05-29 18:05:30.000000000 -0400
@@ -21,7 +21,7 @@
              , python3-jedi
              , python3-autopep8 <!nocheck>
 # python-autopep8 still seems to be needed for self-tests to pass.
-# See Bug #899212 for more information.
+# See the 1.21.0-1 debian/changelog entry on this topic for more info.
              , python-autopep8 <!nocheck>
              , yapf3
              , python3-mock <!nocheck>
@@ -45,6 +45,7 @@
        , flake8
 Recommends: emacs (>= 46.0)
           , python3-jedi
+          , libjs-sphinxdoc
 Suggests: python3-autopep8
         , yapf3
         , black
diff -Nru elpy-1.28.0/debian/docs elpy-1.28.0/debian/docs
--- elpy-1.28.0/debian/docs	2018-12-03 04:23:49.000000000 -0500
+++ elpy-1.28.0/debian/docs	2019-05-29 18:05:30.000000000 -0400
@@ -1 +1,2 @@
 README.rst
+build/html
diff -Nru elpy-1.28.0/debian/patches/0002-Add-a-quickstart-section-to-the-documentation-1598.patch elpy-1.28.0/debian/patches/0002-Add-a-quickstart-section-to-the-documentation-1598.patch
--- elpy-1.28.0/debian/patches/0002-Add-a-quickstart-section-to-the-documentation-1598.patch	1969-12-31 19:00:00.000000000 -0500
+++ elpy-1.28.0/debian/patches/0002-Add-a-quickstart-section-to-the-documentation-1598.patch	2019-05-29 18:05:30.000000000 -0400
@@ -0,0 +1,58 @@
+From: galaunay <gaby.lau...@tutanota.com>
+Date: Tue, 21 May 2019 19:55:27 +0100
+Subject: Add a "quickstart" section to the documentation (#1598)
+
+* Add "quickstart" to the documentation
+
+* Shorter, better, cleaner
+
+Origin: upstream, https://github.com/jorgenschaefer/elpy/commit/7b7ee0af41c25caa93bdca69c0963a134c0af5d4
+Bug-Debian: https://bugs.debian.org/927085
+
+---
+ docs/index.rst      |  1 +
+ docs/quickstart.rst | 23 +++++++++++++++++++++++
+ 2 files changed, 24 insertions(+)
+ create mode 100644 docs/quickstart.rst
+
+diff --git a/docs/index.rst b/docs/index.rst
+index 285c93f..6bb1f5e 100644
+--- a/docs/index.rst
++++ b/docs/index.rst
+@@ -10,6 +10,7 @@ Contents:
+    :maxdepth: 2
+ 
+    introduction
++   quickstart
+    concepts
+    editing
+    ide
+diff --git a/docs/quickstart.rst b/docs/quickstart.rst
+new file mode 100644
+index 0000000..380b087
+--- /dev/null
++++ b/docs/quickstart.rst
+@@ -0,0 +1,23 @@
++Quickstart
++==========
++
++Once installed, Elpy will automatically provide code completion, syntax error highlighting and function signature (in the modeline) for python files.
++
++Useful keybindings
++------------------
++
++Elpy has quite a lot of keybindings, but the following ones should be enough to get you started:
++
++`C-c C-c` evaluates the current script (or region if something is selected) in an interactive python shell. The python shell is automatically displayed aside of your script (if not already there).
++
++`C-RET` evaluates the current statement (current line plus the following nested lines).
++
++`C-c C-z` switches between your script and the interactive shell.
++
++`C-c C-d` displays documentation for the thing under cursor (function or module). The documentation will pop in a different buffer, that can be closed with `q`.
++
++Go further
++----------
++
++Elpy offers a lot of features, including code navigation, debugging, testing, refactoring, profiling and support for virtual environments.
++Feel free to explore the documentation, everything is there !
diff -Nru elpy-1.28.0/debian/patches/0003-Make-sure-we-cannot-load-Elpy-twice.patch elpy-1.28.0/debian/patches/0003-Make-sure-we-cannot-load-Elpy-twice.patch
--- elpy-1.28.0/debian/patches/0003-Make-sure-we-cannot-load-Elpy-twice.patch	1969-12-31 19:00:00.000000000 -0500
+++ elpy-1.28.0/debian/patches/0003-Make-sure-we-cannot-load-Elpy-twice.patch	2019-05-29 18:05:30.000000000 -0400
@@ -0,0 +1,74 @@
+From: galaunay <gaby.lau...@tutanota.com>
+Date: Sun, 14 Apr 2019 19:02:49 +0100
+Subject: Make sure we cannot load Elpy twice
+
+Origin: upstream, https://github.com/jorgenschaefer/elpy/commit/af25b500b233a5f7a21ef84c653b0fb7cf1803fb
+
+Prerequisite for 0004-Enable-elpy-mode-in-python-buffer-when-enabling-Elpy.patch
+
+---
+ elpy.el | 42 ++++++++++++++++++++++++------------------
+ 1 file changed, 24 insertions(+), 18 deletions(-)
+
+diff --git a/elpy.el b/elpy.el
+index 4be48a8..8305ed1 100644
+--- a/elpy.el
++++ b/elpy.el
+@@ -564,33 +564,39 @@ This option need to bet set through `customize' or `customize-set-variable' to b
+     ["Configure" elpy-config t]))
+ 
+ ;;;###autoload
++(defvar elpy-enabled-p nil
++  "Is Elpy enabled or not.")
++
+ (defun elpy-enable (&optional ignored)
+   "Enable Elpy in all future Python buffers."
+   (interactive)
+-  (when (< emacs-major-version 24)
+-    (error "Elpy requires Emacs 24 or newer"))
+-  (when ignored
+-    (warn "The argument to `elpy-enable' is deprecated, customize `elpy-modules' instead"))
+-  (let ((filename (find-lisp-object-file-name 'python-mode
+-                                              'symbol-function)))
+-    (when (and filename
+-               (string-match "/python-mode\\.el\\'"
+-                             filename))
+-      (error (concat "You are using python-mode.el. "
+-                     "Elpy only works with python.el from "
+-                     "Emacs 24 and above"))))
+-  (elpy-modules-global-init)
+-  (define-key inferior-python-mode-map (kbd "C-c C-z") 'elpy-shell-switch-to-buffer)
+-  (add-hook 'python-mode-hook 'elpy-mode)
+-  (add-hook 'pyvenv-post-activate-hooks 'elpy-rpc--disconnect)
+-  (add-hook 'inferior-python-mode-hook 'elpy-shell--enable-output-filter))
++  (unless elpy-enabled-p
++    (when (< emacs-major-version 24)
++      (error "Elpy requires Emacs 24 or newer"))
++    (when ignored
++      (warn "The argument to `elpy-enable' is deprecated, customize `elpy-modules' instead"))
++    (let ((filename (find-lisp-object-file-name 'python-mode
++                                                'symbol-function)))
++      (when (and filename
++                 (string-match "/python-mode\\.el\\'"
++                               filename))
++        (error (concat "You are using python-mode.el. "
++                       "Elpy only works with python.el from "
++                       "Emacs 24 and above"))))
++    (elpy-modules-global-init)
++    (define-key inferior-python-mode-map (kbd "C-c C-z") 'elpy-shell-switch-to-buffer)
++    (add-hook 'python-mode-hook 'elpy-mode)
++    (add-hook 'pyvenv-post-activate-hooks 'elpy-rpc--disconnect)
++    (add-hook 'inferior-python-mode-hook 'elpy-shell--enable-output-filter)
++    (setq elpy-enabled-p t)))
+ 
+ (defun elpy-disable ()
+   "Disable Elpy in all future Python buffers."
+   (interactive)
+   (remove-hook 'python-mode-hook 'elpy-mode)
+   (remove-hook 'inferior-python-mode-hook 'elpy-shell--enable-output-filter)
+-  (elpy-modules-global-stop))
++  (elpy-modules-global-stop)
++  (setq elpy-enabled-p nil))
+ 
+ ;;;###autoload
+ (define-minor-mode elpy-mode
diff -Nru elpy-1.28.0/debian/patches/0004-Enable-elpy-mode-in-python-buffer-when-enabling-Elpy.patch elpy-1.28.0/debian/patches/0004-Enable-elpy-mode-in-python-buffer-when-enabling-Elpy.patch
--- elpy-1.28.0/debian/patches/0004-Enable-elpy-mode-in-python-buffer-when-enabling-Elpy.patch	1969-12-31 19:00:00.000000000 -0500
+++ elpy-1.28.0/debian/patches/0004-Enable-elpy-mode-in-python-buffer-when-enabling-Elpy.patch	2019-05-29 18:05:30.000000000 -0400
@@ -0,0 +1,34 @@
+From: galaunay <gaby.lau...@tutanota.com>
+Date: Tue, 21 May 2019 23:28:47 +0100
+Subject: Enable elpy-mode in python buffer when enabling Elpy
+
+Origin: upstream, https://github.com/jorgenschaefer/elpy/commit/d2d67b7422ae5ef352c950f3c93aff8b5e4810ff
+Bug: https://github.com/jorgenschaefer/elpy/issues/1596#issuecomment-494587825
+
+This patch defends against the following bug:
+1. A user new to Emacs runs `emacs some-file.py`
+2. M-x elpy-enable
+3. Elpy will not be enabled for the existing some-file.py buffer.
+4. New user concludes Elpy doesn't work and/or is difficult to make functional.
+
+---
+ elpy.el | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/elpy.el b/elpy.el
+index 8305ed1..8416b62 100644
+--- a/elpy.el
++++ b/elpy.el
+@@ -588,6 +588,12 @@ This option need to bet set through `customize' or `customize-set-variable' to b
+     (add-hook 'python-mode-hook 'elpy-mode)
+     (add-hook 'pyvenv-post-activate-hooks 'elpy-rpc--disconnect)
+     (add-hook 'inferior-python-mode-hook 'elpy-shell--enable-output-filter)
++    ;; Enable Elpy-mode in the opened python buffer
++    (dolist (buffer (buffer-list))
++      (and (not (string-match "^ ?\\*" (buffer-name buffer)))
++           (with-current-buffer buffer
++             (when (string= major-mode 'python-mode)
++               (elpy-mode t)))))
+     (setq elpy-enabled-p t)))
+ 
+ (defun elpy-disable ()
diff -Nru elpy-1.28.0/debian/patches/0005-Fix-typo.patch elpy-1.28.0/debian/patches/0005-Fix-typo.patch
--- elpy-1.28.0/debian/patches/0005-Fix-typo.patch	1969-12-31 19:00:00.000000000 -0500
+++ elpy-1.28.0/debian/patches/0005-Fix-typo.patch	2019-05-29 18:05:30.000000000 -0400
@@ -0,0 +1,28 @@
+From: galaunay <gaby.lau...@tutanota.com>
+Date: Sun, 14 Apr 2019 22:23:28 +0100
+Subject: Fix typo
+
+Origin: upstream, https://github.com/jorgenschaefer/elpy/commit/7e9b87bb0ec824d2d1ae014d0d31f15ac63d01a8
+
+This is an upstream fixup for 0003-Make-sure-we-cannot-load-Elpy-twice.patch
+
+---
+ elpy.el | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/elpy.el b/elpy.el
+index 8416b62..7945dc5 100644
+--- a/elpy.el
++++ b/elpy.el
+@@ -563,10 +563,10 @@ This option need to bet set through `customize' or `customize-set-variable' to b
+     ["News" elpy-news t]
+     ["Configure" elpy-config t]))
+ 
+-;;;###autoload
+ (defvar elpy-enabled-p nil
+   "Is Elpy enabled or not.")
+ 
++;;;###autoload
+ (defun elpy-enable (&optional ignored)
+   "Enable Elpy in all future Python buffers."
+   (interactive)
diff -Nru elpy-1.28.0/debian/patches/series elpy-1.28.0/debian/patches/series
--- elpy-1.28.0/debian/patches/series	2018-12-03 04:23:49.000000000 -0500
+++ elpy-1.28.0/debian/patches/series	2019-05-29 18:05:30.000000000 -0400
@@ -1 +1,5 @@
 0001-Disable-test-shell-send-region-or-buffer.patch
+0002-Add-a-quickstart-section-to-the-documentation-1598.patch
+0003-Make-sure-we-cannot-load-Elpy-twice.patch
+0004-Enable-elpy-mode-in-python-buffer-when-enabling-Elpy.patch
+0005-Fix-typo.patch
diff -Nru elpy-1.28.0/debian/README.Debian elpy-1.28.0/debian/README.Debian
--- elpy-1.28.0/debian/README.Debian	2019-01-05 00:51:44.000000000 -0500
+++ elpy-1.28.0/debian/README.Debian	2019-05-29 18:05:30.000000000 -0400
@@ -1,38 +1,47 @@
 Debian's Elpy package is configured to use the system-wide Python 3
-interpreter which will be supported after 1 January 2020, when Python 2
-will be EOL. The specific customisations are:
+interpreter and has never shipped with Python 2 support.  See Bug
+#927086 for discussion.
 
-(setq elpy-rpc-pythonpath nil
-      python-shell-interpreter "/usr/bin/python3"
-      python-shell-interpreter-args "-i"
-      elpy-rpc-python-command "/usr/bin/python3")
-
-Customise these variables to use Python interpreter, or reenable the
-normal rules of $PATH by dropping the absolute path. eg: Specify
-python3 and let $PATH choose python3 from something like
-~/.my_virtualenv2/bin/python3.
-
-Elpy's custom PYTHONPATH is not needed in packages that use dh-python,
-and has been unset.  Previously Elpy unnecessarily searched
-site-lisp/elpa/elpy-1.23.0 for its associated Python modules.
+To run Elpy's checks for optional dependencies, from within Emacs:
+  M-x elpy-enable  ;; <- this is the simplest way to start Elpy.
+  M-x elpy-config
+
+To find the corresponding Debian packages, run this in a shell:
+  # apt show elpa-elpy | grep 'Recommends\|Suggests'
+
+Debian-specific customisations are found in elpa-elpy's
+debian-autoloads.el file.
+
+  # dpkg -L elpa-elpy | grep debian-autoloads.el
+
+If a virtualenv's python interpreter is not the same as the system
+one, then it might be necessary to reenable upstream behaviour.  To do
+this, consult debian-autoloads.el, customise 'python-shell-interpreter'
+and 'elpy-rpc-python-command' on a per-user basis (eg: ~/.emacs,
+~/.emacs.el, or ~/.emacs.d/init.el), and drop the absolute path by
+setting these variables to "python3".  Setting them to "python" in the
+hopes that this will reenable Python 2 support will not work, because
+the Elpy modules needed for Python 2 are neither built nor installed,
+and these modules are needed for the RPC Process (see documentation at
+Elpy->Concepts->The RPC Process) and various other functions.  Also,
+elpa-elpy does not install a number of required Python 2 dependencies.
+
+Elpy's custom PYTHONPATH is not needed, because this package uses
+dh-python and has been unset.  Previously Elpy unnecessarily searched
+/usr/share/emacs/site-lisp/site-lisp/elpa/elpy-1.23.0 for its
+Python modules.
+
+Upstream documentation for the installed Elpy version is available in
+info, html, and man page format at the standard locations.  To access
+the info page:
+
+  # info elpy
+  # or: emacs --eval '(info "elpy")'
+  # or from within Emacs: M-x info, C-s elpy
 
 An alternative interactive interpreter can be enabled by setting
-'python-shell-interpreter' and 'python-shell-interpreter-args' to (eg:
-Jupyter console or IPython).  See "Interpreter Setup" section of
-Elpy's Documentation for more information.
-
-To restore upstream defaults, add the following to a user's Emacs config:
-
-    (setq python-shell-interpreter "python"
-          python-shell-interpreter-args "-i")
-          elpy-rpc-python-command "python")
-
-These defaults are useful when moving between virtualenv projects
-where some projects use Python 3 and some projects use Python 2.  That
-said, at present the Debian package is not built '--with python2' and
-so it is likely that Python 2 virtualenvs do not work correctly,
-because Python 2 modules are not built or installed to the system-wide
-PYTHONPATH.  These modules are needed for the RPC Process.  See
-Concepts->The RPC Process in 'info elpy' for further information.
+'python-shell-interpreter' and 'python-shell-interpreter-args' to
+something like Jupyter console or IPython.  See the "Interpreter Setup"
+section of Elpy's Documentation for more information.
 
- -- Nicholas D Steeves <nstee...@gmail.com>, Fri,  4 Jan 2019 22:41:43 -0700
+ -- Nicholas D Steeves <nstee...@gmail.com>, Thu,  9 May 2019 18:21:45 -0400
diff -Nru elpy-1.28.0/debian/rules elpy-1.28.0/debian/rules
--- elpy-1.28.0/debian/rules	2018-12-03 04:23:49.000000000 -0500
+++ elpy-1.28.0/debian/rules	2019-05-29 18:05:30.000000000 -0400
@@ -1,6 +1,5 @@
 #!/usr/bin/make -f
 
-export DH_VERBOSE = 1
 export PYBUILD_NAME = elpy
 LC_ALL := C.UTF-8
 export LC_ALL
@@ -23,4 +22,5 @@
 	PYTHONPATH=. sphinx-build -N -bman docs/ build/man
 	PYTHONPATH=. sphinx-build -N -btexinfo docs/ build/info
 	makeinfo --no-split build/info/Elpy.texi -o build/info/elpy.info
+	PYTHONPATH=. sphinx-build -N -bhtml docs/ build/html
 endif

Attachment: signature.asc
Description: PGP signature

Reply via email to