Skip to content
This repository has been archived by the owner on Jun 1, 2023. It is now read-only.

Commit

Permalink
Hhvm 4.88 (#24)
Browse files Browse the repository at this point in the history
* Replace travis with github actions

* Remove calls to assert

* Remove travis config

* Test on hhvm 4.62

* Execution permissions
  • Loading branch information
lexidor authored Dec 18, 2020
1 parent 18a2c72 commit 98705ea
Show file tree
Hide file tree
Showing 6 changed files with 129 additions and 45 deletions.
67 changes: 67 additions & 0 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Continuous Integration
on:
push:
pull_request:
schedule:
- cron: '42 15 * * *'
jobs:
build:
name: HHVM ${{matrix.hhvm}} - ${{matrix.os}}
strategy:
# Run tests on all OS's and HHVM versions, even if one fails
fail-fast: false
matrix:
os: [ ubuntu ]
hhvm:
- '4.62'
- latest
- nightly
runs-on: ${{matrix.os}}-latest
steps:
- uses: actions/checkout@v2
- name: Install Composer
run: .github/workflows/install-composer.sh --install-dir=${{runner.temp}}
- name: Install HHVM (apt)
if: matrix.os == 'ubuntu'
run: |
set -ex
export DEBIAN_FRONTEND=noninteractive
sudo apt-get update
sudo apt-get install -y software-properties-common apt-transport-https
sudo apt-key add .github/workflows/hhvm.gpg.key
if [ "${{matrix.hhvm}}" = "nightly" ]; then
sudo add-apt-repository https://dl.hhvm.com/ubuntu
sudo apt-get install -y hhvm-nightly
elif [ "${{matrix.hhvm}}" = "latest" ]; then
sudo add-apt-repository https://dl.hhvm.com/ubuntu
sudo apt-get install -y hhvm
else
DISTRO=$(lsb_release --codename --short)
sudo add-apt-repository \
"deb https://dl.hhvm.com/ubuntu ${DISTRO}-${{matrix.hhvm}} main"
sudo apt-get install -y hhvm
fi
- name: Install HHVM (brew)
if: matrix.os == 'macos'
run: |
brew tap hhvm/hhvm
if [ "${{matrix.hhvm}}" = "latest" ]; then
brew install hhvm
else
brew install hhvm-${{matrix.hhvm}}
fi
- name: Inspect HHVM and Hack versions
run: |
hhvm --version
hh_client --version
- name: Create branch for version alias
run: git checkout -b CI_current_pull_request
- name: Install project dependencies
run: php ${{runner.temp}}/composer.phar install
- name: Typecheck
run: hh_client
- name: Run tests
run: vendor/bin/hacktest tests/
- name: Run lint
if: matrix.hhvm != 'nightly'
run: vendor/bin/hhast-lint
36 changes: 36 additions & 0 deletions .github/workflows/hhvm.gpg.key
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1

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
=3DTP
-----END PGP PUBLIC KEY BLOCK-----
19 changes: 19 additions & 0 deletions .github/workflows/install-composer.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
#!/bin/sh

# From https://getcomposer.org/doc/faqs/how-to-install-composer-programmatically.md

EXPECTED_CHECKSUM="$(wget -q -O - https://composer.github.io/installer.sig)"
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
ACTUAL_CHECKSUM="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"

if [ "$EXPECTED_CHECKSUM" != "$ACTUAL_CHECKSUM" ]
then
>&2 echo 'ERROR: Invalid installer checksum'
rm composer-setup.php
exit 1
fi

php composer-setup.php "$@"
RESULT=$?
rm composer-setup.php
exit $RESULT
21 changes: 0 additions & 21 deletions .travis.sh

This file was deleted.

14 changes: 0 additions & 14 deletions .travis.yml

This file was deleted.

17 changes: 7 additions & 10 deletions src/uri-patterns/UriPattern.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,16 +30,13 @@ final public function getParts(): ImmVector<UriPatternPart> {
}

final public function getParameters(): ImmVector<UriParameter> {
return $this
->parts
->filter($x ==> $x is UriParameter)
->map(
$x ==> {
assert($x is UriParameter);
return $x;
},
)
->immutable();
$out = Vector {};
foreach($this->parts as $part) {
if($part is UriParameter) {
$out->add($part);
}
}
return $out->immutable();
}

///// Convenience Methods /////
Expand Down

0 comments on commit 98705ea

Please sign in to comment.