diff --git a/core/core-cli.el b/core/core-cli.el index a0fcba9d8..9b3f9a5ff 100644 --- a/core/core-cli.el +++ b/core/core-cli.el @@ -424,6 +424,18 @@ everywhere we use it (and internally)." cause) interactive))) +(defadvice! doom--straight-inject-load-path-a (orig-fn &rest args) + "Straight builds packages in an isolated Emacs child process, which means +needed packages may not be accessible when a package is compiled." + :override #'straight--build-compile + (let* ((package (plist-get recipe :package)) + (dir (straight--build-dir package))) + (call-process (concat invocation-directory invocation-name) + nil straight-byte-compilation-buffer nil + "-Q" "--batch" + "--eval" (prin1-to-string `(setq load-path (cons ,dir ',load-path))) + "--eval" (format "(byte-recompile-directory %S 0 'force)" dir)))) + ;; ;;; Entry point diff --git a/core/core-packages.el b/core/core-packages.el index 3f984c601..00bd0a05d 100644 --- a/core/core-packages.el +++ b/core/core-packages.el @@ -196,7 +196,7 @@ processed." (if disable (cl-pushnew name doom-disabled-packages) (when shadow - (straight-override-recipe (cons shadow '(:local-repo nil))) + (straight-override-recipe (cons shadow `(:local-repo nil :package included :build nil :included-by ,name))) (let ((site-load-path (copy-sequence doom--initial-load-path)) lib) (while (setq @@ -493,7 +493,7 @@ elsewhere." (when-let (recipe (plist-get plist :recipe)) (cl-destructuring-bind (&key local-repo _files _flavor - _build _pre-build _post-build _no-byte-compile + _build _pre-build _post-build _no-byte-compile _includes _no-native-compile _no-autoloads _type _repo _host _branch _remote _nonrecursive _fork _depth) recipe diff --git a/core/packages.el b/core/packages.el index e0e1d51a6..35280980c 100644 --- a/core/packages.el +++ b/core/packages.el @@ -17,7 +17,7 @@ :branch ,straight-repository-branch :local-repo "straight.el" :files ("straight*.el")) - :pin "a32c97cb427b7f14dfd066f36a58d1740e20ed69") + :pin "47dd03dc81207da598f007e0218e12a7cede0007") ;; core-modules.el (package! use-package @@ -25,14 +25,14 @@ :pin "365c73d2618dd0040a32c2601c5456ab5495b812") ;; core-ui.el -(package! all-the-icons :pin "9aa16ae198073fe839a0abfa9a7d3a9dc85ef5f9") +(package! all-the-icons :pin "050d4c5a20f686c67ec1fc5eda30481d5a23383e") (package! hide-mode-line :pin "88888825b5b27b300683e662fa3be88d954b1cea") (package! highlight-numbers :pin "8b4744c7f46c72b1d3d599d4fb75ef8183dee307") (package! rainbow-delimiters :pin "f43d48a24602be3ec899345a3326ed0247b960c6") (package! restart-emacs :pin "1607da2bc657fe05ae01f7fdf26f716eafead02c") ;; core-editor.el -(package! better-jumper :pin "5ef53fcee4e74f397c8d275679e5596b52582b57") +(package! better-jumper :pin "411ecdf6e7a3e1b4ced7605070d2309e5fc46556") (package! dtrt-indent :pin "854b9a1ce93d9926018a0eb18e6e552769c5407d") (package! helpful :pin "584ecc887bb92133119f93a6716cdf7af0b51dca") (package! pcre2el :pin "0b5b2a2c173aab3fd14aac6cf5e90ad3bf58fa7d") @@ -51,7 +51,7 @@ :pin "2bb49d3ee7d2cba133bc7e9cdac416cd1c5e4fe0") ;; core-projects.el -(package! projectile :pin "c31bd41c0b9d6fba8837ebfd3a31dec0b3cd73c6") +(package! projectile :pin "0e2620ad5cb236a64a2b4faa4c44a76a08a1cf08") ;; core-keybinds.el (package! general :pin "a0b17d207badf462311b2eef7c065b884462cb7c") diff --git a/modules/config/default/autoload/files.el b/modules/config/default/autoload/files.el index 33d6dc126..67a754803 100644 --- a/modules/config/default/autoload/files.el +++ b/modules/config/default/autoload/files.el @@ -45,9 +45,16 @@ If prefix ARG is non-nil, prompt for the search path." (interactive "P") (if arg (call-interactively #'projectile-discover-projects-in-directory) - (if projectile-project-search-path - (mapc #'projectile-discover-projects-in-directory projectile-project-search-path) - (user-error "`projectile-project-search-path' is empty; don't know where to search")))) + (if (not projectile-project-search-path) + (user-error "`projectile-project-search-path' is empty; don't know where to search") + (letf! (defun projectile-add-known-project (project-root) + (unless (projectile-ignored-project-p project-root) + (funcall projectile-add-known-project project-root) + (message "Added %S to known project roots"))) + (dolist (dir projectile-project-search-path) + (if (not (file-accessible-directory-p dir)) + (message "%S was inaccessible and couldn't searched") + (projectile-discover-projects-in-directory projectile-project-search-path))))))) ;;;###autoload (defun +default/dired (arg) diff --git a/modules/lang/python/packages.el b/modules/lang/python/packages.el index ef4b29aa9..081a2b26b 100644 --- a/modules/lang/python/packages.el +++ b/modules/lang/python/packages.el @@ -4,7 +4,7 @@ ;; Major modes (package! pip-requirements :pin "216cd1690f80cc965d4ae47b8753fc185f778ff6") (when (featurep! +cython) - (package! cython-mode :pin "21b4e533747507c4dad5e6908df1f157dff4de89") + (package! cython-mode :pin "17e03b8658a07b6d6da49300b39b57ed9c59ddb1") (when (featurep! :checkers syntax) (package! flycheck-cython :pin "ecc4454d35ab5317ab66a04406f36f0c1dbc0b76"))) @@ -12,21 +12,21 @@ (when (featurep! +lsp) (unless (featurep! :tools lsp +eglot) (if (featurep! +pyright) - (package! lsp-pyright :pin "d9e7d3cf1bdc8ee0395c8df4408b05ee3ba9c22a") - (package! lsp-python-ms :pin "c4ebc7a11398733055a1dc07f9cffacd04d1c2dc")))) + (package! lsp-pyright :pin "71ff088ac4c93b0edd012f305a3dfd1602c5d21e") + (package! lsp-python-ms :pin "5470ada6cde6e68fe6ce13ff1146c89c3bae0cc8")))) ;; Programming environment -(package! anaconda-mode :pin "39b1cf88c8c459901630d248d6135d8644075648") +(package! anaconda-mode :pin "b1875a5d0ec9885c1c42558c126b93ee6bcedaa6") (when (featurep! :completion company) (package! company-anaconda :pin "da1566db41a68809ef7f91ebf2de28118067c89b")) ;; Environment management -(package! pipenv :pin "b730bb509e8b60af9f5ab1f1e6c3458d1d95d789") -(package! pyvenv :pin "0bf4b87068e9040fc99afa85af1992247dd7aacd") +(package! pipenv :pin "f516a1a8677a6a1ce9683056e9f77b1e785e8431") +(package! pyvenv :pin "9b3678bc29192d2dba64df90fbdb17393ef8d877") (when (featurep! +pyenv) (package! pyenv-mode :pin "b818901b8eac0e260ced66a6a5acabdbf6f5ba99")) (when (featurep! +conda) - (package! conda :pin "9f7eea16e9ad3eb34fe3d1cbd9d6162b8046c2f8")) + (package! conda :pin "dce431b25f5a13af58cc7cacfa7968b5a888609c")) (when (featurep! +poetry) (package! poetry :pin "d5163fe065239bb7b46ed8b3ff3b85b1f3229af3")) @@ -35,7 +35,7 @@ ;; REVIEW Remove this when emacsmirror/epkgs updates its emacsattic index :recipe (:host github :repo "emacsattic/nose") :pin "f8528297519eba911696c4e68fa88892de9a7b72") -(package! python-pytest :pin "4a1c4c8915c12e540d41aae1d4e326a2362da541") +(package! python-pytest :pin "3fadf1f8bc363d57c54eedd1bf98e6d9db9f0a62") ;; Import managements (package! pyimport :pin "a6f63cf7ed93f0c0f7c207e6595813966f8852b9")