Hi,
in 4.x we introduced UI Extensions (UIX) and "Extension Points", it
allows applications to come and plug their bits of UI where it is
possible [1]. 5.x is a good time to provide a list of useful Extension
Points (UIXP) in our velocity templates, allowing applications to plug
themselves in, for example : the header, before the content, the
footer, etc.
To allow this I can think of 2 strategies:
== 1) Manually add UIXPs ==
Actions:
* Discuss where are the common places where applications would like to
plug (in our opinion)
* Make a lengthy list
* Vote it
* Introduce an API call (services.uix.getExtensions()) for each item in the list
* Commit it
Pros:
* We can carefully build the UI API
Cons:
* We can't think of everything
* Long process
* Overridden templates won't display the extensions
== 2) Instrument our templating mechanism with UIXPs ==
Actions:
* Modify the #template macro so that it create UIXPs before and after
the parseTemplate call. Calling #template.vm would create the
following UIXP:
** platform.template.global.before (or:
platform.template.global.above, platform.template.global.top)
** platform.template.global.after (or: platform.template.global.below,
platform.template.global.bottom)
* Commit it
Pros:
* A lot of available UIXPs
* We've worked on our template architecture for a long time, UIXP
would benefit from that
* Quick process
Cons:
* It'd make our current template architecture an API ... but since
templates can be overridden in skins, it already is one.
* A lot of API calls (but tests with YourKit shows that it doesn't
impact performance)
Note:
2) doesn't exclude 1), we'd probably still need to introduce UIXP
within templates, but we'd have way less UIX API calls with this
method.
WDYT ?
I guess it's quite obvious that my opinion is biased, I've started
playing with 2) and it's quite cool :)
[1] http://extensions.xwiki.org/xwiki/bin/view/Extension/UIExtension+Module
Thanks,
JV.
Hi devs,
Right now the model script service use "currentmixed" as default
resolver and it should use "current" one IMO:
1) it's behavior is not very clear for a newcomer
2) it's pretty much unusable for attachments
The difference between the two resolver is that "currentmixed" resolve
document name beased on default (WebHome) instead of current document.
AFAIK this resolver as been introduced for retro compatibility purpose
because in some old APIs like XWikiDocument contructors the document
name was resolver as WebHome and not based on the current document.
So I propose to change the default resolver to "current".
Here is my +1.
This script service is not much used yet, I doubt anybody is using it
expecting to get WebHome when resolving the document name but since
it's a behaviour change 5.0 is the right time for it.
--
Thomas Mortagne
Hello everybody,
I am building a small application to perform load test in XWiki. I have
exported several spaces from xwiki.org used to generate the content, and
cleaned them a little bit to suit my needs.
I would like to request a repository on Contrib so I can commit the content
needed for generation but also the scripts that will generate the content
needed for testing.
I was thinking of application-loadtest.
Thanks,
Sorin B.
Hi devs,
FYI I'm starting a module in xwiki-contrib to hold the 2 xwiki.org flavors (one for the main wiki and one for the subwikis):
https://github.com/xwiki-contrib/xwiki-flavor-xwikiorg
I'd like to start using the EM/DW on xwiki.org during the next upgrade and for that I'll need these 2 flavors.
Thanks
-Vincent
Hi devs,
I've done some memory analysis with yourkit and it happens that the EM takes a lot of memory, namely:
* DefaultCoreExtensionRepository takes 31MB of memory as it caches all extensions found in memory
* Out of the 31MB, 29MB is used by org.apache.maven.model.Model with 373 instances (I guess that's the number of extensions we have)
* Note that 15MB is taken just by Xpp3Dom objects (42814) for the goals of the plugins of the extensions
* 10MB by PluginManagement
The question is: are we ok with this? Should we reduce it?
On a different note, PyDictionary takes 11MB of memory. Actually the total memory taken by python is much more, I've computed to be 50MB, that's quite a lot just for our code macro…
Thanks
-Vincent
Hi devs,
Here's my effort to try to put together all that has been said… :)
The idea is that whenever you change an API (adding a new one or changing an existing one) you go through the list of strategies below, trying to find the first that matches your use case.
* Strategy 1 (already in place): Whenever possible don't break backward compatibility and go through a deprecation mechanism:
** Deprecate classes/methods
** Move them to Legacy modules as soon as our code is not using them anymore
** Note: No need to touch CLIRR
* Strategy 2 (new): If possible, code defensively, i.e. put code in internal and open up when api is stable later on, either when users ask for it or when someone feels it's the right time
** Note: No need to touch CLIRR
* Strategy 3 (new): If not possible (for example complete new modules where you wish to separate what will become stable APIs in the future from internal code) then use the @Unstable annotation at class level (or method level)
** Whenever we work on a new N.0 milestone 1 version, review all existing @Unstable annotation and for those that were added before N-1.0 remove the annotation
** Exclude the classes/methods marked @Unstable from CLIRR
* Strategy 4: If the API is stable and the developers wants to break it (change of signature for example) and all other strategies don't apply, then either:
** (new) Just do it and modify the CLIRR exclude. Preferable (but not mandatory) send a NOTICE email to warn others devs that an API is going to be broken in the next release
** If not sure, send a PROPOSAL or VOTE email depending on how important you think the API to be broken is
WDYT?
Thanks
-Vincent
I just noticed http://ci.xwiki.org/job/xwiki-enterprise-test-extension/org.xwiki.enterpris…
22:16:29.433 [main] INFO org.xwiki.test.ui.TestDebugger -
ExtensionTest-testInstallScriptService started
22:19:55.911 [Thread-2] ERROR o.x.t.i.XWikiLogOutputStream - Exception
in thread "qtp850442967-17" java.lang.OutOfMemoryError: PermGen space
22:20:16.643 [Thread-2] ERROR o.x.t.i.XWikiLogOutputStream - Exception
in thread "qtp850442967-15" java.lang.OutOfMemoryError: PermGen space
22:20:35.600 [Thread-2] ERROR o.x.t.i.XWikiLogOutputStream - Exception
in thread "Lucene Index Updater" java.lang.OutOfMemoryError: PermGen
space
22:20:39.197 [Thread-2] ERROR o.x.t.i.XWikiLogOutputStream - Exception
in thread "qtp850442967-18" java.lang.OutOfMemoryError: PermGen space
22:20:43.065 [Thread-2] ERROR o.x.t.i.XWikiLogOutputStream - Exception
in thread "qtp850442967-642" java.lang.OutOfMemoryError: PermGen space
22:20:46.766 [Thread-2] ERROR o.x.t.i.XWikiLogOutputStream - Exception
in thread "qtp850442967-12" java.lang.OutOfMemoryError: PermGen space
22:21:08.863 [main] INFO org.xwiki.test.ui.TestDebugger -
ExtensionTest-testInstallScriptService failed
What are the qtp threads for?
Thanks,
Marius
Hello,
I've defined custom translations for XWiki standard keys. For some the
changes are reflected immediately. For other custom translations I have to
wait: the new string is displayed only after "hours" (ie the next day).
For instance strings for the 3 following translation keys are not changed
immediately:
login=
logout=
core.viewers.comments.add.submit=
Can someone explain me why? Is there a cache somewhere? but not for all
keys?
regards,
--
View this message in context: http://xwiki.475771.n2.nabble.com/Translation-is-there-any-cache-tp7583975.…
Sent from the XWiki- Dev mailing list archive at Nabble.com.
Hi devs,
FYI as part of http://jira.xwiki.org/browse/XWIKI-8848 I've added some new APIs
/**
* Creates a {@link WikiReference} from a string representing the wiki name.
*
* @param wikiName the wiki name (eg "xwiki")
* @return the reference to the wiki
* @since 5.0M1
*/
public WikiReference createWikiReference(String wikiName)
{
return new WikiReference(wikiName);
}
/**
* Creates a {@link SpaceReference} from a string representing the space name.
*
* @param spaceName the space name (eg "Main")
* @param parent the wiki reference in which the space is located
* @return the reference to the space
* @since 5.0M1
*/
public SpaceReference createSpaceReference(String spaceName, WikiReference parent)
{
return new SpaceReference(spaceName, parent);
}
/**
* Creates any {@link EntityReference} from a string.
*
* @param name the entity reference name (eg "page")
* @param type the entity type (eg "wiki", "space", "document", etc)
* @return the created reference
* @since 5.0M1
*/
public EntityReference createEntityReference(String name, EntityType type)
{
return new EntityReference(name, type);
}
/**
* Creates any {@link EntityReference} from a string.
*
* @param name the entity reference name (eg "page")
* @param type the entity type (eg "wiki", "space", "document", etc)
* @param parent the entity parent
* @return the created reference
* @since 5.0M1
*/
public EntityReference createEntityReference(String name, EntityType type, EntityReference parent)
{
return new EntityReference(name, type, parent);
}
The last 2 are generic and allow for more complex use cases.
Let me know if you have better ideas.
Thanks
-Vincent
Hi devs,
Sorry not to have reminded this yesterday: today is BFD #9 and our first weekly BFD!
Rules of engagements:
* Goal: reduce the open bug count from http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=10000#Created-vs-R… as much as possible.
* Consequence: the goal is to take the lowest hanging fruits.
* This is an occasion to close easy bugs that we wouldn't look at otherwise
* It also serves as cleaning up our JIRA
* Devs are free to chose by themselves the bugs they work on
* It is *not* a day to implement important bugs listed in the roadmap, although devs can take some from there if they wish
* It's only about bugs, not other type of issues
* Make sure to label all bugs closed today with "bugfixingday"
ATM we have 913 open bugs, let's how much we're able to close today! :)
Thanks
-Vincent
Hi all,
I did some sort of an implementation of a publication workflow
application, which allows to take a document through various states and
finally publish it in a mirror space once it is validated, and
subsequent versions of the same document are handled, with distinct
rights and comments between the draft version and published version.
For now, this application is here
https://github.com/lucaa/workflow-publication and I would like to
publish it in xwiki-contrib, in a repository called the same,
workflow-publication, in order to release it on xwiki maven.
Thanks,
Anca
Hi devs,
We have a "template" field in XWikiDocument and in what we
export/import in the XAR but it's not part of the database mapping
(there is defaultTemplate but no template). See
http://jira.xwiki.org/browse/XWIKI-8650.
Since it's not saved in the database it's totally useless to have it
in the XAR but we do have it in several pages of XE (some Blog pages).
So my question is what the hell is this field and what should be do with it ?
I can see two possibilities:
1) stop exporting it in the XAR and deprecated related method in XWikiDocument
2) put it back in the database mapping (I guess it used to be there or
I don't see how we could have some pages with it on github)
WDYT ?
Since I have no idea what this field is supposed to do I don't have a
strong opinion but since it's totally useless right now and nobody
seems to complain I would go for 1).
--
Thomas Mortagne
Hi devs,
Following our recent IRC discussion, I start this discussion to improve our
editor workflow.
If you agree that:
1) Save & Continue followed by Cancel is misleading, since the document
stay saved anyway
2) Checking the minor box is often forgotten, especially for minor change
since we do it fast
3) Switching between page view and editor is slow, and maybe useless with a
continuous editing session in WYSIWYG.
4) Preview is not always sufficient to ensure all is the way you want,
especially if rights is concerned
there are minor changes that may improve the workflow:
A) Remove the Is Minor checkbox
B) Replace the Save & Continue button with a Save minor version button,
while keeping the current behavior
C) Replace the Save & View button with a Save major version button.
D) Change the behavior of "Save major version button" to work like Save &
Continue behavior with a major version.
E) Replace Cancel by Done, and add a warning allowing to save either minor
or major or cancel (with 3 buttons) if any changes are unsaved.
With D) and E), we have the same behavior than an editor application, where
you File/Save and File/Quit.
At the end, we got the same number of buttons, one less checkbox but I
agree one more click to save major and view. This additional click is
needed so you choose voluntarily to save as a minor version or a major
version. If you think it is not good to have that additional click, let
leave it as it is... or simply remove the checkbox, it is misuse anyway and
cause complexity.
WDYT ?
--
Denis Gervalle
SOFTEC sa - CEO
eGuilde sarl - CTO
Hi,
I've published the javadocs for 4.5.x on the Scripting Reference
Documentation.
http://platform.xwiki.org/xwiki/bin/view/SRD/Navigation
Could somebody point me to some news scripting bindings that have been
created since 4.1.x/4.2.x so that we look to add them.
Ludovic
--
Ludovic Dubost
Founder and CEO
Blog: http://blog.ludovic.org/
XWiki: http://www.xwiki.com
Skype: ldubost GTalk: ldubost
Hi Jan-Philipp,
I'm investigating this issue as we have also seen it in another wiki
environment and seem to be able to getting close to more regular
reproduction.
Have you seen the issue again on the latest XWiki version that you are
running (4.4 if I'm correct) or have you rolledback to XE since then ?
Any information about the specific situation that your install is
experiencing when you are having this issue would be helpful or specific
version you have seen or not seen the issue.
I saw in a previous email you mention upgrading from 3.1 to 4.2 and in
another mail you mention running 3.4
Could you list me the versions of XWiki where you've seen the problem and
those where you haven't seen it. This would allow to make some code
comparaison and see code changes that could impact this area.
We also have made a patch which could allow detecting the issue and dump
more information in the logs as well as workaround it. If you are willing
to we could see to have you install that patch on your version and see if
you get some logs that could be helpful.
http://jira.xwiki.org/browse/XWIKI-8046
Ludovic
2013/2/8 Vincent Massol <vincent(a)massol.net>
> Hi Jan-Philip,
>
> What would be nice is if you could apply the workaround defined at
>
> http://jira.xwiki.org/browse/XWIKI-8046?focusedCommentId=71549&page=com.atl…
>
> and let us know if that fixes your issue.
>
> This will have 2 benefits:
> * We'll know it's the same problem
> * You'll have a patch for your issue till the issue is really fixed in the
> core
>
> Thanks
> -Vincent
>
> On Jan 18, 2013, at 11:41 PM, Jan-Philip Loos <maxdaten(a)gmail.com> wrote:
>
> > We upgraded to the latest minor versions as they were released, first
> > migration was from 3.1 to 4.2, followed by 4.2 -> 4.3 and finally 4.3 ->
> 4.4
> >
> > The problem still occurred with 4.3 (4.4 is to new to figured it out
> now).
> > In the last 3-4 month the problem occurred round about 3 times. I wrote a
> > small script which compares the name of the header image. If the name is
> not
> > the one customized in the XWiki.DefaultSkin it notifies me with an email.
> >
> > Notable: When the problem occurs its tends to occur on the same weekday -
> > Wednesday, but not regular every Wednesday. I checked all system crons
> and
> > xwiki scheduled jobs, no one was triggered at the same time the problems
> > occurred. The rate seems to be lower than before, but I guess it's only
> > because the crawler isn't as active as before and we have less visits per
> > day.
> >
> > To outline it once more:
> > - When I flush the cache manually with the Admin Tools extension, the
> > subwiki is immediately restored.
> > - The state (e.g. the header) is not the one from the main XEM-Wiki, its
> the
> > default one
> > - The content of the wiki is still present, "only" the styles and sadly
> the
> > rights seems to be the default one
> >
> > We consider to switch now back to XE, in hope to get rid of the problem.
> But
> > this seems not as easy as I hoped. Currently XEM is not super essential
> for
> > us, but it will leave me sick behind not being able to solve the problem.
>
> _______________________________________________
> users mailing list
> users(a)xwiki.org
> http://lists.xwiki.org/mailman/listinfo/users
>
--
Ludovic Dubost
Founder and CEO
Blog: http://blog.ludovic.org/
XWiki: http://www.xwiki.com
Skype: ldubost GTalk: ldubost
Hi All,
I am creating a new Class using the 'AppWithinMinutes' dialogue that will hold information on projects.
Within which I am trying to add a Database List.
This list is supposed to enable users that are creating a new 'Project' page to link the page with one or more 'Clients' (each 'Client' has its own page within a 'Clients' space).
I can get a list of all the clients from which the user can select from using the following HQL:
"select doc.name, doc.name from XWikiDocument as doc where
doc.space = 'Clients' and
doc.name <> 'WebHome' and
doc.name <> 'ClientsClass' and
doc.name <> 'ClientsTemplate' and
doc.name <> 'ClientsSheet' and
doc.name <> 'WebPreferences'
order by doc.name"
however the returned list is just text, and i would like it if they were 'links' to the actual Client Page.
Is this even possible? as i've been search for hours!
Thanks in advance.
Rob Southwell
Professional Services
Helyx SIS Ltd
M: 07762 767575
T: 01684 273725
F: 01684 853430
E: r.southwell(a)helyx.co.uk<mailto:r.southwell@helyx.co.uk>
W: www.helyx.co.uk<http://www.helyx.co.uk/>
Registered in England No: 04464638. Registered Office: Millennium House, 65 Walton Street, Aylesbury, Buckinghamshire, UK, HP21 7QG
DISCLAIMER AND CONFIDENTIALITY NOTICE
The content of this email (and any attachments to it) is confidential and may contain privileged information. It is intended solely for the use of the individual(s) or entity to which it is addressed. If you are not an intended recipient, please notify the sender immediately and do not disclose the contents to another person, use it for any purpose, or store or copy the information on any medium.
The views expressed in this e-mail are those of the individual and not necessarily the views or opinions of Helyx SIS Ltd. Please note that the author of this e-mail is not authorised to conclude any contract on behalf of Helyx SIS Ltd by e-mail.
Hello, I'm trying to create an attachment on a page from a URL to an image,
using JavaScript and the RESTful API.
I'm not sure I'm doing it correctly of if this can be done but here's where
I'm at:
httpRequest.open('PUT', '/xwiki/rest/wikis/XWiki/spaces/Main/pages/Daily
All-Source Digest – 2013-01-05T07:30P24/attachments/Blade Header
UnClassified-S.png');
httpRequest.setRequestHeader('Content-Type', 'application/xml');
httpRequest.send('<?xml version="1.0" encoding="UTF-8"
standalone="yes"?><attachment xmlns="http://www.xwiki.org"><name>"Blade
Header
UnClassified-S.png"</name><mimeType>"image/png"</mimeType><xwikiAbsoluteUrl>"https://domain/xwiki/bin/download/ColorThemes/Nightfall/Blade%20Header%20Un…"</xwikiAbsoluteUrl></attachment>');
This example is actually using a URL to a preexisting Attachment, just
seeing if I'm getting permission errors on the server some how. I've also
tried random publicly accessible images.
I get a 200 response signaling an attachment is created and a link appears
on the page in the attachment section but the image won't display because
'it contains errors'.
Can I submit attachments this way? Do I need the actual image data, encoded
somehow?
--
View this message in context: http://xwiki.475771.n2.nabble.com/create-attachment-with-Rest-API-tp7583867…
Sent from the XWiki- Dev mailing list archive at Nabble.com.
Hi,
I have the need for two things that I don't see how to do with the current
APIs:
1/ I do not know when I call the rest API if I'm still authenticated
In the response I haven't seen a way to know if I'm still authenticated
when I do a request. If I'm not I might get little or zero result but I
usually will still get a response.
What could we do to help on this. Would it be possible to add the logged in
user in the header of the response or in the xml or json returned ? Or did
I miss something.
2/ How can I easily build the URL of an user's photo activated on his
profile ?
Currently I make a request which lists me documents with their author. In
cati's screenshot I should display a thumbnail of the user's photo. However
it seems to be the users photo does not have a fixed name and it wouldn't
be practical to have to make a query for each user to find out the photo.
Could we build a REST or XWiki api that would automatically send the
correct photo. This way just by building the URL we could have the photo of
the user in the mobile app.
Any ideas on this ?
Ludovic
--
Ludovic Dubost
Founder and CEO
Blog: http://blog.ludovic.org/
XWiki: http://www.xwiki.com
Skype: ldubost GTalk: ldubost
Hi devs,
Cathy has made a great proposal for a new skin based on bootstrap which she
call skin 4.x (
http://incubator.myxwiki.org/xwiki/bin/view/Improvements/Skin4x), the name
is already a bit outdated, and it will be in fact our 5th generation skin.
So after dodo -> albatross -> toucan -> colibri -> what next ?
Here are some proposals:
Flamingo
Pelican
Falcon
Buzzard
Eagle
Bustard
Trumpeter
Buttonquail
Jacana
Gotwit
Guillemot
Cockatoo
Cuckoo
Condor
feel free to propose others...
Currently, my own preference is Condor which is an endangered species like
the Albatross, but Guillemot or Buttonquail sounds good to me as well.
WDYT ?
--
Denis Gervalle
SOFTEC sa - CEO
eGuilde sarl - CTO
Was reading http://platform.xwiki.org/xwiki/bin/view/DevGuide/Creating+a+form+with+vali…
This part seems weird...
The following code is needed in the form to launch the validation for a standard "Save" to validate the form:
<input type="hidden" name="xvalidate" value="1" />
I have to put that in the form? Why me? Where do I put that to get it in the form? Why does the wiki not just look for non-blank validation regular expression and if present, then put the above code in the rendered form?
Sorry if I am missing something obvious.
--
Mark Wallace
Principal Engineer, Semantic Applications
Modus Operandi, Inc.
709 S. Harbor City Blvd., Suite 400
Melbourne, FL 32901-1936, USA
(321) 473-1400 ext 1442
mwallace(a)modusoperandi.com<https://apps.rackspace.com/a/webmail.php?wsid=d82c52eb1782849dce8492e22617e…>
http://www.modusoperandi.com/
CONFIDENTIALITY NOTICE: The information transmitted (including attachments) is covered by the Electronic Communications Privacy Act, 18 U.S.C. 2510-2521. This transmission is intended only for the person(s) or entity/entities to which it is addressed and may contain confidential and/or proprietary material. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient or have received this transmission in error, please contact the sender by reply e-mail and destroy all copies of the original message.