{"_id":"node-redshift","_rev":"22-3156812bc16b0ce5ba31abb4dc9fc141","name":"node-redshift","time":{"modified":"2022-06-21T20:55:47.609Z","created":"2015-11-22T01:25:23.660Z","0.0.1":"2015-11-22T01:25:23.660Z","1.0.0":"2015-12-26T14:35:21.200Z","0.0.2":"2015-12-26T14:42:41.732Z","0.0.3":"2015-12-26T14:46:49.736Z","0.0.4":"2015-12-26T15:17:25.120Z","0.0.5":"2016-01-25T03:34:00.027Z","0.0.6":"2016-09-13T14:22:56.896Z","0.1.0":"2017-01-09T05:14:51.036Z","0.1.1":"2017-03-06T03:32:35.526Z","0.1.2":"2017-04-24T13:51:00.647Z","0.1.3":"2017-04-28T05:01:36.926Z","0.1.4":"2017-05-30T13:53:50.428Z","0.1.5":"2017-07-04T17:54:34.059Z"},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}],"dist-tags":{"latest":"0.1.5"},"description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","readme":"## Navigation\n\n#### [Overview](https://github.com/dmanjunath/node-redshift#overview-1)\n\n#### [Installation](https://github.com/dmanjunath/node-redshift#installation-1)\n\n#### [Setup](https://github.com/dmanjunath/node-redshift#setup-1)\n\n#### [Usage](https://github.com/dmanjunath/node-redshift#usage-1)\n\n- #### [Query API](https://github.com/dmanjunath/node-redshift#query-api-2)\n- #### [CLI](https://github.com/dmanjunath/node-redshift#cli-2)\n- #### [Models](https://github.com/dmanjunath/node-redshift#models-2)\n- #### [ORM](https://github.com/dmanjunath/node-redshift#orm-api)\n\n#### [Upcoming Features](https://github.com/dmanjunath/node-redshift#upcoming-features-1)\n\n#### [License](https://github.com/dmanjunath/node-redshift#license-1)\n\n## Overview\nThis package is a simple wrapper for common functionality you want when using Redshift. It can do\n- Redshift connections & querying\n- Creating and running migrations\n- Create and manage models\n- CRUD API with ORM wrapper with type validation\n\nWarning!!!!!! This is new and still under development. The API is bound to change. Use at your own risk.\n\n## Installation\nInstall the package by running\n```javascript\nnpm install node-redshift\n```\nLink to npm repository https://www.npmjs.com/package/node-redshift\n\n## Setup\n\nThe code to connect to redshift should be something like this:\n```javascript\n//redshift.js\nvar Redshift = require('node-redshift');\n\nvar client = {\n  user: user,\n  database: database,\n  password: password,\n  port: port,\n  host: host,\n};\n\n// The values passed in to the options object will be the difference between a connection pool and raw connection\nvar redshiftClient = new Redshift(client, [options]);\n\nmodule.exports = redshiftClient;\n```\n\nThere are two ways to setup a connection to redshift. \n\n- [Connection Pooling](https://github.com/dmanjunath/node-redshift#connection-pooling) -  you can open a connection pool and open connections to Redshift which will be managed by pg-pool (https://github.com/brianc/node-pg-pool)\n- [Raw Connection](https://github.com/dmanjunath/node-redshift#raw-connection) - a one time connection you must manually initialize and close to run queries\n\n\n###### ***By default node-redshift uses connection pooling\n\n#### \n##### Raw Connection\nPass in the rawConnection parameter in the redshift instantiation options to specify a raw connection. Raw connections need extra code to specify when to connect and disconnect from Redshift. [Here's an example of the raw connection query](https://github.com/dmanjunath/node-redshift/blob/master/examples/raw_connection.js)\n\n```javascript\nvar redshiftClient = new Redshift(client, {rawConnection: true});\n```\n\n##### Connection Pooling \nConnection pooling works by default with no extra configuration. [Here's an example of connection pooling](https://github.com/dmanjunath/node-redshift/blob/master/examples/connection_pooling.js)\n\n##### Setup Options\nThere are two options that can be passed into the options object in the Redshift constructor.\n\n| Option                | Type          | Description                                                                       |\n| --------------------- |:-------------:| ---------------------------------------------------------------------------------:|\n| rawConnection         | Boolean       | If you want a raw connection, pass true with this option                          |\n| longStackTraces       | Boolean       | Default: true. If you want to disable [bluebird's longStackTraces](http://bluebirdjs.com/docs/api/promise.longstacktraces.html), pass in false   |\n\n\n## Usage\n\n#### [Query API](https://github.com/dmanjunath/node-redshift#query-api-2)\n#### [CLI](https://github.com/dmanjunath/node-redshift#cli-2)\n#### [Models](https://github.com/dmanjunath/node-redshift#models-2)\n#### [ORM](https://github.com/dmanjunath/node-redshift#orm-api)\n#\n### Query API\nPlease see examples/ folder for full code examples using both raw connections and connection pools.\n\nFor those looking for a library to build robust, injection safe SQL, I like [sql-bricks](http://csnw.github.io/sql-bricks/) to build query strings.\n\nBoth Raw Connections and Connection Pool connections have two query functions that are bound to the initialized Redshift object: `query()` and a `parameterizedQuery()`.\n\nAll `query()` and `parameterizedQuery()` functions support **both callback and promise style**. If there's a function as a third argument, the callback will fire. If there's no third function argument, but instead (query, [options]).then({})... the promise will fire.\n\n```javascript\n//raw connection\nvar redshiftClient = require('./redshift.js');\n\nredshiftClient.connect(function(err){\n  if(err) throw err;\n  else{\n    redshiftClient.query('SELECT * FROM \"TableName\"', [options], function(err, data){\n      if(err) throw err;\n      else{\n        console.log(data);\n        redshiftClient.close();\n      }\n    });\n  }\n});\n```\n#\n```javascript\n//connection pool\nvar redshiftClient = require('./redshift.js');\n\n// options is an optional object with one property so far {raw: true} returns \n// just the data from redshift. {raw: false} returns the data with the pg object\nredshiftClient.query(queryString, [options])\n.then(function(data){\n    console.log(data);\n})\n.catch(function(err){\n    console.error(err);\n});\n//instead of promises you can also use callbacks to get the data\n```\n\n##### Parameterized Queries \nIf you parameterize the SQL string yourself, you can call the `parameterizeQuery()` function \n```javascript\n//connection pool\nvar redshiftClient = require('./redshift.js');\n\n// options is an optional object with one property so far {raw: true} returns \n// just the data from redshift. {raw: false} returns the data with the pg object\nredshiftClient.parameterizedQuery('SELECT * FROM \"TableName\" WHERE \"parameter\" = $1', [42], [options], function(err, data){\n  if(err) throw err;\n  else{\n    console.log(data);\n  }\n});\n//you can also use promises to get the data\n```\n\n##### Template Literal Queries \nIf you use template literals to write your SQL, you can use a tagged template parser like https://github.com/felixfbecker/node-sql-template-strings to parameterize the template literal\n```javascript\n//connection pool\nvar redshiftClient = require('./redshift.js');\nvar SQL = require('sql-template-strings');\n\n// options is an optional object with one property so far {raw: true} returns \n// just the data from redshift. {raw: false} returns the data with the pg object\nlet value = 42;\n\nredshiftClient.query(SQL`SELECT * FROM \"TableName\" WHERE \"parameter\" = ${value}`, [options], function(err, data){\n  if(err) throw err;\n  else{\n    console.log(data);\n  }\n});\n//you can also use promises to get the data\n```\n\n##### `rawQuery()` \nIf you want to make a one time raw query, but you don't want to call connect & disconnect manually and you dont want to use conection pooling, you can use `rawQuery()`\n```javascript\n//connection pool\nvar redshiftClient = require('./redshift.js');\n\n// options is an optional object with one property so far {raw: true} returns \n// just the data from redshift. {raw: false} returns the data with the pg object\nredshiftClient.rawQuery('SELECT * FROM \"TableName\"', [options], function(err, data){\n  if(err) throw err;\n  else{\n    console.log(data);\n  }\n});\n//you can also use promises to get the data\n```\n\n##### Query Options \nThere's only a single query option so far. For the options object, the only valid option is {raw: true}, which returns just the data from redshift. {raw: false} or not specifying the value will return the data along with the entire pg object with data such as row count, table statistics etc.\n\n\n### CLI\nThere's a CLI with options for easy migration management. Creating a migration will create a `redshift_migrations/` folder with a state file called `.migrate` in it which contains the state of your completed migrations. The .migrate file keeps track of which migrations have been run, and when you run db:migrate, it computes the migrations that have not yet been run on your Redshift instance and runs them and saves the state of `.migrate`\n\nWARNING!!! IF YOU HAVE SEPARATE DEV AND PROD REDSHIFT INSTANCES, DO NOT COMMIT THE `.migrate` FILE TO YOUR VCS OR DEPLOY TO YOUR SERVERS. YOU'LL NEED A NEW VERSION OF THIS FILE FOR EVERY INSTANCE OF REDSHIFT.\n\n##### Create a new migration file in redshift_migrations/ folder\n#\n```\nnode_modules/.bin/node-redshift migration:create <filename>\n```\n\n##### Run all remaining migrations on database\n#\n```\nnode_modules/.bin/node-redshift db:migrate <filename>\n```\n\n##### Undo last migration\n#\n```\nnode_modules/.bin/node-redshift db:migrate:undo <filename>\n```\n\n##### Creating a model using the command line\n#\n```\nnode_modules/.bin/node-redshift model:create <filename>\n```\n\n### Models\n\nA model will look like this\n```javascript\n'use strict';\n  var person = {\n    'tableName': 'people',\n    'tableProperties': {\n      'id': {\n        'type': 'key'\n      },\n      'name': { \n        'type': 'string',\n        'required': true\n      },\n      'email': { \n        'type': 'string',\n        'required': true\n      }\n    }\n  };\n  module.exports = person;\n```\n##### Importing and using model with ORM\n#\nThere are two ways you could import and use redshift models. The first is using redshift.import in every file where you want to use the model ORM.\n```javascript\nvar redshift = require(\"../redshift.js\");\nvar person = redshift.import(\"./redshift_models/person.js\");\n\nperson.create({name: 'Dheeraj', email: 'dheeraj@email.com'}, function(err, data){\n    if(err) throw err;\n    else{\n      console.log(data);\n    }\n  });\n```\n\nThe alternative(my preferred way) is to abstract the import calls and export all the models with the redshift object right after initialization\n\n```javascript\n//redshift.js\n...redshift connection code...\n\nvar person = redshift.import(\"./redshift_models/person.js\");\nredshift.models = {};\nredshift.models.person = person;\n\nmodule.exports = redshift;\n\n//usage in person.js\nvar redshiftConnection = require('./redshift.js');\nvar person = redshift.models.person;\n\nperson.create({name: 'Dheeraj', email: 'dheeraj@email.com'}, function(err, data){\n    if(err) throw err;\n    else{\n      console.log(data);\n    }\n  });\n```\n\n### ORM API\nThere are 3 functions supported by the ORM\n```javascript\n/**\n * create a new instance of object\n * @param  {Object or Array}   data Object/Array with keys/values to create in database. keys are column names, values are data\n * @param  {Function} cb   \n * @return {Object}        Object that's inserted into redshift\n */\nPerson.create({emailAddress: 'dheeraj@email.com', name: 'Dheeraj'}, function(err, data){\n  if(err) throw err;\n  else console.log(data);\n});\n \n/**\n * update an existing item in redshift\n * @param  {Object}   whereClause The properties that identify the rows to update. Essentially the WHERE clause in the UPDATE statement\n * @param  {Object}   data        Properties to overwrite in the record\n * @param  {Function} callback    \n * @return {Object}               Object that's updated in redshift\n *\n */\nPerson.update({id: 72}, {emailAddress: 'dheeraj@email.com', name: 'Dheeraj'}, function(err, data){\n  if(err) throw err;\n  else console.log(data);\n});\n\n/**\n * delete rows from redshift\n * @param  {Object}   whereClause The properties that identify the rows to update. Essentially the WHERE clause in the UPDATE statement\n * @param  {Function} cb   \n * @return {Object}        Object that's deleted from redshift\n */\nPerson.delete({emailAddress: 'dheeraj@email.com', name: 'Dheeraj'}, function(err, data){\n  if(err) throw err;\n  else console.log(data);\n});\n```\n\n## Upcoming features\n- Ability to customize location of `.migrate` file or even from S3\n- Model checking prior to queries to verify property name and type\n- Add class & instance methods to model\n\n## License\nMIT\n","versions":{"0.0.2":{"name":"node-redshift","version":"0.0.2","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"commander":"^2.9.0","migrate":"^0.2.2","pg":"^4.4.3"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"14cbf7059c38ab6e3a61720798ddb7c16c7483fc","_id":"node-redshift@0.0.2","_shasum":"de7eb5e67fb8ba478cb702bb17b7f3bcbb281ea6","_from":".","_npmVersion":"2.14.2","_nodeVersion":"4.0.0","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"de7eb5e67fb8ba478cb702bb17b7f3bcbb281ea6","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.0.2.tgz","integrity":"sha512-ovHxl2+Ga7Y1gbjvHNATvrmLsdc+22ubEpg1a9fY6xuvJZ/dNccnT1wjGbuNT6JsN2NLhrdMmieFhDHKj2BbEA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAe42xUGh7WnaBwDWp0j7pYkQx3G+qWKG7K7VR6WxVQPAiEA8idDh3o4yi0fgWgOtHbmWuHzSFS5g34Up3Y3QJUIUTE="}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}]},"0.0.3":{"name":"node-redshift","version":"0.0.3","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"commander":"^2.9.0","migrate":"^0.2.2","pg":"^4.4.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"e2b4d03f41e115fcce68897b52174aef18d09f69","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.0.3","_shasum":"594da7fd82d0c6c4729efc94d0d0030ceb00c1a4","_from":".","_npmVersion":"2.14.2","_nodeVersion":"4.0.0","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"594da7fd82d0c6c4729efc94d0d0030ceb00c1a4","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.0.3.tgz","integrity":"sha512-LyDljB7PH0rTUBW2sMFtrWUjxohULlR1w3u5EYuQADeYICuqITWgP9aQALh2zY4zoVq7ooBizJ4YltkSlm6zAQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICZX3rB5k4ZCXb2Lt/F3sSCQt0Vhwe+zQkdjG/hoZuteAiEA8UiqKrvIr9ZC/JlC9egFarYADGME3y0rbeGmIyBzNVg="}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}]},"0.0.4":{"name":"node-redshift","version":"0.0.4","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"commander":"^2.9.0","migrate":"^0.2.2","pg":"^4.4.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["redshift","aws","node redshift"],"bin":{"node-redshift":"./bin/node-redshift"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"0b984de6710141fb7a9f593f532877f04f384905","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.0.4","_shasum":"3499e3db165fc4a81532e66e4dcb9b5f6dac9ce7","_from":".","_npmVersion":"2.14.2","_nodeVersion":"4.0.0","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"3499e3db165fc4a81532e66e4dcb9b5f6dac9ce7","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.0.4.tgz","integrity":"sha512-h9O/vSkw9/q0U+N+Ppj7kUep84BvvqYQSKKX6tSJiFpqMHGd8sLPkali+rG4YeK3WjfNU4VDFK3XNAVvC2cl2w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFqX3sv6L8do1NQ8BT71POZqK76oGAbmFNMH2gIupfaaAiBRctNKaAE8cU/fabIZceB7lvMevhen+SwTNEREvlTTpg=="}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}]},"0.0.5":{"name":"node-redshift","version":"0.0.5","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"commander":"^2.9.0","migrate":"^0.2.2","pg":"^4.4.3","sql-bricks":"^1.2.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["redshift","aws","node redshift","aws redshfit"],"bin":{"node-redshift":"./bin/node-redshift"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"19e75d0b4fc3e556bef49f2d69f4ce3ba83c42eb","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.0.5","_shasum":"fb31cf7e5a41e87bd5a91256380321cbca2b4cbc","_from":".","_npmVersion":"2.14.2","_nodeVersion":"4.0.0","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"fb31cf7e5a41e87bd5a91256380321cbca2b4cbc","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.0.5.tgz","integrity":"sha512-IYpt2GTGT5fUDBDg9cgO1vc1jZ2WjzA2xasgj1+iEpJULdpq07kQUTnygyhN3Hvaeid6CS7xaKQx0aAdVFLMwg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3+jonBFFyvhHwEUiESX4q5cMqIbtDDpsZ+mEDg4PTMgIgQ3w2nPw4U0/lwgyW4MCnybVTVZ42q/OifGpZ/ed5/8E="}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}]},"0.0.6":{"name":"node-redshift","version":"0.0.6","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"commander":"^2.9.0","migrate":"^0.2.2","pg":"^6.1.0","sql-bricks":"^1.2.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["redshift","aws","node redshift","aws redshfit"],"bin":{"node-redshift":"./bin/node-redshift"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"96393e40683c34140a9e71f2bdb40964f279fe13","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.0.6","_shasum":"5d279e607d5ad79bb64bbe0d5ab7220c650dfbac","_from":".","_npmVersion":"3.8.6","_nodeVersion":"4.4.2","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"5d279e607d5ad79bb64bbe0d5ab7220c650dfbac","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.0.6.tgz","integrity":"sha512-55rM2zDBxpSilFOQsVqa38XTZ5zzkZwMJyOcl4QJS/OUd7WFy7ilc+fUFmppUDnL0dWtQA05NTtovQXeYRGS8w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAU0t8tPREFz/LTF+7GsP/z1IWRWHO0Zi32Hl5LO+u48AiEAqN0co8oMi6VcN9D4l1LfUaIky2GmYRo4zTtMBG2vzeE="}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/node-redshift-0.0.6.tgz_1473776574759_0.15138383326120675"}},"0.1.0":{"name":"node-redshift","version":"0.1.0","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"commander":"^2.9.0","migrate":"^0.2.2","pg":"^6.1.2","sql-bricks":"^1.2.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["redshift","aws","node redshift","aws redshfit"],"bin":{"node-redshift":"./bin/node-redshift"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"e90f24396771642084a6d5b27a9e4e967b2885a3","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.1.0","_shasum":"f1b8b3e3c542393bf091a8d84ccd0838ae2ada66","_from":".","_npmVersion":"3.8.6","_nodeVersion":"4.4.2","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"f1b8b3e3c542393bf091a8d84ccd0838ae2ada66","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.1.0.tgz","integrity":"sha512-7CeXR6EHjsYiSs/dbzr0J0WMDfsGpfUFawcGIiInxnUkFgt/56bR6+oUqaT9EXnsSA18Eh7H5NApGqt9T5A7Wg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFyUdELf6dC2OSk44mlUbu/emBzJkL+kDS5M4FG5bcSAIgOfbPImOuI74JNZbt1kSDOCaS+qJX2sB2GcOLjrJShNs="}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/node-redshift-0.1.0.tgz_1483938890477_0.14255893626250327"}},"0.1.1":{"name":"node-redshift","version":"0.1.1","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"commander":"^2.9.0","migrate":"^0.2.2","pg":"^6.1.2","sql-bricks":"^1.2.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["redshift","aws","node redshift","aws redshfit"],"bin":{"node-redshift":"./bin/node-redshift"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"bd9e9615b2783ca47a932078a9c5b47bfd7ae8eb","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.1.1","_shasum":"65d3063d5718012ecabdb89976a8a84059387491","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"65d3063d5718012ecabdb89976a8a84059387491","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.1.1.tgz","integrity":"sha512-P0E6iBEce0pIqnEXI49Xe3d+IIoFtbbfhv+HUozSCahF95enZL+BOau2yFqCbSedrOJa9vhDWb8ig5JuFNMH8Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCwE//gBrDGrpaf+4/CEYIGRuyn2jdaexgHtvsrChl0AIgTezWV4Qvp9//HkmFcYOUA48VK8LsG25G93DUFObjExw="}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/node-redshift-0.1.1.tgz_1488771153587_0.511861615581438"}},"0.1.2":{"name":"node-redshift","version":"0.1.2","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"bluebird":"^3.5.0","commander":"^2.9.0","migrate":"^0.2.2","pg":"^6.1.2","sql-bricks":"^1.2.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["redshift","aws","node redshift","aws redshfit"],"bin":{"node-redshift":"./bin/node-redshift"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"6313e3271e3505195990ebbcb7cd8b25db2769ff","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.1.2","_shasum":"999fa2103c49222d20aa5460d54653f95b517ab7","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"999fa2103c49222d20aa5460d54653f95b517ab7","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.1.2.tgz","integrity":"sha512-Xen5x1y181CKpi754jz5FjGobaAAFFdQzX7c2uzER4kKAs7vQiBFMLkkkHa9eaQNtZpjfMY4hgGn3MOEk9YGpA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDt+c3VPqs3CpPq44OqMxM7WUlcOb4egzjrrgP4O1O7igIhAL0YqNXtrzPlN1dgb9Dd4ZxFU5nJ/g3Ki2rMhEwIyUzq"}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/node-redshift-0.1.2.tgz_1493041858713_0.22442451352253556"}},"0.1.3":{"name":"node-redshift","version":"0.1.3","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"bluebird":"^3.5.0","commander":"^2.9.0","migrate":"^0.2.2","pg":"^6.1.2","sql-bricks":"^1.2.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["redshift","aws","node redshift","aws redshfit"],"bin":{"node-redshift":"./bin/node-redshift"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"f4b6d59dd8b6655a9be0278e793bc8bfef5aae8b","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.1.3","_shasum":"4aade75c18676908b25b1bbe21397a63269812ce","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"4aade75c18676908b25b1bbe21397a63269812ce","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.1.3.tgz","integrity":"sha512-FOjhwwmx8+rIta8ViqvM40UqjKD8KjqZd0HSuDly1nE80pbNXujGr+iNSko2DhJWNXxZYpmAPTzM2S52CmlF7A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCuZBjemj8T6T417jzzfzmKa3iJZHl6S/SD28XhBd+kSgIgOh4Ib0HrSA5ZnWQxqLq1HK3f5rOBYq1sOYmh7p+nGwQ="}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/node-redshift-0.1.3.tgz_1493355696222_0.7438894736114889"}},"0.1.4":{"name":"node-redshift","version":"0.1.4","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"bluebird":"^3.5.0","commander":"^2.9.0","migrate":"^0.2.2","pg":"^6.1.2","sql-bricks":"^1.2.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["redshift","aws","node redshift","aws redshfit"],"bin":{"node-redshift":"./bin/node-redshift"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"c19916c30090772da4162d024f8581f10aec3a1d","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.1.4","_shasum":"abaac694064d6e2e047b9e244b95b00612bc04f4","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"abaac694064d6e2e047b9e244b95b00612bc04f4","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.1.4.tgz","integrity":"sha512-fSm90N3RzvMAqp+fF7eb/D+bQb5dr1IMdQoOYQ+vpuTqLwh/YDnVrr4sLHhKGPQtUOhlIX8eEtPBjCa9RDraSA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/pPm778CZiqqkoPfIZ+SsgvDeimqoYfE/k5SmJh/xRgIhAJP3ekNRjiZFK9YTSoftIZQIawDNIXdF8VoXEPPPqASn"}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-redshift-0.1.4.tgz_1496152429402_0.6283483104780316"}},"0.1.5":{"name":"node-redshift","version":"0.1.5","description":"A simple collection of tools to help you get started with Amazon Redshift from node.js","main":"index.js","dependencies":{"bluebird":"^3.5.0","commander":"^2.9.0","migrate":"^0.2.2","pg":"^6.1.2","sql-bricks":"^1.2.3"},"repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["redshift","aws","node redshift","aws redshfit"],"bin":{"node-redshift":"./bin/node-redshift"},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","gitHead":"fe0bf8f753d7edc7e8748c4c7de0f099ba56c6f1","bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"homepage":"https://github.com/dmanjunath/node-redshift#readme","_id":"node-redshift@0.1.5","_shasum":"c6c7cff16d230a148094225f20072939b66582f0","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"},"dist":{"shasum":"c6c7cff16d230a148094225f20072939b66582f0","tarball":"https://registry.npmjs.org/node-redshift/-/node-redshift-0.1.5.tgz","integrity":"sha512-jAqOmlhqIVkfSkjBJXVCvU7MjKZXHFZ9OKw3PgANHCZ3wFH0UO7MupEPn5XwcUM+8Rn6ANZRgPJH20Bm4x4LJA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDm09lemAbyej514O2Je7N5M4s3bbZ2okXCqat0L8H38AiEAyEsm3c+b3ZSIGh4kKzU4ddjwaYsDwXkIZrPQSYNlSVE="}]},"maintainers":[{"name":"dmanjunath","email":"dheerajmanju1@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-redshift-0.1.5.tgz_1499190872960_0.967705654213205"}}},"author":{"name":"Dheeraj Manjunath @dmanjunath"},"license":"MIT","readmeFilename":"README.md","homepage":"https://github.com/dmanjunath/node-redshift#readme","repository":{"type":"git","url":"git+https://github.com/dmanjunath/node-redshift.git"},"bugs":{"url":"https://github.com/dmanjunath/node-redshift/issues"},"keywords":["redshift","aws","node redshift","aws redshfit"],"users":{"wstowersguestdna":true,"sarnsdev":true,"akinjide":true}}