From 16d65bb836d8d95d4f1bf241eefadf5602220ede Mon Sep 17 00:00:00 2001 From: izavits Date: Thu, 15 Dec 2016 16:24:56 +0200 Subject: [PATCH 1/2] Move dataTypeGen to sbvrTypes and use it from there --- AbstractSQLCompiler.coffee | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/AbstractSQLCompiler.coffee b/AbstractSQLCompiler.coffee index c0d8bd35..2dbcbc91 100644 --- a/AbstractSQLCompiler.coffee +++ b/AbstractSQLCompiler.coffee @@ -40,20 +40,6 @@ else Promise.rejected('is an unsupported type: ' + dataType) - dataTypeGen = (engine, dataType, necessity, index = '', defaultValue) -> - necessity = if necessity then ' NOT NULL' else ' NULL' - defaultValue = if defaultValue then " DEFAULT #{defaultValue}" - if index != '' - index = ' ' + index - dbType = sbvrTypes[dataType]?.types?[engine] - if dbType? - if _.isFunction(dbType) - return dbType(necessity, index) - defaultValue ?= '' - return dbType + defaultValue + necessity + index - else - throw new Error("Unknown data type '#{dataType}' for engine: #{engine}") - compileRule = do -> optimiser = AbstractSQLOptimiser.createInstance() compiler = AbstractSQLRules2SQL.createInstance() @@ -73,7 +59,7 @@ createSQL = 'CREATE TABLE ' + ifNotExists + '"' + table.name + '" (\n\t' for { dataType, fieldName, required, index, references, defaultValue } in table.fields - createSQL += '"' + fieldName + '" ' + dataTypeGen(engine, dataType, required, index, defaultValue) + '\n,\t' + createSQL += '"' + fieldName + '" ' + sbvrTypes[dataType].dataTypeGen(engine, dataType, required, index, defaultValue) + '\n,\t' if dataType in [ 'ForeignKey', 'ConceptType' ] foreignKeys.push({ fieldName, references }) depends.push(references.tableName) From 176d28dc8ca64e45ace4a5542fb189c07b500022 Mon Sep 17 00:00:00 2001 From: izavits Date: Mon, 19 Dec 2016 12:39:59 +0200 Subject: [PATCH 2/2] Add changelog entry and update package.json --- CHANGELOG.md | 2 ++ package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7667b2cb..19dd29c4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,5 @@ +* Move dataTypeGen function to sbvr-types module + v2.2.0 * Added support for numbered binds. diff --git a/package.json b/package.json index b02e7a1c..970aedb3 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "repository": "https://github.com/resin-io-modules/abstract-sql-compiler.git", "author": "", "dependencies": { - "@resin/sbvr-types": "^1.0.0", + "@resin/sbvr-types": "^1.3.0", "bluebird": "^3.0.6", "lodash": "^4.0.0", "ometa-js": "^1.4.1"