On mer., août 2, 2017 at 12:28, Vincent Massol <vincent(a)massol.net> wrote: Hi Edy,
Actually I have some additional questions:
* How well does it perform? Imagine that there’s a 300 lines document and 300 revisions,
each one changing one line from the document. How long does it take to display the blame
view?
You're right, the blame view requires retrieving each revision, one by one, in order
to compare them with the last est. The kind of changes has no impact, only the amount of
elements (lines here) and amount of revisions has an impact on the performance.
* AFAIK our JRCS API is not very performant and thus I’m worried about performance.
* I can imagine 2 things to help with this:
** 1) Do not display the blame view by default when going to the source view (let the user
click a “show blame view” button)
Isn't it already so in the proposed PR?
** 2) Use a progress bar to compute the blame UI. I hope that the Java API has provision
for this.
Yes, you can show progress with the current API, since the API is called with each
revision in a loop.
-- Denis Gervalle
WDYT? Could you share with us some stats on performance?
Thanks
-Vincent
On 1 Aug 2017, at 14:57, Eduard Moraru
<enygma2002(a)gmail.com> wrote:
Hi, devs,
During a hackathon session, I have done a refresh on XWiki's code viewer
("code.vm") and integrated the Blame API [1] developed by Denis to add
line-by-line blame information, just like GitHub's blame feature.
Please see the associated Jira issue that also includes before and after
screenshots:
https://jira.xwiki.org/browse/XWIKI-14578
The Blame API module is a commons module since 2014 but not bundled neither
in the WAR nor in the flavor, so, in order to go along and merge my work,
I'd need it to be available as a core extension (to be also usable by
code.vm).
I have not studied it deeply, but the module seems to be doing its job well
and the result is very nice and it is very generic.
Being able to perform a blame analysis builds upon the diff module and both
are features of XWiki's versioning capabilities, so, IMO, both should be
considered core extensions (and not only the diff module, which already is
core).
The PR is available at
https://github.com/xwiki/xwiki-platform/pull/605
Here is my (obvious) +1 to bundle the blame-api and merge the PR which
includes the UI.
Thanks,
Eduard
----------
[1]
http://extensions.xwiki.org/xwiki/bin/view/Extension/Blame%20Module