What's New Feature in XS

Hi devs,

I’d like to propose a What’s New feature in XWiki so that our users can get news around the XWiki ecosystem directly in their instances (very muck like the same feature in gitlab, What's new | GitLab ).

I’ve created a design page where I have listed the requirements and some ideas for the implementation.

See What's New Feature (Proposal.WhatsNewFeature) - XWiki

Let me know (the vote is only about this, the other design items can be discussed as a proposal but I’m not asking a vote about them):

  • If you’re ok to add this feature to XS and have it bundled by default

  • If you’re ok with modifying the Governance rules slightly to add that the top sponsoring company (TSC) is allowed to provide its news source by default in XS, provided that the news in it are globally interesting to the XWiki community and presented in a nice community-oriented way.

    • XWiki SAS would be interested to add a news source for their paid apps by default. We already have XWiki SAS’s paid extension repository added by default.

    • Related entries in the Governance page:

    • Allow Sponsoring companies creating XWiki to publish blog entries to present new offers/services/extensions. Since we don’t want this to turn into spam, the rule is no more than 1 such blog entry/mail per month to start with and those entries must to be presented in a nice community-oriented way.
    • Allow the Top Sponsoring company to create a monthly newsletter sent to the users list, gathering news about the xwiki ecosystem in general (product news, events, new offers/services/paying extensions, tips, etc). There could also be surveys. The Top Sponsoring company is encouraged to gather such news from other sponsoring companies to include them in the newsletter. The idea is to let the community be more aware of all news that exists be them free or for pay, and in addition also advertise conferences at which xwiki is represented, etc.
    • Allow displaying the xwiki.org blog in the XWiki runtime.
    • Sponsoring Companies can have their own extension repository defined in the default XWiki configuration (in xwiki.properties). To qualify, a Sponsoring Company must have at least 3 active committers to be able to have their stores listed by default in the XWiki config. The same is true for nexus.xwiki.org.

Here’s my +1 for both questions.

Thank you.

+1

+1 as long as user are able to opt-out of a given source.

Yes, this is UC3 (full opt-out) and UC100 (selective opt-in/opt-out from sources).

+1

I’m +1 only if we have the opt-out feature allowing admin to disable it. By reading the design page I think it would be:

UC100: Allow admins to choose the news sources to display in the wiki

I’d be -1 to have it if it’s not easy to disable, I see that you plan to have possibility to disable entirely the feature, but sounds a bit extreme for only removing a single source.

It’s just that for the MVP, I wanted to get a version out as fast as possible and if I have to do the source admin UI selection, it’s going to take too much time, so I wanted to push that to the next version. Now, I can probably define the sources in xwiki.properties for now since that’s easy to code, and later add the Admin UI part.

+1

+1

LGTM

I’m wondering about the privacy implications of this feature. The loading of the news would be another way that provides information about XWiki installations to xwiki.org and xwiki.com but depending on how images are loaded, this can also expose client IP addresses to xwiki.org and xwiki.com. As IP addresses are personal information, this could be a privacy problem. For example the privacy policy of xwiki.com from my understanding explicitly mentions that IP addresses are tracked to analyze user behavior. Unless we can make sure that in particular requests for content loaded on the client are exempted from this tracking, I think there must be an opt-in with an explicit approval of the privacy policy by each individual user before accessing this feature (i.e., before any requests are made from the client to xwiki.com/org). Alternatively, images could be requested through (and cached by) the XWiki installation. Any thoughts/plans on this?

We have Legal Notice (XWiki.org) but that’s for the xwiki.org web site. ATM, each feature defines what it tracks. For example for Active Installs, it’s mentioned that the data sent is anonymous. It should probably also mention that the IP address is not saved.

Note that the Extension Manager has the same type of privacy issue that you’re mentioning here and I don’t think we mention anywhere that xwiki.org (nor store.xwiki.com) doesn’t track IP addresses for it.

Same for the video on the home page of XS, we don’t mention anything.

Maybe a Privacy page on xwiki.org listing all these privacy concerns could be interesting (It’d consist in a list of links to the extensions, each describing what it tracks or doesn’t track)?

This doesn’t look easy to implement and is also not nice for usability. Isn’t it simpler to say that we (xwiki.org) don’t track anything (since we don’t)? :slight_smile:

Also, as I said above this is not related to What’s New since it’s already happening for the EM, Active Installs or the video on the XS home page.

Not sure I understand. It’s the XWiki installations that will fetch the news from the various sources (xwiki.org blog and XWiki SAS paid apps store blog in the vote). And yes, the news will probably be cached for performance reasons, see What's New Feature (Proposal.WhatsNewFeature) - XWiki

Thanks for raising this concern.

PS: Don’t forget to vote on the 2 points. Thanks!

BTW I don’t get any such privacy opt in question when using gitlab.

The caching only talks about the feed which is what will be loaded on the server side. What I’m primarily concerned about are images that will certainly either be embedded in the content or as title image (the design page mentions “and an optional image”) as these will be requested from the user’s browser which reveals the client’s IP address together with a referrer that probably indicates the XWiki installation’s domain, thus allowing an association between IP address, browsing history of that IP address on xwiki.com and XWiki installation.

You mention the “XWiki SAS paid apps store blog”, where is that blog? I cannot see any blog on https://store.xwiki.com/ so I assumed it will be the blog on xwiki.com, but anyways, both link to the same privacy policy.

Of course it would be easier if just no data was collected, but the linked privacy policy on xwiki.com clearly states that data is collected and from my understanding we would display images served from xwiki.com.

EM and active installs only make requests on the server side, thus no client IP addresses should be submitted (unless there are images displayed by the extension manager). I also hope admins will remove this video on the XS home page before any actual users use the wiki but imho we should replace it by a more privacy-friendly solution like a video file bundled in the installation (as we already have in the help application).

+1 for both.

Thanks,
Marius

I’m wondering if it really makes sense to have several sources for the what’s new feature. By hard-coding these sources in the client in XWiki, it means we cannot ever change the server side. So what if we want to reverse our decision in a few years and decide we want to include forum news in the what’s new feature? Then all installations that haven’t been upgraded to the new version including this feature won’t get the news items from the forum - and I think that it could be important to reach in particular old installations. Why don’t we instead write an application that runs on XWiki.org and provides an API for the “What’s new” feature on some URL? This app could combine whatever sources we want/need, cache them and provide, e.g., a simple JSON API which would lead to a much simpler client (or provide an RSS feed for each user category that could be displayed using the RSS macro). The client wouldn’t need to care where these news come from, if they are from the XWiki.org blog, the blog of a sponsoring company or the forum - and we could change these sources any time and could be sure that they are displayed in all versions of XWiki.

I assume the news sources will be configurable at least in xwiki.properties (in the same way the extension repositories are configurable).

I thought the plan was to have a single XWiki.org source (that we control and which we can change at any time to include forum news if we want) and to allow other sources, e.g. for a sponsoring company like XWiki SAS (which would be used to promote Pro Apps). So my expectation is that XS will have by default two news sources configured:

  • XWiki.org source
  • XWiki SAS source (as the top sponsoring company)

similar to how we have e.x.o. and store.xwiki.com repositories configured in xwiki.properties.