Skip to content

Commit b9331b7

Browse files
committed
docs: add v2.5.0 changelog entry
1 parent 35e8880 commit b9331b7

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Bright Data Python SDK Changelog
22

3+
## Version 2.5.0 - CLI-credentials auth + scraper-core dedup
4+
5+
- **CLI-credentials auth fallback**: one `brightdata login` now authenticates the SDK too. With no token given, `BrightDataClient()` / `SyncBrightDataClient()` fall back to the token already saved by the Bright Data CLI. Resolution order: `token=` parameter → `BRIGHTDATA_API_TOKEN` / `BRIGHTDATA_API_KEY` env vars → CLI login → actionable error mentioning `brightdata login`.
6+
- **Auth-source reporting**: every request now reports how the token was obtained via the `User-Agent` header (`brightdata-sdk-python/{version} (auth=param|env|cli_credentials)`) — the token itself is never logged.
7+
- **Internal: shared `ScraperCore`**: the 7 search scrapers (Amazon, ChatGPT, Instagram, LinkedIn, Pinterest, TikTok, YouTube) now share one construction core instead of hand-copied `__init__`s, fixing drift where Amazon/ChatGPT/LinkedIn search were missing the `BRIGHTDATA_API_TOKEN` environment fallback that the others already had (−174 lines of duplicated code).
8+
- Tests: 321 passing (57 new), covering every credential-resolution path, all 3 platform paths (Linux/macOS/Windows), and precedence order.
9+
310
## Version 2.4.0 - Sync parity, colorless job verbs, dataset error reporting
411

512
- **Sync client parity**: `SyncBrightDataClient` now mirrors the async surface. Added `client.datasets` (fixes the `SyncBrightDataClient` `datasets` `AttributeError`), the 5 missing scrapers (`scrape.tiktok` / `youtube` / `reddit` / `perplexity` / `digikey`), the 2 missing search verticals (`search.tiktok` / `youtube`), Pinterest trigger/status/fetch, and Instagram-search `profiles` / `reels_all`.

0 commit comments

Comments
 (0)