Addon script not working I am newbie to Blender scripting, but I am trying to make very simple Addon with the help of the YT tutorial that looks like this but it is giving me error that something is wrong, tho there is no error message in the console window.
The script should appear as a menu item inside OBJECT -&gt; APPLY, and should just apply all the active modifiers in all selected objects. the script of the Addon looks like this:
bl_info = {
    &quot;name&quot;: &quot;Apply Modifiers In Selected&quot;,
    &quot;author&quot;: &quot;Anonymous&quot;,
    &quot;version&quot;: (1, 0),
    &quot;blender&quot;: (2, 90, 1),
    &quot;location&quot;: &quot;View3D &gt; Object &gt; Apply &gt; Modifiers In Selected&quot;,
    &quot;description&quot;: &quot;Applies all the modifier in selected objects&quot;,
    &quot;warning&quot;: &quot;&quot;,
    &quot;doc_url&quot;: &quot;&quot;,
    &quot;category&quot;: &quot;Object Apply&quot;,
}

import bpy
from bpy.types import (
    AddonPreferences,
    Operator,
    Panel,
    PropertyGroup,
)

class OBJECT_OT_applymodifiersinselected(Operator):
    bl_label = &quot;Apply Modifiers In Selected&quot;
    bl_idname = &quot;object.apply.modifiersinselected&quot;
    bl_description = &quot;Applies all the modifier in selected objects&quot;
    bl_space_type = &quot;VIEW_3D&quot;
    bl_region_type = &quot;UI&quot;
    bl_options = {'REGISTER', 'UNDO'}
    
    def execute (self, context):

        for ob in bpy.context.selected_objects:
            bpy.context.view_layer.objects.active = ob
            for name in [m.name for m in ob.modifiers]:
                modifier = ob.modifiers[name]
                if modifier.show_viewport:
                    bpy.ops.object.modifier_apply( modifier = name )
        
        return {'FINISHED'}
    
def menu_func (self, context):
    self.layout.operator(OBJECT_OT_applymodifiersinselected.bl_idname)

def register():
    bpy.utils.register_class(OBJECT_OT_applymodifiersinselected)
    bpy.types.VIEW3D_MT_object_apply.append(menu_func)
    
def unregister():
    bpy.utils.unregister_class(OBJECT_OT_applymodifiersinselected)
    bpy.types.VIEW3D_MT_object_apply.remove(menu_func)

if __name__ == &quot;__main__&quot;:
    register()

Can anyone, please, tell me what is wrong with the code?
The bl_idname is not allowed to contain more than one dot. The error message is:
Traceback (most recent call last):
  File &quot;\Text&quot;, line 52, in &lt;module&gt;
  File &quot;\Text&quot;, line 44, in register
RuntimeError: Error: Registering operator class: 'OBJECT_OT_applymodifiersinselected', invalid bl_idname 'object.apply.modifiersinselected', must contain 1 '.' character

This message can be seen when starting Blender from the terminal on Linux, macOS and Windows. On Windows you can also use Window &gt; Toggle System Console.
In order to fix this pick a different bl_idname, for example:
 bl_idname = &quot;object.apply_modifiers_in_selected&quot;