pathikrit/better-files
60.9
Adequate · 27 September 2026
2.7k
lines of production code
Scala
primary language
4
measurements over time
What this system is
Features
Add interactive Scala version tabs for Scaladoc navigation
A new index.html file was added to the site-preprocess directory, introducing a Bootstrap-based interface that allows users to switch between different Scala versions via tabs. Each tab displays the corresponding Scaladoc in an iframe, improving navigation across multiple Scala versions.
src/site-preprocess · high confidence
Introduce resource management and file system DSL
Added new abstractions for safe resource management and file system operations. The \Dispose\ trait and \CloseableIterator\ provide automatic cleanup of resources and iterators, ensuring that underlying streams or file handles are closed even if exceptions occur. A new \Dsl\ object introduces a UNIX-style command-line interface for file operations, supporting symbolic operators for reading/writing content (\\<\, \\>\>\), navigation (\/\, \\~\), and file manipulation (\cp\, \mv\, \rm\, \ln\). Additionally, a \Resource\ trait with macro-based implementations (\Resource.at\, \Resource.my\) enables convenient lookup of classpath resources relative to specific classes or the current call site.
src/main · high confidence
Update project configuration and documentation files
Added new configuration files including .gitattributes, .jvmopts, .scalafmt.conf, and release.sh, while updating .gitignore and README.md with comprehensive documentation, installation instructions, and version badges.
(repo-wide) · high confidence
Test coverage
Added comprehensive test coverage for file system utilities
Added 131 commits of tests covering core file operations, including file monitoring, globbing, scanning, and resource management. New test suites validate the behavior of the file watcher (FileMonitorSpec, FileWatcherSpec), scanner utilities (ScannerSpec, ShapelessScannerSpec), and file system interactions (FileSpec, GlobSpec, CloseableIteratorSpec, DisposeSpec, ResourceSpec). Test resources and Java benchmark classes for scanners were also added to support these tests.
src/test · high confidence
Dependencies
Modernize build configuration and update test dependencies
The build file was refactored to support multiple Scala versions (2.11, 2.12, 2.13, and 3.2.2) and includes updated test dependencies, specifically upgrading ScalaTest to 3.2.15, Shapeless to 2.3.4, and Commons IO to 2.11.0, while also adding the scala-collection-compat library for cross-version compatibility.
(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
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 41 → 61 (+19.9)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 97 (-2.9)
- Architecture 69 → 100 (+31.0)
- Maturity 56 → 50 (-5.6)
- Readiness 27 → 55 (+27.7)
- Security 40 → 76 (+36.3)
Resolved (14)
- Coverage not measured — test suite did not build
- Dimension evaluation failed
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- No artifact signing
- No exposed public API
- No tests found
- Rotate the exposed credentials — git history can't be un-committed
- Test reliability not included
New (21)
- Duplicated block (10 lines × 2) (src/main/scala-2.13/better/files/CloseableIteratorCompat.scala)
- FileTooLong: files/File.scala (src/main/scala/better/files/File.scala)
- Further orphaned files (smaller)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- Medium: security finding (details withheld)
- Orphaned knowledge (src/main/scala/better/files/File.scala)
- PR-triggered workflow grants a write-scoped token
- TodoComment (src/main/scala/better/files/Dispose.scala)
- TodoComment (src/main/scala/better/files/Dsl.scala)
- TodoComment (src/test/scala/better/files/DisposeSpec.scala)
- TodoComment (src/test/scala/better/files/FileSpec.scala)
- TodoComment (src/test/scala/better/files/GlobSpec.scala)
- TodoComment (src/test/scala/better/files/GlobSpec.scala)
- TodoComment (src/test/scala/better/files/benchmarks/Scanners.scala)
- …and 1 more
Architecture
- Containers 0 added · 0 removed · contexts 1 added · 0 removed · edges 0 added · 0 removed
Added bounded contexts (1)
- repository
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
pathikrit/better-files 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 27 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 faffdb87ec0656f56c9f8e2f0dd9e846285bf4f2 — 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-d00c643c3f66.