#rstats I'm very happy to announce Jarl 0.5.0!

Jarl is a very fast R linter, written in Rust. This release brings many improvements and fixes:

- check R code chunks in R Markdown and Quarto docs
- check "@examples" and "@examplesIf" sections if you use roxygen2
- detect unused or duplicated functions in pkgs
- rules on specific pkgs, e.g. on `dplyr::filter()`, are now possible. Feel free to suggest more and in other pkgs too!

Post: https://www.etiennebacher.com/posts/2026-03-23-jarl-0.5.0/

Changelog: https://jarl.etiennebacher.com/changelog

Jarl 0.5.0

Rust is the right call for a linter. Fast enough to run on save without anyone noticing. How does Jarl handle tidyeval? That's where R linters usually break down, either flagging every rlang pattern or ignoring them completely.

@GillesColling no particular handling of tidyeval for now but I haven't come across false positives because of this. Feel free to open an issue if you have some examples, that would be very helpful.

There are several other packages that come with their own syntaxes (like box, igraph) so it's just a problem that is very hard to solve with static analysis