From f7797bda37754c6698a171fbe138de554305dcab Mon Sep 17 00:00:00 2001 From: joelchu Date: Sun, 22 Sep 2019 13:52:39 +0800 Subject: [PATCH 1/4] going back to update the @jsonql/koa --- packages/@jsonql/koa/index.js | 6 +++++- packages/@jsonql/koa/tests/auth.test.js | 2 +- packages/@jsonql/koa/tests/contractWithAuth.test.js | 1 - packages/@jsonql/koa/tests/fail.test.js | 2 +- packages/@jsonql/koa/tests/helpers/browser.js | 2 +- packages/@jsonql/koa/tests/helpers/server.js | 4 ++-- packages/@jsonql/koa/tests/helpers/sub-server.js | 2 +- packages/@jsonql/koa/tests/node-client.donttest.js | 2 +- packages/contract-cli/package.json | 2 +- packages/contract-cli/src/ast/jsdoc.js | 1 + packages/koa/package.json | 2 +- 11 files changed, 15 insertions(+), 11 deletions(-) diff --git a/packages/@jsonql/koa/index.js b/packages/@jsonql/koa/index.js index f7df12b2..bc32779c 100644 --- a/packages/@jsonql/koa/index.js +++ b/packages/@jsonql/koa/index.js @@ -18,7 +18,7 @@ import { configCheck } from './src/options' import { getDebug } from './src/utils' const debug = getDebug('main') // main -export default function jsonqlKoa(config = {}) { +function jsonqlKoa(config = {}) { // first check the config const opts = configCheck(config) debug('[jsonql-koa] init opts', opts) @@ -45,3 +45,7 @@ export default function jsonqlKoa(config = {}) { // finally return compose(middlewares) } + +export { + jsonqlKoa +} diff --git a/packages/@jsonql/koa/tests/auth.test.js b/packages/@jsonql/koa/tests/auth.test.js index 6f627ba8..9081738d 100644 --- a/packages/@jsonql/koa/tests/auth.test.js +++ b/packages/@jsonql/koa/tests/auth.test.js @@ -7,7 +7,7 @@ const { createQuery } = require('jsonql-utils') const fsx = require('fs-extra') const { merge } = require('lodash') const { HELLO_FN } = require('jsonql-constants') -const jsonqlMiddleware = require(join(__dirname, '..', 'index')) +// const jsonqlMiddleware = require(join(__dirname, '..', 'index')) const { type, headers, dirs, bearer, contractKeyName } = require('./fixtures/options') const createServer = require('./helpers/server') const myKey = '4670994sdfkl'; diff --git a/packages/@jsonql/koa/tests/contractWithAuth.test.js b/packages/@jsonql/koa/tests/contractWithAuth.test.js index beb345c8..811f0494 100644 --- a/packages/@jsonql/koa/tests/contractWithAuth.test.js +++ b/packages/@jsonql/koa/tests/contractWithAuth.test.js @@ -22,7 +22,6 @@ test.before((t) => { test.after( () => { fsx.removeSync(join(dirs.contractDir, dir)) - }) diff --git a/packages/@jsonql/koa/tests/fail.test.js b/packages/@jsonql/koa/tests/fail.test.js index c7a6acd6..a5e69c66 100644 --- a/packages/@jsonql/koa/tests/fail.test.js +++ b/packages/@jsonql/koa/tests/fail.test.js @@ -3,7 +3,7 @@ const test = require('ava') const superkoa = require('superkoa') const { join } = require('path') const debug = require('debug')('jsonql-koa:test:fail') -const jsonqlMiddleware = require(join(__dirname, '..', 'index')) +// const jsonqlMiddleware = require(join(__dirname, '..', 'index')) const { type, headers, dirs } = require('./fixtures/options') const fsx = require('fs-extra') diff --git a/packages/@jsonql/koa/tests/helpers/browser.js b/packages/@jsonql/koa/tests/helpers/browser.js index bdabdc3b..bfe55df7 100644 --- a/packages/@jsonql/koa/tests/helpers/browser.js +++ b/packages/@jsonql/koa/tests/helpers/browser.js @@ -2,7 +2,7 @@ const serverIoCore = require('server-io-core') const { join } = require('path') -const jsonqlKoa = require('../../main') +const { jsonqlKoa } = require('../../main') const baseDir = join(__dirname, '..', 'fixtures') diff --git a/packages/@jsonql/koa/tests/helpers/server.js b/packages/@jsonql/koa/tests/helpers/server.js index 4c69beac..92b4e289 100644 --- a/packages/@jsonql/koa/tests/helpers/server.js +++ b/packages/@jsonql/koa/tests/helpers/server.js @@ -3,7 +3,7 @@ const Koa = require('koa') const { join } = require('path') const bodyparser = require('koa-bodyparser') -const jsonqlKoa = require('../../main') +const { jsonqlKoa } = require('../../main') console.info(jsonqlKoa) const { type, headers, dirs } = require('../fixtures/options') const fsx = require('fs-extra') @@ -12,7 +12,7 @@ const myKey = '4670994sdfkl'; module.exports = (config={}, dir = '') => { const app = new Koa() app.use(bodyparser()) - app.use(jsonqlKoa.default( + app.use(jsonqlKoa( Object.assign({},{ resolverDir: dirs.resolverDir, contractDir: join(dirs.contractDir, dir) diff --git a/packages/@jsonql/koa/tests/helpers/sub-server.js b/packages/@jsonql/koa/tests/helpers/sub-server.js index 29bd9b87..63aed5b3 100644 --- a/packages/@jsonql/koa/tests/helpers/sub-server.js +++ b/packages/@jsonql/koa/tests/helpers/sub-server.js @@ -2,7 +2,7 @@ const { join } = require('path') const fixturesDir = join(__dirname, '..', 'fixtures') const serverIoCore = require('server-io-core') -const jsonqlKoa = require('../../main') +const { jsonqlKoa } = require('../../main') function startSubServer(msPort) { return serverIoCore({ diff --git a/packages/@jsonql/koa/tests/node-client.donttest.js b/packages/@jsonql/koa/tests/node-client.donttest.js index c749becf..67d007a9 100644 --- a/packages/@jsonql/koa/tests/node-client.donttest.js +++ b/packages/@jsonql/koa/tests/node-client.donttest.js @@ -6,7 +6,7 @@ const debug = require('debug')('jsonql-koa:test:node-client') const nodeClient = require('jsonql-node-client') const serverIoCore = require('server-io-core') // setup -const jsonqlKoa = require('../') +// const jsonqlKoa = require('../') const hello = require('./helpers/hello') const baseDir = join(__dirname, 'fixtures') const clientContractDir = join(__dirname, 'fixtures', 'tmp', 'client6002') diff --git a/packages/contract-cli/package.json b/packages/contract-cli/package.json index 740acd47..ad906242 100755 --- a/packages/contract-cli/package.json +++ b/packages/contract-cli/package.json @@ -24,7 +24,7 @@ "test:watch": "DEBUG=jsonql-contract:* ava tests/watch.test.js", "test:config": "DEBUG=jsonql-contract:* ava tests/config-params.test.js", "test:custom": "DEBUG=jsonql-contract:* ava tests/custom-login.test.js", - "test:debug": "DEBUG=jsonql-contract:* ava tests/koa-debug.test.js" + "test:debug": "DEBUG=jsonql-contract* ava tests/koa-debug.test.js" }, "keywords": [ "jsonql", diff --git a/packages/contract-cli/src/ast/jsdoc.js b/packages/contract-cli/src/ast/jsdoc.js index 7ab0195e..5c84d691 100644 --- a/packages/contract-cli/src/ast/jsdoc.js +++ b/packages/contract-cli/src/ast/jsdoc.js @@ -172,6 +172,7 @@ const search = function(output, name = '') { */ const searchForParams = function(output) { const result = search(output) + debug('searchForParams', result) if (result.name && !result.params) { debug(`params is no defined?`, result) debug(output) diff --git a/packages/koa/package.json b/packages/koa/package.json index 4af2a80f..e52215fa 100644 --- a/packages/koa/package.json +++ b/packages/koa/package.json @@ -72,7 +72,7 @@ "esm": "^3.2.25", "fs-extra": "^8.1.0", "jsonql-constants": "^1.8.3", - "jsonql-contract": "^1.7.11", + "jsonql-contract": "^1.7.12", "jsonql-errors": "^1.1.3", "jsonql-jwt": "^1.3.2", "jsonql-node-client": "^1.1.9", -- Gitee From e41b4cb3021f92edc091800ec5b19d78900d6d7c Mon Sep 17 00:00:00 2001 From: joelchu Date: Sun, 22 Sep 2019 13:53:46 +0800 Subject: [PATCH 2/4] test passed --- packages/@jsonql/koa/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/@jsonql/koa/package.json b/packages/@jsonql/koa/package.json index 261d09c2..f4a9955d 100644 --- a/packages/@jsonql/koa/package.json +++ b/packages/@jsonql/koa/package.json @@ -72,7 +72,7 @@ "esm": "^3.2.25", "fs-extra": "^8.1.0", "jsonql-constants": "^1.8.3", - "jsonql-contract": "^1.7.9", + "jsonql-contract": "^1.7.12", "jsonql-errors": "^1.1.3", "jsonql-jwt": "^1.3.2", "jsonql-node-client": "^1.1.9", -- Gitee From 9560fbbba6ca15ec81dc29a91d79f5a2ff447b3e Mon Sep 17 00:00:00 2001 From: joelchu Date: Sun, 22 Sep 2019 16:31:57 +0800 Subject: [PATCH 3/4] The same weird shit happen in the @jsonql/koa now --- packages/@jsonql/koa/package.json | 3 ++- packages/contract-cli/src/ast/jsdoc.js | 2 +- packages/node-client/package.json | 5 +++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/@jsonql/koa/package.json b/packages/@jsonql/koa/package.json index f4a9955d..d26c989b 100644 --- a/packages/@jsonql/koa/package.json +++ b/packages/@jsonql/koa/package.json @@ -81,13 +81,14 @@ "jsonql-utils": "^0.6.10", "jsonql-web-console": "^0.4.3", "koa": "^2.8.1", + "koa-bodyparser": "^4.2.1", "koa-compose": "^4.1.0", + "koa-cors": "0.0.16", "lodash": "^4.17.15" }, "devDependencies": { "ava": "^2.4.0", "jwt-decode": "^2.2.0", - "koa-bodyparser": "^4.2.1", "nyc": "^14.1.1", "request": "^2.88.0", "server-io-core": "^1.2.0", diff --git a/packages/contract-cli/src/ast/jsdoc.js b/packages/contract-cli/src/ast/jsdoc.js index 5c84d691..26963576 100644 --- a/packages/contract-cli/src/ast/jsdoc.js +++ b/packages/contract-cli/src/ast/jsdoc.js @@ -105,7 +105,7 @@ const foldParams = function(params) { p.keys = children[p.name] } return p; - }); + }) } return params; } diff --git a/packages/node-client/package.json b/packages/node-client/package.json index 7bfc26b8..25bc255b 100755 --- a/packages/node-client/package.json +++ b/packages/node-client/package.json @@ -39,14 +39,15 @@ "debug": "^4.1.1", "fs-extra": "^8.1.0", "jsonql-constants": "^1.8.3", - "jsonql-contract": "^1.7.9", + "jsonql-contract": "^1.7.12", "jsonql-errors": "^1.1.3", "jsonql-jwt": "^1.3.2", "jsonql-params-validator": "^1.4.11", "jsonql-utils": "^0.6.10", "lodash.merge": "^4.6.2", "node-cache": "^4.2.1", - "request": "^2.88.0" + "request": "^2.88.0", + "superkoa": "^1.0.3" }, "devDependencies": { "ava": "^2.4.0", -- Gitee From 8c579eff59d6efacd9f91bca992959172bececa5 Mon Sep 17 00:00:00 2001 From: joelchu Date: Sun, 22 Sep 2019 16:50:22 +0800 Subject: [PATCH 4/4] The strangest bug I have ever encounter so far, no matter what I tried it works here with the contract-cli but not when I am using in the application. Therefore set another debug to see what was being read from the jsdoc parser --- packages/contract-cli/package.json | 2 +- packages/contract-cli/src/ast/jsdoc.js | 8 ++++++-- packages/contract-cli/tests/koa-debug.test.js | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/contract-cli/package.json b/packages/contract-cli/package.json index ad906242..1ac575fd 100755 --- a/packages/contract-cli/package.json +++ b/packages/contract-cli/package.json @@ -1,6 +1,6 @@ { "name": "jsonql-contract", - "version": "1.7.12", + "version": "1.7.13", "description": "JS API / command line tool to generate the contract.json for jsonql", "main": "index.js", "files": [ diff --git a/packages/contract-cli/src/ast/jsdoc.js b/packages/contract-cli/src/ast/jsdoc.js index 26963576..3c560aa9 100644 --- a/packages/contract-cli/src/ast/jsdoc.js +++ b/packages/contract-cli/src/ast/jsdoc.js @@ -153,8 +153,12 @@ const search = function(output, name = '') { // @TODO find out what the hells going on here return res.longname === 'module.exports' }).map(res => { + let resolverName = res.meta.code.value || res.meta.code.name + debug(`----------------${resolverName}---------------------`) + debug('res.meta', inspect(res.meta, false, null)) + debug('res.params', inspect(res.params, false, null)) return { - name: res.meta.code.value || res.meta.code.name, + name: resolverName, description: res.description || false, params: res.params ? ( foldParams( processParams(res.params) ) || false ) : ( res.undocumented ? false : [] ), @@ -172,7 +176,7 @@ const search = function(output, name = '') { */ const searchForParams = function(output) { const result = search(output) - debug('searchForParams', result) + // debug('searchForParams', result) if (result.name && !result.params) { debug(`params is no defined?`, result) debug(output) diff --git a/packages/contract-cli/tests/koa-debug.test.js b/packages/contract-cli/tests/koa-debug.test.js index 1d7db19e..de0885fe 100644 --- a/packages/contract-cli/tests/koa-debug.test.js +++ b/packages/contract-cli/tests/koa-debug.test.js @@ -20,7 +20,7 @@ test(`It should able to generate a contract without error`, async t => { returnAs: 'json' }) - debug(result) + debug('%O', result) t.truthy(result.query) }) -- Gitee