Liking cljdoc? Tell your friends :D

Maintainers

This information is meant for project maintainers. You don't need it if you just want to use the library.

Structure

The code mostly follows the directory structure generated by deps-new after running:

clojure -Tnew lib :name geometric-algebra

Adding documentation

We would like to add more documentation, following the ideas in http://jacobian.org/writing/what-to-write/

Testing

We can run some tests with:

clojure -T:build test

or (faster) with babashka:

bb test

Building a JAR

To run the project's continuous integration (CI) pipeline and build a JAR file:

clojure -T:build ci

This will produce an updated pom.xml file with synchronized dependencies inside the META-INF directory inside target/classes and the JAR in target. We can update the version (and SCM tag) information in generated pom.xml by updating build.clj.

To install it locally (which requires the ci task be run first):

clojure -T:build install

Deployment

Before deploying, we normally want to tag the code with the new version (which we update in build.clj), as in:

git tag -a v1.0.0 -m  # and write a description
git push origin v1.0.0

Clojars

To deploy this library to Clojars, run the ci task first, then set the environment variables CLOJARS_USERNAME and CLOJARS_PASSWORD, and run:

clojure -T:build deploy

The library will be deployed to net.clojars.jordibc/geometric-algebra on clojars.org by default.

Codeberg

To create a new release on Codeberg, releases for the project must be enabled if they are not already (by going to the repository Settings -> Units -> Overview -> Enable repository releases). Then, in the repository page, we can go to the Releases tab, click on New release, select the tag with the version we want, and publish the release.

Finally, we normally edit readme.md and reflect the new tag and sha in the installation instructions.

Can you improve this documentation?Edit on Codeberg

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close