athityakumar/colorls
66.0
Adequate · 26 September 2026
960
lines of production code
Ruby
primary language
4
measurements over time
What this system is
Features
Add man page for colorls
A new manual page (colorls.1.ronn) has been added to the project, providing structured documentation for the colorls command-line tool. This change introduces the first official man page, generated from a Ronn source file, which details the tool's synopsis, description, options, and examples for users seeking help via the terminal.
man · high confidence
Introduction of the Colorls Ruby gem and Bash tab completion
The library now includes a new \lib/colorls.rb\ entry point that loads the core, file info, flags, layout, YAML configuration, monkey patches, and Git integration modules. It also introduces a new \lib/tab\_complete.sh\ script that provides Bash tab completion for the \colorls\ command, enabling users to press Tab to autocomplete options and arguments.
lib · high confidence
Project structure and documentation overhaul
The repository was restructured to include a formalized development workflow and documentation. A \.rubocop.yml\ configuration file was added to enforce code quality and style standards across the codebase. Standard open-source documentation files were introduced, including \CODE\_OF\_CONDUCT.md\, \CONTRIBUTING.md\, \LICENSE.md\, \RELEASE\_POLICY.md\, and \ISSUE\_TEMPLATE.md\. Additionally, a \PULL\_REQUEST\_TEMPLATE.md\ was added to guide contributors, and a \zsh\ directory was created for shell completion scripts. The previous \colorls.rb\ entry point and \formats.yaml\ configuration were removed, indicating a shift in how the project is built and documented.
(repo-wide) · high confidence
Behavioural changes
Release version 1.5.0
The colorls tool has been updated to version 1.5.0. This release includes a variety of improvements and fixes, such as adding support for sorting by file extension (-X), implementing a tree view (-t), and introducing a --report flag for file counts. It also adds options for showing inode numbers, handling symlinks, and customizing the indicator style. The update also includes various bug fixes and performance enhancements.
lib/colorls · high confidence
Workaround for RubyGems ENOENT error in directory listing
The executable entry point for colorls now includes a workaround for a RubyGems issue where the current working directory might not exist, which previously caused an Errno::ENOENT exception. The script overrides the Dir.pwd method to return '/' when loading, preventing crashes in environments where the current directory is missing.
exe · high confidence
Test coverage
Add comprehensive test coverage for ColorLS components; Added RSpec test suite and code coverage configuration; Added automated YAML sort validation; Added automated test suite for colorls command-line flags; Added symlink fixtures for testing; Added test fixtures for file sorting and hidden file tests.
Dependencies
Initial release of colorls gem
The project is now packaged as a Ruby gem (colorls) with a gemspec defining runtime dependencies (addressable, clocale, filesize, manpages, rainbow, unicode-display\_width) and development dependencies (bundler, rspec, rubocop, simplecov, etc.). The Gemfile has been simplified to use the gemspec, and the gem includes a post-install message detailing CLI flag changes and man page availability.
(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 46 → 66 (+19.8)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 97 (-3.0)
- Architecture 69 → 69 (+0.0)
- Maturity 66 → 57 (-8.6)
- Readiness 35 → 79 (+43.9)
- Security 40 → 73 (+33.1)
Resolved (15)
- 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 exposed public API
- No tests found
- Test reliability not included
- The Usage section begins with a man page link but does not show any actual usage text or examples for flags like -1, --all, or --tree. The screenshot of one entry per line is cut off mid-sentence. (README.md)
- The body is a garbled mix of ASCII art and code (e.g. 'Y�����ʔ�', 'P%|Dbi') interspersed with random symbols ('#Ĉ', '��'), containing no context/problem statement, no explicit decision, and no consequences section (spec/fixtures/20kb-more-than-1mb.txt)
- Title '20kb-less-than-2mb' gives no context and decision is buried in base64/encoded garbage; consequences are not present (spec/fixtures/20kb-less-than-2mb.txt)
New (13)
- FixmeComment (lib/colorls/flags.rb)
- FixmeComment (spec/spec_helper.rb)
- 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)
- Inconsistent naming for width queries. terminal_width and screen_width appear to query similar dimensions (terminal vs screen), but file_encoding is a completely different domain (character encoding). However, within the width domain, it is unclear if terminal_width and screen_width are distinct or redundant aliases. If they are distinct (e.g., columns vs pixels), the naming is acceptable. If they are redundant, it's an issue. Given typical CLI tools, these are likely distinct (columns vs pixel width), so this is likely consistent. No strong inconsistency found here.
- Inconsistent object creation patterns. FileInfo has a constructor initialize that takes high-level arguments, but also instance methods info and dir_entry that seem to act as factory methods or alternative initializers for specific contexts (general path vs directory entry). This mixes constructor and factory method patterns without clear distinction in naming (e.g., from_path vs from_dir_entry).
- Medium: security finding (details withheld)
- Off-boarding risk: anonymized user #1
- TooManyMethods: Core (lib/colorls/core.rb)
- Workflow holding a long-lived secret is unscoped
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
athityakumar/colorls 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 26 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 ec2fbcd36f6b7fa56c72b13e52c235eba277bad0 — 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-7c1cb6328e11.