Skip to content

Start reverse text iteration at the logical cursor - #668

Open
ShahadatTest wants to merge 1 commit into
mahmoud:masterfrom
ShahadatTest:fix/reverse-text-logical-cursors
Open

ShahadatTest wants to merge 1 commit into
mahmoud:masterfrom
ShahadatTest:fix/reverse-text-logical-cursors

Conversation

@ShahadatTest

Copy link
Copy Markdown

The change

After a TextIOWrapper read, reverse_iter_lines(..., preseek=False) starts at the underlying read-ahead cursor, often EOF, instead of the wrapper's logical position. Synchronize the wrapper with its own tell/seek cookie before reading its binary buffer.

Six regressions fail before the change; controls cover zero position and the default preseek behavior. Tests cover UTF-8 and translated CRLF newlines, partial lines and newline boundaries. This is independent of #633's JSONL relative-seek alignment and #649's block-size validation.

Validation on Windows:

  • Python 3.12 full unit suite and module doctests: 783 passed, 1 skipped, 22 subtests passed in 6.34s.
  • Python 3.10 focused regressions and affected module doctests: 9 passed in 0.11s.
  • New-test Flake8, basic source error checks, Python 3.7 syntax parsing and diff checks pass. Other interpreter/platform matrices were not run.

The backstory

Earlier contribution: #665. This was found during source inspection and controlled local probes; no personal application use or human review is claimed.

AI assistance

  • Harness/tooling: OpenAI Codex.
  • Model: GPT-6.
  • Original user prompt: new 20ta koro (make 20 new contributions). Codex investigated the bug, checked existing work and policies, implemented and tested the change, and prepared this PR.

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