Issue 1 fix : Fix Python 3.12+ Tree-sitter Installation & Enhance TUI Copyability#3
Merged
Conversation
… 3.11 Pinned tree-sitter grammar packages at 0.21.x are not published for Python 3.12+, which blocks pip/pipx installs on macOS Apple Silicon and other 3.12 environments. Keep the existing 0.21.x pins for Python <3.12 and add bounded >=0.23,<0.26 constraints for Python >=3.12 across core and grammar packages in pyproject.toml and requirements.txt. Add _build_language() in the parser to tolerate legacy and modern tree_sitter.Language constructor signatures so upgraded grammars do not fail at runtime. Add parser API regression tests and a compatibility CI matrix (ubuntu + macos-14, Python 3.11/3.12/3.13) with install, parser, and CLI smoke checks. Changelog: document Tree-sitter install fix for 3.12+.
made the tui console outputs copyable
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Merge Description: Fix Python 3.12+ Tree-sitter Installation & Enhance TUI Copyability
Summary
This branch resolves installation failures on Python 3.12+ environments (specifically macOS Apple Silicon / ARM64) caused by unavailable pinned legacy Tree-sitter dependencies (closes #1). It also introduces feature enhancements for the Textual TUI, making console logs copyable.
Changes
1. Tree-sitter Dependency & Parser Compatibility (Fixes #1)
pyproject.tomlandrequirements.txtto keeptree-sitterand grammar packages (python,javascript,typescript,go,rust) pinned to0.21.xfor Python< 3.12, while using loose constraints (>=0.23, <0.26) for Python>= 3.12.src/codegenome/parser.pywith a fallback try-catch block to dynamically support both legacy (0.21.x) and modern (>=0.23) Tree-sitterParserinitialization signatures without runtime errors..github/workflows/compatibility.yml) running install, parser, and CLI smoke checks on Ubuntu and macOS-14 environments using Python 3.11, 3.12, and 3.13.2. TUI Enhancements (Copy to Clipboard)
RichLogwith a customReadOnlyRichLogwidget insrc/codegenome/tui.py.Ctrl+Cbinding to copy selected log text to the clipboard instead of abruptly quitting the app (graceful fallback prompt provided when no text is selected).tests/test_tui.pyvalidating the custom log selection output, read-only guarantees, and keyboard bindings.3. Documentation
CHANGELOG.mdto document the copyable TUI feature, the tree-sitter installation fix referencing Issue Issues are disabled for the selected repository. Please select a different repository. #1, and the parser signature fallback.Verification & Testing
Ctrl+C.