Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

PageContext.get() / CompileContext.get() outside a compile raise a bare `LookupError: <ContextVar name='PageContext' ...>` instead of a message

Đã đóng Phù hợp với người mới
#7,489 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 2 ngày

@harsh21234i đang làm issue này rồi.

Từ ngày 8/10/2026.

  • #7517 của @harsh21234i — đang mở

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
78/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
python
Lĩnh vực
backend

Hướng nghiên cứu

Tìm các lớp PageContext và CompileContext (tìm kiếm ContextVar trong codebase) và tìm nơi .get() được triển khai. Bọc việc tra cứu contextvars sao cho việc gọi .get() bên ngoài một lần biên dịch trang sẽ ném ra một lỗi mô tả, nêu rõ context và khẳng định nó phải chạy trong quá trình biên dịch trang. Tái hiện trước bằng cách gọi PageContext.get() bên ngoài một lần biên dịch để xem LookupError thô, rồi kiểm tra cách hành vi của 0.9.12 (RuntimeError kèm thông điệp) được tham chiếu trong prerelease_testing/2026-10-07/FINDINGS.md finding F-012. Xong khi cả hai lớp đều ném thông điệp rõ ràng và các test context hiện có vẫn pass.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Severity: LOW, regression vs 0.9.12 (which raised RuntimeError with a message); present on 0.10.0a1 and 0.10.0a2.

Calling PageContext.get() (or CompileContext.get()) outside of a page compile raises the raw contextvars LookupError with the ContextVar repr. Third-party components that call it at import time or in tests get no hint. Wrap it and raise a descriptive error (what was called, that it must run during page compilation).

Evidence: thirdparty_a2/logs/derive_c-* and reverify_core; finding F-012 (10-06) and its 10-07 row in FINDINGS.md.

Ngôn ngữ chính
Python
Star
29k
Fork
1.8k
Merge trung bình
3 ngày 4 giờ
Pull request đã merge (30 ngày)
177

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của reflex-dev/reflex

Tất cả issue của reflex-dev/reflex

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.