'./mach doc' should not require globally installed jsdoc

NEW
Unassigned

Status

enhancement
7 months ago
2 months ago

People

(Reporter: standard8, Unassigned)

Tracking

(Depends on 2 bugs, Blocks 1 bug)

Trunk
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Reporter

Description

7 months ago
Currently, running `./mach doc` requires to have jsdoc installed globally. However there's nothing that tells the developer this.

It also doesn't give control over which version is used, so a developer could be on an out-of-date or too new version and get strange errors.

Lastly it is one thing that requires node to be installed globally in our docker images, rather than using the node that the build system will use.

https://searchfox.org/mozilla-central/rev/28fe656de6a022d1fc01bbd3811023fca99cf223/taskcluster/docker/lint/system-setup.sh#46-58


Given the current moves to have vendor node_modules, and node as part of the build system. I think we should either:

1) Add jsdoc as a vendored item in node_modules (after other bugs are done, e.g. bug 1491021 and bug 1491028).

2) Somehow install jsdoc into .mozbuild & use that version.

I'm leaning towards the first option here, as that seems easier to set up and more consistent with how we're running everything.
Vendoring it in sounds like the right plan to me.

Per conversation with :kmoir, I'm going through untriaged bugs in her components and marking the ones which look to be enhancements/tasks with the enhancement severity to get them out of the triage queue.

If this incorrect, please remove the tag.

Severity: normal → enhancement
You need to log in before you can comment on or make changes to this bug.