Skip to content

Commit f420e06

Browse files
authored
chore!: Remove haystack exp dep (#11430)
1 parent 692ebaf commit f420e06

3 files changed

Lines changed: 24 additions & 3 deletions

File tree

MIGRATION.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,20 @@ agent = Agent(
154154
The `convert_result_to_json_string` option (also previously set through `tool_invoker_kwargs`) has been removed.
155155
Non-string tool results are now always serialized with `json.dumps` rather than `str`, which changes their string form.
156156

157+
### `haystack-experimental` is no longer a core dependency
158+
159+
**What changed:** `haystack-experimental` has been removed from Haystack's core dependencies. Installing `haystack-ai` no longer pulls in `haystack-experimental` automatically.
160+
161+
**Why:** Reduces the default installation footprint. Experimental features are opt-in and should not be installed for users who do not need them.
162+
163+
**How to migrate:** If your code imports from `haystack_experimental` (directly or through an integration that depends on it), install the package explicitly:
164+
165+
```bash
166+
pip install haystack-experimental
167+
```
168+
169+
Installations that do not use `haystack_experimental` require no changes.
170+
157171
### Agent
158172

159173
#### Breakpoint and snapshot API removed

pyproject.toml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ dependencies = [
5151
"MarkupSafe", # already required by Jinja2 but used directly in templatize_part
5252
"posthog!=3.12.0", # telemetry # 3.12.0 was problematic https://github.com/PostHog/posthog-python/issues/187
5353
"pyyaml",
54-
"more-itertools", # TextDocumentSplitter
54+
"more-itertools", # DocumentSplitter
5555
"networkx", # Pipeline graphs
5656
"typing_extensions>=4.7", # Extended typing features (NotRequired, etc.)
5757
"httpx",
@@ -60,7 +60,6 @@ dependencies = [
6060
"jsonschema", # JsonSchemaValidator, Tool
6161
"docstring-parser", # ComponentTool
6262
"filetype", # MIME type guessing for ImageContent
63-
"haystack-experimental",
6463
]
6564

6665
[tool.hatch.envs.default]
@@ -369,7 +368,7 @@ ignore = [
369368
# install/lock time, so no manual date updates are needed.
370369
# First-party packages are exempted so freshly published releases are always resolvable.
371370
exclude-newer = "24 hours"
372-
exclude-newer-package = { haystack-experimental = "0 days", haystack-pydoc-tools = "0 days" }
371+
exclude-newer-package = { haystack-pydoc-tools = "0 days" }
373372

374373
[tool.coverage.run]
375374
omit = ["haystack/testing/*"]
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
upgrade:
3+
- |
4+
``haystack-experimental`` is no longer a core dependency of Haystack and is no longer installed automatically with ``haystack-ai``.
5+
If your code imports from ``haystack_experimental`` (directly or
6+
through an integration that relies on it), you must now install it explicitly, for example with
7+
``pip install haystack-experimental``. Installations that do not use ``haystack_experimental`` are
8+
unaffected.

0 commit comments

Comments
 (0)