[VOTE] Bundle the blame-api as core extension

classic Classic list List threaded Threaded
17 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[VOTE] Bundle the blame-api as core extension

Eduard Moraru
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
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Eduard Moraru
Forgot to mention that most of the very nice styling/css work was done by
Caty :)

Thanks,
Eduard

On Tue, Aug 1, 2017 at 3:57 PM, Eduard Moraru <[hidden email]> 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
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Denis Gervalle-2
+1 Thanks for making my API shine :)
--
Denis Gervalle
SOFTEC sa - CEO
On mar., août 1, 2017 at 14:59, Eduard Moraru <[hidden email]> wrote:
Forgot to mention that most of the very nice styling/css work was done by
Caty :)

Thanks,
Eduard

On Tue, Aug 1, 2017 at 3:57 PM, Eduard Moraru <[hidden email]> 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
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Alexandru Cotiuga
+1

Thanks,
Alex

On Tue, Aug 1, 2017 at 4:05 PM, Denis Gervalle <[hidden email]> wrote:

> +1 Thanks for making my API shine :)
> --
> Denis Gervalle
> SOFTEC sa - CEO
> On mar., août 1, 2017 at 14:59, Eduard Moraru <[hidden email]>
> wrote:
> Forgot to mention that most of the very nice styling/css work was done by
> Caty :)
>
> Thanks,
> Eduard
>
> On Tue, Aug 1, 2017 at 3:57 PM, Eduard Moraru <[hidden email]>
> 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
> >
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Ecaterina Moraru (Valica)
+1 very practical and we can make it even better :)

Thanks,
Caty

On Tue, Aug 1, 2017 at 4:07 PM, Alexandru Cotiuga <
[hidden email]> wrote:

> +1
>
> Thanks,
> Alex
>
> On Tue, Aug 1, 2017 at 4:05 PM, Denis Gervalle <[hidden email]> wrote:
>
> > +1 Thanks for making my API shine :)
> > --
> > Denis Gervalle
> > SOFTEC sa - CEO
> > On mar., août 1, 2017 at 14:59, Eduard Moraru <[hidden email]>
> > wrote:
> > Forgot to mention that most of the very nice styling/css work was done by
> > Caty :)
> >
> > Thanks,
> > Eduard
> >
> > On Tue, Aug 1, 2017 at 3:57 PM, Eduard Moraru <[hidden email]>
> > 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
> > >
> >
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

vmassol
Administrator
In reply to this post by Eduard Moraru
Hi Edy,

+1 in general. Ideally, even though we should bundle it by default in our base flavor, it would be nice if it could be optional (i.e. if the blame API/UI modules are present in the WAR then clicking “view source” would display the blame view and if not, it would default to basic source viewing). Is that how you coded it? I’m saying “ideally” since it’s probably more work to do this (might even possibly require a UIX - or the whole source VM should be a UIX, I don’t know - BTW that might be cool to have automatic UIX based on template names to unify skins and UIX but that’s another topic ;)) and at this stage I’m already very happy that we’re getting this feature and you may not want to spend more time on it right now! :)

Nice work!

Thanks
-Vincent

> On 1 Aug 2017, at 14:57, Eduard Moraru <[hidden email]> 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

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Eduard Moraru
Hi, Vincent,

It's nothing fancy right now, as you can see from the PR:
https://github.com/xwiki/xwiki-platform/pull/605/files#diff-68b60a2e4f248894705d2d063e2b0c9e

Basically there's code.vm that gets the document content and handles a
request variable. It either uses the Blame API to produce the annotated
line content and build the blame-enabled UI OR it just splits the content
by lines and builds the simple UI.

I guess it could be done with an UIXP and then code.vm could provide only
the simple UI when no UIX is detected or when explicitly asked by the user.
If the UIX is detected, then code.vm could show the toggle button and
render the UIX instead of the simple UI, when the user asks for it. Then it
would be a matter of adding an xwiki-platform-blame-ui module to the
standard flavor that implements the UIX and brings in the dependency on the
commons-blame-api module, so it wouldn`t have to be a core extension. The
CSS would also have to be broken in 2, with some of it going to this
blame-ui module.

This also results in the conclusion that the blame feature is optional and
that it would not be available in an empty wiki, where only the simple view
source UI would be available.

This refactoring would require about another half a day of work. Will need
to see when I could do it.

Would you consider the effort worth it? The UIXP itself is not really
valuable, the only advantage is in not having to add another core extension.

WDYT?

Thanks,
Eduard

On Tue, Aug 1, 2017 at 5:01 PM, Vincent Massol <[hidden email]> wrote:

> Hi Edy,
>
> +1 in general. Ideally, even though we should bundle it by default in our
> base flavor, it would be nice if it could be optional (i.e. if the blame
> API/UI modules are present in the WAR then clicking “view source” would
> display the blame view and if not, it would default to basic source
> viewing). Is that how you coded it? I’m saying “ideally” since it’s
> probably more work to do this (might even possibly require a UIX - or the
> whole source VM should be a UIX, I don’t know - BTW that might be cool to
> have automatic UIX based on template names to unify skins and UIX but
> that’s another topic ;)) and at this stage I’m already very happy that
> we’re getting this feature and you may not want to spend more time on it
> right now! :)
>
> Nice work!
>
> Thanks
> -Vincent
>
> > On 1 Aug 2017, at 14:57, Eduard Moraru <[hidden email]> 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
>
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

vmassol
Administrator
Hi Edy,

> On 1 Aug 2017, at 16:52, Eduard Moraru <[hidden email]> wrote:
>
> Hi, Vincent,
>
> It's nothing fancy right now, as you can see from the PR:
> https://github.com/xwiki/xwiki-platform/pull/605/files#diff-68b60a2e4f248894705d2d063e2b0c9e
>
> Basically there's code.vm that gets the document content and handles a
> request variable. It either uses the Blame API to produce the annotated
> line content and build the blame-enabled UI OR it just splits the content
> by lines and builds the simple UI.
>
> I guess it could be done with an UIXP and then code.vm could provide only
> the simple UI when no UIX is detected or when explicitly asked by the user.
> If the UIX is detected, then code.vm could show the toggle button and
> render the UIX instead of the simple UI, when the user asks for it. Then it
> would be a matter of adding an xwiki-platform-blame-ui module to the
> standard flavor that implements the UIX and brings in the dependency on the
> commons-blame-api module, so it wouldn`t have to be a core extension. The
> CSS would also have to be broken in 2, with some of it going to this
> blame-ui module.
>
> This also results in the conclusion that the blame feature is optional and
> that it would not be available in an empty wiki, where only the simple view
> source UI would be available.
>
> This refactoring would require about another half a day of work. Will need
> to see when I could do it.
>
> Would you consider the effort worth it? The UIXP itself is not really
> valuable, the only advantage is in not having to add another core extension.

No, I’m not convinced that it’s worth it at this point (since vm files can be overridden with a custom skin already).

I’m curious to know what other devs think about it though (but that shouldn’t hold you).

Thanks
-Vincent

>
> WDYT?
>
> Thanks,
> Eduard
>
> On Tue, Aug 1, 2017 at 5:01 PM, Vincent Massol <[hidden email]> wrote:
>
>> Hi Edy,
>>
>> +1 in general. Ideally, even though we should bundle it by default in our
>> base flavor, it would be nice if it could be optional (i.e. if the blame
>> API/UI modules are present in the WAR then clicking “view source” would
>> display the blame view and if not, it would default to basic source
>> viewing). Is that how you coded it? I’m saying “ideally” since it’s
>> probably more work to do this (might even possibly require a UIX - or the
>> whole source VM should be a UIX, I don’t know - BTW that might be cool to
>> have automatic UIX based on template names to unify skins and UIX but
>> that’s another topic ;)) and at this stage I’m already very happy that
>> we’re getting this feature and you may not want to spend more time on it
>> right now! :)
>>
>> Nice work!
>>
>> Thanks
>> -Vincent
>>
>>> On 1 Aug 2017, at 14:57, Eduard Moraru <[hidden email]> 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
>>
>>

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Clément Aubin
In reply to this post by Ecaterina Moraru (Valica)
Hi devs !

+1 ; looks interesting in a lot of use cases ; it would also be nice to
integrate the extensions to xwiki.org at some point :)

Thanks,
Clément

On 08/01/2017 03:23 PM, Ecaterina Moraru (Valica) wrote:

> +1 very practical and we can make it even better :)
>
> Thanks,
> Caty
>
> On Tue, Aug 1, 2017 at 4:07 PM, Alexandru Cotiuga <
> [hidden email]> wrote:
>
>> +1
>>
>> Thanks,
>> Alex
>>
>> On Tue, Aug 1, 2017 at 4:05 PM, Denis Gervalle <[hidden email]> wrote:
>>
>>> +1 Thanks for making my API shine :)
>>> --
>>> Denis Gervalle
>>> SOFTEC sa - CEO
>>> On mar., août 1, 2017 at 14:59, Eduard Moraru <[hidden email]>
>>> wrote:
>>> Forgot to mention that most of the very nice styling/css work was done by
>>> Caty :)
>>>
>>> Thanks,
>>> Eduard
>>>
>>> On Tue, Aug 1, 2017 at 3:57 PM, Eduard Moraru <[hidden email]>
>>> 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
>>>>
>>>

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Clément Aubin
On 08/01/2017 08:21 PM, Clément Aubin wrote:
> Hi devs !
>
> +1 ; looks interesting in a lot of use cases ; it would also be nice to
> integrate the extensions to xwiki.org at some point :)

Nevermind that … I didn’t made the link with the PRs that were opened on
xwiki-platform today >< ; hopefully, we will still be able to integrate
the feature in xwiki.org for its next upgrade.

>
> Thanks,
> Clément
>
> On 08/01/2017 03:23 PM, Ecaterina Moraru (Valica) wrote:
>> +1 very practical and we can make it even better :)
>>
>> Thanks,
>> Caty
>>
>> On Tue, Aug 1, 2017 at 4:07 PM, Alexandru Cotiuga <
>> [hidden email]> wrote:
>>
>>> +1
>>>
>>> Thanks,
>>> Alex
>>>
>>> On Tue, Aug 1, 2017 at 4:05 PM, Denis Gervalle <[hidden email]> wrote:
>>>
>>>> +1 Thanks for making my API shine :)
>>>> --
>>>> Denis Gervalle
>>>> SOFTEC sa - CEO
>>>> On mar., août 1, 2017 at 14:59, Eduard Moraru <[hidden email]>
>>>> wrote:
>>>> Forgot to mention that most of the very nice styling/css work was done by
>>>> Caty :)
>>>>
>>>> Thanks,
>>>> Eduard
>>>>
>>>> On Tue, Aug 1, 2017 at 3:57 PM, Eduard Moraru <[hidden email]>
>>>> 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
>>>>>
>>>>
>

--
Clément Aubin
Web Developer Intern @XWiki SAS
[hidden email]
More about us at http://www.xwiki.com
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Marius Dumitru Florea
In reply to this post by Eduard Moraru
+1

Thanks,
Marius

On Tue, Aug 1, 2017 at 3:57 PM, Eduard Moraru <[hidden email]> 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
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

vmassol
Administrator
In reply to this post by Eduard Moraru
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?
* 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)
** 2) Use a progress bar to compute the blame UI. I hope that the Java API has provision for this.

WDYT? Could you share with us some stats on performance?

Thanks
-Vincent

> On 1 Aug 2017, at 14:57, Eduard Moraru <[hidden email]> 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

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Denis Gervalle-2
On mer., août 2, 2017 at 12:28, Vincent Massol <[hidden email]> 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 <[hidden email]> 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
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Eduard Moraru
In reply to this post by vmassol
Hi, Vincent,

I believe most of your questions are answered in the jira issue I've
mentioned, specifically in the attached comment that includes screenshots:
https://jira.xwiki.org/browse/XWIKI-14578?focusedCommentId=95833&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-95833

The default is the new code viewer. You have to click a button to get the
blame view, so that's not by default.

In terms of performance, yes, there is an obvious penalty, but only when
loading the blame view. The blame view navigates through all the revisions
of a document, incrementally building the annotated data (line-by-line). We
can limit how far back in the revisions it should drill down to (as it is
done in the blame API example, to the last 10 revisions), but that would
produce suboptimal results IMO and, since it's an explicit user-requested
action, I believe it's worth the penalty.

In terms of numbers, I've used 2 older pages to test it out using the
?debug=true parameter and looking at the time (ms) spent on code.vm on the
server side.

http://platform.xwiki.org/xwiki/bin/view/Features/XWikiRESTfulAPI
* 1255 lines
* 132 versions
* No caching, just after wiki restart, browser cache refresh: 3912
* Just browser cache refresh: 2884, 2586, 2756, 2466
* Caches enabled, simple browser refresh: 2183, 2065, 2057, 2112, 2209, 2082

http://platform.xwiki.org/xwiki/bin/view/Features/PageEditing
* 212 lines
* 332 versions
* No caching, just after wiki restart, browser cache refresh: 2158
* Just browser cache refresh: 1542, 1419 ,1322, 1131, 1445
* Caches enabled, simple browser refresh: 1048, 1165, 1025, 1100

The versions number includes minor versions.

These documents are either large or have many revisions, so the numbers
should be good enough to make an approximation on real-world waiting times
to compute the blame. AFAICT, the number of lines has a bigger hit on
performance than the revisions have.

Thanks,
Eduard

On Wed, Aug 2, 2017 at 1:28 PM, Vincent Massol <[hidden email]> 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?
> * 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)
> ** 2) Use a progress bar to compute the blame UI. I hope that the Java API
> has provision for this.
>
> WDYT? Could you share with us some stats on performance?
>
> Thanks
> -Vincent
>
> > On 1 Aug 2017, at 14:57, Eduard Moraru <[hidden email]> 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
>
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

vmassol
Administrator
Hi Edy,

> On 2 Aug 2017, at 13:25, Eduard Moraru <[hidden email]> wrote:
>
> Hi, Vincent,
>
> I believe most of your questions are answered in the jira issue I've
> mentioned, specifically in the attached comment that includes screenshots:
> https://jira.xwiki.org/browse/XWIKI-14578?focusedCommentId=95833&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-95833
>
> The default is the new code viewer. You have to click a button to get the
> blame view, so that's not by default.

Cool.

> In terms of performance, yes, there is an obvious penalty, but only when
> loading the blame view. The blame view navigates through all the revisions
> of a document, incrementally building the annotated data (line-by-line). We
> can limit how far back in the revisions it should drill down to (as it is
> done in the blame API example, to the last 10 revisions), but that would
> produce suboptimal results IMO and, since it's an explicit user-requested
> action, I believe it's worth the penalty.
>
> In terms of numbers, I've used 2 older pages to test it out using the
> ?debug=true parameter and looking at the time (ms) spent on code.vm on the
> server side.
>
> http://platform.xwiki.org/xwiki/bin/view/Features/XWikiRESTfulAPI
> * 1255 lines
> * 132 versions
> * No caching, just after wiki restart, browser cache refresh: 3912
> * Just browser cache refresh: 2884, 2586, 2756, 2466
> * Caches enabled, simple browser refresh: 2183, 2065, 2057, 2112, 2209, 2082
>
> http://platform.xwiki.org/xwiki/bin/view/Features/PageEditing
> * 212 lines
> * 332 versions
> * No caching, just after wiki restart, browser cache refresh: 2158
> * Just browser cache refresh: 1542, 1419 ,1322, 1131, 1445
> * Caches enabled, simple browser refresh: 1048, 1165, 1025, 1100
>
> The versions number includes minor versions.
>
> These documents are either large or have many revisions, so the numbers
> should be good enough to make an approximation on real-world waiting times
> to compute the blame. AFAICT, the number of lines has a bigger hit on
> performance than the revisions have.

Ok. I’m still of the opinion that we should have a progress bar for generating the blame view. But it could be done as a second step if you don’t have the time right now (we just need a jira to remember it). Not sure how it would look like when the page has only a few revisions an the blame view loads fast though.

Opinions?

Thanks
-Vincent

>
> Thanks,
> Eduard
>
> On Wed, Aug 2, 2017 at 1:28 PM, Vincent Massol <[hidden email]> 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?
>> * 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)
>> ** 2) Use a progress bar to compute the blame UI. I hope that the Java API
>> has provision for this.
>>
>> WDYT? Could you share with us some stats on performance?
>>
>> Thanks
>> -Vincent
>>
>>> On 1 Aug 2017, at 14:57, Eduard Moraru <[hidden email]> 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
>>
>>

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Thomas Mortagne
Administrator
In reply to this post by Eduard Moraru
+1

Le 1 août 2017 14:57, "Eduard Moraru" <[hidden email]> a écrit :

> 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
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [VOTE] Bundle the blame-api as core extension

Eduard Moraru
8 +1, 0 +0, 0 -1.

Vote passed, PR merged.

Thanks,
Eduard

On Thu, Aug 3, 2017 at 6:09 PM, Thomas Mortagne <[hidden email]>
wrote:

> +1
>
> Le 1 août 2017 14:57, "Eduard Moraru" <[hidden email]> a écrit :
>
> > 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
> >
>
Loading...