I'd like to reorganize the Python code a bit by introducing a new
top-level namespace, "mypaint", for the bulk of the mypaint program
code:

  lib.* → mypaint.lib.*
  gui.* → mypaint.gui.*

Reasoning behind this:

* I want to revisit the way we do dynamically loaded subwindow modules
in order to do this part of the UI in a more GTK3-friendly way. One
thing that's come up before when doing this is the security/safety of
importing the modules based on a string name: this would allow simpler
whitelisting.
* It distinguishes more nicely between absolute and relative imports,
which might be useful for Python3 down the road.
* It would be nice to extend our submodule loading code to support
plugins. Plugin code should be able to import classes or constants
from a specifically mypaintish namespace if needed.

It's probably simplest to just move the files into a new
python/mypaint subfolder, and adjust the SCons* files and Python
import lines appropriately.

I realize that there's an existing Python3 effort going on out there,
and there may be patches waiting in the wings that should be applied
first. Would doing this break any branches out there? git can probably
track changes across simple moves, but if there's anything that only
exists as a patch this might break it.

If there are no objections, I'll try to get this merged later this week.

Suggestions about how the code should be stored within the project
repository are welcome too - let me know if you have any better ideas
☺

-- 
Andrew Chadwick

_______________________________________________
Mypaint-discuss mailing list
[email protected]
https://mail.gna.org/listinfo/mypaint-discuss

Reply via email to