qcobjects-cli 2.3.33 → 2.3.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.gitlab-ci.yml ADDED
@@ -0,0 +1,15 @@
1
+ image: node:latest
2
+
3
+ stages:
4
+ - deploy
5
+
6
+ deploy:
7
+ stage: deploy
8
+ rules:
9
+ - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH || $CI_COMMIT_REF_NAME =~ /^v\d+\.\d+\.\d+.*$/
10
+ changes:
11
+ - package.json
12
+ script:
13
+ - echo "registry=https://registry.npmjs.org/:_authToken=${NPM_TOKEN}">.npmrc
14
+ - npm ci
15
+ - npm publish
package/VERSION CHANGED
@@ -1 +1 @@
1
- 2.3.33
1
+ 2.3.44
@@ -180,11 +180,13 @@ Package("org.quickcorp.qcobjects.cli",[
180
180
  var _dirnames = function (pathname){
181
181
  fs.readdir(pathname,{withFileTypes:true},function (err,files){
182
182
  var _pathnames = [];
183
- files.filter((f)=>{return f.isDirectory();}).map((d)=>{
183
+ if (typeof files !== "undefined"){
184
+ files.filter((f)=>{return f.isDirectory();}).map((d)=>{
184
185
  _pathnames.push(pathname+"/"+d.name);
185
186
  callback(pathname+"/"+d.name);
186
187
  _dirnames(pathname+"/"+d.name);
187
188
  });
189
+ }
188
190
  _main_pathnames = _main_pathnames.concat(_pathnames);
189
191
  });
190
192
  return _main_pathnames;
@@ -227,6 +229,7 @@ Package("org.quickcorp.qcobjects.cli",[
227
229
 
228
230
  },
229
231
  create:function (_appName, options){
232
+ const version = global.__get_version__();
230
233
  let switchCommander = this;
231
234
  let appName = (typeof _appName ==="undefined" || _appName === true)?("MyAppName"):(_appName);
232
235
 
@@ -244,119 +247,222 @@ Package("org.quickcorp.qcobjects.cli",[
244
247
  rl.close();
245
248
  let giturl = answer;
246
249
 
247
- let createAppCommandCustom = "echo \
248
- { \
249
- \"name\": \""+appName.toLowerCase()+"\", \
250
- \"repository\": { \
251
- \"type\": \"git\", \
252
- \"url\": \""+giturl+`" \
253
- }, \
254
- "description": "This is a custom NPM template app from ${options.createCustom} generated with QCObjects.", \
255
- "main": "js/init.js", \
256
- "license": "LGPL-3.0-or-later", \
257
- "dependencies": { \
258
- "${options.createCustom}": "latest", \
259
- "qcobjects": "latest" \
260
- } \
261
- } > package.json`;
262
-
263
-
264
- let createAppCommandPWA = "echo \
265
- { \
266
- \"name\": \""+appName.toLowerCase()+"\", \
267
- \"repository\": { \
268
- \"type\": \"git\", \
269
- \"url\": \""+giturl+"\" \
270
- }, \
271
- \"description\": \"Awesome PWA application that will help you achieve your dreams.\", \
272
- \"main\": \"js/init.js\", \
273
- \"license\": \"LGPL-3.0-or-later\", \
274
- \"dependencies\": { \
275
- \"qcobjectsnewapp\": \"latest\", \
276
- \"qcobjects\": \"latest\" \
277
- } \
278
- } > package.json";
279
-
280
- let createAppCommandAMP = "echo \
281
- { \
282
- \"name\": \""+appName.toLowerCase()+"\", \
283
- \"repository\": { \
284
- \"type\": \"git\", \
285
- \"url\": \""+giturl+"\" \
286
- }, \
287
- \"description\": \"Awesome AMP application that will help you achieve your dreams.\", \
288
- \"main\": \"js/init.js\", \
289
- \"license\": \"LGPL-3.0-or-later\", \
290
- \"dependencies\": { \
291
- \"qcobjects-ecommerce-amp\": \"latest\", \
292
- \"qcobjects\": \"latest\" \
293
- } \
294
- } > package.json";
295
-
296
- let createAppCommandPHP = `echo \
297
- { \
298
- "name": "${appName.toLowerCase()}", \
299
- "repository": {\
300
- "type": "git",\
301
- "url": "${giturl}"\
302
- },\
303
- "description": "Awesome PHP application that will help you achieve your dreams.",\
304
- "main": "js/init.js",\
305
- "license": "LGPL-3.0-or-later",\
306
- "devDependencies": {\
307
- "jasmine": "latest",\
308
- "qcobjects-cli": "latest"\
309
- },\
310
- "dependencies": {\
311
- "qcobjectsnewphp": "latest",\
312
- "qcobjects": "latest",\
313
- "qcobjects-sdk": "latest"\
314
- }\
315
- } > package.json`;
250
+ let createAppCommandCustom = `
251
+ {
252
+ "name": "${appName.toLowerCase()}",
253
+ "version": "0.0.1",
254
+ "repository": {
255
+ "type": "git",
256
+ "url": "${giturl}"
257
+ },
258
+ "description": "This is a custom NPM template app from ${options.createCustom} generated with QCObjects.",
259
+ "main": "js/init.js",
260
+ "license": "LGPL-3.0-or-later",
261
+ "scripts": {
262
+ "test": "(npx eslint *.js js/*.js js/packages/*.js --fix) && (npx jasmine)",
263
+ "sync": "git add . && git commit -am ",
264
+ "preversion": "npm i --upgrade && npm test",
265
+ "postversion": "git push && git push --tags",
266
+ "coverage": "nyc --reporter=lcov --reporter=text-summary npm run test",
267
+ "start": "node app.js",
268
+ "build": "exit 0"
269
+ },
270
+ "dependencies": {
271
+ "${options.createCustom}": "latest",
272
+ "qcobjects": "^${version.qcobjects}",
273
+ "qcobjects-sdk": "^${version.sdk}"
274
+ },
275
+ "devDependencies": {
276
+ "eslint": "^8.2.0",
277
+ "eslint-config-qcobjects": "latest",
278
+ "jasmine": "latest",
279
+ "qcobjects-cli": "^${version.cli}",
280
+ "grunt": "^1.4.1",
281
+ "grunt-contrib-jasmine": "^2.0.2",
282
+ "nyc": "^15.1.0"
283
+ }
284
+ }`;
285
+
286
+ let createAppCommandPWA = `
287
+ {
288
+ "name": "${appName.toLowerCase()}",
289
+ "version": "0.0.1",
290
+ "repository": {
291
+ "type": "git",
292
+ "url": "${giturl}"
293
+ },
294
+ "description": "Awesome PWA application that will help you achieve your dreams.",
295
+ "main": "js/init.js",
296
+ "license": "LGPL-3.0-or-later",
297
+ "scripts": {
298
+ "test": "(npx eslint *.js js/*.js js/packages/*.js --fix) && (npx jasmine)",
299
+ "sync": "git add . && git commit -am ",
300
+ "preversion": "npm i --upgrade && npm test",
301
+ "postversion": "git push && git push --tags",
302
+ "coverage": "nyc --reporter=lcov --reporter=text-summary npm run test",
303
+ "start": "node app.js",
304
+ "build": "exit 0"
305
+ },
306
+ "dependencies": {
307
+ "qcobjectsnewapp": "latest",
308
+ "qcobjects": "^${version.qcobjects}",
309
+ "qcobjects-sdk": "^${version.sdk}"
310
+ },
311
+ "devDependencies": {
312
+ "eslint": "^8.2.0",
313
+ "eslint-config-qcobjects": "latest",
314
+ "jasmine": "latest",
315
+ "qcobjects-cli": "^${version.cli}",
316
+ "grunt": "^1.4.1",
317
+ "grunt-contrib-jasmine": "^2.0.2",
318
+ "nyc": "^15.1.0"
319
+ }
320
+ }`;
321
+
322
+ let createAppCommandAMP = `echo
323
+ {
324
+ "name": "${appName.toLowerCase()}",
325
+ "version": "0.0.1",
326
+ "repository": {
327
+ "type": "git",
328
+ "url": "${giturl}"
329
+ },
330
+ "description": "Awesome AMP application that will help you achieve your dreams.",
331
+ "main": "js/init.js",
332
+ "license": "LGPL-3.0-or-later",
333
+ "scripts": {
334
+ "test": "(npx eslint *.js js/*.js js/packages/*.js --fix) && (npx jasmine)",
335
+ "sync": "git add . && git commit -am ",
336
+ "preversion": "npm i --upgrade && npm test",
337
+ "postversion": "git push && git push --tags",
338
+ "coverage": "nyc --reporter=lcov --reporter=text-summary npm run test",
339
+ "start": "node app.js",
340
+ "build": "exit 0"
341
+ },
342
+ "dependencies": {
343
+ "qcobjects-ecommerce-amp": "latest",
344
+ "qcobjects": "^${version.qcobjects}",
345
+ "qcobjects-sdk": "^${version.sdk}"
346
+ },
347
+ "devDependencies": {
348
+ "eslint": "^8.2.0",
349
+ "eslint-config-qcobjects": "latest",
350
+ "jasmine": "latest",
351
+ "qcobjects-cli": "^${version.cli}",
352
+ "grunt": "^1.4.1",
353
+ "grunt-contrib-jasmine": "^2.0.2",
354
+ "nyc": "^15.1.0"
355
+ }
356
+ }`;
357
+
358
+ let createAppCommandPHP = `
359
+ {
360
+ "name": "${appName.toLowerCase()}",
361
+ "version": "0.0.1",
362
+ "repository": {
363
+ "type": "git",
364
+ "url": "${giturl}"
365
+ },
366
+ "description": "Awesome PHP application that will help you achieve your dreams.",
367
+ "main": "js/init.js",
368
+ "license": "LGPL-3.0-or-later",
369
+ "scripts": {
370
+ "test": "(npx eslint *.js js/*.js js/packages/*.js --fix) && (npx jasmine)",
371
+ "sync": "git add . && git commit -am ",
372
+ "preversion": "npm i --upgrade && npm test",
373
+ "postversion": "git push && git push --tags",
374
+ "coverage": "nyc --reporter=lcov --reporter=text-summary npm run test",
375
+ "start": "node app.js",
376
+ "build": "exit 0"
377
+ },
378
+ "dependencies": {
379
+ "qcobjectsnewphp": "latest",
380
+ "qcobjects": "^${version.qcobjects}",
381
+ "qcobjects-sdk": "^${version.sdk}"
382
+ },
383
+ "devDependencies": {
384
+ "eslint": "^8.2.0",
385
+ "eslint-config-qcobjects": "latest",
386
+ "jasmine": "latest",
387
+ "qcobjects-cli": "^${version.cli}",
388
+ "grunt": "^1.4.1",
389
+ "grunt-contrib-jasmine": "^2.0.2",
390
+ "nyc": "^15.1.0"
391
+ }
392
+ }`;
316
393
 
317
394
  let createAppCommand;
318
395
  let appTemplateName;
396
+ let _package_json_content;
319
397
 
320
398
  if (options.createAmp){
321
399
  appTemplateName = "qcobjects-ecommerce-amp";
322
- createAppCommand = createAppCommandAMP;
400
+ _package_json_content = createAppCommandAMP;
323
401
  } else if (options.createPwa){
324
402
  appTemplateName = "qcobjectsnewapp";
325
- createAppCommand = createAppCommandPWA;
403
+ _package_json_content = createAppCommandPWA;
326
404
  } else if (options.createPhp){
327
405
  appTemplateName = "qcobjectsnewphp";
328
- createAppCommand = createAppCommandPHP;
406
+ _package_json_content = createAppCommandPHP;
329
407
  } else if (options.createCustom){
330
408
  appTemplateName = options.createCustom;
331
- createAppCommand = createAppCommandCustom;
409
+ _package_json_content = createAppCommandCustom;
332
410
  } else {
333
411
  appTemplateName = "qcobjectsnewapp";
334
- createAppCommand = createAppCommandPWA;
412
+ _package_json_content = createAppCommandPWA;
335
413
  }
336
414
  CONFIG.set("qcobjectsnewapp_path",CONFIG.get("node_modules_path")+"/"+appTemplateName);
337
- if (!process.platform.toLowerCase().startsWith("win")){
338
- createAppCommand = createAppCommand.replace(/(")/g, String.fromCharCode(92)+"\"");
339
- }
415
+ /* if (!process.platform.toLowerCase().startsWith("win")){
416
+ _package_json_content = _package_json_content.replace(/(")/g, String.fromCharCode(92)+"\"");
417
+ }*/
418
+ createAppCommand = "npm init -y";
419
+ let _package_json_file = path.resolve(CONFIG.get("projectPath"),"./package.json");
420
+ logger.debug("_package_json_file: "+_package_json_file);
340
421
  logger.debug(createAppCommand);
422
+
341
423
  exec(createAppCommand, (err, stdout, stderr) => {
342
- exec("npm cache verify && npm i --save-dev ", (err, stdout, stderr) => {
343
- Promise.resolve(switchCommander.copyTemplate()).then(()=>{
344
- logger.info("Good! Your application is getting done. You can play with QCObjects now!");
345
- logger.info("In about five seconds your server will start...");
346
- exec("qcobjects-createcert",(err,stdout,stderr)=>{
347
- logger.info("Test certificates generated");
348
- exec("npm uninstall "+appTemplateName+" --save && npm cache verify",(err,stdout,stderr)=>{
349
- switchCommander.generateServiceWorker(appName);
424
+ if (err) {
425
+ logger.warn(err);
426
+ process.exit(1);
427
+ return;
428
+ }
429
+ fs.writeFile(_package_json_file, _package_json_content, err => {
430
+ if (err) {
431
+ logger.warn(err);
432
+ process.exit(1);
433
+ return;
434
+ }
435
+
436
+ exec("npm cache verify && npm i --save-dev --legacy-peer-deps", (err, stdout, stderr) => {
437
+ if (err) {
438
+ logger.warn(err);
439
+ process.exit(1);
440
+ return;
441
+ }
442
+
443
+ Promise.resolve(switchCommander.copyTemplate())
444
+ .then(()=>{
445
+ logger.info("Good! Your application is getting done. You can play with QCObjects now!");
446
+ logger.info("In about five seconds your server will start...");
447
+ exec("qcobjects-createcert",(err,stdout,stderr)=>{
448
+ logger.info("Test certificates generated");
449
+
450
+ exec("npm uninstall "+appTemplateName+" --save && npm cache verify",(err,stdout,stderr)=>{
451
+ switchCommander.generateServiceWorker(appName);
452
+ });
453
+
454
+ }).stdout.on("data", function(data) {
455
+ console.log(data);
350
456
  });
351
- }).stdout.on("data", function(data) {
352
- console.log(data);
353
457
  });
458
+ }).stdout.on("data", function(data) {
459
+ console.log(data);
354
460
  });
355
- }).stdout.on("data", function(data) {
356
- console.log(data);
461
+
357
462
  });
463
+
358
464
  }).stdout.on("data", function(data) {
359
- console.log(data);
465
+ console.log("App generation started...");
360
466
  });
361
467
 
362
468
  });
@@ -375,7 +481,7 @@ Package("org.quickcorp.qcobjects.cli",[
375
481
  if (process.argv.length>1){
376
482
 
377
483
  switchCommander.program
378
- .version(global.__get_version__());
484
+ .version(global.__get_version_string__());
379
485
  switchCommander.program
380
486
  .command("create <appname>")
381
487
  .description("Creates an app with <appname>")
@@ -49,7 +49,16 @@ global.__get_version__ = function (){
49
49
  const package_config = require(absolutePath+"/package.json");
50
50
  const qcobjects_pkg_config = require("qcobjects/package.json");
51
51
  const qcobjects_sdk_pkg_config = require("qcobjects-sdk/package.json");
52
- return "QCObjects: v"+qcobjects_pkg_config.version+", SDK: v"+qcobjects_sdk_pkg_config.version+", CLI: v"+package_config.version;
52
+ return {
53
+ "qcobjects":qcobjects_pkg_config.version,
54
+ "sdk":qcobjects_sdk_pkg_config.version,
55
+ "cli":package_config.version
56
+ };
57
+ };
58
+
59
+ global.__get_version_string__ = function (){
60
+ const version = global.__get_version__();
61
+ return "QCObjects: v"+version.qcobjects+", SDK: v"+version.sdk+", CLI: v"+version.cli;
53
62
  };
54
63
 
55
64
 
@@ -118,3 +127,55 @@ try {
118
127
  logger.debug(e);
119
128
  logger.debug("Something went wrong trying to load config.json file in your project");
120
129
  }
130
+
131
+ (async function (){
132
+ /* Auto Discover dependencies (lib, handlers, commands) */
133
+ const path = require("path");
134
+ const projectPath = CONFIG.get("projectPath", `${process.cwd()}/`);
135
+ const loadLibs = async () => {
136
+ let _ret_;
137
+ if (CONFIG.get("autodiscover", false) || CONFIG.get("autodiscover_libs",false)){
138
+ _ret_ = Promise.all(Object.keys(require(`${projectPath}/package.json`).dependencies).filter((p)=>require(`${findPackageNodePath(p)}/${p}/package.json`).keywords.includes("qcobjects-lib")).map((p)=>Import(p))).then(()=>logger.info("Libs loaded"));
139
+ } else {
140
+ _ret_ = Promise.resolve();
141
+ logger.debug("To load libs, set autodiscover_libs to true in your config.json");
142
+ }
143
+ return _ret_;
144
+ };
145
+ const loadHandlers = async () => {
146
+ let _ret_;
147
+ if (CONFIG.get("autodiscover", false) || CONFIG.get("autodiscover_handlers",false)){
148
+ _ret_ = Promise.all(Object.keys(require(`${projectPath}/package.json`).dependencies).filter((p)=>require(`${findPackageNodePath(p)}/${p}/package.json`).keywords.includes("qcobjects-handler")).map((p)=>Import(p))).then(()=>logger.info("Handlers loaded"));
149
+ } else {
150
+ _ret_ = Promise.resolve();
151
+ logger.debug("To load handlers, set autodiscover_handlers to true in your config.json");
152
+ }
153
+ return _ret_;
154
+ };
155
+ const loadCommands = async () => {
156
+ let _ret_;
157
+ if (CONFIG.get("autodiscover", false) || CONFIG.get("autodiscover_commands",false)){
158
+ _ret_ = Promise.all(Object.keys(require(`${projectPath}/package.json`).dependencies).filter((p)=>require(`${findPackageNodePath(p)}/${p}/package.json`).keywords.includes("qcobjects-command")).map((p)=>Import(p))).then(()=>logger.info("Commands loaded"));
159
+ } else {
160
+ _ret_ = Promise.resolve();
161
+ logger.debug("To load commands, set autodiscover_commands to true in your config.json");
162
+ }
163
+ return _ret_;
164
+ };
165
+ if (CONFIG.get("autodiscover", false)
166
+ || CONFIG.get("autodiscover_libs",false)
167
+ || CONFIG.get("autodiscover_handlers",false)
168
+ || CONFIG.get("autodiscover_commands",false)
169
+ ){
170
+ logger.info("Auto discover is enabled");
171
+ } else if (!CONFIG.get("autodiscover", false)) {
172
+ logger.info("Auto discover is disabled");
173
+ logger.debug("To load all dependencies, set autodiscover to true in your config.json");
174
+ } else {
175
+ logger.info("Auto discover is disabled");
176
+ }
177
+
178
+ await loadLibs();
179
+ await loadHandlers();
180
+ await loadCommands();
181
+ })().then (()=>logger.info("Dependencies loaded"));
@@ -101,7 +101,7 @@ Package("org.quickcorp.qcobjects.main.http.gae.server",[
101
101
  let server = microservice.server;
102
102
  let request = microservice.request;
103
103
  this.cors();
104
- server.on("data", (data) => {
104
+ microservice.req.on("data", (data) => {
105
105
  // data from POST, GET
106
106
  var requestMethod = request.method.toLowerCase();
107
107
  var supportedMethods = {"post":microservice.post,
@@ -146,8 +146,12 @@ Package("org.quickcorp.qcobjects.main.http.gae.server",[
146
146
  done: function(){
147
147
  var microservice = this;
148
148
  var stream = microservice.stream;
149
- // stream.respond(microservice.headers);
150
- stream.writeHead(200, {"Content-Type": "text/plain"});
149
+ try {
150
+ stream.writeHead(200, microservice.headers);
151
+ } catch (e){
152
+ logger.debug("Something went wront while sending headers in http...");
153
+ logger.debug(e.toString());
154
+ }
151
155
  if (microservice.body != null){
152
156
  microservice.finishWithBody.call(microservice,stream);
153
157
  }
@@ -191,7 +195,7 @@ Package("org.quickcorp.qcobjects.main.http.gae.server",[
191
195
  "content-type": mime.getType(fileName),
192
196
  "cache-control": CONFIG.get("cacheControl", "max-age=31536000")
193
197
  };
194
- console.log("closing file", fileName);
198
+ logger.debug("closing file " + fileName);
195
199
  fs.closeSync(fd);
196
200
  stream.setHeader("content-length", headers["content-length"]);
197
201
  stream.setHeader("last-modified", headers["last-modified"]);
@@ -318,7 +322,7 @@ Package("org.quickcorp.qcobjects.main.http.gae.server",[
318
322
  _new_:function (){
319
323
  let oHTTPServer = this;
320
324
  const welcometo = "Welcome to \n";
321
- const instructions = "QCObjects GAE HTTPServer \n";
325
+ const instructions = "QCObjects Legacy HTTPServer \n";
322
326
  const logo = " .d88888b. .d8888b. .d88888b. 888 d8b 888 \r\nd88P\" \"Y88bd88P Y88bd88P\" \"Y88b888 Y8P 888 \r\n888 888888 888888 888888 888 \r\n888 888888 888 88888888b. 8888 .d88b. .d8888b888888.d8888b \r\n888 888888 888 888888 \"88b \"888d8P Y8bd88P\" 888 88K \r\n888 Y8b 888888 888888 888888 888 88888888888888 888 \"Y8888b. \r\nY88b.Y8b88PY88b d88PY88b. .d88P888 d88P 888Y8b. Y88b. Y88b. X88 \r\n \"Y888888\" \"Y8888P\" \"Y88888P\" 88888P\" 888 \"Y8888 \"Y8888P \"Y888 88888P' \r\n Y8b 888 \r\n d88P \r\n 888P\" ";
323
327
  console.log(welcometo);
324
328
  console.log(logo);
@@ -329,9 +333,11 @@ Package("org.quickcorp.qcobjects.main.http.gae.server",[
329
333
 
330
334
  const http = require("http");
331
335
 
332
- this.server = http.createServer((req, res) => {});
336
+ oHTTPServer.server = http.createServer((req, res) => {
333
337
 
334
- var server = this.server;
338
+ });
339
+
340
+ var server = oHTTPServer.server;
335
341
 
336
342
  server.on("error", (err) => console.error(err));
337
343
 
@@ -398,6 +404,7 @@ Package("org.quickcorp.qcobjects.main.http.gae.server",[
398
404
  routeParams:selectedRouteParams,
399
405
  server:server,
400
406
  stream:res,
407
+ req:req,
401
408
  request:request
402
409
  });
403
410
  });
@@ -101,7 +101,7 @@ Package("org.quickcorp.qcobjects.main.http.server",[
101
101
  let server = microservice.server;
102
102
  let request = microservice.request;
103
103
  this.cors();
104
- server.on("data", (data) => {
104
+ microservice.req.on("data", (data) => {
105
105
  // data from POST, GET
106
106
  var requestMethod = request.method.toLowerCase();
107
107
  var supportedMethods = {"post":microservice.post,
@@ -333,9 +333,11 @@ Package("org.quickcorp.qcobjects.main.http.server",[
333
333
 
334
334
  const http = require("http");
335
335
 
336
- this.server = http.createServer((req, res) => {});
336
+ oHTTPServer.server = http.createServer((req, res) => {
337
337
 
338
- var server = this.server;
338
+ });
339
+
340
+ var server = oHTTPServer.server;
339
341
 
340
342
  server.on("error", (err) => console.error(err));
341
343
 
@@ -402,6 +404,7 @@ Package("org.quickcorp.qcobjects.main.http.server",[
402
404
  routeParams:selectedRouteParams,
403
405
  server:server,
404
406
  stream:res,
407
+ req:req,
405
408
  request:request
406
409
  });
407
410
  });
package/package.json CHANGED
@@ -1,20 +1,27 @@
1
1
  {
2
2
  "name": "qcobjects-cli",
3
- "version": "2.3.33",
3
+ "version": "2.3.44",
4
4
  "description": "qcobjects cli command line tool",
5
5
  "main": "qcobjects-cli.js",
6
6
  "scripts": {
7
7
  "sync": "git add . && git commit -am ",
8
8
  "test": "npx eslint **/*.js --fix && $(npm bin)/jasmine",
9
9
  "preversion": "npm i --upgrade && npm test",
10
- "postversion": "git push && git push --tags && npm publish"
10
+ "postversion": "git push && git push --tags"
11
11
  },
12
12
  "dependencies": {
13
13
  "commander": "^2.20.3",
14
14
  "mime": "^2.4.7",
15
- "qcobjects": "latest",
15
+ "qcobjects": "^2.3.66-lts",
16
16
  "qcobjects-sdk": "latest",
17
- "yaml": "^1.8.0"
17
+ "yaml": "^1.10.2"
18
+ },
19
+ "devDependencies": {
20
+ "eslint": "^8.2.0",
21
+ "eslint-config-qcobjects": "^0.0.13",
22
+ "jasmine": "^3.7.0",
23
+ "qcobjects": "^2.3.66-lts",
24
+ "qcobjects-cli": "latest"
18
25
  },
19
26
  "repository": {
20
27
  "type": "file",
@@ -54,10 +61,5 @@
54
61
  "qcobjects-gae-server": "./qcobjects-gae-http-server.js",
55
62
  "qcobjects-http-server": "./qcobjects-http-server.js",
56
63
  "qcobjects-collab": "./qcobjects-collab.js"
57
- },
58
- "devDependencies": {
59
- "eslint": "^6.8.0",
60
- "eslint-config-qcobjects": "0.0.6",
61
- "jasmine": "^3.7.0"
62
64
  }
63
65
  }
@@ -85,7 +85,7 @@ readline.emitKeypressEvents(process.stdin);
85
85
  if (process.stdin.isTTY)
86
86
  process.stdin.setRawMode(true);
87
87
 
88
- let qcobjects_version = global.__get_version__();
88
+ let qcobjects_version = global.__get_version_string__();
89
89
 
90
90
  const rl = readline.createInterface({
91
91
  input: process.stdin,