Skip to content

Commit 9b0a414

Browse files
committed
1.3.0
- cleans up cli logic (ensures async block runs and catches) - updates dependencies
1 parent d3797ea commit 9b0a414

21 files changed

+196
-179
lines changed

.babelrc

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"presets": ["env"]
2+
"presets": ["@babel/env", "@babel/react"]
33
}

CHANGELOG.md

+5
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
# 1.3.0 (05/14/2019)
2+
3+
- cleans up cli logic (ensures async block runs and catches)
4+
- updates dependencies
5+
16
# 1.2.6 (01/12/2018)
27

38
- fixes linting

bin/lcov-server.js

+4-3
Original file line numberDiff line numberDiff line change
@@ -90,14 +90,15 @@ if(serve) {
9090
});
9191
process.stdin.on('end', (async () => {
9292
try {
93-
let response = cli({ parser, input, url: upload, basePath });
93+
let response = await cli({ parser, input, url: upload, basePath });
94+
9495
if(response.error) {
95-
console.error(`coverage not sent with reason:\n ${response.error}`); // eslint-disable-line
96+
console.error(`\n coverage not sent with reason:\n ${response.error}\n`); // eslint-disable-line
9697
} else {
9798
console.log('\n coverage sent successfully 💚 \n'); // eslint-disable-line
9899
}
99100
} catch(ex) {
100-
console.error(`coverage could not be parsed with reason:\n ${ex.toString()}`); // eslint-disable-line
101+
console.error(`\n coverage could not be parsed with reason:\n ${ex.toString()}\n`); // eslint-disable-line
101102
}
102103
}));
103104
}

dist/app.js

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/bundle.js

-22
This file was deleted.

dist/index.html

+3-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@
1818
<body>
1919
<div id="root"></div>
2020

21-
<script src="/vendor.bundle.js"></script>
22-
<script src="/bundle.js"></script>
21+
<script src="/app.js"></script>
22+
<script src="/vendor.js"></script>
23+
<script src="/vendors.js"></script>
2324
</body>
2425
</html>

dist/vendor.bundle.js

-19
This file was deleted.

dist/vendor.js

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/vendors.js

+40
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
const mongoose = require('mongoose');
22

33
mongoose.Promise = global.Promise;
4-
mongoose.connect(process.env.MONGO_URL, { useMongoClient: true }, function(error) {
4+
mongoose.connect(process.env.MONGO_URL, {}, function(error) {
55
if(error) {
66
console.error(error.message); // eslint-disable-line
77
process.exit(1);

lib/cli.js

+85-81
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ const Url = require('url');
44
const http = require('http');
55
const https = require('https');
66

7-
const lcov = require('../lib/lcov');
8-
const cobertura = require('../lib/cobertura');
9-
const golang = require('../lib/golang');
10-
const jacoco = require('../lib/jacoco');
7+
const lcov = require('../lib/parsers/lcov');
8+
const cobertura = require('../lib/parsers/cobertura');
9+
const golang = require('../lib/parsers/golang');
10+
const jacoco = require('../lib/parsers/jacoco');
1111

1212
const git = require('../lib/git');
1313
const ci = require('../lib/ci');
@@ -16,90 +16,94 @@ module.exports = function cli({ parser, input, url, basePath }) {
1616
const parsedUrl = Url.parse(url);
1717

1818
return new Promise(async function(resolve, reject) {
19-
const info = await git.parse();
20-
const env = ci();
21-
const output = {
22-
service_job_id: env.service_job_id,
23-
service_pull_request: env.service_pull_request,
24-
service_name: env.service_name,
25-
source_files: [],
26-
git: {
27-
author_date: info.author_date,
28-
author_email: info.author_email,
29-
author_name: info.author_name,
30-
committer_date: info.committer_date,
31-
commit: env.commit || info.commit,
32-
branch: env.branch || info.branch,
33-
message: env.message || info.message,
34-
committer_name: env.committer_name || info.committer_name,
35-
committer_email: env.committer_email || info.committer_email,
36-
remotes: info.remotes
37-
},
38-
run_at: new Date()
39-
};
19+
try {
20+
const info = await git.parse();
21+
const env = ci();
22+
const output = {
23+
service_job_id: env.service_job_id,
24+
service_pull_request: env.service_pull_request,
25+
service_name: env.service_name,
26+
source_files: [],
27+
git: {
28+
author_date: info.author_date,
29+
author_email: info.author_email,
30+
author_name: info.author_name,
31+
committer_date: info.committer_date,
32+
commit: env.commit || info.commit,
33+
branch: env.branch || info.branch,
34+
message: env.message || info.message,
35+
committer_name: env.committer_name || info.committer_name,
36+
committer_email: env.committer_email || info.committer_email,
37+
remotes: info.remotes
38+
},
39+
run_at: new Date()
40+
};
4041

41-
switch(parser) {
42-
case 'cobertura':
43-
output['source_files'] = await cobertura.parse(input);
44-
break;
45-
case 'golang':
46-
output['source_files'] = await golang.parse(input);
47-
break;
48-
case 'jacoco':
49-
output['source_files'] = await jacoco.parse(input);
50-
break;
51-
default:
52-
output['source_files'] = await lcov.parse(input);
53-
break;
54-
}
42+
switch(parser) {
43+
case 'cobertura':
44+
output['source_files'] = await cobertura.parse(input);
45+
break;
46+
case 'golang':
47+
output['source_files'] = await golang.parse(input);
48+
break;
49+
case 'jacoco':
50+
output['source_files'] = await jacoco.parse(input);
51+
break;
52+
default:
53+
output['source_files'] = await lcov.parse(input);
54+
break;
55+
}
5556

56-
// Go through and set the file contents
57-
for (let i = 0; i < output['source_files'].length; i++) {
58-
let path = basePath ? Path.resolve(process.cwd(), basePath, output['source_files'][i].file) : output['source_files'][i].file;
57+
// Go through and set the file contents
58+
for (let i = 0; i < output['source_files'].length; i++) {
59+
let path = basePath ? Path.resolve(process.cwd(), basePath, output['source_files'][i].file) : output['source_files'][i].file;
5960

60-
if(fs.existsSync(path)) {
61-
output['source_files'][i].source = fs.readFileSync(path).toString('utf8');
62-
output['source_files'][i].title = output['source_files'][i].file.substring(output['source_files'][i].file.lastIndexOf('/') + 1, output['source_files'][i].file.length);
63-
} else {
64-
return reject(`can not find file at ${path}`);
65-
}
66-
}
61+
if(fs.existsSync(path)) {
62+
output['source_files'][i].source = fs.readFileSync(path).toString('utf8');
63+
output['source_files'][i].title = output['source_files'][i].file.substring(output['source_files'][i].file.lastIndexOf('/') + 1, output['source_files'][i].file.length);
64+
} else {
65+
return reject(`can not find file at ${path}`);
66+
}
67+
}
6768

68-
const options = {
69-
hostname: parsedUrl.hostname,
70-
port: parsedUrl.port || 80,
71-
path: '/api/upload',
72-
method: 'POST',
73-
headers: {
74-
'Content-Type': 'application/json',
75-
}
76-
};
77-
let operation = http;
78-
let data = '';
69+
const options = {
70+
hostname: parsedUrl.hostname,
71+
port: parsedUrl.port || 80,
72+
path: '/api/upload',
73+
method: 'POST',
74+
headers: {
75+
'Content-Type': 'application/json',
76+
}
77+
};
78+
let operation = http;
79+
let data = '';
7980

80-
if(parsedUrl.protocol == 'https:') {
81-
options.port = 443;
82-
operation = https;
83-
}
81+
if(parsedUrl.protocol == 'https:') {
82+
options.port = 443;
83+
operation = https;
84+
}
8485

85-
let req = operation.request(options, (res) => {
86-
res.on('data', (chunk) => {
87-
data += chunk;
88-
});
89-
res.on('end', () => {
90-
try {
91-
const response = JSON.parse(data);
92-
if(response.error) {
93-
return reject(response.error); // eslint-disable-line
94-
} else {
95-
return resolve(response);
86+
let req = operation.request(options, (res) => {
87+
res.on('data', (chunk) => {
88+
data += chunk;
89+
});
90+
res.on('end', () => {
91+
try {
92+
const response = JSON.parse(data);
93+
if(response.error) {
94+
return reject(response.error); // eslint-disable-line
95+
} else {
96+
return resolve(response);
97+
}
98+
} catch(ex) {
99+
return reject(ex);
96100
}
97-
} catch(ex) {
98-
return reject(ex);
99-
}
101+
});
100102
});
101-
});
102-
req.write(JSON.stringify(output));
103-
req.end();
103+
req.write(JSON.stringify(output));
104+
req.end();
105+
} catch(ex) {
106+
return reject(ex);
107+
}
104108
});
105109
};

lib/cobertura.js lib/parsers/cobertura.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @module lib/cobertura
2+
* @module lib/parsers/cobertura
33
*/
44

55
var fs = require('fs');

lib/golang.js lib/parsers/golang.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @module lib/golang
2+
* @module lib/parsers/golang
33
*/
44

55
var fs = require("fs");

lib/jacoco.js lib/parsers/jacoco.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @module lib/jacoco
2+
* @module lib/parsers/jacoco
33
*/
44

55
const fs = require('fs');

lib/lcov.js lib/parsers/lcov.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @module lib/lcov
2+
* @module lib/parsers/lcov
33
*/
44

55
const fs = require('fs');

package.json

+28-28
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "lcov-server",
3-
"version": "1.2.6",
3+
"version": "1.3.0",
44
"description": "🎯 A simple lcov server & cli parser",
55
"main": "index.js",
66
"homepage": "https://github.com/gabrielcsapo/lcov-server#readme",
@@ -45,56 +45,56 @@
4545
"node_modules/openbadge/**/**"
4646
],
4747
"targets": [
48-
"node8-macos-x64",
49-
"node8-linux-x64",
50-
"node8-win-x64"
48+
"node12-macos-x64",
49+
"node12-linux-x64",
50+
"node12-win-x64"
5151
]
5252
},
5353
"license": "Apache-2.0",
5454
"dependencies": {
5555
"babel-polyfill": "^6.26.0",
56-
"badgeit": "0.0.2",
56+
"badgeit": "^0.1.1",
5757
"compression": "^1.7.1",
5858
"express": "^4.16.2",
59-
"git-url-parse": "^7.0.2",
59+
"git-url-parse": "^11.1.2",
6060
"moment": "^2.20.1",
61-
"mongoose": "^4.13.9",
61+
"mongoose": "^5.5.8",
6262
"openbadge": "^1.0.4",
6363
"serve-static": "^1.13.1",
64-
"update-notifier": "^2.3.0",
64+
"update-notifier": "^3.0.0",
6565
"xml2js": "^0.4.19"
6666
},
6767
"devDependencies": {
68-
"@storybook/addon-knobs": "^3.3.8",
69-
"@storybook/react": "^3.3.8",
70-
"babel-cli": "^6.26.0",
71-
"babel-core": "^6.26.0",
72-
"babel-loader": "^7.1.2",
73-
"babel-minify-webpack-plugin": "^0.2.0",
74-
"babel-preset-env": "^1.6.1",
75-
"babel-preset-react": "^6.24.1",
76-
"body-parser": "^1.18.2",
77-
"css-loader": "^0.28.8",
78-
"docdash": "^0.4.0",
79-
"eslint": "^4.15.0",
68+
"@babel/cli": "^7.4.4",
69+
"@babel/core": "^7.4.4",
70+
"@babel/preset-env": "^7.4.4",
71+
"@babel/preset-react": "^7.0.0",
72+
"@storybook/addon-knobs": "^5.0.11",
73+
"@storybook/react": "^5.0.11",
74+
"babel-loader": "^8.0.6",
75+
"babel-minify-webpack-plugin": "^0.3.1",
76+
"body-parser": "^1.19.0",
77+
"css-loader": "^2.1.1",
78+
"docdash": "^1.1.0",
79+
"eslint": "^5.16.0",
8080
"eslint-plugin-react": "^7.5.1",
81-
"getstorybook": "^1.7.0",
8281
"highlight.js": "^9.12.0",
8382
"jsdoc": "^3.5.4",
8483
"pkg": "^4.2.6",
8584
"prop-types": "^15.6.0",
8685
"psychic.css": "0.0.1",
8786
"react": "^16.2.0",
8887
"react-dom": "^16.2.0",
89-
"react-router-dom": "^4.2.2",
90-
"react-select": "^1.2.1",
88+
"react-router-dom": "^5.0.0",
89+
"react-select": "^2.4.3",
9190
"shelljs": "^0.8.0",
92-
"style-loader": "^0.19.1",
93-
"tap": "^11.0.1",
91+
"style-loader": "^0.23.1",
92+
"tap": "^13.1.9",
9493
"tape": "^4.8.0",
9594
"tryitout": "^2.0.6",
96-
"webpack": "^3.10.0",
97-
"webpack-dev-server": "^2.9.7",
98-
"whatwg-fetch": "^2.0.3"
95+
"webpack": "^4.31.0",
96+
"webpack-cli": "^3.3.2",
97+
"webpack-dev-server": "^3.3.1",
98+
"whatwg-fetch": "^3.0.0"
9999
}
100100
}

src/coverage/coverage.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ class Coverage extends React.Component {
118118
<a href={`/coverage/${source.replace(/\./g, '%2E')}/${owner}/`}>{owner}</a> / <a href={`/coverage/${source.replace(/\./g, '%2E')}/${owner}/${name}`}>{name}</a>
119119
</h3>
120120
<p>
121-
<a className="coverage-commit-message" href={commitUrl} target="_blank"> {message} </a>
121+
<a className="coverage-commit-message" href={commitUrl} target="_blank" rel="noopener noreferrer"> {message} </a>
122122
on branch
123123
<b> {branch || git_branch} </b>
124124
{Moment(author_date * 1000).fromNow()}

src/coverage/file.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ class File extends React.Component {
8181
<div style={{float: 'left', textAlign: 'left'}}>
8282
<h3> <a href={`/coverage/${source.replace(/\./g, '%2E')}/${owner}/`}>{owner}</a> / <a href={`/coverage/${source.replace(/\./g, '%2E')}/${owner}/${name}`}>{name}</a> / <a href={`/coverage/${source.replace(/\./g, '%2E')}/${owner}/${name}/${encodeURIComponent(file).replace(/\./g, '$2E')}`}>{file}</a> </h3>
8383
<p>
84-
<a className="coverage-commit-message" href={commitUrl} target="_blank"> {message} </a>
84+
<a className="coverage-commit-message" href={commitUrl} target="_blank" rel="noopener noreferrer"> {message} </a>
8585
on branch
8686
<b> {branch} </b>
8787
{moment(author_date * 1000).fromNow()}

src/coverage/list-item.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ class ListItem extends React.Component {
7474
<div style={{float: 'left', textAlign: 'left'}}>
7575
<h3> <a href={`/coverage/${resource.replace(/\./g, '%2E').replace(`.${protocol}`, '')}/${owner}/`}>{owner}</a> / <a href={`/coverage/${resource.replace(/\./g, '%2E').replace(`.${protocol}`, '')}/${owner}/${name}`}>{name}</a> </h3>
7676
<p>
77-
<a className="coverage-commit-message" href={commitUrl} target="_blank"> {message} </a>
77+
<a className="coverage-commit-message" href={commitUrl} target="_blank" rel="noopener noreferrer"> {message} </a>
7878
on branch
7979
<b> {branch || git_branch} </b>
8080
{moment(author_date * 1000).fromNow()}

src/coverage/list.js

-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import 'react-select/dist/react-select.css';
2-
31
import React from 'react';
42
import PropTypes from 'prop-types';
53
import Select from 'react-select';

0 commit comments

Comments
 (0)