Comparing version 1.15.3 to 1.15.4
@@ -41,2 +41,4 @@ var util = require(__dirname+'/util.js'); | ||
this._tableReady = false; | ||
this._onTableCreated = []; | ||
this._onTableReady = []; | ||
this._indexesFetched = false; // Whether the indexes were fetched or not | ||
@@ -225,2 +227,5 @@ this._indexesToCreate = 0; | ||
this.emit('ready', this); | ||
while (this._getModel()._onTableReady.length > 0) { | ||
this._getModel()._onTableReady.shift()(); | ||
} | ||
} | ||
@@ -250,2 +255,6 @@ | ||
self._getModel()._tableCreated = true; | ||
while (this._getModel()._onTableCreated.length > 0) { | ||
this._getModel()._onTableCreated.shift()(); | ||
} | ||
self.emit('created'); | ||
@@ -319,5 +328,3 @@ | ||
else { | ||
self.once('created', function() { | ||
fetch(); | ||
}); | ||
self._getModel()._onTableCreated.push(fetch); | ||
} | ||
@@ -373,5 +380,3 @@ | ||
else { | ||
self.once('created', function() { | ||
ensureIndex(); | ||
}); | ||
self._getModel()._onTableCreated.push(ensureIndex); | ||
} | ||
@@ -458,4 +463,4 @@ }) | ||
else { | ||
joinedModel.once('created', function() { | ||
query: r.branch( | ||
joinedModel._getModel()._onTableCreated.push(function() { | ||
r.branch( | ||
r.table(tableName).indexList().contains(rightKey), | ||
@@ -568,3 +573,3 @@ r.table(tableName).indexWait(rightKey), | ||
else { | ||
self.once('created', function() { | ||
self._getModel()._onTableCreated.push(function() { | ||
query.run().then(function() { | ||
@@ -661,3 +666,3 @@ self._indexWasCreated('local'); | ||
else { | ||
joinedModel.once('created', function() { | ||
joinedModel._getModel()._onTableCreated.push(function() { | ||
query.run().then(function() { | ||
@@ -787,3 +792,3 @@ joinedModel._indexWasCreated('local'); | ||
else { | ||
self.once('created', function() { | ||
self._getModel()._onTableCreated.push(function() { | ||
queryIndex1.run().then(function() { | ||
@@ -822,3 +827,3 @@ self._indexWasCreated('local'); | ||
else { | ||
joinedModel.once('created', function() { | ||
joinedModel._getModel()._onTableCreated.push(function() { | ||
queryIndex2.run().then(function() { | ||
@@ -907,3 +912,3 @@ joinedModel._indexWasCreated('local'); | ||
else { | ||
linkModel.once('ready', function() { | ||
linkModel._getModel()._onTableCreated.push(function() { | ||
query.run().then(successCb).error(errorCb) | ||
@@ -1045,5 +1050,3 @@ }); | ||
else { | ||
self.once('ready', function() { | ||
insert(); | ||
}) | ||
self._getModel()._onTableReady.push(insert); | ||
} | ||
@@ -1050,0 +1053,0 @@ |
@@ -95,3 +95,3 @@ var Promise = require('bluebird'); | ||
p = new Promise(function(resolve, reject) { | ||
self._model.once('ready', function() { | ||
self._model._onTableReady.push(function() { | ||
self._query.run(fullOptions).then(function(result) { | ||
@@ -98,0 +98,0 @@ if (parse === true) { |
@@ -107,3 +107,3 @@ var rethinkdbdash = require('rethinkdbdash'); | ||
result, | ||
{created: 1}, | ||
{created: 0}, | ||
r.tableCreate(name, {primaryKey: model._pk}) | ||
@@ -122,3 +122,3 @@ ) | ||
result, | ||
{created: 1}, | ||
{created: 0}, | ||
r.tableCreate(name, {primaryKey: model._pk}) | ||
@@ -125,0 +125,0 @@ ) |
@@ -162,3 +162,7 @@ var util = require(__dirname+'/util.js'); | ||
if (typeof str !== "string") { | ||
if ((typeof str === 'function') && (Array.isArray(str._query))) { | ||
// We do not check ReQL terms | ||
} | ||
else if (typeof str !== "string") { | ||
if (options.enforce_type === "strict") { | ||
@@ -279,3 +283,6 @@ strictType(prefix, "string"); | ||
if ((typeof number !== "number") || (isFinite(number) === false)) { | ||
if ((typeof number === 'function') && (Array.isArray(number._query))) { | ||
// We do not check ReQL terms | ||
} | ||
else if ((typeof number !== "number") || (isFinite(number) === false)) { | ||
if (options.enforce_type === "strict") { | ||
@@ -654,3 +661,2 @@ strictType(prefix, "finite number"); | ||
&& (self._schema[key] === undefined)) { | ||
console.log(self) | ||
delete object[key]; | ||
@@ -657,0 +663,0 @@ } |
{ | ||
"name": "thinky", | ||
"version": "1.15.3", | ||
"version": "1.15.4", | ||
"description": "RethinkDB ORM for Node.js", | ||
@@ -10,3 +10,3 @@ "main": "lib/thinky.js", | ||
"scripts": { | ||
"test": "mocha --check-leaks -t 5000" | ||
"test": "mocha --check-leaks -t 20000" | ||
}, | ||
@@ -29,8 +29,8 @@ "repository": { | ||
"rethinkdbdash": "~1.15.0", | ||
"bluebird": "~ 2.1.3", | ||
"bluebird": "~2.1.3", | ||
"validator": "~ 3.22.1" | ||
}, | ||
"devDependencies": { | ||
"mocha": ">= 1.13.0" | ||
"mocha": "~1.21.5" | ||
} | ||
} |
178890
4228
Updatedbluebird@~2.1.3