maranedah / pyableton

17 stars 1 forks source link

AttributeError: 'NoneType' object has no attribute 'attrib' #21

Open taanegl opened 6 months ago

taanegl commented 6 months ago

Hey :) I keep getting this error when I try to run Ableton() within venv.

Steps to reproduce:

  1. Enter py REPL, either as a part of the system or inside a venv
  2. Load pyableton
  3. Try to run pyableton to parse an als project (in the current directory)
  4. Crash with an error
Python 3.10.11 (tags/v3.10.11:7d4cc5a, Apr  5 2023, 00:38:17) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from pyableton import Ableton
>>> Ableton("./Spacebum.als")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python310\lib\site-packages\pyableton\Ableton.py", line 58, in __init__
    super().__init__(root)
  File "C:\Python310\lib\site-packages\pyableton\AbletonComponent.py", line 34, in __init__
    initialized_value = self.init_python_object_from_annotation(
  File "C:\Python310\lib\site-packages\pyableton\AbletonComponent.py", line 98, in init_python_object_from_annotation
    initialized_value = annotation_param_type(new_param_value)  # casts to python object
  File "C:\Python310\lib\site-packages\pyableton\AbletonComponent.py", line 34, in __init__
    initialized_value = self.init_python_object_from_annotation(
  File "C:\Python310\lib\site-packages\pyableton\AbletonComponent.py", line 87, in init_python_object_from_annotation
    new_param_value = [
  File "C:\Python310\lib\site-packages\pyableton\AbletonComponent.py", line 88, in <listcomp>
    ableton_component(node) for node in root.find(param_name).findall("./")
  File "C:\Python310\lib\site-packages\pyableton\Track.py", line 27, in __new__
    return MidiTrack(track_node)
  File "C:\Python310\lib\site-packages\pyableton\AbletonComponent.py", line 34, in __init__
    initialized_value = self.init_python_object_from_annotation(
  File "C:\Python310\lib\site-packages\pyableton\AbletonComponent.py", line 80, in init_python_object_from_annotation
    new_param_value = list(node.attrib.values())[0] == "true"
AttributeError: 'NoneType' object has no attribute 'attrib'
>>>
MartinBarker commented 3 months ago

Try downloading setuptools from inside the venv