| release | |||
| dev |
A micro-library for Clojure that provides first class support for accessing the values of named-capturing groups in regular expressions. It has no dependencies, other than on Clojure and the JVM versions it supports, and is only around 100 lines of code.
rencg work on older JVMs that don't have the .namedGroups() API?Yes. On older (pre v20) JVMs, rencg gracefully degrades by manually parsing regexes to determine the named capturing groups.
Because that library monkey patches core Clojure, which may break other code.
rencg is available as a Maven artifact from Clojars.
$ clj -Sdeps '{:deps {com.github.pmonks/rencg {:mvn/version "RELEASE"}}}'
$ lein try com.github.pmonks/rencg
$ deps-try com.github.pmonks/rencg
API documentation is available here, or here on cljdoc, and the unit tests are also worth perusing to see worked examples.
This project uses the git-flow branching strategy, and the permanent branches are called release and dev, and any changes to the release branch are considered a release and auto-deployed (JARs to Clojars, API docs to GitHub Pages, etc.).
For this reason, all development must occur either in branch dev, or (preferably) in temporary branches off of dev. All PRs from forked repos must also be submitted against dev; the release branch is only updated from dev via PRs created by the core development team. All other changes submitted to release will be rejected.
rencg uses tools.build. You can get a list of available tasks by running:
clojure -A:deps -T:build help/doc
Of particular interest are:
clojure -T:build test - run the unit testsclojure -T:build lint - run the linters (clj-kondo and eastwood)clojure -T:build ci - run the full CI suite (check for outdated dependencies, run the unit tests, run the linters)clojure -T:build install - build the JAR and install it locally (e.g. so you can test it with downstream code)Please note that the release and deploy tasks are restricted to the core development team (and will not function if you run them yourself).
Copyright © 2023 Peter Monks
Distributed under the Apache License, Version 2.0.
SPDX-License-Identifier: Apache-2.0
Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |