Skip to content

Releases

v1.0.6

Choose a tag to compare

@github-actions github-actions released this 11 Nov 12:37

🎉 Open News v1.0.6

Version 1.0.6 brings story grouping, structured exports, async support, and an initial Model Context Protocol (MCP) integration.

✨ Highlights

  • 📰 Grouped discovery results include a representative article, related stories, source names, and cluster metadata.
  • 🤖 MCP server exposes news search and fetch, article extraction, discovery, summarization, filtering, ranking, and clustering as tools.
  • 📊 Structured exports add to_text(), to_jsonld(), and to_csv() for LLM-ready text, Schema.org NewsArticle data, and tabular workflows.
  • ⚡ Async support is available through async_=True on fetch(), search(), get_article(), batch_summarize(), and search_and_summarize(). Synchronous behavior remains the default.
  • 🧰 Custom feed caching is supported through the new FeedCache protocol.
  • 📦 Packaging and release tooling now includes the src/open_news layout and improved dependency-wheel planning and verification.

🔄 Compatibility

The former package-level async functions remain available as deprecated compatibility wrappers and emit DeprecationWarning. New code should use async_=True.

ℹ️ MCP note

MCP is an initial integration and does not expose every Python API option. Use the Python API for functionality not yet available through MCP.

Full Changelog: v1.0.5...v1.0.6

v1.0.6b2

v1.0.6b2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Nov 12:11

Full Changelog: v1.0.6b1...v1.0.6b2

v1.0.6b1

v1.0.6b1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Nov 11:33

Open-News [1.0.6b1] — 2026-11-11

Added

  • Introduced an optional FastMCP stdio server with tools for news search, fetching, extraction, discovery, summarization, filtering, ranking, and clustering.
  • Added to_text(), to_jsonld(), and to_csv() exporters, CLI support, documentation, and examples.

Changed

  • Added async_=True support to the main fetch, search, article, and summarization APIs; synchronous behavior remains the default.

Known gaps

  • MCP support is an early integration and is not feature-complete. More capabilities are planned; use the Python API for options not yet exposed through MCP.

Full Changelog: v1.0.6a2...v1.0.6b1

v1.0.6a2

v1.0.6a2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Nov 16:32

Highlights

  • Story grouping is now the default for fetch, search, site search, and discovery. Results include source names and related articles; exact normalized URL copies merge, while similar articles at distinct URLs are retained.
  • Moved FeedEngine into open_news.processing and exposed it through the package API, while preserving the previous import path for compatibility.
  • Migrated the package to the src/ layout and updated project tooling and documentation.
  • Improved dependency-wheel workflows and Android/Termux build support.
  • Updated CLI and exports to make grouped stories and their sources easier to use.

v1.0.6a1

v1.0.6a1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 06 Nov 17:33

Open News v1.0.6a1

Full Changelog: v1.0.5...v1.0.6a1

v1.0.5

Choose a tag to compare

@github-actions github-actions released this 05 Nov 19:01

What's new

This release finalizes the work started in v1.0.5a1, with improvements to release automation, documentation, and developer onboarding. There are no changes to the public Python API in this release.

Release and CI

  • Added Python 3.14 to the CI test matrix while continuing to support Python 3.10 and newer.
  • Simplified the release workflow so packaging no longer waits for a separate test job. Tests continue to run in CI.
  • Set the package and project metadata to version 1.0.5.

Documentation and examples

  • Refreshed the README and guides for installation, the Python API, CLI, parameters, and architecture.
  • Added architecture and processing-pipeline diagrams.
  • Added a Google Colab notebook demonstrating installation, fetching and searching news, ranking and clustering results, and exporting Markdown and JSON.
  • Added standalone fetch, search, and export scripts for local testing and adaptation.

Upgrade

Install or upgrade from PyPI:

python -m pip install --upgrade open-news-api

See the documentation for installation details and API references. To try the notebook, use the Open in Colab badge or open examples/colab/open_news_colab_demo.ipynb in the repository.

v1.0.5a1

v1.0.5a1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 05 Nov 17:26

Open News v1.0.5a1 — Initial Pre-release

The first pre-release of Open News v1.0.5 introduces improvements and refinements to the library's news fetching, RSS discovery, Google News search, and article extraction capabilities.

This release is intended for early testing and feedback before the stable v1.0.5 release.

What's included

  • News article fetching and extraction.
  • RSS feed parsing and discovery.
  • Google News search integration.
  • Improved reliability and error handling.
  • API refinements and maintenance updates.

Note: This is an early pre-release. APIs and behavior may change before the final stable release. Feedback and bug reports are welcome.

v1.0.4

Choose a tag to compare

@github-actions github-actions released this 22 Sep 00:32

📰 Open News v1.0.4 — Stable

🎉 v1.0.4 is now stable!

This release adds clustering, topic filtering, relevance ranking, and
structured export on top of the v1.0.3 acquisition baseline. Acquisition,
extraction, and URL resolution are unchanged.

✨ Highlights

  • 🧩 Story clustering — cluster_articles() groups related stories by title similarity; size reflects outlet coverage
  • 🏷️ Topic filtering — filter_articles(topic=...) scans title, description, text, category, and keywords
  • 📊 Relevance ranking — rank_articles() with BM25 (via bm25s), TF-IDF, or basic scoring; auto falls back transparently
  • 📤 Structured export — to_markdown() and to_json(); writes to a path and returns the string, auto-detects clusters
  • 🖥️ CLI — new cluster and export subcommands; --topic, --rank-query, --export-md, --export-json on existing commands
  • 📺 TUI — arrow-key navigation; menus 11 (Cluster) and 12 (Export); settings for topic, rank method, cluster threshold
  • 📦 New nlp extra — sumy + bm25s for optional NLP ranking
  • 🧪 Expanded test suite — cluster, rank, export, and integration tests

🐛 Fixed

  • TUI no longer prompts for rank query on every fetch/search Google News "any" mode uses an explicit OR; end_date is inclusive Bing News day/week qft intervals corrected pyproject.toml accepted by uv / pip

⚠️ Known issues

  • location= is a query hint, not a filter — use whitelist for region Liveblog / aggregator / quote-page dates are approximate Extracted description is passed through verbatim

🔄 From v1.0.3 → v1.0.4

  • v1.0.3 froze the acquisition architecture. v1.0.4 makes the results of that acquisition more useful out of the box: group related stories, filter by topic rather than keyword alone, rank by relevance with an optional BM25 backend, and export clean Markdown or JSON.

📦 Install

    pip install open-news-api==1.0.4

    # or with the optional NLP ranking backend:
    pip install "open-news-api[nlp]"

📚 Full changelog: docs/changelog.md

v1.0.4a2

v1.0.4a2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Sep 18:37

Full Changelog: v1.0.4a1...v1.0.4a2

v1.0.4a1

v1.0.4a1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Sep 18:21

Full Changelog: v1.0.3b2...v1.0.4a1