Goondex/CHANGELOG.md
2025-11-17 14:38:58 -05:00

89 lines
3.9 KiB
Markdown

# Changelog
## v0.1.0-dev5 (2025-11-17)
### 🧰 CLI & Import Improvements
- Added `goondex import all` plus explicit `all-performers`, `all-studios`, and `all-scenes` bulk commands so the entire TPDB catalog can be ingested with one invocation.
- Each bulk import now exposes start/max page flags even when running the combined command, making resume workflows painless.
- Standardized TPDB API key handling across commands; errors now include clear export instructions via the shared helper.
### 📖 Developer Experience
- `README.md` now documents when/how to rebuild the CLI binary, preventing stale builds after source changes.
- `docs/ADULT_EMPIRE_SCRAPER.md` metadata bumped to v0.1.0-dev5.
- `goondex version` output updated to reflect the new release and highlight the bulk import capability.
## v0.1.0-dev4 (2025-11-16)
### 🎨 Web UI Enhancements
- **Grid Layout Migration**: Converted all listing pages (Performers, Studios, Scenes) from table-based to modern card grid layout
- Uses GX_CardGrid component system with responsive design
- Performers: 3:4 aspect ratio portrait cards with scene count and nationality
- Studios: 3:4 aspect ratio cards with description preview
- Scenes: 16:9 aspect ratio landscape cards with date, studio, and code
- Hover effects with neon pink glow
- Mobile-responsive grid (auto-fills from 160px to 220px cards)
- **Updated Navigation**: All pages now use consistent navbar with logo
- **Enhanced Search Forms**: Updated to use GX button components with hover effects
- **Improved Styling**: All pages now load `goondex.css` instead of `style.css`
### 🌐 Adult Empire Integration
- **Complete Scraper Implementation**
- HTTP client with cookie jar for session management
- XPath-based HTML parsing (no official API available)
- Scene scraping: title, date, studio, performers, tags, description, cover art
- Performer scraping: bio, measurements, birthday, ethnicity, aliases, images
- Search functionality for both scenes and performers
- **CLI Commands**:
- `adultemp search-scene [query]` - Search for scenes
- `adultemp search-performer [name]` - Search for performers
- `adultemp scrape-scene [url]` - Scrape and import a scene
- `adultemp scrape-performer [url]` - Scrape and import a performer
- `adultemp merge-performer [id] [url]` - Merge Adult Empire data into existing performer
- Optional `--etoken` flag for authenticated access
### 🔄 Data Merging & Update System
- **Intelligent Data Merger**
- New `merger` package for combining data from multiple sources
- TPDB data takes priority, Adult Empire fills in gaps
- Smart name matching algorithm (70% word overlap threshold)
- Merges: bio, aliases, measurements, physical attributes
- Preserves high-quality TPDB images over Adult Empire
- **Performer Update Command**
- `performer-update [id]` - Refresh performer from TPDB
- Automatically searches Adult Empire for supplemental data
- Shows potential matches for manual merging
### 📚 Documentation
- Created comprehensive `docs/ADULT_EMPIRE_SCRAPER.md`
- Architecture overview with diagrams
- API reference for all scraper methods
- XPath selector documentation
- Authentication guide (etoken cookie)
- Troubleshooting section
- Comparison with TPDB scraper
### 🐛 Bug Fixes & Improvements
- Fixed variable shadowing in `joinStrings()` function
- Added missing dependencies for HTML parsing (`golang.org/x/text/*`)
- Riley Reid investigation: Performer exists (ID: 20029) but has 0 scenes (scene linking issue)
### 📦 New Dependencies
- `github.com/antchfx/htmlquery` - XPath HTML parsing
- `github.com/antchfx/xpath` - XPath query engine
- `golang.org/x/net/html` - HTML parsing
- `golang.org/x/text/*` - Text encoding support
---
## v0.1.0-dev3 (Previous)
Complete TPDB metadata with duplicate prevention
## v0.1.0-dev2
Full TPDB integration with auto-fetch and comprehensive docs
## v0.1.0-dev1
Initial release with basic TPDB functionality