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

API4 user-facing backward incompatible changes #2

Open
12 of 15 tasks
AkarinVS opened this issue Sep 2, 2021 · 2 comments
Open
12 of 15 tasks

API4 user-facing backward incompatible changes #2

AkarinVS opened this issue Sep 2, 2021 · 2 comments

Comments

@AkarinVS
Copy link
Member

AkarinVS commented Sep 2, 2021

We should definitely fix all these issues as they impact real scripts:

  • removed get_read_array and get_write_array, see PR cython: restore old low-level frame data access APIs (take 2) vapoursynth/vapoursynth#744 and cython: restore old low-level frame data access APIs vapoursynth/vapoursynth#738 (I won't allow introducing of numpy dependency though.)
  • removed bint delete support from std.SetFrameProp, see PR std: restore ability to delete frame property with SetFrameProp vapoursynth/vapoursynth#739
  • VideoOutputTuple replaced AlphaOutputTuple breaking vsp: vapoursynth@ef7a731
  • vs.Format changed to vs.VideoFormat, add an alias.
  • core.get_plugins() deprecated. Reverse the deprecation.
  • vs.register_format deprecated. Reverse the deprecation.
  • removed vs.get_core() and other deprecated functions. Add them back.
    • vs.get_core(add_cache=False) support (used by seek-test.py)
  • core.add_cache removed. Just add a dummy property.
  • vspipe no longer changes the current directory into the script's directory, that is, -c is now always active, breaking a feature dated back to R46. What's more, now -c is an entirely different feature (--container). R56 further complicates this by reverting to the previous behavior without having a way to disable it (as vspipe -c is reused to mean something entire different)
  • vspipe -a will pass as str, not bytes objects. // introduce vspipe3 that restores R54 behavior? (A universal workaround: when passing utf-8 strings, use a = os.fsdecode(a) to get a string no matter the type of a is str or bytes.(os.fsdecode does not work on Windows as it doesn't always use utf-8 encoding.) If only passing filenames to source filters, then the type of variables doesn't matter.)
  • api3 filters that return alpha clips are broken (the alpha clip is never requested)
  • (R57) leading underscore in filter parameter names are no longer skipped (to fix std.SetFrameProps). VS-C will strip the leading underscore only for std.SetFrameProps alone to retain compatibility with older VS versions.
  • api3 python VideoFrame has a planes() undocumented API, which is used by VapourSynth-TCPClip.
  • resize plugins switched the default value for option prefer_props from False (R54) to True(R58) and trigger a warning. (vs-c will keep prefer_props=False default of R54). R58 also silently removed the option. After facing backlashes from previewers, added back the option but totally ignored its setting.

Possibly unfixable?

  1. vs.YCOCG color space
  2. modified preset format numbers?
  3. vnode vs node in function parameters.
@vxzms

This comment has been minimized.

@AkarinVS
Copy link
Member Author

Release R55.A2b status snapshot:

We should definitely fix all these issues as they impact real scripts:

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

No branches or pull requests

2 participants