Skip to content

Conversation

@akshayka
Copy link
Contributor

@akshayka akshayka commented Oct 12, 2025

Python 3.14 introduced changes to annotations, which broke msgspec structs; unfortunately, msgspec is no longer actively maintained.

While we search for an alternative or long-term solution, a short-term workaround is to import annotations from __future__.

This PR adds the import to more modules than needed; not sure what the minimal set is.

Python 3.14 introduced changes to annotations, which broke msgspec
structs; unfortunately, msgspec is no longer maintained.

A workaround is to import annotations from __future__. This draft commit
adds this import to all Python files, but we really only need it for
some subset of these files (not yet sure which subset).

* issue: jcrist/msgspec#847
* example workaround:
  return42/searxng@3963c23
@vercel
Copy link

vercel bot commented Oct 12, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
marimo-docs Ready Ready Preview Comment Oct 12, 2025 7:59pm

Copy link
Collaborator

@dmadisetti dmadisetti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can follow up with my CI changes

@akshayka akshayka changed the title fix: Python 3.14 compatibility fix: msgspec Python 3.14 compatibility Oct 13, 2025
@akshayka akshayka added the bash-focus Area to focus on during release bug bash label Oct 13, 2025
@akshayka akshayka marked this pull request as ready for review October 13, 2025 16:00
@akshayka akshayka merged commit 4ca9cb2 into main Oct 13, 2025
39 of 41 checks passed
@akshayka akshayka deleted the aka/fix-python-3.14-compat branch October 13, 2025 16:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bash-focus Area to focus on during release bug bash

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants