-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Please add semi.el so we can continue to distribute this on Melpa #30
Comments
I've not been able to find about it in the document. Where is it described? And, if it is MELPA's own requirement, could you tell me why MELPA requires
AFAIK, neither
I don't like to keep such meaningless file for only one unofficial package system. I hope you resolve the issue within your package system. If you won't accept |
I believe it is here - https://github.com/melpa/melpa/blob/master/CONTRIBUTING.org#create-a-recipe-file - re: "The filename should match the name of the package’s provided feature." which I realize is a technically a bit different, but if a package is aligned with all of our (present-day) checks and balances then this is equivalent. I can see that semi was merged back in 2014.
On a quick glance, renaming the package name to |
@ikazuhiro I'll reply later today.
@riscy They asked for "official" rules, but these are the rules of the "unofficial package |
You are right, there exist more packages that lack a library whose name matches the name of the package. Shortly after opening this issue, I realized that the claim that this is the only such package cannot be true, not least because I remembered specifically that multiple packages from the wanderlust project don't do so. So I ran a reliable test on all packages currently available on Melpa, and this revealed that there are seven packages which don't provide the matching library. Four under your control and three others. This is out of a total of 5836 packages on Melpa. I have high confidence in the accuracy of this test. I then proceeded to open issues for the three other packages. The maintainers of two of those responded very quickly and positively, so I concentrated on those and forgot to come back here and correct my earlier statement. The maintainer of the last package hasn't responded yet. So now only 0.085% of package on Melpa do not provide the matching library. IMO it is thus safe to say that the practice of providing the matching library is nearly universally followed.
I also was unable to find anything about this in Preparing Lisp code for distribution in the elisp manual. However, from that does not automatically follow that the authors of that document do not agree that every package should/must provide such a file. It is IMO more likely that it just did not occur to them that this is something that would have to be mentioned, since they had never seen a package that did not do so. Also note that the The elisp manual mentions It is possible that originally the intention was for that file to be included in upstream repository and serve as a source of metadata from the perspective of the package archive maintenance tool, not just from the perspective of But if that is the case, then that is a practice that, over a decade ago, stopped being the intended way of providing metadata.
MELPA and its Only few package authors actively take advantage of this and provide metadata in that file that in the absent from For these two reason ((1) Contacting you, and the three other package maintainers who still don't include
Above I have tried to make the point that it is actually MELPA which is the only ELPA that still is able to build a package if In other words, this is very much not "MELPA's own requirement".
Changing the name of packages is problematic. Potential future users may for example have heard about Renaming a package that isn't directly used by end-users, but is depended upon by other packages, is also problematic. If, for example, we renamed This would only work for the "snapshot" version of these packages. Releases (i.e., what is distributed on MELPA Stable) would be broken until both the package-formerly-known-as-semi and the dependant package had new releases. Thanks for giving my proposal a second change! |
/cc @riscy
Melpa requires that packages contain a library that matches the name of the package. I.e., in the case of the
semi
package, the librarysemi.el
MUST exist.I suggested that you do that all the way back in 2017, in #16, which I closed after waiting for a response for a few months. Please see that pull-request for the minimal-viable approach to satisfying Melpa's requirement.
I am currently improving
package-build.el
, the tool used to build the packages distributed on Melpa. In the process I am tightening enforcement of some requirements, such as the one at hand.semi
is the only package on Melpa which violates this requirement. I do not intend to keep a special-case inpackage-build.el
just for this one package.So please add the
semi.el
file.The text was updated successfully, but these errors were encountered: