Skip to content

feat: add title banner, non-interactive mode, and richer output - #5

Merged
iamteedoh merged 2 commits into
mainfrom
DIR-1-beautify-cli-banner-options
Jul 16, 2026
Merged

feat: add title banner, non-interactive mode, and richer output#5
iamteedoh merged 2 commits into
mainfrom
DIR-1-beautify-cli-banner-options

Conversation

@iamteedoh

Copy link
Copy Markdown
Owner

Summary

Makes the permission checker look and feel more polished, and adds a scriptable
non-interactive mode alongside the existing interactive prompts.

  • Title banner + description printed on every run.
  • Non-interactive flags: --file / --who owner|group|other / --perm read|write|execute. Missing values still prompt when a TTY is attached; otherwise the script exits with a clear error (no hanging in CI/pipes).
  • New options: --all (owner/group/other permission matrix), --no-color (also honors NO_COLOR), --help, --version.
  • Richer output: green/red/yellow YES/NO/SKIP lines and a granted/denied/skipped summary.
  • Input files now skip blank lines and # comments.
  • Cross-platform stat: auto-detects GNU (-c) and BSD/macOS (-f), so it runs on macOS without GNU coreutils. Kept bash 3.2 compatible.
  • README updated to document all of the above.

Validation

  • shellcheck dirPathPerms.sh — clean (v0.11.0)
  • bash -n dirPathPerms.sh — pass
  • SPDX GPL-3.0-or-later header present (first 8 lines)
  • Exercised end-to-end: interactive (via pseudo-TTY), non-interactive single-class, --all matrix, --help/--version, all error paths (exit 2), and piped no-color output.

Jira: DIR-1

Print a big ASCII title banner with a description on every run. Add a
non-interactive flag interface (--file/--who/--perm) alongside the existing
interactive prompts, plus --all (owner/group/other matrix), --no-color,
--help, and --version. Skip blank and # comment lines in the input file,
add a granted/denied/skipped summary, and support both GNU and BSD/macOS
stat so it runs on Linux and macOS without GNU coreutils.
@iamteedoh
iamteedoh merged commit 92b6eac into main Jul 16, 2026
3 checks passed
@iamteedoh
iamteedoh deleted the DIR-1-beautify-cli-banner-options branch July 16, 2026 02:19
iamteedoh pushed a commit that referenced this pull request Jul 16, 2026
🤖 I have created a release *beep* *boop*
---


##
[0.2.0](v0.1.0...v0.2.0)
(2026-07-16)


### Features

* add title banner, non-interactive mode, and richer output
([#5](#5))
([92b6eac](92b6eac))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
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