Wiki source code of Known issues
Last modified by Lucas Charpentier on 2026/10/13 12:21
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | These are the JIRA issues reported before the audit that are about inserting, configuring or editing the audited macros, sorted by the macro they affect. Check them before reporting a KO, so that no duplicate is created: the audit of each macro also suggests the ones that match its KOs. | ||
| 2 | |||
| 3 | The issues come from searches of jira.xwiki.org and from the issues already cited in this proposal. Each issue is a Known Issue object of this page: to change how an issue is sorted, edit its object in the object editor. The [[audit process>>doc:Proposal.WYSIWYGusabilityofXWikimacros.Analysis.Audit process.WebHome]] explains how to run the searches again. | ||
| 4 | |||
| 5 | {{velocity}} | ||
| 6 | #set ($knownIssueClassName = 'Proposal.WYSIWYGusabilityofXWikimacros.Code.KnownIssueClass') | ||
| 7 | #set ($macrosSpace = 'Proposal.WYSIWYGusabilityofXWikimacros.Macros') | ||
| 8 | #set ($byMacro = $collectiontool.getSortedMap()) | ||
| 9 | #set ($allMacros = []) | ||
| 10 | #set ($toSort = []) | ||
| 11 | #set ($otherCount = 0) | ||
| 12 | #foreach ($object in $doc.getObjects($knownIssueClassName)) | ||
| 13 | #set ($relevance = "$!doc.getValue('relevance', $object)") | ||
| 14 | #if ($relevance == 'usability') | ||
| 15 | #set ($macros = $doc.getValue('macros', $object)) | ||
| 16 | #foreach ($macroId in $macros) | ||
| 17 | #if ($macroId == '*') | ||
| 18 | #set ($discard = $allMacros.add($object)) | ||
| 19 | #else | ||
| 20 | #if (!$byMacro.containsKey($macroId)) | ||
| 21 | #set ($discard = $byMacro.put($macroId, [])) | ||
| 22 | #end | ||
| 23 | #set ($discard = $byMacro.get($macroId).add($object)) | ||
| 24 | #end | ||
| 25 | #end | ||
| 26 | #elseif ($relevance == 'other') | ||
| 27 | #set ($otherCount = $otherCount + 1) | ||
| 28 | #else | ||
| 29 | #set ($discard = $toSort.add($object)) | ||
| 30 | #end | ||
| 31 | #end | ||
| 32 | #macro (_knownIssueRows $objects $macroId) | ||
| 33 | |=Issue|=Title|=Status|=Criteria|=Also affects | ||
| 34 | #foreach ($object in $objects) | ||
| 35 | #set ($key = "$!doc.getValue('key', $object)") | ||
| 36 | #set ($others = []) | ||
| 37 | #foreach ($other in $doc.getValue('macros', $object)) | ||
| 38 | #if ($other != $macroId) | ||
| 39 | #if ($other == '*') | ||
| 40 | #set ($discard = $others.add('all macros')) | ||
| 41 | #else | ||
| 42 | #set ($discard = $others.add($other)) | ||
| 43 | #end | ||
| 44 | #end | ||
| 45 | #end | ||
| 46 | |[[$key>>https://jira.xwiki.org/browse/$key]]|$services.rendering.escape("$!doc.getValue('summary', $object)", 'xwiki/2.1')|$services.rendering.escape("$!doc.getValue('status', $object)", 'xwiki/2.1')|$services.rendering.escape($stringtool.join($doc.getValue('criteria', $object), ', '), 'xwiki/2.1')|$services.rendering.escape($stringtool.join($others, ', '), 'xwiki/2.1') | ||
| 47 | #end | ||
| 48 | #end | ||
| 49 | {{info}} | ||
| 50 | $allMacros.size() issues affect every macro, and $byMacro.size() macros have issues of their own. An issue that affects several macros is listed under each of them. $toSort.size() issues are still to sort, and $otherCount issues found by the searches are not about usability: they are kept so that the searches do not suggest them again. | ||
| 51 | {{/info}} | ||
| 52 | |||
| 53 | == All macros == | ||
| 54 | |||
| 55 | Issues of the macro system, the WYSIWYG editor or the Edit Macro dialog, which affect every macro. | ||
| 56 | |||
| 57 | #_knownIssueRows($allMacros '*') | ||
| 58 | |||
| 59 | #foreach ($entry in $byMacro.entrySet()) | ||
| 60 | #set ($macroReference = $services.model.resolveDocument("${macrosSpace}.${entry.key}.WebHome")) | ||
| 61 | == $services.rendering.escape($entry.key, 'xwiki/2.1') == | ||
| 62 | |||
| 63 | #if ($xwiki.exists($macroReference)) | ||
| 64 | [[Audit of the $services.rendering.escape($entry.key, 'xwiki/2.1') macro>>doc:$services.rendering.escape($services.model.serialize($macroReference, 'local'), 'xwiki/2.1')]] | ||
| 65 | |||
| 66 | #end | ||
| 67 | #_knownIssueRows($entry.value $entry.key) | ||
| 68 | |||
| 69 | #end | ||
| 70 | #if (!$toSort.isEmpty()) | ||
| 71 | == To sort == | ||
| 72 | |||
| 73 | Issues found by the last search that are not sorted yet. Set their relevance, macros and criteria in the object editor. | ||
| 74 | |||
| 75 | #_knownIssueRows($toSort '') | ||
| 76 | #end | ||
| 77 | {{/velocity}} |