Fix #3089 Build changelog.html for website
authorisaacs <i@izs.me>
Wed, 11 Apr 2012 01:29:25 +0000 (18:29 -0700)
committerisaacs <i@izs.me>
Wed, 11 Apr 2012 01:35:01 +0000 (18:35 -0700)
Makefile
doc/changelog-foot.html [new file with mode: 0644]
doc/changelog-head.html [new file with mode: 0644]
tools/build-changelog.sh [new file with mode: 0644]

index cd388aabf92de9d8768568fdeb5170e7f6779737..56cb631b052bd63855928173460f0b8bd37ac98e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -115,6 +115,7 @@ website_files = \
        out/doc/about/index.html \
        out/doc/community/index.html \
        out/doc/logos/index.html \
+       out/doc/changelog.html \
        $(doc_images)
 
 doc: program $(apidoc_dirs) $(website_files) $(apiassets) $(apidocs) tools/doc/
@@ -125,6 +126,9 @@ $(apidoc_dirs):
 out/doc/api/assets/%: doc/api_assets/% out/doc/api/assets/
        cp $< $@
 
+out/doc/changelog.html: ChangeLog doc/changelog-head.html doc/changelog-foot.html tools/build-changelog.sh
+       bash tools/build-changelog.sh
+
 out/doc/%.html: doc/%.html
        cat $< | sed -e 's|__VERSION__|'$(VERSION)'|g' > $@
 
diff --git a/doc/changelog-foot.html b/doc/changelog-foot.html
new file mode 100644 (file)
index 0000000..cc27eaf
--- /dev/null
@@ -0,0 +1,36 @@
+          </div>
+        </div>
+    </div>
+    <div id="footer">
+        <ul class="clearfix">
+            <li><a href="/">Node.js</a></li>
+            <li><a href="/#download">Download</a></li>
+            <li><a href="/about/">About</a></li>
+            <li><a href="http://search.npmjs.org/">npm Registry</a></li>
+            <li><a href="http://nodejs.org/api/">Docs</a></li>
+            <li><a href="http://blog.nodejs.org">Blog</a></li>
+            <li><a href="/community/">Community</a></li>
+            <li><a href="/logos/">Logos</a></li>
+            <li><a href="http://jobs.nodejs.org/">Jobs</a></li>
+            <li><a href="http://twitter.com/nodejs" class="twitter">@nodejs</a></li>
+        </ul>
+
+        <p>Copyright <a href="http://joyent.com">Joyent, Inc</a>, Node.js is a <a href="/trademark-policy.pdf">trademark</a> of Joyent, Inc. View <a href="https://raw.github.com/joyent/node/__VERSION__/LICENSE">license</a>.</p>
+    </div>
+
+  <script src="sh_main.js"></script>
+  <script src="sh_javascript.min.js"></script>
+  <script>highlight(undefined, undefined, 'pre');</script>
+  <script>
+    var gaJsHost = (("https:" == document.location.protocol) ?
+    "https://ssl." : "http://www.");
+    document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
+  </script>
+  <script>
+    try {
+      var pageTracker = _gat._getTracker("UA-10874194-2");
+      pageTracker._trackPageview();
+      } catch(err) {}</script>
+</body>
+</html>
+
diff --git a/doc/changelog-head.html b/doc/changelog-head.html
new file mode 100644 (file)
index 0000000..7e78c61
--- /dev/null
@@ -0,0 +1,38 @@
+<!doctype html>
+<html lang="en">
+<head>
+  <meta charset="utf-8">
+  <title>Node.js ChangeLog</title>
+  <link rel="stylesheet" href="api/assets/style.css">
+  <link rel="stylesheet" href="api/assets/sh.css">
+  <link rel="canonical" href="http://nodejs.org/changelog.html">
+</head>
+<body class="alt apidoc" id="api-section-changelog">
+    <div id="intro" class="interior">
+        <a href="/" title="Go back to the home page">
+            <img id="logo" src="http://nodejs.org/images/logo-light.png" alt="node.js">
+        </a>
+    </div>
+    <div id="content" class="clearfix">
+        <div id="column2" class="interior">
+            <ul>
+                <li><a href="/" class="home">Home</a></li>
+                <li><a href="/#download" class="download">Download</a></li>
+                <li><a href="/about/" class="about">About</a></li>
+                <li><a href="http://search.npmjs.org/" class="npm">npm Registry</a></li>
+                <li><a href="http://nodejs.org/api/" class="docs current">Docs</a></li>
+                <li><a href="http://blog.nodejs.org" class="blog">Blog</a></li>
+                <li><a href="/community/" class="community">Community</a></li>
+                <li><a href="/logos/" class="logos">Logos</a></li>
+                <li><a href="http://jobs.nodejs.org/" class="jobs">Jobs</a></li>
+            </ul>
+            <p class="twitter"><a href="http://twitter.com/nodejs">@nodejs</a></p>
+        </div>
+
+        <div id="column1" class="interior">
+          <header>
+            <h1>Node.js ChangeLog</h1>
+            <hr>
+          </header>
+
+          <div id="apicontent">
diff --git a/tools/build-changelog.sh b/tools/build-changelog.sh
new file mode 100644 (file)
index 0000000..c6c219d
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+cat ChangeLog \
+  | sed -E 's|([^/ ]+/[^#]+)#([0-9]+)|[\1#\2](https://github.com/\1/issues/\2)|g' \
+  | sed -E 's| #([0-9]+)| [#\1](https://github.com/joyent/node/issues/\1)|g' \
+  | sed -E 's|([0-9]+\.[0-9]+\.[0-9]+),? Version ([0-9]+\.[0-9]+\.[0-9]+)|<a id="v\2"></a>\
+# \1 Version \2|g' \
+  | sed -E 's|(,? ?)([0-9a-g]{6})[0-9a-g]{34}|\1[\2](https://github.com/joyent/node/commit/\2)|g' \
+  | ./node tools/doc/node_modules/.bin/marked > out/doc/changelog-body.html
+
+cat doc/changelog-head.html \
+    out/doc/changelog-body.html \
+    doc/changelog-foot.html \
+  | sed -E 's|__VERSION__|v'$(python tools/getnodeversion.py)'|g' \
+  > out/doc/changelog.html
+
+rm out/doc/changelog-body.html