Thanks Dan for taking a look at my comments. I want to take this opportunity to clarify a few things I wrote, what I understand the processes to be, and what you may have identified as my mistakes along the way.
Sorry, J.D., I must disagree with ya’ here. The SketchUp Ruby API documentation is quite clear in the use of Sketchup::require. So it isn’t the encryption breaking the extension.
Taking the example of the Make Group and Tag extension I submitted:
It loads and works on my computer. My usual way of working on any extension is not to install it using the Extension Manager. Generally, I have a file (extension_name.rb) that I move in and out from the extension folder (extension_name) or rename to have the extension load or not load. In the case that I might have zipped or unzipped an extension folder (for whatever reason), I didn’t change the file extension to .rbz and use the Extension Manager.
ERROR: The unchanged files, packaged together as a ZIP and re-named .rbz fails to install using the Extension Manager. This is what I FAILED TO TEST BEFORE uploading to the Extension Warehouse. When I renamed the ZIP to .rbz, I broke it. I’m going to edit my incorrect statement about EW above.
The solution was pointed out to me by Dezmo (Requirements Cops - RuboCop SketchUp: SketchUp Extension Best Practices). To belabor the point a bit. The two reasons .rb was there are that 1) It works! And 2) It’s easier for me to see that a file is needed when .rb is there. So that’s how it ended up in my extension template and is now propagated in every extension I have.
The signing and encryption step does not test or “approve” the extension. Even extensions that will be hosted elsewhere can run their RBZs through this signing process.
The reason I used that terminology is that the email I received from EW used it: [Extension Warehouse] Your Extension Has Been APPROVED - Action is Required!
I don’t know that they “test” submitted extensions. But I don’t know what else to call it. I presume that someone in EW received the .rbz, changed it back to ZIP and unpacked it. That would explain why it ‘worked’ for them. I’m also presuming the code was looked at and someone did a ‘does it do what it says it does’ check in SU. Had they taken the submitted .rbz and tried to install it using the Extension Manager, it would have failed for them (as it would have for me had I tried installing my .rbz before submitting as I should have done) and it would have been rejected. Even though I submitted a doomed extension, I think it was reasonable -though mistaken- that I concluded encryption broke the extension.
Get your returned RBZ and install it locally to test how it loads from encrypted code before submitting it to the EW for publication.
The reason I published was that step was indicated in the approval email:
Action Required! You need to publish it by going to your My Extensions page and selecting the extension from the “Approved Extensions” list and clicking the “Publish” button from the drop down menu.
It seemed like a good idea at the time! But also, unless I just can’t find the download option, publishing to EW and downloading is the only way I see in the EW My Extensions or My Downloads sections. I don’t see any option with Unpublished Extensions other than “Publish Extension”. Unless there’s another option to download, it seems publish → download → unpublish → test → publish is the way to do it.
Anyway, it seems my mistake slipped through the cracks. “All errors are the authors’ alone” and apologies to anyone at the EW who may have seen my misattributed mistake.
On top of having the air go out of my tires right when I was going to ‘hit the big jump’ and have an extension in EW, it’s embarrassing to have to go back over what happened. Hopefully this reply is useful to others who can now avoid these mistakes. But I’m not going to stop using IDK_Programming as that name still seems appropriate. 