# Changelog of Yahoo Search Scraper (`searchapi/yahoo-search-scraper`) Actor

- **URL**: https://apify.com/searchapi/yahoo-search-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/searchapi/yahoo-search-scraper.md

## Changelog

### 3.0.0

- Aligned the local and Docker browser on Playwright Chromium 1.61.1 with exact Apify/Crawlee versions and a reproducible lockfile.
- Added stable query-aware IDs, canonical URL aliases, top-level query/locale/timestamp context, recursive empty omission, and required dataset fields.
- Removed fabricated negative ad/sponsored flags; those fields appear only when Yahoo labels a result.
- Added single and batch query modes, fair per-query quotas, `maxPages`, concurrency/retry/timeout controls, consistent fingerprints, sessions, optional country-aligned Residential proxy support, and clean no-result/selector-drift handling.
- Added four passing tests, linting, QA inputs, production dependency overrides, and bounded resource loading.

All notable changes to the Yahoo Search Scraper are documented here.

### \[2.0.0] - 2026-06-12

#### Added

- **Schema expanded** from 14 to **36 fields**.
- **New fields**: `type`, `resultType`, `titleHtml`, `displayUrl`, `host`, `snippetHtml`, `description`, `publishedAt`, `publishedAtRaw`, `relativeTime`, `imageUrl`, `tags`, `category`, `isSponsored`, `searchUrl`, `searchMetadata`, `query`, `country`.
- **New view**: `fullDetails` — all 36 fields.
- **INPUT.json** added at project root for local validation.

### \[1.0.0] - 2025-05-20

#### Added

- Initial production release of the Yahoo Search Scraper.
- `PlaywrightCrawler`-based architecture using Chrome.
- Modular project structure.
- `validate-datasets.js` for local dataset output validation.
- `Dockerfile` using `apify/actor-node-playwright-chrome` image.
- `README.md` with full Apify usage guide.
