jamesob / jamesob/coldcore

Coldcore does not gracefully exit with keyboard interrupt

Open
#1 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Python
Stars
140
Forks
12
PR merge metrics
No merged PRs in 30d

Description

At any stage during setup, if I type Ctrl+c to exit, a traceback appears. For example:

Traceback (most recent call last):
  File "/Users/username/src/coldcore/./coldcore", line 3118, in <module>
    main()
  File "/Users/username/src/coldcore/./coldcore", line 3109, in main
    cli.run()
  File "/Users/username/src/coldcore/./coldcore", line 310, in run
    return fnc(*func_args, **func_kwargs)
  File "/Users/username/src/coldcore/./coldcore", line 2060, in cli_main
    ui()
  File "/Users/username/src/coldcore/./coldcore", line 274, in wrapper
    return fnc(*args, **kwargs)
  File "/Users/username/src/coldcore/./coldcore", line 2049, in ui
    start_ui(config, walls, WizardController())
  File "/Users/username/src/coldcore/./coldcore", line 1801, in start_ui
    curses.wrapper(draw_menu, config, wallet_configs, controller, action)
  File "/Users/username/.pyenv/versions/3.9.0/lib/python3.9/curses/__init__.py", line 94, in wrapper
    return func(stdscr, *args, **kwds)
  File "/Users/username/src/coldcore/./coldcore", line 1776, in draw_menu
    config, wallet = run_setup(config, controller)
  File "/Users/username/src/coldcore/./coldcore", line 1057, in run_setup
    where = inp(f"where should I store your config? [{defaultpath}] ")
  File "/Users/username/src/coldcore/./coldcore", line 953, in inp
    got = input(yellow(" ?  ") + s).strip()
KeyboardInterrupt

Running on Mac OS X.

Contributor guide

No contributing guide indexed for this repository

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.

Research direction

Start in the coldcore executable at run_setup and inp, following the curses.wrapper path shown in the traceback. Reproduce Ctrl+C during setup and verify that interruption exits cleanly without printing a traceback at the command-line entry point.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.