Correct errors from a full course review#107
Merged
Merged
Conversation
Multi-agent review of all course material (accuracy, pedagogy, prose, code) with adversarial verification of every technical/code finding. Applies 171 confirmed fixes across 46 files. Highlights: - Code bugs that broke examples: pytest fixture syntax (@pytest.fixture("platform", ...) -> params=...), MyList.append infinite recursion, missing @dataclasses.dataclass decorators, missing type annotations/imports, undefined vars in Matlab/JS exists() examples. - Conceptual fixes: asyncio.to_thread runs sync (not async) code; corrected C++ move-assignment to steal the pointer instead of recursing; __neq__ -> __ne__; parameter() -> perimeter() (incl. mermaid diagram). - Currency: recommend Python 3.12+ (3.9 is EOL); git output master -> main; pipx links (pypy -> pypa typo, pypa.github.io/pipx -> pipx.pypa.io). - Filled the empty week13 shell.md stub with a full practical chapter. - ~95 prose/typo fixes. Assisted-by: ClaudeCode:claude-opus-4.8
d525239 to
3b48fd5
Compare
Signed-off-by: Henry Schreiner <henryfs@princeton.edu>
Closed
Closed
Collaborator
Author
|
I've removed shell.md and adjusted one or two things. |
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.
🤖 AI text below 🤖
Summary
A multi-agent review of all course material (one reviewer per chapter, 45 chapters) across four dimensions — technical accuracy/currency, pedagogy, prose, and code correctness — with adversarial verification of every accuracy/code finding. Of 189 findings, 171 were confirmed (18 rejected by verification, e.g. a bogus CSS mixed-content complaint). All 171 are applied here.
46 files changed. Verified: all notebooks remain valid JSON (re-normalized via
nbstripout),prekformatting applied, touched Python compiles, and thegeom_exampletest suite passes 4/4.Notable fixes
Code bugs that broke examples
@pytest.fixture("platform", [...])→@pytest.fixture(params=[...]);monkepatch→monkeypatchMyList.appendcalled itself (infinite recursion) → delegates toself.items.append@dataclasses.dataclassdecorators (Incr, others) and a missingslots: listannotationexists()examples; missing imports (InterpreterPoolExecutor,Generic/TypeVar)Conceptual / correctness
asyncio.to_threadwas described as running async code — it runs sync/blocking code*this = HeapHolder(other)__neq__→__ne__;parameter()→perimeter()(including the mermaid class diagram)Currency
master→maingithub.com/pypy/pipx(typo) →pypa;pypa.github.io/pipx→pipx.pypa.ioContent
week13_misc/shell.mdstub with a full practical chapter: pipes/redirection, grep/ripgrep, find/fd, xargs, sed/awk, history & shortcuts, ssh/scp/rsync, jobs/nohup/tmux, explainshell/tldrProse: ~95 typo/grammar fixes (e.g. "contagious"→"contiguous", "snipits"→"snippets", numerous its/it's).
Notes for the reviewer
shell.mdare worth a human read.myst build --executewas not run here (it executes every notebook and fetches Minuit2/ROOT). Recommend running it in CI / before merge as the gold-standard check.