Skip to content

Commit

Permalink
Bump :core
Browse files Browse the repository at this point in the history
Fuco1/smartparens@7f5825d -> Fuco1/smartparens@63695c6
bbatsov/projectile@d1cfad0 -> bbatsov/projectile@c31bd41
domtronn/all-the-icons.el@6917b08 -> domtronn/all-the-icons.el@9aa16ae
iqbalansari/restart-emacs@e570749 -> iqbalansari/restart-emacs@1607da2
jscheid/dtrt-indent@a7ade6d -> jscheid/dtrt-indent@854b9a1
justbur/emacs-which-key@ca268fd -> justbur/emacs-which-key@428aedf
jwiegley/use-package@caa92f1 -> jwiegley/use-package@365c73d
radian-software/straight.el@3277e1c -> radian-software/straight.el@a32c97c

+ Closes #4513
+ Fixes (wrong-number-of-arguments (3 . 4) 2) error for users on Emacs
  HEAD (see bbatsov/projectile#1635).
+ package! :build semantics have changed due to upstream changes. What
  was :build is now :pre-build. What was :no-build is now :build nil.
+ Now we must be careful not to auto-disable the "use-package" psuedo
  theme. It is used as a place to store :custom assignments without them
  being saved to custom.el.
  • Loading branch information
hlissner committed Jan 9, 2021
1 parent c8bfbda commit cfb8a86
Show file tree
Hide file tree
Showing 6 changed files with 59 additions and 32 deletions.
18 changes: 12 additions & 6 deletions core/autoload/packages.el
Expand Up @@ -13,18 +13,24 @@
;;
;;; Bump commands

(defun doom--package-full-recipe (package plist)
(defun doom--package-merge-recipes (package plist)
(require 'straight)
(doom-plist-merge
(plist-get plist :recipe)
(or (cdr (straight-recipes-retrieve package))
(plist-get (cdr (assq package doom-packages))
:recipe))))
(if-let (recipe (straight-recipes-retrieve package))
(cdr (if (memq (car recipe) '(quote \`))
(eval recipe t)
recipe))
(let ((recipe (plist-get (cdr (assq package doom-packages))
:recipe)))
(if (keywordp (car recipe))
recipe
(cdr recipe))))))

(defun doom--package-to-bump-string (package plist)
"Return a PACKAGE and its PLIST in 'username/repo@commit' format."
(format "%s@%s"
(plist-get (doom--package-full-recipe package plist) :repo)
(plist-get (doom--package-merge-recipes package plist) :repo)
(substring-no-properties (plist-get plist :pin) 0 7)))

(defun doom--package-at-point (&optional point)
Expand Down Expand Up @@ -78,7 +84,7 @@ Grabs the latest commit id of the package using 'git'."
(cl-destructuring-bind (&key package plist beg end)
(or (doom--package-at-point)
(user-error "Not on a `package!' call"))
(let* ((recipe (doom--package-full-recipe package plist))
(let* ((recipe (doom--package-merge-recipes package plist))
(branch (plist-get recipe :branch))
(oldid (or (plist-get plist :pin)
(doom-package-get package :pin)))
Expand Down
25 changes: 17 additions & 8 deletions core/cli/packages.el
Expand Up @@ -335,17 +335,26 @@ declaration) or dependency thereof that hasn't already been."
(doom--with-package-recipes recipes (package local-repo recipe)
(unless force-p
;; Ensure packages with outdated files/bytecode are rebuilt
(let ((build-dir (straight--build-dir package))
(repo-dir (straight--repos-dir local-repo)))
(and (not (plist-get recipe :no-build))
(let* ((build-dir (straight--build-dir package))
(repo-dir (straight--repos-dir local-repo))
(build (plist-get recipe :build))
(want-byte-compile
(or (eq build t)
(memq 'compile build)))
(want-native-compile
(and (or (eq build t)
(memq 'native-compile build))
(require 'comp nil t))))
(when (eq (car build) :not)
(setq want-byte-compile (not want-byte-compile)
want-native-compile (not want-native-compile)))
(and (or want-byte-compile want-native-compile)
(or (file-newer-than-file-p repo-dir build-dir)
(file-exists-p (straight--modified-dir (or local-repo package)))
(cl-loop with want-byte = (straight--byte-compile-package-p recipe)
with want-native = (if (require 'comp nil t) (straight--native-compile-package-p recipe))
with outdated = nil
(cl-loop with outdated = nil
for file in (doom-files-in build-dir :match "\\.el$" :full t)
if (or (if want-byte (doom--elc-file-outdated-p file))
(if want-native (doom--eln-file-outdated-p file)))
if (or (if want-byte-compile (doom--elc-file-outdated-p file))
(if want-native-compile (doom--eln-file-outdated-p file)))
do (setq outdated t)
(when want-native
(push file doom--eln-output-expected))
Expand Down
19 changes: 15 additions & 4 deletions core/core-packages.el
Expand Up @@ -235,7 +235,12 @@ processed."

(defun doom-package-recipe (package &optional prop nil-value)
"Returns the `straight' recipe PACKAGE was registered with."
(let ((plist (gethash (symbol-name package) straight--recipe-cache)))
(let* ((recipe (straight-recipes-retrieve package))
(plist (doom-plist-merge
(plist-get (alist-get package doom-packages) :recipe)
(cdr (if (memq (car recipe) '(quote \`))
(eval recipe t)
recipe)))))
(if prop
(if (plist-member plist prop)
(plist-get plist prop)
Expand All @@ -244,8 +249,14 @@ processed."

(defun doom-package-recipe-repo (package)
"Resolve and return PACKAGE's (symbol) local-repo property."
(if-let* ((recipe (cdr (straight-recipes-retrieve package)))
(repo (straight-vc-local-repo-name recipe)))
(if-let* ((recipe (copy-sequence (doom-package-recipe package)))
(recipe (if (and (not (plist-member recipe :type))
(memq (plist-get recipe :host) '(github gitlab bitbucket)))
(plist-put recipe :type 'git)
recipe))
(repo (if-let (local-repo (plist-get recipe :local-repo))
(file-name-nondirectory (directory-file-name local-repo))
(ignore-errors (straight-vc-local-repo-name recipe)))))
repo
(symbol-name package)))

Expand Down Expand Up @@ -482,7 +493,7 @@ elsewhere."
(when-let (recipe (plist-get plist :recipe))
(cl-destructuring-bind
(&key local-repo _files _flavor
_no-build _build _post-build _no-byte-compile
_build _pre-build _post-build _no-byte-compile
_no-native-compile _no-autoloads _type _repo _host _branch
_remote _nonrecursive _fork _depth)
recipe
Expand Down
4 changes: 2 additions & 2 deletions core/core-ui.el
Expand Up @@ -629,7 +629,7 @@ behavior). Do not set this directly, this is let-bound in `doom-init-theme-h'.")
;; `load-theme' doesn't disable previously enabled themes, which seems
;; like what you'd want. You could always use `enable-theme' to activate
;; multiple themes instead.
(mapc #'disable-theme (remq theme custom-enabled-themes))
(mapc #'disable-theme (remq theme (remq 'use-package custom-enabled-themes)))
(run-hooks 'doom-load-theme-hook))
result)))

Expand All @@ -641,7 +641,7 @@ behavior). Do not set this directly, this is let-bound in `doom-init-theme-h'.")
"Disable other themes when loading a new one."
:before #'load-theme
(unless no-enable
(mapc #'disable-theme custom-enabled-themes)))
(mapc #'disable-theme (remq 'use-package custom-enabled-themes))))

;; DEPRECATED Not needed in Emacs 27
(defadvice! doom--prefer-compiled-theme-a (orig-fn &rest args)
Expand Down
16 changes: 8 additions & 8 deletions core/packages.el
Expand Up @@ -17,26 +17,26 @@
:branch ,straight-repository-branch
:local-repo "straight.el"
:files ("straight*.el"))
:pin "3277e1c9648b41dd5bfb239c067b8374ed2ec2bb")
:pin "a32c97cb427b7f14dfd066f36a58d1740e20ed69")

;; core-modules.el
(package! use-package
:type 'core
:pin "caa92f1d64fc25480551757d854b4b49981dfa6b")
:pin "365c73d2618dd0040a32c2601c5456ab5495b812")

;; core-ui.el
(package! all-the-icons :pin "6917b08f64dd8487e23769433d6cb9ba11f4152f")
(package! all-the-icons :pin "9aa16ae198073fe839a0abfa9a7d3a9dc85ef5f9")
(package! hide-mode-line :pin "88888825b5b27b300683e662fa3be88d954b1cea")
(package! highlight-numbers :pin "8b4744c7f46c72b1d3d599d4fb75ef8183dee307")
(package! rainbow-delimiters :pin "f43d48a24602be3ec899345a3326ed0247b960c6")
(package! restart-emacs :pin "e5707491d7ac20879465bb52e282ad1416748378")
(package! restart-emacs :pin "1607da2bc657fe05ae01f7fdf26f716eafead02c")

;; core-editor.el
(package! better-jumper :pin "e3a6546aa626b9a79ae451c88f44cf26f9d1a919")
(package! dtrt-indent :pin "a7ade6d244eeeda2ada9f7eca565491cea4b622a")
(package! dtrt-indent :pin "854b9a1ce93d9926018a0eb18e6e552769c5407d")
(package! helpful :pin "584ecc887bb92133119f93a6716cdf7af0b51dca")
(package! pcre2el :pin "0b5b2a2c173aab3fd14aac6cf5e90ad3bf58fa7d")
(package! smartparens :pin "7f5825dd655942c3d56d14acabab1ffab1aa2ae2")
(package! smartparens :pin "63695c64233d215a92bf08e762f643cdb595bdd9")
(package! so-long
:built-in 'prefer ; included in Emacs 27+
;; REVIEW so-long is slated to be published to ELPA eventually, but until then
Expand All @@ -51,8 +51,8 @@
:pin "2bb49d3ee7d2cba133bc7e9cdac416cd1c5e4fe0")

;; core-projects.el
(package! projectile :pin "d1cfad008b1719a6bee17fbe9479db414c0dc5d9")
(package! projectile :pin "c31bd41c0b9d6fba8837ebfd3a31dec0b3cd73c6")

;; core-keybinds.el
(package! general :pin "a0b17d207badf462311b2eef7c065b884462cb7c")
(package! which-key :pin "ca268fd313d3fb2bd03a8b5e4bdcca675ce58ca7")
(package! which-key :pin "428aedfce0157920814fbb2ae5d00b4aea89df88")
9 changes: 5 additions & 4 deletions modules/lang/org/packages.el
Expand Up @@ -14,10 +14,11 @@
;; root. Of course, this command won't work in a sparse clone,
;; and more than that, initiating these compilation step is a
;; hassle, so...
:build (with-temp-file (expand-file-name "org-version.el" (straight--repos-dir "org-mode"))
(insert "(fset 'org-release (lambda () \"9.5\"))\n"
"(fset 'org-git-version #'ignore)\n"
"(provide 'org-version)\n")))
:pre-build
(with-temp-file (expand-file-name "org-version.el" (straight--repos-dir "org-mode"))
(insert "(fset 'org-release (lambda () \"9.5\"))\n"
"(fset 'org-git-version #'ignore)\n"
"(provide 'org-version)\n")))
:pin "7c8dce72bd5d86157dd1dda2ba0a21ac86084426"
;; Prevents built-in Org from sneaking into the byte-compilation of
;; `org-plus-contrib', and inform other packages that `org-mode' satisfies the
Expand Down

0 comments on commit cfb8a86

Please sign in to comment.