clj -M:repl
./bin/run-unittests
or ./bin/run-unittests --watch
./bin/run-integrationtests
(Docker needed)TIMBRE_LEVEL=':info' clj -M:benchmark run
mvn compile
clj -M:build
Check the formatting:
clj -M:format
or fix the formatting:
clj -M:ffix
clj -M:deploy
To create a snapshot of Datahike and upload it to Clojars the version in
pom.xml
needs to end on -SNAPSHOT. Snapshots can and will be overwritten
if a snapshot with the current version is already present. There is no easy way
to recognize that there is a new snapshot available on Clojars.
A snapshot in Datahike is created by committing/merging on and pushing to the
development branch. Then the snapshot gets validated. This means the version
string from pom.xml
is extracted and it needs to end on -SNAPSHOT and
the current branch needs to be development. Only then a snapshot gets released
to Clojars.
To create a release of Datahike and upload it to Clojars the version in pom.xml
needs to be incremented at the respective position. Then you can commit and push the
current version to GitHub. CircleCI will then run unit and integration tests and build
this version of Datahike. When this succeeds it releases the new version to Clojars
only if the version string does not end on -SNAPSHOT and the current branch is
master.
The deployment to Clojars will fail if this version is already present on Clojars. It is not possible to overwrite a release, only snapshots can be overwritten.
On CircleCI unit and integration tests are run. Afterwards, Datahike is being compiled and
released. The official CircleCI jdk-8 image is used and the secret key to release to
Clojars needs to be stored as an environment variable on CircleCI. There needs to be a
variable CLOJARS_USERNAME
set to your Clojars username and a variable CLOJARS_PASSWORD
set
to the token that permits to deploy on clojars.
Make sure the versions of dependencies declared in deps.edn and pom.xml match.
Set the new version in pom.xml.
Create the PR and ask for it to be merged to the development branch.
Once approved, merge the PR to dev.
Repeat the above process for the other PRs to be released.
Optional: ideally try to import the new jar into a project and test that it works.
Create a new branch for the release called e.g. 'Release v0.3.6'
Create a PR with the new release branch with 'master' as target.
Once approved, merge the PR to master.
Test the new jar (e.g. using in a real project).
Create a new release/tag on GitHub https://github.com/replikativ/datahike/releases
Can you improve this documentation? These fine people already did:
Timo Kramer, Judith & Chrislain RazafimahefaEdit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close