New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Handle 0-byte (moved/deleted) albums differently on import dupe detection #2486
Comments
That's odd! Just to check, you've somehow ended up with a bunch of empty files in your collection? Maybe something like
would help clean those up? |
The way it happens on Windows is I import an album, then find a flaw with my config. So I change the config and move the imported album out of the library and send it to the importer again. There's probably a better way to do this. One would think
I want to update the file folders and filenames based on how my config.yaml is set up, without going through the time-intensive process of beet re-calculating file paths for each file (most of which are unchanged). I can do that with beet move but it takes a while. |
Take a look at the FAQ—the right solution is to run And for what it's worth, you can remove things from your library with |
Is this still relevant? If so, what is blocking it? Is there anything you can do to help move it forward? This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
I can't guarantee I manage my library through beets 100% of the time. Beets should not get caught up in files it can't find. I don't know if this behavior still happens. |
Is this still relevant? If so, what is blocking it? Is there anything you can do to help move it forward? This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
yes |
Hey, @RollingStar—is it possible to summarize what the actionable next steps are? It would be useful to crystallize what actually needs to change here. Then we can turn this into a proper feature request. |
The problem traces back to this:
If we accept this as acceptable (but annoying) behavior for Beets users (especially novice users), then some bugs are bound to crop up. Going back to it now, the bug I reported is a subset of a general bug: Beets behaves oddly when it encounters files that have been deleted. Perhaps it should manage those errors more invisibly. Or should a filesystem error trigger a hard stop and suggest the user (1) look into the problem and (2) Steps to reproduce:
Sidenote: An example normal import which triggers the dupe detection.
The old album shows up as 0 bytes, meaning it's been deleted. I feel that Beets should/could detect that the old album doesn't actually exist.
|
I see; thanks for clarifying! I guess the thing that is still making me uncertain here is that I am unsure what we can do that would not create new, ancillary confusion.
We could potentially clarify the message to say that there are zero files associated with the album? But I'm not sure that would help much. |
After sleeping on it, I think the best course of action is this:
It strikes a balance between hard-to-predict edge cases and informing/protecting the user of those edge cases. The reason I made this bug report in the first place was because I didn't know I was incorrectly using beets, and there are simple remedies to prevent it and fix the missing albums. The error that comes up could be reasonably clear in just a few lines, and link to a documentation page too. Something like:
I would print that message and simultaneously run |
Sounds like a good place to start! What if we just enhanced the message you get there and expanded the docs for now? (I still think automatically removing stuff in the background is problematic, but we can tell people to run the command themselves if they want.) |
I'm with you on not doing an auto-remove. It's too hard to do right. |
This issue got far away from my original post and a lot of the info is irrelevant. Should I make a new issue for a more informative error message and close this one? |
Sure, sounds good! |
Moving discussion to #3750 |
Problem
Same setup and similar problem as #2485. Does the user need to care about a phantom 0-byte nonexistent album in their library? That sounds like it is more useful as a message in a log file, or an error at the end of an import. See also #116.
Suggested behavior: beet imports the new album and defaults to "remove old" in the case of 0 byte albums that it cannot find the files for. Doesn't it end up pruning such removed files upon a "beet update" anyway?
The text was updated successfully, but these errors were encountered: