-
-
Notifications
You must be signed in to change notification settings - Fork 31.8k
Tkinter uses deprecated functions mp_to_unsigned_bin_n()
and mp_unsigned_bin_size()
#104399
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
Comments
@serhiy-storchaka The issue is about patching _tkinter, which is beyond me. |
If I understand correctly, the current logic in |
Thank you for your contribution @chrstphrchvz. |
_tkinter.c currently uses the functions
mp_to_unsigned_bin_n()
andmp_unsigned_bin_size()
, which were deprecated in libtommath 1.2.0 and replaced by new functionsmp_to_ubin()
andmp_ubin_size()
.The deprecated functions are removed from future libtommath and Tcl 9.0, leaving _tkinter.c unable to build:
TIP 538 says that Tcl 8.7/9.0 can build against external libtommath 1.2.0 or later. So if
TCL_WITH_EXTERNAL_TOMMATH
is defined, or ifTCL_MAJOR_VERSION >= 9
, thenmp_to_ubin()
andmp_ubin_size()
should be available.Even though
mp_to_ubin()
andmp_ubin_size()
have been available since Tcl 8.6.10 (the first release to bundle libtommath 1.2.0),mp_to_ubin()
was added as a new ABI, unlikemp_ubin_size()
which was added by having the existing ABI formp_unsigned_bin_size()
returnsize_t
instead ofint
. So Tkinter presumably could use the new functions when built with Tcl 8.6.10 through 8.7 only if there is no expectation for that build to work with Tcl 8.5.12 through 8.6.9; otherwise the deprecated functions can continue to be used for Tcl < 9.Note that Tcl 8.7 with bundled libtommath currently only warns about
mp_to_unsigned_bin_n()
being deprecated:Linked PRs
The text was updated successfully, but these errors were encountered: