Closed rads closed 2 years ago
One thing to keep in mind is that installers mentioned in the README should also be migrated to the new location.
Hmm, I think all packages rely on the script being in the root so maybe it's not a good idea to change this...
@borkdude:
Hmm, I think all packages rely on the script being in the root so maybe it's not a good idea to change this...
One option would be to have a GitHub Action on main
that would run bb gen-script && git add -f neil
on a separate branch, such as release
.
This means we could commit to main
without the script, but we would have to create tags off of the release
branch. I don't think this would require any changes to the packages since they would still use the same tag-based URL.
What do you think about this?
That's an interesting approach! I'd be open to that. I think what should also happen is a check that checks if the generated script still runs before we release.
Cool, I can start looking into this.
@rads I might have a slightly better idea. The neil script can simply be (babashka.deps/add-deps {:deps {org.babashka/neil {:git/url "..." :git/tag "..." :git/sha "..."}})
and then we can periodically update it.
@borkdude: I was originally thinking this might be a drawback because the neil
script would incur additional startup time after the brew install
. However, now I realize that we are already calling babashka.deps/add-deps
in prelude
so we are fetching network dependencies on the first run anyways. With that in mind, I think using a simple shim like you're suggesting is a good solution.
Yes, exactly. It doesn't matter that much. We could move the whole prelude to the neil script so we have only one add-deps call instead of two then.
Hm, o no wait, we could get rid of the prelude thing I think, since the deps would be in deps.edn already in the project.
See here: https://github.com/babashka/neil/pull/67#issuecomment-1203663690