Leiningen template for libraries with better release cycle.
lein new dryewo-lib me.dryewo/<lib_name>
REPO_OWNER/REPO_NAME in README.md with the real GitHub coordinates of the repo you'll be keeping this project in.
Among other improvements, the generated library uses an alternative release cycle:
- Version in project.clj is the latest release version. It's not decorated with
- When you release it, you decide which version you are releasing and run
lein release <segment>, where
<segment>is one of
lein releasementions of the version in README.md are updated to the current one.
- right now you have version "1.2.3" in your project.clj.
- That means that version "1.2.3" was released a while ago, and in the repository there are some new changes since that last release.
- You recall that you added a new nice feature that you want to release now, which means you'd like to release the current state of the codebase as "1.3.0".
- You probably edit CHANGELOG.md and describe the feature there, and commit it.
- You run
lein release :minor, and it does for you:
- Checks that there are no uncommitted changes
- Bumps the version in project.clj from "1.2.3" to "1.3.0"
- Replaces mentions of "1.2.3" in README.md with "1.3.0"
- Commits the changes
- Creates a tag "1.3.0"
- Uploads the JAR to Clojars
Copyright © 2018 Dmitrii Balakhonskii
Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.