-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Unable to work around issues reported in closed bug report #3674 #3976
Comments
If beets is really running using a version of Python or earlier than 3.8 (i.e 2.7 or 3.7 in your case), I can't see how this issue could still occur. Are you sure that after each of your various steps, you actually executed the newly installed beets from source using the intended version of Python? You should be able to tell from the tracebacks, note the filepaths that are shown, which in the case above includes Managing various versions of Python in parallel can be quite a mess, unfortunately. Note for example, that this particular 3.8 installation is only for your user, not system-wide. |
@wisp3rwind - Thanks for your reply. That is exactly why I am reaching out, as one time in the past when I tried to correct an issue with beets, the default Python installation got messed up to the point that the system was rendered unbootable (thankfully, I was able to restore a recent system image to get me up and running again). I believe version 3.8 is the default for Linux Mint 20.1. The only version I installed was 3.7, and the only step I believe needed Python3.7 specified (correct me if I'm wrong) is executing the setup script ( I love the beets app and have been using it for years, but then again it shouldn't be this hard to perform a basic installation that works. I think I may have to go the route I suggested of standing up a virtual machine with the correct environment, but even with that I believe I can use some guidance to make sure I get things correct. |
I seriously doubt that simply installing beets caused this, probably something else was changed at the same time, or the Python installation was already in an inconsistent state before. Also, AFAIK, most distros don't need Python to boot.
Run |
It was definitely involving the installation of beets, and in working on this issue I came across someone else who seemed to have pretty much the same problem. I seem to remember someone replying in the issue I opened to use SUDO with PIP, so I suspect it had something to do with that (deadly) combination.
I'm admittedly no coding pro, but the 'master' issue I believe that is the root cause of my issue, #3674, and others was #3621 ("invalid use of AST by beets since Python v3.4 and later."), and that is showing as merged into the master branch in Github since June of last year. I would think that running from master (which I believe is what should have been pulled with my 5th entry in my original post, and showed "1.5.0" as the version installed) would circumvent the "Name node can't be used" issue. Anyway, after almost 2 weeks without Internet access, the 2nd telephone rep finally and actually fixed the problem with their line today, and "I'm as giddy as a drunken man" (please pardon the Alastair Sim "Christmas Carol" reference), and I can now get the VM environment completed I hope to use as a workaround. Already hitting a few of the issues from back "at a younger age of doing *nix stuff" as was so aptly said in the ITSFOSS link I referenced, like that even Mint 19.3 installs Python 2(.7) version of Python with Still open to suggestions of how to remedy the issue with my Mint 20.1 box (that doesn't involve any daring actions that might compromise the default Python for the OS, or isn't more complicated than going the route of using a VM. |
OK - I had some extra time this evening, so got farther along with the VM route. Install of beets using
Good so far. I queued up an album to process and ran the import command. It found the correct match at Musicbrainz, so I pressed "Enter" (defaults to [A]pply). It seemed to continue processing for a bit, but then spit out some errors:
I did a bit of searching through reported Issues, and I believe this matches symptoms in #3535. If I understand correctly, the bug only happens when no lyrics are found (usually I have good luck with popular artists, and the album was OK Computer by Radiohead). I may not get to trying a different album until tomorrow, but would like to get this patch, which was closed 4/17/20, which is after when 1.4.9 was released on 5/30/19. Just trying to avoid making any bad choices again at this juncture before proceeding...I already tried Any way to force pip3 to install 1.5.0? If not, is there a way to back off everything done installing with pip3, and then use the |
What I meant to say is: I doubt that rendering the system unbootable is a problem specific to beets, but rather a more general issue.
I'm repeating myself: I think you did not end up actually running the version from master: Even if it didn't fix the "invalid use of ..." issue, the line numbers in the traceback from your initial post would be different. You pulled the correct version in the 5th bullet point, and installed it with
No, 1.5.0 can only be obtained through |
@wisp3rwind I'm not sure how I would have ended up with multiple versions of beets installed since I did my best to uninstall before proceeding to the next bullet point. The method using the setup.py script didn't present any way to do this, of course. If there weren't already desperate needs for higher priority items like skilled maintainers for beets, I'd open a suggestion that setup.py be enhanced to offer an "-uninstall" option (or, an even better approached would be a standalone cleanup utility to help ensure a clean slate). Getting back to my testing with the VM...unfortunately, the issue I posted above ("Nonetype object during lyrics fetch") appears to happen no matter the album. Found something online that seems to identify this as a bug with different patches available, but I couldn't find enough other info to help pursue further. Just for kicks, I uninstalled 1.4.9 and used Pip to install an older version (1.4.6). But, that didn't seem to be enough to avoid the issue. So, I think I've gone as far down the timesuck black hole as I can afford to for at least a little while. Will watch for any other suggestions....again, looking for a clear, simple method to get any somewhat-current version of beets installed (assuming a freshly installed Linux OS - version again negotiable) and successfully working. |
Some positive progress to report: I think I've hit on a beets installation in the VM that seems to work successfully. I started with the most recent version (1.4.9), and
I finally got a different kind of error when I tried got to version 1.4.5 that seemed to involve the Fetchart plugin. I fairly quickly found this already reported in #2504, and as a remedy I went the route of installing ImageMagick (from the Linux Mint repos). After doing that, I reran the import and....no errors!! I then spent some time confirming the tagging was as expected using Puddletag, and everything looks good. I will wait before a few more albums go through successfully before I fully declare success. But, this is what's currently installed:
Hoping this might help someone else. When I get some time, I may go back and revisit my Mint 20.1 setup to see if I can pull off something similar and ditch the VM altogether. |
I got Mint 20.1 working with beets, and followed a similar path as with setting up the VM. However, I discovered a feature of PIP that was key in getting it to work. First, I used Timeshift to revert back to before I had tried all of the installations in my original post. Then, I used the Deadsnakes PPA to install Python 3.6.13. To get PIP to use this version of Python instead of the OS' default version (3.8), I used this command: Just for fun, I tried upgrading to the latest (PIP) version using
Which, I believe is the same issue described in #3535 (closed). So, I reverted back to version 1.4.5, and have done several imports successfully. I do notice that the lyrics plugin is now not as successful as I was used to, and I assume that is because I'm missing some updates/patches, including the fix for #3535. I do have a few other utilities to help fill in that gap, but it's more time consuming than just having beets get the lyrics. I guess I'm stuck until a new release (1.5.0?) is officially made available to PIP installations. Until then, I guess I must wait it out, but am going to close this issue since I was able to get a 'workaround' of sorts put together. |
Problem
I do not seem to be able to work around the Python issue reported in #3674 (Name node can't be used with 'None' constant). I've tried all suggestion in that thread and a few others including:
pip install beets==1.4.9
)git clone https://github.com/beetbox/beets.git
), then runningpython setup.py install
(which installed the latest version 1.5.0Setup
My configuration (output of
beet config
) is:I'm looking for guidance to try and get a working version of beets again. I suspect that installing from Git using the setup.py script has made changes that cannot be undone or uninstalled. Though the specific error text may vary a bit, this is representative of what happens:
At this point, my feeling is that it may be easiest to install an older version of Mint (18 or 17) in a virtual machine and try installing beets there. But:
Thanks in advance.
The text was updated successfully, but these errors were encountered: