Skip to content
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

Cannot start vspreview #39

Open
EleonoreMizo opened this issue Oct 14, 2021 · 6 comments · May be fixed by #44
Open

Cannot start vspreview #39

EleonoreMizo opened this issue Oct 14, 2021 · 6 comments · May be fixed by #44

Comments

@EleonoreMizo
Copy link

I cannot start VS Preview (Win 7 64 bits). README.md says that only Python 3.8 is required but the warning from the log tells something different and I don’t know if this is the cause of the problem:

2021-10-14 11:16:54.407: WARNING: VSPreview is not tested on Python versions prior to 3.9, but you have 3.8.0 final. Use at your own risk.
2021-10-14 11:16:54.422: DEBUG: Reading QSS file in: :qdarkstyle\dark\style.qss
2021-10-14 11:16:54.422: INFO: QSS file sucessfuly loaded.
2021-10-14 11:16:54.423: DEBUG: Checking patches for being applied.
2021-10-14 11:16:54.423: INFO: Found version patches to be applied.
2021-10-14 11:16:54.423: INFO: Found application patches to be applied.
Traceback (most recent call last):
  File "C:\Program Files\Vapoursynth Preview\run.py", line 4, in <module>
    main()
  File "C:\Program Files\Vapoursynth Preview\vspreview\main.py", line 843, in main
    main_window = MainWindow()
  File "C:\Program Files\Vapoursynth Preview\vspreview\core\bases.py", line 24, in __call__
    cls.instance = super().__call__(*args, **kwargs)
  File "C:\Program Files\Vapoursynth Preview\vspreview\core\better_abc.py", line 25, in __call__
    instance = NativeABCMeta.__call__(cls, *args, **kwargs)
  File "C:\Program Files\Vapoursynth Preview\vspreview\main.py", line 413, in __init__
    self.toolbars = Toolbars(self)
  File "C:\Program Files\Vapoursynth Preview\vspreview\core\bases.py", line 24, in __call__
    cls.instance = super().__call__(*args, **kwargs)
  File "C:\Program Files\Vapoursynth Preview\vspreview\core\better_abc.py", line 25, in __call__
    instance = NativeABCMeta.__call__(cls, *args, **kwargs)
  File "C:\Program Files\Vapoursynth Preview\vspreview\main.py", line 280, in __init__
    self.pipette   =   PipetteToolbar(main_window)
  File "C:\Program Files\Vapoursynth Preview\vspreview\core\better_abc.py", line 25, in __call__
    instance = NativeABCMeta.__call__(cls, *args, **kwargs)
  File "C:\Program Files\Vapoursynth Preview\vspreview\toolbars\pipette.py", line 46, in __init__
    self.outputs = WeakKeyDictionary[Output, vs.VideoNode]()
TypeError: 'ABCMeta' object is not subscriptable
@Endilll
Copy link
Owner

Endilll commented Oct 14, 2021

Thank you for pointing out to stale readme. It says the same as warnings now.
Can you upgrade to 3.9 and try again?

@DJATOM
Copy link
Contributor

DJATOM commented Oct 14, 2021

3.8 is the latest win7 supported version. Maybe its possible to compile 3.9 for win7, but I never tried.

@EleonoreMizo
Copy link
Author

Indeed sorry I haven’t any Win 10 rig here so I cannot install Python 3.9 to test.

@Ichunjo
Copy link
Contributor

Ichunjo commented Oct 14, 2021

From this thread , it seems that you can’t add type annotations to abstract base classes in collections.abc.
WeakKeyDictionary inherits from collections.abc.MutableMapping so that’s why it doesn’t work in Python 3.8.

self.outputs = WeakKeyDictionary[Output, vs.VideoNode]()

Quick and dirty fix is just removing the annotations of it like this self.outputs = WeakKeyDictionary()

@EleonoreMizo Minor, but you should update to the latest update of 3.8. Friends have a lot of weird issues with 3.8.0 and none with 3.8.10.
3.8.11 and 3.8.12 are just security updates and you can probably skip them. 3.8.10 should be good enough.

@EleonoreMizo
Copy link
Author

Thanks for the tip. Unfortunately this leads to other errors, so I guess it’s probably a dead end without Python 3.9.

@Ichunjo
Copy link
Contributor

Ichunjo commented Oct 14, 2021

It worked fine for me using 3.8.10. It was on Windows Server 2019 though.

@Ichunjo Ichunjo linked a pull request Jan 16, 2022 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants