Hi devs,
I’ve recently worked on converting our JUnit4 @Rule rules into JUnit5 equivalent.
There are now equivalent for:
- MockitoComponentManagerRule,
- ComponentManagerRule
- AllLogRule
- MockitoOldcoreRule
See http://dev.xwiki.org/xwiki/bin/view/Community/Testing#HJavaUnitTesting for examples of how to use them.
Feel free to ask here if you have questions or if you have ideas on how to better integrate with JUnit5 (I’m sure we’ll need to perform some tuning and there are use cases that I have forgotten that we’ll need to support).
I’m thus proposing that from now on, we start writing new tests as JUnit5 tests and that we start converting old JUnit3/4 tests into JUnit5 ones. For example if we need to add a method to a JUnit4 test, we convert it to JUnit5 and then add the new test method. It’s pretty simple to do the conversion.
WDYT?
Thanks
-Vincent
Hello, GSoC students,
As you all know, we are in the middle of the "Community Bonding" period of
the GSoC 2018 program's timeline [1].
This is a very important period in which you are supposed to get familiar
with the XWiki project, read documentation (APIs, processes, development
practices, etc.), setup tooling and development environments, figure out
the way the project is organized and what is the best approach for you to
make an impact. At the end of this period, you should be ready and
productive to start working on your cool project. (Nobody will complain if
you have already started ;) ).
Even more so, the community bonding period is about getting to know the
community and helping the community to know you. So, if you have not yet
introduced yourself or did not get the chance to exchange some initial
thoughts with your mentor(s), now is the time to do it. You need to
remember that GSoC is not a bounty program, but a community building one,
so the main objective is not simply to deliver, at a certain deadline, a
feature, but to be integrated in the open source community you have joined
and help it grow (through your contributions).
As such, on the technical side, your objective for this period is to get at
least 1 of your Pull Requests (average size/complexity, must contain a few
lines of code) to get reviewed and accepted either in the main repositories
(platform/commons/rendering) or in one of the existing Contrib extensions.
The PR needs to be associated to an existing Jira issue (bug/improvement).
Make sure you read and follow the Student Guidelines, specifically the
section dedicated to accepted students [2].
Reminder1: The deadline is the 14th of May.
Reminder2: The community bonding period is also an eliminatory period.
Students that choose to stay silent may be considered for elimination from
the program.
Thanks,
Eduard
----------
[1] https://developers.google.com/open-source/gsoc/timeline
[2]
http://dev.xwiki.org/xwiki/bin/view/GoogleSummerOfCode/Guidelines#HSuggeste…
Hi devs,
I’ve started brainstorming about the idea of a Roadmap Application at http://design.xwiki.org/xwiki/bin/view/Proposal/RoadmapApplication
Feel free to comment/edit the page there or add your ideas here.
Disclaimer: I don’t have any time to work on this ATM ;)
Thanks
-Vincent
Hello everyone,
As you may already know, we have thought about replacing the l10n platform
which is becoming too slow. Weblate seems to be a good replacement choice,
as it will able contributors to have their name in the commits and it has
every features needed to make translations.
One problem is that XWiki doesn't use a standard method to process
translation files. We can solve that by creating some scripts to convert
XWiki translation files into one that Weblate can understand.
A detailed solution can be found here :
http://design.xwiki.org/xwiki/bin/view/Proposal/WeblateasXWikistranslationp…
Feel free to discuss it by responding here or directly in the design page.
Thanks,
<http://www.xwiki.com/> *Adel Atallah*
*Product developer intern*
adel.atallah(a)xwiki.com <corina.luong(a)xwiki.com>
tel: +33 (0)6 12 96 35 06
Hi xwikiers,
Following new XAR entry type mail here is a question about color
themes we provide in standard XWiki (Cerulean, Charcoal, etc.).
1) Standard stuff, if you want a custom color theme create a new one
(would be nice to be able to copy a standard one and propose it when
you try to edit a standard one).
2) Demo content, edit and delete it all you want and upgrade won't
touch a customized theme to avoid surprises (background color changed
a bit in the standard version which now collide with your logo)
3) Same as 2 but delete is bad (same as home page)
WDYT ?
I'm think I prefer 1) but I'm OK with 3) if other think it's more
example than standard material. Let's say -0 for 2).
Thanks,
--
Thomas Mortagne
Hi devs,
Here’s a roadmap proposal for XS 10.4, 10.5 & 10.6
So here’s a proposal which takes into account remaining work + try to go in the directions defined at https://forum.xwiki.org/t/brainstorming-xwiki-10-x-cycle-roadmap/2274 (globally meaning more usability for end users).
XS 10.4
=======
* Date: May
* Thomas: Finish work for edit protection from 10.3. Specifically ability to prevent editing/moving/deleting extension pages when a confi param is set for that.
* Thomas: Register global wiki macro at wiki level when the macro document is in a subwiki - http://jira.xwiki.org/browse/XWIKI-12736
* Thomas: Performance work. Goal: be as good as XWiki 8.4.x. Fix performance issue in XWiki 10.x/Investigate problems with notifications. See for ex https://forum.xwiki.org/t/xwiki-and-tomcat-crashes/2788 but several users have reported issues so there's definitely something really bad happening.
* Guillaume: Finish AS replacement + continue fixing Notifications problems
* Marius: Improve Navigation panel. Introduce notion of blacklist for the Navigation panel and provide an Admin UI for it. Goal: remove the XWiki space by default using this blacklist (users can be seen in the User Index). Allow users to control better what they have in the panel + control the order. Others: try to improve performance.
* Adel: Evaluate and implement weblate for XWiki (replacement for l10n). Note: weblate is moving fast: https://docs.weblate.org/en/latest/changes.html
XS 10.5
=======
* Date: June
* Thomas: continue work on performance (started in 10.4)
* Thomas: Fix inconsistence of WebHome appearing everywhere when using references in macros and API calls. Finish Nested Spaces/Pages work. Page API.
* Guillaume: Notifications bugfixes
* Marius/Adel: Autocomplete on reference. Note: This would lessen the issue with WebHome.
* Example 1: In object editor when the type is "Page Reference" + picker
* Example 2: In WYSIWYG macro editor when a macro has a reference parameter + picker
* Marius/Adel: Finish Visible Save implementation
XS 10.6
=======
* Date: July
* Thomas: continue work on performance (started in 10.4)
* Thomas: Bug fixes (ongoing)
* Guillaume: Notifications bugfixes
* Marius/Adel: For macros having wiki markup content (need new macro descriptor metadata), let the user enter it in the WYSIWYG directly. When hovering over the macro allow editing content + have some icons to edit parameters (similar to the CKEditor easy image feature: https://github.com/ckeditor/ckeditor-dev/issues/932 They call it a "balloon toolbar").
* Marius/Adel: Move Menus inside administration (see http://design.xwiki.org/xwiki/bin/view/Proposal/IdeaMenuInAdministration)
Let me know if you have any feedback.
@Assignees: As always, please create jira issues and update the roadmap page with the jira issues (I’ll update the roadmap page now).
Thanks
-Vincent
The XWiki development team is proud to announce the availability of XWiki 10.3.
In this version you will automatically get notification when change
are made to pages you worked on. It also introduce the protection
against edition of pages coming from extensions to avoid breaking
mistakes and ease upgrades.
You can download it here: http://www.xwiki.org/xwiki/bin/view/Main/Download
Make sure to review the release notes:
http://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/10.3
Thanks for your support
-The XWiki dev team
Hi,
I’d like to modify the Release Notes app to autogenerate summaries for releases.
The idea is to auto generate it based on the headings for user , admins and devs headers.
For ex, taking the 10.2 release notes it would give:
"For users: New default Color Theme, Figure Macro, Rename/Move protection and Minor changes do not generate notifications anymore. For admins: Default Notifications. For Developers: REST API now supports the use of minor revision for page changes, Translation fallback and Jobs improvements."
It's not too bad IMO.
WDYT?
Thanks
-Vincent
Hi,
Today was supposed to be the release of 10.3 RC1. However, due to various
reasons (the stabilization of the release resulted in reverting the most
important part of the work done for this release, missing documentation,
etc.) and to avoid spending more time on almost empty releases instead of
the features themselves, we have decided that it's best to skip the 10.3
RC1 release and jump directly to 10.3 Final, next week.
I will be updating the version on jira as well to remove 10.3 RC1 and move
the existing issues to 10.3.
Some code changes need to be done as well for the @Since annotations
mentioning 10.3RC1 that will have to be switched to 10.3. (will leave that
to the devs that added them)
Thanks and sorry for the inconvenience,
Eduard
Hi,
I’ve posted the following on matrix/IRC.
Friday:
* Guys we regressed in global TPC from 2017-11-09 to 2018-04-03 :(
* From 76.28% to 75.88%
* we need to analyze more in details now to understand why
* (and whether the report is correct or not)
* PDF Report: https://up1.xwikisas.com/#mJ0loeB6nBrAgYeKA7MGGw
* Examples:
** com.xpn.xwiki.internal.store from 97.6% to 89.32%
** com.xpn.xwiki.internal.file from 67.9% to 9.87% - that's huge maybe some refactoring
** org.xwiki.url.internal from 86.99% to 63.69%
Today:
* Note that I have 2 reasons for checking our TPC:
** Globally it has to go up every year and we've gone down since nov 2017
** For STAMP we need to show an increase in TPC and we had a nice +2.2% increase from 2016 to 2017 but we've gone down now and we need to go up, to go to +3 or/ 4% at end of 2018
Today I’ve also started analyzing the drop from 67.9% to 9.87% for “com.xpn.xwiki.internal.file”. Here are my findings:
* This is caused by TemporaryDeferredFileRepository which is no longer tested
** Before: http://maven.xwiki.org/site/clover/20171109/clover-commons+rendering+platfo…
** After; http://maven.xwiki.org/site/clover/20180403/clover-commons+rendering+platfo…
* There have been refactoring recently to enable FS attachment store by default that have led to TemporaryDeferredFileRepository not being used anymore (deprecated methods not used anymore) or used only in some specific circumstances (for example at https://github.com/xwiki/xwiki-platform/blob/ac85d61b0c48d7ed21a8109e964f77… the store is not defined)
* The conclusion is that before the changesTemporaryDeferredFileRepository was called a lot (indirectly) leading to 545 calls to it (http://maven.xwiki.org/site/clover/20171109/clover-commons+rendering+platfo…) and now it’s not called anymore at all.
* The second conclusion is that we had no unit/integration tests for it and the changes lead to loosing it being tested. So it’s no longer tested ATM. Thanks to the Clover report we noticed that it’s no longer tested.
* Thus we need to do one of 2 things:
** Move the code to legacy and make sure no code uses it. That’s if we don’t really need it
** Keep it but add some unit/integration tests or even some functional tests that would trigger it.
I’ll let Thomas pitch in on this.
Next step: analyze some other drops in TPC.
Note: I wish it were simpler to find out why some TPC drops. Took me like 1-2 hours to figure all this out...
Thanks
-Vincent
Hi devs,
I’ve had some fun this week end implementing the equivalent of MockitMockingComponentRule, MockitoComponentManagerRule & ComponentManagerRule (and more).
See https://jira.xwiki.org/browse/XCOMMONS-1392 for more details.
Let me know what you think. If we don’t like it I can remove it for 10.3RC1 or 10.3 final.
FTR I’ve read https://junit.org/junit5/docs/current/user-guide/#overview and I find JUnit5 so powerful :) I love it.
Thanks
-Vincent
Hi devs,
Context
======
Evocrash is a tool developed as part of the STAMP research project (https://www.stamp-project.eu/). Its goal is to take a stack trace (the use case is production stack traces) and generate a test that, when executed, reproduces the stack trace ;)
It’s using Guided Genetic Algorithm to simplify the search space (which is pretty cool, isn’t it? ;)). More info at https://github.com/STAMP-project/EvoCrash and http://www.evocrash.org/
Results
======
So far evocrash was able to generate tests for the following issues (I’ve pasted the generated test code as comment):
* https://jira.xwiki.org/browse/XRENDERING-422
* https://jira.xwiki.org/browse/XWIKI-14475
* https://jira.xwiki.org/browse/XWIKI-13031
* https://jira.xwiki.org/browse/XWIKI-13196
* https://jira.xwiki.org/browse/XWIKI-13916
Using
=====
The use case I see is the following:
* A user reports a problem when using XWiki and create a jira issue with a stack trace
* An XWiki dev finds it and runs evocrash to generate a test reproducing the problem
* The XWiki dev uses the test to understand the reason (breakpoints can be put in the IDE) of the problem and writes a better test (which can be inspired by the test generated by evocrash or be completely different).
Questions
========
The question we need to answer is whether we think it coud be useful or not. Are there cases where it can be useful?
For example if we imagine someone not knowing the xwiki code base well, maybe this can help him/her understand the bug in a simpler way than just having to read/find where the problem is in the code base?
I’ve started the work of trying to evaluate how useful it could be on the XWiki project by analyzing the examples above. I've only analyzed 2 ATM (see the links in the jira comments) and I’d be interested to have your analysis too.
WDYT?
Thanks
-Vincent
Hi devs,
I've analyzed the 31 responses we got on the XWiki Feedback form in 2017.
The purpose was to know our users better and to try to define some
personas.
http://design.xwiki.org/xwiki/bin/view/Proposal/SurveyPersona
It would be nice to have more data to analyze or to know which users we
want to target / focus on when deciding what to prioritize for development.
Let me know if you find the findings interesting and if they match your
hypothesis. The pool is not that big and is relative.
Thanks,
Caty
P.S. We also have some older stats on these responses that can be used for
comparison on http://www.xwiki.org/xwiki/bin/view/Blog/XEFeedbackSummary
Hi devs,
Here are some ideas about how the repository application used on
extensions.xwiki.org could look like if we were to provide multiple display
layouts for extensions, require the contributors to add custom icons,
colors and screenshots.
http://design.xwiki.org/xwiki/bin/view/Proposal/exoGrid
In terms of design I tried to make it look as a proper application store,
but it will be heavily influenced on users providing ratings for extensions
and contributors on providing quality icons / colors/ description /
screenshots.
In terms of interaction, the biggest change would be a revamp of the search
functionality. Currently users are using it, but it's a generic search,
focused on text results.
Let me know what you think,
Caty
P.S. Proposal ideas iterated with Marius, Alex and Eduard.
Hi all,
I am new on this mailist and thanks for the invite.I have do proposal for
Add a Rest API to XWiki Notifications.
mr Clément Aubin came into contact with me with some helpful links to
understand how notifications is impliment on Xwiki platform and how
notifications works.I see that you have a complete Notificaton API that
works perfect for Xwiki platform therefore you want to make a REST API to
take notifications from other platforms to Xwiki platform? I understood
this from the speech .Second REST API will be created from scratch? or will
build up on the existing?
Thanks for reading
Nikos.
If we should replacing the XSL-FO which we use to export PDF file out of
XML,
with XML and CSS only with open-source library ,
and I think * ”CSS Paged Media “ *
is this good enough to do that ,
or there are any suggestion
Hi everyone,
My name is Vivek Iyer (username: remorax on riot and on github) and I'm a
Computer Science student from IIIT, Hyderabad, I'm in my second year and I
would like to contribute to XWiki as part of GSoC.
I have experience contributing to open source earlier, and I'm reasonably
comfortable with the technology stack too and I'm passionate about coding
and open source so I would love to contribute to XWiki!
I'm in the process of making my proposal for the same, should I mail it
here only for review, once its done? Do get back to me ASAP!
Looking forward to working with you all,
Regards,
Vivek Iyer
The XWiki development team is proud to announce the availability of XWiki
10.2.
This release has a fresh look thanks to its new default color theme. A new
Figure macro is available for content creators to add illustrations along
with optional captions. Renaming and moving standard pages is now
discouraged with a warning message that should prevent editors from
breaking XWiki.
You can download it here: http://www.xwiki.org/xwiki/bin/view/Main/Download
Make sure to review the release notes:
http://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/10.2/
Thanks for your support
-The XWiki dev team
Hi devs,
We started discussing this yesterday on the xwiki chat.
Here’s the rationale for changing:
* l10n is slow and is preventing users to contribute translations (it’s much harder than it should be)
* it’s costing us maintenance that we shouldn’t have to do (it’s not our role to maintain a translation service, even though it was nice to eat our own dog food initially). I see this very similar to when we switched from our GWT-based WYSIWYG editor to CKEditor.
* It’ll allow us to benefit from new features/bug fixes the external service develops
* Right now it’s taking an hour or more every time we release to integrate the translation changes and this slows us down to increase our release delivery speed
* We’re putting the onus on the RM only to validate that the proposed translations are good. So only 1 pair of eyes.
* We have no time to fix any translation if they’re not correct. A system where when someone proposes a new translation generates a PR that we apply as they come in would be much better and solve both the review and lateness issues.
Of course it’ll mean some plugins/customizations to develop in the service we will use since it’s not going to support some custom formats we have such as our XAR XML format. So we need to pick a tool that allows for this.
The proposal:
* Start investing in implementing XWiki translation using an external tool.
* Start by looking at weblate: https://weblate.org/en/ since
** it seems to offer lots of features we need (automatic PR - see https://docs.weblate.org/en/latest/vcs.html#github, quality checks, plugins). See https://weblate.org/en/features/
** it’s open source itself and in case the service goes down we can ask XWiki SAS to host it for us (see https://github.com/WeblateOrg/weblate).
** We need to ask them if they can host us, see https://weblate.org/en/hosting/ and the part about "Hosting for free software”.
** We could also ask XWiki SAS if they’d accept paying a “Basic” plan (200 euros/year which is affordable IMO vs hosting it ourselves)
** There’s a REST API so that if we want we can provide a view/status of the translations from xwiki.org: https://docs.weblate.org/en/latest/api.html . We could even imagine using this API to convert from a format to our own format, if need be.
* Propose to have a developer work on this in an upcoming roadmap (to be defined but as early as possible since l10n is not in good shape)
* Fix l10n as much as we can without spending too much time on it, until we have the new translation service ready to be used
Things to look at:
* Ability to register custom formats or more generally how to handle our custom format
* How do we handle deprecated translations keys
* How do we handle global rename/move of keys from one resource file to another
* <add more here>
WDYT?
I’d like to have especially Thomas’s POV since he’s the one who spent the most time on l10n and I’d like to make sure he’s ok with this.
Thanks
-Vincent