bl_idname requirements for 2.80
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 |
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 |
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 '18 at 23:24
egtwobits
47645
47645
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
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_barFor 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 '18 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 '18 at 1:31
add a comment |
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
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_barFor 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 '18 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 '18 at 1:31
add a comment |
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_barFor 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 '18 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 '18 at 1:31
add a comment |
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 '18 at 4:24
batFINGER
22.3k42467
22.3k42467
answered Dec 10 '18 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_barFor 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 '18 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 '18 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_barFor 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 '18 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 '18 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_barFor 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 '18 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_barFor 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 '18 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 '18 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 '18 at 1:31
add a comment |
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 |
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 |
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 '18 at 0:31
Monolith
1609
1609
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