Closed ashton314 closed 11 months ago
[W]hen the new Emacs sessions pops up, the
master
branch of the racket-mode repo is what's checked out. I'd expect thehash-lang
branch to be checked out.
Thanks for taking the time to fill out a support ticket. There are a couple of details at play here.
First, the elpaca
macro takes the entire order as its first argument, and anything after that is considered part of the macro BODY
(which is executed after the order's queue is processed). So in the test case you provided, the order is racket-mode
. The rest of the args are evaluated later as part of the BODY
, and aren't being included in the package recipe.
To fix that, you'll want to wrap the recipe in a list:
(elpaca ( racket-mode
:host "github"
:repo "greghendershott/racket-mode"
:branch "hash-lang"))
Second, the :host
recipe keyword will insert its value verbatim in the URI if it is a string. Changing it to the symbol github
will do the right thing (adding "www.github.com" to the URI). I've added a note to the documentation to hopefully make that distinction a little clearer.
Here's a test case with both changes which should do the right thing:
elpaca | 2be8ac1 HEAD -> master, origin/master, origin/HEAD |
isntaller | 0.6 |
emacs | GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.38, cairo version 1.18.0) of 2023-11-02 |
git | git version 2.42.0 |
And your original test case modified with the above in mind:
(elpaca-test
:interactive t
:init (elpaca ( racket-mode
:host github
:repo "greghendershott/racket-mode"
:branch "hash-lang")))
Does that help?
I was totally holding it wrong—thanks for the help Nicholas!
Glad that helps. Thank you.
Confirmation
Elpaca Version
Operating System
macOS 14.1 (Sonoma)
Description
I'm running this:
But when the new Emacs sessions pops up, the
master
branch of the racket-mode repo is what's checked out. I'd expect thehash-lang
branch to be checked out. Am I holding this wrong?