activity
Audit
- Macro ID
- activity
- Source
- XS
- Type
- Generator
- Classification reason
- Status
- Reviewed
- Criteria version
- 15.20
- XWiki version
- 18.8.0
- Audit date
- 2026-10-21
- Auditor
- Compared macros
- notifications children
Sources
Where to gather the information the criteria are checked against, see Gather the sources.
| Source | What it gives | Used for | Where |
|---|---|---|---|
| Documentation | Parameters, default values and examples, including the most common example | L2, L3, and the criteria measured with the most common example | https://extensions.xwiki.org/xwiki/bin/view/Extension/Activity%20Macro |
| Source code | How the macro declares its parameters and content: types, groups, features, advanced and hidden flags, constraints, content type, inline support | C4, C5, C7, C8, C9, C13, E4, E6 | Not recorded yet: search GitHub |
| Macro descriptor | What the Edit Macro dialog is built from, on design.xwiki.org | D1, D2, C1 to C9, E4 | Descriptor, list of macros with their categories |
| Translations | The name, description and parameter names in each language | D1, D2, D4, C1 | l10n.xwiki.org |
| Uses in XWiki pages | How XWiki itself uses the macro, a realistic example when the documentation has none | L3, C2, C3, C6, C8, C9 | Search the xwiki organization on GitHub |
| Compared macros | The audits of the macros of the same type | L1, D3 | notifications, children |
| Other sources specific to this macro |
|---|
| Criterion | Result | Notes |
|---|---|---|
| D1 wording | OK | "Activity (legacy)" is the user word of the Activity Stream that the macro replaces, and "(legacy)" tells that it is kept for old pages. The name fits what the macro shows, the recent activity of the wiki. |
| D2 summary | KO | "Provide a macro implemented with the Notifications Application to keep a backward compatibility with Activity Stream." says how the macro is built, not what it shows on the page, and starts by repeating that it is a macro. It never says that it lists the recent events of the wiki, the creations and edits of pages, with an RSS link and a "Load older notifications" button. The French and German descriptions do say what the macro shows, so the English one is the odd one out. |
| D3 category | OK | the macro is only in Notifications, the category of notifications, its replacement, mention and the notification settings macros. This is recorded as OK: the macro is a legacy macro kept in XWiki Standard only so that old pages using {{activity}} keep working, and the category puts it next to the macro that replaces it. A bug outside the criteria: it should be in the Deprecated category, not in Notifications, where the editor lists it next to notifications. |
| D4 quick-action | KO | Quick Actions finds the macro first for its ID "activity", its name "Activity (legacy)" and the French name "Activité". None of the synonyms finds it: "activity stream", the name of the feature it replaces, "events", "recent changes" and "feed" give no result, and "events" lists "Notifications" and "calendar" instead. |
| L1 consistency | OK | compared with notifications and children: like them, no parameter is mandatory, there is no content, and the Quick Action inserts the macro right away, with no dialog. Its parameters are the legacy ones, entries for the count and authors for the users, a mapping of the old Activity Stream macro onto notifications. |
| L2 doc-parameters | KO | the 7 parameters of the descriptor are only documented on the legacy page Activity Macro of extensions.xwiki.org: the new documentation tree has no page for the macro, and the Notifications page does not mention it. That page also documents a parameter "subentries" that the macro does not have, and gives the defaults of wikis, spaces and authors only in its text, not in the descriptor. |
| L3 doc-example | OK | the most common example is {{activity/}} , the first example of the documentation, which renders the recent events of the wiki without error. The second example, with spaces and authors set from a Velocity script, renders too. |
| I1 pattern | OK | compared with children, the reference generator: both are inserted by their Quick Action without a dialog, and through the Insert Macro dialog with a form whose fields are all optional. The Quick Actions menu lists a single entry for "/activity". |
| I2 zero-config | OK | Quick Actions and the Edit Macro dialog submitted with the default values insert {{activity/}} , which shows the recent events of the wiki in view mode, with no error. When no event matches, for example with {{activity spaces="NoSuchSpaceForAudit"/}} , the macro shows "No notifications available!" as a plain paragraph, not as an error. The editor shows no events, see E1. |
| I3 instant | N/A | |
| I4 cursor | N/A | |
| I5 focus | OK | the macro has no mandatory parameter. The focus is on the first field, Authors. |
| E1 wysiwyg | KO | right after the insertion the editor shows the generic "macro:activity" placeholder with a loading spinner, and after saving and reopening the page it shows an empty frame labelled "Activity", never the events, while view mode lists them: the output is rendered asynchronously, which the editor does not resolve. To reproduce: insert {{activity/}} in the in-place editor on a wiki with some recent changes, then save and edit the page again. |
| E2 errors | KO | invalid values are accepted silently. {{activity rss="maybe"/}} and {{activity minor="maybe"/}} are read as false and render the list with no message, because the macro passes the value on to the notifications macro. The entries value is passed as the count of the notifications macro as well, which accepts invalid numbers silently, see XWIKI-25412 for the worst case. This is recorded from what is known of the notifications macro: those values were not tested on activity, because of the risk of looping forever on the server. A wiki, a location or an author that does not exist, like {{activity wikis="nosuchwiki"/}} , {{activity spaces="NoSuchSpaceForAudit"/}} or {{activity authors="XWiki.NoSuchUser"/}} , shows "No notifications available!", which is a valid empty result for a filter. |
| E3 nesting | KO | in a list item and in a table cell, like * {{activity/}} , the macro renders "The [activity] macro is a standalone macro and it cannot be used inline. Click on this message for details." in the editor and in view mode. In a box it renders. The macro has no content, so the second half of the measure does not apply. |
| E4 inline-support | OK | the macro declares no inline support, and its output is a list of events, each with buttons, followed by a "Load older notifications" button, a block that cannot be inside a sentence. |
| E5 empty | N/A | |
| E6 inplace | N/A |
Parameters
| Parameter | C1 clarity | C2 mandatory | C3 defaults | C4 input-assistance | C5 groups | C6 order | C7 alternatives | C8 advanced | C9 technical | C13 constraints | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| entries | KO | OK | OK | KO | OK | OK | N/A | OK | OK | KO | C1, minor: "Number of entries to display the activity for." does not say that it is the maximum number of events listed, and "entries" is called "count" by the notifications macro that renders them. C3: the field opens on the declared default, 20, and the most common example sets no value. C4: a plain text field for a number of events, which a number field would fit. C13: the macro is a wiki macro, whose parameters cannot declare a range or a format, see XWIKI-25197 in the Cross-macro findings. The value is passed unchanged as the count of the notifications macro, which accepts invalid values silently, see E2. |
| wikis | KO | OK | OK | KO | OK | OK | N/A | OK | OK | N/A | C1, minor: "Comma separated list of wikis to display activity for." does not say whether a wiki is given by its name or its ID, and "to display activity for" does not say that only the events of these wikis are listed. C3: the field is empty, the value of the most common example. The default is only in the documentation: on the main wiki all the wikis where the reader has the view right, on another wiki the current wiki. C4: a plain text field for a list of wikis, which a wiki picker could offer, see XWIKI-23834. |
| spaces | KO | OK | OK | KO | OK | OK | N/A | OK | OK | N/A | C1, minor: "Comma separated list of local serialized references of the spaces to display the activity for." uses "spaces", a technical term that the UI no longer shows since nested pages, and "local serialized references", a developer wording, without an example like Sandbox. C3: the field is empty, the value of the most common example. The default, all the spaces, is only in the documentation. C4: a plain text field for a list of locations, which a page picker could offer, see XWIKI-23834. |
| authors | KO | OK | OK | KO | OK | OK | N/A | OK | OK | N/A | C1, minor: "Comma separated list of authors whose modifications to show." does not give the format of an author, like XWiki.Admin. C3: the field is empty, the value of the most common example. The default, all the authors, is only in the documentation. C4: a plain text field for a list of users, which a user picker could offer, see XWIKI-23834. |
| tags | OK | OK | OK | KO | OK | OK | N/A | OK | OK | N/A | C4: a plain text field for a list of tags, which a tag picker, like the one of the page tags, could offer, see XWIKI-23834. |
| minor | OK | OK | OK | OK | OK | OK | N/A | OK | OK | N/A | |
| rss | OK | OK | OK | OK | OK | OK | N/A | OK | OK | N/A |
KOs and tickets
Every KO needs a ticket covering it, see Report the KOs. One ticket can cover several KOs. Known issues filed for this macro are suggested in italics: link them as existing tickets when they cover the KO.
| KO | Criterion | Existing tickets | New tickets |
|---|---|---|---|
| D2 | D2 summary | XWIKI-25465 | |
| D4 | D4 quick-action | XWIKI-25444 (partial) | |
| L2 | L2 doc-parameters | ||
| E1 | E1 wysiwyg | ||
| E2 | E2 errors | XWIKI-25412 (partial) | XCOMMONS-3847 (partial), XRENDERING-823 (partial) |
| E3 | E3 nesting | ||
| C1:entries | C1 clarity, entries | XWIKI-25465 | |
| C4:entries | C4 input-assistance, entries | ||
| C13:entries | C13 constraints, entries | XWIKI-25182 (partial), XWIKI-25197, XWIKI-25412 (partial) | |
| C1:wikis | C1 clarity, wikis | XWIKI-25465 | |
| C4:wikis | C4 input-assistance, wikis | ||
| C1:spaces | C1 clarity, spaces | XWIKI-25465 | |
| C4:spaces | C4 input-assistance, spaces | ||
| C1:authors | C1 clarity, authors | XWIKI-25465 | |
| C4:authors | C4 input-assistance, authors | ||
| C4:tags | C4 input-assistance, tags |
Tickets
| Ticket | Origin | KOs covered | KOs partly covered |
|---|---|---|---|
| XWIKI-25182 | Existing | C13:entries | |
| XWIKI-25197 | Existing | C13:entries | |
| XWIKI-25412 | Existing | C13:entries E2 | |
| XCOMMONS-3847 | New | E2 | |
| XRENDERING-823 | New | E2 | |
| XWIKI-25444 | New | D4 | |
| XWIKI-25465 | New | C1:authors C1:entries C1:spaces C1:wikis D2 |
Known issues of this macro
No known issue is specific to this macro.
68 more known issues affect every macro: see the Known issues.
Lucas Charpentier