Hi Stefan, On 10/24/22 15:51, Stefan Monnier wrote: > Hmm... this seems to clearly point to a bug in `elpa-admin.el`. > > I wonder how we end up generating a `ement-pkg.el` that contains this > Git revision id, with a `0.4` version, the correct files, but the wrong > set of requires. > > [... reading the code...] > > Hmm... it looks like we get most of the metadata for `-pkg.el` from > the HEAD before we select the actual revision from which we'll build the > tarball :-( > > This is ugly. It probably messed up several existing tarballs, actually > (just in a way sufficiently "harmless" that noone complained loudly > enough yet). Well, it's good that it was finally discovered. :) >> Aside: This is one way in which MELPA is a bit easier to work with: although >> MELPA Stable is generally not recommended for use (due to various issues), >> it builds packages from version tags rather than git master (regular MELPA >> builds from git master); if ELPA worked the same way, I could easily tag >> a v0.4.1 independently of what's on the master branch. > > We can actually do something similar currently by adding > a `:version-map` in the `elpa-packages` spec to make a release > from an arbitrary Git commit (it's better avoided but was introduced to > handle cases where the upstream doesn't have any `Version:` header, as > well as to allow building a new tarball with a different version number > in case the original build was broken for some reason, as in our case). > >> Given that, would it be possible to have ELPA build from a separate branch? >> That's how I organize some of my other packages, with a "stable" branch and >> a master branch. If ELPA pulled from a "stable" branch, I could push a fix >> to that while the next major version is still in development. > > We can also do that, yes, using the `:release-branch`. Okay, that sounds good to me. Please see the attached patch to elpa-packages, which sets the release-branch to "stable". I've already pushed such a branch to the repo, at the v0.4 commit. Will this patch cause the package to be rebuilt for v0.4, or do I need to make a v0.4.1 release to trigger that? Thanks, Adam