Skip to content

Add __classdictcell__ to ignored attributes (Python 3.14 support)#403

Merged
saulshanabrook merged 2 commits intomainfrom
saulshanabrook-patch-3
Mar 4, 2026
Merged

Add __classdictcell__ to ignored attributes (Python 3.14 support)#403
saulshanabrook merged 2 commits intomainfrom
saulshanabrook-patch-3

Conversation

Copilot AI review requested due to automatic review settings March 4, 2026 17:24
@saulshanabrook
Copy link
Member Author

@actions-user changelog

@saulshanabrook saulshanabrook merged commit 8d15c1c into main Mar 4, 2026
7 checks passed
@saulshanabrook saulshanabrook deleted the saulshanabrook-patch-3 branch March 4, 2026 17:29
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Updates egglog’s Python class-inspection logic to tolerate a new interpreter-injected attribute in Python 3.14, preventing accidental registration/processing of that attribute.

Changes:

  • Add __classdictcell__ to IGNORED_ATTRIBUTES in python/egglog/egraph.py.
  • Add an UNRELEASED changelog entry documenting the Python 3.14 compatibility change.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
python/egglog/egraph.py Ignores the new __classdictcell__ attribute during class namespace inspection to maintain compatibility on Python 3.14.
docs/changelog.md Documents the change under UNRELEASED.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


## UNRELEASED

- Add __classdictcell__ to ignored attributes (Python 3.14 support) [#403](https://github.com/egraphs-good/egglog-python/pull/403)
Copy link

Copilot AI Mar 4, 2026

Choose a reason for hiding this comment

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

In the changelog entry, __classdictcell__ is written with double-underscores but without code formatting, which Markdown renders as bold/italic in some renderers. Wrap the attribute name in backticks to keep it readable and consistent with other changelog entries (e.g., __call__, Expr.__replace_expr__).

Suggested change
- Add __classdictcell__ to ignored attributes (Python 3.14 support) [#403](https://github.com/egraphs-good/egglog-python/pull/403)
- Add `__classdictcell__` to ignored attributes (Python 3.14 support) [#403](https://github.com/egraphs-good/egglog-python/pull/403)

Copilot uses AI. Check for mistakes.
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.

3 participants