Skip to content

clj-commons/rewrite-clj

Repository files navigation

rewrite-clj

cljdoc Unit Tests Libs Test Native Image Tests Code Coverage Join chat Clojars project bb built-in Contributors

A library that reads and writes Clojure, ClojureScript and EDN from Clojure and ClojureScript in a whitespace and comment preserving way.

Status

Rewrite-clj v1 has been successfully and widely adopted.

Used In…​

Some projects using rewrite-clj v1

  • ancient-clj 🐥 - Version Metadata Retrieval for Maven Artifacts

  • antq 🐥 - Point out your outdated dependencies

  • babashka 📍 - Native, fast starting Clojure interpreter for scripting

  • carve 🐥 - Carve out the essentials of your Clojure app

  • classpath 📍 - Classpath/classloader/deps.edn related utilities

  • clerk 🐥 - Local-First Notebooks for Clojure

  • clj-mergetool 🐥 - Smarter git mergetool for clojure and edn

  • cljfmt 🐥 - A tool for formatting Clojure code

  • cljstyle 🐥 - A tool for formatting Clojure code

  • clojure-lsp 🐥 - Language Server (LSP) for Clojure

  • duck-repled 📍 - Transform your REPL interation into Pathom queries

  • kit 📍 - Lightweight, modular framework for scalable web development in Clojure

  • kusonga 🐥 - Renaming and moving namespaces in Clojure(script)

  • refactor-nrepl 🐥 - nREPL middleware to support refactorings in an editor agnostic way

  • reval 🐥 -reproduceable eval - namespace eval and storage with browser ui

  • rewrite-edn 🐥 - Utility lib on top of rewrite-clj with common operations to update EDN while preserving whitespace and comments

  • rich-comment-tests 🐥 - Turns rich comment forms into tests

  • test-doc-blocks 🐥 - Test AsciiDoc and CommonMark code blocks found in articles and docstrings

  • umschreiben-clj 🐥 - Rewrite utilities for refactoring clojure files

  • zprint 🐥 - Executables, uberjar, and library to beautifully format Clojure and Clojurescript source code and s-expressions

Some projects using rewrite-clj v0 and/or rewrite-cljs

  • depot 🐥 🩹 - Find newer versions of your dependencies in your deps.edn file

  • confair 📍 - A configuration library for Clojure

  • gen-fn 📍 - Generate Datomic function literals from regular Clojure namespaces

  • kibit 🐥 - There’s a function for that!

  • lein-ancient 🐥 - Check your Projects for outdated Dependencies

  • mranderson 🐥 - Dependency inlining and shadowing

  • mutant 🐥 - Mutation testing for Clojure

  • repl-tooling 📍 - a base package for Clojure’s editor tooling

  • update-leiningen-dependencies-skill 📍 - Track project.clj dependencies across different projects

Have an update? Let us know!

🐥 canary tested against rewrite-clj v1 lib test suite
🩹 source required minor change to work with rewrite-clj v1
📍 no easy-peasy way to run automated unit tests found for this project

Versioning

Rewrite-clj versioning scheme is: major.minor.release-test-qualifier

  • major increments when a non alpha release API has been broken - something, as a rule, we’d like to avoid.

  • minor increments to convey significant new features have been added.

  • release indicates small changes or bug fixes - starting with v1.1, it is the rewrite-clj release count over the life of rewrite-clj.

  • test-qualifier is absent for stable releases. Can be alpha, beta, rc1, etc.

People

A big thank you to all the people who have contributed to rewrite-clj!

Contributors

eraserhd vemv kkinnear mainej plexus slipset sogaiu bbatsov danielcompton ericdallo FiV0 jespera NoahTheDuke PEZ snoe AndreaCrotti anmonteiro arrdem awb99 brian-dawn BTowersCoding doby162 drorbemet expez fazzone ferdinand-beyer green-coder guoyongxin ikappaki immoh ivarref luxbock martinklepsch matanster mhuebert mikekap mjayprateek msgodf mynomoto optevo rfhayashi rgkirch RickMoynihan SevereOverfl0w shaunlebron shaunxcode shmish111 stathissideris swannodette theronic weavejester zcaudate

Founders

rundis xsc

Current maintainers

borkdude lread

Licences

We honor the original MIT license from rewrite-clj v0.

Code has been merged/adapted from: