Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to Box #488

Merged
merged 5 commits into from May 6, 2018
Merged

Switch to Box #488

merged 5 commits into from May 6, 2018

Conversation

@theofidry
Copy link
Contributor

@theofidry theofidry commented Apr 26, 2018

As promised somewhere, here's the PR to switch to Box to build the PHAR.

I used a Makefile here because I would like to propose it as a new tool instead of the bash files. Indeed in think it has a few advantages:

  • There is a better discoverability of the available commands
  • It is easier to declare dependencies and achieve that make smth and it will just work experience, all the necessary stuff will be installed for you.

As an example, clone the project and type make build and it will just work: no need to concern yourself with installing the dependencies & co.

There is still stuff to improve in this PR (or can be done in another):

  • Build all the PHARs: I see that you have a dedicated compat and PHP 5.4 files, those are still missing
  • Add an e2e tests for the PHARs, eventually via Docker for the old PHP versions. Building a PHAR is not a trivial process the code may easily break in it
  • Isolate the PHAR, to be done in another PR I think

For reference the PHAR you are publishing is 1.4MB (from the last release). The one built with Box is 649.59KB so it's a nice improvement 😄

I'm also not sure to understand why we are using the local autoload when inside the PsySH project?

@theofidry theofidry mentioned this pull request Apr 26, 2018
21 of 34 tasks complete
Copy link
Owner

@bobthecow bobthecow left a comment

The current PR doesn't build a functioning PHAR 😉

I got it to work by extracting the bit of the current Compiler that builds the PHAR stub, then using that stub for Box (plus a few other misc changes):

diff --git a/.editorconfig b/.editorconfig
index 779f99a..fddf9c1 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -10,3 +10,6 @@ insert_final_newline = true
 
 [*.md]
 trim_trailing_whitespace = false
+
+[Makefile]
+indent_style = tab
diff --git a/.gitignore b/.gitignore
index 823cceb..221aa8a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,3 +10,4 @@ __pycache__
 psysh.phar
 psysh-compat.phar
 /vendor-bin/*/vendor/
+build/stub
diff --git a/Makefile b/Makefile
index c70876a..c9741ad 100644
--- a/Makefile
+++ b/Makefile
@@ -26,6 +26,9 @@ build: bin/psysh.phar
 # Rules from files
 #---------------------------------------------------------------------------
 
+build/stub: bin/build-stub bin/psysh LICENSE
+	bin/build-stub
+
 composer.lock: composer.json
 	composer install
 
@@ -38,5 +41,5 @@ vendor/bamarni: composer.lock
 vendor-bin/box/vendor: vendor/bamarni
 	composer bin box install
 
-bin/psysh.phar: bin/psysh src vendor box.json.dist vendor-bin/box/vendor
+bin/psysh.phar: bin/psysh src vendor box.json.dist vendor-bin/box/vendor build/stub
 	vendor/bin/box compile
diff --git a/bin/build-stub b/bin/build-stub
new file mode 100755
index 0000000..0d26110
--- /dev/null
+++ b/bin/build-stub
@@ -0,0 +1,22 @@
+#!/usr/bin/env php
+<?php
+
+$license = file_get_contents(dirname(__DIR__) . '/LICENSE');
+$license = str_replace('The MIT License (MIT)', '', $license);
+$license = str_replace("\n", "\n * ", trim($license));
+
+$autoload = <<<'EOS'
+    Phar::mapPhar('psysh.phar');
+    require 'phar://psysh.phar/.box/check_requirements.php';
+    require 'phar://psysh.phar/vendor/autoload.php';
+EOS;
+
+$content = file_get_contents(dirname(__DIR__) . '/bin/psysh');
+$content = preg_replace('{/\* <<<.*?>>> \*/}sm', $autoload, $content);
+$content = preg_replace('/\\(c\\) .*?with this source code./sm', $license, $content);
+
+$content .= '__HALT_COMPILER();';
+
+@mkdir(dirname(__DIR__) . '/build');
+
+file_put_contents(dirname(__DIR__) . '/build/stub', $content);
diff --git a/box.json.dist b/box.json.dist
index 1351364..c25684f 100644
--- a/box.json.dist
+++ b/box.json.dist
@@ -1,3 +1,10 @@
 {
-    "chmod": "0755"
-}
\ No newline at end of file
+    "stub": "build/stub",
+    "chmod": "0755",
+    "blacklist": [
+        "Test"
+    ],
+    "compactors": [
+        "KevinGH\\Box\\Compactor\\Php"
+    ]
+}
diff --git a/composer.json b/composer.json
index 909d069..3e169be 100644
--- a/composer.json
+++ b/composer.json
@@ -22,7 +22,8 @@
     },
     "require-dev": {
         "phpunit/phpunit": "~4.8.35|~5.0|~6.0|~7.0",
-        "hoa/console": "~2.15|~3.16"
+        "hoa/console": "~2.15|~3.16",
+        "bamarni/composer-bin-plugin": "^1.2"
     },
     "suggest": {
         "ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)",

Build all the PHARs: I see that you have a dedicated compat and PHP 5.4 files, those are still missing

The compat versions just add symfony/intl polyfill and hoa/console readline dependencies, then do the normal build process with a different target.

The php54 versions are built on PHP 5.4, with no other changes.

Leverage Travis to handle the deployment.

Travis already handles the deployment 😃

https://github.com/bobthecow/psysh/blob/master/.travis.yml#L28-L38

For reference the PHAR you are publishing is 1.4MB (from the last release). The one built with Box is 649.59KB...

I'm curious how you're getting 649KB PHARs. Even after enabling the PHP compactor and blacklisting "Test", to make it a bit more of a fair comparison, I'm only down to 1.7MB.

I'm also not sure to understand why we are using the local autoload when inside the PsySH project?

PsySH (both the bin/psysh and the PHAR version) acts as a "launcher" by default. This means that you can install a global version of PsySH, and also install a local one in a project, and running the global one via psysh defers to the local one and loads that instead.

See a4f181d

Makefile Outdated
clean: ## Clean all created artifacts
.PHONY: clean
clean:
git clean --exclude=.idea/ -ffdx

This comment has been minimized.

@bobthecow

bobthecow Apr 26, 2018
Owner

this is a super scary clean script 😬

This comment has been minimized.

@theofidry

theofidry Apr 26, 2018
Author Contributor

Just don't do it when you have uncommitted changes :P If you have a way to check that so we could bail out at that time that would be 👌 I didn't find anything :/

Note that it has never been a big deal for me because even when I did the mistake PHPStorm has always been able to restore everything without an issue

This comment has been minimized.

@bobthecow

bobthecow Apr 26, 2018
Owner

Not only does this blow away uncommitted changes (without asking), but it does it while ignoring local and global git excludes. So even if your git status doesn't show anything dirty, it will delete things you explicitly excluded.

We should be explicit about what we make dirty, and explicit about cleaning them. This is why the current build always builds everything into build/ and installs composer dependencies needed for build in build-vendor/. Then we can blow those two things away, and ignore everything else.

This comment has been minimized.

@theofidry

theofidry Apr 26, 2018
Author Contributor

but it does it while ignoring local and global git excludes

Hm I forgot about that part, I probably didn't mind it because the only thing not committed I never needed was that .idea... But I see how this can be an issue. Maybe we can change that to a softer one.

We should be explicit about what we make dirty, and explicit about cleaning them. This is why the current build always builds everything into build/ and installs composer dependencies needed for build in build-vendor/. Then we can blow those two things away, and ignore everything else.

It's a fair PoV and we can adjust to change it. My usage was slightly different and more extreme: I really wanted to get rid of everything (except IDE config) that I wouldn't get after a git clone. I used it a lot to make sure that git clone project; cd project; make smth just worked without any user step (although I ended up failing on that for Box since it needs docker...)

vendor: composer.lock
composer install

vendor/bamarni: composer.lock

This comment has been minimized.

@bobthecow

bobthecow Apr 26, 2018
Owner

you didn't add it to composer.json 😛

This comment has been minimized.

@theofidry

theofidry Apr 26, 2018
Author Contributor

Weird... I'll have to

This comment has been minimized.

@theofidry

theofidry May 5, 2018
Author Contributor

Done

rm -rf build-vendor

COMPOSER_VENDOR_DIR=build-vendor composer update \
--prefer-stable --no-dev --no-progress --classmap-authoritative --no-interaction --verbose

This comment has been minimized.

@bobthecow

bobthecow Apr 26, 2018
Owner

This does a few things that aren't captured in the current makefile:

  1. uses a separate composer root, to ensure that the vendor directory is clean (and to build without screwing with the user's current vendor directory)
  2. prefers stable, doesn't install dev dependencies
  3. uses an optimized autoloader and classmap-authoritative to put more of the burden of autoloading on build time rather than runtime

This comment has been minimized.

@theofidry

theofidry Apr 26, 2018
Author Contributor

I'm not sure to follow 1, but 2 & 3 are done by Box to avoid too much faff to the users

This comment has been minimized.

@bobthecow

bobthecow Apr 26, 2018
Owner

1 is what makes it so we can run composer update without messing with the user's versions or even worrying about them at all. It uses build-vendor/ to install a fresh set of dependencies, as up-to-date as dependency hell will allow :)

This comment has been minimized.

@theofidry

theofidry May 5, 2018
Author Contributor

Updated the makefile for it to never change whatever you currently have in composer.json, composer.lock or vendor

bin/package Outdated
@@ -1,55 +0,0 @@
#!/usr/bin/env bash

This comment has been minimized.

@bobthecow

bobthecow Apr 26, 2018
Owner

This is the part that builds the package for releases. We shouldn't delete it until we have a replacement.

This comment has been minimized.

@theofidry

theofidry Apr 26, 2018
Author Contributor

You mean it builds all the PHARs right? Or you mean it packages them in tar.gz? If the second I think this should be done in the Makefile instead

This comment has been minimized.

@bobthecow

bobthecow Apr 26, 2018
Owner

I mean this is what builds the tarballs. We need this for releases. Makefile would be a great place for it.

Makefile Outdated
@@ -0,0 +1,42 @@
.DEFAULT_GOAL := help

PHPNOGC=php -d zend.enable_gc=0

This comment has been minimized.

@bobthecow

bobthecow Apr 26, 2018
Owner

this isn't used?

This comment has been minimized.

@theofidry

theofidry Apr 26, 2018
Author Contributor

true, can be removed

Makefile Outdated
#---------------------------------------------------------------------------

composer.lock: composer.json
composer install

This comment has been minimized.

@bobthecow

bobthecow Apr 26, 2018
Owner

if the lock file is outdated, this doesn't work. it needs to run composer update.

This comment has been minimized.

@theofidry

theofidry Apr 26, 2018
Author Contributor

I would eventually add an @echo but I wouldn't do composer update, updating your deps (for an app, not a lib) should be done more careful reviewing which deps needs to be updated, what changed and see that everything is compatible. Unless you have enough e2e tests to test the PHAR and being able to blindly update everything in absolute confidence

@theofidry
Copy link
Contributor Author

@theofidry theofidry commented Apr 26, 2018

Yes I noticed it but I was really confused at the autoloading part in the first place... I'll give you the diff later of the files shipped in the PHAR (you can see it with box info psysh.phar --list which I couldn't yet. I also find suspicious that big diff provided you were already removing the test dependencies...

So you need that custom stub :/ It's a shame it would be nicer not to have to bug I guess it can't be helped.

@theofidry
Copy link
Contributor Author

@theofidry theofidry commented May 5, 2018

Update:

Build on master
time bin/build                                                                                                                                                                                                                      tfidry@Theos-MBP
Building phar
Loading composer repositories with package information
Updating dependencies
Dependency resolution completed in 0.196 seconds
Analyzed 3499 packages to resolve dependencies
Analyzed 153119 rules to resolve dependencies
Dependency resolution completed in 0.000 seconds
Package operations: 8 installs, 0 updates, 0 removals
Installs: dnoegel/php-xdg-base-dir:0.1, symfony/polyfill-mbstring:v1.8.0, symfony/console:v4.0.9, symfony/polyfill-php72:v1.8.0, symfony/var-dumper:v4.0.9, nikic/php-parser:v4.0.1, jakub-onderka/php-console-color:0.1, jakub-onderka/php-console-highlighter:v0.3.2
  - Installing dnoegel/php-xdg-base-dir (0.1): Loading from cache
 Extracting archive  - Installing symfony/polyfill-mbstring (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/console (v4.0.9): Loading from cache
 Extracting archive  - Installing symfony/polyfill-php72 (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/var-dumper (v4.0.9): Loading from cache
 Extracting archive  - Installing nikic/php-parser (v4.0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-color (0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-highlighter (v0.3.2): Loading from cache
 Extracting archiveGenerating optimized autoload files
Building compat phar
Using version ^4.0 for symfony/intl
Using version ^3.17 for hoa/console
composer-compat.json has been updated
Loading composer repositories with package information
Updating dependencies
Dependency resolution completed in 0.193 seconds
Analyzed 3741 packages to resolve dependencies
Analyzed 152854 rules to resolve dependencies
Dependency resolution completed in 0.000 seconds
Package operations: 19 installs, 0 updates, 0 removals
Installs: dnoegel/php-xdg-base-dir:0.1, symfony/polyfill-mbstring:v1.8.0, symfony/console:v4.0.9, symfony/polyfill-php72:v1.8.0, symfony/var-dumper:v4.0.9, nikic/php-parser:v4.0.1, jakub-onderka/php-console-color:0.1, jakub-onderka/php-console-highlighter:v0.3.2, hoa/exception:1.17.01.16, hoa/event:1.17.01.13, hoa/consistency:1.17.05.02, hoa/ustring:4.17.01.16, hoa/protocol:1.17.01.14, hoa/stream:1.17.02.21, hoa/iterator:2.17.01.10, hoa/file:1.17.07.11, hoa/console:3.17.05.02, symfony/polyfill-intl-icu:v1.8.0, symfony/intl:v4.0.9
  - Installing dnoegel/php-xdg-base-dir (0.1): Loading from cache
 Extracting archive  - Installing symfony/polyfill-mbstring (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/console (v4.0.9): Loading from cache
 Extracting archive  - Installing symfony/polyfill-php72 (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/var-dumper (v4.0.9): Loading from cache
 Extracting archive  - Installing nikic/php-parser (v4.0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-color (0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-highlighter (v0.3.2): Loading from cache
 Extracting archive  - Installing hoa/exception (1.17.01.16): Loading from cache
 Extracting archive  - Installing hoa/event (1.17.01.13): Loading from cache
 Extracting archive  - Installing hoa/consistency (1.17.05.02): Loading from cache
 Extracting archive  - Installing hoa/ustring (4.17.01.16): Loading from cache
 Extracting archive  - Installing hoa/protocol (1.17.01.14): Loading from cache
 Extracting archive  - Installing hoa/stream (1.17.02.21): Loading from cache
 Extracting archive  - Installing hoa/iterator (2.17.01.10): Loading from cache
 Extracting archive  - Installing hoa/file (1.17.07.11): Loading from cache
 Extracting archive  - Installing hoa/console (3.17.05.02): Loading from cache
 Extracting archive  - Installing symfony/polyfill-intl-icu (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/intl (v4.0.9): Loading from cache
 Extracting archiveWriting lock file
Generating optimized autoload files
bin/build  11.00s user 7.50s system 80% cpu 22.871 total
`psysh.phar` details

API Version: 1.1.0

Archive Compression: None

Signature: SHA-1
Signature Hash: 836F3DCC6DDDD54EAA2771FBC1E34192F4DE3E4A

Metadata: None

Contents: 486 files (1.22MB)
build-vendor/
  autoload.php [NONE]
  composer/
    ClassLoader.php [NONE]
    autoload_classmap.php [NONE]
    autoload_files.php [NONE]
    autoload_namespaces.php [NONE]
    autoload_psr4.php [NONE]
    autoload_real.php [NONE]
    autoload_static.php [NONE]
  dnoegel/
    php-xdg-base-dir/
      src/
        Xdg.php [NONE]
  jakub-onderka/
    php-console-color/
      example.php [NONE]
      src/
        JakubOnderka/
          PhpConsoleColor/
            ConsoleColor.php [NONE]
            InvalidStyleException.php [NONE]
    php-console-highlighter/
      examples/
        snippet.php [NONE]
        whole_file.php [NONE]
        whole_file_line_numbers.php [NONE]
      src/
        JakubOnderka/
          PhpConsoleHighlighter/
            Highlighter.php [NONE]
  nikic/
    php-parser/
      grammar/
        rebuildParsers.php [NONE]
      lib/
        PhpParser/
          Builder/
            Class_.php [NONE]
            Declaration.php [NONE]
            FunctionLike.php [NONE]
            Function_.php [NONE]
            Interface_.php [NONE]
            Method.php [NONE]
            Namespace_.php [NONE]
            Param.php [NONE]
            Property.php [NONE]
            Trait_.php [NONE]
            Use_.php [NONE]
          Builder.php [NONE]
          BuilderFactory.php [NONE]
          BuilderHelpers.php [NONE]
          Comment/
            Doc.php [NONE]
          Comment.php [NONE]
          ConstExprEvaluationException.php [NONE]
          ConstExprEvaluator.php [NONE]
          Error.php [NONE]
          ErrorHandler/
            Collecting.php [NONE]
            Throwing.php [NONE]
          ErrorHandler.php [NONE]
          Internal/
            DiffElem.php [NONE]
            Differ.php [NONE]
            PrintableNewAnonClassNode.php [NONE]
            TokenStream.php [NONE]
          JsonDecoder.php [NONE]
          Lexer/
            Emulative.php [NONE]
          Lexer.php [NONE]
          NameContext.php [NONE]
          Node/
            Arg.php [NONE]
            Const_.php [NONE]
            Expr/
              ArrayDimFetch.php [NONE]
              ArrayItem.php [NONE]
              Array_.php [NONE]
              Assign.php [NONE]
              AssignOp/
                BitwiseAnd.php [NONE]
                BitwiseOr.php [NONE]
                BitwiseXor.php [NONE]
                Concat.php [NONE]
                Div.php [NONE]
                Minus.php [NONE]
                Mod.php [NONE]
                Mul.php [NONE]
                Plus.php [NONE]
                Pow.php [NONE]
                ShiftLeft.php [NONE]
                ShiftRight.php [NONE]
              AssignOp.php [NONE]
              AssignRef.php [NONE]
              BinaryOp/
                BitwiseAnd.php [NONE]
                BitwiseOr.php [NONE]
                BitwiseXor.php [NONE]
                BooleanAnd.php [NONE]
                BooleanOr.php [NONE]
                Coalesce.php [NONE]
                Concat.php [NONE]
                Div.php [NONE]
                Equal.php [NONE]
                Greater.php [NONE]
                GreaterOrEqual.php [NONE]
                Identical.php [NONE]
                LogicalAnd.php [NONE]
                LogicalOr.php [NONE]
                LogicalXor.php [NONE]
                Minus.php [NONE]
                Mod.php [NONE]
                Mul.php [NONE]
                NotEqual.php [NONE]
                NotIdentical.php [NONE]
                Plus.php [NONE]
                Pow.php [NONE]
                ShiftLeft.php [NONE]
                ShiftRight.php [NONE]
                Smaller.php [NONE]
                SmallerOrEqual.php [NONE]
                Spaceship.php [NONE]
              BinaryOp.php [NONE]
              BitwiseNot.php [NONE]
              BooleanNot.php [NONE]
              Cast/
                Array_.php [NONE]
                Bool_.php [NONE]
                Double.php [NONE]
                Int_.php [NONE]
                Object_.php [NONE]
                String_.php [NONE]
                Unset_.php [NONE]
              Cast.php [NONE]
              ClassConstFetch.php [NONE]
              Clone_.php [NONE]
              Closure.php [NONE]
              ClosureUse.php [NONE]
              ConstFetch.php [NONE]
              Empty_.php [NONE]
              Error.php [NONE]
              ErrorSuppress.php [NONE]
              Eval_.php [NONE]
              Exit_.php [NONE]
              FuncCall.php [NONE]
              Include_.php [NONE]
              Instanceof_.php [NONE]
              Isset_.php [NONE]
              List_.php [NONE]
              MethodCall.php [NONE]
              New_.php [NONE]
              PostDec.php [NONE]
              PostInc.php [NONE]
              PreDec.php [NONE]
              PreInc.php [NONE]
              Print_.php [NONE]
              PropertyFetch.php [NONE]
              ShellExec.php [NONE]
              StaticCall.php [NONE]
              StaticPropertyFetch.php [NONE]
              Ternary.php [NONE]
              UnaryMinus.php [NONE]
              UnaryPlus.php [NONE]
              Variable.php [NONE]
              YieldFrom.php [NONE]
              Yield_.php [NONE]
            Expr.php [NONE]
            FunctionLike.php [NONE]
            Identifier.php [NONE]
            Name/
              FullyQualified.php [NONE]
              Relative.php [NONE]
            Name.php [NONE]
            NullableType.php [NONE]
            Param.php [NONE]
            Scalar/
              DNumber.php [NONE]
              Encapsed.php [NONE]
              EncapsedStringPart.php [NONE]
              LNumber.php [NONE]
              MagicConst/
                Class_.php [NONE]
                Dir.php [NONE]
                File.php [NONE]
                Function_.php [NONE]
                Line.php [NONE]
                Method.php [NONE]
                Namespace_.php [NONE]
                Trait_.php [NONE]
              MagicConst.php [NONE]
              String_.php [NONE]
            Scalar.php [NONE]
            Stmt/
              Break_.php [NONE]
              Case_.php [NONE]
              Catch_.php [NONE]
              ClassConst.php [NONE]
              ClassLike.php [NONE]
              ClassMethod.php [NONE]
              Class_.php [NONE]
              Const_.php [NONE]
              Continue_.php [NONE]
              DeclareDeclare.php [NONE]
              Declare_.php [NONE]
              Do_.php [NONE]
              Echo_.php [NONE]
              ElseIf_.php [NONE]
              Else_.php [NONE]
              Expression.php [NONE]
              Finally_.php [NONE]
              For_.php [NONE]
              Foreach_.php [NONE]
              Function_.php [NONE]
              Global_.php [NONE]
              Goto_.php [NONE]
              GroupUse.php [NONE]
              HaltCompiler.php [NONE]
              If_.php [NONE]
              InlineHTML.php [NONE]
              Interface_.php [NONE]
              Label.php [NONE]
              Namespace_.php [NONE]
              Nop.php [NONE]
              Property.php [NONE]
              PropertyProperty.php [NONE]
              Return_.php [NONE]
              StaticVar.php [NONE]
              Static_.php [NONE]
              Switch_.php [NONE]
              Throw_.php [NONE]
              TraitUse.php [NONE]
              TraitUseAdaptation/
                Alias.php [NONE]
                Precedence.php [NONE]
              TraitUseAdaptation.php [NONE]
              Trait_.php [NONE]
              TryCatch.php [NONE]
              Unset_.php [NONE]
              UseUse.php [NONE]
              Use_.php [NONE]
              While_.php [NONE]
            Stmt.php [NONE]
            VarLikeIdentifier.php [NONE]
          Node.php [NONE]
          NodeAbstract.php [NONE]
          NodeDumper.php [NONE]
          NodeFinder.php [NONE]
          NodeTraverser.php [NONE]
          NodeTraverserInterface.php [NONE]
          NodeVisitor/
            CloningVisitor.php [NONE]
            FindingVisitor.php [NONE]
            FirstFindingVisitor.php [NONE]
            NameResolver.php [NONE]
          NodeVisitor.php [NONE]
          NodeVisitorAbstract.php [NONE]
          Parser/
            Multiple.php [NONE]
            Php5.php [NONE]
            Php7.php [NONE]
            Tokens.php [NONE]
          Parser.php [NONE]
          ParserAbstract.php [NONE]
          ParserFactory.php [NONE]
          PrettyPrinter/
            Standard.php [NONE]
          PrettyPrinterAbstract.php [NONE]
      test_old/
        run.php [NONE]
  symfony/
    console/
      Application.php [NONE]
      Command/
        Command.php [NONE]
        HelpCommand.php [NONE]
        ListCommand.php [NONE]
        LockableTrait.php [NONE]
      CommandLoader/
        CommandLoaderInterface.php [NONE]
        ContainerCommandLoader.php [NONE]
        FactoryCommandLoader.php [NONE]
      ConsoleEvents.php [NONE]
      DependencyInjection/
        AddConsoleCommandPass.php [NONE]
      Descriptor/
        ApplicationDescription.php [NONE]
        Descriptor.php [NONE]
        DescriptorInterface.php [NONE]
        JsonDescriptor.php [NONE]
        MarkdownDescriptor.php [NONE]
        TextDescriptor.php [NONE]
        XmlDescriptor.php [NONE]
      Event/
        ConsoleCommandEvent.php [NONE]
        ConsoleErrorEvent.php [NONE]
        ConsoleEvent.php [NONE]
        ConsoleTerminateEvent.php [NONE]
      EventListener/
        ErrorListener.php [NONE]
      Exception/
        CommandNotFoundException.php [NONE]
        ExceptionInterface.php [NONE]
        InvalidArgumentException.php [NONE]
        InvalidOptionException.php [NONE]
        LogicException.php [NONE]
        RuntimeException.php [NONE]
      Formatter/
        OutputFormatter.php [NONE]
        OutputFormatterInterface.php [NONE]
        OutputFormatterStyle.php [NONE]
        OutputFormatterStyleInterface.php [NONE]
        OutputFormatterStyleStack.php [NONE]
      Helper/
        DebugFormatterHelper.php [NONE]
        DescriptorHelper.php [NONE]
        FormatterHelper.php [NONE]
        Helper.php [NONE]
        HelperInterface.php [NONE]
        HelperSet.php [NONE]
        InputAwareHelper.php [NONE]
        ProcessHelper.php [NONE]
        ProgressBar.php [NONE]
        ProgressIndicator.php [NONE]
        QuestionHelper.php [NONE]
        SymfonyQuestionHelper.php [NONE]
        Table.php [NONE]
        TableCell.php [NONE]
        TableSeparator.php [NONE]
        TableStyle.php [NONE]
      Input/
        ArgvInput.php [NONE]
        ArrayInput.php [NONE]
        Input.php [NONE]
        InputArgument.php [NONE]
        InputAwareInterface.php [NONE]
        InputDefinition.php [NONE]
        InputInterface.php [NONE]
        InputOption.php [NONE]
        StreamableInputInterface.php [NONE]
        StringInput.php [NONE]
      Logger/
        ConsoleLogger.php [NONE]
      Output/
        BufferedOutput.php [NONE]
        ConsoleOutput.php [NONE]
        ConsoleOutputInterface.php [NONE]
        NullOutput.php [NONE]
        Output.php [NONE]
        OutputInterface.php [NONE]
        StreamOutput.php [NONE]
      Question/
        ChoiceQuestion.php [NONE]
        ConfirmationQuestion.php [NONE]
        Question.php [NONE]
      Style/
        OutputStyle.php [NONE]
        StyleInterface.php [NONE]
        SymfonyStyle.php [NONE]
      Terminal.php [NONE]
      Tester/
        ApplicationTester.php [NONE]
        CommandTester.php [NONE]
    polyfill-mbstring/
      Mbstring.php [NONE]
      Resources/
        unidata/
          lowerCase.php [NONE]
          upperCase.php [NONE]
      bootstrap.php [NONE]
    polyfill-php72/
      Php72.php [NONE]
      bootstrap.php [NONE]
    var-dumper/
      Caster/
        AmqpCaster.php [NONE]
        ArgsStub.php [NONE]
        Caster.php [NONE]
        ClassStub.php [NONE]
        ConstStub.php [NONE]
        CutArrayStub.php [NONE]
        CutStub.php [NONE]
        DOMCaster.php [NONE]
        DateCaster.php [NONE]
        DoctrineCaster.php [NONE]
        EnumStub.php [NONE]
        ExceptionCaster.php [NONE]
        FrameStub.php [NONE]
        LinkStub.php [NONE]
        PdoCaster.php [NONE]
        PgSqlCaster.php [NONE]
        RedisCaster.php [NONE]
        ReflectionCaster.php [NONE]
        ResourceCaster.php [NONE]
        SplCaster.php [NONE]
        StubCaster.php [NONE]
        SymfonyCaster.php [NONE]
        TraceStub.php [NONE]
        XmlReaderCaster.php [NONE]
        XmlResourceCaster.php [NONE]
      Cloner/
        AbstractCloner.php [NONE]
        ClonerInterface.php [NONE]
        Cursor.php [NONE]
        Data.php [NONE]
        DumperInterface.php [NONE]
        Stub.php [NONE]
        VarCloner.php [NONE]
      Dumper/
        AbstractDumper.php [NONE]
        CliDumper.php [NONE]
        DataDumperInterface.php [NONE]
        HtmlDumper.php [NONE]
      Exception/
        ThrowingCasterException.php [NONE]
      Resources/
        functions/
          dump.php [NONE]
      VarDumper.php [NONE]
src/
  CodeCleaner/
    AbstractClassPass.php [NONE]
    AssignThisVariablePass.php [NONE]
    CallTimePassByReferencePass.php [NONE]
    CalledClassPass.php [NONE]
    CodeCleanerPass.php [NONE]
    ExitPass.php [NONE]
    FinalClassPass.php [NONE]
    FunctionContextPass.php [NONE]
    FunctionReturnInWriteContextPass.php [NONE]
    ImplicitReturnPass.php [NONE]
    InstanceOfPass.php [NONE]
    LeavePsyshAlonePass.php [NONE]
    LegacyEmptyPass.php [NONE]
    LoopContextPass.php [NONE]
    MagicConstantsPass.php [NONE]
    NamespaceAwarePass.php [NONE]
    NamespacePass.php [NONE]
    NoReturnValue.php [NONE]
    PassableByReferencePass.php [NONE]
    RequirePass.php [NONE]
    StrictTypesPass.php [NONE]
    UseStatementPass.php [NONE]
    ValidClassNamePass.php [NONE]
    ValidConstantPass.php [NONE]
    ValidConstructorPass.php [NONE]
    ValidFunctionNamePass.php [NONE]
  CodeCleaner.php [NONE]
  Command/
    BufferCommand.php [NONE]
    ClearCommand.php [NONE]
    Command.php [NONE]
    DocCommand.php [NONE]
    DumpCommand.php [NONE]
    EditCommand.php [NONE]
    ExitCommand.php [NONE]
    HelpCommand.php [NONE]
    HistoryCommand.php [NONE]
    ListCommand/
      ClassConstantEnumerator.php [NONE]
      ClassEnumerator.php [NONE]
      ConstantEnumerator.php [NONE]
      Enumerator.php [NONE]
      FunctionEnumerator.php [NONE]
      GlobalVariableEnumerator.php [NONE]
      InterfaceEnumerator.php [NONE]
      MethodEnumerator.php [NONE]
      PropertyEnumerator.php [NONE]
      TraitEnumerator.php [NONE]
      VariableEnumerator.php [NONE]
    ListCommand.php [NONE]
    ParseCommand.php [NONE]
    PsyVersionCommand.php [NONE]
    ReflectingCommand.php [NONE]
    ShowCommand.php [NONE]
    SudoCommand.php [NONE]
    ThrowUpCommand.php [NONE]
    TimeitCommand.php [NONE]
    TraceCommand.php [NONE]
    WhereamiCommand.php [NONE]
    WtfCommand.php [NONE]
  ConfigPaths.php [NONE]
  Configuration.php [NONE]
  ConsoleColorFactory.php [NONE]
  Context.php [NONE]
  ContextAware.php [NONE]
  Exception/
    BreakException.php [NONE]
    DeprecatedException.php [NONE]
    ErrorException.php [NONE]
    Exception.php [NONE]
    FatalErrorException.php [NONE]
    ParseErrorException.php [NONE]
    RuntimeException.php [NONE]
    ThrowUpException.php [NONE]
    TypeErrorException.php [NONE]
  ExecutionClosure.php [NONE]
  ExecutionLoop/
    AbstractListener.php [NONE]
    Listener.php [NONE]
    ProcessForker.php [NONE]
    RunkitReloader.php [NONE]
  ExecutionLoop.php [NONE]
  Formatter/
    CodeFormatter.php [NONE]
    DocblockFormatter.php [NONE]
    Formatter.php [NONE]
    SignatureFormatter.php [NONE]
  Input/
    CodeArgument.php [NONE]
    FilterOptions.php [NONE]
    ShellInput.php [NONE]
    SilentInput.php [NONE]
  Output/
    OutputPager.php [NONE]
    PassthruPager.php [NONE]
    ProcOutputPager.php [NONE]
    ShellOutput.php [NONE]
  ParserFactory.php [NONE]
  Readline/
    GNUReadline.php [NONE]
    HoaConsole.php [NONE]
    Libedit.php [NONE]
    Readline.php [NONE]
    Transient.php [NONE]
  Reflection/
    ReflectionConstant.php [NONE]
    ReflectionLanguageConstruct.php [NONE]
    ReflectionLanguageConstructParameter.php [NONE]
  Shell.php [NONE]
  Sudo/
    SudoVisitor.php [NONE]
  Sudo.php [NONE]
  TabCompletion/
    AutoCompleter.php [NONE]
    Matcher/
      AbstractContextAwareMatcher.php [NONE]
      AbstractDefaultParametersMatcher.php [NONE]
      AbstractMatcher.php [NONE]
      ClassAttributesMatcher.php [NONE]
      ClassMethodDefaultParametersMatcher.php [NONE]
      ClassMethodsMatcher.php [NONE]
      ClassNamesMatcher.php [NONE]
      CommandsMatcher.php [NONE]
      ConstantsMatcher.php [NONE]
      FunctionDefaultParametersMatcher.php [NONE]
      FunctionsMatcher.php [NONE]
      KeywordsMatcher.php [NONE]
      MongoClientMatcher.php [NONE]
      MongoDatabaseMatcher.php [NONE]
      ObjectAttributesMatcher.php [NONE]
      ObjectMethodDefaultParametersMatcher.php [NONE]
      ObjectMethodsMatcher.php [NONE]
      VariablesMatcher.php [NONE]
  Util/
    Docblock.php [NONE]
    Json.php [NONE]
    Mirror.php [NONE]
    Str.php [NONE]
  VarDumper/
    Cloner.php [NONE]
    Dumper.php [NONE]
    Presenter.php [NONE]
    PresenterAware.php [NONE]
  VersionUpdater/
    Checker.php [NONE]
    GitHubChecker.php [NONE]
    IntervalChecker.php [NONE]
    NoopChecker.php [NONE]
  functions.php [NONE]

`psysh-compat.phar` details

API Version: 1.1.0

Archive Compression: None

Signature: SHA-1
Signature Hash: E37FB485B661875D07CE6A4B626B8057EB76C9EE

Metadata: None

Contents: 701 files (1.63MB)
build-vendor/
  autoload.php [NONE]
  composer/
    ClassLoader.php [NONE]
    autoload_classmap.php [NONE]
    autoload_files.php [NONE]
    autoload_namespaces.php [NONE]
    autoload_psr4.php [NONE]
    autoload_real.php [NONE]
    autoload_static.php [NONE]
  dnoegel/
    php-xdg-base-dir/
      src/
        Xdg.php [NONE]
  hoa/
    consistency/
      Autoloader.php [NONE]
      Consistency.php [NONE]
      Exception.php [NONE]
      Prelude.php [NONE]
      Xcallable.php [NONE]
    console/
      Bin/
        Termcap.php [NONE]
      Chrome/
        Editor.php [NONE]
        Exception.php [NONE]
        Pager.php [NONE]
        Text.php [NONE]
      Console.php [NONE]
      Cursor.php [NONE]
      Dispatcher/
        Kit.php [NONE]
      Exception.php [NONE]
      GetOption.php [NONE]
      Input.php [NONE]
      Mouse.php [NONE]
      Output.php [NONE]
      Parser.php [NONE]
      Processus.php [NONE]
      Readline/
        Autocompleter/
          Aggregate.php [NONE]
          Autocompleter.php [NONE]
          Path.php [NONE]
          Word.php [NONE]
        Password.php [NONE]
        Readline.php [NONE]
      Tput.php [NONE]
      Window.php [NONE]
    event/
      Bucket.php [NONE]
      Event.php [NONE]
      Exception.php [NONE]
      Listenable.php [NONE]
      Listener.php [NONE]
      Listens.php [NONE]
      Source.php [NONE]
    exception/
      Error.php [NONE]
      Exception.php [NONE]
      Group.php [NONE]
      Idle.php [NONE]
    file/
      Directory.php [NONE]
      Exception/
        Exception.php [NONE]
        FileDoesNotExist.php [NONE]
      File.php [NONE]
      Finder.php [NONE]
      Generic.php [NONE]
      Link/
        Link.php [NONE]
        Read.php [NONE]
        ReadWrite.php [NONE]
        Write.php [NONE]
      Read.php [NONE]
      ReadWrite.php [NONE]
      SplFileInfo.php [NONE]
      Temporary/
        Read.php [NONE]
        ReadWrite.php [NONE]
        Temporary.php [NONE]
        Write.php [NONE]
      Watcher.php [NONE]
      Write.php [NONE]
    iterator/
      Aggregate.php [NONE]
      Append.php [NONE]
      Buffer.php [NONE]
      CallbackFilter.php [NONE]
      CallbackGenerator.php [NONE]
      Counter.php [NONE]
      Demultiplexer.php [NONE]
      Directory.php [NONE]
      Exception.php [NONE]
      FileSystem.php [NONE]
      Filter.php [NONE]
      Glob.php [NONE]
      Infinite.php [NONE]
      Iterator.php [NONE]
      IteratorIterator.php [NONE]
      Limit.php [NONE]
      Lookahead.php [NONE]
      Lookbehind.php [NONE]
      Map.php [NONE]
      Mock.php [NONE]
      Multiple.php [NONE]
      NoRewind.php [NONE]
      Outer.php [NONE]
      Recursive/
        CallbackFilter.php [NONE]
        Directory.php [NONE]
        Filter.php [NONE]
        Iterator.php [NONE]
        Map.php [NONE]
        Mock.php [NONE]
        Recursive.php [NONE]
        RegularExpression.php [NONE]
      RegularExpression.php [NONE]
      Repeater.php [NONE]
      Seekable.php [NONE]
      SplFileInfo.php [NONE]
    protocol/
      Bin/
        Resolve.php [NONE]
      Exception.php [NONE]
      Node/
        Library.php [NONE]
        Node.php [NONE]
      Protocol.php [NONE]
      Wrapper.php [NONE]
    stream/
      Bucket.php [NONE]
      Composite.php [NONE]
      Context.php [NONE]
      Exception.php [NONE]
      Filter/
        Basic.php [NONE]
        Exception.php [NONE]
        Filter.php [NONE]
        LateComputed.php [NONE]
      IStream/
        Bufferable.php [NONE]
        In.php [NONE]
        Lockable.php [NONE]
        Out.php [NONE]
        Pathable.php [NONE]
        Pointable.php [NONE]
        Statable.php [NONE]
        Stream.php [NONE]
        Structural.php [NONE]
        Touchable.php [NONE]
      Stream.php [NONE]
      Wrapper/
        Exception.php [NONE]
        IWrapper/
          File.php [NONE]
          IWrapper.php [NONE]
          Stream.php [NONE]
        Wrapper.php [NONE]
    ustring/
      Bin/
        Fromcode.php [NONE]
        Tocode.php [NONE]
      Exception.php [NONE]
      Search.php [NONE]
      Ustring.php [NONE]
  jakub-onderka/
    php-console-color/
      example.php [NONE]
      src/
        JakubOnderka/
          PhpConsoleColor/
            ConsoleColor.php [NONE]
            InvalidStyleException.php [NONE]
    php-console-highlighter/
      examples/
        snippet.php [NONE]
        whole_file.php [NONE]
        whole_file_line_numbers.php [NONE]
      src/
        JakubOnderka/
          PhpConsoleHighlighter/
            Highlighter.php [NONE]
  nikic/
    php-parser/
      grammar/
        rebuildParsers.php [NONE]
      lib/
        PhpParser/
          Builder/
            Class_.php [NONE]
            Declaration.php [NONE]
            FunctionLike.php [NONE]
            Function_.php [NONE]
            Interface_.php [NONE]
            Method.php [NONE]
            Namespace_.php [NONE]
            Param.php [NONE]
            Property.php [NONE]
            Trait_.php [NONE]
            Use_.php [NONE]
          Builder.php [NONE]
          BuilderFactory.php [NONE]
          BuilderHelpers.php [NONE]
          Comment/
            Doc.php [NONE]
          Comment.php [NONE]
          ConstExprEvaluationException.php [NONE]
          ConstExprEvaluator.php [NONE]
          Error.php [NONE]
          ErrorHandler/
            Collecting.php [NONE]
            Throwing.php [NONE]
          ErrorHandler.php [NONE]
          Internal/
            DiffElem.php [NONE]
            Differ.php [NONE]
            PrintableNewAnonClassNode.php [NONE]
            TokenStream.php [NONE]
          JsonDecoder.php [NONE]
          Lexer/
            Emulative.php [NONE]
          Lexer.php [NONE]
          NameContext.php [NONE]
          Node/
            Arg.php [NONE]
            Const_.php [NONE]
            Expr/
              ArrayDimFetch.php [NONE]
              ArrayItem.php [NONE]
              Array_.php [NONE]
              Assign.php [NONE]
              AssignOp/
                BitwiseAnd.php [NONE]
                BitwiseOr.php [NONE]
                BitwiseXor.php [NONE]
                Concat.php [NONE]
                Div.php [NONE]
                Minus.php [NONE]
                Mod.php [NONE]
                Mul.php [NONE]
                Plus.php [NONE]
                Pow.php [NONE]
                ShiftLeft.php [NONE]
                ShiftRight.php [NONE]
              AssignOp.php [NONE]
              AssignRef.php [NONE]
              BinaryOp/
                BitwiseAnd.php [NONE]
                BitwiseOr.php [NONE]
                BitwiseXor.php [NONE]
                BooleanAnd.php [NONE]
                BooleanOr.php [NONE]
                Coalesce.php [NONE]
                Concat.php [NONE]
                Div.php [NONE]
                Equal.php [NONE]
                Greater.php [NONE]
                GreaterOrEqual.php [NONE]
                Identical.php [NONE]
                LogicalAnd.php [NONE]
                LogicalOr.php [NONE]
                LogicalXor.php [NONE]
                Minus.php [NONE]
                Mod.php [NONE]
                Mul.php [NONE]
                NotEqual.php [NONE]
                NotIdentical.php [NONE]
                Plus.php [NONE]
                Pow.php [NONE]
                ShiftLeft.php [NONE]
                ShiftRight.php [NONE]
                Smaller.php [NONE]
                SmallerOrEqual.php [NONE]
                Spaceship.php [NONE]
              BinaryOp.php [NONE]
              BitwiseNot.php [NONE]
              BooleanNot.php [NONE]
              Cast/
                Array_.php [NONE]
                Bool_.php [NONE]
                Double.php [NONE]
                Int_.php [NONE]
                Object_.php [NONE]
                String_.php [NONE]
                Unset_.php [NONE]
              Cast.php [NONE]
              ClassConstFetch.php [NONE]
              Clone_.php [NONE]
              Closure.php [NONE]
              ClosureUse.php [NONE]
              ConstFetch.php [NONE]
              Empty_.php [NONE]
              Error.php [NONE]
              ErrorSuppress.php [NONE]
              Eval_.php [NONE]
              Exit_.php [NONE]
              FuncCall.php [NONE]
              Include_.php [NONE]
              Instanceof_.php [NONE]
              Isset_.php [NONE]
              List_.php [NONE]
              MethodCall.php [NONE]
              New_.php [NONE]
              PostDec.php [NONE]
              PostInc.php [NONE]
              PreDec.php [NONE]
              PreInc.php [NONE]
              Print_.php [NONE]
              PropertyFetch.php [NONE]
              ShellExec.php [NONE]
              StaticCall.php [NONE]
              StaticPropertyFetch.php [NONE]
              Ternary.php [NONE]
              UnaryMinus.php [NONE]
              UnaryPlus.php [NONE]
              Variable.php [NONE]
              YieldFrom.php [NONE]
              Yield_.php [NONE]
            Expr.php [NONE]
            FunctionLike.php [NONE]
            Identifier.php [NONE]
            Name/
              FullyQualified.php [NONE]
              Relative.php [NONE]
            Name.php [NONE]
            NullableType.php [NONE]
            Param.php [NONE]
            Scalar/
              DNumber.php [NONE]
              Encapsed.php [NONE]
              EncapsedStringPart.php [NONE]
              LNumber.php [NONE]
              MagicConst/
                Class_.php [NONE]
                Dir.php [NONE]
                File.php [NONE]
                Function_.php [NONE]
                Line.php [NONE]
                Method.php [NONE]
                Namespace_.php [NONE]
                Trait_.php [NONE]
              MagicConst.php [NONE]
              String_.php [NONE]
            Scalar.php [NONE]
            Stmt/
              Break_.php [NONE]
              Case_.php [NONE]
              Catch_.php [NONE]
              ClassConst.php [NONE]
              ClassLike.php [NONE]
              ClassMethod.php [NONE]
              Class_.php [NONE]
              Const_.php [NONE]
              Continue_.php [NONE]
              DeclareDeclare.php [NONE]
              Declare_.php [NONE]
              Do_.php [NONE]
              Echo_.php [NONE]
              ElseIf_.php [NONE]
              Else_.php [NONE]
              Expression.php [NONE]
              Finally_.php [NONE]
              For_.php [NONE]
              Foreach_.php [NONE]
              Function_.php [NONE]
              Global_.php [NONE]
              Goto_.php [NONE]
              GroupUse.php [NONE]
              HaltCompiler.php [NONE]
              If_.php [NONE]
              InlineHTML.php [NONE]
              Interface_.php [NONE]
              Label.php [NONE]
              Namespace_.php [NONE]
              Nop.php [NONE]
              Property.php [NONE]
              PropertyProperty.php [NONE]
              Return_.php [NONE]
              StaticVar.php [NONE]
              Static_.php [NONE]
              Switch_.php [NONE]
              Throw_.php [NONE]
              TraitUse.php [NONE]
              TraitUseAdaptation/
                Alias.php [NONE]
                Precedence.php [NONE]
              TraitUseAdaptation.php [NONE]
              Trait_.php [NONE]
              TryCatch.php [NONE]
              Unset_.php [NONE]
              UseUse.php [NONE]
              Use_.php [NONE]
              While_.php [NONE]
            Stmt.php [NONE]
            VarLikeIdentifier.php [NONE]
          Node.php [NONE]
          NodeAbstract.php [NONE]
          NodeDumper.php [NONE]
          NodeFinder.php [NONE]
          NodeTraverser.php [NONE]
          NodeTraverserInterface.php [NONE]
          NodeVisitor/
            CloningVisitor.php [NONE]
            FindingVisitor.php [NONE]
            FirstFindingVisitor.php [NONE]
            NameResolver.php [NONE]
          NodeVisitor.php [NONE]
          NodeVisitorAbstract.php [NONE]
          Parser/
            Multiple.php [NONE]
            Php5.php [NONE]
            Php7.php [NONE]
            Tokens.php [NONE]
          Parser.php [NONE]
          ParserAbstract.php [NONE]
          ParserFactory.php [NONE]
          PrettyPrinter/
            Standard.php [NONE]
          PrettyPrinterAbstract.php [NONE]
      test_old/
        run.php [NONE]
  symfony/
    console/
      Application.php [NONE]
      Command/
        Command.php [NONE]
        HelpCommand.php [NONE]
        ListCommand.php [NONE]
        LockableTrait.php [NONE]
      CommandLoader/
        CommandLoaderInterface.php [NONE]
        ContainerCommandLoader.php [NONE]
        FactoryCommandLoader.php [NONE]
      ConsoleEvents.php [NONE]
      DependencyInjection/
        AddConsoleCommandPass.php [NONE]
      Descriptor/
        ApplicationDescription.php [NONE]
        Descriptor.php [NONE]
        DescriptorInterface.php [NONE]
        JsonDescriptor.php [NONE]
        MarkdownDescriptor.php [NONE]
        TextDescriptor.php [NONE]
        XmlDescriptor.php [NONE]
      Event/
        ConsoleCommandEvent.php [NONE]
        ConsoleErrorEvent.php [NONE]
        ConsoleEvent.php [NONE]
        ConsoleTerminateEvent.php [NONE]
      EventListener/
        ErrorListener.php [NONE]
      Exception/
        CommandNotFoundException.php [NONE]
        ExceptionInterface.php [NONE]
        InvalidArgumentException.php [NONE]
        InvalidOptionException.php [NONE]
        LogicException.php [NONE]
        RuntimeException.php [NONE]
      Formatter/
        OutputFormatter.php [NONE]
        OutputFormatterInterface.php [NONE]
        OutputFormatterStyle.php [NONE]
        OutputFormatterStyleInterface.php [NONE]
        OutputFormatterStyleStack.php [NONE]
      Helper/
        DebugFormatterHelper.php [NONE]
        DescriptorHelper.php [NONE]
        FormatterHelper.php [NONE]
        Helper.php [NONE]
        HelperInterface.php [NONE]
        HelperSet.php [NONE]
        InputAwareHelper.php [NONE]
        ProcessHelper.php [NONE]
        ProgressBar.php [NONE]
        ProgressIndicator.php [NONE]
        QuestionHelper.php [NONE]
        SymfonyQuestionHelper.php [NONE]
        Table.php [NONE]
        TableCell.php [NONE]
        TableSeparator.php [NONE]
        TableStyle.php [NONE]
      Input/
        ArgvInput.php [NONE]
        ArrayInput.php [NONE]
        Input.php [NONE]
        InputArgument.php [NONE]
        InputAwareInterface.php [NONE]
        InputDefinition.php [NONE]
        InputInterface.php [NONE]
        InputOption.php [NONE]
        StreamableInputInterface.php [NONE]
        StringInput.php [NONE]
      Logger/
        ConsoleLogger.php [NONE]
      Output/
        BufferedOutput.php [NONE]
        ConsoleOutput.php [NONE]
        ConsoleOutputInterface.php [NONE]
        NullOutput.php [NONE]
        Output.php [NONE]
        OutputInterface.php [NONE]
        StreamOutput.php [NONE]
      Question/
        ChoiceQuestion.php [NONE]
        ConfirmationQuestion.php [NONE]
        Question.php [NONE]
      Style/
        OutputStyle.php [NONE]
        StyleInterface.php [NONE]
        SymfonyStyle.php [NONE]
      Terminal.php [NONE]
      Tester/
        ApplicationTester.php [NONE]
        CommandTester.php [NONE]
    intl/
      Collator/
        Collator.php [NONE]
      Data/
        Bundle/
          Compiler/
            BundleCompilerInterface.php [NONE]
            GenrbCompiler.php [NONE]
          Reader/
            BufferedBundleReader.php [NONE]
            BundleEntryReader.php [NONE]
            BundleEntryReaderInterface.php [NONE]
            BundleReaderInterface.php [NONE]
            IntlBundleReader.php [NONE]
            JsonBundleReader.php [NONE]
            PhpBundleReader.php [NONE]
          Writer/
            BundleWriterInterface.php [NONE]
            JsonBundleWriter.php [NONE]
            PhpBundleWriter.php [NONE]
            TextBundleWriter.php [NONE]
        Generator/
          AbstractDataGenerator.php [NONE]
          CurrencyDataGenerator.php [NONE]
          GeneratorConfig.php [NONE]
          LanguageDataGenerator.php [NONE]
          LocaleDataGenerator.php [NONE]
          RegionDataGenerator.php [NONE]
          ScriptDataGenerator.php [NONE]
        Provider/
          CurrencyDataProvider.php [NONE]
          LanguageDataProvider.php [NONE]
          LocaleDataProvider.php [NONE]
          RegionDataProvider.php [NONE]
          ScriptDataProvider.php [NONE]
        Util/
          ArrayAccessibleResourceBundle.php [NONE]
          LocaleScanner.php [NONE]
          RecursiveArrayAccess.php [NONE]
          RingBuffer.php [NONE]
      DateFormatter/
        DateFormat/
          AmPmTransformer.php [NONE]
          DayOfWeekTransformer.php [NONE]
          DayOfYearTransformer.php [NONE]
          DayTransformer.php [NONE]
          FullTransformer.php [NONE]
          Hour1200Transformer.php [NONE]
          Hour1201Transformer.php [NONE]
          Hour2400Transformer.php [NONE]
          Hour2401Transformer.php [NONE]
          HourTransformer.php [NONE]
          MinuteTransformer.php [NONE]
          MonthTransformer.php [NONE]
          QuarterTransformer.php [NONE]
          SecondTransformer.php [NONE]
          TimezoneTransformer.php [NONE]
          Transformer.php [NONE]
          YearTransformer.php [NONE]
        IntlDateFormatter.php [NONE]
      Exception/
        BadMethodCallException.php [NONE]
        ExceptionInterface.php [NONE]
        InvalidArgumentException.php [NONE]
        MethodArgumentNotImplementedException.php [NONE]
        MethodArgumentValueNotImplementedException.php [NONE]
        MethodNotImplementedException.php [NONE]
        MissingResourceException.php [NONE]
        NotImplementedException.php [NONE]
        OutOfBoundsException.php [NONE]
        ResourceBundleNotFoundException.php [NONE]
        RuntimeException.php [NONE]
        UnexpectedTypeException.php [NONE]
      Globals/
        IntlGlobals.php [NONE]
      Intl.php [NONE]
      Locale/
        Locale.php [NONE]
      Locale.php [NONE]
      NumberFormatter/
        NumberFormatter.php [NONE]
      ResourceBundle/
        CurrencyBundle.php [NONE]
        CurrencyBundleInterface.php [NONE]
        LanguageBundle.php [NONE]
        LanguageBundleInterface.php [NONE]
        LocaleBundle.php [NONE]
        LocaleBundleInterface.php [NONE]
        RegionBundle.php [NONE]
        RegionBundleInterface.php [NONE]
        ResourceBundleInterface.php [NONE]
      Resources/
        bin/
          autoload.php [NONE]
          common.php [NONE]
          update-data.php [NONE]
        stubs/
          Collator.php [NONE]
          IntlDateFormatter.php [NONE]
          Locale.php [NONE]
          NumberFormatter.php [NONE]
      Util/
        IcuVersion.php [NONE]
        IntlTestHelper.php [NONE]
        SvnCommit.php [NONE]
        SvnRepository.php [NONE]
        Version.php [NONE]
    polyfill-intl-icu/
      bootstrap.php [NONE]
    polyfill-mbstring/
      Mbstring.php [NONE]
      Resources/
        unidata/
          lowerCase.php [NONE]
          upperCase.php [NONE]
      bootstrap.php [NONE]
    polyfill-php72/
      Php72.php [NONE]
      bootstrap.php [NONE]
    var-dumper/
      Caster/
        AmqpCaster.php [NONE]
        ArgsStub.php [NONE]
        Caster.php [NONE]
        ClassStub.php [NONE]
        ConstStub.php [NONE]
        CutArrayStub.php [NONE]
        CutStub.php [NONE]
        DOMCaster.php [NONE]
        DateCaster.php [NONE]
        DoctrineCaster.php [NONE]
        EnumStub.php [NONE]
        ExceptionCaster.php [NONE]
        FrameStub.php [NONE]
        LinkStub.php [NONE]
        PdoCaster.php [NONE]
        PgSqlCaster.php [NONE]
        RedisCaster.php [NONE]
        ReflectionCaster.php [NONE]
        ResourceCaster.php [NONE]
        SplCaster.php [NONE]
        StubCaster.php [NONE]
        SymfonyCaster.php [NONE]
        TraceStub.php [NONE]
        XmlReaderCaster.php [NONE]
        XmlResourceCaster.php [NONE]
      Cloner/
        AbstractCloner.php [NONE]
        ClonerInterface.php [NONE]
        Cursor.php [NONE]
        Data.php [NONE]
        DumperInterface.php [NONE]
        Stub.php [NONE]
        VarCloner.php [NONE]
      Dumper/
        AbstractDumper.php [NONE]
        CliDumper.php [NONE]
        DataDumperInterface.php [NONE]
        HtmlDumper.php [NONE]
      Exception/
        ThrowingCasterException.php [NONE]
      Resources/
        functions/
          dump.php [NONE]
      VarDumper.php [NONE]
src/
  CodeCleaner/
    AbstractClassPass.php [NONE]
    AssignThisVariablePass.php [NONE]
    CallTimePassByReferencePass.php [NONE]
    CalledClassPass.php [NONE]
    CodeCleanerPass.php [NONE]
    ExitPass.php [NONE]
    FinalClassPass.php [NONE]
    FunctionContextPass.php [NONE]
    FunctionReturnInWriteContextPass.php [NONE]
    ImplicitReturnPass.php [NONE]
    InstanceOfPass.php [NONE]
    LeavePsyshAlonePass.php [NONE]
    LegacyEmptyPass.php [NONE]
    LoopContextPass.php [NONE]
    MagicConstantsPass.php [NONE]
    NamespaceAwarePass.php [NONE]
    NamespacePass.php [NONE]
    NoReturnValue.php [NONE]
    PassableByReferencePass.php [NONE]
    RequirePass.php [NONE]
    StrictTypesPass.php [NONE]
    UseStatementPass.php [NONE]
    ValidClassNamePass.php [NONE]
    ValidConstantPass.php [NONE]
    ValidConstructorPass.php [NONE]
    ValidFunctionNamePass.php [NONE]
  CodeCleaner.php [NONE]
  Command/
    BufferCommand.php [NONE]
    ClearCommand.php [NONE]
    Command.php [NONE]
    DocCommand.php [NONE]
    DumpCommand.php [NONE]
    EditCommand.php [NONE]
    ExitCommand.php [NONE]
    HelpCommand.php [NONE]
    HistoryCommand.php [NONE]
    ListCommand/
      ClassConstantEnumerator.php [NONE]
      ClassEnumerator.php [NONE]
      ConstantEnumerator.php [NONE]
      Enumerator.php [NONE]
      FunctionEnumerator.php [NONE]
      GlobalVariableEnumerator.php [NONE]
      InterfaceEnumerator.php [NONE]
      MethodEnumerator.php [NONE]
      PropertyEnumerator.php [NONE]
      TraitEnumerator.php [NONE]
      VariableEnumerator.php [NONE]
    ListCommand.php [NONE]
    ParseCommand.php [NONE]
    PsyVersionCommand.php [NONE]
    ReflectingCommand.php [NONE]
    ShowCommand.php [NONE]
    SudoCommand.php [NONE]
    ThrowUpCommand.php [NONE]
    TimeitCommand.php [NONE]
    TraceCommand.php [NONE]
    WhereamiCommand.php [NONE]
    WtfCommand.php [NONE]
  ConfigPaths.php [NONE]
  Configuration.php [NONE]
  ConsoleColorFactory.php [NONE]
  Context.php [NONE]
  ContextAware.php [NONE]
  Exception/
    BreakException.php [NONE]
    DeprecatedException.php [NONE]
    ErrorException.php [NONE]
    Exception.php [NONE]
    FatalErrorException.php [NONE]
    ParseErrorException.php [NONE]
    RuntimeException.php [NONE]
    ThrowUpException.php [NONE]
    TypeErrorException.php [NONE]
  ExecutionClosure.php [NONE]
  ExecutionLoop/
    AbstractListener.php [NONE]
    Listener.php [NONE]
    ProcessForker.php [NONE]
    RunkitReloader.php [NONE]
  ExecutionLoop.php [NONE]
  Formatter/
    CodeFormatter.php [NONE]
    DocblockFormatter.php [NONE]
    Formatter.php [NONE]
    SignatureFormatter.php [NONE]
  Input/
    CodeArgument.php [NONE]
    FilterOptions.php [NONE]
    ShellInput.php [NONE]
    SilentInput.php [NONE]
  Output/
    OutputPager.php [NONE]
    PassthruPager.php [NONE]
    ProcOutputPager.php [NONE]
    ShellOutput.php [NONE]
  ParserFactory.php [NONE]
  Readline/
    GNUReadline.php [NONE]
    HoaConsole.php [NONE]
    Libedit.php [NONE]
    Readline.php [NONE]
    Transient.php [NONE]
  Reflection/
    ReflectionConstant.php [NONE]
    ReflectionLanguageConstruct.php [NONE]
    ReflectionLanguageConstructParameter.php [NONE]
  Shell.php [NONE]
  Sudo/
    SudoVisitor.php [NONE]
  Sudo.php [NONE]
  TabCompletion/
    AutoCompleter.php [NONE]
    Matcher/
      AbstractContextAwareMatcher.php [NONE]
      AbstractDefaultParametersMatcher.php [NONE]
      AbstractMatcher.php [NONE]
      ClassAttributesMatcher.php [NONE]
      ClassMethodDefaultParametersMatcher.php [NONE]
      ClassMethodsMatcher.php [NONE]
      ClassNamesMatcher.php [NONE]
      CommandsMatcher.php [NONE]
      ConstantsMatcher.php [NONE]
      FunctionDefaultParametersMatcher.php [NONE]
      FunctionsMatcher.php [NONE]
      KeywordsMatcher.php [NONE]
      MongoClientMatcher.php [NONE]
      MongoDatabaseMatcher.php [NONE]
      ObjectAttributesMatcher.php [NONE]
      ObjectMethodDefaultParametersMatcher.php [NONE]
      ObjectMethodsMatcher.php [NONE]
      VariablesMatcher.php [NONE]
  Util/
    Docblock.php [NONE]
    Json.php [NONE]
    Mirror.php [NONE]
    Str.php [NONE]
  VarDumper/
    Cloner.php [NONE]
    Dumper.php [NONE]
    Presenter.php [NONE]
    PresenterAware.php [NONE]
  VersionUpdater/
    Checker.php [NONE]
    GitHubChecker.php [NONE]
    IntervalChecker.php [NONE]
    NoopChecker.php [NONE]
  functions.php [NONE]

Build with Box
time make build                                                                                                                                                                                                                tfidry@Theos-MBP
The composer.lock file is not synchronized with the composer.json file
bin/build-stub
rm -rf build/psysh || true
mkdir build/psysh
cp -R bin src box.json.dist composer.json composer.lock build/stub build/psysh/
composer update --working-dir build/psysh --prefer-stable --no-dev --no-progress --classmap-authoritative --no-interaction --verbose --prefer-dist
Loading composer repositories with package information
Updating dependencies
Dependency resolution completed in 0.113 seconds
Analyzed 3084 packages to resolve dependencies
Analyzed 116494 rules to resolve dependencies
Dependency resolution completed in 0.000 seconds
Package operations: 9 installs, 0 updates, 0 removals
Installs: dnoegel/php-xdg-base-dir:0.1, psr/log:1.0.2, symfony/debug:v3.4.9, symfony/polyfill-mbstring:v1.8.0, symfony/console:v3.4.9, symfony/var-dumper:v3.4.9, nikic/php-parser:v4.0.1, jakub-onderka/php-console-color:0.1, jakub-onderka/php-console-highlighter:v0.3.2
  - Installing dnoegel/php-xdg-base-dir (0.1): Loading from cache
 Extracting archive  - Installing psr/log (1.0.2): Loading from cache
 Extracting archive  - Installing symfony/debug (v3.4.9): Loading from cache
 Extracting archive  - Installing symfony/polyfill-mbstring (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/console (v3.4.9): Loading from cache
 Extracting archive  - Installing symfony/var-dumper (v3.4.9): Loading from cache
 Extracting archive  - Installing nikic/php-parser (v4.0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-color (0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-highlighter (v0.3.2): Loading from cache
 Extracting archiveWriting lock file
Generating optimized autoload files
vendor/bin/box compile --working-dir build/psysh

    ____
   / __ )____  _  __
  / __  / __ \| |/_/
 / /_/ / /_/ />  <
/_____/\____/_/|_|


Box (repo)


 // Loading the configuration file "/Users/tfidry/Project/psysh/build/psysh/box.json.dist".

Building the PHAR "/Users/tfidry/Project/psysh/build/psysh/bin/psysh.phar"
? Registering compactors
  + KevinGH\Box\Compactor\Php
? Adding main file: /Users/tfidry/Project/psysh/build/psysh/bin/psysh
? Adding requirements checker
? Adding binary files
    > No file found
? Adding files
    > 516 file(s)
? Using stub file: /Users/tfidry/Project/psysh/build/psysh/stub
? No compression
? Setting file permissions to 0755
* Done.

 // You can inspect the generated PHAR with the "info" command.

 // PHAR size: 1.72MB
 // Memory usage: 8.60MB (peak: 21.38MB), time: 1.04s

cp build/psysh/bin/psysh.phar build/psysh.phar
rm -rf build/psysh-compat || true
mkdir build/psysh-compat
cp -R bin src box.json.dist composer.json composer.lock build/stub build/psysh-compat/
composer require --working-dir build/psysh-compat symfony/intl hoa/console --no-progress --no-update --no-interaction --verbose
Using version ^3.4 for symfony/intl
Using version ^3.17 for hoa/console
./composer.json has been updated
composer update --working-dir build/psysh-compat --prefer-stable --no-dev --no-progress --classmap-authoritative --no-interaction --verbose --prefer-dist
Loading composer repositories with package information
Updating dependencies
Dependency resolution completed in 0.138 seconds
Analyzed 3459 packages to resolve dependencies
Analyzed 117077 rules to resolve dependencies
Dependency resolution completed in 0.000 seconds
Package operations: 20 installs, 0 updates, 0 removals
Installs: dnoegel/php-xdg-base-dir:0.1, psr/log:1.0.2, symfony/debug:v3.4.9, symfony/polyfill-mbstring:v1.8.0, symfony/console:v3.4.9, symfony/var-dumper:v3.4.9, nikic/php-parser:v4.0.1, jakub-onderka/php-console-color:0.1, jakub-onderka/php-console-highlighter:v0.3.2, hoa/exception:1.17.01.16, hoa/event:1.17.01.13, hoa/consistency:1.17.05.02, hoa/ustring:4.17.01.16, hoa/protocol:1.17.01.14, hoa/stream:1.17.02.21, hoa/iterator:2.17.01.10, hoa/file:1.17.07.11, hoa/console:3.17.05.02, symfony/polyfill-intl-icu:v1.8.0, symfony/intl:v3.4.9
  - Installing dnoegel/php-xdg-base-dir (0.1): Loading from cache
 Extracting archive  - Installing psr/log (1.0.2): Loading from cache
 Extracting archive  - Installing symfony/debug (v3.4.9): Loading from cache
 Extracting archive  - Installing symfony/polyfill-mbstring (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/console (v3.4.9): Loading from cache
 Extracting archive  - Installing symfony/var-dumper (v3.4.9): Loading from cache
 Extracting archive  - Installing nikic/php-parser (v4.0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-color (0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-highlighter (v0.3.2): Loading from cache
 Extracting archive  - Installing hoa/exception (1.17.01.16): Loading from cache
 Extracting archive  - Installing hoa/event (1.17.01.13): Loading from cache
 Extracting archive  - Installing hoa/consistency (1.17.05.02): Loading from cache
 Extracting archive  - Installing hoa/ustring (4.17.01.16): Loading from cache
 Extracting archive  - Installing hoa/protocol (1.17.01.14): Loading from cache
 Extracting archive  - Installing hoa/stream (1.17.02.21): Loading from cache
 Extracting archive  - Installing hoa/iterator (2.17.01.10): Loading from cache
 Extracting archive  - Installing hoa/file (1.17.07.11): Loading from cache
 Extracting archive  - Installing hoa/console (3.17.05.02): Loading from cache
 Extracting archive  - Installing symfony/polyfill-intl-icu (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/intl (v3.4.9): Loading from cache
 Extracting archiveWriting lock file
Generating optimized autoload files
vendor/bin/box compile --working-dir build/psysh-compat

    ____
   / __ )____  _  __
  / __  / __ \| |/_/
 / /_/ / /_/ />  <
/_____/\____/_/|_|


Box (repo)


 // Loading the configuration file "/Users/tfidry/Project/psysh/build/psysh-compat/box.json.dist".

Building the PHAR "/Users/tfidry/Project/psysh/build/psysh-compat/bin/psysh.phar"
? Registering compactors
  + KevinGH\Box\Compactor\Php
? Adding main file: /Users/tfidry/Project/psysh/build/psysh-compat/bin/psysh
? Adding requirements checker
? Adding binary files
    > No file found
? Adding files
    > 1778 file(s)
? Using stub file: /Users/tfidry/Project/psysh/build/psysh-compat/stub
? No compression
? Setting file permissions to 0755
* Done.

 // You can inspect the generated PHAR with the "info" command.

 // PHAR size: 10.71MB
 // Memory usage: 9.59MB (peak: 22.44MB), time: 2.19s

cp build/psysh-compat/bin/psysh.phar build/psysh-compat.phar
rm -rf build/psysh-php54 || true
mkdir build/psysh-php54
cp -R bin src box.json.dist composer.json composer.lock build/stub build/psysh-php54/
composer config --working-dir build/psysh-php54 platform.php 5.4
composer update --working-dir build/psysh-php54 --prefer-stable --no-dev --no-progress --classmap-authoritative --no-interaction --verbose --prefer-dist
Loading composer repositories with package information
Updating dependencies
Dependency resolution completed in 0.201 seconds
Analyzed 3084 packages to resolve dependencies
Analyzed 116495 rules to resolve dependencies
Dependency resolution completed in 0.000 seconds
Package operations: 9 installs, 0 updates, 0 removals
Installs: dnoegel/php-xdg-base-dir:0.1, psr/log:1.0.2, symfony/debug:v2.8.39, symfony/polyfill-mbstring:v1.8.0, symfony/console:v2.8.39, symfony/var-dumper:v2.8.39, nikic/php-parser:v2.1.1, jakub-onderka/php-console-color:0.1, jakub-onderka/php-console-highlighter:v0.3.2
  - Installing dnoegel/php-xdg-base-dir (0.1): Loading from cache
 Extracting archive  - Installing psr/log (1.0.2): Loading from cache
 Extracting archive  - Installing symfony/debug (v2.8.39): Loading from cache
 Extracting archive  - Installing symfony/polyfill-mbstring (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/console (v2.8.39): Loading from cache
 Extracting archive  - Installing symfony/var-dumper (v2.8.39): Loading from cache
 Extracting archive  - Installing nikic/php-parser (v2.1.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-color (0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-highlighter (v0.3.2): Loading from cache
 Extracting archiveWriting lock file
Generating optimized autoload files
vendor/bin/box compile --working-dir build/psysh-php54

    ____
   / __ )____  _  __
  / __  / __ \| |/_/
 / /_/ / /_/ />  <
/_____/\____/_/|_|


Box (repo)


 // Loading the configuration file "/Users/tfidry/Project/psysh/build/psysh-php54/box.json.dist".

Building the PHAR "/Users/tfidry/Project/psysh/build/psysh-php54/bin/psysh.phar"
? Registering compactors
  + KevinGH\Box\Compactor\Php
? Adding main file: /Users/tfidry/Project/psysh/build/psysh-php54/bin/psysh
? Adding requirements checker
? Adding binary files
    > No file found
? Adding files
    > 490 file(s)
? Using stub file: /Users/tfidry/Project/psysh/build/psysh-php54/stub
? No compression
? Setting file permissions to 0755
* Done.

 // You can inspect the generated PHAR with the "info" command.

 // PHAR size: 1.56MB
 // Memory usage: 8.50MB (peak: 21.20MB), time: 0.96s

cp build/psysh-php54/bin/psysh.phar build/psysh-php54.phar
rm -rf build/psysh-php54-compat || true
mkdir build/psysh-php54-compat
cp -R bin src box.json.dist composer.json composer.lock build/stub build/psysh-php54-compat/
composer config --working-dir build/psysh-php54-compat platform.php 5.4
composer require --working-dir build/psysh-php54-compat symfony/intl hoa/console:^2.15 --no-progress --no-update --no-interaction --verbose
Using version ^2.8 for symfony/intl
./composer.json has been updated
composer update --working-dir build/psysh-php54-compat --prefer-stable --no-dev --no-progress --classmap-authoritative --no-interaction --verbose --prefer-dist
Loading composer repositories with package information
Updating dependencies
Dependency resolution completed in 0.201 seconds
Analyzed 3425 packages to resolve dependencies
Analyzed 117918 rules to resolve dependencies
Dependency resolution completed in 0.000 seconds
Package operations: 16 installs, 0 updates, 0 removals
Installs: dnoegel/php-xdg-base-dir:0.1, psr/log:1.0.2, symfony/debug:v2.8.39, symfony/polyfill-mbstring:v1.8.0, symfony/console:v2.8.39, symfony/var-dumper:v2.8.39, nikic/php-parser:v2.1.1, jakub-onderka/php-console-color:0.1, jakub-onderka/php-console-highlighter:v0.3.2, hoa/core:2.15.11.09, hoa/ustring:3.15.11.09, hoa/stream:0.15.10.26, hoa/console:2.15.07.27, symfony/polyfill-php54:v1.8.0, symfony/polyfill-intl-icu:v1.8.0, symfony/intl:v2.8.39
  - Installing dnoegel/php-xdg-base-dir (0.1): Loading from cache
 Extracting archive  - Installing psr/log (1.0.2): Loading from cache
 Extracting archive  - Installing symfony/debug (v2.8.39): Loading from cache
 Extracting archive  - Installing symfony/polyfill-mbstring (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/console (v2.8.39): Loading from cache
 Extracting archive  - Installing symfony/var-dumper (v2.8.39): Loading from cache
 Extracting archive  - Installing nikic/php-parser (v2.1.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-color (0.1): Loading from cache
 Extracting archive  - Installing jakub-onderka/php-console-highlighter (v0.3.2): Loading from cache
 Extracting archive  - Installing hoa/core (2.15.11.09): Loading from cache
 Extracting archive  - Installing hoa/ustring (3.15.11.09): Loading from cache
 Extracting archive  - Installing hoa/stream (0.15.10.26): Loading from cache
 Extracting archive  - Installing hoa/console (2.15.07.27): Loading from cache
 Extracting archive  - Installing symfony/polyfill-php54 (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/polyfill-intl-icu (v1.8.0): Loading from cache
 Extracting archive  - Installing symfony/intl (v2.8.39): Loading from cache
 Extracting archivePackage hoa/core is abandoned, you should avoid using it. Use hoa/consistency instead.
Writing lock file
Generating optimized autoload files
vendor/bin/box compile --working-dir build/psysh-php54-compat

    ____
   / __ )____  _  __
  / __  / __ \| |/_/
 / /_/ / /_/ />  <
/_____/\____/_/|_|


Box (repo)


 // Loading the configuration file
 // "/Users/tfidry/Project/psysh/build/psysh-php54-compat/box.json.dist".

Building the PHAR "/Users/tfidry/Project/psysh/build/psysh-php54-compat/bin/psysh.phar"
? Registering compactors
  + KevinGH\Box\Compactor\Php
? Adding main file: /Users/tfidry/Project/psysh/build/psysh-php54-compat/bin/psysh
? Adding requirements checker
? Adding binary files
    > No file found
? Adding files
    > 1687 file(s)
? Using stub file: /Users/tfidry/Project/psysh/build/psysh-php54-compat/stub
? No compression
? Setting file permissions to 0755
* Done.

 // You can inspect the generated PHAR with the "info" command.

 // PHAR size: 10.47MB
 // Memory usage: 9.45MB (peak: 22.18MB), time: 2.11s

cp build/psysh-php54-compat/bin/psysh.phar build/psysh-php54-compat.phar
make build  15.94s user 6.00s system 88% cpu 24.721 total
Box `psysh.phar` details

API Version: 1.1.0

Archive Compression: None

Signature: SHA-1
Signature Hash: 56342F0F6550C8FD32AEC386B22730657E98B8A6

Metadata: None

Contents: 554 files (1.72MB)
.box/
  .requirements.php [NONE]
  bin/
    check-requirements.php [NONE]
  check_requirements.php [NONE]
  composer.json [NONE]
  composer.lock [NONE]
  src/
    Checker.php [NONE]
    IO.php [NONE]
    Printer.php [NONE]
    Requirement.php [NONE]
    RequirementCollection.php [NONE]
    Terminal.php [NONE]
  vendor/
    autoload.php [NONE]
    composer/
      ClassLoader.php [NONE]
      LICENSE [NONE]
      autoload_classmap.php [NONE]
      autoload_namespaces.php [NONE]
      autoload_psr4.php [NONE]
      autoload_real.php [NONE]
      autoload_static.php [NONE]
      installed.json [NONE]
      semver/
        src/
          Comparator.php [NONE]
          Constraint/
            AbstractConstraint.php [NONE]
            Constraint.php [NONE]
            ConstraintInterface.php [NONE]
            EmptyConstraint.php [NONE]
            MultiConstraint.php [NONE]
          Semver.php [NONE]
          VersionParser.php [NONE]
bin/
  psysh [NONE]
composer.json [NONE]
composer.lock [NONE]
src/
  CodeCleaner/
    AbstractClassPass.php [NONE]
    AssignThisVariablePass.php [NONE]
    CallTimePassByReferencePass.php [NONE]
    CalledClassPass.php [NONE]
    CodeCleanerPass.php [NONE]
    ExitPass.php [NONE]
    FinalClassPass.php [NONE]
    FunctionContextPass.php [NONE]
    FunctionReturnInWriteContextPass.php [NONE]
    ImplicitReturnPass.php [NONE]
    InstanceOfPass.php [NONE]
    LeavePsyshAlonePass.php [NONE]
    LegacyEmptyPass.php [NONE]
    LoopContextPass.php [NONE]
    MagicConstantsPass.php [NONE]
    NamespaceAwarePass.php [NONE]
    NamespacePass.php [NONE]
    NoReturnValue.php [NONE]
    PassableByReferencePass.php [NONE]
    RequirePass.php [NONE]
    StrictTypesPass.php [NONE]
    UseStatementPass.php [NONE]
    ValidClassNamePass.php [NONE]
    ValidConstantPass.php [NONE]
    ValidConstructorPass.php [NONE]
    ValidFunctionNamePass.php [NONE]
  CodeCleaner.php [NONE]
  Command/
    BufferCommand.php [NONE]
    ClearCommand.php [NONE]
    Command.php [NONE]
    DocCommand.php [NONE]
    DumpCommand.php [NONE]
    EditCommand.php [NONE]
    ExitCommand.php [NONE]
    HelpCommand.php [NONE]
    HistoryCommand.php [NONE]
    ListCommand/
      ClassConstantEnumerator.php [NONE]
      ClassEnumerator.php [NONE]
      ConstantEnumerator.php [NONE]
      Enumerator.php [NONE]
      FunctionEnumerator.php [NONE]
      GlobalVariableEnumerator.php [NONE]
      InterfaceEnumerator.php [NONE]
      MethodEnumerator.php [NONE]
      PropertyEnumerator.php [NONE]
      TraitEnumerator.php [NONE]
      VariableEnumerator.php [NONE]
    ListCommand.php [NONE]
    ParseCommand.php [NONE]
    PsyVersionCommand.php [NONE]
    ReflectingCommand.php [NONE]
    ShowCommand.php [NONE]
    SudoCommand.php [NONE]
    ThrowUpCommand.php [NONE]
    TimeitCommand.php [NONE]
    TraceCommand.php [NONE]
    WhereamiCommand.php [NONE]
    WtfCommand.php [NONE]
  ConfigPaths.php [NONE]
  Configuration.php [NONE]
  ConsoleColorFactory.php [NONE]
  Context.php [NONE]
  ContextAware.php [NONE]
  Exception/
    BreakException.php [NONE]
    DeprecatedException.php [NONE]
    ErrorException.php [NONE]
    Exception.php [NONE]
    FatalErrorException.php [NONE]
    ParseErrorException.php [NONE]
    RuntimeException.php [NONE]
    ThrowUpException.php [NONE]
    TypeErrorException.php [NONE]
  ExecutionClosure.php [NONE]
  ExecutionLoop/
    AbstractListener.php [NONE]
    Listener.php [NONE]
    ProcessForker.php [NONE]
    RunkitReloader.php [NONE]
  ExecutionLoop.php [NONE]
  Formatter/
    CodeFormatter.php [NONE]
    DocblockFormatter.php [NONE]
    Formatter.php [NONE]
    SignatureFormatter.php [NONE]
  Input/
    CodeArgument.php [NONE]
    FilterOptions.php [NONE]
    ShellInput.php [NONE]
    SilentInput.php [NONE]
  Output/
    OutputPager.php [NONE]
    PassthruPager.php [NONE]
    ProcOutputPager.php [NONE]
    ShellOutput.php [NONE]
  ParserFactory.php [NONE]
  Readline/
    GNUReadline.php [NONE]
    HoaConsole.php [NONE]
    Libedit.php [NONE]
    Readline.php [NONE]
    Transient.php [NONE]
  Reflection/
    ReflectionConstant.php [NONE]
    ReflectionLanguageConstruct.php [NONE]
    ReflectionLanguageConstructParameter.php [NONE]
  Shell.php [NONE]
  Sudo/
    SudoVisitor.php [NONE]
  Sudo.php [NONE]
  TabCompletion/
    AutoCompleter.php [NONE]
    Matcher/
      AbstractContextAwareMatcher.php [NONE]
      AbstractDefaultParametersMatcher.php [NONE]
      AbstractMatcher.php [NONE]
      ClassAttributesMatcher.php [NONE]
      ClassMethodDefaultParametersMatcher.php [NONE]
      ClassMethodsMatcher.php [NONE]
      ClassNamesMatcher.php [NONE]
      CommandsMatcher.php [NONE]
      ConstantsMatcher.php [NONE]
      FunctionDefaultParametersMatcher.php [NONE]
      FunctionsMatcher.php [NONE]
      KeywordsMatcher.php [NONE]
      MongoClientMatcher.php [NONE]
      MongoDatabaseMatcher.php [NONE]
      ObjectAttributesMatcher.php [NONE]
      ObjectMethodDefaultParametersMatcher.php [NONE]
      ObjectMethodsMatcher.php [NONE]
      VariablesMatcher.php [NONE]
  Util/
    Docblock.php [NONE]
    Json.php [NONE]
    Mirror.php [NONE]
    Str.php [NONE]
  VarDumper/
    Cloner.php [NONE]
    Dumper.php [NONE]
    Presenter.php [NONE]
    PresenterAware.php [NONE]
  VersionUpdater/
    Checker.php [NONE]
    GitHubChecker.php [NONE]
    IntervalChecker.php [NONE]
    NoopChecker.php [NONE]
  functions.php [NONE]
vendor/
  autoload.php [NONE]
  composer/
    ClassLoader.php [NONE]
    LICENSE [NONE]
    autoload_classmap.php [NONE]
    autoload_files.php [NONE]
    autoload_namespaces.php [NONE]
    autoload_psr4.php [NONE]
    autoload_real.php [NONE]
    autoload_static.php [NONE]
    installed.json [NONE]
  dnoegel/
    php-xdg-base-dir/
      src/
        Xdg.php [NONE]
  jakub-onderka/
    php-console-color/
      example.php [NONE]
      src/
        JakubOnderka/
          PhpConsoleColor/
            ConsoleColor.php [NONE]
            InvalidStyleException.php [NONE]
    php-console-highlighter/
      src/
        JakubOnderka/
          PhpConsoleHighlighter/
            Highlighter.php [NONE]
  nikic/
    php-parser/
      bin/
        php-parse [NONE]
      grammar/
        parser.template [NONE]
        php5.y [NONE]
        php7.y [NONE]
        rebuildParsers.php [NONE]
        tokens.template [NONE]
        tokens.y [NONE]
      lib/
        PhpParser/
          Builder/
            Class_.php [NONE]
            Declaration.php [NONE]
            FunctionLike.php [NONE]
            Function_.php [NONE]
            Interface_.php [NONE]
            Method.php [NONE]
            Namespace_.php [NONE]
            Param.php [NONE]
            Property.php [NONE]
            Trait_.php [NONE]
            Use_.php [NONE]
          Builder.php [NONE]
          BuilderFactory.php [NONE]
          BuilderHelpers.php [NONE]
          Comment/
            Doc.php [NONE]
          Comment.php [NONE]
          ConstExprEvaluationException.php [NONE]
          ConstExprEvaluator.php [NONE]
          Error.php [NONE]
          ErrorHandler/
            Collecting.php [NONE]
            Throwing.php [NONE]
          ErrorHandler.php [NONE]
          Internal/
            DiffElem.php [NONE]
            Differ.php [NONE]
            PrintableNewAnonClassNode.php [NONE]
            TokenStream.php [NONE]
          JsonDecoder.php [NONE]
          Lexer/
            Emulative.php [NONE]
          Lexer.php [NONE]
          NameContext.php [NONE]
          Node/
            Arg.php [NONE]
            Const_.php [NONE]
            Expr/
              ArrayDimFetch.php [NONE]
              ArrayItem.php [NONE]
              Array_.php [NONE]
              Assign.php [NONE]
              AssignOp/
                BitwiseAnd.php [NONE]
                BitwiseOr.php [NONE]
                BitwiseXor.php [NONE]
                Concat.php [NONE]
                Div.php [NONE]
                Minus.php [NONE]
                Mod.php [NONE]
                Mul.php [NONE]
                Plus.php [NONE]
                Pow.php [NONE]
                ShiftLeft.php [NONE]
                ShiftRight.php [NONE]
              AssignOp.php [NONE]
              AssignRef.php [NONE]
              BinaryOp/
                BitwiseAnd.php [NONE]
                BitwiseOr.php [NONE]
                BitwiseXor.php [NONE]
                BooleanAnd.php [NONE]
                BooleanOr.php [NONE]
                Coalesce.php [NONE]
                Concat.php [NONE]
                Div.php [NONE]
                Equal.php [NONE]
                Greater.php [NONE]
                GreaterOrEqual.php [NONE]
                Identical.php [NONE]
                LogicalAnd.php [NONE]
                LogicalOr.php [NONE]
                LogicalXor.php [NONE]
                Minus.php [NONE]
                Mod.php [NONE]
                Mul.php [NONE]
                NotEqual.php [NONE]
                NotIdentical.php [NONE]
                Plus.php [NONE]
                Pow.php [NONE]
                ShiftLeft.php [NONE]
                ShiftRight.php [NONE]
                Smaller.php [NONE]
                SmallerOrEqual.php [NONE]
                Spaceship.php [NONE]
              BinaryOp.php [NONE]
              BitwiseNot.php [NONE]
              BooleanNot.php [NONE]
              Cast/
                Array_.php [NONE]
                Bool_.php [NONE]
                Double.php [NONE]
                Int_.php [NONE]
                Object_.php [NONE]
                String_.php [NONE]
                Unset_.php [NONE]
              Cast.php [NONE]
              ClassConstFetch.php [NONE]
              Clone_.php [NONE]
              Closure.php [NONE]
              ClosureUse.php [NONE]
              ConstFetch.php [NONE]
              Empty_.php [NONE]
              Error.php [NONE]
              ErrorSuppress.php [NONE]
              Eval_.php [NONE]
              Exit_.php [NONE]
              FuncCall.php [NONE]
              Include_.php [NONE]
              Instanceof_.php [NONE]
              Isset_.php [NONE]
              List_.php [NONE]
              MethodCall.php [NONE]
              New_.php [NONE]
              PostDec.php [NONE]
              PostInc.php [NONE]
              PreDec.php [NONE]
              PreInc.php [NONE]
              Print_.php [NONE]
              PropertyFetch.php [NONE]
              ShellExec.php [NONE]
              StaticCall.php [NONE]
              StaticPropertyFetch.php [NONE]
              Ternary.php [NONE]
              UnaryMinus.php [NONE]
              UnaryPlus.php [NONE]
              Variable.php [NONE]
              YieldFrom.php [NONE]
              Yield_.php [NONE]
            Expr.php [NONE]
            FunctionLike.php [NONE]
            Identifier.php [NONE]
            Name/
              FullyQualified.php [NONE]
              Relative.php [NONE]
            Name.php [NONE]
            NullableType.php [NONE]
            Param.php [NONE]
            Scalar/
              DNumber.php [NONE]
              Encapsed.php [NONE]
              EncapsedStringPart.php [NONE]
              LNumber.php [NONE]
              MagicConst/
                Class_.php [NONE]
                Dir.php [NONE]
                File.php [NONE]
                Function_.php [NONE]
                Line.php [NONE]
                Method.php [NONE]
                Namespace_.php [NONE]
                Trait_.php [NONE]
              MagicConst.php [NONE]
              String_.php [NONE]
            Scalar.php [NONE]
            Stmt/
              Break_.php [NONE]
              Case_.php [NONE]
              Catch_.php [NONE]
              ClassConst.php [NONE]
              ClassLike.php [NONE]
              ClassMethod.php [NONE]
              Class_.php [NONE]
              Const_.php [NONE]
              Continue_.php [NONE]
              DeclareDeclare.php [NONE]
              Declare_.php [NONE]
              Do_.php [NONE]
              Echo_.php [NONE]
              ElseIf_.php [NONE]
              Else_.php [NONE]
              Expression.php [NONE]
              Finally_.php [NONE]
              For_.php [NONE]
              Foreach_.php [NONE]
              Function_.php [NONE]
              Global_.php [NONE]
              Goto_.php [NONE]
              GroupUse.php [NONE]
              HaltCompiler.php [NONE]
              If_.php [NONE]
              InlineHTML.php [NONE]
              Interface_.php [NONE]
              Label.php [NONE]
              Namespace_.php [NONE]
              Nop.php [NONE]
              Property.php [NONE]
              PropertyProperty.php [NONE]
              Return_.php [NONE]
              StaticVar.php [NONE]
              Static_.php [NONE]
              Switch_.php [NONE]
              Throw_.php [NONE]
              TraitUse.php [NONE]
              TraitUseAdaptation/
                Alias.php [NONE]
                Precedence.php [NONE]
              TraitUseAdaptation.php [NONE]
              Trait_.php [NONE]
              TryCatch.php [NONE]
              Unset_.php [NONE]
              UseUse.php [NONE]
              Use_.php [NONE]
              While_.php [NONE]
            Stmt.php [NONE]
            VarLikeIdentifier.php [NONE]
          Node.php [NONE]
          NodeAbstract.php [NONE]
          NodeDumper.php [NONE]
          NodeFinder.php [NONE]
          NodeTraverser.php [NONE]
          NodeTraverserInterface.php [NONE]
          NodeVisitor/
            CloningVisitor.php [NONE]
            FindingVisitor.php [NONE]
            FirstFindingVisitor.php [NONE]
            NameResolver.php [NONE]
          NodeVisitor.php [NONE]
          NodeVisitorAbstract.php [NONE]
          Parser/
            Multiple.php [NONE]
            Php5.php [NONE]
            Php7.php [NONE]
            Tokens.php [NONE]
          Parser.php [NONE]
          ParserAbstract.php [NONE]
          ParserFactory.php [NONE]
          PrettyPrinter/
            Standard.php [NONE]
          PrettyPrinterAbstract.php [NONE]
      test_old/
        run-php-src.sh [NONE]
        run.php [NONE]
  psr/
    log/
      Psr/
        Log/
          AbstractLogger.php [NONE]
          InvalidArgumentException.php [NONE]
          LogLevel.php [NONE]
          LoggerAwareInterface.php [NONE]
          LoggerAwareTrait.php [NONE]
          LoggerInterface.php [NONE]
          LoggerTrait.php [NONE]
          NullLogger.php [NONE]
  symfony/
    console/
      Application.php [NONE]
      Command/
        Command.php [NONE]
        HelpCommand.php [NONE]
        ListCommand.php [NONE]
        LockableTrait.php [NONE]
      CommandLoader/
        CommandLoaderInterface.php [NONE]
        ContainerCommandLoader.php [NONE]
        FactoryCommandLoader.php [NONE]
      ConsoleEvents.php [NONE]
      DependencyInjection/
        AddConsoleCommandPass.php [NONE]
      Descriptor/
        ApplicationDescription.php [NONE]
        Descriptor.php [NONE]
        DescriptorInterface.php [NONE]
        JsonDescriptor.php [NONE]
        MarkdownDescriptor.php [NONE]
        TextDescriptor.php [NONE]
        XmlDescriptor.php [NONE]
      Event/
        ConsoleCommandEvent.php [NONE]
        ConsoleErrorEvent.php [NONE]
        ConsoleEvent.php [NONE]
        ConsoleExceptionEvent.php [NONE]
        ConsoleTerminateEvent.php [NONE]
      EventListener/
        ErrorListener.php [NONE]
      Exception/
        CommandNotFoundException.php [NONE]
        ExceptionInterface.php [NONE]
        InvalidArgumentException.php [NONE]
        InvalidOptionException.php [NONE]
        LogicException.php [NONE]
        RuntimeException.php [NONE]
      Formatter/
        OutputFormatter.php [NONE]
        OutputFormatterInterface.php [NONE]
        OutputFormatterStyle.php [NONE]
        OutputFormatterStyleInterface.php [NONE]
        OutputFormatterStyleStack.php [NONE]
      Helper/
        DebugFormatterHelper.php [NONE]
        DescriptorHelper.php [NONE]
        FormatterHelper.php [NONE]
        Helper.php [NONE]
        HelperInterface.php [NONE]
        HelperSet.php [NONE]
        InputAwareHelper.php [NONE]
        ProcessHelper.php [NONE]
        ProgressBar.php [NONE]
        ProgressIndicator.php [NONE]
        QuestionHelper.php [NONE]
        SymfonyQuestionHelper.php [NONE]
        Table.php [NONE]
        TableCell.php [NONE]
        TableSeparator.php [NONE]
        TableStyle.php [NONE]
      Input/
        ArgvInput.php [NONE]
        ArrayInput.php [NONE]
        Input.php [NONE]
        InputArgument.php [NONE]
        InputAwareInterface.php [NONE]
        InputDefinition.php [NONE]
        InputInterface.php [NONE]
        InputOption.php [NONE]
        StreamableInputInterface.php [NONE]
        StringInput.php [NONE]
      Logger/
        ConsoleLogger.php [NONE]
      Output/
        BufferedOutput.php [NONE]
        ConsoleOutput.php [NONE]
        ConsoleOutputInterface.php [NONE]
        NullOutput.php [NONE]
        Output.php [NONE]
        OutputInterface.php [NONE]
        StreamOutput.php [NONE]
      Question/
        ChoiceQuestion.php [NONE]
        ConfirmationQuestion.php [NONE]
        Question.php [NONE]
      Resources/
        bin/
          hiddeninput.exe [NONE]
      Style/
        OutputStyle.php [NONE]
        StyleInterface.php [NONE]
        SymfonyStyle.php [NONE]
      Terminal.php [NONE]
      Tester/
        ApplicationTester.php [NONE]
        CommandTester.php [NONE]
    debug/
      BufferingLogger.php [NONE]
      Debug.php [NONE]
      DebugClassLoader.php [NONE]
      ErrorHandler.php [NONE]
      Exception/
        ClassNotFoundException.php [NONE]
        ContextErrorException.php [NONE]
        FatalErrorException.php [NONE]
        FatalThrowableError.php [NONE]
        FlattenException.php [NONE]
        OutOfMemoryException.php [NONE]
        SilencedErrorContext.php [NONE]
        UndefinedFunctionException.php [NONE]
        UndefinedMethodException.php [NONE]
      ExceptionHandler.php [NONE]
      FatalErrorHandler/
        ClassNotFoundFatalErrorHandler.php [NONE]
        FatalErrorHandlerInterface.php [NONE]
        UndefinedFunctionFatalErrorHandler.php [NONE]
        UndefinedMethodFatalErrorHandler.php [NONE]
      Resources/
        ext/
          config.m4 [NONE]
          config.w32 [NONE]
          php_symfony_debug.h [NONE]
          symfony_debug.c [NONE]
    polyfill-mbstring/
      Mbstring.php [NONE]
      Resources/
        unidata/
          lowerCase.php [NONE]
          upperCase.php [NONE]
      bootstrap.php [NONE]
    var-dumper/
      Caster/
        AmqpCaster.php [NONE]
        ArgsStub.php [NONE]
        Caster.php [NONE]
        ClassStub.php [NONE]
        ConstStub.php [NONE]
        CutArrayStub.php [NONE]
        CutStub.php [NONE]
        DOMCaster.php [NONE]
        DateCaster.php [NONE]
        DoctrineCaster.php [NONE]
        EnumStub.php [NONE]
        ExceptionCaster.php [NONE]
        FrameStub.php [NONE]
        LinkStub.php [NONE]
        MongoCaster.php [NONE]
        PdoCaster.php [NONE]
        PgSqlCaster.php [NONE]
        RedisCaster.php [NONE]
        ReflectionCaster.php [NONE]
        ResourceCaster.php [NONE]
        SplCaster.php [NONE]
        StubCaster.php [NONE]
        SymfonyCaster.php [NONE]
        TraceStub.php [NONE]
        XmlReaderCaster.php [NONE]
        XmlResourceCaster.php [NONE]
      Cloner/
        AbstractCloner.php [NONE]
        ClonerInterface.php [NONE]
        Cursor.php [NONE]
        Data.php [NONE]
        DumperInterface.php [NONE]
        Stub.php [NONE]
        VarCloner.php [NONE]
      Dumper/
        AbstractDumper.php [NONE]
        CliDumper.php [NONE]
        DataDumperInterface.php [NONE]
        HtmlDumper.php [NONE]
      Exception/
        ThrowingCasterException.php [NONE]
      Resources/
        functions/
          dump.php [NONE]
      VarDumper.php [NONE]

Box `psysh-compat.phar` details

API Version: 1.1.0

Archive Compression: None

Signature: SHA-1
Signature Hash: 2ED90F77341ADC290E006E786342E63A4052B5AF

Metadata: None

Contents: 1816 files (10.71MB)
.box/
  .requirements.php [NONE]
  bin/
    check-requirements.php [NONE]
  check_requirements.php [NONE]
  composer.json [NONE]
  composer.lock [NONE]
  src/
    Checker.php [NONE]
    IO.php [NONE]
    Printer.php [NONE]
    Requirement.php [NONE]
    RequirementCollection.php [NONE]
    Terminal.php [NONE]
  vendor/
    autoload.php [NONE]
    composer/
      ClassLoader.php [NONE]
      LICENSE [NONE]
      autoload_classmap.php [NONE]
      autoload_namespaces.php [NONE]
      autoload_psr4.php [NONE]
      autoload_real.php [NONE]
      autoload_static.php [NONE]
      installed.json [NONE]
      semver/
        src/
          Comparator.php [NONE]
          Constraint/
            AbstractConstraint.php [NONE]
            Constraint.php [NONE]
            ConstraintInterface.php [NONE]
            EmptyConstraint.php [NONE]
            MultiConstraint.php [NONE]
          Semver.php [NONE]
          VersionParser.php [NONE]
bin/
  psysh [NONE]
composer.json [NONE]
composer.lock [NONE]
src/
  CodeCleaner/
    AbstractClassPass.php [NONE]
    AssignThisVariablePass.php [NONE]
    CallTimePassByReferencePass.php [NONE]
    CalledClassPass.php [NONE]
    CodeCleanerPass.php [NONE]
    ExitPass.php [NONE]
    FinalClassPass.php [NONE]
    FunctionContextPass.php [NONE]
    FunctionReturnInWriteContextPass.php [NONE]
    ImplicitReturnPass.php [NONE]
    InstanceOfPass.php [NONE]
    LeavePsyshAlonePass.php [NONE]
    LegacyEmptyPass.php [NONE]
    LoopContextPass.php [NONE]
    MagicConstantsPass.php [NONE]
    NamespaceAwarePass.php [NONE]
    NamespacePass.php [NONE]
    NoReturnValue.php [NONE]
    PassableByReferencePass.php [NONE]
    RequirePass.php [NONE]
    StrictTypesPass.php [NONE]
    UseStatementPass.php [NONE]
    ValidClassNamePass.php [NONE]
    ValidConstantPass.php [NONE]
    ValidConstructorPass.php [NONE]
    ValidFunctionNamePass.php [NONE]
  CodeCleaner.php [NONE]
  Command/
    BufferCommand.php [NONE]
    ClearCommand.php [NONE]
    Command.php [NONE]
    DocCommand.php [NONE]
    DumpCommand.php [NONE]
    EditCommand.php [NONE]
    ExitCommand.php [NONE]
    HelpCommand.php [NONE]
    HistoryCommand.php [NONE]
    ListCommand/
      ClassConstantEnumerator.php [NONE]
      ClassEnumerator.php [NONE]
      ConstantEnumerator.php [NONE]
      Enumerator.php [NONE]
      FunctionEnumerator.php [NONE]
      GlobalVariableEnumerator.php [NONE]
      InterfaceEnumerator.php [NONE]
      MethodEnumerator.php [NONE]
      PropertyEnumerator.php [NONE]
      TraitEnumerator.php [NONE]
      VariableEnumerator.php [NONE]
    ListCommand.php [NONE]
    ParseCommand.php [NONE]
    PsyVersionCommand.php [NONE]
    ReflectingCommand.php [NONE]
    ShowCommand.php [NONE]
    SudoCommand.php [NONE]
    ThrowUpCommand.php [NONE]
    TimeitCommand.php [NONE]
    TraceCommand.php [NONE]
    WhereamiCommand.php [NONE]
    WtfCommand.php [NONE]
  ConfigPaths.php [NONE]
  Configuration.php [NONE]
  ConsoleColorFactory.php [NONE]
  Context.php [NONE]
  ContextAware.php [NONE]
  Exception/
    BreakException.php [NONE]
    DeprecatedException.php [NONE]
    ErrorException.php [NONE]
    Exception.php [NONE]
    FatalErrorException.php [NONE]
    ParseErrorException.php [NONE]
    RuntimeException.php [NONE]
    ThrowUpException.php [NONE]
    TypeErrorException.php [NONE]
  ExecutionClosure.php [NONE]
  ExecutionLoop/
    AbstractListener.php [NONE]
    Listener.php [NONE]
    ProcessForker.php [NONE]
    RunkitReloader.php [NONE]
  ExecutionLoop.php [NONE]
  Formatter/
    CodeFormatter.php [NONE]
    DocblockFormatter.php [NONE]
    Formatter.php [NONE]
    SignatureFormatter.php [NONE]
  Input/
    CodeArgument.php [NONE]
    FilterOptions.php [NONE]
    ShellInput.php [NONE]
    SilentInput.php [NONE]
  Output/
    OutputPager.php [NONE]
    PassthruPager.php [NONE]
    ProcOutputPager.php [NONE]
    ShellOutput.php [NONE]
  ParserFactory.php [NONE]
  Readline/
    GNUReadline.php [NONE]
    HoaConsole.php [NONE]
    Libedit.php [NONE]
    Readline.php [NONE]
    Transient.php [NONE]
  Reflection/
    ReflectionConstant.php [NONE]
    ReflectionLanguageConstruct.php [NONE]
    ReflectionLanguageConstructParameter.php [NONE]
  Shell.php [NONE]
  Sudo/
    SudoVisitor.php [NONE]
  Sudo.php [NONE]
  TabCompletion/
    AutoCompleter.php [NONE]
    Matcher/
      AbstractContextAwareMatcher.php [NONE]
      AbstractDefaultParametersMatcher.php [NONE]
      AbstractMatcher.php [NONE]
      ClassAttributesMatcher.php [NONE]
      ClassMethodDefaultParametersMatcher.php [NONE]
      ClassMethodsMatcher.php [NONE]
      ClassNamesMatcher.php [NONE]
      CommandsMatcher.php [NONE]
      ConstantsMatcher.php [NONE]
      FunctionDefaultParametersMatcher.php [NONE]
      FunctionsMatcher.php [NONE]
      KeywordsMatcher.php [NONE]
      MongoClientMatcher.php [NONE]
      MongoDatabaseMatcher.php [NONE]
      ObjectAttributesMatcher.php [NONE]
      ObjectMethodDefaultParametersMatcher.php [NONE]
      ObjectMethodsMatcher.php [NONE]
      VariablesMatcher.php [NONE]
  Util/
    Docblock.php [NONE]
    Json.php [NONE]
    Mirror.php [NONE]
    Str.php [NONE]
  VarDumper/
    Cloner.php [NONE]
    Dumper.php [NONE]
    Presenter.php [NONE]
    PresenterAware.php [NONE]
  VersionUpdater/
    Checker.php [NONE]
    GitHubChecker.php [NONE]
    IntervalChecker.php [NONE]
    NoopChecker.php [NONE]
  functions.php [NONE]
vendor/
  autoload.php [NONE]
  composer/
    ClassLoader.php [NONE]
    LICENSE [NONE]
    autoload_classmap.php [NONE]
    autoload_files.php [NONE]
    autoload_namespaces.php [NONE]
    autoload_psr4.php [NONE]
    autoload_real.php [NONE]
    autoload_static.php [NONE]
    installed.json [NONE]
  dnoegel/
    php-xdg-base-dir/
      src/
        Xdg.php [NONE]
  hoa/
    consistency/
      Autoloader.php [NONE]
      Consistency.php [NONE]
      Exception.php [NONE]
      Prelude.php [NONE]
      Xcallable.php [NONE]
    console/
      Bin/
        Termcap.php [NONE]
      Chrome/
        Editor.php [NONE]
        Exception.php [NONE]
        Pager.php [NONE]
        Text.php [NONE]
      Console.php [NONE]
      Cursor.php [NONE]
      Dispatcher/
        Kit.php [NONE]
      Documentation/
        En/
          Index.xyl [NONE]
        Fr/
          Index.xyl [NONE]
        Image/
          Readline_autocompleters.gif [NONE]
      Exception.php [NONE]
      GetOption.php [NONE]
      Input.php [NONE]
      Mouse.php [NONE]
      Output.php [NONE]
      Parser.php [NONE]
      Processus.php [NONE]
      Readline/
        Autocompleter/
          Aggregate.php [NONE]
          Autocompleter.php [NONE]
          Path.php [NONE]
          Word.php [NONE]
        Password.php [NONE]
        Readline.php [NONE]
      Terminfo/
        77/
          windows-ansi [NONE]
        78/
          xterm [NONE]
          xterm-256color [NONE]
      Tput.php [NONE]
      Window.php [NONE]
    event/
      Bucket.php [NONE]
      Event.php [NONE]
      Exception.php [NONE]
      Listenable.php [NONE]
      Listener.php [NONE]
      Listens.php [NONE]
      Source.php [NONE]
    exception/
      Error.php [NONE]
      Exception.php [NONE]
      Group.php [NONE]
      Idle.php [NONE]
    file/
      Directory.php [NONE]
      Exception/
        Exception.php [NONE]
        FileDoesNotExist.php [NONE]
      File.php [NONE]
      Finder.php [NONE]
      Generic.php [NONE]
      Link/
        Link.php [NONE]
        Read.php [NONE]
        ReadWrite.php [NONE]
        Write.php [NONE]
      Read.php [NONE]
      ReadWrite.php [NONE]
      SplFileInfo.php [NONE]
      Temporary/
        Read.php [NONE]
        ReadWrite.php [NONE]
        Temporary.php [NONE]
        Write.php [NONE]
      Watcher.php [NONE]
      Write.php [NONE]
    iterator/
      Aggregate.php [NONE]
      Append.php [NONE]
      Buffer.php [NONE]
      CallbackFilter.php [NONE]
      CallbackGenerator.php [NONE]
      Counter.php [NONE]
      Demultiplexer.php [NONE]
      Directory.php [NONE]
      Exception.php [NONE]
      FileSystem.php [NONE]
      Filter.php [NONE]
      Glob.php [NONE]
      Infinite.php [NONE]
      Iterator.php [NONE]
      IteratorIterator.php [NONE]
      Limit.php [NONE]
      Lookahead.php [NONE]
      Lookbehind.php [NONE]
      Map.php [NONE]
      Mock.php [NONE]
      Multiple.php [NONE]
      NoRewind.php [NONE]
      Outer.php [NONE]
      Recursive/
        CallbackFilter.php [NONE]
        Directory.php [NONE]
        Filter.php [NONE]
        Iterator.php [NONE]
        Map.php [NONE]
        Mock.php [NONE]
        Recursive.php [NONE]
        RegularExpression.php [NONE]
      RegularExpression.php [NONE]
      Repeater.php [NONE]
      Seekable.php [NONE]
      SplFileInfo.php [NONE]
    protocol/
      Bin/
        Resolve.php [NONE]
      Exception.php [NONE]
      Node/
        Library.php [NONE]
        Node.php [NONE]
      Protocol.php [NONE]
      Wrapper.php [NONE]
    stream/
      Bucket.php [NONE]
      Composite.php [NONE]
      Context.php [NONE]
      Exception.php [NONE]
      Filter/
        Basic.php [NONE]
        Exception.php [NONE]
        Filter.php [NONE]
        LateComputed.php [NONE]
      IStream/
        Bufferable.php [NONE]
        In.php [NONE]
        Lockable.php [NONE]
        Out.php [NONE]
        Pathable.php [NONE]
        Pointable.php [NONE]
        Statable.php [NONE]
        Stream.php [NONE]
        Structural.php [NONE]
        Touchable.php [NONE]
      Stream.php [NONE]
      Wrapper/
        Exception.php [NONE]
        IWrapper/
          File.php [NONE]
          IWrapper.php [NONE]
          Stream.php [NONE]
        Wrapper.php [NONE]
    ustring/
      Bin/
        Fromcode.php [NONE]
        Tocode.php [NONE]
      Documentation/
        En/
          Index.xyl [NONE]
        Fr/
          Index.xyl [NONE]
      Exception.php [NONE]
      Search.php [NONE]
      Ustring.php [NONE]
  jakub-onderka/
    php-console-color/
      example.php [NONE]
      src/
        JakubOnderka/
          PhpConsoleColor/
            ConsoleColor.php [NONE]
            InvalidStyleException.php [NONE]
    php-console-highlighter/
      src/
        JakubOnderka/
          PhpConsoleHighlighter/
            Highlighter.php [NONE]
  nikic/
    php-parser/
      bin/
        php-parse [NONE]
      grammar/
        parser.template [NONE]
        php5.y [NONE]
        php7.y [NONE]
        rebuildParsers.php [NONE]
        tokens.template [NONE]
        tokens.y [NONE]
      lib/
        PhpParser/
          Builder/
            Class_.php [NONE]
            Declaration.php [NONE]
            FunctionLike.php [NONE]
            Function_.php [NONE]
            Interface_.php [NONE]
            Method.php [NONE]
            Namespace_.php [NONE]
            Param.php [NONE]
            Property.php [NONE]
            Trait_.php [NONE]
            Use_.php [NONE]
          Builder.php [NONE]
          BuilderFactory.php [NONE]
          BuilderHelpers.php [NONE]
          Comment/
            Doc.php [NONE]
          Comment.php [NONE]
          ConstExprEvaluationException.php [NONE]
          ConstExprEvaluator.php [NONE]
          Error.php [NONE]
          ErrorHandler/
            Collecting.php [NONE]
            Throwing.php [NONE]
          ErrorHandler.php [NONE]
          Internal/
            DiffElem.php [NONE]
            Differ.php [NONE]
            PrintableNewAnonClassNode.php [NONE]
            TokenStream.php [NONE]
          JsonDecoder.php [NONE]
          Lexer/
            Emulative.php [NONE]
          Lexer.php [NONE]
          NameContext.php [NONE]
          Node/
            Arg.php [NONE]
            Const_.php [NONE]
            Expr/
              ArrayDimFetch.php [NONE]
              ArrayItem.php [NONE]
              Array_.php [NONE]
              Assign.php [NONE]
              AssignOp/
                BitwiseAnd.php [NONE]
                BitwiseOr.php [NONE]
                BitwiseXor.php [NONE]
                Concat.php [NONE]
                Div.php [NONE]
                Minus.php [NONE]
                Mod.php [NONE]
                Mul.php [NONE]
                Plus.php [NONE]
                Pow.php [NONE]
                ShiftLeft.php [NONE]
                ShiftRight.php [NONE]
              AssignOp.php [NONE]
              AssignRef.php [NONE]
              BinaryOp/
                BitwiseAnd.php [NONE]
                BitwiseOr.php [NONE]
                BitwiseXor.php [NONE]
                BooleanAnd.php [NONE]
                BooleanOr.php [NONE]
                Coalesce.php [NONE]
                Concat.php [NONE]
                Div.php [NONE]
                Equal.php [NONE]
                Greater.php [NONE]
                GreaterOrEqual.php [NONE]
                Identical.php [NONE]
                LogicalAnd.php [NONE]
                LogicalOr.php [NONE]
                LogicalXor.php [NONE]
                Minus.php [NONE]
                Mod.php [NONE]
                Mul.php [NONE]
                NotEqual.php [NONE]
                NotIdentical.php [NONE]
                Plus.php [NONE]
                Pow.php [NONE]
                ShiftLeft.php [NONE]
                ShiftRight.php [NONE]
                Smaller.php [NONE]
                SmallerOrEqual.php [NONE]
                Spaceship.php [NONE]
              BinaryOp.php [NONE]
              BitwiseNot.php [NONE]
              BooleanNot.php [NONE]
              Cast/
                Array_.php [NONE]
                Bool_.php [NONE]
                Double.php [NONE]
                Int_.php [NONE]
                Object_.php [NONE]
                String_.php [NONE]
                Unset_.php [NONE]
              Cast.php [NONE]
              ClassConstFetch.php [NONE]
              Clone_.php [NONE]
              Closure.php [NONE]
              ClosureUse.php [NONE]
              ConstFetch.php [NONE]
              Empty_.php [NONE]
              Error.php [NONE]
              ErrorSuppress.php [NONE]
              Eval_.php [NONE]
              Exit_.php [NONE]
              FuncCall.php [NONE]
              Include_.php [NONE]
              Instanceof_.php [NONE]
              Isset_.php [NONE]
              List_.php [NONE]
              MethodCall.php [NONE]
              New_.php [NONE]
              PostDec.php [NONE]
              PostInc.php [NONE]
              PreDec.php [NONE]
              PreInc.php [NONE]
              Print_.php [NONE]
              PropertyFetch.php [NONE]
              ShellExec.php [NONE]
              StaticCall.php [NONE]
              StaticPropertyFetch.php [NONE]
              Ternary.php [NONE]
              UnaryMinus.php [NONE]
              UnaryPlus.php [NONE]
              Variable.php [NONE]
              YieldFrom.php [NONE]
              Yield_.php [NONE]
            Expr.php [NONE]
            FunctionLike.php [NONE]
            Identifier.php [NONE]
            Name/
              FullyQualified.php [NONE]
              Relative.php [NONE]
            Name.php [NONE]
            NullableType.php [NONE]
            Param.php [NONE]
            Scalar/
              DNumber.php [NONE]
              Encapsed.php [NONE]
              EncapsedStringPart.php [NONE]
              LNumber.php [NONE]
              MagicConst/
                Class_.php [NONE]
                Dir.php [NONE]
                File.php [NONE]
                Function_.php [NONE]
                Line.php [NONE]
                Method.php [NONE]
                Namespace_.php [NONE]
                Trait_.php [NONE]
              MagicConst.php [NONE]
              String_.php [NONE]
            Scalar.php [NONE]
            Stmt/
              Break_.php [NONE]
              Case_.php [NONE]
              Catch_.php [NONE]
              ClassConst.php [NONE]
              ClassLike.php [NONE]
              ClassMethod.php [NONE]
              Class_.php [NONE]
              Const_.php [NONE]
              Continue_.php [NONE]
              DeclareDeclare.php [NONE]
              Declare_.php [NONE]
              Do_.php [NONE]
              Echo_.php [NONE]
              ElseIf_.php [NONE]
              Else_.php [NONE]
              Expression.php [NONE]
              Finally_.php [NONE]
              For_.php [NONE]
              Foreach_.php [NONE]
              Function_.php [NONE]
              Global_.php [NONE]
              Goto_.php [NONE]
              GroupUse.php [NONE]
              HaltCompiler.php [NONE]
              If_.php [NONE]
              InlineHTML.php [NONE]
              Interface_.php [NONE]
              Label.php [NONE]
              Namespace_.php [NONE]
              Nop.php [NONE]
              Property.php [NONE]
              PropertyProperty.php [NONE]
              Return_.php [NONE]
              StaticVar.php [NONE]
              Static_.php [NONE]
              Switch_.php [NONE]
              Throw_.php [NONE]
              TraitUse.php [NONE]
              TraitUseAdaptation/
                Alias.php [NONE]
                Precedence.php [NONE]
              TraitUseAdaptation.php [NONE]
              Trait_.php [NONE]
              TryCatch.php [NONE]
              Unset_.php [NONE]
              UseUse.php [NONE]
              Use_.php [NONE]
              While_.php [NONE]
            Stmt.php [NONE]
            VarLikeIdentifier.php [NONE]
          Node.php [NONE]
          NodeAbstract.php [NONE]
          NodeDumper.php [NONE]
          NodeFinder.php [NONE]
          NodeTraverser.php [NONE]
          NodeTraverserInterface.php [NONE]
          NodeVisitor/
            CloningVisitor.php [NONE]
            FindingVisitor.php [NONE]
            FirstFindingVisitor.php [NONE]
            NameResolver.php [NONE]
          NodeVisitor.php [NONE]
          NodeVisitorAbstract.php [NONE]
          Parser/
            Multiple.php [NONE]
            Php5.php [NONE]
            Php7.php [NONE]
            Tokens.php [NONE]
          Parser.php [NONE]
          ParserAbstract.php [NONE]
          ParserFactory.php [NONE]
          PrettyPrinter/
            Standard.php [NONE]
          PrettyPrinterAbstract.php [NONE]
      test_old/
        run-php-src.sh [NONE]
        run.php [NONE]
  psr/
    log/
      Psr/
        Log/
          AbstractLogger.php [NONE]
          InvalidArgumentException.php [NONE]
          LogLevel.php [NONE]
          LoggerAwareInterface.php [NONE]
          LoggerAwareTrait.php [NONE]
          LoggerInterface.php [NONE]
          LoggerTrait.php [NONE]
          NullLogger.php [NONE]
  symfony/
    console/
      Application.php [NONE]
      Command/
        Command.php [NONE]
        HelpCommand.php [NONE]
        ListCommand.php [NONE]
        LockableTrait.php [NONE]
      CommandLoader/
        CommandLoaderInterface.php [NONE]
        ContainerCommandLoader.php [NONE]
        FactoryCommandLoader.php [NONE]
      ConsoleEvents.php [NONE]
      DependencyInjection/
        AddConsoleCommandPass.php [NONE]
      Descriptor/
        ApplicationDescription.php [NONE]
        Descriptor.php [NONE]
        DescriptorInterface.php [NONE]
        JsonDescriptor.php [NONE]
        MarkdownDescriptor.php [NONE]
        TextDescriptor.php [NONE]
        XmlDescriptor.php [NONE]
      Event/
        ConsoleCommandEvent.php [NONE]
        ConsoleErrorEvent.php [NONE]
        ConsoleEvent.php [NONE]
        ConsoleExceptionEvent.php [NONE]
        ConsoleTerminateEvent.php [NONE]
      EventListener/
        ErrorListener.php [NONE]
      Exception/
        CommandNotFoundException.php [NONE]
        ExceptionInterface.php [NONE]
        InvalidArgumentException.php [NONE]
        InvalidOptionException.php [NONE]
        LogicException.php [NONE]
        RuntimeException.php [NONE]
      Formatter/
        OutputFormatter.php [NONE]
        OutputFormatterInterface.php [NONE]
        OutputFormatterStyle.php [NONE]
        OutputFormatterStyleInterface.php [NONE]
        OutputFormatterStyleStack.php [NONE]
      Helper/
        DebugFormatterHelper.php [NONE]
        DescriptorHelper.php [NONE]
        FormatterHelper.php [NONE]
        Helper.php [NONE]
        HelperInterface.php [NONE]
        HelperSet.php [NONE]
        InputAwareHelper.php [NONE]
        ProcessHelper.php [NONE]
        ProgressBar.php [NONE]
        ProgressIndicator.php [NONE]
        QuestionHelper.php [NONE]
        SymfonyQuestionHelper.php [NONE]
        Table.php [NONE]
        TableCell.php [NONE]
        TableSeparator.php [NONE]
        TableStyle.php [NONE]
      Input/
        ArgvInput.php [NONE]
        ArrayInput.php [NONE]
        Input.php [NONE]
        InputArgument.php [NONE]
        InputAwareInterface.php [NONE]
        InputDefinition.php [NONE]
        InputInterface.php [NONE]
        InputOption.php [NONE]
        StreamableInputInterface.php [NONE]
        StringInput.php [NONE]
      Logger/
        ConsoleLogger.php [NONE]
      Output/
        BufferedOutput.php [NONE]
        ConsoleOutput.php [NONE]
        ConsoleOutputInterface.php [NONE]
        NullOutput.php [NONE]
        Output.php [NONE]
        OutputInterface.php [NONE]
        StreamOutput.php [NONE]
      Question/
        ChoiceQuestion.php [NONE]
        ConfirmationQuestion.php [NONE]
        Question.php [NONE]
      Resources/
        bin/
          hiddeninput.exe [NONE]
      Style/
        OutputStyle.php [NONE]
        StyleInterface.php [NONE]
        SymfonyStyle.php [NONE]
      Terminal.php [NONE]
      Tester/
        ApplicationTester.php [NONE]
        CommandTester.php [NONE]
    debug/
      BufferingLogger.php [NONE]
      Debug.php [NONE]
      DebugClassLoader.php [NONE]
      ErrorHandler.php [NONE]
      Exception/
        ClassNotFoundException.php [NONE]
        ContextErrorException.php [NONE]
        FatalErrorException.php [NONE]
        FatalThrowableError.php [NONE]
        FlattenException.php [NONE]
        OutOfMemoryException.php [NONE]
        SilencedErrorContext.php [NONE]
        UndefinedFunctionException.php [NONE]
        UndefinedMethodException.php [NONE]
      ExceptionHandler.php [NONE]
      FatalErrorHandler/
        ClassNotFoundFatalErrorHandler.php [NONE]
        FatalErrorHandlerInterface.php [NONE]
        UndefinedFunctionFatalErrorHandler.php [NONE]
        UndefinedMethodFatalErrorHandler.php [NONE]
      Resources/
        ext/
          config.m4 [NONE]
          config.w32 [NONE]
          php_symfony_debug.h [NONE]
          symfony_debug.c [NONE]
    intl/
      Collator/
        Collator.php [NONE]
      Data/
        Bundle/
          Compiler/
            BundleCompilerInterface.php [NONE]
            GenrbCompiler.php [NONE]
          Reader/
            BufferedBundleReader.php [NONE]
            BundleEntryReader.php [NONE]
            BundleEntryReaderInterface.php [NONE]
            BundleReaderInterface.php [NONE]
            IntlBundleReader.php [NONE]
            JsonBundleReader.php [NONE]
            PhpBundleReader.php [NONE]
          Writer/
            BundleWriterInterface.php [NONE]
            JsonBundleWriter.php [NONE]
            PhpBundleWriter.php [NONE]
            TextBundleWriter.php [NONE]
        Generator/
          AbstractDataGenerator.php [NONE]
          CurrencyDataGenerator.php [NONE]
          GeneratorConfig.php [NONE]
          LanguageDataGenerator.php [NONE]
          LocaleDataGenerator.php [NONE]
          RegionDataGenerator.php [NONE]
          ScriptDataGenerator.php [NONE]
        Provider/
          CurrencyDataProvider.php [NONE]
          LanguageDataProvider.php [NONE]
          LocaleDataProvider.php [NONE]
          RegionDataProvider.php [NONE]
          ScriptDataProvider.php [NONE]
        Util/
          ArrayAccessibleResourceBundle.php [NONE]
          LocaleScanner.php [NONE]
          RecursiveArrayAccess.php [NONE]
          RingBuffer.php [NONE]
      DateFormatter/
        DateFormat/
          AmPmTransformer.php [NONE]
          DayOfWeekTransformer.php [NONE]
          DayOfYearTransformer.php [NONE]
          DayTransformer.php [NONE]
          FullTransformer.php [NONE]
          Hour1200Transformer.php [NONE]
          Hour1201Transformer.php [NONE]
          Hour2400Transformer.php [NONE]
          Hour2401Transformer.php [NONE]
          HourTransformer.php [NONE]
          MinuteTransformer.php [NONE]
          MonthTransformer.php [NONE]
          QuarterTransformer.php [NONE]
          SecondTransformer.php [NONE]
          TimezoneTransformer.php [NONE]
          Transformer.php [NONE]
          YearTransformer.php [NONE]
        IntlDateFormatter.php [NONE]
      Exception/
        BadMethodCallException.php [NONE]
        ExceptionInterface.php [NONE]
        InvalidArgumentException.php [NONE]
        MethodArgumentNotImplementedException.php [NONE]
        MethodArgumentValueNotImplementedException.php [NONE]
        MethodNotImplementedException.php [NONE]
        MissingResourceException.php [NONE]
        NotImplementedException.php [NONE]
        OutOfBoundsException.php [NONE]
        ResourceBundleNotFoundException.php [NONE]
        RuntimeException.php [NONE]
        UnexpectedTypeException.php [NONE]
      Globals/
        IntlGlobals.php [NONE]
      Intl.php [NONE]
      Locale/
        Locale.php [NONE]
      Locale.php [NONE]
      NumberFormatter/
        NumberFormatter.php [NONE]
      ResourceBundle/
        CurrencyBundle.php [NONE]
        CurrencyBundleInterface.php [NONE]
        LanguageBundle.php [NONE]
        LanguageBundleInterface.php [NONE]
        LocaleBundle.php [NONE]
        LocaleBundleInterface.php [NONE]
        RegionBundle.php [NONE]
        RegionBundleInterface.php [NONE]
        ResourceBundleInterface.php [NONE]
      Resources/
        bin/
          autoload.php [NONE]
          common.php [NONE]
          icu.ini [NONE]
          update-data.php [NONE]
        data/
          currencies/
            af.json [NONE]
            af_NA.json [NONE]
            ak.json [NONE]
            am.json [NONE]
            ar.json [NONE]
            ar_DJ.json [NONE]
            ar_ER.json [NONE]
            ar_KM.json [NONE]
            ar_LB.json [NONE]
            ar_SO.json [NONE]
            ar_SS.json [NONE]
            as.json [NONE]
            az.json [NONE]
            az_Cyrl.json [NONE]
            be.json [NONE]
            bg.json [NONE]
            bm.json [NONE]
            bn.json [NONE]
            bo.json [NONE]
            bo_IN.json [NONE]
            br.json [NONE]
            bs.json [NONE]
            bs_Cyrl.json [NONE]
            ca.json [NONE]
            ca_FR.json [NONE]
            ce.json [NONE]
            cs.json [NONE]
            cy.json [NONE]
            da.json [NONE]
            de.json [NONE]
            de_CH.json [NONE]
            de_LI.json [NONE]
            de_LU.json [NONE]
            dz.json [NONE]
            ee.json [NONE]
            el.json [NONE]
            en.json [NONE]
            en_001.json [NONE]
            en_150.json [NONE]
            en_AG.json [NONE]
            en_AI.json [NONE]
            en_AU.json [NONE]
            en_BB.json [NONE]
            en_BI.json [NONE]
            en_BM.json [NONE]
            en_BS.json [NONE]
            en_BW.json [NONE]
            en_BZ.json [NONE]
            en_CA.json [NONE]
            en_CC.json [NONE]
            en_CK.json [NONE]
            en_CX.json [NONE]
            en_DK.json [NONE]
            en_DM.json [NONE]
            en_ER.json [NONE]
            en_FJ.json [NONE]
            en_FK.json [NONE]
            en_GB.json [NONE]
            en_GD.json [NONE]
            en_GG.json [NONE]
            en_GH.json [NONE]
            en_GI.json [NONE]
            en_GM.json [NONE]
            en_GY.json [NONE]
            en_IM.json [NONE]
            en_JE.json [NONE]
            en_JM.json [NONE]
            en_KE.json [NONE]
            en_KI.json [NONE]
            en_KN.json [NONE]
            en_KY.json [NONE]
            en_LC.json [NONE]
            en_LR.json [NONE]
            en_LS.json [NONE]
            en_MG.json [NONE]
            en_MO.json [NONE]
            en_MS.json [NONE]
            en_MT.json [NONE]
            en_MU.json [NONE]
            en_MW.json [NONE]
            en_MY.json [NONE]
            en_NA.json [NONE]
            en_NF.json [NONE]
            en_NG.json [NONE]
            en_NH.json [NONE]
            en_NR.json [NONE]
            en_NU.json [NONE]
            en_NZ.json [NONE]
            en_PG.json [NONE]
            en_PH.json [NONE]
            en_PK.json [NONE]
            en_PN.json [NONE]
            en_RW.json [NONE]
            en_SB.json [NONE]
            en_SC.json [NONE]
            en_SE.json [NONE]
            en_SG.json [NONE]
            en_SH.json [NONE]
            en_SL.json [NONE]
            en_SS.json [NONE]
            en_SX.json [NONE]
            en_SZ.json [NONE]
            en_TK.json [NONE]
            en_TO.json [NONE]
            en_TT.json [NONE]
            en_TV.json [NONE]
            en_TZ.json [NONE]
            en_UG.json [NONE]
            en_VC.json [NONE]
            en_VU.json [NONE]
            en_WS.json [NONE]
            en_ZA.json [NONE]
            en_ZM.json [NONE]
            es.json [NONE]
            es_419.json [NONE]
            es_AR.json [NONE]
            es_BO.json [NONE]
            es_BR.json [NONE]
            es_BZ.json [NONE]
            es_CL.json [NONE]
            es_CO.json [NONE]
            es_CR.json [NONE]
            es_CU.json [NONE]
            es_DO.json [NONE]
            es_EC.json [NONE]
            es_GQ.json [NONE]
            es_GT.json [NONE]
            es_HN.json [NONE]
            es_MX.json [NONE]
            es_NI.json [NONE]
            es_PA.json [NONE]
            es_PE.json [NONE]
            es_PH.json [NONE]
            es_PR.json [NONE]
            es_PY.json [NONE]
            es_SV.json [NONE]
            es_US.json [NONE]
            es_UY.json [NONE]
            es_VE.json [NONE]
            et.json [NONE]
            eu.json [NONE]
            fa.json [NONE]
            fa_AF.json [NONE]
            ff.json [NONE]
            ff_GN.json [NONE]
            ff_MR.json [NONE]
            fi.json [NONE]
            fo.json [NONE]
            fo_DK.json [NONE]
            fr.json [NONE]
            fr_BI.json [NONE]
            fr_CA.json [NONE]
            fr_CD.json [NONE]
            fr_DJ.json [NONE]
            fr_DZ.json [NONE]
            fr_GN.json [NONE]
            fr_HT.json [NONE]
            fr_KM.json [NONE]
            fr_LU.json [NONE]
            fr_MG.json [NONE]
            fr_MR.json [NONE]
            fr_MU.json [NONE]
            fr_RW.json [NONE]
            fr_SC.json [NONE]
            fr_SY.json [NONE]
            fr_TN.json [NONE]
            fr_VU.json [NONE]
            fy.json [NONE]
            ga.json [NONE]
            gd.json [NONE]
            gl.json [NONE]
            gu.json [NONE]
            ha.json [NONE]
            ha_GH.json [NONE]
            he.json [NONE]
            hi.json [NONE]
            hr.json [NONE]
            hr_BA.json [NONE]
            hu.json [NONE]
            hy.json [NONE]
            id.json [NONE]
            ig.json [NONE]
            ii.json [NONE]
            in.json [NONE]
            is.json [NONE]
            it.json [NONE]
            iw.json [NONE]
            ja.json [NONE]
            ka.json [NONE]
            ki.json [NONE]
            kk.json [NONE]
            kl.json [NONE]
            km.json [NONE]
            kn.json [NONE]
            ko.json [NONE]
            ks.json [NONE]
            ky.json [NONE]
            lb.json [NONE]
            lg.json [NONE]
            ln.json [NONE]
            ln_AO.json [NONE]
            lo.json [NONE]
            lt.json [NONE]
            lu.json [NONE]
            lv.json [NONE]
            meta.json [NONE]
            mg.json [NONE]
            mk.json [NONE]
            ml.json [NONE]
            mn.json [NONE]
            mo.json [NONE]
            mr.json [NONE]
            ms.json [NONE]
            ms_BN.json [NONE]
            ms_SG.json [NONE]
            mt.json [NONE]
            my.json [NONE]
            nb.json [NONE]
            nd.json [NONE]
            ne.json [NONE]
            nl.json [NONE]
            nl_AW.json [NONE]
            nl_BQ.json [NONE]
            nl_CW.json [NONE]
            nl_SR.json [NONE]
            nl_SX.json [NONE]
            nn.json [NONE]
            no.json [NONE]
            om.json [NONE]
            om_KE.json [NONE]
            or.json [NONE]
            os.json [NONE]
            os_RU.json [NONE]
            pa.json [NONE]
            pa_Arab.json [NONE]
            pl.json [NONE]
            ps.json [NONE]
            pt.json [NONE]
            pt_AO.json [NONE]
            pt_CV.json [NONE]
            pt_LU.json [NONE]
            pt_MO.json [NONE]
            pt_MZ.json [NONE]
            pt_PT.json [NONE]
            pt_ST.json [NONE]
            qu.json [NONE]
            qu_BO.json [NONE]
            qu_EC.json [NONE]
            rm.json [NONE]
            rn.json [NONE]
            ro.json [NONE]
            ro_MD.json [NONE]
            root.json [NONE]
            ru.json [NONE]
            ru_BY.json [NONE]
            ru_KG.json [NONE]
            ru_KZ.json [NONE]
            ru_MD.json [NONE]
            rw.json [NONE]
            se.json [NONE]
            se_SE.json [NONE]
            sg.json [NONE]
            sh.json [NONE]
            si.json [NONE]
            sk.json [NONE]
            sl.json [NONE]
            sn.json [NONE]
            so.json [NONE]
            so_DJ.json [NONE]
            so_ET.json [NONE]
            so_KE.json [NONE]
            sq.json [NONE]
            sq_MK.json [NONE]
            sr.json [NONE]
            sr_Latn.json [NONE]
            sv.json [NONE]
            sw.json [NONE]
            sw_CD.json [NONE]
            sw_UG.json [NONE]
            ta.json [NONE]
            ta_LK.json [NONE]
            ta_MY.json [NONE]
            ta_SG.json [NONE]
            te.json [NONE]
            tg.json [NONE]
            th.json [NONE]
            ti.json [NONE]
            ti_ER.json [NONE]
            tl.json [NONE]
            to.json [NONE]
            tr.json [NONE]
            tt.json [NONE]
            ug.json [NONE]
            uk.json [NONE]
            ur.json [NONE]
            ur_IN.json [NONE]
            uz.json [NONE]
            uz_Arab.json [NONE]
            uz_Cyrl.json [NONE]
            vi.json [NONE]
            wo.json [NONE]
            yi.json [NONE]
            yo.json [NONE]
            yo_BJ.json [NONE]
            zh.json [NONE]
            zh_HK.json [NONE]
            zh_Hans_HK.json [NONE]
            zh_Hans_MO.json [NONE]
            zh_Hans_SG.json [NONE]
            zh_Hant.json [NONE]
            zh_Hant_HK.json [NONE]
            zh_Hant_MO.json [NONE]
            zh_MO.json [NONE]
            zh_SG.json [NONE]
            zu.json [NONE]
          languages/
            af.json [NONE]
            ak.json [NONE]
            am.json [NONE]
            ar.json [NONE]
            ar_EG.json [NONE]
            ar_LY.json [NONE]
            ar_SA.json [NONE]
            as.json [NONE]
            az.json [NONE]
            az_Cyrl.json [NONE]
            be.json [NONE]
            bg.json [NONE]
            bm.json [NONE]
            bn.json [NONE]
            bn_IN.json [NONE]
            bo.json [NONE]
            br.json [NONE]
            bs.json [NONE]
            bs_Cyrl.json [NONE]
            ca.json [NONE]
            ce.json [NONE]
            cs.json [NONE]
            cy.json [NONE]
            da.json [NONE]
            de.json [NONE]
            de_AT.json [NONE]
            de_CH.json [NONE]
            de_LU.json [NONE]
            dz.json [NONE]
            ee.json [NONE]
            el.json [NONE]
            en.json [NONE]
            en_AU.json [NONE]
            en_CA.json [NONE]
            en_GB.json [NONE]
            en_IN.json [NONE]
            en_NZ.json [NONE]
            eo.json [NONE]
            es.json [NONE]
            es_419.json [NONE]
            es_AR.json [NONE]
            es_BO.json [NONE]
            es_CL.json [NONE]
            es_CO.json [NONE]
            es_CR.json [NONE]
            es_DO.json [NONE]
            es_EC.json [NONE]
            es_GT.json [NONE]
            es_HN.json [NONE]
            es_MX.json [NONE]
            es_NI.json [NONE]
            es_PA.json [NONE]
            es_PE.json [NONE]
            es_PR.json [NONE]
            es_PY.json [NONE]
            es_SV.json [NONE]
            es_US.json [NONE]
            es_VE.json [NONE]
            et.json [NONE]
            eu.json [NONE]
            fa.json [NONE]
            fa_AF.json [NONE]
            ff.json [NONE]
            fi.json [NONE]
            fo.json [NONE]
            fr.json [NONE]
            fr_BE.json [NONE]
            fr_CA.json [NONE]
            fr_CH.json [NONE]
            fy.json [NONE]
            ga.json [NONE]
            gd.json [NONE]
            gl.json [NONE]
            gu.json [NONE]
            gv.json [NONE]
            ha.json [NONE]
            he.json [NONE]
            hi.json [NONE]
            hr.json [NONE]
            hu.json [NONE]
            hy.json [NONE]
            id.json [NONE]
            ig.json [NONE]
            ii.json [NONE]
            in.json [NONE]
            is.json [NONE]
            it.json [NONE]
            iw.json [NONE]
            ja.json [NONE]
            ka.json [NONE]
            ki.json [NONE]
            kk.json [NONE]
            kl.json [NONE]
            km.json [NONE]
            kn.json [NONE]
            ko.json [NONE]
            ks.json [NONE]
            kw.json [NONE]
            ky.json [NONE]
            lb.json [NONE]
            lg.json [NONE]
            ln.json [NONE]
            lo.json [NONE]
            lt.json [NONE]
            lu.json [NONE]
            lv.json [NONE]
            meta.json [NONE]
            mg.json [NONE]
            mk.json [NONE]
            ml.json [NONE]
            mn.json [NONE]
            mo.json [NONE]
            mr.json [NONE]
            ms.json [NONE]
            mt.json [NONE]
            my.json [NONE]
            nb.json [NONE]
            nd.json [NONE]
            ne.json [NONE]
            nl.json [NONE]
            nn.json [NONE]
            no.json [NONE]
            om.json [NONE]
            or.json [NONE]
            os.json [NONE]
            pa.json [NONE]
            pa_Arab.json [NONE]
            pl.json [NONE]
            ps.json [NONE]
            pt.json [NONE]
            pt_PT.json [NONE]
            qu.json [NONE]
            rm.json [NONE]
            rn.json [NONE]
            ro.json [NONE]
            ro_MD.json [NONE]
            ru.json [NONE]
            rw.json [NONE]
            se.json [NONE]
            se_FI.json [NONE]
            sg.json [NONE]
            sh.json [NONE]
            sh_BA.json [NONE]
            si.json [NONE]
            sk.json [NONE]
            sl.json [NONE]
            sn.json [NONE]
            so.json [NONE]
            sq.json [NONE]
            sr.json [NONE]
            sr_BA.json [NONE]
            sr_Cyrl_BA.json [NONE]
            sr_Cyrl_ME.json [NONE]
            sr_Cyrl_XK.json [NONE]
            sr_Latn.json [NONE]
            sr_Latn_BA.json [NONE]
            sr_Latn_ME.json [NONE]
            sr_Latn_XK.json [NONE]
            sr_ME.json [NONE]
            sr_XK.json [NONE]
            sv.json [NONE]
            sv_FI.json [NONE]
            sw.json [NONE]
            sw_CD.json [NONE]
            sw_KE.json [NONE]
            ta.json [NONE]
            te.json [NONE]
            tg.json [NONE]
            th.json [NONE]
            ti.json [NONE]
            tl.json [NONE]
            to.json [NONE]
            tr.json [NONE]
            tt.json [NONE]
            ug.json [NONE]
            uk.json [NONE]
            ur.json [NONE]
            ur_IN.json [NONE]
            uz.json [NONE]
            uz_Arab.json [NONE]
            uz_Cyrl.json [NONE]
            vi.json [NONE]
            wo.json [NONE]
            yi.json [NONE]
            yo.json [NONE]
            yo_BJ.json [NONE]
            zh.json [NONE]
            zh_HK.json [NONE]
            zh_Hant.json [NONE]
            zh_Hant_HK.json [NONE]
            zu.json [NONE]
          locales/
            af.json [NONE]
            ak.json [NONE]
            am.json [NONE]
            ar.json [NONE]
            ar_EG.json [NONE]
            ar_LY.json [NONE]
            ar_SA.json [NONE]
            as.json [NONE]
            az.json [NONE]
            az_AZ.json [NONE]
            az_Cyrl.json [NONE]
            be.json [NONE]
            bg.json [NONE]
            bm.json [NONE]
            bn.json [NONE]
            bn_IN.json [NONE]
            bo.json [NONE]
            br.json [NONE]
            bs.json [NONE]
            bs_BA.json [NONE]
            bs_Cyrl.json [NONE]
            ca.json [NONE]
            ce.json [NONE]
            cs.json [NONE]
            cy.json [NONE]
            da.json [NONE]
            de.json [NONE]
            de_AT.json [NONE]
            de_CH.json [NONE]
            de_LU.json [NONE]
            dz.json [NONE]
            ee.json [NONE]
            el.json [NONE]
            en.json [NONE]
            en_AU.json [NONE]
            en_CA.json [NONE]
            en_GB.json [NONE]
            en_IN.json [NONE]
            en_NH.json [NONE]
            en_RH.json [NONE]
            eo.json [NONE]
            es.json [NONE]
            es_419.json [NONE]
            es_AR.json [NONE]
            es_BO.json [NONE]
            es_CL.json [NONE]
            es_CO.json [NONE]
            es_CR.json [NONE]
            es_DO.json [NONE]
            es_EC.json [NONE]
            es_GT.json [NONE]
            es_HN.json [NONE]
            es_MX.json [NONE]
            es_NI.json [NONE]
            es_PA.json [NONE]
            es_PE.json [NONE]
            es_PR.json [NONE]
            es_PY.json [NONE]
            es_SV.json [NONE]
            es_US.json [NONE]
            es_VE.json [NONE]
            et.json [NONE]
            eu.json [NONE]
            fa.json [NONE]
            fa_AF.json [NONE]
            ff.json [NONE]
            fi.json [NONE]
            fo.json [NONE]
            fr.json [NONE]
            fr_BE.json [NONE]
            fr_CA.json [NONE]
            fr_CH.json [NONE]
            fy.json [NONE]
            ga.json [NONE]
            gd.json [NONE]
            gl.json [NONE]
            gu.json [NONE]
            gv.json [NONE]
            ha.json [NONE]
            he.json [NONE]
            hi.json [NONE]
            hr.json [NONE]
            hu.json [NONE]
            hy.json [NONE]
            id.json [NONE]
            ig.json [NONE]
            ii.json [NONE]
            in.json [NONE]
            in_ID.json [NONE]
            is.json [NONE]
            it.json [NONE]
            iw.json [NONE]
            iw_IL.json [NONE]
            ja.json [NONE]
            ka.json [NONE]
            ki.json [NONE]
            kk.json [NONE]
            kl.json [NONE]
            km.json [NONE]
            kn.json [NONE]
            ko.json [NONE]
            ko_KP.json [NONE]
            ks.json [NONE]
            kw.json [NONE]
            ky.json [NONE]
            lb.json [NONE]
            lg.json [NONE]
            ln.json [NONE]
            lo.json [NONE]
            lt.json [NONE]
            lu.json [NONE]
            lv.json [NONE]
            meta.json [NONE]
            mg.json [NONE]
            mk.json [NONE]
            ml.json [NONE]
            mn.json [NONE]
            mo.json [NONE]
            mr.json [NONE]
            ms.json [NONE]
            mt.json [NONE]
            my.json [NONE]
            nb.json [NONE]
            nd.json [NONE]
            ne.json [NONE]
            nl.json [NONE]
            nn.json [NONE]
            no.json [NONE]
            no_NO.json [NONE]
            no_NO_NY.json [NONE]
            om.json [NONE]
            or.json [NONE]
            os.json [NONE]
            pa.json [NONE]
            pa_Arab.json [NONE]
            pa_IN.json [NONE]
            pa_PK.json [NONE]
            pl.json [NONE]
            ps.json [NONE]
            pt.json [NONE]
            pt_PT.json [NONE]
            qu.json [NONE]
            rm.json [NONE]
            rn.json [NONE]
            ro.json [NONE]
            ro_MD.json [NONE]
            ru.json [NONE]
            ru_UA.json [NONE]
            rw.json [NONE]
            se.json [NONE]
            se_FI.json [NONE]
            sg.json [NONE]
            sh.json [NONE]
            sh_BA.json [NONE]
            sh_CS.json [NONE]
            sh_YU.json [NONE]
            si.json [NONE]
            sk.json [NONE]
            sl.json [NONE]
            sn.json [NONE]
            so.json [NONE]
            sq.json [NONE]
            sr.json [NONE]
            sr_BA.json [NONE]
            sr_CS.json [NONE]
            sr_Cyrl_BA.json [NONE]
            sr_Cyrl_CS.json [NONE]
            sr_Cyrl_ME.json [NONE]
            sr_Cyrl_XK.json [NONE]
            sr_Cyrl_YU.json [NONE]
            sr_Latn.json [NONE]
            sr_Latn_BA.json [NONE]
            sr_Latn_CS.json [NONE]
            sr_Latn_ME.json [NONE]
            sr_Latn_XK.json [NONE]
            sr_Latn_YU.json [NONE]
            sr_ME.json [NONE]
            sr_RS.json [NONE]
            sr_XK.json [NONE]
            sr_YU.json [NONE]
            sv.json [NONE]
            sv_FI.json [NONE]
            sw.json [NONE]
            sw_CD.json [NONE]
            sw_KE.json [NONE]
            ta.json [NONE]
            te.json [NONE]
            tg.json [NONE]
            th.json [NONE]
            ti.json [NONE]
            tl.json [NONE]
            tl_PH.json [NONE]
            to.json [NONE]
            tr.json [NONE]
            tt.json [NONE]
            ug.json [NONE]
            uk.json [NONE]
            ur.json [NONE]
            ur_IN.json [NONE]
            uz.json [NONE]
            uz_AF.json [NONE]
            uz_Arab.json [NONE]
            uz_Cyrl.json [NONE]
            uz_UZ.json [NONE]
            vi.json [NONE]
            wo.json [NONE]
            yi.json [NONE]
            yo.json [NONE]
            yo_BJ.json [NONE]
            zh.json [NONE]
            zh_CN.json [NONE]
            zh_HK.json [NONE]
            zh_Hant.json [NONE]
            zh_Hant_HK.json [NONE]
            zh_MO.json [NONE]
            zh_SG.json [NONE]
            zh_TW.json [NONE]
            zu.json [NONE]
          regions/
            af.json [NONE]
            ak.json [NONE]
            am.json [NONE]
            ar.json [NONE]
            ar_LY.json [NONE]
            ar_SA.json [NONE]
            as.json [NONE]
            az.json [NONE]
            az_Cyrl.json [NONE]
            be.json [NONE]
            bg.json [NONE]
            bm.json [NONE]
            bn.json [NONE]
            bn_IN.json [NONE]
            bo.json [NONE]
            bo_IN.json [NONE]
            br.json [NONE]
            bs.json [NONE]
            bs_Cyrl.json [NONE]
            ca.json [NONE]
            ce.json [NONE]
            cs.json [NONE]
            cy.json [NONE]
            da.json [NONE]
            de.json [NONE]
            de_AT.json [NONE]
            de_CH.json [NONE]
            dz.json [NONE]
            ee.json [NONE]
            el.json [NONE]
            en.json [NONE]
            en_GB.json [NONE]
            eo.json [NONE]
            es.json [NONE]
            es_419.json [NONE]
            es_AR.json [NONE]
            es_BO.json [NONE]
            es_CL.json [NONE]
            es_CO.json [NONE]
            es_CR.json [NONE]
            es_DO.json [NONE]
            es_EC.json [NONE]
            es_GT.json [NONE]
            es_HN.json [NONE]
            es_MX.json [NONE]
            es_NI.json [NONE]
            es_PA.json [NONE]
            es_PE.json [NONE]
            es_PR.json [NONE]
            es_PY.json [NONE]
            es_SV.json [NONE]
            es_US.json [NONE]
            es_VE.json [NONE]
            et.json [NONE]
            eu.json [NONE]
            fa.json [NONE]
            fa_AF.json [NONE]
            ff.json [NONE]
            fi.json [NONE]
            fo.json [NONE]
            fr.json [NONE]
            fr_BE.json [NONE]
            fr_CA.json [NONE]
            fy.json [NONE]
            ga.json [NONE]
            gd.json [NONE]
            gl.json [NONE]
            gu.json [NONE]
            gv.json [NONE]
            ha.json [NONE]
            he.json [NONE]
            hi.json [NONE]
            hr.json [NONE]
            hu.json [NONE]
            hy.json [NONE]
            id.json [NONE]
            ig.json [NONE]
            ii.json [NONE]
            in.json [NONE]
            is.json [NONE]
            it.json [NONE]
            iw.json [NONE]
            ja.json [NONE]
            ka.json [NONE]
            ki.json [NONE]
            kk.json [NONE]
            kl.json [NONE]
            km.json [NONE]
            kn.json [NONE]
            ko.json [NONE]
            ko_KP.json [NONE]
            ks.json [NONE]
            kw.json [NONE]
            ky.json [NONE]
            lb.json [NONE]
            lg.json [NONE]
            ln.json [NONE]
            lo.json [NONE]
            lt.json [NONE]
            lu.json [NONE]
            lv.json [NONE]
            meta.json [NONE]
            mg.json [NONE]
            mk.json [NONE]
            ml.json [NONE]
            mn.json [NONE]
            mo.json [NONE]
            mr.json [NONE]
            ms.json [NONE]
            mt.json [NONE]
            my.json [NONE]
            nb.json [NONE]
            nd.json [NONE]
            ne.json [NONE]
            nl.json [NONE]
            nn.json [NONE]
            no.json [NONE]
            om.json [NONE]
            or.json [NONE]
            os.json [NONE]
            pa.json [NONE]
            pa_Arab.json [NONE]
            pl.json [NONE]
            ps.json [NONE]
            pt.json [NONE]
            pt_PT.json [NONE]
            qu.json [NONE]
            rm.json [NONE]
            rn.json [NONE]
            ro.json [NONE]
            ro_MD.json [NONE]
            ru.json [NONE]
            ru_UA.json [NONE]
            rw.json [NONE]
            se.json [NONE]
            se_FI.json [NONE]
            sg.json [NONE]
            sh.json [NONE]
            sh_BA.json [NONE]
            si.json [NONE]
            sk.json [NONE]
            sl.json [NONE]
            sn.json [NONE]
            so.json [NONE]
            sq.json [NONE]
            sr.json [NONE]
            sr_BA.json [NONE]
            sr_Cyrl_BA.json [NONE]
            sr_Cyrl_ME.json [NONE]
            sr_Cyrl_XK.json [NONE]
            sr_Latn.json [NONE]
            sr_Latn_BA.json [NONE]
            sr_Latn_ME.json [NONE]
            sr_Latn_XK.json [NONE]
            sr_ME.json [NONE]
            sr_XK.json [NONE]
            sv.json [NONE]
            sw.json [NONE]
            sw_CD.json [NONE]
            sw_KE.json [NONE]
            ta.json [NONE]
            te.json [NONE]
            tg.json [NONE]
            th.json [NONE]
            ti.json [NONE]
            tl.json [NONE]
            to.json [NONE]
            tr.json [NONE]
            tt.json [NONE]
            ug.json [NONE]
            uk.json [NONE]
            ur.json [NONE]
            ur_IN.json [NONE]
            uz.json [NONE]
            uz_Arab.json [NONE]
            uz_Cyrl.json [NONE]
            vi.json [NONE]
            wo.json [NONE]
            yi.json [NONE]
            yo.json [NONE]
            yo_BJ.json [NONE]
            zh.json [NONE]
            zh_HK.json [NONE]
            zh_Hant.json [NONE]
            zh_Hant_HK.json [NONE]
            zu.json [NONE]
          scripts/
            af.json [NONE]
            am.json [NONE]
            ar.json [NONE]
            as.json [NONE]
            az.json [NONE]
            az_Cyrl.json [NONE]
            be.json [NONE]
            bg.json [NONE]
            bn.json [NONE]
            bo.json [NONE]
            br.json [NONE]
            bs.json [NONE]
            bs_Cyrl.json [NONE]
            ca.json [NONE]
            ce.json [NONE]
            cs.json [NONE]
            cy.json [NONE]
            da.json [NONE]
            de.json [NONE]
            dz.json [NONE]
            ee.json [NONE]
            el.json [NONE]
            en.json [NONE]
            en_AU.json [NONE]
            en_GB.json [NONE]
            en_IN.json [NONE]
            es.json [NONE]
            es_419.json [NONE]
            es_MX.json [NONE]
            es_US.json [NONE]
            et.json [NONE]
            eu.json [NONE]
            fa.json [NONE]
            fa_AF.json [NONE]
            fi.json [NONE]
            fo.json [NONE]
            fr.json [NONE]
            fr_CA.json [NONE]
            fy.json [NONE]
            ga.json [NONE]
            gd.json [NONE]
            gl.json [NONE]
            gu.json [NONE]
            he.json [NONE]
            hi.json [NONE]
            hr.json [NONE]
            hu.json [NONE]
            hy.json [NONE]
            id.json [NONE]
            ii.json [NONE]
            in.json [NONE]
            is.json [NONE]
            it.json [NONE]
            iw.json [NONE]
            ja.json [NONE]
            ka.json [NONE]
            kk.json [NONE]
            km.json [NONE]
            kn.json [NONE]
            ko.json [NONE]
            ks.json [NONE]
            ky.json [NONE]
            lb.json [NONE]
            lo.json [NONE]
            lt.json [NONE]
            lv.json [NONE]
            meta.json [NONE]
            mk.json [NONE]
            ml.json [NONE]
            mn.json [NONE]
            mr.json [NONE]
            ms.json [NONE]
            mt.json [NONE]
            my.json [NONE]
            nb.json [NONE]
            ne.json [NONE]
            nl.json [NONE]
            nn.json [NONE]
            no.json [NONE]
            om.json [NONE]
            or.json [NONE]
            os.json [NONE]
            pa.json [NONE]
            pa_Arab.json [NONE]
            pl.json [NONE]
            ps.json [NONE]
            pt.json [NONE]
            pt_PT.json [NONE]
            rm.json [NONE]
            ro.json [NONE]
            ru.json [NONE]
            se.json [NONE]
            se_FI.json [NONE]
            sh.json [NONE]
            si.json [NONE]
            sk.json [NONE]
            sl.json [NONE]
            so.json [NONE]
            sq.json [NONE]
            sr.json [NONE]
            sr_Latn.json [NONE]
            sv.json [NONE]
            sw.json [NONE]
            ta.json [NONE]
            te.json [NONE]
            tg.json [NONE]
            th.json [NONE]
            ti.json [NONE]
            tl.json [NONE]
            to.json [NONE]
            tr.json [NONE]
            tt.json [NONE]
            ug.json [NONE]
            uk.json [NONE]
            ur.json [NONE]
            uz.json [NONE]
            uz_Arab.json [NONE]
            uz_Cyrl.json [NONE]
            vi.json [NONE]
            wo.json [NONE]
            yi.json [NONE]
            zh.json [NONE]
            zh_HK.json [NONE]
            zh_Hant.json [NONE]
            zh_Hant_HK.json [NONE]
            zu.json [NONE]
          svn-info.txt [NONE]
          version.txt [NONE]
        stubs/
          Collator.php [NONE]
          IntlDateFormatter.php [NONE]
          Locale.php [NONE]
          NumberFormatter.php [NONE]
      Util/
        IcuVersion.php [NONE]
        IntlTestHelper.php [NONE]
        SvnCommit.php [NONE]
        SvnRepository.php [NONE]
        Version.php [NONE]
    polyfill-intl-icu/
      bootstrap.php [NONE]
    polyfill-mbstring/
      Mbstring.php [NONE]
      Resources/
        unidata/
          lowerCase.php [NONE]
          upperCase.php [NONE]
      bootstrap.php [NONE]
    var-dumper/
      Caster/
        AmqpCaster.php [NONE]
        ArgsStub.php [NONE]
        Caster.php [NONE]
        ClassStub.php [NONE]
        ConstStub.php [NONE]
        CutArrayStub.php [NONE]
        CutStub.php [NONE]
        DOMCaster.php [NONE]
        DateCaster.php [NONE]
        DoctrineCaster.php [NONE]
        EnumStub.php [NONE]
        ExceptionCaster.php [NONE]
        FrameStub.php [NONE]
        LinkStub.php [NONE]
        MongoCaster.php [NONE]
        PdoCaster.php [NONE]
        PgSqlCaster.php [NONE]
        RedisCaster.php [NONE]
        ReflectionCaster.php [NONE]
        ResourceCaster.php [NONE]
        SplCaster.php [NONE]
        StubCaster.php [NONE]
        SymfonyCaster.php [NONE]
        TraceStub.php [NONE]
        XmlReaderCaster.php [NONE]
        XmlResourceCaster.php [NONE]
      Cloner/
        AbstractCloner.php [NONE]
        ClonerInterface.php [NONE]
        Cursor.php [NONE]
        Data.php [NONE]
        DumperInterface.php [NONE]
        Stub.php [NONE]
        VarCloner.php [NONE]
      Dumper/
        AbstractDumper.php [NONE]
        CliDumper.php [NONE]
        DataDumperInterface.php [NONE]
        HtmlDumper.php [NONE]
      Exception/
        ThrowingCasterException.php [NONE]
      Resources/
        functions/
          dump.php [NONE]
      VarDumper.php [NONE]

.php_cs.cache
psysh.phar
psysh-compat.phar
/build/

This comment has been minimized.

@theofidry

theofidry May 5, 2018
Author Contributor

I added the / prefix, it's usually a better practice to ensure those rules applies only to this project.

clean: ## Clean all created artifacts
.PHONY: clean
clean:
rm -rf build/

This comment has been minimized.

@theofidry

theofidry May 5, 2018
Author Contributor

so I updated the script, there is only two artefact directories ever created: dist and build. Everything is in there

vendor: composer.lock
composer install

vendor/bamarni: composer.lock

This comment has been minimized.

@theofidry

theofidry May 5, 2018
Author Contributor

Done


build: ## Compile the application into the PHAR
.PHONY: build
build: build/psysh.phar build/psysh-compat.phar build/psysh-php54.phar build/psysh-php54-compat.phar

This comment has been minimized.

@theofidry

theofidry May 5, 2018
Author Contributor

So the PHP 5.4 PHARs are being built thanks to the Composer platform.php option which ensures the deps are installed as everything was on 5.4. So the 4 PHARs are generated here instead of 2 PHARs in two separate builds.

Note that the non PHP 5.4 PHAR is currently built in 7.1, you may want to lower that

This comment has been minimized.

@bobthecow

bobthecow May 5, 2018
Owner

I think I tried building on 7.2, 7.1 and 7.0, and the one that worked most consistently across PHP versions was 7.0. Let's keep that, for now, and possibly bump it later.

@@ -0,0 +1,22 @@
#!/usr/bin/env php

This comment has been minimized.

@theofidry

theofidry May 5, 2018
Author Contributor

I opened an issue box-project/box#206 to be able to remove the main script since your stub ditches it. It's however a minor optimization that shouldn't be blocking

rm -rf build-vendor

COMPOSER_VENDOR_DIR=build-vendor composer update \
--prefer-stable --no-dev --no-progress --classmap-authoritative --no-interaction --verbose

This comment has been minimized.

@theofidry

theofidry May 5, 2018
Author Contributor

Updated the makefile for it to never change whatever you currently have in composer.json, composer.lock or vendor

tar --transform "s/.*/psysh/" -czf dist/psysh-${PKG_VERSION}.tar.gz psysh.phar
tar --transform "s/.*/psysh/" -czf dist/psysh-${PKG_VERSION}-compat.tar.gz psysh-compat.phar
fi
tar -czf dist/psysh-${PKG_VERSION}.tar.gz build/psysh.phar

This comment has been minimized.

@theofidry

theofidry May 5, 2018
Author Contributor

maybe that could be a one liner... not sure about it

This comment has been minimized.

@bobthecow

bobthecow May 5, 2018
Owner

The reason for the previous code was to rename all the phars on the way in to just be psysh. Unfortunately the options to do this aren’t portable, hence the “if BSD” business.

theofidry added 4 commits Apr 26, 2018
@theofidry theofidry force-pushed the theofidry:feature/box branch from 0944573 to 4e2eb01 May 5, 2018
@theofidry
Copy link
Contributor Author

@theofidry theofidry commented May 5, 2018

@bobthecow ready for another round

Makefile Outdated
rm -rf build/psysh || true
mkdir build/psysh
cp -R $(PSYSH_SRC) build/psysh/
composer config --working-dir build/psysh-php54-compat platform.php 7.1

This comment has been minimized.

@bobthecow

bobthecow May 5, 2018
Owner

working dir copypasta

Makefile Outdated
rm -rf build/psysh-compat || true
mkdir build/psysh-compat
cp -R $(PSYSH_SRC) build/psysh-compat/
composer config --working-dir build/psysh-php54-compat platform.php 7.1

This comment has been minimized.

@bobthecow

bobthecow May 5, 2018
Owner

working dir copypasta

@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 5, 2018

From a fresh install, the makefile won't work (because composer bin box install hasn't run) but it won't tell you why, and the error (vendor/bin/box: no such file or directory) isn't the least bit helpful :P

bin/package Outdated
fi
tar -czf dist/psysh-${PKG_VERSION}.tar.gz build/psysh.phar
tar -czf dist/psysh-compat-${PKG_VERSION}.tar.gz build/psysh-compat.phar
tar -czf dist/psysh-php54-${PKG_VERSION}.tar.gz build/psysh-php54.phar

This comment has been minimized.

@bobthecow

bobthecow May 5, 2018
Owner

we can leave off the php version check higher in the package script, since we're packing all at once.

bin/package Outdated
tar -czf dist/psysh-${PKG_VERSION}.tar.gz build/psysh.phar
tar -czf dist/psysh-compat-${PKG_VERSION}.tar.gz build/psysh-compat.phar
tar -czf dist/psysh-php54-${PKG_VERSION}.tar.gz build/psysh-php54.phar
tar -czf dist/psysh-php54-compat-${PKG_VERSION}.tar.gz build/psysh-php54-compat.phar

This comment has been minimized.

@bobthecow

bobthecow May 5, 2018
Owner

let's keep the existing psysh-${PKG_VERSION}*.tar.gz naming pattern.

@@ -22,8 +22,7 @@
},
"require-dev": {
"phpunit/phpunit": "~4.8.35|~5.0|~6.0|~7.0",
"symfony/finder": "~2.1|~3.0|~4.0",
"hoa/console": "~2.15|~3.16"

This comment has been minimized.

@bobthecow

bobthecow May 5, 2018
Owner

hoa/console is a dev dependency because tests :)

This comment has been minimized.

@theofidry

theofidry May 6, 2018
Author Contributor

Hm, I think I messed up an update at one point, sorry didn't see I removed it

Makefile Outdated
@@ -0,0 +1,88 @@
.DEFAULT_GOAL := help

PSYSH_SRC = bin src box.json.dist composer.json composer.lock build/stub

This comment has been minimized.

@bobthecow

bobthecow May 5, 2018
Owner

let's not copy the composer.lock file over. the current installed state shouldn't have any impact on the built phars.

@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 5, 2018

The -compat builds used to (unintentionally) exclude ~10MB of intl strings. Now they're not excluded, and it's making the PHARs huge. I'm looking into what exactly our dependency needs, to see if we can explicitly exclude some of them. A few things we're including that we definitely don't need, though:

vendor/hoa/console/Documentation
vendor/hoa/ustring/Documentation
vendor/nikic/php-parser/grammar
vendor/nikic/php-parser/test_old
@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 5, 2018

I'm still seeing ~1.7MB box-build phars, at a minimum. How did you get 649KB?

@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 5, 2018

Ha! It looks like symfony/intl doesn't do us any good at all… We were including it for VarDumper, but that doesn't even use it if the intl extension isn't loaded.

¯\_(ツ)_/¯

Removing symfony/intl from the compat builds brings 'em down to ~2.3MB, which is still 25% more than before box, but definitely much more reasonable.

@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 6, 2018

Ok. After digging through dependencies of all the dependencies, the *-compat builds should include symfony/polyfill-iconv, symfony/polyfill-mbstring and hoa/console. That puts them at ~3.6MB, and includes as many things as we can reasonably polyfill (iconv, mbstring, and readline, respectively).

Every other extension we might want can't be (or hasn't been) polyfilled.

So let's add symfony/polyfill-iconv and symfony/polyfill-mbstring in place of symfony/intl.

@theofidry
Copy link
Contributor Author

@theofidry theofidry commented May 6, 2018

I'm still seeing ~1.7MB box-build phars, at a minimum. How did you get 649KB?

I see the same, they were just compressed at one point which you probably don't want unless you don't mind the PHAR not being usable because the user does not have the zlib extension loaded

@theofidry theofidry force-pushed the theofidry:feature/box branch from 98c98ce to 2c698af May 6, 2018
@theofidry
Copy link
Contributor Author

@theofidry theofidry commented May 6, 2018

Addressed most comments if not all.

Note that Box requirement checker takes 280KB with ~30 files.

You can also have a great diff thanks to box info --list which lists all the files so you can compare the result or pharaoh

@theofidry
Copy link
Contributor Author

@theofidry theofidry commented May 6, 2018

I also think the stub could be reworked a bit to run the requirement checker as the very very first thing when in the PHAR, before the autoloading

@theofidry
Copy link
Contributor Author

@theofidry theofidry commented May 6, 2018

I made a suggestion with a different stub which would remove the need for the build-stub script, however I get the previous error of I can't seem to be able to start psysh and I don't really get why :/

@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 6, 2018

The requirement checks shouldn't run if we're just using the stub as an autoloader.

The thing I really like about the current stub is that it doesn't require anything to run. Not even ext-phar. So if you've got multiple PHP versions, and have a global PsySH install, you can run the global psysh phar with local composer-installed PsySH code, even if your current version of PHP is super dumb and doesn't support anything at all.

We definitely wouldn't want requirement checks to run in that case, since they're about compatibility with the guts of the phar, not about compatibility with the code that's actually going to run :)

@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 6, 2018

… they were just compressed at one point which you probably don't want …

Got it. Yep, we don't want a compressed phar.

Note that Box requirement checker takes 280KB with ~30 files.

Cool. I'm not trying to nitpick on size, I'm mostly using it as a gauge for whether we're including a bunch of stuff we don't actually need.

You can also have a great diff thanks to box info --list

Yep. That's what I've been using to track things down :)

@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 6, 2018

I get the previous error of I can't seem to be able to start psysh and I don't really get why :/

This time it's for a different reason :)

https://github.com/bobthecow/psysh/blob/master/bin/psysh#L99-L100

@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 6, 2018

Let's keep the build/stub version. We can always improve on that in future pull requests.

@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 6, 2018

Checked all four variations, and the contents of the phars looks right. Sizes look right too:

was now
psysh.phar 1.3M 1.6M
psysh-compat.phar 1.7M 3.2M
psysh-php54.phar 1.2M 1.5M
psysh-php54-compat.phar 1.5M 3.0M

That's + ~300k for the box requirements checker, and + ~ 1.2MB to each of the compat builds for the new polyfills.

@theofidry theofidry force-pushed the theofidry:feature/box branch from d0e88d2 to 2c698af May 6, 2018
@theofidry
Copy link
Contributor Author

@theofidry theofidry commented May 6, 2018

Let's keep the build/stub version. We can always improve on that in future pull requests.

What I don't like about the current stub generation is:

  • You need to generate it
  • You need to know about Box internal for the requirement checker and disabling it on Box end will break the stub
  • It requires some pattern based replacements in the current bin
  • The current requirement check is not the first thing done although IMO it should

But let's do that then, it can always be improved later.

That's + ~300k for the box requirements checker, and + ~ 1.2MB to each of the compat builds for the new polyfills.

Sounds right. The deployment in Travis need to be updated still though

@bobthecow bobthecow merged commit eb5c09e into bobthecow:master May 6, 2018
2 checks passed
2 checks passed
continuous-integration/styleci/pr The analysis has passed
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
bobthecow added a commit that referenced this pull request May 6, 2018
@bobthecow
Copy link
Owner

@bobthecow bobthecow commented May 6, 2018

Thanks so much for taking this on! I'll open a pull request shortly for you to review with a few more ideas.

Side note: I missed it this time, but please open pull requests against develop rather than master :)

@theofidry theofidry deleted the theofidry:feature/box branch May 6, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants
You can’t perform that action at this time.