process: expose NODE_MODULE_VERSION in process.versions
authorRod Vagg <rod@vagg.org>
Mon, 8 Apr 2013 05:13:23 +0000 (15:13 +1000)
committerBen Noordhuis <info@bnoordhuis.nl>
Mon, 8 Apr 2013 14:48:18 +0000 (16:48 +0200)
doc/api/process.markdown
src/node.cc
src/node.h

index c345da7..d128620 100644 (file)
@@ -324,13 +324,16 @@ A property exposing version strings of node and its dependencies.
 
     console.log(process.versions);
 
-Will output:
-
-    { node: '0.4.12',
-      v8: '3.1.8.26',
-      ares: '1.7.4',
-      ev: '4.4',
-      openssl: '1.0.0e-fips' }
+Will print something like:
+
+    { http_parser: '1.0',
+      node: '0.10.4',
+      v8: '3.14.5.8',
+      ares: '1.9.0-DEV',
+      uv: '0.10.3',
+      zlib: '1.2.3',
+      modules: '11',
+      openssl: '1.0.1e' }
 
 ## process.config
 
index 391a179..97e64a7 100644 (file)
@@ -2356,6 +2356,8 @@ Handle<Object> SetupProcessObject(int argc, char *argv[]) {
   versions->Set(String::NewSymbol("ares"), String::New(ARES_VERSION_STR));
   versions->Set(String::NewSymbol("uv"), String::New(uv_version_string()));
   versions->Set(String::NewSymbol("zlib"), String::New(ZLIB_VERSION));
+  versions->Set(String::NewSymbol("modules"),
+                String::New(NODE_STRINGIFY(NODE_MODULE_VERSION)));
 #if HAVE_OPENSSL
   // Stupid code to slice out the version string.
   int c, l = strlen(OPENSSL_VERSION_TEXT);
index 5769a7b..574a93a 100644 (file)
@@ -207,7 +207,7 @@ node_module_struct* get_builtin_module(const char *name);
  * an API is broken in the C++ side, including in v8 or
  * other dependencies.
  */
-#define NODE_MODULE_VERSION 0x000B /* v0.11 */
+#define NODE_MODULE_VERSION 11
 
 #define NODE_STANDARD_MODULE_STUFF \
           NODE_MODULE_VERSION,     \