Skip to content
This repository was archived by the owner on Dec 14, 2023. It is now read-only.

Commit c7364a4

Browse files
WardormeurDanielBrierton
authored andcommitted
Support for node 8 (#282)
* Support for node 8 * Arrow function
1 parent 967bd1a commit c7364a4

File tree

6 files changed

+21
-11
lines changed

6 files changed

+21
-11
lines changed

.circleci/config.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ jobs:
44
build:
55
working_directory: ~/cp-users-service
66
docker:
7-
- image: nodesource/node:0.10.45
7+
- image: node:8
88
environment:
99
NODE_ENV: testing
1010
steps:

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM mhart/alpine-node:0.10.48
1+
FROM node:8-alpine
22
MAINTAINER butlerx <[email protected]>
33
ENV NODE_ENV=production
44
ARG DEP_VERSION=latest

config/config.js

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
'use strict';
22
var path = require('path');
3+
var camelCase = require('camelcase'); // Lodash functions for that are stripping $ which we use for special keys
4+
var decamelize = require('decamelize');
35
var CpTranslations = require('cp-translations');
46

57
module.exports = function (options) {
@@ -9,7 +11,10 @@ module.exports = function (options) {
911
host: process.env.POSTGRES_HOST || '127.0.0.1',
1012
port: process.env.POSTGRES_PORT || 5432,
1113
username: process.env.POSTGRES_USERNAME,
12-
password: process.env.POSTGRES_PASSWORD
14+
password: process.env.POSTGRES_PASSWORD,
15+
nolimit: true,
16+
fromColumnName: (attr) => camelCase(attr),
17+
toColumnName: (attr) => decamelize(attr)
1318
};
1419
}
1520

dev.Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM mhart/alpine-node:0.10.48
1+
FROM node:8-alpine
22
MAINTAINER butlerx <[email protected]>
33
ENV NODE_ENV=development
44
RUN apk add --update git build-base python postgresql-client && \

package.json

+9-6
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"test": "test"
88
},
99
"scripts": {
10-
"test": "npm run lint && bash -c 'source ./config/development.env; ./node_modules/.bin/lab --ignore __core-js_shared__ --flat --threshold 50 -r html -o ./coverage/coverage.html -r lcov -o ./coverage/lcov.info -r json -o ./coverage/coverage.json -r lab-quieter-reporter -o stdout -m 5000'",
10+
"test": "npm run lint && sh -c '. ./config/development.env; ./node_modules/.bin/lab --ignore __core-js_shared__ --flat --threshold 50 -r html -o ./coverage/coverage.html -r lcov -o ./coverage/lcov.info -r json -o ./coverage/coverage.json -r lab-quieter-reporter -o stdout -m 5000'",
1111
"testdata": "node test/lib/service.js",
1212
"covrep": "bash test/covrep.sh",
1313
"lint": "./node_modules/.bin/semistandard *.js config/config.js",
@@ -28,11 +28,13 @@
2828
},
2929
"dependencies": {
3030
"async": "0.9.0",
31+
"camelcase": "^4.1.0",
3132
"cp-i18n-lib": "git+https://github.com/CoderDojo/cp-i18n-lib.git",
3233
"cp-logs-lib": "git://github.com/CoderDojo/cp-logs-lib#1.1.0",
3334
"cp-permissions-plugin": "git://github.com/CoderDojo/cp-permissions-plugin#1.0.4",
3435
"cp-translations": "^1.0.4",
3536
"cuid": "1.2.5",
37+
"decamelize": "^1.2.0",
3638
"ejs": "1.0.0",
3739
"jed": "1.1.0",
3840
"js-yaml": "3.2.7",
@@ -42,23 +44,24 @@
4244
"newrelic": "1.19.2",
4345
"node-uuid": "1.4.3",
4446
"optimist": "0.6.1",
45-
"pg": "4.4.0",
47+
"pg": "5.1.0",
4648
"pg-large-object": "0.0.1",
4749
"po2json": "0.4.2",
48-
"postgrator": "2.2.0",
50+
"postgrator": "2.8.1",
4951
"request": "2.58.0",
5052
"seneca": "1.4",
5153
"seneca-auth": "1.0",
52-
"seneca-mail": "0.2.1",
53-
"seneca-postgresql-store": "1.1.3",
54+
"seneca-mail": "^0.2.2",
55+
"seneca-postgresql-store": "2.3",
56+
"seneca-store-query": "0.0.5",
5457
"seneca-user": "1.0",
5558
"shortid": "2.2.2",
5659
"util": "^0.10.3",
5760
"xoauth2": "1.1.0"
5861
},
5962
"devDependencies": {
6063
"chai": "2.2.0",
61-
"lab": "5.15.1",
64+
"lab": "14.x",
6265
"lab-quieter-reporter": "1.0.1",
6366
"nodemon": "1.11.0",
6467
"pre-commit": "1.1.2",

service.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ var config = require('./config/config.js')();
88
var seneca = require('seneca')(config);
99
var _ = require('lodash');
1010
var store = require('seneca-postgresql-store');
11+
var storeQuery = require('seneca-store-query');
1112
var service = 'cp-users-service';
1213
var log = require('cp-logs-lib')({name: service, level: 'warn'});
1314
config.log = log.log;
@@ -21,6 +22,7 @@ if (process.env.NODE_ENV !== 'production') {
2122
seneca.options(config);
2223
seneca.decorate('customValidatorLogFormatter', require('./lib/custom-validator-log-formatter'));
2324
seneca.use(store, config['postgresql-store']);
25+
seneca.use(storeQuery);
2426
if (process.env.MAILTRAP_ENABLED === 'true') {
2527
seneca.use('mail', config.mailtrap);
2628
} else {
@@ -89,7 +91,7 @@ require('./migrate-psql-db.js')(function (err) {
8991
client.close();
9092
});
9193

92-
var escape = require('seneca-postgresql-store/lib/relational-util').escapeStr;
94+
var escape = require('seneca-standard-query/lib/relational-util').escapeStr;
9395
['load', 'list'].forEach(function (cmd) {
9496
seneca.wrap('role: entity, cmd: ' + cmd, function filterFields (args, cb) {
9597
try {

0 commit comments

Comments
 (0)