• v3.7.0 64249f202d

    v3.7.0
    All checks were successful
    / build-test-1 (push) Successful in 17m17s
    / build-test (push) Successful in 0s
    / release (push) Successful in 3m20s
    Stable

    eofredj released this 2026-10-05 01:43:28 +02:00 | 1 commits to main since this release

    ⚠️ Breaking Changes

    • refactor(cli)!: require ValidatedArgs in command builders

    🐛 Bug Fixes

    • fix(cli): count characters and reject blank metadata
    • fix(native-tags): write tags without risking the original file
    • fix(output): create saved scripts with owner-only permissions
    • fix(native-tags): validate every book before writing any tag
    • fix(series): anchor name pattern and make ordering deterministic
    • fix(cli): do not create the output directory in dry-run
    • fix(config): honor explicit genre and report invalid config files
    • fix(output): keep quoted values intact in --plain and --json
    • fix(cli): reject and escape control characters in output
    • fix(native-tags): reject symlinked and oversized cover art
    • fix(tone,m4b): prevent option injection from values and paths

    📚 Documentation

    • docs: state that release checksums are not signed
    • docs: fix security guide anchor for native tagging section
    • docs: align security and dependency notes with the code

    🔧 Other Changes

    • chore(version): Release v3.7.0
    • chore(cliff): fix default first tag version
    • refactor(cli)!: require ValidatedArgs in command builders
    • ci: pin toolchain and run dependency audits on every push
    • refactor(shell): drop shell-escape in favour of an in-tree quoter

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v3.7.0/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v3.6.0...v3.7.0

    🔨 Build Metadata

    • Git Commit: 64249f2
    • Build Date: 2026-10-05 00:03:08 UTC

    🔐 Checksums

    4424f036883139054a373dfac833b62aa1210f3a7237c146448d103ed75218d0  rstoner
    
    Downloads
  • v3.6.0 c1ee370acf

    v3.6.0
    All checks were successful
    / build-test-1 (push) Successful in 2m6s
    / build-test (push) Successful in 0s
    / release (push) Successful in 2m39s
    Stable

    eofredj released this 2026-09-21 10:13:02 +02:00 | 20 commits to main since this release

    ✨ Features

    • feat(native-tags): wire native ID3 tagging into run_cli
    • feat(native-tags): suppress shell tone command when native tagging
    • feat(native-tags): add --native-tags CLI flag and output rendering
    • feat(native-tags): add book-level batch tagging orchestration
    • feat(native-tags): write ID3v2 frames for a single mp3 file
    • feat(native-tags): add error variants for ID3 read/write failures
    • feat(native-tags): add cover art discovery
    • feat(native-tags): add canonical TXXX key normalization
    • feat(native-tags): add id3 dependency and module skeleton

    🐛 Bug Fixes

    • fix(native-tags): skip MVNM/MVIN on ID3v2.2 files, replace embedded NULs
    • fix(native-tags): restore MVNM/MVIN series frames via raw encoding
    • fix(native-tags): honor --dry-run, merge --json output, keep exit codes

    📚 Documentation

    • docs: document --native-tags and sync docs with current codebase
    • docs(security): correct native-tagging security claims
    • docs: remove dead spec-file link, fold native-tags details into AGENTS.md
    • docs: document --native-tags mode

    🔧 Other Changes

    • chore(version): Release v3.6.0
    • chore(workflow): clean author list
    • test(native-tags): add end-to-end integration coverage

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v3.6.0/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v3.5.0...v3.6.0

    🔨 Build Metadata

    • Git Commit: c1ee370
    • Build Date: 2026-09-21 08:16:24 UTC

    🔐 Checksums

    da08163f06c439bd33094d49205987595f4e91857523aeab725342a50057ae7d  rstoner
    
    Downloads
  • v3.5.0 412ede6b5b

    v3.5.0
    All checks were successful
    / build-test-1 (push) Successful in 3m24s
    / build-test (push) Successful in 0s
    / release (push) Successful in 1m40s
    Stable

    eofredj released this 2026-09-20 07:26:35 +02:00 | 39 commits to main since this release

    ✨ Features

    • feat(tone): add additional-field series/part metadata for series books

    🔧 Other Changes

    • chore(version): Release v3.5.0

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v3.5.0/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v3.4.0...v3.5.0

    🔨 Build Metadata

    • Git Commit: 412ede6
    • Build Date: 2026-09-20 14:01:14 UTC

    🔐 Checksums

    58a4f8051d642f3ec306bf2ae8297eb48325fd8702138eb83a035d0b8c86da4b  rstoner
    
    Downloads
  • v3.4.0 2b3d319bf7

    v3.4.0
    All checks were successful
    / build-test-1 (push) Successful in 17m24s
    / build-test (push) Successful in 0s
    / release (push) Successful in 5m37s
    Stable

    eofredj released this 2026-09-20 06:39:21 +02:00 | 41 commits to main since this release

    ✨ Features

    • feat(cli): make --narrator optional

    📚 Documentation

    • docs: sync documentation with current codebase

    🔧 Other Changes

    • chore(version): Release v3.4.0

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v3.4.0/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v3.3.3...v3.4.0

    🔨 Build Metadata

    • Git Commit: 2b3d319
    • Build Date: 2026-09-20 04:57:40 UTC

    🔐 Checksums

    7329f76da700c4fce3add0e49f0f015ca768807c68e48a08254fb8c7fc2cb3e2  rstoner
    
    Downloads
  • v3.3.3 b9992afcfb

    v3.3.3
    All checks were successful
    / build-test-1 (push) Successful in 20m50s
    / release (push) Successful in 1m39s
    / build-test (push) Successful in 0s
    Stable

    eofredj released this 2026-09-20 04:30:45 +02:00 | 44 commits to main since this release

    🐛 Bug Fixes

    • fix(release): restore publish step ordering
    • fix(release): send cargo registry token with Bearer auth scheme

    🔧 Other Changes

    • chore(version): Release v3.3.3

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v3.3.3/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v3.3.2...v3.3.3

    🔨 Build Metadata

    • Git Commit: b9992af
    • Build Date: 2026-09-20 02:51:57 UTC

    🔐 Checksums

    4ca458559005887f52dc3f775b3e238b6bdd10d164d4c4a221607fadd1d8b8e9  rstoner
    
    Downloads
  • v3.2.0 a5ea4e0e99

    v3.2.0
    All checks were successful
    / build-test-1 (push) Successful in 21m18s
    / release (push) Successful in 2m33s
    / build-test (push) Successful in 0s
    Stable

    eofredj released this 2026-09-20 01:48:33 +02:00 | 53 commits to main since this release

    ✨ Features

    • feat(cli): add --skip-tone/--skip-m4b to generate only one command type

    🔧 Other Changes

    • chore(version): Release v3.2.0
    • chore: bump dependencies to latest compatible versions
    • refactor: apply clippy pedantic/nursery cleanups

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v3.2.0/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v3.1.0...v3.2.0

    🔨 Build Metadata

    • Git Commit: a5ea4e0
    • Build Date: 2026-09-20 00:12:06 UTC

    🔐 Checksums

    4a75b0d1da208310a660f7ada357aec60c252666d20fa1f18261502af7a2668e  rstoner
    
    Downloads
  • v3.1.0 4895396597

    v3.1.0
    All checks were successful
    / build-test-1 (push) Successful in 3m55s
    / release (push) Successful in 4m28s
    / build-test (push) Successful in 11m3s
    Stable

    eofredj released this 2026-09-10 16:24:43 +02:00 | 57 commits to main since this release

    ✨ Features

    • feat(cli): add shell completions, man page, and uninstall docs
    • feat(cli): add scan progress feedback and interactive overwrite prompt
    • feat(output): add --plain and --json rendering modes
    • feat(cli): read book paths from stdin with -
    • feat(cli): map errors to sysexits exit codes, add --quiet and --no-color

    🔧 Other Changes

    • chore(version): Release v3.1.0

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v3.1.0/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v3.0.0...v3.1.0

    🔨 Build Metadata

    • Git Commit: 4895396
    • Build Date: 2026-09-10 14:29:47 UTC

    🔐 Checksums

    038e13898ab4239e968069049214bcc5a523bc31b505c9a7dde65645bf96325d  rstoner
    
    Downloads
  • v3.0.0 f484dcf497

    v3.0.0
    All checks were successful
    / build-test-1 (push) Successful in 5m59s
    / release (push) Successful in 2m21s
    / build-test (push) Successful in 12m42s
    Stable

    eofredj released this 2026-09-10 15:26:01 +02:00 | 63 commits to main since this release

    ⚠️ Breaking Changes

    • feat!: remove the interactive TUI

    ✨ Features

    • feat(tui): auto-open the metadata form after folder selection
    • feat(tui): add series-name confirmation step to the folder wizard
    • feat(tui): add real filesystem navigation as the TUI entry point

    🔧 Other Changes

    • chore(version): Release v3.0.0
    • feat!: remove the interactive TUI
    • test(tui): add unit tests for the App event-dispatch shell
    • test(tui): add unit tests for OverlayPopup
    • test(tui): add unit tests for CommandPipeline
    • chore(deps): bump dirs to 7.0.0

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v3.0.0/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v2.0.1...v3.0.0

    🔨 Build Metadata

    • Git Commit: f484dcf
    • Build Date: 2026-09-10 13:34:00 UTC

    🔐 Checksums

    c630292c6e6d6e6b42b863ac318d6815083786e6eb01490c6991e74402f6a563  rstoner
    
    Downloads
  • v2.0.1 0adb365b1d

    v2.0.1
    All checks were successful
    / build-test-1 (push) Successful in 2m32s
    / build-test (push) Successful in 0s
    / release (push) Successful in 16s
    Stable

    eofredj released this 2026-08-30 19:17:58 +02:00 | 72 commits to main since this release

    📚 Documentation

    • docs: document tag-driven release process via tagme.sh

    🔧 Other Changes

    • chore(version): Release v2.0.1
    • chore(deps): bump which to 8.0.6
    • chore(release): switch to tag-driven versioning via CI stamping

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v2.0.1/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v2.0.0...v2.0.1

    🔨 Build Metadata

    • Git Commit: 0adb365
    • Build Date: 2026-08-30 17:21:00 UTC

    🔐 Checksums

    420293a282003d3d91dcf235c263620778655048ea8f3f3870e0ac7fd0540c16  rstoner
    
    Downloads
  • v2.0.0 5f3d676a8c

    v2.0.0
    All checks were successful
    / build-test-1 (push) Successful in 3m10s
    / build-test (push) Successful in 0s
    / release (push) Successful in 9s
    Stable

    eofredj released this 2026-08-30 18:52:10 +02:00 | 76 commits to main since this release

    Signed by eofredj
    GPG key ID: E1ED90A4746E6F08

    ⚠️ Breaking Changes

    • chore(license)!: relicense to GPL-3.0-or-later

    ✨ Features

    • feat(tui): persist execution results to a log file
    • feat(tui): save sidebar metadata as the default config
    • feat(tui): cancel a running execution and retry failed commands
    • feat(tui): search/filter the series list pane
    • feat(cli)!: make TUI opt-in via --tui flag

    🐛 Bug Fixes

    • fix(cliff): stop paginating full remote history on every run

    📚 Documentation

    • docs: split README into a brief overview and a full usage guide
    • docs: move ARCHITECTURE.md into docs/architecture/ and refresh it
    • docs: add SECURITY.md vulnerability reporting policy
    • docs: add Contributor Covenant Code of Conduct
    • docs: expand commit workflow rules in AGENTS.md

    🔧 Other Changes

    • chore(version): Release 2.0.0
    • chore(release): harden release.sh with tagme.sh patterns
    • chore: remove stale prompt.md improvement tracker
    • chore(release): make cliff.toml repo-portable and safer defaults
    • ci: harden workflows with concurrency guards and strict curl
    • chore: stop tracking .planning/ and ignore AI tooling artifacts
    • chore: add Forgejo issue and pull request templates
    • chore(license): add SPDX headers to all source files
    • chore(license)!: relicense to GPL-3.0-or-later
    • style: apply clippy pedantic fixes

    📦 Installation

    # Download the binary
    curl -fsSL "https://git.desord.re/eofredj/rstoner/releases/download/v2.0.0/rstoner-x86_64" -o rstoner
    
    # Verify checksum
    sha256sum -c rstoner-x86_64.sha256
    
    # Make executable and move to PATH
    chmod +x rstoner
    mv rstoner /usr/local/bin/rstoner
    

    📋 Full Changelog

    Compare v1.6.0...v2.0.0

    🔨 Build Metadata

    • Git Commit: 5f3d676
    • Build Date: 2026-08-30 17:21:35 UTC

    🔐 Checksums

    2b1d6b425a558554499c9fa2b044e784dfb4416821fa18e1ae01266cc705d8ea  rstoner
    
    Downloads