grisp/rebar3_grisp
51.3
Weak · 2 October 2026
2.3k
lines of production code
Erlang
primary language
2
measurements over time
What this system is
This system is a rebar3 plugin designed to streamline the development, building, and deployment of Erlang/OTP applications for GRiSP hardware boards. It provides commands for configuring projects, generating firmware images, and creating software update packages, while also offering templates to scaffold new applications with appropriate hardware and network settings. Additionally, it includes automation scripts for managing releases and enforces compatibility requirements for modern Erlang/OTP versions.
Features
Automated release and publishing script
Added a new \cut.sh\ script that automates the release process. It validates required tools (git, sed, rebar3, chandler), updates version numbers in source and documentation files, commits and tags the release, pushes code and tags to the remote repository, publishes the package and documentation via rebar3, and finally pushes the changelog to GitHub Releases.
.scripts · high confidence
Initial release of the rebar3\_grisp plugin
This change introduces the rebar3\_grisp plugin, providing a suite of new commands for GRiSP board development. Users can now build custom Erlang/OTP systems (\grisp build\), configure new projects with network and hardware settings (\grisp configure\), deploy releases to the board (\grisp deploy\), generate firmware images (\grisp firmware\), and create software update packages (\grisp pack\). The plugin also includes utilities for listing pre-built packages (\grisp package list\) and generating bug reports (\grisp report\). It defaults to OTP version 23 and the GRiSP2 platform, and requires the \grisp\_tools\ and \grid\ dependencies.
src · high confidence
New project generation templates for grisp\_updater
The \priv/templates\ directory now includes a complete set of new project generation templates (common and network) that define the structure and configuration for new Grisp projects. These templates provide the foundational files for a new application, including \rebar.config\, \app.src\, Erlang source modules (\app.erl\, \sup.erl\), configuration files (\sys.config\), and network settings (\wpa\_supplicant.conf\, \erl\_inetrc\). The templates support conditional inclusion of Grisp-specific dependencies and configurations (such as \grisp\_connect\, \grisp\_updater\, and \grisp\_io\ linking) based on mustache variables, allowing users to generate projects tailored to their specific hardware and connectivity requirements.
priv · high confidence
Behavioural changes
Deprecate OTP 26 and older, warn on legacy versions
The plugin now deprecates Erlang/OTP 26 and older versions. When running on OTP 26 or earlier, users will see a warning message advising them to upgrade to OTP 27 or newer. Additionally, a \rebar.config.script\ is introduced to automatically override the \erlexec\ dependency to version 2.0.7 for OTP versions below 27, ensuring compatibility with the \edifa\ dependency which previously caused compilation errors on OTP 27+.
(repo-wide) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 57 → 51 (-5.6)
- Rubric changed (rubric-2026.09.12 → rubric-2026.09.18) — scores are not directly comparable.
Lenses
- Code Health 94 → 94 (+0.0)
- Architecture 100 → 100 (+0.0)
- Maturity 55 → 55 (+0.0)
- Readiness 36 → 24 (-11.8)
- Security 100 → 100 (+0.0)
Resolved (3)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Off-boarding risk: anonymized user #1
New (8)
- Off-boarding risk: anonymized user #1
- Unbounded dependency requirement: certifi
- Unbounded dependency requirement: erlware_commons
- Unbounded dependency requirement: getopt
- Unbounded dependency requirement: grid
- Unbounded dependency requirement: grisp_cryptoauth
- Unbounded dependency requirement: grisp_tools
- Unbounded dependency requirement: grisp_updater_grisp2
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
grisp/rebar3_grisp was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 2 October 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit c42cc9c7bd9226bf7a4f9304df7ec359ba76f312 — the exact code this score is about.
- Scored under rubric-2026.09.18 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-e569280dd5e2.