Skip to content

@google-cloud/bigquery v0.4.0

Choose a tag to compare

@stephenplusplus stephenplusplus released this 17 Oct 21:24

Updating

$ npm install @google-cloud/bigquery@0.4.0

⚠️ Breaking Changes

Promises have arrived!

Issue: #551
PR: #1701

It's been a long time coming, but we're finally here. We've shipped promise support in the Google Cloud BigQuery module!

Do I have to use promises?

Nope, carry on. (But keep reading if you use streams)

How do I use promises?

Don't pass a callback:

var bigquery = require('@google-cloud/bigquery')();

bigquery.getDatasets()
  .then(function(data) {
    var datasets = data[0];
  })
  .catch(function(err) {});
How do I use a method as a stream?

All of the streaming functionality from our methods have been moved to their own method.

var bigquery = require('@google-cloud/bigquery')();

- bigquery.getDatasets()
+ bigquery.getDatasetsStream()
    .on('data', function(dataset) {})

- bigquery.getJobs()
+ bigquery.getJobsStream()
    .on('data', function(job) {})

- bigquery.query('SELECT ...')
+ bigquery.createQueryStream('SELECT ...')
    .on('data', function(row) {})
var dataset = bigquery.dataset('my-dataset-name');

- dataset.getTables()
+ dataset.getTablesStream()
    .on('data', function(table) {})

- dataset.query('SELECT ...')
+ dataset.createQueryStream('SELECT ...')
    .on('data', function(row) {})
var table = dataset.table('my-table-name');

- table.getRows()
+ table.createReadStream()
    .on('data', function(row) {})

- table.query('SELECT ...')
+ table.createQueryStream('SELECT ...')
    .on('data', function(row) {})