From 8526d11f0e3c4382969632f041de546c102fab7d Mon Sep 17 00:00:00 2001 From: Andreas Gerler Date: Thu, 31 Oct 2019 16:58:19 +0100 Subject: [PATCH] update paradox --- .../paradox-autoloads.el | 58 +++----------- .../paradox-commit-list.el | 16 ++-- .../paradox-core.el | 12 +-- .../paradox-execute.el | 0 .../paradox-github.el | 15 +++- .../paradox-menu.el | 75 ++++++++++++------- .../paradox-pkg.el | 2 +- .../paradox.el | 17 +++-- 8 files changed, 100 insertions(+), 95 deletions(-) rename elpa/{paradox-20181027.2234 => paradox-20191011.1111}/paradox-autoloads.el (57%) rename elpa/{paradox-20181027.2234 => paradox-20191011.1111}/paradox-commit-list.el (95%) rename elpa/{paradox-20181027.2234 => paradox-20191011.1111}/paradox-core.el (93%) rename elpa/{paradox-20181027.2234 => paradox-20191011.1111}/paradox-execute.el (100%) rename elpa/{paradox-20181027.2234 => paradox-20191011.1111}/paradox-github.el (96%) rename elpa/{paradox-20181027.2234 => paradox-20191011.1111}/paradox-menu.el (95%) rename elpa/{paradox-20181027.2234 => paradox-20191011.1111}/paradox-pkg.el (87%) rename elpa/{paradox-20181027.2234 => paradox-20191011.1111}/paradox.el (96%) diff --git a/elpa/paradox-20181027.2234/paradox-autoloads.el b/elpa/paradox-20191011.1111/paradox-autoloads.el similarity index 57% rename from elpa/paradox-20181027.2234/paradox-autoloads.el rename to elpa/paradox-20191011.1111/paradox-autoloads.el index 5e08fa64..ea0ef147 100644 --- a/elpa/paradox-20181027.2234/paradox-autoloads.el +++ b/elpa/paradox-20191011.1111/paradox-autoloads.el @@ -1,12 +1,10 @@ ;;; paradox-autoloads.el --- automatically extracted autoloads ;; ;;; Code: - -(add-to-list 'load-path (directory-file-name - (or (file-name-directory #$) (car load-path)))) - +(add-to-list 'load-path (directory-file-name (or (file-name-directory #$) (car load-path)))) -;;;### (autoloads nil "paradox" "paradox.el" (0 0 0 0)) +;;;### (autoloads nil "paradox" "paradox.el" (23994 46387 773446 +;;;;;; 457000)) ;;; Generated autoloads from paradox.el (autoload 'paradox-list-packages "paradox" "\ @@ -44,6 +42,11 @@ not prevent downloading the actual packages (obviously). \(fn &optional NO-FETCH)" t nil) +(autoload 'paradox-enable "paradox" "\ +Enable paradox, overriding the default package-menu. + +\(fn)" t nil) + (autoload 'paradox-require "paradox" "\ Like `require', but also install FEATURE if it is absent. FILENAME is passed to `require'. @@ -61,49 +64,11 @@ empty. Passing a non-nil REFRESH argument forces this update. \(fn FEATURE &optional FILENAME NOERROR PACKAGE REFRESH)" nil nil) -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "paradox" '("paradox-"))) - -;;;*** - -;;;### (autoloads nil "paradox-commit-list" "paradox-commit-list.el" -;;;;;; (0 0 0 0)) -;;; Generated autoloads from paradox-commit-list.el - -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "paradox-commit-list" '("paradox-"))) - -;;;*** - -;;;### (autoloads nil "paradox-core" "paradox-core.el" (0 0 0 0)) -;;; Generated autoloads from paradox-core.el - -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "paradox-core" '("paradox-"))) - -;;;*** - -;;;### (autoloads nil "paradox-execute" "paradox-execute.el" (0 0 -;;;;;; 0 0)) -;;; Generated autoloads from paradox-execute.el - -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "paradox-execute" '("paradox-"))) - -;;;*** - -;;;### (autoloads nil "paradox-github" "paradox-github.el" (0 0 0 -;;;;;; 0)) -;;; Generated autoloads from paradox-github.el - -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "paradox-github" '("paradox-"))) - -;;;*** - -;;;### (autoloads nil "paradox-menu" "paradox-menu.el" (0 0 0 0)) -;;; Generated autoloads from paradox-menu.el - -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "paradox-menu" '("paradox-"))) - ;;;*** -;;;### (autoloads nil nil ("paradox-pkg.el") (0 0 0 0)) +;;;### (autoloads nil nil ("paradox-commit-list.el" "paradox-core.el" +;;;;;; "paradox-execute.el" "paradox-github.el" "paradox-menu.el" +;;;;;; "paradox-pkg.el") (23994 46387 774569 56000)) ;;;*** @@ -111,6 +76,5 @@ empty. Passing a non-nil REFRESH argument forces this update. ;; version-control: never ;; no-byte-compile: t ;; no-update-autoloads: t -;; coding: utf-8 ;; End: ;;; paradox-autoloads.el ends here diff --git a/elpa/paradox-20181027.2234/paradox-commit-list.el b/elpa/paradox-20191011.1111/paradox-commit-list.el similarity index 95% rename from elpa/paradox-20181027.2234/paradox-commit-list.el rename to elpa/paradox-20191011.1111/paradox-commit-list.el index 37dd898a..a03b9ce7 100644 --- a/elpa/paradox-20181027.2234/paradox-commit-list.el +++ b/elpa/paradox-20191011.1111/paradox-commit-list.el @@ -81,6 +81,13 @@ nil means `default'.") (defvar-local paradox--package-tag-commit-alist nil "Alist of (COMMIT-SHA . TAG) for this package's repo.") +(define-button-type 'paradox-commit + 'action #'paradox-commit-list-visit-commit + 'follow-link t) + +;; Use `font-lock-face' on creation instead. +(button-type-put 'paradox-commit 'face nil) + ;;; Functions (defun paradox--get-tag-commit-alist (repo) @@ -150,11 +157,10 @@ nil means `default'.") ,@x) ;; The actual displayed data (vector - (propertize (format-time-string paradox-date-format date) - 'button t - 'follow-link t - 'action 'paradox-commit-list-visit-commit - 'face (or paradox--commit-message-face 'link)) + (make-text-button + (format-time-string paradox-date-format date) nil + 'type 'paradox-commit + 'font-lock-face (or paradox--commit-message-face 'button)) (concat (if (> cc 0) (propertize (format "(%s comments) " cc) 'face 'font-lock-function-name-face) diff --git a/elpa/paradox-20181027.2234/paradox-core.el b/elpa/paradox-20191011.1111/paradox-core.el similarity index 93% rename from elpa/paradox-20181027.2234/paradox-core.el rename to elpa/paradox-20191011.1111/paradox-core.el index 94ef5b88..0a043f5c 100644 --- a/elpa/paradox-20181027.2234/paradox-core.el +++ b/elpa/paradox-20191011.1111/paradox-core.el @@ -107,12 +107,12 @@ Record that in `paradox--backups', but do nothing if ;;; Pre 25.1 support -(declare-function paradox--update-downloads-in-progress "paradox-menu") -(if (fboundp 'package--update-downloads-in-progress) - (defun paradox--update-downloads-in-progress (&optional name) - (when name - (package--update-downloads-in-progress name))) - (defalias 'paradox--update-downloads-in-progress #'ignore)) +(defun paradox--update-downloads-in-progress (&optional name) + (if (and name (fboundp 'package--update-downloads-in-progress)) + (package--update-downloads-in-progress name) + (when (bound-and-true-p package--downloads-in-progress) + (setq package--downloads-in-progress + (remove name package--downloads-in-progress))))) (define-obsolete-function-alias 'paradox--pdate-downloads-in-progress 'paradox--update-downloads-in-progress diff --git a/elpa/paradox-20181027.2234/paradox-execute.el b/elpa/paradox-20191011.1111/paradox-execute.el similarity index 100% rename from elpa/paradox-20181027.2234/paradox-execute.el rename to elpa/paradox-20191011.1111/paradox-execute.el diff --git a/elpa/paradox-20181027.2234/paradox-github.el b/elpa/paradox-20191011.1111/paradox-github.el similarity index 96% rename from elpa/paradox-20181027.2234/paradox-github.el rename to elpa/paradox-20191011.1111/paradox-github.el index 8c3a30bc..b1aae113 100644 --- a/elpa/paradox-20181027.2234/paradox-github.el +++ b/elpa/paradox-20191011.1111/paradox-github.el @@ -253,6 +253,13 @@ Leave point at the return code on the first line." (defvar paradox--github-next-page nil) +(defun paradox--https-proxy () + "Get https proxy if url-proxy-services has been defined." + (if (and (boundp 'url-proxy-services) + (assoc "https" url-proxy-services)) + (cdr (assoc "https" url-proxy-services)) + "")) + (defmacro paradox--with-github-buffer (method action async unwind-form &rest body) "Run BODY in a Github request buffer. @@ -293,7 +300,9 @@ value." (set-process-sentinel (apply #'start-process "paradox-github" (generate-new-buffer "*Paradox http*") - "curl" "-s" "-i" "-d" "" "-X" ,method ,action + "curl" + "-x" (paradox-https-proxy) + "-s" "-i" "-d" "" "-X" ,method ,action (when (stringp paradox-github-token) (list "-u" (concat paradox-github-token ":x-oauth-basic")))) ,call-name) @@ -302,7 +311,9 @@ value." ;; Make the request. (condition-case nil (apply #'call-process - "curl" nil t nil "-s" "-i" "-d" "" "-X" ,method ,action + "curl" nil t nil + "-x" (paradox--https-proxy) + "-s" "-i" "-d" "" "-X" ,method ,action (when (stringp paradox-github-token) (list "-u" (concat paradox-github-token ":x-oauth-basic")))) (error ,unwind-form)) diff --git a/elpa/paradox-20181027.2234/paradox-menu.el b/elpa/paradox-20191011.1111/paradox-menu.el similarity index 95% rename from elpa/paradox-20181027.2234/paradox-menu.el rename to elpa/paradox-20191011.1111/paradox-menu.el index aef469a3..550d92e7 100644 --- a/elpa/paradox-20181027.2234/paradox-menu.el +++ b/elpa/paradox-20191011.1111/paradox-menu.el @@ -23,6 +23,7 @@ ;;; Code: (require 'cl-lib) +(require 'cus-edit) (require 'package) (require 'subr-x) (require 'hydra) @@ -192,6 +193,19 @@ This button takes you to the package's homepage." (defvar paradox--commit-list-buffer "*Package Commit List*") +(define-button-type 'paradox-name + 'action #'package-menu-describe-package + 'follow-link t) + +(define-button-type 'paradox-homepage + 'action #'paradox-menu-visit-homepage + 'follow-link t + 'mouse-face 'custom-button-mouse) + +;; Use `font-lock-face' on creation instead. +(button-type-put 'paradox-name 'face nil) +(button-type-put 'paradox-homepage 'face nil) + ;;; Building the packages buffer. (defun paradox-refresh-upgradeable-packages () @@ -223,26 +237,22 @@ Return (PKG-DESC [STAR NAME VERSION STATUS DOC])." (push (cons :stars counts) (package-desc-extras pkg-desc)))) (list pkg-desc `[,(concat - (truncate-string-to-width - (propertize name - 'font-lock-face 'paradox-name-face - 'button t - 'follow-link t - 'help-echo (format "Package: %s" name) - 'package-desc pkg-desc - 'action 'package-menu-describe-package) - (- paradox-column-width-package button-length) 0 nil t) + (make-text-button + (truncate-string-to-width + name (- paradox-column-width-package button-length) 0 nil t) + nil + 'type 'paradox-name + 'font-lock-face 'paradox-name-face + 'help-echo (concat "Package: " name) + 'package-desc pkg-desc) (when (and paradox-use-homepage-buttons url) (make-string (max 0 (- paradox-column-width-package name-length button-length)) ?\s)) (when (and paradox-use-homepage-buttons url) - (propertize paradox-homepage-button-string - 'font-lock-face 'paradox-homepage-button-face - 'mouse-face 'custom-button-mouse - 'help-echo (format "Visit %s" url) - 'button t - 'follow-link t - 'keymap '(keymap (mouse-2 . push-button)) - 'action #'paradox-menu-visit-homepage))) + (make-text-button + (copy-sequence paradox-homepage-button-string) nil + 'type 'paradox-homepage + 'font-lock-face 'paradox-homepage-button-face + 'help-echo (format "Visit %s" url)))) ,(propertize (package-version-join (package-desc-version pkg-desc)) 'font-lock-face face) @@ -498,7 +508,7 @@ Letters do not insert themselves; instead, they are commands. (paradox--update-mode-line) (setq tabulated-list-format `[("Package" ,paradox-column-width-package package-menu--name-predicate) - ("Version" ,paradox-column-width-version nil) + ("Version" ,paradox-column-width-version paradox--version-predicate) ("Status" ,paradox-column-width-status package-menu--status-predicate) ,@(paradox--archive-format) ,@(paradox--count-format) @@ -543,7 +553,19 @@ Defines a function called paradox-sort-by-NAME." (paradox--define-sort "Package") (paradox--define-sort "Status") (paradox--define-sort paradox--column-name-star "*") +(paradox--define-sort "Version") (declare-function paradox-sort-by-package "paradox-menu") +(declare-function paradox-sort-by-version "paradox-menu") + +(defun paradox--version-predicate (package-a package-b) + "Predicate for sorting by the Version column. +Versions are compared semantically in descending order." + (let ((a (package-desc-version (car package-a))) + (b (package-desc-version (car package-b)))) + (cond ((version-list-= a b) + (package-menu--name-predicate package-a package-b)) + (t + (version-list-< b a))))) (defalias 'paradox-filter-clear #'package-show-package-list "Clear current Package filter. @@ -704,7 +726,8 @@ Status: _i_nstalled _a_vailable _d_ependency _b_uilt-in ("Sort Package List" ["By Package Name" paradox-sort-by-package] ["By Status (default)" paradox-sort-by-status] - ["By Number of Stars" paradox-sort-by-★]) + ["By Number of Stars" paradox-sort-by-★] + ["By Version" paradox-sort-by-version]) ["Hide by Regexp" package-menu-hide-package :help "Permanently hide all packages matching a regexp"] ["Display Older Versions" package-menu-toggle-hiding :style toggle :selected (not package-menu--hide-packages) @@ -720,7 +743,7 @@ Status: _i_nstalled _a_vailable _d_ependency _b_uilt-in "Move to previous entry, which might not be the previous line. With prefix N, move to the N-th previous entry." (interactive "p") - (paradox-next-entry (- n)) + (paradox-next-entry (- (prefix-numeric-value n))) (forward-line 0) (forward-button 1)) @@ -728,9 +751,10 @@ With prefix N, move to the N-th previous entry." "Move to next entry, which might not be the next line. With prefix N, move to the N-th next entry." (interactive "p") - (dotimes (_ (abs n)) - (let ((d (cl-signum n))) - (forward-line (if (> n 0) 1 0)) + (setq n (prefix-numeric-value n)) + (let ((d (cl-signum n))) + (dotimes (_ (abs n)) + (forward-line (max d 0)) (if (eobp) (forward-line -1)) (forward-button d)))) @@ -751,9 +775,8 @@ With prefix N, move to the N-th previous package instead." (defun paradox-push-button () "Push button under point, or describe package." (interactive) - (if (get-text-property (point) 'action) - (call-interactively 'push-button) - (call-interactively 'package-menu-describe-package))) + (or (push-button) + (call-interactively #'package-menu-describe-package))) (defvar paradox--key-descriptors '(("next," "previous," "install," "delete," ("execute," . 1) "refresh," "help") diff --git a/elpa/paradox-20181027.2234/paradox-pkg.el b/elpa/paradox-20191011.1111/paradox-pkg.el similarity index 87% rename from elpa/paradox-20181027.2234/paradox-pkg.el rename to elpa/paradox-20191011.1111/paradox-pkg.el index fc718fb9..dc49617a 100644 --- a/elpa/paradox-20181027.2234/paradox-pkg.el +++ b/elpa/paradox-20191011.1111/paradox-pkg.el @@ -1,4 +1,4 @@ -(define-package "paradox" "20181027.2234" "A modern Packages Menu. Colored, with package ratings, and customizable." +(define-package "paradox" "20191011.1111" "A modern Packages Menu. Colored, with package ratings, and customizable." '((emacs "24.4") (seq "1.7") (let-alist "1.0.3") diff --git a/elpa/paradox-20181027.2234/paradox.el b/elpa/paradox-20191011.1111/paradox.el similarity index 96% rename from elpa/paradox-20181027.2234/paradox.el rename to elpa/paradox-20191011.1111/paradox.el index 2acb862e..7f3c5475 100644 --- a/elpa/paradox-20181027.2234/paradox.el +++ b/elpa/paradox-20191011.1111/paradox.el @@ -4,7 +4,7 @@ ;; Author: Artur Malabarba ;; URL: https://github.com/Malabarba/paradox -;; Version: 2.5.1 +;; Version: 2.5.4 ;; Keywords: package packages ;; Package-Requires: ((emacs "24.4") (seq "1.7") (let-alist "1.0.3") (spinner "1.7.3") (hydra "0.13.2")) ;; Prefix: paradox @@ -39,7 +39,7 @@ ;; * Shortcuts for package filtering: ;; * filters by regexp (`occur'); ;; * display only packages with upgrades; -;; * filters by keyword (Emacs 24.4 only). +;; * filters by keyword. ;; * `hl-line-mode' enabled by default. ;; * Display useful information on the mode-line and cleanup a bunch of ;; useless stuff. @@ -107,7 +107,7 @@ (require 'paradox-execute) (require 'paradox-menu) -(defconst paradox-version "2.5.1" "Version of the paradox.el package.") +(defconst paradox-version "2.5.4" "Version of the paradox.el package.") (defun paradox-bug-report () "Opens github issues page in a web browser. Please send any bugs you find. Please include your Emacs and paradox versions." @@ -150,16 +150,16 @@ for packages. (paradox-enable) (let ((is-25 (fboundp 'package--with-response-buffer))) (unless no-fetch - (if is-25 - (add-to-list 'package--downloads-in-progress 'paradox--data) + (unless is-25 (paradox--refresh-remote-data))) (package-list-packages no-fetch) (unless no-fetch + (when is-25 + (add-to-list 'package--downloads-in-progress 'paradox--data) + (paradox--refresh-remote-data)) (when (stringp paradox-github-token) (paradox--refresh-user-starred-list - (bound-and-true-p package-menu-async))) - (when is-25 - (paradox--refresh-remote-data)))))) + (bound-and-true-p package-menu-async))))))) ;;;###autoload (defun paradox-upgrade-packages (&optional no-fetch) @@ -181,6 +181,7 @@ not prevent downloading the actual packages (obviously)." (package-menu-mark-upgrades) (paradox-menu-execute 'noquery))) +;;;###autoload (defun paradox-enable () "Enable paradox, overriding the default package-menu." (interactive) -- 2.47.3