Hi devs,
I don't think there is currently a process that is in place to handle
pull requests and I have the feeling that the way there are handled
today is a bit random.
There are usually comments sent out on each pull request but sometimes
it seems that some pull requests are going in sleep mode and it's not
clear who is in charge.
I would like to suggest that a process is put in place where it's
clear who is responsible for a pull request and a status is given to
the contributors that propose that pull request.
Something like:
Assigned developer: XXXX
Status:
New -> new pull request, not yet assigned
Assigned -> assigned to a developer, he is in charge of reviewing the
pull request and ask for modifications or accept it. The developer can
auto assign it to himself. If nobody does, we need to decide how they
will be taken into account.
ModificationsRequired -> for now rejected with comments. Contributor
needs to apply comments and then change back to Assigned for further
evaluation
VoteRequired -> there are no more comments, but a vote is required as
the changes to XWiki core are important
WaitingFinalAuthorization -> optional step for complex patches where
a additional authorization would be required (need to define who would
be the persons that give the authorization)
WaitingApplication -> there are no more comments and no changes or
vote required. The pull request can be applied and is waiting for a
developer to apply it
Abandoned -> contributors is abandoning the pull request (cannot do
the changes, no more time, etc..)
Rejected -> pull request is rejected (quality not enough, etc..)
Applied -> pull request is applied
What do you think ?
Ludovic
--
Ludovic Dubost
Founder and CEO
Blog: http://blog.ludovic.org/
XWiki: http://www.xwiki.com
Skype: ldubost GTalk: ldubost
Hi.
I'm currently working on Velocity 2.0 packaging.
If that's OK with you, I would like to incorporate
DeprecatedCheckUberspector.java into Velocity, but I need a statement
from your part to be able to change its licence to Apache 2.0 (LGPL and
Apache 2.0 licences aren't compatible).
By the way, I take this opportunity to tell you that if there is another
specific part of xwiki-commons-velocity that you think should be
integrated on our side, or an important missing feature you'd like to
insist on, don't hesitate. I already integrated VELOCITY-825, for
instance, so String->Enum constant conversions are now handled by
Velocity. There may be other important conversion cases you'd like to
see handled.
Regards,
Claude
Hi,
We have discussed this subject multiple times, but we don't have an
official vote and conclusion on the topic.
Problem: In JIRA who is the Assignee of an issue fixed by a Pull Request?
1: Contributor
- he provided the solution
- giving the attributions, the contributor might feel encouraged to
contribute more
- we could do some JIRA statistics on external contributions, but this use
case can be covered by GitHub statistics
2: Committer
- he does the merging on his account and he becomes responsible for the
committed code.
- in case there are problems, the committer needs to find solution, since
we can't rely on contributors availability
- in doing the PR review, the committer spends a lot of time analyzing and
testing the provided solution
We are talking here about complete solutions provided by the PR, since in
case of partial solutions, the committer can assign himself on the issue
(depends on the quantity of modification he does).
Let me know what you think,
Caty
Hi devs,
Problem
=======
We have 2 issues right now when installing an extension in XWiki:
1) It’s not clear where is the entry point of that extension.
- Example1: an app that is only for admins and only has a ConfigurableClass
- Example2: an app that provides a macro and doesn’t have a UI
2) Even when an extension registers itself in the Applications Panel, the user still need to refresh the page or navigate away to see it.
Proposal
========
* Introduce the concept of Entry point (a.k.a home page) in Extension metadata
* Have the EM UI display the extension’s entry point (when there’s one) after having installed the extension so that the user can click on it and be taken to the home page of the extension.
This would make extensions more discoverable IMO.
Implementation Details
==================
* Some maven extension metadata properties in pom.xml
* A format to represent an entry point. It shouldn’t be a full URL since that needs to be computed at runtime. Basically it should contain:
** The document reference
** The action to use (view, admin, etc) - optional, should default to “view"
** The query string to use - optional, should default to an empty query string
This corresponds to the notion of ResourceReference (EntityResourceReference to be precise). However we don’t have any textual representation of it ATM.
WDYT? Good idea? Bad idea?
Thanks
-Vincent
Hi devs,
While working on adding extension points to support the replacement of the
current WYSIWYG editor I came to the conclusion that we need to make a
clear distinction between Edit Modes and Editors.
An Edit Mode is basically an HTML *form* that allows you to edit some data
that is associated with an XWiki document. There can be for instance an
edit mode to edit the document title and content, another edit mode to edit
the document objects, another one to edit the document access rights, and
so on. Ideally, XWiki extensions should be able to provide new edit modes.
The current place where we expose the Edit Modes is the Edit Menu. Class,
Objects, Access Rights, Inline Form are well defined edit modes. Before we
talk about the Wiki and WYSIWYG "edit modes" let's define what an editor is.
An Editor is basically a form *field*. Most of the time it is an enhanced
form field, a widget, that allows you to edit a single document field. The
editor obviously depends on the field type. There can be a date editor
(known as date picker), a plain text editor, a rich text editor, and so on.
Ideally, XWiki extensions should be able to provide new editors for
specific data types. For instance an extension could replace the date
picker. Another one could replace the rich text editor.
The relation between Edit Modes and Editors is many to many. An Edit Mode
can use multiple editors and an Editor can be used by multiple Edit Modes.
For instance the rich text editor can be used in the "Content" edit mode
(for document content) but also in the Inline Form edit mode, for TextArea
object properties.
If we agree with this distinction then I think XWiki should have separate
extension points for Edit Modes vs. Editors.
What does this mean for the CKEditor integration? Well, CKEditor is an
editor.. so it doesn't make sense to have a "CKEditor" edit mode. CKEditor
can be used to edit the document content as well as the TextArea object
properties that contain wiki syntax. So there should be no "CKEditor" entry
in the Edit Menu. Otherwise we need to add "Inline Form - CKEditor" also,
and so on for each Edit Mode that can use the CKEditor.
So I think we should go in the following direction:
* Replace Wiki and WYSIWYG entries from the Edit menu with a single Entry
that will represent the Edit Mode for editing the document title, content
and syntax. I'm not yet sure what name should we use for this Edit Mode.
Let's call it "Content" for now.
* The default edit action (for simple users) will
** open the Inline Form edit mode if the document has a sheet associated
** open the "Content" edit mode otherwise
* The "Content" edit mode will use the Editor configured in the User
Profile, falling-back on the wiki preferences
* The Inline Form edit mode will use for TextArea properties the Editor
specified in the property meta data, falling-back on the User Profile
setting, then on the wiki preferences
* We should have an administration section to configure the default Editor
as wiki level (wiki preferences)
We don't have to implement all this right away. I'd like to start by making
the editor list from the TextArea meta data, User Profile and wiki
preferences extensible, so that CKEditor can add its entry there.
WDYT?
Thanks,
Marius
Hello Devs,
I would like to propose a new best practice for the way we close issues as
Duplicate.
As an example I've reported this issue:
http://jira.xwiki.org/browse/XWIKI-13728 which was later closed as a
Duplicate to http://jira.xwiki.org/browse/XWIKI-13729.
>From my perspective, this is not correct since the issue I reported is
valid from an user's POV.
I would have preferred that my issue was renamed and that developers would
have added some technical information as a comment to it if they wanted to
do so.
It just doesn't make any sense to me to close a perfectly valid issue as a
Duplicate just to create another one that has a more technically correct
summary and description.
It also doesn't make sense to close the original issue as a Duplicate to a
duplicate issue :) (pun intended)
I see things like this: my issue's description is a use-case of the issue
later reported by Edy, so if anything, Edy's issue should be closed as a
Duplicate to mine and not the other way around.
One scenario where I think issues dated previously should be closed as
Duplicate is if the new issue has already been fixed. For example when a
Developer doesn't notice an older issue and starts working on the new one
instead of closing the new one as a Duplicate and work on the older one.
There might be more, feel free to add them to this thread.
So, what I propose is that we don't close original issues as Duplicate
unless it falls into the category previously described or some other
exceptions that I can't think of now and might occur.
Thanks,
Manuel
Hi devs,
I’d like to propose some changes to the governance related to paying extensions and extensions.xwiki.org and the Extension Manager.
* Make extensions.xwiki.org an extension repo for free and open source extensions only. This is the case till now but during the last governance change VOTE we had said we could allow non-free versions. After more thinking I believe it’s better that companies who want to have paying apps provide them through their own extension repository. One issue is that these companies will need to have users register and log in and we cannot do that on xwiki.org.
* Allow top sponsoring companies to have their extension repository defined in the default XWiki configuration (in xwiki.properties). I’m proposing that sponsoring companies require 3 active committers to be able to have their stores listed by default in the XWiki config. The same would be done on nexus.xwiki.org which would proxy any maven repo from a top sponsoring company. Note that any company (even one not participating to the development of the XWiki project can provide an extension repository with some instructions for users to add their repo to their config - This point here is only about having some repos by default).
* Allow the top sponsoring company (TSC) an advertising space on the home page of extensions.xwiki.org to advertise extensions it wishes to promote.
Please cast your votes.
Here’s my +1
Thanks
-Vincent
Hello,
A new version of the Nested Pages Migrator Application is available. See
http://extensions.xwiki.org/xwiki/bin/view/Extension/Nested+Pages+Migrator+…
You can install or upgrade with the Extension Manager.
This version brings a new tool that help you to check if the migration is
needed.
Thanks,
--
Guillaume Delhumeau (guillaume.delhumeau(a)xwiki.com)
Research & Development Engineer at XWiki SAS
Committer on the XWiki.org project
Hi devs,
I have an XWiki application that has a template provider which allows the
users to create application entries anywhere on the wiki using the Create
Page menu. I would like to control entirely how application entries are
displayed to the user. I can do this partially from my sheet but:
* I can't control the panels. I would like to display panels that are
specific to my application whenever a user is viewing an application entry,
no matter where the application entry is located.
* I can't control the color theme or the icon theme. I would like to use a
custom color theme and icon theme without affecting the other pages from
the wiki.
* I can't control the layout (the skin). I can hide the extra tabs from the
sheet but I can't hide a panel column or control the panel column width.
One solution to fix my problem is to introduce XClass Preferences, same as
we have page and wiki preferences. XClass preferences would have priority
over page and wiki preferences, inheriting from them. We can implement it
using either a naming convention, <ClassName>Preferences, or using some
xobject on the XClass, similar to the ClassSheetBinding xobject.
Do you see any problem with solution? I can think of one: access rights.
Does it make sense to have access rights specific to an XClass? E.g. "only
this group can edit instances of this XClass".
Do you think it is worth implementing? Another solution would be to allow
the sheet to overwrite some of the preferences, but the problem is that the
sheet is executed after the page HTML has started to be written to the
response.
Thanks,
Marius
Hi devs,
Here’s a use case:
* We set up a clone of xwiki.org (in order to upgrade it for example)
* The issue: those other instances of xwiki.org send watchlist mails or the IRC bot on them hijack the #xwiki channel (preventing the real xwiki.org IRC bot to connect)
The proposal:
* Introduce a maintenance configuration parameter in xwiki.properties.
* Have the scheduler obey this mode and not trigger any job when it’s on
* Have the IRC Bot module also obey this mode and not try to connect when it’s on
WDYT?
Thanks
-Vincent