# Changelog of Yahoo Finance Historical Data Scraper (`eraydiler/yahoo-finance-historical-data-scraper`) Actor

- **URL**: https://apify.com/eraydiler/yahoo-finance-historical-data-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/eraydiler/yahoo-finance-historical-data-scraper.md

## Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

### \[0.8.21] - 2026-07-03

#### Added

- **Company Profile Extraction**: Added capability to extract company sector, industry, and detailed business summary.
- **Corporate Events Extraction**: Added support for extracting "Upcoming Events" (Earnings, Dividend dates) and "Recent Events" (SEC filings, 8-K, 10-Q).
- **Date Range Enhancements**: Standardized `dateRange` inputs to single characters (`d`, `w`, `m`, `y`) and added support for `max` to fetch all available historical data.
- **Offline Validation**: Added native Node.js testing (`tests/test.js`) to validate input consistency and dataset schema without making network requests.
- **Project Architecture Documentation**: Created `ARCHITECTURE.md` to document Clean Architecture patterns, conventions, and Playwright guidelines.

#### Changed

- **Massive Performance Boost**: Implemented a strict network request whitelist (`yahoo.com`, `yimg.com`) to block all third-party ad networks and trackers. This reduced scraping time by up to 10x and eliminated CPU/Memory overloads.
- **Memory Optimization**: Configured `.env` file to remove the default 4GB memory limit, allowing Crawlee to utilize available system RAM for better concurrency.
- **Documentation**: Updated `README.md` to function strictly as an Apify Storefront page, removing local usage instructions.

### \[0.7.2] - 2026-06-20

#### Added

- **Unified Per-Symbol Output**: Added a new output format that groups historical data, dividends, and splits by symbol into a single hierarchical JSON object.
- **Output Aggregator Service**: Implemented `OutputAggregator` to handle data transformation cleanly without affecting the default dataset.
- **Input Configuration**: Added `generateUnifiedOutput` toggle to `input_schema.json` (enabled by default) to allow users to opt-out of the new output format.
- **Output Schema**: Updated `output_schema.json` to include the new `UNIFIED_OUTPUT.json` reference.

#### Changed

- Updated `README.md` to document the new `UNIFIED_OUTPUT` format and input parameters.
