Skip to content

Commit 1f83a26

Browse files
committed
docs: update AGENTS.md for v1.3.0 with recent improvements
- Updated version from 1.2.0 to 1.3.0 - Added metadata preservation as new default behavior - Updated command-line options to include --strip-metadata flag - Added counter separation improvements for dry-run mode - Documented recent changes in release process and workflow fixes - Updated key behaviors section with new metadata and counter features
1 parent 15ec679 commit 1f83a26

File tree

1 file changed

+30
-8
lines changed

1 file changed

+30
-8
lines changed

AGENTS.md

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@
44

55
**ra2mp3** is a cross-platform bash script that converts RealAudio (.ra/.ram/.rm) files to MP3 format using FFmpeg. This project was created to help users migrate legacy audio files to a modern, widely-supported format.
66

7-
### Current Status: v1.2.0 (Production Ready)
7+
### Current Status: v1.3.0 (Production Ready)
88
- ✅ Full feature implementation complete
99
- ✅ Cross-platform support (macOS/Linux)
1010
- ✅ Comprehensive testing with real RealAudio files
1111
- ✅ Unicode and special character support
12-
- ✅ Advanced command-line options
12+
- ✅ Advanced command-line options with metadata preservation
1313
- ✅ Semantic release automation and CI/CD workflows
1414
- ✅ Automated changelog generation and PR title management
15+
- ✅ Separated dry-run counters and improved metadata handling
1516

1617
## Repository Structure
1718

@@ -40,11 +41,12 @@ ra2mp3/
4041
## Core Features
4142

4243
### Main Script (`ra2mp3`)
43-
- **Version:** 1.2.0
44+
- **Version:** 1.3.0
4445
- **Language:** Bash with strict error handling (`set -euo pipefail`)
4546
- **Dependencies:** FFmpeg with libmp3lame support
4647
- **Supported formats:** .ra, .ram, .rm (case-insensitive)
4748
- **Encoding:** VBR quality 2 (~170-210 kbps)
49+
- **Metadata:** Preserves original metadata by default, optional stripping with `--strip-metadata`
4850

4951
### Command-Line Options
5052
```bash
@@ -54,6 +56,7 @@ Options:
5456
-i, --input DIR Input directory to recursively search for .ra files (default: current directory)
5557
-o, --output DIR Output directory for converted files (default: converted/)
5658
--overwrite Overwrite existing MP3 files
59+
--strip-metadata Strip metadata for smaller file sizes (default: preserve metadata)
5760
--dry-run Show what would be converted without actually converting
5861
-v, --version Show version information
5962
-h, --help Show this help message
@@ -65,7 +68,9 @@ Options:
6568
- **Skip Existing:** By default, skips files that already exist (unless --overwrite)
6669
- **Unicode Support:** Handles Chinese characters, spaces, parentheses in filenames
6770
- **Progress Tracking:** Shows [X/Total] progress with color-coded status
68-
- **Error Handling:** Continues processing even if individual files fail
71+
- **Error Handling:** Continues processing even if individual files fail
72+
- **Metadata Preservation:** Preserves original file metadata (title, artist, etc.) by default
73+
- **Counter Separation:** Dry-run mode shows separate counts for "would convert" vs "skipped" files
6974

7075
## Installation System
7176

@@ -97,12 +102,11 @@ chmod +x ra2mp3
97102

98103
### Version Management
99104
- **Format:** Semantic versioning (MAJOR.MINOR.PATCH)
100-
- **Current:** 1.2.0
105+
- **Current:** 1.3.0
101106
- **Automation:** semantic-release handles version bumping and git tags
102107
- **Update locations:** All 3 scripts (ra2mp3, install_macos.sh, install_linux.sh) + package.json
103108
- **Release process:** Automated via GitHub Actions on main branch push
104-
105-
Note: CHANGELOG.md contains a 1.2.1 entry while scripts and package.json are at 1.2.0. The next semantic-release run should align versions by bumping the files accordingly.
109+
- **Recent improvements:** Fixed version synchronization issues - all files now properly updated by semantic-release
106110

107111
### Code Standards
108112
- **Bash style:** Strict error handling, proper quoting, consistent indentation
@@ -237,5 +241,23 @@ When working on this project:
237241

238242
---
239243

240-
*Last updated: 2025-08-31 (v1.2.0)*
244+
*Last updated: 2025-08-31 (v1.3.0)*
241245
*Remember to update this file when making significant changes to the project.*
246+
247+
## Recent Changes (v1.3.0)
248+
249+
### Metadata Handling Improvements
250+
- **Breaking Change:** Default behavior now preserves original file metadata
251+
- **New Flag:** `--strip-metadata` to strip metadata for smaller file sizes
252+
- **FFmpeg Arguments:** Uses `-map_metadata 0` by default, `-map_metadata -1` with flag
253+
- **User Impact:** Better preservation of title, artist, album info from RealAudio files
254+
255+
### Counter System Enhancements
256+
- **Dry-Run Mode:** Separated "would_convert" count from "skipped" count
257+
- **Status Display:** Clear distinction between files that would be processed vs already exist
258+
- **Summary Output:** More accurate reporting in both dry-run and normal modes
259+
260+
### Release Process Fixes
261+
- **Version Synchronization:** Fixed semantic-release to update all script files properly
262+
- **Workflow Improvements:** Enhanced PR title normalization and case preservation
263+
- **Automation Quality:** Removed blocking [skip ci] logic that was preventing releases

0 commit comments

Comments
 (0)