Hi,
2014-08-29 15:00 GMT+02:00 Guillaume Lerouge <[email protected]>: > Hi Edy, > > I think this was an interesting debate that deserves more discussion. I > believe we never formally defined what's an "Application" in XWiki. The App > Descriptor was supposed to go this way, but I don't think we ever > formalized it. > I don't really agree with this, there used to be the "Application Manager Application" [1], well there still is, but I don't know if it's somehow obsolete, really used or not, etc ..., that defined an "app descriptor". I personally still use it, and I find the application descriptor in it to be a clever way to define what pages are part of the application with patterns (and flexible, ie you can manage whatever structure you applied, one space for code, or all mixed, or anything). And it's also very easy with it to export a xar of your in-progress application UI. IMHO it was a very user-friendly feature for an online development platform concept. EM is great, but has best benefits when it's server-sided (ie, create java components, and maven build, and deploy to a repo). When you have a maven build producing your xar from your resources, and deploying it to a wiki instance, this descriptor is not very useful anymore, but don't forget that some contributors may want to contribute a xar without making it installable by EM, and without going through the steps of creating a build etc ... In this case they could still rely on the App Manager App to define a minimum descriptor for their app. It could answer point 5) also, what is missing is some way to define what is a page produced by your app (either all pages created in a specific space, either all pages containing objects of listed XClass(es), either a groovy script filtering a $doc and answering true/false, ...). Now, there's also EM. Now, there's also the extension points to add applications in app panel / app bar (with, also, metadata about your application to provide like title, icon, main page, etc...). But without a way to define your applications pages. At the end, I don't really know anymore what should be used to define an application in xwiki :-) And the effort to publish an app to EM is not comparable with the effort to create an XObject of some kind of app descriptor ... [1] - http://extensions.xwiki.org/xwiki/bin/view/Extension/Application+Manager+Application > > One of the "stupid" issues I'm frequently meeting related to this is the > name of the app as it shows up in the app bar: I'd love to have more > control on how it's displayed (beyond the space name of the app). > ᐧ > > Hoping this will spark more replies, > > Guillaume > > On Tue, Jul 1, 2014 at 11:42 AM, Eduard Moraru <[email protected]> > wrote: > > > Hi devs, > > > > While thinking about XWIKI-8757 [1] and the fact that the new skin > focuses > > [2] a lot on applications, a number of questions pop up inevitably > because > > of XWiki's loose/ad-hoc way of handling/defining applications. > > > > For the AWM problem, I came to the conclusion that we should probably > just > > adapt AWM to use the current convention we have for apps (1 code space > and > > 1 data space) and maybe set the user that created the app as the only one > > allowed to edit it (have to think about the last part). It seems that > this > > would be best for data-producing applications, such as the ones created > by > > AWM. > > > > I`ll list below the questions because I believe they also serve as a > > summary of the discussions on the topic so far. > > > > 1) What is an application? > > General/Philosophical > > - Skin/Macro/Class/Code/etc. or just simply "Application"? > http://en.wikipedia.org/wiki/Application_software "an application is a computer program <http://en.wikipedia.org/wiki/Computer_program> designed to help people perform an activity" To me an application is unrelated to the fact that it's a skin, a macro, a class or anything, but only related to the purpose of it. To me a skin cannot be considered an application, because it's just look&feel stuff, it doesn't "do" anything - it's not a program. But if all the vm templates are considered to be part of skins, then a skin is an application. Some piece of code is not an application because it's just a sample program (or sample of a piece of program) - not a real program. A java Class can be an application but an XClass cannot - because it's just a data model. In EM repository on x.org, there is said that the "Logging Application" is the UI of the "Logging Module". But you could say also that the "Logging application" is composed of an UI and a Module (or API ?) ? Because if you only install the UI part without the Module part, it will not be usable. It will do nothing good to help you with logging activity. > > > > 2) What is the name, description, icon, author, etc of an application? > > Metadata > > - Application descriptor > > - Panel application UIX should read from an app descriptor to avoid > > duplication > > - Extension vs Application > > -- Every (xar) extension is an application > Is a flamingo color theme really an application ? http://extensions.xwiki.org/xwiki/bin/view/Extension/FlamingoColorTheme > , but most applications (in the > > wild or just created ones) are not extensions => EM can not reliably > > provide information about applications. > > > > 3) How do I access an application? > > Structure/Management > > - UI applications (i.e. IdeasApp) vs Code/Feature applications (i.e. > > ActivityStream, Syntax Highlighting) > > - All apps must have 1 entry point, even if it's just some description > or a > > configuration? > > -- You should not be able to lose an application after you install it. > > > > 4) What are the installed applications > > Management > > > > 5) Where is the code, data or configuration of an application? > > Structure > > - ((One App = One Space) vs (One code space and one data space)) vs > Reality > > (messy mix) > > - One page applications (no data) > This structure can be a recommendation, but existing applications may not follow any recommendation - still you may want to be able to "manage" or list them. It is valid if we talk only about AWM of course. > > > > 6) What application(s) do these pages belong to? > > Structure > > - Using classes defined by 2 applications in the same page. > > > > 7) Who can(not) edit an application? > > Rights > > See XWIKI-8757 [1] > > - most users are application users and not developers, but they are > > encouraged to edit everything, even the applications themselves. This > leads > > to a maintainance hell for wiki admins that end up with broken > > applications. > > - edit rights on the code. > > > > 8) Who can(not) use an application? > > Rights > > - view rights on the code. > > > > > > Related topics: > > - Application Descriptor [3] - this discussion went off-topic > > - Flamingo Application Bar [2] - application metadata is needed > > - Best practices for storing Application pages [4] > > > > > > I hope someone finds this useful somehow. > > > > Thanks, > > Eduard > > > > ---------- > > [1] http://jira.xwiki.org/browse/XWIKI-8757 > > [2] http://markmail.org/thread/2ftksr6bxstazg25 > > [3] http://markmail.org/thread/wqdidryh5ubgvkxa > > [4] http://markmail.org/thread/467rqhucp5ild273 > > _______________________________________________ > > devs mailing list > > [email protected] > > http://lists.xwiki.org/mailman/listinfo/devs > > > > -- > Venez nous rencontrer lors du *petit-déjeuner XWiki le mardi 7 octobre 2014 > !* <http://info.xwiki.com/petit-dejeuner-XWiki-octobre-2014.html> > -- > <http://www.xwiki.com/>*Guillaume Lerouge* > *Director of Sales & Marketing* > Mail: [email protected] > Mobile: > *+33 6 10 79 76 70*Tel: *+33 1 45 42 40 90* > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs > _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

