diff --git a/.circleci/config.yml b/.circleci/config.yml index f7bbf030e..69084af79 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -62,9 +62,7 @@ jobs: - *npm_install_if_necessary - run: name: Unit tests with coverage report - command: npm run test - environment: - SOLIDITY_COVERAGE: true + command: npm run coverage # TODO(xinbenlv, #1839): run SOLC_NIGHTLY to be run but allow it to fail. diff --git a/.codecov.yml b/.codecov.yml new file mode 100644 index 000000000..64b23903b --- /dev/null +++ b/.codecov.yml @@ -0,0 +1,3 @@ +comment: off +coverage: + range: "100...100" diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 22e64b732..000000000 --- a/.travis.yml +++ /dev/null @@ -1,45 +0,0 @@ -dist: trusty -sudo: false -group: beta -language: node_js -node_js: - - "8" - -cache: - directories: - - node_modules - -jobs: - # XXX fast_finish doesn't work with stages yet. See - # https://github.com/travis-ci/travis-ci/issues/8425 - # --elopio - 20180531 - fast_finish: true - allow_failures: - - env: SOLC_NIGHTLY=true - include: - - stage: tests - name: "Linter" - script: npm run lint - - - stage: tests - name: "Unit tests" - script: npm run test - - - stage: tests - name: "Unit tests with coverage report" - script: npm run test - env: SOLIDITY_COVERAGE=true - - - stage: tests - name: "Unit tests using solc nightly" - script: npm run test - env: SOLC_NIGHTLY=true - if: branch = master and type != pull_request - -notifications: - slack: - rooms: - - secure: uEhwUkuwJp5pBNh+VTEytPHz3FDKsnPrKO+8MTAKv5hKi4PCRoVhLv6pklr82HUpL6pvSvJbUPA0HVebOXA+MMSxdny/BHZTh2mtw5Y78l2Ad0svDTWuV2Lus2pmhYigRhT0Wo00/SRX9+pxm0kg4EIFJSTS+uR9G76x0l9NljpEGXrqxlDxjxoHBgk8Ciru2LHaLzX/utE3jlABts4Sb1F3wc2BwFkjd6BDCRTGAPhVJwwFk41ZfnmLVbgSNUyk46Cb38oG5oXHb0FI3d3jV/k1OUhRyFfmA2fLXRk0wavibW8TG1gGJJWZ7xTCKzw/Cvup6mpehSAeQef8eekMdjpWEhF9hYRq1BvOs0384UU8NQ0O+BtdXU+X3Nyr84TMJN/iIfgN7gYX7AsvXH3jC0JfNUcIkWlJvyXdE6l2GV1hMmhL09GFEBbSpuSXRIWlOXTcYBlp5NbvE8xO8PUW+T6N5RG2XXjv1g8wCpr6Wwk1+LmRkX5trv8MFBZ2pM8p4H5da5++Ov8egLonNGK2jbx6aBLBX3tPf+g70LZEkiQ4eBfZw8VIgXIvKreisicppNuCD27gNmSEPNt0NkwiEBcTCJ9GSVAO0CU2g4ggvHDX2A+RW5XPET9bGkBXKLfFyV7Qe+MSQjXkCnW3bIRh7Wo1V31XiUiYOLuZPIiH3EQ= - on_success: change - on_failure: always - on_pull_requests: false diff --git a/README.md b/README.md index d63a444a8..1a92ca60f 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # OpenZeppelin [![NPM Package](https://img.shields.io/npm/v/@openzeppelin/contracts.svg)](https://www.npmjs.org/package/@openzeppelin/contracts) -[![Build Status](https://travis-ci.com/OpenZeppelin/openzeppelin-contracts.svg?branch=master)](https://travis-ci.com/OpenZeppelin/openzeppelin-contracts) +[![Build Status](https://circleci.com/gh/OpenZeppelin/openzeppelin-contracts.svg?style=shield)](https://circleci.com/gh/OpenZeppelin/openzeppelin-contracts) [![Coverage Status](https://coveralls.io/repos/github/OpenZeppelin/openzeppelin-contracts/badge.svg?branch=master)](https://coveralls.io/github/OpenZeppelin/openzeppelin-contracts?branch=master) **OpenZeppelin Contracts is a library for secure smart contract development.** It provides implementations of standards like ERC20 and ERC721 which you can deploy as-is or extend to suit your needs, as well as Solidity components to build custom contracts and more complex decentralized systems. diff --git a/package-lock.json b/package-lock.json index e67c4c1bc..b891bbb24 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5 +1,5 @@ { - "name": "@openzeppelin/contracts", + "name": "openzeppelin-solidity", "version": "2.3.0", "lockfileVersion": 1, "requires": true, @@ -2152,27 +2152,6 @@ } } }, - "coveralls": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.1.tgz", - "integrity": "sha512-FAzXwiDOYLGDWH+zgoIA+8GbWv50hlx+kpEJyvzLKOdnIBv9uWoVl4DhqGgyUHpiRjAlF8KYZSipWXYtllWH6Q==", - "dev": true, - "requires": { - "js-yaml": "^3.6.1", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.5", - "minimist": "^1.2.0", - "request": "^2.79.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, "create-ecdh": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", @@ -2555,7 +2534,7 @@ "dependencies": { "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true } @@ -3059,7 +3038,7 @@ "dependencies": { "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true } @@ -3076,7 +3055,7 @@ "dependencies": { "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true } @@ -3935,7 +3914,7 @@ }, "fs-extra": { "version": "0.30.0", - "resolved": "http://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", "integrity": "sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=", "dev": true, "requires": { @@ -5433,7 +5412,7 @@ "dependencies": { "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true } @@ -6397,7 +6376,7 @@ }, "jsonfile": { "version": "2.4.0", - "resolved": "http://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", "dev": true, "requires": { @@ -6471,12 +6450,6 @@ "invert-kv": "^1.0.0" } }, - "lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "dev": true - }, "levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", @@ -6569,12 +6542,6 @@ "lodash._reinterpolate": "^3.0.0" } }, - "log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "dev": true - }, "lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", diff --git a/package.json b/package.json index e8482665c..0522d947c 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,6 @@ "devDependencies": { "chai": "^4.2.0", "concurrently": "^4.1.0", - "coveralls": "^3.0.1", "eslint": "^4.19.1", "eslint-config-standard": "^10.2.1", "eslint-plugin-import": "^2.13.0", diff --git a/scripts/coverage.sh b/scripts/coverage.sh index 8a50f77b4..ceff90785 100755 --- a/scripts/coverage.sh +++ b/scripts/coverage.sh @@ -1,3 +1,7 @@ #!/usr/bin/env bash SOLIDITY_COVERAGE=true scripts/test.sh + +if [ "$CI" = true ]; then + curl -s https://codecov.io/bash | bash -s +fi diff --git a/scripts/test.sh b/scripts/test.sh index fa8c631b5..ad095426a 100755 --- a/scripts/test.sh +++ b/scripts/test.sh @@ -66,10 +66,6 @@ npx truffle version if [ "$SOLIDITY_COVERAGE" = true ]; then npx solidity-coverage - - if [ "$CONTINUOUS_INTEGRATION" = true ]; then - cat coverage/lcov.info | npx coveralls - fi else npx truffle test "$@" fi