Item11731: ./core/create_new_extension.pl MySkin fails.
Priority: Urgent
Current State: No Action Required
Released In: n/a
Target Release: n/a
sven@quiet:~/src/foswiki$ ./core/create_new_extension.pl MySkin
Creating MySkin from templates in EmptySkin
Enter a one-line description of the extension: (): make a skin for me
Enter the wikiname of the author (e.g. ThomasHardy): (): SvenDowideit
Template 'lib/Foswiki/Contrib/EmptySkin/MANIFEST' not found in EmptySkin at ./core/create_new_extension.pl line 290, <STDIN> line 2
An
AddOn will fail the same way. These don't have templates (Empty... modules).
The question is, should we create templates - which will end up duplicating a Contrib - or should we simply redirect the caller to creating a Contrib?
My inclination is to create a template for Skins, and quietly drop AddOn.
--
CrawfordCurrie - 05 Oct 2012
Accoring to Sven in
StoreAs1stClassExtension, the strategy was to only have Plugin or Contrib. Doesn't this go against that idea?
--
JulianLevens - 05 Oct 2012
Sven quickly goes back to change history and add *Skin as its 'special' :/
oh, and Julian points out
WikiApps too
(yes, Crawford, I think we should just kill
AddOn, it has zero value now - it was intended for bin/script + topics at one stage, something we would like to kill off entirely in support of moving to plack)
--
SvenDowideit - 05 Oct 2012 - 12:18
In what way is it special?
AFAICT the only technical rationale for having different package types is where a different set of base templates - or some different processing steps - are required to generate a new extension of that type. On this basis there are three required types - Plugin,
JQueryPlugin and Contrib (the simplest of them all). If you move beyond the technical to the human, things get a lot more fuzzy. Why "Skin" but not "WikiApp"? Why not "AddOn" - or anything else for that matter. Technically, we could simply map them to use the Contrib templates. However I'm against that idea, simply because of the KISS principle. I don't favour adding "Skin", when we can use "SkinContrib" already. Nor "WikiApp" - use "WikiAppContrib". Note that you can still create "MyNewSkin", simply using
create_new_extension.pl MyNewSkin EmptyContrib
(the second parameter is the name of any existing extension to use as a template)
--
CrawfordCurrie - 10 May 2013