You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Hand name translation back to the binder (python-multiplatform #131) #79
python-multiplatform #131 (develop 452cc807) restores the binder's own snake_case names and keywords (module functions, overload base names, explicit overloads, lowercase constants, object functions, extension methods, properties, every keyword argument), with this package's exact rule, Kotlin names in dir() only, and add_member_resolver still harmless. Plan agreed with the ecosystem lead:
Remove the member resolver and its keyword maps (member_name, _method_keywords).
Remove PythonicFunction; module functions come back as the binder's callables.
The module name lookup and KotlinObject functions delegate to the binder's names.
Stubs and docs: the stub generator and SPEC 3/S4.1/S6, AGENTS 12 and the guide say renaming is the binder's.
Behaviour tests on the pythonx surface (snake names and keywords work) stay, so a binder regression is caught here. Afterwards pythonx-compose needs python-multiplatform at #131 or later; SPEC records that.
Step 1 landed via #80. Correction to its commit message: against python-multiplatform 452cc807 the suite gave 252 passed, 1 skipped (not 253), in the main checkout; the sibling checkout, now also at #131, gave the same.
Step 3 landed via #84. Step 4 needs no code change (agreed with the ecosystem lead): _name_table reads the Kotlin name directly, so nothing is translated twice; it is what keeps the pythonx surface snake_case only (dir() lists snake_case names, camelCase is not a second name), while the binder's androidx.* modules accept both. Step 5 waits for a python-multiplatform stubs artefact that includes #131.
Steps 1-5 landed (#80, #81, #84, #85; step 4 needed no change). Renaming of names and keywords is the binder's since python-multiplatform #131; pythonx-compose keeps the grouping, the snake-only surface, aliases, objects, the allowlist, the app root and the Pythonic stubs.
Activity
b-re-w commentedon Oct 3, 2026
Step 1 landed via #80. Correction to its commit message: against python-multiplatform 452cc807 the suite gave 252 passed, 1 skipped (not 253), in the main checkout; the sibling checkout, now also at #131, gave the same.
b-re-w commentedon Oct 3, 2026
Step 3 landed via #84. Step 4 needs no code change (agreed with the ecosystem lead):
_name_tablereads the Kotlin name directly, so nothing is translated twice; it is what keeps the pythonx surface snake_case only (dir() lists snake_case names, camelCase is not a second name), while the binder's androidx.* modules accept both. Step 5 waits for a python-multiplatform stubs artefact that includes #131.b-re-w commentedon Oct 3, 2026
Steps 1-5 landed (#80, #81, #84, #85; step 4 needed no change). Renaming of names and keywords is the binder's since python-multiplatform #131; pythonx-compose keeps the grouping, the snake-only surface, aliases, objects, the allowlist, the app root and the Pythonic stubs.