Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Lau <riclau@uk.ibm.com>2020-03-27 17:04:40 +0300
committerMyles Borins <mylesborins@google.com>2020-04-01 01:25:10 +0300
commit25a1f04cdc2c779c2b6d75e903e4bdc351cda856 (patch)
tree0c8adb5bd16967a14b4a8b0a6bb376f3b9f34a8d /Makefile
parent8905be2ceea9abead85a5018c09645a3650d7495 (diff)
tools: only fetch previous versions when necessary
Refactor the logic for working out the previous versions of Node.js for the API documentation so that the parsing (including the potential https get) happens at most once per build (as opposed to the current once per generated API doc). Signed-off-by: Richard Lau <riclau@uk.ibm.com> PR-URL: https://github.com/nodejs/node/pull/32518 Fixes: https://github.com/nodejs/node/issues/32512 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile11
1 files changed, 9 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index 6aaf781b50d..4bee398caa4 100644
--- a/Makefile
+++ b/Makefile
@@ -784,15 +784,22 @@ out/doc/api/assets/%: doc/api_assets/% out/doc/api/assets
run-npm-ci = $(PWD)/$(NPM) ci
LINK_DATA = out/doc/apilinks.json
+VERSIONS_DATA = out/doc/previous-versions.json
gen-api = tools/doc/generate.js --node-version=$(FULLVERSION) \
- --apilinks=$(LINK_DATA) $< --output-directory=out/doc/api
+ --apilinks=$(LINK_DATA) $< --output-directory=out/doc/api \
+ --versions-file=$(VERSIONS_DATA)
gen-apilink = tools/doc/apilinks.js $(LINK_DATA) $(wildcard lib/*.js)
$(LINK_DATA): $(wildcard lib/*.js) tools/doc/apilinks.js
$(call available-node, $(gen-apilink))
+# Regenerate previous versions data if the current version changes
+$(VERSIONS_DATA): CHANGELOG.md src/node_version.h tools/doc/versions.js
+ $(call available-node, tools/doc/versions.js $@)
+
out/doc/api/%.json out/doc/api/%.html: doc/api/%.md tools/doc/generate.js \
- tools/doc/markdown.js tools/doc/html.js tools/doc/json.js tools/doc/apilinks.js | $(LINK_DATA)
+ tools/doc/markdown.js tools/doc/html.js tools/doc/json.js \
+ tools/doc/apilinks.js $(VERSIONS_DATA) | $(LINK_DATA)
$(call available-node, $(gen-api))
out/doc/api/all.html: $(apidocs_html) tools/doc/allhtml.js \