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
Tag and release a version? #15
Comments
@MIvanchev, hi. What package system you maintain the package for? |
I'm about to package for Void Linux in order to release StumpWM (eventually). |
@MIvanchev, I've changed the version in .asd files to 2.1. Anything else? I am just not aware how versioning works for VoidLinux and other package managers. Can't the git commit id be used for versioning, as Quicklisp does? |
Привет, yes, it'd be great to make a Github release that tags the current commit to 2.1. so no other commit is 2.1.
It could but there has to be clear understanding that this is a release version aka. something that is usable and not intermediate. Generally most packages use increasing numbers to propagate information in the fashion ... |
@MIvanchev, for trivial-gray-streams every push to a master branch is a release. That's fairly typical for common lisp libraries. Look:
Also, great idea by Quicklisp to use dates instead of commit sha. They are sequential, and formatted such that textual sorting results in ordered dates. And it's more informative than some abstract numbers like 2.1, 2.5. The date theoretically may be ambiguous, but as long as a package manager does not include two artifacts for the same date (of the same library), it's unique. Depending on one's taste, he could further disambiguate dates by having a policy that a date means the first commit for that date, or the last commit. Or just add a commit sha after the date. # generate package artifact name for the last commit,
# using the committer date and abbreviated hash
$ git log --format=format:trivial-gray-streams-git-%cs-%h HEAD^..HEAD
trivial-gray-streams-git-2024-02-17-a7ead68 The commit hash is probably an overkill, see yourself. Quicklisp, I think, uses the date of when it pulls the sources from git, not the commit date. You can also simply use Quicklisp tarballs and their names, if you don't need to package versions newer than in the latest Quicklisp release. Is that sufficient for you, given the release policy that any push to master branch is a release? Not that I avoid the way you suggested because I don't want to help. I just suspect it won't be really useful. |
Hey, thanks for taking the time! What is sufficient are up for the reviewers to decide when I submit MRs for packages. The scheme QuickLisp's doctrine on the other hand is not entirely correct because some packages in the list are proper versioned (I know because I'm about to release them): https://gitlab.common-lisp.net/alexandria/alexandria/-/tags |
@MIvanchev, I hope the BTW, if your goal is to create a package for StumpWM, do you really need packages for all the dependency CL libraries it uses? Couldn't your StumpWM package build scripts simply use Quicklisp to fetch the dependencies when building StumpWM binary? (As you know, I think, the script can refer specific Quicklisp version, so exactly the same versions of the dependencies would always be downloaded, repeatably). |
I've actually only used the date, you can check the template here. There's still no guarantee that it'll pass quality inspection by the maintainers. I'm closing the issue ASAP, thank you!
I was thinking the same thing but IMO the compiled binary still depends on the CL libraries at runtime. They are also included by Arch. It's also not that much about the versions, more about the checksums. We always auto-validate package checksums to make sure a version is not re-released with malware (or just as a bad practice). Ultimately, it's also easier for the user to just use the Void repository for packages. |
Hey, it'd be great for us package maintainers if there was an official version tagged and released. I see the ASD file says 2.0 but there were new commits since then so maybe you can release 2.1?
The text was updated successfully, but these errors were encountered: