fix: print NIP101 instead of traceback on nitpick init in empty dir - #796
Open
DSeaStar wants to merge 2 commits into
Open
fix: print NIP101 instead of traceback on nitpick init in empty dir#796DSeaStar wants to merge 2 commits into
DSeaStar wants to merge 2 commits into
Conversation
The init command did not catch QuitComplainingError, so --suggest in a directory without a project root dumped an AttributeError traceback. Handle it like check/fix/ls and add a regression test.
tomlkit 0.15.1 prefixes every comment() line with "#", so pre-joining with "# " produced "# # ..." in config. Prefer exact keys like .editorconfig over dotted-path lookup during equality.
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.
Summary
nitpick init --suggestin a directory with no project root (no.git,pyproject.toml, etc.) raised an uncaughtQuitComplainingErrorand dumped anAttributeError: 'Project' object has no attribute '_confirmed_root'traceback.check,fix, andlsalready catch this and print NIP101.initnow does the same and exits with code 2.Test plan
pytest tests/test_project.py tests/test_cli.py(45 passed)test_no_root_dir_no_python_fileandtest_no_root_dir_with_python_fileto covernitpick init --suggestnitpick init --suggestin an empty directory prints NIP101 (no traceback) and exits 2nitpick init --suggestin a normal project still works as before