Details
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Open | Feature | None | T263914 Offer TypeScript declaration files for the MediaWiki Javascript API (MediaWiki API typings) | ||
Resolved | hashar | T213282 JSDuck at doc.wikimedia.org loads fonts from google | |||
Open | None | T334853 Clean up JS code now that we can use ES6 rather than ES5 across all Wikimedia deployed codebases | |||
Open | None | T363905 Uninstall jsduck and related material from CI images etc., once it's no longer needed | |||
Open | apaskulin | T138401 Replace jsduck with JSDoc3 across all Wikimedia code bases | |||
Resolved | Jdforrester-WMF | T250843 Replace jsduck with JSDoc3 in VisualEditor | |||
Resolved | matmarex | T185396 Replace jsduck with JSDoc3 in OOUI |
Event Timeline
Change 405543 had a related patch set uploaded (by Jforrester; owner: Prtksxna):
[oojs/ui@master] [WIP] doc: Convert from jsduck to JSDoc3
Change 405543 abandoned by Jforrester:
[oojs/ui@master] doc: Convert from jsduck to JSDoc3
Reason:
This will need re-doing from scratch, unfortunately.
Change 765552 had a related patch set uploaded (by Jforrester; author: Jforrester):
[oojs/ui@master] [WIP] doc: Switch from jsduck to jsdoc
Change 765552 merged by jenkins-bot:
[oojs/ui@master] doc: Switch from jsduck to jsdoc
The change causes a few regressions in the generated documentation, but we're doing it anyway, because JSDuck's parser's limitation are preventing us from making maintenance changes in OOUI.
I'm not sure if these problems will be fixed. OOUI mostly receives only critical fixes these days, unless someone volunteers to do something more.
Known issues:
- Documentation for all static properties is missing. This is because they're defined on the .static property of the class, rather than the class itself, which is a weird convention that no one else uses. See also T89721 about other problems caused by that.
- Documentation for all inherited config parameters is missing. This is because JSDoc doesn't special-case config parameters like JSDuck did, they're just parts of the config parameter, so they are not inherited. This may be kind of fixable if we define a type for each class's config and make them inherit too.
- Attempt in https://gerrit.wikimedia.org/r/c/oojs/ui/+/989624, I don't like it
- Documentation several unrelated methods is missing. This is because it was defined using @inheritdoc <foo> to copy it from another method, and JSDoc does not support that. JSDoc instead has @borrows/@lends tags which are supposed to allow doing something similar, but they're super awkward to use. https://codesearch.wmcloud.org/search/?q=%40inheritdoc\s\S%2B&files=\.js%24&excludeFiles=&repos=oojs%2Fui
Change 998536 had a related patch set uploaded (by VolkerE; author: VolkerE):
[mediawiki/core@master] Update OOUI to v0.49.0
Change 999044 had a related patch set uploaded (by Bartosz Dziewoński; author: Bartosz Dziewoński):
[VisualEditor/VisualEditor@master] Exclude OOUI from generated JSDuck documentation
Change 999044 merged by jenkins-bot:
[VisualEditor/VisualEditor@master] Exclude OOUI from generated JSDuck documentation
Change 999066 had a related patch set uploaded (by Bartosz Dziewoński; author: Bartosz Dziewoński):
[mediawiki/extensions/VisualEditor@master] Update VE core submodule to master (58a24a62c)
Change 999066 merged by jenkins-bot:
[mediawiki/extensions/VisualEditor@master] Update VE core submodule to master (58a24a62c)