[Bf-committers] Proposal for moving io scripts into addons

Campbell Barton ideasman42 at gmail.com
Wed Jan 12 11:04:17 CET 2011


Firstly I should say this proposal makes no changes from a user
perspective, all tools will be found in menus as they are now.

At the moment we have io (import/export) scripts in 2 places...
./release/scripts/op/io_*
./release/scripts/addons/io_*

Currently this differentiation is between built in scripts that
blender-foundation maintains which are enabled by default and
community maintained addons which are off by default.

I would prefer that all io scripts be in addons since they are
inherently self contained and there is no need to make this
distinction by having the same kinds of  io scripts in 2 different
places.

Users still need to know what are BF supported addons and this can be
done by adding a field to the addons header, which the addons UI can
make use of,
filtering only official maintained addons as an option.


With the current convention enabling the STL support by default would
mean moving the script into ./release/scripts/op/ and then giving the
developer commit an account as a blender developer.
This is can work but I rather have the developers keep maintaining
their scripts in bf-extensions since this is proving to be quite an
active community, and in 2.4x we had trouble finding maintainers for
scripts.


Considerations (raised on IRC)...
*** this means less experienced devs have access to important format "XXX" ? ***
Personally I don't think this will be a problem, bf-extension
developers are working so far quite well,
any problems we can manage like we would with core developers.

*** Having addons enabled by default is stupid, then they should not
be called addons ***
This point came up on IRC, IMHO an addon being default just shows this
is what we think is useful for official blender.org releases and
otherwise incidental.
most likely default addons and bf-supported addons will be closely
aligned but it would be fine to have a bf-supported addon thats off by
default or a high quality community supported addon enabled.

I also like the ability for users to start blender, disable all
addons, then only enable ones they need.

*** what if a script assumes an operator is available so it can use
that format ***
An api call can ensure this, eg:
  bpy.utils.addon_enable("io_coat3D")

---

This can be done without being disruptive.

- move fbx/bvh/obj/3ds/x3d/ply/mdd scripts into addons (add addon header)
- add field for official supported addon, add filter option in GUI.
- enable default addons in blenders default preferences.

-- 
- Campbell


More information about the Bf-committers mailing list