Ignore:
Timestamp:
03/05/14 22:44:48 (11 years ago)
Author:
hendrikvanantwerpen
Message:

Completed migration to API, without CouchDB proxy.

Move to API is now completed. The full API is password protected, a very
limited API is exposed for respondents, which works with secrets that
are passed in URLs.

Serverside the HTTPResult class was introduced, which is similar to
Promises, but specifically for HTTP. It carries a status code and
response and makes it easier to extract parts of async handling in
separate functions.

Fixed a bug in our schema (it seems optional attributes don't exist but
a required list does). Verification of our schema by grunt-tv4 didn't
work yet. Our schema is organized the wrong way (this is fixable),
but the json-schema schema has problems with simple types and $refs.

Location:
Dev/trunk/src/node_modules/express
Files:
28 edited

Legend:

Unmodified
Added
Removed
  • Dev/trunk/src/node_modules/express/node_modules/buffer-crc32/package.json

    r484 r487  
    2020  "main": "index.js",
    2121  "scripts": {
    22     "test": "./node_modules/.bin/tap tests/*.test.js"
     22    "test": "tap tests/*.test.js"
    2323  },
    2424  "dependencies": {},
     
    3636  },
    3737  "_id": "buffer-crc32@0.2.1",
    38   "_from": "buffer-crc32@0.2.1"
     38  "dist": {
     39    "shasum": "d4831cc88b961550a88d829efbc0b139caf22d8c"
     40  },
     41  "_from": "buffer-crc32@0.2.1",
     42  "_resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.1.tgz"
    3943}
  • Dev/trunk/src/node_modules/express/node_modules/commander/package.json

    r484 r487  
    3434    "url": "https://github.com/visionmedia/commander.js/issues"
    3535  },
     36  "homepage": "https://github.com/visionmedia/commander.js",
    3637  "_id": "commander@0.6.1",
    37   "_from": "commander@0.6.1"
     38  "dist": {
     39    "shasum": "c725ed5e9b2bf532b3fe3cba4f81b552cecf0550"
     40  },
     41  "_from": "commander@0.6.1",
     42  "_resolved": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz"
    3843}
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/bytes/package.json

    r484 r487  
    1717  "readmeFilename": "Readme.md",
    1818  "_id": "bytes@0.2.0",
    19   "_from": "bytes@0.2.0"
     19  "dist": {
     20    "shasum": "b4c569295d86a498a119945f1d8a26f76e4b5462"
     21  },
     22  "_from": "bytes@0.2.0",
     23  "_resolved": "https://registry.npmjs.org/bytes/-/bytes-0.2.0.tgz"
    2024}
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/cookie/package.json

    r484 r487  
    3232    "url": "https://github.com/shtylman/node-cookie/issues"
    3333  },
     34  "homepage": "https://github.com/shtylman/node-cookie",
    3435  "_id": "cookie@0.0.5",
    35   "_from": "cookie@0.0.5"
     36  "dist": {
     37    "shasum": "2597397e06ec3eaf53c88851570e97949c1e4dcd"
     38  },
     39  "_from": "cookie@0.0.5",
     40  "_resolved": "https://registry.npmjs.org/cookie/-/cookie-0.0.5.tgz"
    3641}
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/formidable/package.json

    r484 r487  
    3535  "dependencies": {},
    3636  "_id": "formidable@1.0.14",
    37   "_from": "formidable@1.0.14"
     37  "dist": {
     38    "shasum": "08be7c89a9ebffbe5b2fbd4df0ad3f5cd19c5147"
     39  },
     40  "_from": "formidable@1.0.14",
     41  "_resolved": "https://registry.npmjs.org/formidable/-/formidable-1.0.14.tgz"
    3842}
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/pause/package.json

    r484 r487  
    1717  "readmeFilename": "Readme.md",
    1818  "_id": "pause@0.0.1",
    19   "_from": "pause@0.0.1"
     19  "dist": {
     20    "shasum": "dc3b2287742f3f6249f2d228e74cff5a3f9fe8da"
     21  },
     22  "_from": "pause@0.0.1",
     23  "_resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz"
    2024}
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/qs/package.json

    r484 r487  
    3333    "url": "https://github.com/visionmedia/node-querystring/issues"
    3434  },
     35  "homepage": "https://github.com/visionmedia/node-querystring",
    3536  "_id": "qs@0.6.5",
    36   "_from": "qs@0.6.5"
     37  "dist": {
     38    "shasum": "cdaafb6ed1dbcf48405f41ca92bf95361ad923dc"
     39  },
     40  "_from": "qs@0.6.5",
     41  "_resolved": "https://registry.npmjs.org/qs/-/qs-0.6.5.tgz"
    3742}
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/send/node_modules/mime/README.md

    r484 r487  
    1212
    1313### mime.lookup(path)
    14 Get the mime type associated with a file. Performs a case-insensitive lookup using the extension in `path` (the substring after the last '/' or '.').  E.g.
     14Get the mime type associated with a file, if no mime type is found `application/octet-stream` is returned. Performs a case-insensitive lookup using the extension in `path` (the substring after the last '/' or '.').  E.g.
    1515
    1616    var mime = require('mime');
     
    2020    mime.lookup('.TXT');                      // => 'text/plain'
    2121    mime.lookup('htm');                       // => 'text/html'
     22
     23### mime.default_type
     24Sets the mime type returned when `mime.lookup` fails to find the extension searched for. (Default is `application/octet-stream`.)
    2225
    2326### mime.extension(type)
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/send/node_modules/mime/mime.js

    r484 r487  
    7070 */
    7171Mime.prototype.lookup = function(path, fallback) {
    72   var ext = path.replace(/.*[\.\/]/, '').toLowerCase();
     72  var ext = path.replace(/.*[\.\/\\]/, '').toLowerCase();
    7373
    7474  return this.types[ext] || fallback || this.default_type;
     
    7979 */
    8080Mime.prototype.extension = function(mimeType) {
    81   return this.extensions[mimeType];
     81  var type = mimeType.match(/^\s*([^;\s]*)(?:;|\s|$)/)[1].toLowerCase();
     82  return this.extensions[type];
    8283};
    8384
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/send/node_modules/mime/package.json

    r484 r487  
    2525    "type": "git"
    2626  },
    27   "version": "1.2.9",
    28   "readme": "# mime\n\nComprehensive MIME type mapping API. Includes all 600+ types and 800+ extensions defined by the Apache project, plus additional types submitted by the node.js community.\n\n## Install\n\nInstall with [npm](http://github.com/isaacs/npm):\n\n    npm install mime\n\n## API - Queries\n\n### mime.lookup(path)\nGet the mime type associated with a file. Performs a case-insensitive lookup using the extension in `path` (the substring after the last '/' or '.').  E.g.\n\n    var mime = require('mime');\n\n    mime.lookup('/path/to/file.txt');         // => 'text/plain'\n    mime.lookup('file.txt');                  // => 'text/plain'\n    mime.lookup('.TXT');                      // => 'text/plain'\n    mime.lookup('htm');                       // => 'text/html'\n\n### mime.extension(type)\nGet the default extension for `type`\n\n    mime.extension('text/html');                 // => 'html'\n    mime.extension('application/octet-stream');  // => 'bin'\n\n### mime.charsets.lookup()\n\nMap mime-type to charset\n\n    mime.charsets.lookup('text/plain');        // => 'UTF-8'\n\n(The logic for charset lookups is pretty rudimentary.  Feel free to suggest improvements.)\n\n## API - Defining Custom Types\n\nThe following APIs allow you to add your own type mappings within your project.  If you feel a type should be included as part of node-mime, see [requesting new types](https://github.com/broofa/node-mime/wiki/Requesting-New-Types).\n\n### mime.define()\n\nAdd custom mime/extension mappings\n\n    mime.define({\n        'text/x-some-format': ['x-sf', 'x-sft', 'x-sfml'],\n        'application/x-my-type': ['x-mt', 'x-mtt'],\n        // etc ...\n    });\n\n    mime.lookup('x-sft');                 // => 'text/x-some-format'\n\nThe first entry in the extensions array is returned by `mime.extension()`. E.g.\n\n    mime.extension('text/x-some-format'); // => 'x-sf'\n\n### mime.load(filepath)\n\nLoad mappings from an Apache \".types\" format file\n\n    mime.load('./my_project.types');\n\nThe .types file format is simple -  See the `types` dir for examples.\n",
     27  "version": "1.2.11",
     28  "readme": "# mime\n\nComprehensive MIME type mapping API. Includes all 600+ types and 800+ extensions defined by the Apache project, plus additional types submitted by the node.js community.\n\n## Install\n\nInstall with [npm](http://github.com/isaacs/npm):\n\n    npm install mime\n\n## API - Queries\n\n### mime.lookup(path)\nGet the mime type associated with a file, if no mime type is found `application/octet-stream` is returned. Performs a case-insensitive lookup using the extension in `path` (the substring after the last '/' or '.').  E.g.\n\n    var mime = require('mime');\n\n    mime.lookup('/path/to/file.txt');         // => 'text/plain'\n    mime.lookup('file.txt');                  // => 'text/plain'\n    mime.lookup('.TXT');                      // => 'text/plain'\n    mime.lookup('htm');                       // => 'text/html'\n\n### mime.default_type\nSets the mime type returned when `mime.lookup` fails to find the extension searched for. (Default is `application/octet-stream`.)\n\n### mime.extension(type)\nGet the default extension for `type`\n\n    mime.extension('text/html');                 // => 'html'\n    mime.extension('application/octet-stream');  // => 'bin'\n\n### mime.charsets.lookup()\n\nMap mime-type to charset\n\n    mime.charsets.lookup('text/plain');        // => 'UTF-8'\n\n(The logic for charset lookups is pretty rudimentary.  Feel free to suggest improvements.)\n\n## API - Defining Custom Types\n\nThe following APIs allow you to add your own type mappings within your project.  If you feel a type should be included as part of node-mime, see [requesting new types](https://github.com/broofa/node-mime/wiki/Requesting-New-Types).\n\n### mime.define()\n\nAdd custom mime/extension mappings\n\n    mime.define({\n        'text/x-some-format': ['x-sf', 'x-sft', 'x-sfml'],\n        'application/x-my-type': ['x-mt', 'x-mtt'],\n        // etc ...\n    });\n\n    mime.lookup('x-sft');                 // => 'text/x-some-format'\n\nThe first entry in the extensions array is returned by `mime.extension()`. E.g.\n\n    mime.extension('text/x-some-format'); // => 'x-sf'\n\n### mime.load(filepath)\n\nLoad mappings from an Apache \".types\" format file\n\n    mime.load('./my_project.types');\n\nThe .types file format is simple -  See the `types` dir for examples.\n",
    2929  "readmeFilename": "README.md",
    3030  "bugs": {
    3131    "url": "https://github.com/broofa/node-mime/issues"
    3232  },
    33   "_id": "mime@1.2.9",
     33  "homepage": "https://github.com/broofa/node-mime",
     34  "_id": "mime@1.2.11",
    3435  "_from": "mime@~1.2.9"
    3536}
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/send/node_modules/mime/test.js

    r484 r487  
    55var mime = require('./mime');
    66var assert = require('assert');
     7var path = require('path');
    78
    89function eq(a, b) {
     
    1819//
    1920
    20 eq('text/plain', mime.lookup('text.txt'));
    21 eq('text/plain', mime.lookup('.text.txt'));
    22 eq('text/plain', mime.lookup('.txt'));
    23 eq('text/plain', mime.lookup('txt'));
    24 eq('application/octet-stream', mime.lookup('text.nope'));
    25 eq('fallback', mime.lookup('text.fallback', 'fallback'));
    26 eq('application/octet-stream', mime.lookup('constructor'));
    27 eq('text/plain', mime.lookup('TEXT.TXT'));
    28 eq('text/event-stream', mime.lookup('text/event-stream'));
    29 eq('application/x-web-app-manifest+json', mime.lookup('text.webapp'));
     21eq('text/plain', mime.lookup('text.txt'));     // normal file
     22eq('text/plain', mime.lookup('TEXT.TXT'));     // uppercase
     23eq('text/plain', mime.lookup('dir/text.txt')); // dir + file
     24eq('text/plain', mime.lookup('.text.txt'));    // hidden file
     25eq('text/plain', mime.lookup('.txt'));         // nameless
     26eq('text/plain', mime.lookup('txt'));          // extension-only
     27eq('text/plain', mime.lookup('/txt'));         // extension-less ()
     28eq('text/plain', mime.lookup('\\txt'));        // Windows, extension-less
     29eq('application/octet-stream', mime.lookup('text.nope')); // unrecognized
     30eq('fallback', mime.lookup('text.fallback', 'fallback')); // alternate default
    3031
    3132//
     
    3637eq('html', mime.extension(mime.types.htm));
    3738eq('bin', mime.extension('application/octet-stream'));
    38 eq(undefined, mime.extension('constructor'));
     39eq('bin', mime.extension('application/octet-stream '));
     40eq('html', mime.extension(' text/html; charset=UTF-8'));
     41eq('html', mime.extension('text/html; charset=UTF-8 '));
     42eq('html', mime.extension('text/html; charset=UTF-8'));
     43eq('html', mime.extension('text/html ; charset=UTF-8'));
     44eq('html', mime.extension('text/html;charset=UTF-8'));
     45eq('html', mime.extension('text/Html;charset=UTF-8'));
     46eq(undefined, mime.extension('unrecognized'));
    3947
    4048//
    41 // Test node types
     49// Test node.types lookups
    4250//
    4351
     52eq('application/font-woff', mime.lookup('file.woff'));
    4453eq('application/octet-stream', mime.lookup('file.buffer'));
    4554eq('audio/mp4', mime.lookup('file.m4a'));
     55eq('font/opentype', mime.lookup('file.otf'));
    4656
    4757//
     
    5363eq('fallback', mime.charsets.lookup('application/octet-stream', 'fallback'));
    5464
     65//
     66// Test for overlaps between mime.types and node.types
     67//
     68
     69var apacheTypes = new mime.Mime(), nodeTypes = new mime.Mime();
     70apacheTypes.load(path.join(__dirname, 'types/mime.types'));
     71nodeTypes.load(path.join(__dirname, 'types/node.types'));
     72
     73var keys = [].concat(Object.keys(apacheTypes.types))
     74             .concat(Object.keys(nodeTypes.types));
     75keys.sort();
     76for (var i = 1; i < keys.length; i++) {
     77  if (keys[i] == keys[i-1]) {
     78    console.warn('Warning: ' +
     79      'node.types defines ' + keys[i] + '->' + nodeTypes.types[keys[i]] +
     80      ', mime.types defines ' + keys[i] + '->' + apacheTypes.types[keys[i]]);
     81  }
     82}
     83
    5584console.log('\nOK');
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/send/node_modules/mime/types/mime.types

    r484 r487  
    10551055application/x-font-ttf                          ttf ttc
    10561056application/x-font-type1                        pfa pfb pfm afm
    1057 application/x-font-woff                         woff
     1057application/font-woff                           woff
    10581058# application/x-font-vfont
    10591059application/x-freearc                           arc
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/send/node_modules/mime/types/node.types

    r484 r487  
    1616text/x-component  htc
    1717
    18 # What: HTML5 application cache manifest
     18# What: HTML5 application cache manifes ('.manifest' extension)
    1919# Why: De-facto standard. Required by Mozilla browser when serving HTML5 apps
    2020# per https://developer.mozilla.org/en/offline_resources_in_firefox
    2121# Added by: louisremi
    22 text/cache-manifest  appcache manifest
     22text/cache-manifest  manifest
    2323
    2424# What: node binary buffer format
     
    5959# Added by: avoidwork
    6060text/x-markdown  markdown md mkd
     61
     62# What: ini files
     63# Why: because they're just text files
     64# Added by: Matthew Kastor
     65text/plain  ini
     66
     67# What: DASH Adaptive Streaming manifest
     68# Why: https://developer.mozilla.org/en-US/docs/DASH_Adaptive_Streaming_for_HTML_5_Video
     69# Added by: eelcocramer
     70application/dash+xml mdp
     71
     72# What: OpenType font files - http://www.microsoft.com/typography/otspec/
     73# Why:  Browsers usually ignore the font MIME types and sniff the content,
     74#       but Chrome, shows a warning if OpenType fonts aren't served with
     75#       the `font/opentype` MIME type: http://i.imgur.com/8c5RN8M.png.
     76# Added by: alrra
     77font/opentype  otf
  • Dev/trunk/src/node_modules/express/node_modules/connect/node_modules/send/package.json

    r484 r487  
    3737    "url": "https://github.com/visionmedia/send/issues"
    3838  },
     39  "homepage": "https://github.com/visionmedia/send",
    3940  "_id": "send@0.1.1",
    40   "_from": "send@0.1.1"
     41  "dist": {
     42    "shasum": "40ded726322604c29d7229683f9207bd6d76e217"
     43  },
     44  "_from": "send@0.1.1",
     45  "_resolved": "https://registry.npmjs.org/send/-/send-0.1.1.tgz"
    4146}
  • Dev/trunk/src/node_modules/express/node_modules/connect/package.json

    r484 r487  
    4949    "url": "https://github.com/senchalabs/connect/issues"
    5050  },
     51  "homepage": "https://github.com/senchalabs/connect",
    5152  "_id": "connect@2.7.11",
    52   "_from": "connect@2.7.11"
     53  "dist": {
     54    "shasum": "839e3928b727827db859a4b3a1d04ea9a06b6ab1"
     55  },
     56  "_from": "connect@2.7.11",
     57  "_resolved": "https://registry.npmjs.org/connect/-/connect-2.7.11.tgz"
    5358}
  • Dev/trunk/src/node_modules/express/node_modules/cookie-signature/package.json

    r484 r487  
    2121  "readmeFilename": "Readme.md",
    2222  "_id": "cookie-signature@1.0.1",
    23   "_from": "cookie-signature@1.0.1"
     23  "dist": {
     24    "shasum": "404efcace10fb30f3451483045d743463ae8602c"
     25  },
     26  "_from": "cookie-signature@1.0.1",
     27  "_resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.1.tgz"
    2428}
  • Dev/trunk/src/node_modules/express/node_modules/cookie/package.json

    r484 r487  
    3232    "url": "https://github.com/shtylman/node-cookie/issues"
    3333  },
     34  "homepage": "https://github.com/shtylman/node-cookie",
    3435  "_id": "cookie@0.1.0",
    35   "_from": "cookie@0.1.0"
     36  "dist": {
     37    "shasum": "b56ac6108fcab9073208d405c4fa8aaa35f00810"
     38  },
     39  "_from": "cookie@0.1.0",
     40  "_resolved": "https://registry.npmjs.org/cookie/-/cookie-0.1.0.tgz"
    3641}
  • Dev/trunk/src/node_modules/express/node_modules/debug/Readme.md

    r484 r487  
    1 
    21# debug
    32
     
    5958  ![](http://f.cl.ly/items/2i3h1d3t121M2Z1A3Q0N/Screenshot.png)
    6059
    61   When stdout is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below:
     60  When stderr is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below:
     61  _(NOTE: Debug now uses stderr instead of stdout, so the correct shell command for this example is actually `DEBUG=* node example/worker 2> out &`)_
    6262 
    6363  ![](http://f.cl.ly/items/112H3i0e0o0P0a2Q2r11/Screenshot.png)
    64 
     64 
    6565## Conventions
    6666
  • Dev/trunk/src/node_modules/express/node_modules/debug/debug.js

    r484 r487  
    1818
    1919  return function(fmt){
     20    fmt = coerce(fmt);
     21
    2022    var curr = new Date;
    2123    var ms = curr - (debug[name] || curr);
     
    120122};
    121123
     124/**
     125 * Coerce `val`.
     126 */
     127
     128function coerce(val) {
     129  if (val instanceof Error) return val.stack || val.message;
     130  return val;
     131}
     132
    122133// persist
    123134
    124 if (window.localStorage) debug.enable(localStorage.debug);
     135try {
     136  if (window.localStorage) debug.enable(localStorage.debug);
     137} catch(e){}
  • Dev/trunk/src/node_modules/express/node_modules/debug/lib/debug.js

    r484 r487  
    109109
    110110  function colored(fmt) {
     111    fmt = coerce(fmt);
     112
    111113    var curr = new Date;
    112114    var ms = curr - (prev[name] || curr);
     
    122124
    123125  function plain(fmt) {
     126    fmt = coerce(fmt);
     127
    124128    fmt = new Date().toUTCString()
    125129      + ' ' + name + ' ' + fmt;
     
    133137    : plain;
    134138}
     139
     140/**
     141 * Coerce `val`.
     142 */
     143
     144function coerce(val) {
     145  if (val instanceof Error) return val.stack || val.message;
     146  return val;
     147}
  • Dev/trunk/src/node_modules/express/node_modules/debug/package.json

    r484 r487  
    11{
    22  "name": "debug",
    3   "version": "0.7.2",
     3  "version": "0.7.4",
    44  "repository": {
    55    "type": "git",
     
    2121  },
    2222  "main": "lib/debug.js",
    23   "browserify": "debug.js",
     23  "browser": "./debug.js",
    2424  "engines": {
    2525    "node": "*"
    2626  },
     27  "files": [
     28    "lib/debug.js",
     29    "debug.js",
     30    "index.js"
     31  ],
    2732  "component": {
    2833    "scripts": {
     
    3136    }
    3237  },
    33   "readme": "\n# debug\n\n  tiny node.js debugging utility modelled after node core's debugging technique.\n\n## Installation\n\n```\n$ npm install debug\n```\n\n## Usage\n\n With `debug` you simply invoke the exported function to generate your debug function, passing it a name which will determine if a noop function is returned, or a decorated `console.error`, so all of the `console` format string goodies you're used to work fine. A unique color is selected per-function for visibility.\n \nExample _app.js_:\n\n```js\nvar debug = require('debug')('http')\n  , http = require('http')\n  , name = 'My App';\n\n// fake app\n\ndebug('booting %s', name);\n\nhttp.createServer(function(req, res){\n  debug(req.method + ' ' + req.url);\n  res.end('hello\\n');\n}).listen(3000, function(){\n  debug('listening');\n});\n\n// fake worker of some kind\n\nrequire('./worker');\n```\n\nExample _worker.js_:\n\n```js\nvar debug = require('debug')('worker');\n\nsetInterval(function(){\n  debug('doing some work');\n}, 1000);\n```\n\n The __DEBUG__ environment variable is then used to enable these based on space or comma-delimited names. Here are some examples:\n\n  ![debug http and worker](http://f.cl.ly/items/18471z1H402O24072r1J/Screenshot.png)\n\n  ![debug worker](http://f.cl.ly/items/1X413v1a3M0d3C2c1E0i/Screenshot.png)\n\n## Millisecond diff\n\n  When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the \"+NNNms\" will show you how much time was spent between calls.\n\n  ![](http://f.cl.ly/items/2i3h1d3t121M2Z1A3Q0N/Screenshot.png)\n\n  When stdout is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below:\n  \n  ![](http://f.cl.ly/items/112H3i0e0o0P0a2Q2r11/Screenshot.png)\n\n## Conventions\n\n If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use \":\" to separate features. For example \"bodyParser\" from Connect would then be \"connect:bodyParser\". \n\n## Wildcards\n\n  The \"*\" character may be used as a wildcard. Suppose for example your library has debuggers named \"connect:bodyParser\", \"connect:compress\", \"connect:session\", instead of listing all three with `DEBUG=connect:bodyParser,connect.compress,connect:session`, you may simply do `DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`.\n\n  You can also exclude specific debuggers by prefixing them with a \"-\" character.  For example, `DEBUG=* -connect:*` would include all debuggers except those starting with \"connect:\".\n\n## Browser support\n\n Debug works in the browser as well, currently persisted by `localStorage`. For example if you have `worker:a` and `worker:b` as shown below, and wish to debug both type `debug.enable('worker:*')` in the console and refresh the page, this will remain until you disable with `debug.disable()`. \n\n```js\na = debug('worker:a');\nb = debug('worker:b');\n\nsetInterval(function(){\n  a('doing some work');\n}, 1000);\n\nsetInterval(function(){\n  a('doing some work');\n}, 1200);\n```\n\n## License \n\n(The MIT License)\n\nCopyright (c) 2011 TJ Holowaychuk &lt;tj@vision-media.ca&gt;\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.",
     38  "readme": "# debug\n\n  tiny node.js debugging utility modelled after node core's debugging technique.\n\n## Installation\n\n```\n$ npm install debug\n```\n\n## Usage\n\n With `debug` you simply invoke the exported function to generate your debug function, passing it a name which will determine if a noop function is returned, or a decorated `console.error`, so all of the `console` format string goodies you're used to work fine. A unique color is selected per-function for visibility.\n \nExample _app.js_:\n\n```js\nvar debug = require('debug')('http')\n  , http = require('http')\n  , name = 'My App';\n\n// fake app\n\ndebug('booting %s', name);\n\nhttp.createServer(function(req, res){\n  debug(req.method + ' ' + req.url);\n  res.end('hello\\n');\n}).listen(3000, function(){\n  debug('listening');\n});\n\n// fake worker of some kind\n\nrequire('./worker');\n```\n\nExample _worker.js_:\n\n```js\nvar debug = require('debug')('worker');\n\nsetInterval(function(){\n  debug('doing some work');\n}, 1000);\n```\n\n The __DEBUG__ environment variable is then used to enable these based on space or comma-delimited names. Here are some examples:\n\n  ![debug http and worker](http://f.cl.ly/items/18471z1H402O24072r1J/Screenshot.png)\n\n  ![debug worker](http://f.cl.ly/items/1X413v1a3M0d3C2c1E0i/Screenshot.png)\n\n## Millisecond diff\n\n  When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the \"+NNNms\" will show you how much time was spent between calls.\n\n  ![](http://f.cl.ly/items/2i3h1d3t121M2Z1A3Q0N/Screenshot.png)\n\n  When stderr is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below:\n  _(NOTE: Debug now uses stderr instead of stdout, so the correct shell command for this example is actually `DEBUG=* node example/worker 2> out &`)_\n  \n  ![](http://f.cl.ly/items/112H3i0e0o0P0a2Q2r11/Screenshot.png)\n  \n## Conventions\n\n If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use \":\" to separate features. For example \"bodyParser\" from Connect would then be \"connect:bodyParser\". \n\n## Wildcards\n\n  The \"*\" character may be used as a wildcard. Suppose for example your library has debuggers named \"connect:bodyParser\", \"connect:compress\", \"connect:session\", instead of listing all three with `DEBUG=connect:bodyParser,connect.compress,connect:session`, you may simply do `DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`.\n\n  You can also exclude specific debuggers by prefixing them with a \"-\" character.  For example, `DEBUG=* -connect:*` would include all debuggers except those starting with \"connect:\".\n\n## Browser support\n\n Debug works in the browser as well, currently persisted by `localStorage`. For example if you have `worker:a` and `worker:b` as shown below, and wish to debug both type `debug.enable('worker:*')` in the console and refresh the page, this will remain until you disable with `debug.disable()`. \n\n```js\na = debug('worker:a');\nb = debug('worker:b');\n\nsetInterval(function(){\n  a('doing some work');\n}, 1000);\n\nsetInterval(function(){\n  a('doing some work');\n}, 1200);\n```\n\n## License \n\n(The MIT License)\n\nCopyright (c) 2011 TJ Holowaychuk &lt;tj@vision-media.ca&gt;\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n",
    3439  "readmeFilename": "Readme.md",
    3540  "bugs": {
    3641    "url": "https://github.com/visionmedia/debug/issues"
    3742  },
    38   "_id": "debug@0.7.2",
    39   "_from": "debug@*",
    40   "scripts": {}
     43  "homepage": "https://github.com/visionmedia/debug",
     44  "_id": "debug@0.7.4",
     45  "_from": "debug@*"
    4146}
  • Dev/trunk/src/node_modules/express/node_modules/fresh/package.json

    r484 r487  
    1717  "readmeFilename": "Readme.md",
    1818  "_id": "fresh@0.1.0",
    19   "_from": "fresh@0.1.0"
     19  "dist": {
     20    "shasum": "97ce63fda273b033f866d3a29b9920d034aa2074"
     21  },
     22  "_from": "fresh@0.1.0",
     23  "_resolved": "https://registry.npmjs.org/fresh/-/fresh-0.1.0.tgz"
    2024}
  • Dev/trunk/src/node_modules/express/node_modules/methods/package.json

    r484 r487  
    1717  "readme": "ERROR: No README data found!",
    1818  "_id": "methods@0.0.1",
    19   "_from": "methods@0.0.1"
     19  "dist": {
     20    "shasum": "c0a484b3e1f28764c5cfd234e1a156d47092ecca"
     21  },
     22  "_from": "methods@0.0.1",
     23  "_resolved": "https://registry.npmjs.org/methods/-/methods-0.0.1.tgz"
    2024}
  • Dev/trunk/src/node_modules/express/node_modules/mkdirp/package.json

    r484 r487  
    3232    "url": "https://github.com/substack/node-mkdirp/issues"
    3333  },
     34  "homepage": "https://github.com/substack/node-mkdirp",
    3435  "_id": "mkdirp@0.3.4",
    35   "_from": "mkdirp@0.3.4"
     36  "dist": {
     37    "shasum": "8642eb45b73f5cd19824e94b572871013af8a305"
     38  },
     39  "_from": "mkdirp@0.3.4",
     40  "_resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.4.tgz"
    3641}
  • Dev/trunk/src/node_modules/express/node_modules/range-parser/package.json

    r484 r487  
    1717  "readmeFilename": "Readme.md",
    1818  "_id": "range-parser@0.0.4",
    19   "_from": "range-parser@0.0.4"
     19  "dist": {
     20    "shasum": "a91c03c737187765f0dcdbe32fa824e52b47a9a6"
     21  },
     22  "_from": "range-parser@0.0.4",
     23  "_resolved": "https://registry.npmjs.org/range-parser/-/range-parser-0.0.4.tgz"
    2024}
  • Dev/trunk/src/node_modules/express/node_modules/send/node_modules/mime/package.json

    r484 r487  
    3131    "url": "https://github.com/broofa/node-mime/issues"
    3232  },
     33  "homepage": "https://github.com/broofa/node-mime",
    3334  "_id": "mime@1.2.6",
    34   "_from": "mime@1.2.6"
     35  "dist": {
     36    "shasum": "193c6817fabeefd6a5f29acabd0b6cebc2c0910f"
     37  },
     38  "_from": "mime@1.2.6",
     39  "_resolved": "https://registry.npmjs.org/mime/-/mime-1.2.6.tgz"
    3540}
  • Dev/trunk/src/node_modules/express/node_modules/send/package.json

    r484 r487  
    3131  "readmeFilename": "Readme.md",
    3232  "_id": "send@0.1.0",
    33   "_from": "send@0.1.0"
     33  "dist": {
     34    "shasum": "4ea2b3aca167b22699fdbe4eb5bce35fc57ca7d5"
     35  },
     36  "_from": "send@0.1.0",
     37  "_resolved": "https://registry.npmjs.org/send/-/send-0.1.0.tgz"
    3438}
  • Dev/trunk/src/node_modules/express/package.json

    r484 r487  
    8080    "url": "https://github.com/visionmedia/express/issues"
    8181  },
     82  "homepage": "https://github.com/visionmedia/express",
    8283  "_id": "express@3.2.6",
    83   "_from": "express@~3.2.3"
     84  "dist": {
     85    "shasum": "4e16430ceaf29ac1f185c6996d50ca6394ec6357"
     86  },
     87  "_from": "express@3.2.6",
     88  "_resolved": "https://registry.npmjs.org/express/-/express-3.2.6.tgz"
    8489}
Note: See TracChangeset for help on using the changeset viewer.