Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Problem report: https://runestone.academy/ns/books/published/wakeforest_py4eint_fall26/lists_parsing-lines.html

Open Beginner friendly
#1,591 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 2 days

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
65/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
content

Research direction

Start with the reported lists_parsing-lines.html page and its py4eint_2_listParsing activecode exercise; run the example that opens mboxShort.txt. Check how the exercise gets its input file and whether that file is available in the course. Done means the exercise runs without the reported file-not-found error.

Written by the indexing model from the issue text.

Description

A problem was reported through the Runestone "Report a Problem" form.

Field Value
Reporter [email protected]
Email [email protected]
Course wakeforest_py4eint_fall26
Page https://runestone.academy/ns/books/published/wakeforest_py4eint_fall26/lists_parsing-lines.html
Reported at 2026-10-06T17:10:19.753935
Description

When I run any exercise with "fhand = open('mboxShort.txt')", I get the error

OSError: [Errno 2] No such file or directory: 'mboxShort.txt' on line 1

in the py4e-int book

Browser console log
[log] Timezone cookie matches, not sending timezone to server
[log] This page served by undefined
[log] triggering runestone:pre-login-complete
[log] Runestone pre-login complete
[log] Loading Runestone component: activecode
[log] Loading Runestone component: fillintheblank
[log] Loading Runestone component: parsons
[log] before get hist
[log] before get hist
[log] adding video popouts
[log] setting up pretext
[log] SpliceWrapper: received message subject: undefined from iframe: unknown
[log] Response from server: 200
[log] Response from server: 200
[log] making a new scrubber
[log] Fake change event, skipping the log
[log] Data from server: {"answer":"[\"split\"]","correct":true,"percent":1,"timestamp":"2026-10-06T16:39:26.554047+00:00","div_id":"py4eint_2_listPars_fill1","sid":"[email protected]","course_name":"wakeforest_py4eint_fall26","id":11834949} calling repopulateFromStorage
[log] resolving checkServer with server data
[log] Data from server: {"answer":"0_0-1_0-3_1-5_1-6_1-7_1","source":"4_0-2_0-8_0","correct":true,"percent":1,"timestamp":"2026-10-06T16:40:31.892378+00:00","div_id":"py4eint_2_listPars_PP_file","sid":"[email protected]","course_name":"wakeforest_py4eint_fall26","id":31344122} calling repopulateFromStorage
[log] resolving checkServer with server data
[log] making a new scrubber
[log] Fake change event, skipping the log
[log] MathJax Ready -- dequeing a typesetting run for  undefined
[log] MathJax Ready -- dequeing a typesetting run for  undefined
[log] MathJax Ready -- dequeing a typesetting run for py4eint_2_listPars_fill1_feedback undefined
[log] starting runProg
[log] {"args":{"v":[{"$mangled":"[Errno 2] No such file or directory: 'mboxShort.txt'","$savedKeyHash":"[Errno 2] No such file or directory: 'mboxShort.txt'","v":"[Errno 2] No such file or directory: 'mboxShort.txt'","$hash":-1}],"in$repr":false},"traceback":[{"lineno":1,"colno":0,"filename":"<stdin>.py"}],"cause":null,"context":null,"$d":{"size":0,"entries":{},"buckets":{},"in$repr":false,"$version":0}}
[log] running {"div_id":"py4eint_2_listParsing","code":"fhand = open('mboxShort.txt')\nfor line in fhand:\n    line = line.rstrip()\n    if not line.startswith('From '): continue\n    words = line.split()\n    print(words[2])\n\n# Continue is used here to skip the rest of the line if it doesn't start with \"From \"\n","language":"python","errinfo":"OSError: [Errno 2] No such file or directory: 'mboxShort.txt' on line 1","to_save":"False","prefix":"","partner":"","editDist":0,"changesPerSecond":null,"course":"wakeforest_py4eint_fall26","clientLoginStatus":true,"timezoneoffset":4}
Dominant language
TypeScript
Stars
68
Forks
118
Avg merge
1d 13h
Merged PRs (30d)
19

Getting set up

  • Ships a Dockerfile or Docker Compose file
  • No pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from RunestoneInteractive/rs

All issues in RunestoneInteractive/rs

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.