Hi everyone/Jerem,
I've seen that we've added the following GSOC project:
http://dev.xwiki.org/xwiki/bin/view/GoogleSummerOfCode/AdvancedEmailIntegra…
This looks quite similar to what Jerem is working on.
Jerem, maybe you could tell us a bit more about your project and how it's similar/different than this GSOC.
Jerem, any timeframe for a first version of your project to be visible?
Is this something you're developing for yourself or do you plan to give it to the community or even to the XWiki project?
I'd like to clarify this to know how to best organize this project to not duplicate efforts too much and instead to combine synergies.
Thanks
-Vincent
Hi devs
Yesterday the hard disk of our local machine running Jenkins crashed.
We decided to use that as a reason to move Jenkins to one of our
servers.
This should be easy to do, with exception of the functional tests
(Selenium). Currently we are evaluating if it's worth it to install
our own test environment or if we should use an SAAS solution.
I tried to figure out how you solved this problem, but I couldn't find
the details of how / where you run your functional tests during the
continuous integration. So, do you run your functional tests for the
different browsers (and browser versions) on you own servers or do you
use a third party solution?
Thanks for a hint / inspiration
Edo
Hi devs,
I just committed a new Velocity uberspector that automatically
converts String method arguments to Enum when possible. Please review
it and tell me if there's something wrong.
The idea is to be able to call #someMethod(SomeEnum) with
$obj.someMethod('VALUE')
if SomeEnum.VALUE is a valid constant.
See https://github.com/xwiki/xwiki-commons/commit/dbf1e06cc4f949c6f0b5a03c57067…
.
Thanks,
Marius
Hi devs,
While debugging the failing REST integration tests I discovered an
inconsistency in the page REST resource. Take for instance the
response returned for this URL:
/xwiki/rest/wikis/xwiki/spaces/Blog/pages/BlogIntroduction
* The returned content is the raw (not rendered) content. In this
particular case, since the blog post content is saved in the blog post
object, and also because the blog uses the new sheet system, the raw
content of Blog.BlogIntroduction page is empty
* The returned title is the display title (i.e. the rendered title).
In this particular case, since the raw title is empty, but the blog
post sheet, which controls how the title is displayed, renders the
'title' property of the blog post.
The inconsistency is that the content is raw while the title is
rendered. I think the page REST resource should provide data in the
first place, so raw title. It could provide the rendered title or
content additionally, but that is secondary IMO.
WDYT?
I'll fix the REST integration tests by using a page that doesn't have a sheet.
Thanks,
Marius
Hi,
I'd like to change the <repository> in each top level pom to nexus so that on release, all releases will go directly to staging by default.
Agent1 already has an account in the staging repository from my last release so this should just work.
WDYT?
Caleb
Hello friends,
First thank you for the inputs.
> About the tentative time-line, please confront each step with a date.
I'm not sure whether it was unclear or not, but the numbers represents the
weeks of GSOC and are not arbritrary. Unless you want the exact date, then
I can go ahead and revise it again. I also appended to the beginning: a
design exploration stage as per your request. [1]
> About the mock-ups, personally I would prefer we make it a complete
> > initial phase of the project, to take the time to create a skin
> > afresh, trying as much as possible to forget about what has been done
> > in colibri (the current default skin of XWiki) and instead think
> > outside the box. This would mean forgetting about how menus, links,
> > information etc. is displayed, and come up with an actual new skin.
> > Especially since I understand you have design skills ;)
Thank you. Right, ok so I wasn't sure how much creativity i am allowed with
the skin and that's why my first mock up is pretty close to colibri. I
created a second mock up of a more "brave" skin. desktop [2], mobile [3],
What does the community think? wrong or right direction?
> I would love to see some fresh ideas of how the responsive skin would look
> like.
> Jonathan should provide some a timeline in order to see how expensive this
> phase would be.
Ok so at the moment, I am aiming for a week of design exploration. But to
be honest, I have never worked on a project like this, or created a time
line. If someone could comment on my timeline [1] as to whether it is
totally skewed or just about right, that would be great.
Please also take a look at other ideas/layouts for the mobile skin
> http://incubator.myxwiki.org/xwiki/bin/view/Improvements/MobileSkin
This is a great resource. I will definitely look into this more deeply.
Thank you!
On a non Responsive Skin topic, is there a place where I can read/reply to
the mailing list, beside email, that is more dedicated (like how google
groups have an online "viewer")? Like the way links are delineated at the
bottom as footnotes, does everyone do that manually, or is there a
dedicated place that does this for you? It is a little bit confusing to
read emails with multi-level quotes. Or maybe I am just not used to it.
Thanks in advance.
Kind Regards,
Jonathan Solichin
[1] http://dev.xwiki.org/xwiki/bin/view/Design/ResponsiveSkin
[2] http://jssolichin.com/public/2/desktop.jpg
[3] http://jssolichin.com/public/2/mobile.jpg
Sasinda,
please keep on list.
What you describe is indeed the spirit I envision.
paul
Le 14 mai 2012 à 16:38, sasinda rukshan a écrit :
> Thanks. That means I document the descriptive architecture on the Design page. And a total prescriptive one on an extra section.
> Anyway the already showed figure "tentative architecture " is a prescriptive one.
> Shall I do as follows. Two sections for
> Descriptive architecture: Actual implemented architecture. documentation modified as I actually implement the platform.
> Prescriptive architecture: How it is envisioned but may not actually implemented.
>
> If the page is getting lengthy(hope not) can I create more extension pages? If so where?
>
> Thanks.
> Best Regards.
> Sasinda
>
>
> On Mon, May 14, 2012 at 7:57 PM, Paul Libbrecht <paul(a)hoplahup.net> wrote:
>
> Le 14 mai 2012 à 14:47, sasinda rukshan a écrit :
>
>> But should I add that in the design page and describe?
>
> I would add this as a separate section of the design page.
> It should be clear to evaluate that the currently implemented design is "useful enough", the extra section should show a "perspective".
>
> my 2p.
>
> paul
>
Hello everybody,
As you know, starting with Firefox 4 Mozilla changed the release strategy
of its browsers. They are having a new (rapid) release cycle, releasing a
new version each 6 weeks. [1]
Firefox 3.6 having a large market spread, Mozilla decided to keep the
support for it in the past months. On the 24th April 2012, Mozilla
announced it will no longer offer support for Firefox 3.6, making it EOL
(End Of Life)
During the meeting from yesterday (9th May 2012) they officially pulled the
plug on Firefox on 3.6 [2], allowing the possibility of Firefox 3.6 users
to upgrade to the latest version. [3]
Since Firefox 3.6 will not be supported by Mozilla, I propose we also drop
the support for Firefox 3.6.
Here is my +1 (note that my vote is not binding)
Regards,
Sorin B.
[1]
http://www.tomsguide.com/us/firefox-rapid-releases-browserwars,news-12613.h…
[2]
https://wiki.mozilla.org/Firefox/Planning/2012-05-09#Release_.2812.2C_10esr…
[3] https://bugzilla.mozilla.org/show_bug.cgi?id=753006
Please, there is no reason to send mail like that to me personally.
Especially when you answer to a mail sent on the mailing list ;)
On Sun, May 13, 2012 at 3:18 PM, sasinda rukshan
<sasindarukshan(a)gmail.com> wrote:
> Hi All,Thomas,
> I created the initial design page and edited the progress page.
> Named the project XWiki Android Platform. If you don't like the name feel
> free to change it :).
It's your project, and better choosing something you fill is the right
one ;) I'm ok with this name and it make it clear is a framework more
than a final application.
> http://dev.xwiki.org/xwiki/bin/view/Design/XWikiAndroidPlatform
> http://dev.xwiki.org/xwiki/bin/view/GoogleSummerOfCode/ImproveandroidXWikic…
> I will check maven.
> Also will compare development with IDEAJ vs eclipse ADT. I ll familirize
> myself with XWiki REST model and earlier Android Client work this week.
Ok cool. Note that I'm using Eclipse myself so I would not help you
much for IntelliJ. ADT was pretty nice from what I remember (and this
was last year, did not have much time to play with Android since
then).
>
> Thanks,
> Best regards
> Sasinda.
>
>
> On Wed, May 9, 2012 at 1:34 PM, Thomas Mortagne <thomas.mortagne(a)xwiki.com>
> wrote:
>>
>> On Tue, May 8, 2012 at 4:51 PM, sasinda rukshan
>> <sasindarukshan(a)gmail.com> wrote:
>> > Hi Thomas,
>> > Sorry for not being able to participate in the community bonding yet.
>> > I am very busy with exams these days. Hope you noticed me in the
>> > proposal
>> > that I am unable to actively participate until 10 th May. 1 exam got
>> > postponed. I will start after 12th May and document the project details.
>> > I
>>
>> Sure but starting creating a page and put in it the design work you
>> already started for the GSOC proposal should not take very long. You
>> can improve it later.
>>
>> > made the proposal publicly available just for now. Hope 12 to 21 is
>> > enough
>> > to catch up since XWiki mobile project is a bit separate from XWiki.
>>
>> It is technically separated since it's running in Android but will
>> still have to deal with XWiki model and REST API. Also if you never
>> worked with maven before you will need some time to learn how the
>> project build works and you should probably start by updating it with
>> the latest plugin versions etc.
>>
>> > Thank you.
>> > Best Regards.
>> >
>> > On Sun, May 6, 2012 at 3:36 AM, Jonathan Solichin
>> > <jssolichin(a)gmail.com>wrote:
>> >
>> >> Hello friends,
>> >>
>> >> Here is the design page for Responsive Skin implementation [1].
>> >> Included:
>> >> Goal, Approach, Tentative Timeline, Mock Ups.
>> >> Early questions for the current design:
>> >>
>> >> 1. Specific support for non-javascript capable browser? I feel like it
>> >> is
>> >> not necessarily since browser which can not support javascript will
>> >> fall
>> >> back by itself. More over, it would not be capable of carrying out
>> >> media-queries required for responsive design and some XWIKI features
>> >> (such
>> >> as live tables?) anyway.
>> >> 2. Is the community ok with trying to use "true (html)" drop downs /
>> >> forms
>> >> in order to fully utilize functions built in to phone/tablets [3]?
>> >> 3. Pressable Links: should they be bigger on mobile to help facilitate
>> >> touching on words, or would it be better to use a "background" to
>> >> create a
>> >> "touch area"? Both are in the phone mock up [3]. Former demonstrated in
>> >> quicklinks, latter in the "Spaces" section.
>> >>
>> >> [1] http://dev.xwiki.org/xwiki/bin/view/Design/ResponsiveSkin
>> >> [2] http://css-tricks.com/convert-menu-to-dropdown/
>> >> [3] http://jssolichin.com/public/mobile.jpg
>> >>
>> >> Thank you again. Cheers & best,
>> >> Jonathan Solichin
>> >>
>> >> On Fri, May 4, 2012 at 8:08 AM, Eduard Moraru <enygma2002(a)gmail.com>
>> >> wrote:
>> >>
>> >> > Hello students,
>> >> >
>> >> > As you probably already know, we are almost at the middle of the
>> >> community
>> >> > bonding period [1].
>> >> >
>> >> > From the previous mail [2] and XWiki's GSoC page [3], you also know
>> >> > that
>> >> > this is the time where you learn about XWiki's development processes,
>> >> code
>> >> > and community and, to better understand the code, you must fix at
>> >> > least
>> >> one
>> >> > jira issue related directly or indirectly to your project.
>> >> >
>> >> > This is in no way a radio silence period, quite the contrary.
>> >> >
>> >> > In other words, you need to:
>> >> >
>> >> > 1. Answer this mail :)
>> >> > 2. Create a Design page [4] regarding your project
>> >> > 3. Start idling on the IRC channel
>> >> > 4. Start chatting on the mailing list and on IRC about your project
>> >> > and
>> >> > other aspects of XWiki that you don't yet understand
>> >> > 5. Get your hands dirty by diving into the code and fixing at least
>> >> > one
>> >> > Jira issue (2 more weeks left)
>> >> > 6. Talk about your project
>> >> >
>> >> > What we want from you with this mail is to see where you stand with
>> >> regard
>> >> > to what has been written above. We want to know what you don`t
>> >> > understand
>> >> > about XWiki, what issue you are planning to undertake, what you want
>> >> > to
>> >> > start with, etc.
>> >> >
>> >> > It helps you more to start saying incorrect things and fixing them
>> >> > early
>> >> > instead of staying quiet and making a big bad choice towards the end.
>> >> >
>> >> > And a last thing, please remember that one-to-one conversations with
>> >> > your
>> >> > mentor are not encouraged and are actually harmful to the success of
>> >> > your
>> >> > project. Talk to the community, ask for help early and life will be
>> >> sweeter
>> >> > :)
>> >> >
>> >> > Thanks,
>> >> > Eduard
>> >> >
>> >> > ----------
>> >> > [1] http://www.google-melange.com/gsoc/events/google/gsoc2012
>> >> > [2] http://markmail.org/thread/u6jhsqwxn6uitcjo
>> >> > [3] http://gsoc.xwiki.org
>> >> > [4] http://dev.xwiki.org/xwiki/bin/view/Design/WebHome
>> >> _______________________________________________
>> >> devs mailing list
>> >> devs(a)xwiki.org
>> >> http://lists.xwiki.org/mailman/listinfo/devs
>> >>
>> > _______________________________________________
>> > devs mailing list
>> > devs(a)xwiki.org
>> > http://lists.xwiki.org/mailman/listinfo/devs
>>
>>
>>
>> --
>> Thomas Mortagne
>
>
--
Thomas Mortagne
Hi devs,
As you probably know from http://jira.xwiki.org/jira/browse/XRENDERING-187, I've been working on a Compatibility Test Suite (CTS) for the Rendering Syntaxes.
I've now added a Test Report on xwiki.org at
http://rendering.xwiki.org/xwiki/bin/view/Main/SyntaxReport
It allows to have a global view of what each syntax supports.
Of course this is a very first version and the idea is to improve it over time.
Note 1: Right now we have only 6 tests in the CTS.
Note 2: ATM the Report gets its data from the Sonar Nemo instance at http://nemo.sonarsource.org/dashboard/index/178313 However this instance only runs the xwiki build every few days. I've made modifications this morning to the CTS but the build hasn't run yet on Nemo. I need to check if I can get the same result using Jenkins Remote API.
Let me know what you think.
Thanks
-Vincent
Hello students,
As you probably already know, we are almost at the middle of the community
bonding period [1].
>From the previous mail [2] and XWiki's GSoC page [3], you also know that
this is the time where you learn about XWiki's development processes, code
and community and, to better understand the code, you must fix at least one
jira issue related directly or indirectly to your project.
This is in no way a radio silence period, quite the contrary.
In other words, you need to:
1. Answer this mail :)
2. Create a Design page [4] regarding your project
3. Start idling on the IRC channel
4. Start chatting on the mailing list and on IRC about your project and
other aspects of XWiki that you don't yet understand
5. Get your hands dirty by diving into the code and fixing at least one
Jira issue (2 more weeks left)
6. Talk about your project
What we want from you with this mail is to see where you stand with regard
to what has been written above. We want to know what you don`t understand
about XWiki, what issue you are planning to undertake, what you want to
start with, etc.
It helps you more to start saying incorrect things and fixing them early
instead of staying quiet and making a big bad choice towards the end.
And a last thing, please remember that one-to-one conversations with your
mentor are not encouraged and are actually harmful to the success of your
project. Talk to the community, ask for help early and life will be sweeter
:)
Thanks,
Eduard
----------
[1] http://www.google-melange.com/gsoc/events/google/gsoc2012
[2] http://markmail.org/thread/u6jhsqwxn6uitcjo
[3] http://gsoc.xwiki.org
[4] http://dev.xwiki.org/xwiki/bin/view/Design/WebHome
Hi, all,
I got a problem with our xwiki site setup, I have apache webserver and
tomcat behind with xwiki 3.5 deployed, when I do login, logout or clicking
buttons on the server machine browser with
http://localhost:8082/xwiki/bin/login/XWiki/XWikiLogin, I can login,
everything works fine, but if I use external public internet to access our
xwiki site like: http://mydomain.com/xwiki/bin/login/XWiki/XWikiLogin, I
got the login page shown up, but if I login, it redirects me to
localhost/xwiki/bin/view/Main/WebHome, which points to my localhost, not my
server mydomain.com machine, then from the browser address bar, if I change
the localhost url to this url:
http://mydomain.com/xwiki/bin/view/Main/WebHome, I can see the page
correctly.
Hers is my httpd.conf file setup:
ProxyPass /xwiki http://localhost:8082/xwiki
ProxyPassReverse /xwiki http://localhost:8082/xwiki
Any clue what is going on?
Thanks
Dave
Hi students,
This year we thought about changing a bit the way we track a student's
progress.
As you may have seen in previous mails [1], we expect students to document
their work/progress in 2 ways:
1) Design page in the Design [2] space on xwiki.org
GSoC students should create a Design page where they document technical
aspects of the feature they are working on: architecture, use cases,
problems, various solutions with pros and cons, etc. This page should be
written as an XWiki community member and not a GSoC student (there is
the progress
report for that), ensuring that the page will remain relevant even after
the GSoC period ends.
2) 'Progress' section of the GSoC project [3] for which the student has
been accepted
This is the place where the students set their goals (milestones and
deliverables) and where they report their advance towards completing them.
More details and examples are available at [4].
Thanks,
Eduard
----------
[1] http://markmail.org/message/tdjr4wjm6hwswghr
[2] http://dev.xwiki.org/xwiki/bin/view/Design/
[3]
http://dev.xwiki.org/xwiki/bin/view/GoogleSummerOfCode/WebHome#HSelectedPro…
[4]
http://dev.xwiki.org/xwiki/bin/view/GoogleSummerOfCode/DocumentingStudentPr…
Hello,
Seems I did not understand everything about how to write unit tests ...
Here's my problem : I want to test a class MA, a component, that has the
following code (excerpt) :
My test class MATest contains :
Here I'm looking up the Execution in order to set expectations on it for the
initialize to pass.
Problem is that I'm still getting this at test execution :
It seems that my initialize() method is called at lookup(), so how could I
set-up the expectations before they're actually exercised ? :
Thanks for help,
Jeremie
--
View this message in context: http://xwiki.475771.n2.nabble.com/Some-difficulties-with-unit-testing-tp749…
Sent from the XWiki- Dev mailing list archive at Nabble.com.
Dear developers of XWiki!
I am a student of Software Engineering at the Vienna University of
Technology and currently writing my master thesis on project management
and the development methods used in open source projects. In my research
I analyzed open source development and compared it with elements found
in various proprietary approaches, both agile and well-defined.
But to provide balanced and up-to-date results my work relies on first-
hand information and expert opinion, for which I need your help. XWiki
matches my criteria regarding size, activity and available information
and I would be glad to include it in my case study.
I am looking for an interview partner with good insight into the project
structure and a solid overview of all stages of development, ideally a
member of the core team with long-term dedication to the project.
The interview would take about 20 minutes on Skype (or a similar phone-
based tool). If you prefer a written chat, that can be arranged as well.
My daily schedule is flexible, so whatever time suits you best should
work for me.
The subject areas I would like to cover in the interview are XWiki's:
* Development flow and release cycles
* Social structures, responsibilities and decision making
* Code structure and architectural considerations
* Special conditions caused by the open source environment
I realize your time might be scarce, but if you decide to contribute to
this case study your help shall be all the more appreciated. Once
finished I will gladly share my results and any new insights gained on
the topic with you.
Kind regards,
Martin Schönberger
(maschonber(a)gmail.com)
Hi Fabio and devs,
I found a serious concurrency issue in the REST server module while
debugging the instability of the Extension Manager when
extensions.xwiki.org repository is used (default case) . The Extension
Manager UI searches extensions using REST and very often it gets 500
HTTP response code. See http://jira.xwiki.org/browse/XWIKI-7773 for
instance. The server log from xwiki.org shows that the real cause is:
May 8, 2012 5:09:14 PM org.restlet.engine.application.StatusFilter doHandle
WARNING: Exception or error caught in status service
java.util.ConcurrentModificationException
at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
at java.util.AbstractList$Itr.next(AbstractList.java:343)
at org.xwiki.rest.XWikiSetupCleanupFilter.afterHandle(XWikiSetupCleanupFilter.java:73)
See the full stacktrace http://pastebin.com/hnFSuwem .
The problem is related to the way "releasable components" are managed.
I debugged locally both XWikiSetupCleanupFilter [1] and
ComponentsObjectFactory and here's what I discovered:
* org.restlet.Context.getCurrent() is shared across HTTP requests
* as a consequence, restlet context attributes are shared across HTTP request
* RELEASABLE_COMPONENT_REFERENCES context attribute is thus also shared
* while a thread iterates this list in XWikiSetupCleanupFilter another
thread can add a component to the list in ComponentsObjectFactory
* the list grows indefinitely because XWikiSetupCleanupFilter only
releases the components; it doesn't remove them from the list
* older instances are re-released
* since the list keeps references to older instances these instances
can't be garbage collected
Could someone more knowledgeable on the REST module (especially
Restlet) review my findings?
Thanks,
Marius
[1] https://github.com/xwiki/xwiki-platform/blob/master/xwiki-platform-core/xwi…
[2] https://github.com/xwiki/xwiki-platform/blob/master/xwiki-platform-core/xwi…
Hi team,
Just to let you know I've started splitting the WYSIWYG module in
order to create a standalone distribution of the editor, to make it
easier to use outside XWiki.
The new structure of the module would be :
├── xwiki-platform-wysiwyg-client
│ ├── xwiki-platform-wysiwyg-client-standalone
│ └── xwiki-platform-wysiwyg-client-xwiki
├── xwiki-platform-wysiwyg-plugin-api
├── xwiki-platform-wysiwyg-server
└── xwiki-platform-wysiwyg-war
├── xwiki-platform-wysiwyg-war-standalone
└── xwiki-platform-wysiwyg-war-xwiki
Note that the standalone WAR distribution would only be built when
releasing, otherwise it means we almost double the overall time of the
WYSIWYG build. I'm not sure we can work around that so easily due to
the way GWT works ; Marius maybe you can hint me here.
You can check out the split here :
https://github.com/jvelo/xwiki-platform/compare/XWIKI-7785
Jerome
Hi,
I'd like to introduce a new API in QueryFilter:
====================8<====================
/**
* Filter a list of query results. The result list can be returned
without modification.
*
* @param results the original result list.
* @param <T> expected type of elements in the result list.
* @return a filtered result list.
*/
<T> List<T> filterResults(List<T> results);
====================8<====================
In addition to QueryFilter#filterStatement(), this method would be
called from the QueryExecutor and it would allow the filter to mofidy
the result list of a query.
We talked about this one before with Thomas and Vincent but the use
case we were thinking about wasn't achievable (permission checking)
because of performance issues.
Now I need this method to fix an issue with the "unique" (distinct)
filter. When using "unique", a HSQLDB limitation [1] forces us to put
the columns present in the "order by" clause in the "select" clause.
This currently causes a lot of queries to fail when using the "unique"
filter. The fix consists to add the columns from the "order by" clause
in the "select" clause and then to remove the added columns from the
query results.
I think this new API fits well in the QueryResult interface, here's my +1.
[1] This is considered invalid when backed by HSQLDB (and Oracle
AFAIK): "select distinct doc.fullName from XWikiDocument order by
doc.language"
The reason is that the order can't be undoubtedly determined, for
example with the following data:
XWD_FULLNAME, XWD_LANGUAGE
Main.Page1, de
Main.Page1, fr
Main.Page2, en
Main.Page2, it
--
Jean-Vincent Drean,
XWiki.
On Fri, May 4, 2012 at 1:32 PM, Paul Libbrecht <paul(a)hoplahup.net> wrote:
> Hello Marius,
>
> What has been the final decision here?
> I'm about to need an upgrade to JSON-lib used in Curriki because that library doesn't stream the json objects out... so I'd better use the same library. Was Jackson used? JSON.simple?
> In the xwiki-4.0 download, I only see json-lib 2.4.
As you can see from
https://github.com/xwiki/xwiki-commons/commit/ac22d47d0f826c93b019d9a7f6fe1…
I've used json-lib in the end but the JSONTool API (method signatures)
is not bound to any JSON implementation so we could change the JSON
library later.
Hope this helps,
Marius
>
> thanks in advance
>
> Paul
>
> Le 14 mars 2012 à 13:14, Marius Dumitru Florea a écrit :
>
>> On Wed, Mar 14, 2012 at 12:26 PM, Guillaume Delhumeau
>> <gdelhumeau(a)xwiki.com> wrote:
>>> Hi.
>>>
>>> Can't you add a parser function too ?
>>
>> A parser function needs to return an object:
>>
>> * either the JSON object from some JSON library, but that means
>> binding the Velocity tool to a specific JSON library and I tried to
>> avoid this for the moment until we reach an agreement regarding the
>> JSON library to use
>> * a wrapper for the JSON object from some JSON library to hide the
>> JSON implementation, but that's a lot of work and I don't have time
>> for it right now
>> * a Java object, but for this you need a JSON-Java mapping, which is
>> specific to the JSON library used and it requires some work to make a
>> generic binding method
>>
>>>
>>> Right now, we have to use groovy for JSON parsing. It would be better to
>>> have it in velocity directly, don't you think ?
>>
>> Yes, but I don't have time for it right now.
>>
>> Thanks,
>> Marius
>>
>>>
>>> Thanks,
>>>
>>> Guillaume
>>>
>>> 2012/3/14 Andreas Jonsson <aj(a)member.fsf.org>
>>>
>>>> +1
>>>>
>>>> 2012-03-14 09:08, Marius Dumitru Florea skrev:
>>>>> Hi devs,
>>>>>
>>>>> Following the discussion on
>>>>> http://lists.xwiki.org/pipermail/devs/2012-March/049889.html I'd like
>>>>> to add a JSON Velocity tool that has (for now) just one method:
>>>>>
>>>>> /**
>>>>> * Serialize a Java object to the JSON format.
>>>>> * <p>
>>>>> * Examples:
>>>>> * <ul>
>>>>> * <li>numbers and boolean values: 23, 13.5, true, false</li>
>>>>> * <li>strings: "one\"two'three" (quotes included)</li>
>>>>> * <li>arrays and collections: [1, 2, 3]</li>
>>>>> * <li>maps: {"number": 23, "boolean": false, "string": "value"}</li>
>>>>> * <li>beans: {"enabled": true, "name": "XWiki"} for a bean that has
>>>>> #isEnabled() and #getName() getters</li>
>>>>> * </ul>
>>>>> *
>>>>> * @param object the object to be serialized to the JSON format
>>>>> * @return the JSON-verified string representation of the given object
>>>>> */
>>>>> public String serialize(Object object)
>>>>>
>>>>> This method is able to do what both of the initially proposed methods
>>>>> were able and it doesn't expose the JSON library used (so that we can
>>>>> change it later if we want). I'll use json-lib for the initial
>>>>> implementation and we can move to Jackson or other JSON library later.
>>>>>
>>>>> WDYT? I'd like to commit this ASAP.
>>>>>
>>>>> Thanks,
>>>>> Marius
>>>>> _______________________________________________
>>>>> devs mailing list
>>>>> devs(a)xwiki.org
>>>>> http://lists.xwiki.org/mailman/listinfo/devs
>>>>> .
>>>>>
>>>>
>>>> _______________________________________________
>>>> devs mailing list
>>>> devs(a)xwiki.org
>>>> http://lists.xwiki.org/mailman/listinfo/devs
>>>>
>>> _______________________________________________
>>> devs mailing list
>>> devs(a)xwiki.org
>>> http://lists.xwiki.org/mailman/listinfo/devs
>> _______________________________________________
>> devs mailing list
>> devs(a)xwiki.org
>> http://lists.xwiki.org/mailman/listinfo/devs
>
Hi Jonathan, everybody,
As you may know the "Responsive Skin" project has been accepted for
the GSoC 2012. I will be mentoring the project, together with
Ecaterina and everyone that wants to get involved. Jonathan Solichin
is the student who will realize the project.
Jonathan, I'd like you start telling us about your plans and an
expected timeline proposal for the realization of the project.
Then the next step is to create a page on the design page in the
development wiki [1] and start the work here.
I'll lay here some of my thoughts on the project, and what I
personally consider conditions for success (for the moment) :
* I'd like we start with a phase of "paper" design (I mean with gimp
or photoshop or whatever tool to produce images).
* I think we should limit the feature set of the skin ; not trying to
do everything right away (there are potentially a lot of features to
work on, from livetables to data editors, to applications, etc.)
* For a start, focus should be given on content and navigation. With a
mobile-first approach, expanding up to large-screens desktop.
* I think it's OK to have semantic break points (like "phone",
"tablet", etc.) as long as the skin is actually responsive and adapt
to whatever real estate is available. We should be able to "drag the
corner" of a browser window and have the skin display well at all
sizes.
Of course all those points are open for discussion, those are just my
views on the topic. Feedback from the community welcomed.
Jonathan, looking forward hearing from you,
Cheers,
Jerome
[1] http://dev.xwiki.org/xwiki/bin/view/Design/WebHome
Hello community, Hello Google Summer of Code students,
First of all, congratulations on your applications and your activity during
the selection period, and welcome in the XWiki development team.
Before guiding the accepted students to their next steps, we'd like to
thank again all those who showed interest in XWiki for this Summer of Code.
We had a lot of good applications this year, with professional approaches
and interesting ideas, and it was very difficult to choose only 3.
Unfortunately, some very good students, with great potential, were not
accepted. So, to those interested in getting involved anyway, without
Google's implication, I renew the invitation to put your ideas in practice
under the guidance of the community. Even though the money will be missing,
you can still take advantage of the other GSoC benefits: learning new
things, gaining experience, earning recognition, etc [1]. If you would like
to do that, please let us know by replying to this mail.
For the accepted students, here are some getting started hints:
= Community bonding period =
According to the program timeline [2], the next month (until - May 21st) is
to be used for community bonding.
The first thing to do, sometime this week, is to present yourself and your
project on the dev list, so that everyone knows who you are and
what to expect from you (a precondition is to be subscribed to the list,
which you *need to do ASAP* if you haven't already).
Also, you should continue getting acquainted with the code, the practices
and the developers. Please make sure you all read and understand the
following - very useful - documents:
- [3] http://purl.org/xwiki/community/
- [4] http://purl.org/xwiki/dev/
- [5] http://platform.xwiki.org/xwiki/bin/view/Features/
= Mentorship =
We prefer open mentorship. While your assigned mentor is the one officially
in charge with your guidance, almost all interaction should be done 'in the
open' as much as possible, on the IRC channel or on the mailing list. You
should choose the communication medium according to the importance of the
matters to be discussed: naturally, the less important issues are to be
discussed on IRC, while the design decisions, important progress
announcements and testing/feedback requests go on the list. This way, the
community is informed on the evolution of your project, and other
developers can come up any time with useful ideas and suggestions.
Moreover, if your mentor is hit by a bus (the bus factor [6]), another
developer can take his place with little effort.
= Communication =
Sitting alone in your room, working secretly on your project is definitely
a bad approach. However, please keep in mind that too much communication
can also be harmful, as it distracts the others from their own work. You
need to be able to communicate just right:
- provide meaningful information about your progress,
- ask the community's opinion on non-trivial design or implementation
decisions
- avoid wasting a lot of time on a problem, when a more experienced
developer (or a student that fought the same problem) could quickly provide
you an answer; however, do try to find the answer yourself at first.
Wrong: "Where do I start? What do I do now? And how do I do that? Is this
good? It doesn't work, help me!"
Right: "Since a couple of hours ago I get a strange exception when building
my project, and googling for a solution doesn't seem to help. Looking at
the error, I think that there's a wrong setting for the assembly plugin,
but nothing I tried works. Can someone please take a look?"
Subscribe to the devs list (if you didn't do this already), and start
monitoring the discussions. It is also recommended to subscribe to the
users list, but not mandatory. The notifications list is a little too high
volume and technical for the moment, but it is a great knowledge
source.
= Development process =
The project's lifecycle is NOT design -> implementation -> testing ->
documentation. [7]
We invite you to adopt a test driven development [8][9][10] approach and to
experience agile development [11]. After the first coding week, you must
have some code that works. It won't do much, of course, but it will be the
seed of your project. Every functionality will be validated by tests. The
code must be properly tested and commented at the time of the writing
(don't think you'll do that afterwards, because in most cases you won't).
Since our code is now hosted on GitHub [12], you should register an account
there and fork some xwiki repositories, so that you can try to build XWiki
from sources, and be able to contribute bugfixes. We'll add you to the
xwiki-contrib organization [13], and we'll create dedicated repositories
for each project. We encourage you to do __at least__ weekly commits
(ideally, if you are well organized, you should be able to commit code that
works daily, so try to aim at daily commits). This way, the code can be
properly reviewed, and any problems can be detected before they grow into
something too difficult to fix. One big code blob committed at the end, no
matter how good it may seem, is a failure at several levels.
A simple way of having something functional in the first week is to prepare
the maven build for your modules, which will give you the first unit test
for the first class.
= Next steps, in a nutshell =
- Get more familiar with the code and development process and try to master
Maven, JUnit, Selenium, component driven development, ...
- Continue fixing a few small issues, chosen so that they are __related to
your project__. You can ask on IRC for help selecting good issues, or you
can pick from the (non-comprehensive) list of easy issues [14]
-- This will help you get more familiar with the code your project needs to
interact with.
- Refine and organize the ideas concerning your project (you can use the
Drafts space [15]), and write several use case scenarios.
- Start writing the first piece of code for your project.
At the end of the community bonding period, you should have a clear vision
of the project, well documented on the xwiki.org wiki, you should have the
build infrastructure ready, and you should be pretty familiar with the
existing code you will need to interact with. And, of course, you should be
familiar with the community and the way we communicate.
Good luck, and may we all have a great Summer of Code!
-The XWiki Development Team
----------
[1] http://www.catb.org/~esr/writings/cathedral-bazaar/homesteading/
[2] http://www.google-melange.com/gsoc/events/google/gsoc2012
[3] http://purl.org/xwiki/community/
[4] http://purl.org/xwiki/dev/
[5] http://platform.xwiki.org/xwiki/bin/view/Features/
[6] http://en.wikipedia.org/wiki/Bus_factor
[7] http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/
[8] http://en.wikipedia.org/wiki/Test-driven_development
[9] http://www.amazon.com/dp/0321146530/
[10] http://www.amazon.com/dp/0201485672/
[11] http://www.amazon.com/dp/0596527675/
[12] https://github.com/xwiki/
[13] https://github.com/xwiki-contrib/
[14]
http://jira.xwiki.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=1…
[15] http://dev.xwiki.org/xwiki/bin/view/Drafts/
Hi everybody,
I've stumbled upon this interesting blog post from the GitHub team
where they explain how they use pull requests to build GitHub
(https://github.com/blog/1124-how-we-use-pull-requests-to-build-github)
I think this is not exactly the meaning we give to pull requests that,
AFAIU, are open only when the feature is complete and is asked to be
merged.
What I've found interesting in the article was the first point: "Open
a Pull Request as early as possible". Which is something surprising to
me.
Basically they are using pull requests as we use mailing list
discussions. Which is very interesting and, maybe, more effective
(because you have the actual code inlined).
The only downside is the traceability and indexability of the discussions.
Are comments easily exportable from GitHub (i.e. retrieving all the
comments that have been made on a project during all its lifetime) ?
A sort of "data liberation" à la Google.
My 2 cents,
Fabio