Is there a method to create bl_info using variable? I have noticed that when creating addon, if the bl_info is create with variable. The script will break the addon system. Causing disappear tab after restarting blender:
desc = 'Run script in any space with given name of script'
import bpy

bl_info = {
    &quot;name&quot;: &quot;Run specified script in all context&quot;,
    &quot;description&quot;: desc,  # Here, a variable. (And WTF is this code highlight?)
    &quot;author&quot;: &quot;hikariTW&quot;,
    &quot;version&quot;: (0, 1, 0),
    &quot;blender&quot;: (2, 80, 0),
    &quot;location&quot;: &quot;TextEditor&quot;,
    &quot;support&quot;: &quot;TESTING&quot;,
    &quot;category&quot;: &quot;Interface&quot;,
}



Is there any workaround or this is normal when dealing with static examine of script when Blender try to list them out?
The test is done in Blender 2.83.4

Further testing which also break addon:

f-string and str.format
formatting with const-like 15 'foobar' without variable.
Conditional Expression: &quot;foo&quot; if True else &quot;bar&quot;
No
Sure this is a dupe, have searched and searched,
For want of a better reference

https://developer.blender.org/T53617
bl_info must be declared in the module.
This is because bl_info is extracted without executing code.

ie the bl_info dictionary is grepped out of the addon module top level file (foo.py or foo/__init__.py) as a string where the  locals will not be available.