bl_idname requirements for 2.80
Clash Royale CLAN TAG#URR8PPP
up vote
2
down vote
favorite
The python api change notes for 2.80 give new requirements for bl_idname. I'm getting an error telling me that "MAPLUS_OT_changetypebaseclass" is an invalid name:
RuntimeError: Error: Registering operator class: 'ChangeTypeBaseClass', invalid bl_idname 'MAPLUS_OT_changetypebaseclass', at position 0
Am I following the naming requirements properly? The addon file is here for reference.
python
add a comment |
up vote
2
down vote
favorite
The python api change notes for 2.80 give new requirements for bl_idname. I'm getting an error telling me that "MAPLUS_OT_changetypebaseclass" is an invalid name:
RuntimeError: Error: Registering operator class: 'ChangeTypeBaseClass', invalid bl_idname 'MAPLUS_OT_changetypebaseclass', at position 0
Am I following the naming requirements properly? The addon file is here for reference.
python
add a comment |
up vote
2
down vote
favorite
up vote
2
down vote
favorite
The python api change notes for 2.80 give new requirements for bl_idname. I'm getting an error telling me that "MAPLUS_OT_changetypebaseclass" is an invalid name:
RuntimeError: Error: Registering operator class: 'ChangeTypeBaseClass', invalid bl_idname 'MAPLUS_OT_changetypebaseclass', at position 0
Am I following the naming requirements properly? The addon file is here for reference.
python
The python api change notes for 2.80 give new requirements for bl_idname. I'm getting an error telling me that "MAPLUS_OT_changetypebaseclass" is an invalid name:
RuntimeError: Error: Registering operator class: 'ChangeTypeBaseClass', invalid bl_idname 'MAPLUS_OT_changetypebaseclass', at position 0
Am I following the naming requirements properly? The addon file is here for reference.
python
python
asked Dec 9 at 23:24
egtwobits
47645
47645
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
up vote
3
down vote
Expected a class name including _OT_
This should work.
class MAPLUS_OT_changetypebaseclass(bpy.types.Operator):
bl_idname = "maplus.changetypebaseclass"
TO elaborate for OP: this has not changed: For operator to be known asbpy.ops.foo.bar()
requiresbl_idname = "foo.bar"
(Lower case one dot, this is the error you are seeing "M" at position 0 is not lower case (and nextly there's no dot)) Blender will generate a registered classbpy.types.FOO_OT_bar
For other registerable types thebl_idname
(if omitted is the class name) and needs to follow the naming convention to avoid the warning message
– batFINGER
Dec 10 at 9:35
The wiki page specifically notes: "Valid Examples: OBJECT_OT_fancy_tool", and notes that "This constraint applies to the bl_idname of each class (or the class name which uses it if no bl_idname is defined in the class)". So, is the addons page wrong, or is this just a case of these features not being implemented? It seems very unclear to me based on the language on the wiki...I just want to clearly understand the full requirements for bl_idname and/or class name(s).
– egtwobits
Dec 16 at 1:31
add a comment |
up vote
1
down vote
Keep in mind 2.8 is very Beta. But I could be wrong, but I'm surprised thats the only error you're getting. I thought all of the class names were to be changed? But I saw that on this programmers video: https://www.youtube.com/watch?v=Mjy-zGG3Wk4
So I don't know if this generates errors or not.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
return StackExchange.using("mathjaxEditing", function ()
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
);
);
, "mathjax-editing");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "502"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fblender.stackexchange.com%2fquestions%2f124736%2fbl-idname-requirements-for-2-80%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
3
down vote
Expected a class name including _OT_
This should work.
class MAPLUS_OT_changetypebaseclass(bpy.types.Operator):
bl_idname = "maplus.changetypebaseclass"
TO elaborate for OP: this has not changed: For operator to be known asbpy.ops.foo.bar()
requiresbl_idname = "foo.bar"
(Lower case one dot, this is the error you are seeing "M" at position 0 is not lower case (and nextly there's no dot)) Blender will generate a registered classbpy.types.FOO_OT_bar
For other registerable types thebl_idname
(if omitted is the class name) and needs to follow the naming convention to avoid the warning message
– batFINGER
Dec 10 at 9:35
The wiki page specifically notes: "Valid Examples: OBJECT_OT_fancy_tool", and notes that "This constraint applies to the bl_idname of each class (or the class name which uses it if no bl_idname is defined in the class)". So, is the addons page wrong, or is this just a case of these features not being implemented? It seems very unclear to me based on the language on the wiki...I just want to clearly understand the full requirements for bl_idname and/or class name(s).
– egtwobits
Dec 16 at 1:31
add a comment |
up vote
3
down vote
Expected a class name including _OT_
This should work.
class MAPLUS_OT_changetypebaseclass(bpy.types.Operator):
bl_idname = "maplus.changetypebaseclass"
TO elaborate for OP: this has not changed: For operator to be known asbpy.ops.foo.bar()
requiresbl_idname = "foo.bar"
(Lower case one dot, this is the error you are seeing "M" at position 0 is not lower case (and nextly there's no dot)) Blender will generate a registered classbpy.types.FOO_OT_bar
For other registerable types thebl_idname
(if omitted is the class name) and needs to follow the naming convention to avoid the warning message
– batFINGER
Dec 10 at 9:35
The wiki page specifically notes: "Valid Examples: OBJECT_OT_fancy_tool", and notes that "This constraint applies to the bl_idname of each class (or the class name which uses it if no bl_idname is defined in the class)". So, is the addons page wrong, or is this just a case of these features not being implemented? It seems very unclear to me based on the language on the wiki...I just want to clearly understand the full requirements for bl_idname and/or class name(s).
– egtwobits
Dec 16 at 1:31
add a comment |
up vote
3
down vote
up vote
3
down vote
Expected a class name including _OT_
This should work.
class MAPLUS_OT_changetypebaseclass(bpy.types.Operator):
bl_idname = "maplus.changetypebaseclass"
Expected a class name including _OT_
This should work.
class MAPLUS_OT_changetypebaseclass(bpy.types.Operator):
bl_idname = "maplus.changetypebaseclass"
edited Dec 10 at 4:24
batFINGER
21.8k42465
21.8k42465
answered Dec 10 at 2:03
Stephen Leger
1163
1163
TO elaborate for OP: this has not changed: For operator to be known asbpy.ops.foo.bar()
requiresbl_idname = "foo.bar"
(Lower case one dot, this is the error you are seeing "M" at position 0 is not lower case (and nextly there's no dot)) Blender will generate a registered classbpy.types.FOO_OT_bar
For other registerable types thebl_idname
(if omitted is the class name) and needs to follow the naming convention to avoid the warning message
– batFINGER
Dec 10 at 9:35
The wiki page specifically notes: "Valid Examples: OBJECT_OT_fancy_tool", and notes that "This constraint applies to the bl_idname of each class (or the class name which uses it if no bl_idname is defined in the class)". So, is the addons page wrong, or is this just a case of these features not being implemented? It seems very unclear to me based on the language on the wiki...I just want to clearly understand the full requirements for bl_idname and/or class name(s).
– egtwobits
Dec 16 at 1:31
add a comment |
TO elaborate for OP: this has not changed: For operator to be known asbpy.ops.foo.bar()
requiresbl_idname = "foo.bar"
(Lower case one dot, this is the error you are seeing "M" at position 0 is not lower case (and nextly there's no dot)) Blender will generate a registered classbpy.types.FOO_OT_bar
For other registerable types thebl_idname
(if omitted is the class name) and needs to follow the naming convention to avoid the warning message
– batFINGER
Dec 10 at 9:35
The wiki page specifically notes: "Valid Examples: OBJECT_OT_fancy_tool", and notes that "This constraint applies to the bl_idname of each class (or the class name which uses it if no bl_idname is defined in the class)". So, is the addons page wrong, or is this just a case of these features not being implemented? It seems very unclear to me based on the language on the wiki...I just want to clearly understand the full requirements for bl_idname and/or class name(s).
– egtwobits
Dec 16 at 1:31
TO elaborate for OP: this has not changed: For operator to be known as
bpy.ops.foo.bar()
requires bl_idname = "foo.bar"
(Lower case one dot, this is the error you are seeing "M" at position 0 is not lower case (and nextly there's no dot)) Blender will generate a registered class bpy.types.FOO_OT_bar
For other registerable types the bl_idname
(if omitted is the class name) and needs to follow the naming convention to avoid the warning message– batFINGER
Dec 10 at 9:35
TO elaborate for OP: this has not changed: For operator to be known as
bpy.ops.foo.bar()
requires bl_idname = "foo.bar"
(Lower case one dot, this is the error you are seeing "M" at position 0 is not lower case (and nextly there's no dot)) Blender will generate a registered class bpy.types.FOO_OT_bar
For other registerable types the bl_idname
(if omitted is the class name) and needs to follow the naming convention to avoid the warning message– batFINGER
Dec 10 at 9:35
The wiki page specifically notes: "Valid Examples: OBJECT_OT_fancy_tool", and notes that "This constraint applies to the bl_idname of each class (or the class name which uses it if no bl_idname is defined in the class)". So, is the addons page wrong, or is this just a case of these features not being implemented? It seems very unclear to me based on the language on the wiki...I just want to clearly understand the full requirements for bl_idname and/or class name(s).
– egtwobits
Dec 16 at 1:31
The wiki page specifically notes: "Valid Examples: OBJECT_OT_fancy_tool", and notes that "This constraint applies to the bl_idname of each class (or the class name which uses it if no bl_idname is defined in the class)". So, is the addons page wrong, or is this just a case of these features not being implemented? It seems very unclear to me based on the language on the wiki...I just want to clearly understand the full requirements for bl_idname and/or class name(s).
– egtwobits
Dec 16 at 1:31
add a comment |
up vote
1
down vote
Keep in mind 2.8 is very Beta. But I could be wrong, but I'm surprised thats the only error you're getting. I thought all of the class names were to be changed? But I saw that on this programmers video: https://www.youtube.com/watch?v=Mjy-zGG3Wk4
So I don't know if this generates errors or not.
add a comment |
up vote
1
down vote
Keep in mind 2.8 is very Beta. But I could be wrong, but I'm surprised thats the only error you're getting. I thought all of the class names were to be changed? But I saw that on this programmers video: https://www.youtube.com/watch?v=Mjy-zGG3Wk4
So I don't know if this generates errors or not.
add a comment |
up vote
1
down vote
up vote
1
down vote
Keep in mind 2.8 is very Beta. But I could be wrong, but I'm surprised thats the only error you're getting. I thought all of the class names were to be changed? But I saw that on this programmers video: https://www.youtube.com/watch?v=Mjy-zGG3Wk4
So I don't know if this generates errors or not.
Keep in mind 2.8 is very Beta. But I could be wrong, but I'm surprised thats the only error you're getting. I thought all of the class names were to be changed? But I saw that on this programmers video: https://www.youtube.com/watch?v=Mjy-zGG3Wk4
So I don't know if this generates errors or not.
answered Dec 10 at 0:31
Monolith
1308
1308
add a comment |
add a comment |
Thanks for contributing an answer to Blender Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fblender.stackexchange.com%2fquestions%2f124736%2fbl-idname-requirements-for-2-80%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown