mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-06-09 04:51:26 +00:00
Add a build check for PRs (#51)
This now checks that distribution files are unmodified and fails otherwise. Also checks if the author is present in the NOTICE file and prints the result, but as email addresses may vary, does not hard-fail.
This commit is contained in:
parent
3a8f9f1576
commit
56d891583e
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -1,3 +1,4 @@
|
||||
bin/asc text eol=lf
|
||||
dist/asc.js -diff
|
||||
dist/assemblyscript.js -diff
|
||||
scripts/check-pr.sh eol=lf
|
||||
|
10
.travis.yml
10
.travis.yml
@ -1,7 +1,17 @@
|
||||
language: node_js
|
||||
notifications:
|
||||
email: false
|
||||
stages:
|
||||
- name: check-pr
|
||||
if: type = pull_request
|
||||
jobs:
|
||||
include:
|
||||
|
||||
- stage: check-pr
|
||||
node_js: lts/*
|
||||
script: ./scripts/check-pr.sh
|
||||
env: Checks contributing guidelines before testing pull requests
|
||||
|
||||
- stage: lint
|
||||
node_js: node
|
||||
script: npm run lint
|
||||
|
29
scripts/check-pr.sh
Executable file
29
scripts/check-pr.sh
Executable file
@ -0,0 +1,29 @@
|
||||
# Distribution files should not be modified
|
||||
STATUS=0
|
||||
if git --no-pager diff --name-only FETCH_HEAD $(git merge-base FETCH_HEAD $TRAVIS_BRANCH) | grep -q "^dist/"; then
|
||||
STATUS=1 &&
|
||||
printf "\n" &&
|
||||
printf "The pull request includes changes to distribution files, but it shouldn't.\n" &&
|
||||
printf "Please see https://github.com/AssemblyScript/assemblyscript/blob/master/CONTRIBUTING.md\n";
|
||||
else
|
||||
printf "\n" &&
|
||||
printf "GOOD: The pull request does not include changes to distribution files.\n";
|
||||
fi
|
||||
|
||||
# Authors should have added themself to the NOTICE file
|
||||
AUTHOR=$(git log -1 --format="%aE")
|
||||
if [ -z "$AUTHOR" ]; then
|
||||
printf "\n" &&
|
||||
printf "Skipping NOTICE check: Commit does not include an email address.\n";
|
||||
else
|
||||
if grep -q "$AUTHOR" NOTICE; then
|
||||
printf "\n" &&
|
||||
printf "GOOD: Author is present in the NOTICE file.\n";
|
||||
else
|
||||
printf "\n" &&
|
||||
printf "Author does not appear to be listed in the NOTICE file, yet.\n" &&
|
||||
printf "Please see https://github.com/AssemblyScript/assemblyscript/blob/master/CONTRIBUTING.md\n";
|
||||
fi
|
||||
fi
|
||||
|
||||
exit $STATUS
|
@ -541,7 +541,7 @@ export class Signature {
|
||||
// check return type
|
||||
var thisReturnType = this.returnType;
|
||||
var targetReturnType = target.returnType;
|
||||
return thisReturnType == targetReturnType || this.returnType.isAssignableTo(target.returnType);
|
||||
return thisReturnType == targetReturnType || thisReturnType.isAssignableTo(targetReturnType);
|
||||
}
|
||||
|
||||
/** Converts this signature to a function type string. */
|
||||
|
Loading…
x
Reference in New Issue
Block a user