From 97ad9b1248aa2bf6e04eafe1b49db3285726a5ec Mon Sep 17 00:00:00 2001 From: Lexidor Digital <31805625+lexidor@users.noreply.github.com> Date: Thu, 31 Oct 2019 20:55:27 +0100 Subject: [PATCH] Support `disallow_silence` (#43) * Support `disallow_silence` * Enable strict options that introduce test failures * Require HHVM 4.25 for HHI support of array_literal * Test on composer.json version of hhvm --- .hhconfig | 5 ++--- .travis.yml | 3 +-- composer.json | 2 +- src/builders/FactParseScanner.hack | 5 ++++- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/.hhconfig b/.hhconfig index 199ef35..1d58307 100644 --- a/.hhconfig +++ b/.hhconfig @@ -8,6 +8,5 @@ disallow_stringish_magic = true disable_primitive_refinement = true user_attributes= disable_static_local_variables = true - -; Once the minimum hhvm version hits 4.25 this setting can be safely enabled -disallow_array_literal = false +disallow_array_literal = true +disallow_silence = true diff --git a/.travis.yml b/.travis.yml index 52c83c9..1156366 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,8 +2,7 @@ sudo: required language: generic services: docker env: -- HHVM_VERSION=4.5-latest -- HHVM_VERSION=4.8-latest +- HHVM_VERSION=4.25-latest - HHVM_VERSION=latest - HHVM_VERSION=nightly install: diff --git a/composer.json b/composer.json index 42ac32a..318424d 100644 --- a/composer.json +++ b/composer.json @@ -10,7 +10,7 @@ ], "require": { "composer-plugin-api": "^1.0", - "hhvm": "^4.5", + "hhvm": "^4.25", "hhvm/hsl": "^4.0" }, "require-dev": { diff --git a/src/builders/FactParseScanner.hack b/src/builders/FactParseScanner.hack index 99891e9..32a4945 100644 --- a/src/builders/FactParseScanner.hack +++ b/src/builders/FactParseScanner.hack @@ -49,7 +49,10 @@ final class FactParseScanner implements Builder { ), ); } catch (\Exception $e) { - if (@\filesize($file) === 0) { + $error_level = \error_reporting(0); + $file_is_empty = \filesize($file) === 0; + \error_reporting($error_level); + if ($file_is_empty) { continue; } throw new \Exception("Failed to parse '".$file.'"', $e->getCode(), $e);