Skip to content

Commit 85afaaa

Browse files
committed
Add support for Node 12
1 parent e65fee6 commit 85afaaa

File tree

6 files changed

+2335
-2007
lines changed

6 files changed

+2335
-2007
lines changed

.travis.yml

Lines changed: 34 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -2,75 +2,54 @@ language: node_js
22
compiler: gcc
33
env:
44
global:
5-
- NATIVE_IMAGE_DIFF_SKIP_BINARY_DOWNLOAD_FOR_CI=true
5+
- NATIVE_IMAGE_DIFF_SKIP_BINARY_DOWNLOAD_FOR_CI=true
6+
- secure: Gcpp1pwnwTJ/UmTF0VZtex9q8q4asJAoNImXNUbDkBaJMLn3rdHYdiiXErmVcx8924GuDeCcxTH0KS1owVmnaEMbOmhTLlh7ywNPviXkHRpr45TMsnhj0sKuCFNVy4G0GP+Edu6eOEBzCa5vOJ1B2ptj9whi1v1P032GXShzbWKOgtJR1J21EwvnhHjTxdCc39hCbtodqeHjTcczMClP8o50gjMdzAyNRjcMI2MARMIrgMPqbUzPHrcEoE3DBC+i+AWpcLY5iRyXo/RwcJxYjy2hUmSQMzlNmxExO8+cFVo8yQA3QU3qOTNL+c55OoARU+IwpeVsSFXRfhlKWFFCIlP02GoDU9K9CLNOR5Sx5NDkjldGz1KYUMDWTSMhVhH0XqyziM4fKHw+bmbZ2Z9qqZRgnLFunCiaM2L8RC7tzGo/voPsaHZB9SlBWVkPpvuF32IQl9cqYWgbiVOIHvPZ0EdlF9MHBKST8xc7FyFnMtsWkr05SPp7dg1ZCCI/2XbnP49Y4MiWeiQq8rno/OTUEaZCQVJuCqbx4/sBER1aHff6DP2Peu7wGPECcX6lickU9otvtGnMfM1U6Ig3q82mF8UHkcqWel0bB2BHEZMT1sfZI+kV/P7GLylFEfIuKBMAUXCZAWRWyLq1AcmkLM5na0nql43qLhs+EJAJCGxF2vU=
67
jobs:
78
include:
8-
- stage: build
9-
node_js: "6"
10-
os: linux
11-
- stage: build
12-
node_js: "7"
13-
os: linux
14-
- stage: build
15-
node_js: "8"
16-
os: linux
17-
- stage: build
18-
node_js: "9"
19-
os: linux
20-
- stage: build
21-
node_js: "10"
22-
os: linux
23-
- stage: build
24-
node_js: "11"
25-
os: linux
26-
- stage: build
27-
node_js: "6"
28-
os: osx
29-
- stage: build
30-
node_js: "7"
31-
os: osx
32-
- stage: build
33-
node_js: "8"
34-
os: osx
35-
- stage: build
36-
node_js: "9"
37-
os: osx
38-
- stage: build
39-
node_js: "10"
40-
os: osx
41-
- stage: build
42-
node_js: "11"
43-
os: osx
9+
- stage: build
10+
node_js: '10'
11+
os: linux
12+
- stage: build
13+
node_js: '11'
14+
os: linux
15+
- stage: build
16+
node_js: '12'
17+
os: linux
18+
- stage: build
19+
node_js: '10'
20+
os: osx
21+
- stage: build
22+
node_js: '11'
23+
os: osx
24+
- stage: build
25+
node_js: '12'
26+
os: osx
4427
addons:
4528
apt:
4629
sources:
47-
- ubuntu-toolchain-r-test
30+
- ubuntu-toolchain-r-test
4831
packages:
49-
- gcc-7
50-
- g++-7
51-
- make
52-
- git
32+
- gcc-7
33+
- g++-7
34+
- make
35+
- git
5336
before_install:
54-
- npm install -g yarn
55-
- if [ $TRAVIS_OS_NAME == "linux" ]; then
56-
export CC="gcc-7";
57-
export CXX="g++-7";
58-
export LINK="gcc-7";
59-
export LINKXX="g++-7";
60-
fi
61-
- node --version
62-
- yarn --version
37+
- npm install -g yarn
38+
- if [ $TRAVIS_OS_NAME == "linux" ]; then export CC="gcc-7"; export CXX="g++-7"; export
39+
LINK="gcc-7"; export LINKXX="g++-7"; fi
40+
- node --version
41+
- yarn --version
6342
script:
64-
- make
43+
- make
6544
after_script:
66-
- "cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js"
45+
- cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js
6746
cache: yarn
6847
deploy:
6948
provider: releases
7049
api_key:
71-
secure: "K/B2fhueAOvTx71V26l1TtUYFr/FXKyb50CgNjRw+VboU/j4GoByQzJCrmyeIFvxs+u+Id4bPCNtkr/kpsK7o9m249nkmlYd3p3OoYzMLTCELvzMuCUFq7Rqzxjo+bZYvA7AS7gqsAh0CfdLlb33ahsF5NU/6ye3kTZka9n3CujMDZm/L8pGwhFuzkodE8dNQT2Qtiu1/LvffK8zCLt47+qnNSKbIah9S961UF0DPWuO7xte0QxPLPKQVlEvpEcVJHb+nIwPGzaQnj4AkA951mMhIf1Xg22u0es//zHkTHuLG908nAiHrbe8smYdgy/IkiIK1JOBrNMI/Cy9NgXFUWlTSyTdcOc61VCP/js3sIPBocG9bB34YjsxPKWLz+ijJwJii5sMlqZr84VVqThIURDaFGPddlzGwO0ApGlutFasI2w70fnsNuS+02vWmlvgBTZXvo6Fl5FKEhQXdSbWtAJc76X+G/U/0uceFUwxoToz0GdGNzTKL1bxh2OvGUGOfSfCpN4Dk2aHbfQBUuTPWhwL6X6z0PK9FYf6B/x/+MS9r91xT5k1AaPwdBvDZh4ehSnXw76u+aKGAG2+VEohqQgUJQvJ5LB49BZhBH+LFiQ1E1yAlmpgok59DtH88PkY8IU6+r1WeYptGiyYPUuuhyaG6eqfHEhuHz/Lf0kDkpQ="
50+
secure: "PhU84FTXNHjKnv8fJqiJitEONiXeNH9aD5CTE1QP6BPdsvmtKsidj8jqo4SgxSSWsheQgpTJRD9PYRbFPzlpsS9dZsW7MuAq7Tf/j30JAajMaA8cTedjLryh7uq36rerlk+ilx5LyEKlLB+tsMsjVKA9UhCFwoRcRchTjFHgTv8LyB228OUr9aK7ycd8daVGQQIvLS4IIzUNH2sJ3tfTIk8Q0ey2fj+ZZ+kaAaHrE25vfRDgljEr+bgnRu/M+6OGGqzFrqwOOBnGOWBOSIcsDzW+z76wWQSDsVDVvSawvu0gsgcvMNrKxb17REunJbfFAM1Sqyp4XgW3V86t2CuxksKeheu9gBUDvHWpXAMlrIkiX4BpcEkO6TD+0+YfYNS/MkbQ+mugv1xob9G1lEXPvWVMt+2V7uxWa3mYW/OKWsIlB0xpMBaR8Cuxn6r7msWc5BvNC/JqQm3ScMHYSd5sGFeKk9lP3UT/JNwOvdsk8OlHAOFoBVr/z8ZMMUiqzGRFxF1nqwpqfJVmhTD0mij6lO2uTmbu2sr9FFxlcp9aNqia+1SB0vTQuC0Hggp7DjIb5L7ms9jjDe3Ui8qW6BiWFrJWhWsIh/1gheti4dsT7lBEYGvbEICoOeXfl3kyoZc13kzZYPcozi7Tbe9ZoIAHlptFqw4EKo4MEUFun6m1f7s="
7251
file_glob: true
73-
file: "native-image-diff-*-*-*.node"
52+
file: native-image-diff-*-*-*.node
7453
skip_cleanup: true
7554
on:
7655
tags: true

README.md

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,9 @@ This is a native Addon to NodeJS which delivers prebuilt binaries. Only some env
3232
| Node Version | Windows 64-Bit | Windows 32-Bit | Linux 64-Bit | Linux 32-Bit | OSX |
3333
|--------------------|--------------------|--------------------|--------------------|--------------|--------------------|
3434
| Earlier ||||||
35-
| Node 6 *(Abi 48)* ||||||
36-
| Node 7 *(Abi 51)* ||||||
37-
| Node 8 *(Abi 57)* ||||||
38-
| Node 9 *(Abi 59)* ||||||
3935
| Node 10 *(Abi 64)* ||||||
4036
| Node 11 *(Abi 67)* ||||||
37+
| Node 12 *(Abi 72)* ||||||
4138

4239
## Usage
4340

appveyor.yml

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -25,24 +25,15 @@
2525
environment:
2626
NATIVE_IMAGE_DIFF_SKIP_BINARY_DOWNLOAD_FOR_CI: true
2727
matrix:
28-
- nodejs_version: 6
29-
GYP_MSVS_VERSION: 2015
30-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
31-
- nodejs_version: 7
32-
GYP_MSVS_VERSION: 2015
33-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
34-
- nodejs_version: 8
35-
GYP_MSVS_VERSION: 2015
36-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
37-
- nodejs_version: 9
38-
GYP_MSVS_VERSION: 2015
39-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
4028
- nodejs_version: 10
4129
GYP_MSVS_VERSION: 2015
4230
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
4331
- nodejs_version: 11
4432
GYP_MSVS_VERSION: 2015
4533
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
34+
- nodejs_version: 12
35+
GYP_MSVS_VERSION: 2015
36+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
4637
install:
4738
- git submodule update --init --recursive
4839
- ps: Install-Product node $env:nodejs_version $env:platform
@@ -63,7 +54,7 @@
6354
- provider: GitHub
6455
artifact: native-image-diff
6556
auth_token:
66-
secure: Htgsldchc4IoQuPj7BS3OPPEitbBCEDHPJbkukIgHMhEU23J2wHJdFxHl2K8Pu0W
57+
secure: bfQKa+eRJfn0xsBUu2bo+OeY7eEdfOlrkJBImk2GY22aLeS512AA3VoC1f4JA2I8
6758
draft: false
6859
prerelease: false
6960
on:
@@ -93,16 +84,13 @@
9384
environment:
9485
NATIVE_IMAGE_DIFF_SKIP_BINARY_DOWNLOAD_FOR_CI: true
9586
matrix:
96-
- nodejs_version: 6
97-
GYP_MSVS_VERSION: 2015
98-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
99-
- nodejs_version: 8
87+
- nodejs_version: 10
10088
GYP_MSVS_VERSION: 2015
10189
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
102-
- nodejs_version: 9
90+
- nodejs_version: 11
10391
GYP_MSVS_VERSION: 2015
10492
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
105-
- nodejs_version: 10
93+
- nodejs_version: 12
10694
GYP_MSVS_VERSION: 2015
10795
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
10896
install:

native/image-diff.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,23 +41,23 @@ NAN_METHOD(imageDiff) {
4141
auto firstLength = Buffer::Length(firstBuffer);
4242
auto *firstData = reinterpret_cast<uint8_t*>(Buffer::Data(firstBuffer));
4343
// 2nd Parameter: The first image's width.
44-
const auto firstWidth = static_cast<uint32_t>(info[1]->NumberValue());
44+
const auto firstWidth = static_cast<uint32_t>(Nan::To<uint32_t>(info[1]).ToChecked());
4545
// 3rd Parameter: The first image's height.
46-
const auto firstHeight = static_cast<uint32_t>(info[2]->NumberValue());
46+
const auto firstHeight = static_cast<uint32_t>(Nan::To<uint32_t>(info[2]).ToChecked());
4747
// 4th Parameter: The second image's buffer.
4848
Local<Object> secondBuffer = Local<Object>::Cast(info[3]);
4949
auto secondLength = Buffer::Length(secondBuffer);
5050
auto *secondData = reinterpret_cast<uint8_t*>(Buffer::Data(secondBuffer));
5151
// 5th Parameter: The second image's width.
52-
const auto secondWidth = static_cast<uint32_t>(info[4]->NumberValue());
52+
const auto secondWidth = static_cast<uint32_t>(Nan::To<uint32_t>(info[4]).ToChecked());
5353
// 6th Parameter: The second image's height.
54-
const auto secondHeight = static_cast<uint32_t>(info[5]->NumberValue());
54+
const auto secondHeight = static_cast<uint32_t>(Nan::To<uint32_t>(info[5]).ToChecked());
5555
// 7th Parameter: The color threshold per pixel.
56-
const auto colorThreshold = static_cast<float>(info[6]->NumberValue());
56+
const auto colorThreshold = static_cast<float>(Nan::To<double>(info[6]).ToChecked());
5757
// 8th Parameter: Whether to check for antialiasing.
58-
const auto checkAntialiasing = static_cast<bool>(info[7]->BooleanValue());
58+
const auto checkAntialiasing = static_cast<bool>(Nan::To<bool>(info[7]).ToChecked());
5959
// 9th Parameter: Whether to generate an output image.
60-
const auto generateDiffImage = static_cast<bool>(info[8]->BooleanValue());
60+
const auto generateDiffImage = static_cast<bool>(Nan::To<bool>(info[8]).ToChecked());
6161
// Computed values.
6262
const uint32_t firstBytesPerPixel = firstLength / (firstWidth * firstHeight);
6363
const uint32_t secondBytesPerPixel = secondLength / (secondWidth * secondHeight);
@@ -125,5 +125,5 @@ NAN_METHOD(imageDiff) {
125125
}
126126

127127
NAN_MODULE_INIT(InitImageDiff) {
128-
target->Set(Nan::New("__native_imageDiff").ToLocalChecked(), Nan::New<FunctionTemplate>(imageDiff)->GetFunction());
128+
target->Set(Nan::New("__native_imageDiff").ToLocalChecked(), Nan::GetFunction(Nan::New<FunctionTemplate>(imageDiff)).ToLocalChecked());
129129
}

package.json

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"comparison",
88
"visual"
99
],
10-
"version": "0.1.8",
10+
"version": "0.1.9",
1111
"description": "A simple library for comparing two images using a native C++ binding.",
1212
"main": "dist/index.js",
1313
"author": "Frederick Gnodtke",
@@ -61,27 +61,26 @@
6161
"node_modules",
6262
"src"
6363
],
64-
"mapCoverage": true,
6564
"coverageReporters": [
6665
"text",
6766
"lcov"
6867
]
6968
},
7069
"devDependencies": {
71-
"@types/jest": "^21.1.7",
72-
"@types/node": "^9.6.2",
73-
"coveralls": "^3.0.0",
74-
"cross-env": "^5.1.4",
75-
"jest": "^21.2.1",
76-
"nan": "^2.10.0",
77-
"node-gyp": "^3.6.2",
78-
"node-libpng": "^0.2.7",
79-
"ts-jest": "^21.2.3",
80-
"tslint": "^5.8.0",
81-
"typedoc": "^0.11.1",
82-
"typescript": "^2.6.1"
70+
"@types/jest": "^25.1.2",
71+
"@types/node": "^13.7.0",
72+
"coveralls": "^3.0.9",
73+
"cross-env": "^7.0.0",
74+
"jest": "^25.1.0",
75+
"nan": "^2.14.0",
76+
"node-gyp": "^6.1.0",
77+
"node-libpng": "^0.2.13",
78+
"ts-jest": "^25.2.0",
79+
"tslint": "^6.0.0",
80+
"typedoc": "^0.16.9",
81+
"typescript": "^3.7.5"
8382
},
8483
"dependencies": {
85-
"request": "^2.85.0"
84+
"request": "^2.88.0"
8685
}
8786
}

0 commit comments

Comments
 (0)