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
Binder: 'import androidx.compose.ui.Modifier' as a submodule shadows the proxy class #323
Found while designing #322. Once a key under androidx.compose.ui.Modifier.* exists, the name androidx.compose.ui.Modifier is also an object module; importing it as a submodule binds the module onto the parent package and can shadow the proxy class that 'from androidx.compose.ui import Modifier' returns. Not observed in a run; from reading _adapt (PythonxAdapter.kt ~2191-2223). Completion: a test importing both ways in both orders; the class stays the class (and the module's statics stay reachable through it).
Partly addressed by #324: the proxy class now stays on its parent package when the proxy layer creates the same-named module (class wins unless a parent declaration of that name exists), in both install orders. Still open: an explicit 'import androidx.compose.ui.Modifier' by user code binds the module onto the parent through the import system itself; not tested.
Activity
b-re-w commentedon Oct 25, 2026
Partly addressed by #324: the proxy class now stays on its parent package when the proxy layer creates the same-named module (class wins unless a parent declaration of that name exists), in both install orders. Still open: an explicit 'import androidx.compose.ui.Modifier' by user code binds the module onto the parent through the import system itself; not tested.
Merge pull request #326 from thisisthepy/feat/binder-submodule-import…
b-re-w commentedon Oct 25, 2026
Landed in develop via #326: the parent module guards setattr with class_wins_over_module; explicit imports keep the class.