Skip to content

docs: name the command line tools in the pitch table - #171

Merged
cardmagic merged 2 commits into
masterfrom
docs/why-this-library-cli
Aug 15, 2026
Merged

docs: name the command line tools in the pitch table#171
cardmagic merged 2 commits into
masterfrom
docs/why-this-library-cli

Conversation

@cardmagic

Copy link
Copy Markdown
Owner

No. The "Why This Library?" table compared five dimensions and never mentioned the commands, so a reader of the pitch never learned the gem ships any executable, let alone the keywords tool added in 2.7.0.

  | **Algorithms** | ✅ 5 classifiers | ❌ 2 only |
+ | **Command line** | ✅ `classifier` and `keywords` commands | ❌ No executables |
  | **Incremental LSI** | ✅ Brand's algorithm (no rebuild) | ❌ Full SVD rebuild on every add |

The claim is verified

This gem installs two executables:

$ ls exe/
classifier   keywords

classifier-reborn, the fork this table compares against, ships none. It has no bin/ and no exe/ directory (both 404 on the GitHub contents API), and its gemspec builds the executable list by grepping ^bin/:

s.executables = all_files.grep(%r{^bin/}) { |f| File.basename(f) }

With no bin/ directory that grep returns an empty array, so the published gem installs no commands.

This is arguably the strongest row in the table: the others are differences of degree, while this is a capability the fork lacks entirely.

Verified

  • 761 runs, 0 failures, 1 skip
  • RuboCop clean
  • static doc checks pass

Noted, not changed

The one-line headline above the table has the same omission:

Text classification in Ruby. Five algorithms, native performance, streaming support.

Adding the CLI there would be consistent, but it is a separate editorial call so I left it alone.

"Why This Library?" compared five dimensions and left out the commands,
so a reader of the pitch never learned the gem ships any executable, let
alone the keywords tool added in 2.7.0.

The gem installs classifier and keywords. classifier-reborn, the fork the
table compares against, ships neither: it has no bin/ and no exe/, so its
gemspec grep over ^bin/ yields an empty executables array.
The table claimed 5 classifiers. Only four of the five classes classify:

    Bayes               classify:true
    LSI                 classify:true
    KNN                 classify:true
    LogisticRegression  classify:true
    TFIDF               classify:false  transform:true

TF-IDF is a vectorizer. It turns text into term weights and never returns
a category. The gemspec summary already draws this line, saying "Bayesian,
LSI, Logistic Regression, kNN, and TF-IDF vectorization".

Name the fork's side too. classifier-reborn ships bayes.rb and lsi.rb,
which is where the "2 only" comes from.
@greptile-apps

greptile-apps Bot commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

Adds the names of the gem’s two packaged command-line tools to the feature comparison table.

  • Documents the classifier and keywords executables.
  • Notes that the currently compared fork provides no executables.

Confidence Score: 5/5

The documentation-only change appears safe to merge.

The new table row accurately names both executables packaged by this gem, and no concrete changed-code-triggered failure or repository-rule violation remains.

Important Files Changed

Filename Overview
README.md The added comparison row accurately reflects the gemspec’s packaged executables and introduces no actionable documentation issue.

Reviews (1): Last reviewed commit: "docs: name the command line tools in the..." | Re-trigger Greptile

@cardmagic
cardmagic merged commit 865fd98 into master Aug 15, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant