-
Notifications
You must be signed in to change notification settings - Fork 68
Release Checklist
Mike Fikes edited this page Mar 24, 2024
·
53 revisions
First ensure that updated build cache is uploaded to planck-repl.org server.
- Update version in
planck-c/globals.h
- Update date (and potentially copyright date) in
planck-man/planck.1
- Update
CHANGELOG.md
- Update
README.md
with any changes pertinent to the release (new fn links, etc.)
- Make pre-release & tag in GitHub
- Do
brew bump-formula-pr
:
First, do brew update
.
Then, in GitHub make a Personal Access Token with Workflow scope and set it
export HOMEBREW_GITHUB_API_TOKEN=xxxxx
Then run from arbitrary directory:
brew bump-formula-pr --url=https://github.com/planck-repl/planck/archive/refs/tags/2.28.0.tar.gz planck
If this results in a conflict like
<<<<<<< bump-planck-2.28.0
=======
revision 3
>>>>>>> master
then remove the revision
line. (The revision
line is used when making changes that need to trigger a rebuild of the package without changing the software version.) Note that this cannot be done via a merge, but needs to be a force-push change.
Instructions in ubuntu-ppa
repo.
- Update the top-level
project.clj
with the release version number. - Check that the dependencies listed in
project.clj
are up-to-date. - Confirm that
doc/cljdoc.edn
is accuarate - In local tree, manually comment out the
(:require ...)
spec in theplanck.bundle
ns. (It has a foreign lib synthetic namespace that cannot be found by Codox in CljDoc.) See https://github.com/planck-repl/planck/issues/932 and https://github.com/cljdoc/cljdoc/issues/297 - In the local tree, comment out
(extend-protocol s/Specize ...
in theplanck.repl
ns. (It usesfn-sym
which is only in a newer version of ClojureScript than used by CljDoc when analyzing.) See https://github.com/cljdoc/cljdoc/issues/298 - Since there is only one chance to get this right, it is worth testing using a local copy of cljdoc. See https://cljdoc.org/d/cljdoc/cljdoc/CURRENT/doc/running-cljdoc-locally
- Note, there might be a Catch-22 here, where all of this needs to be sorted and corrected before actually doing the tagged release. (Or perhaps not, if sufficient info is in the JAR.)
lein deploy clojars