ghik/silencer
55.7
Adequate · 20 September 2026
563
lines of production code
Scala
primary language
1
measurement over time
What this system is
This system is a Scala compiler plugin and library designed to suppress specific compiler warnings. It provides granular control over warning suppression through message patterns, file paths, and line content, while also supporting the standard @nowarn annotation. The project maintains compatibility across multiple Scala versions, including 2.11, 2.12, and 2.13.
Behavioural changes
Silencer annotation updated to support message patterns and new package
The @silent annotation in the silencer library has been updated to allow suppressing specific warnings by accepting an optional message pattern argument, rather than silencing all warnings indiscriminately. Additionally, the annotation class has been migrated from extending StaticAnnotation to the standard Annotation trait, and the package has moved from rjghik to com.github.ghik.
silencer-lib · high confidence
Silencer plugin restructured for Scala 2.13 and expanded filtering capabilities
The silencer-plugin has been refactored to support Scala 2.13, introducing version-specific compatibility traits for tree handling and a new \SuppressingReporter\ that replaces the previous suppression-range model with a filter-based approach. Users can now suppress warnings using global message patterns, source file paths, and line content via new plugin options (\-P:silencer:globalFilters\, \pathFilters\, \lineContentFilters\, \sourceRoots\). The plugin also adds support for Scala 2.13's \@nowarn\ annotation, allows suppressing warnings on entire annotation-ascribed trees, and introduces a \checkUnused\ option to report redundant \@silent\ annotations. The package name has changed from \rjghik.silencer\ to \com.github.ghik.silencer\.
silencer-plugin · high confidence
Dependencies
Upgrade to ScalaTest 3.2 and expand supported Scala versions
The build configuration has been updated to use ScalaTest 3.2.0 (specifically the \scalatest-funsuite\ module) for testing, replacing the previous version 2.2.4. Additionally, the project now supports a wide range of Scala versions, including Scala 2.11.12, Scala 2.12.x (up to 2.12.21), and Scala 2.13.x (up to 2.13.18), with full cross-versioning enabled for both the plugin and library modules.
(dependencies) · 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
Baseline
- First survey — no prior run to compare against. CAI 56.
Lenses
- Code Health 97
- Architecture 69
- Maturity 51
- Readiness 50
- Security 65
Changes since last survey
- 241 commits — 221 feature/other, 20 fixes
By area
- (root) — 132 commits
- silencer-plugin/src — 52 commits
- (repo) — 35 commits
- .github/workflows — 6 commits
- project/plugins.sbt — 6 commits
- project/build.properties — 5 commits
- silencer-plugin/testdata — 4 commits
- silencer-lib/src — 1 commit
Notable commits
- fix: Fix #56: NullPointerException at SilencerPlugin's FindSuppressions.addSuppression
- fix: build fix
- fix: build fixes
- fix: build fixes
- fix: cross building fixed
- fix: fix procedure syntax
- fix: fix scala 2.11 build
- fix: fixed #63
- fix: fixed position for bad annotation errors
- fix: fixed suppressing warnings inside annotations #32
- fix: fixed tests for 2.13
- fix: fixed travis release
- fix: fixed travis scala version
- fix: fixed travis scala version
- fix: fixed travis scala versions
- fix: fixed warning suppression inside macro expandees
- fix: non-critical bugfix
- fix: sonatype publishing yet another fix
- fix: test fixes
- fix: trying to fix travis sonatype publishing
- …and 221 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
ghik/silencer 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 20 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 20f2895268b456cce36a25714103e451ce46c2f4 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-b51f968c9b10.