(Work in progress...)
Init stubs and package require with open version
The list of versions should include Tk 9. Here is an example for Tk 8.5 up to any Tk 9 version. Note that the upper bound "10" is exclusive.
if (Tk_InitStubs(interp, "8.5-10", 0) == NULL) {
return TCL_ERROR;
}
The Tk_InitStubs command changed in the following aspects:
- The strict parameter changed in type from boolean to a bit field. Only values of 0 and 1 are supported.
- If the preprocessor variable "USE_TK_STUBS" is not defined, a direct link to the Tk library is assumed. In this case, no stubs table is initialized. The given version specification is verified against the calling interpreter.
Tk_ConfigureWidget argc/argv interface removed
Tk_ConfigureWidget has two interfaces, and argc/argv and and TCL object interface. The argc/argv interface is removed.
Code which uses the TCL object interface (which has the TK_CONFIG_OBJS option in the flags parameter) does not need any change.
See TIP 647 for details.