Skip to content

Latest commit

 

History

History
51 lines (36 loc) · 1.25 KB

File metadata and controls

51 lines (36 loc) · 1.25 KB

Development

Setup

Requires Ruby 3.2+ (the repo pins .ruby-version; rbenv is used when available):

bundle install

Run the CLI from the working tree:

bundle exec exe/fm version
bundle exec exe/fm doctor

Install it like an end user (isolated gem home under ~/.local):

make install-local
export PATH="$HOME/.local/bin:$PATH"

PREFIX=/your/prefix make install-local changes the install location.

Tests and lint

bundle exec rake test
bundle exec rubocop --format simple

Both run in CI on every PR, along with the release-packaging test matrix (four native targets) and Formula checks. Platform-specific release tests skip automatically on non-matching hosts.

Layout

  • lib/feedmob/cli/ — commands, credential storage (Keychain on macOS, AES-256-GCM encrypted file elsewhere), HTTP client, JSON envelope
  • exe/fm — entry point
  • script/ — release pipeline scripts (build, verify, publish, formula)
  • packaging/ — pinned Tebako/Ruby release configuration and runtime Gemfile
  • Formula/fm.rb — Homebrew formula, rendered at release time

Releasing

See release.md. Versions auto-increment from the latest tag; publishing is a single manual workflow dispatch with a confirmation gate.