diff --git a/.github/workflows/node-windows.yml b/.github/workflows/node-windows.yml new file mode 100644 index 00000000000..934baa0cfb3 --- /dev/null +++ b/.github/workflows/node-windows.yml @@ -0,0 +1,32 @@ +name: Node + +on: [push] + +jobs: + build: + + runs-on: windows-2019 + + strategy: + matrix: + node: [ '10', '6' ] + + name: ${{ matrix.node }} (Windows) + steps: + - name: Configure git line-breaks + run: git config --global core.autocrlf false + - name: Checkout Commit + uses: actions/checkout@v1 + - name: Setup Node + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node }} + - name: Check npm version + # This is only necessary until we dump Node 6 + run: IF ${{ matrix.node }} LSS 8 npm i npm@5 -g + - name: Install dependencies + run: npm ci --ignore-scripts + - name: Run tests + run: npm test + env: + CI: true diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index 96d7adb4ca4..00000000000 --- a/appveyor.yml +++ /dev/null @@ -1,32 +0,0 @@ -# http://www.appveyor.com/docs/appveyor-yml - -version: "{build}" - -clone_depth: 10 - -init: - - git config --global core.autocrlf false - -environment: - matrix: - # node.js - - nodejs_version: 6 - - nodejs_version: 10 - -install: - - ps: Install-Product node $env:nodejs_version - - IF %nodejs_version% LSS 8 npm -g install npm@5 - - npm ci --ignore-scripts - -build: off - -test_script: - - node --version && npm --version - - npm test - -matrix: - fast_finish: false - -# cache: -# - C:\Users\appveyor\AppData\Roaming\npm-cache -> package.json # npm cache -# - node_modules -> package.json # local npm modules diff --git a/package-lock.json b/package-lock.json index 7037461dc63..d247f2b96e7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -240,7 +240,7 @@ }, "@types/minimist": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", "dev": true }, @@ -1093,6 +1093,12 @@ } } }, + "cross-os": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/cross-os/-/cross-os-1.3.0.tgz", + "integrity": "sha512-9kViqCcAwlPLTeSDPlyC2FdMQ5UVPtGZUnGV8vYDcBA3olJ/hDR7H6IfrNJft2DlKONleHf8CMhD+7Uv2tBnEw==", + "dev": true + }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -3408,7 +3414,7 @@ }, "is-obj": { "version": "1.0.1", - "resolved": "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", "dev": true }, @@ -4274,7 +4280,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -4960,7 +4966,7 @@ }, "path-is-absolute": { "version": "1.0.1", - "resolved": "http://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, @@ -5137,7 +5143,7 @@ }, "readable-stream": { "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "dev": true, "requires": { @@ -5585,7 +5591,7 @@ }, "safe-regex": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, "requires": { @@ -5970,7 +5976,7 @@ }, "string_decoder": { "version": "1.1.1", - "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "requires": { @@ -6005,7 +6011,7 @@ }, "strip-eof": { "version": "1.0.0", - "resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, diff --git a/package.json b/package.json index cb0e6b4cf78..87604081782 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,13 @@ "test": "npm run test:all", "test:all": "npm run test:only && npm run test:typescript && npm run test:leak", "test:coverage": "nyc --reporter html mocha", - "test:leak": "npm i --silent --no-save weak@1 && node --expose-gc test/leak/index.js", + "test:leak": "cross-os test:leak:os", + "test:leak:os": { + "darwin": "npm run test:leak:nix", + "linux": "npm run test:leak:nix", + "win32": "echo 'Skipping test:leak on Windows'" + }, + "test:leak:nix": "npm i --silent --no-save weak@1 && node --expose-gc test/leak/index.js", "test:only": "mocha", "test:quick": "mocha -b", "test:typescript": "tsc --noEmit -p test/typescript && tsc --noEmit", @@ -73,6 +79,7 @@ "codecov": "^3.5.0", "console-group": "^0.3.3", "core-js": "^3.2.1", + "cross-os": "^1.3.0", "date-time": "^3.1.0", "es5-shim": "^4.5.13", "es6-shim": "^0.35.5",