default query that affects entire library is dangerous
- Dominant language
- Python
- Stars
- 15.7k
- Forks
- 2.1k
- Avg merge
- 4d 21h
- Merged PRs (30d)
- 31
Description
Maybe this is subjective, but I don't think so... Basically, the default query being '' is extremely dangerous. A simple typo on the command line can result in something quite bad such as:
beet modify genre="Electro"
Which is the same as:
beet modify genre="Electro" ""
It should take a lot more deliberateness to do a library-wide change like that. And in fact, something like "beet info" does the right thing in that "beet info" does nothing and you have to issue:
beet info ' '
To get "all". Which, by the way, is a second argument for making this change. Probably we want consistency across the various command line arguments as much as possible.
Related, arguably, the query for all should be "*", but maybe that's a whole separate ticket.
Contributor guide
Research direction
Start by reading the command-line handling for `beet modify` and `beet info`, especially how an empty query is interpreted. Compare their current behavior with the proposed deliberate all-library query, including whether `*` is in scope; done when library-wide changes require explicit input and related commands are consistent.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 32/100