Hi, I have noticed a growing trend that bl_info in addons is not being used to to their full potential & design.
Lets have a look at the bl_info & I’ll explain why it’s good for you, the addons dev, to use this properly.
You should include a python dictionary named “bl_info” at the top of your addon .py file or init.py if it is a module such as this from the wiki:
bl_info = {
"name": "My Script",
"description": "Single line explaining what this script exactly does.",
"author": "John Doe, Jane Doe",
"version": (1, 0, 0),
"blender": (2, 77, 0),
"location": "View3D > Add > Mesh",
"warning": "", # used for warning icon and text in addons panel
"wiki_url": "http://wiki.blender.org/index.php/Extensions:2.6/Py/"
"Scripts/My_Script",
"tracker_url": "http://developer.blender.org/maniphest/task/create/?project=3&type=Bug",
"category": "Add Mesh"
}
Let’s break it down:
“name” : This should be same name or very similar to the py file you distribute.
“description”: “Single line explaining what this script exactly does.” keep it short, if you use Addons Preferences code, here would be a good place to say “See Addons Preferences” and put your information there.
“author”: “Your name here & any major contributors” In order List by Author’s contributions. If “coolscriptguy” wrote an addon & you fixed/updated it, list as:
“author”: “coolscriptguy, yournamehere”,
You can also for scripts with multiple authors, list the authors at the end of the gpl:
# Contributed to by:
# SAYproductions, meta-androcto, jambay, brikbot#
“version”: (1, 0, 0), This is for your addons version number for you & users to know they have the right updated version of your script.
“blender”: (2, 77, 0), This is very important! Whenever you update an Addon you should change this field to represent the Blender Version you made the changes in. As the API ever changes, this is a good representation of "Known to work in/updated to work in this version of Blender.
“location”: “View3D > Add > Mesh”, This is not really the place to write “Everywhere” Be very short & descriptive & point the user to exactly where the ui is. “Search menu” " View3D > Toolshelf > Create Tab" is a good example. If you use multiple hotkeys, here you could use Addons Preferences code, “See Addons Preferences” and put your information there. That way the user could know which hotkeys are being used.
“warning”: “”, # Optionally used for warning icon and text in addons panel, this can be used for things like “Experimental”, “Beta Version”, or as a real warning: “Broken, some functions may return errors” or other appropriate warnings.
“wiki_url”: This is used to provide a link to your documentation, web site or wiki. With a link now in Blender & very popular, creating a page & linking here is recommended: https://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts That said you can link to your own wiki or docs & give your customers, I also recommend using github as this provides versioning for your addon & a stable link.
“tracker_url”: “http://developer.blender.org/maniphest/task/create/?project=3&type=Bug”, is standard for addons in Blender or Blender contrib, You can uses this to link the user to your git page or bug report page.
“category”: “Add Mesh”, Please This causes the most complaints! Don’t add your own category just because you can, most addons enthusiasts have several addons enabled & end up with unreadable tabs. (note: tabs are scroll-able) Try to integrate your addon into Blender’s UI where you or your users would expect to find them, it works much better.
Please, use the bl_info to your best advantage, that’s what it was designed for.
Don’t forget there’s Addons Preferences too, here you can add settings & information & links.
The benefits are for everyone, your users have links your addons, you get more linking in to your addons, there’s less ui clutter. again: I also recommend using github as this provides versioning for your addon & a stable link for future reference for your users. I find I download an addon or 10, start testing & it’s a battle sometimes even to find where it comes from, let alone to find a correct update, it’s easy to fix if everyone follows these practices.
Thanks.