Skip to content

Allow pipecat-ai 1.11 and 1.12, and test against the newest - #3

Open
Rehansanjay wants to merge 1 commit into
vivekgupta-memcode:mainfrom
Rehansanjay:fix/allow-current-pipecat
Open

Rehansanjay wants to merge 1 commit into
vivekgupta-memcode:mainfrom
Rehansanjay:fix/allow-current-pipecat

Conversation

@Rehansanjay

Copy link
Copy Markdown

pyproject.toml pins pipecat-ai>=1.10,<1.11. pipecat ships 1.12.0, so a project already on a current pipecat cannot add this package without downgrading the framework two minor versions.

As far as I can tell the ceiling is not needed. Checked against 1.12.0:

  • every pipecat symbol imported in src/pipecat_memcode/memory.py resolves — InterruptionFrame, LLMContextFrame, LLMContextAssistantTurnFrame, LLMSpecificMessage, acquires, releases
  • every method the processor overrides has an unchanged signature — setup(self, setup), cleanup(self), process_frame(self, frame, direction), push_frame(self, frame, direction=DOWNSTREAM)
  • nothing in the 1.11 or 1.12 Removed and Deprecated entries is referenced here. The removals are NotifierGate, ClassifierGate and ConversationGate; the deprecations are UninterruptibleFrame, the StartupTimingObserver fields, BaseUIWorker, ReplyToolMixin and the eval APIs

The package was already written against the post-1.8 names, which is why it comes out clean.

So the ceiling becomes <2, matching the convention memcode-sdk>=2.4.0,<3 uses one line above, and keeping clear of the 2.0.0 removals the changelog schedules.

One thing this does not do on its own is prove the suite passes. CI installs the package --editable, so it honoured the old ceiling and has never resolved pipecat above 1.10.x — the pin made its own verification impossible. The second job added here installs the newest pipecat-ai, prints the resolved version and runs pytest, so the wider range is proven on every run instead of asserted once in this description. I have not run the suite locally, deliberately — that job is the right place for the answer, and if it fails the diff is one line to revert.

Happy to narrow the ceiling to <1.13 instead if you would rather move it forward one release at a time.

The ceiling pinned pipecat-ai below 1.11 while pipecat ships 1.12.0, so a
project already on a current pipecat cannot add this package without
downgrading the framework two minor versions.

Nothing in the package needs the old ceiling. Checked against 1.12.0:

- every pipecat symbol imported in src/pipecat_memcode/memory.py resolves
  (InterruptionFrame, LLMContextFrame, LLMContextAssistantTurnFrame,
  LLMSpecificMessage, acquires, releases)
- every method the processor overrides has an unchanged signature:
  setup(self, setup), cleanup(self), process_frame(self, frame, direction),
  push_frame(self, frame, direction=DOWNSTREAM)
- nothing in the 1.11 or 1.12 Removed and Deprecated entries is referenced
  here. The removals are NotifierGate, ClassifierGate and ConversationGate;
  the deprecations are UninterruptibleFrame, StartupTimingObserver fields,
  BaseUIWorker, ReplyToolMixin and the eval APIs

The ceiling becomes <2, matching the convention memcode-sdk>=2.4.0,<3 uses
one line above, and keeps the package clear of the 2.0.0 removals the
changelog schedules.

CI installs the package editable, so it honoured the old ceiling and never
resolved pipecat above 1.10.x. A second job installs the newest pipecat-ai,
prints the resolved version and runs the suite, so the wider range stays
proven on every run rather than asserted once here.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant