4.4.0
This release comes with a special change. An internal piece of Box, Paragonie's Pharaoh, has been removed as a dependency. Its original code has been brought within the Box project and better integrated. This birthed a new class PharInfo
which allows to provide a similar but richer API than Phar|PharData
without its traditional problems. Thanks to this, the info
and diff
commands could be completely revamped.
TLDR: the biggest change is the diff
command that can now be reliably be used to compare two PHARs.
Features
- Prompt a question before removing the output directory when extracting a PHAR (#968)
- No longer require
phar.readonly
to be off for using the extract command (#969) - Extract the PHAR API version and the normalized metadata when extracting a PHAR (#977)
- Rework the
diff
command (#1039, #1040, #1043, #1045, #1051, #1052, #1053, #1055, #1056, #1057, #1058, #1059, #1062)
Bugfixes
- Fix the parsing of invalid PHPDoc (#943)
- Fix the normalization of null metadata (#983)
- Fix the file the PHAR file size shown when displaying a PHAR info (#987)
- Fix the requirement checker Terminal
getenv()
usage (#999)
Misc
- Merge Pharaoh within Box, rework it into
PharInfo
(#934, #938, #939, #937, #953, #952, #957, #963, #964, #965, #966, #967, #962, #961, #972, #974, #975, #976, #978, #980, #982, #985, #960, #996, #997, #1026, #1031, #1033, #1034, #1035, #1036, #1037, #1038, #1032, #1041) - Switch more methods to a
Safe\*
API (#948, #1050) - Fix the Makefile color usage (#1000)
- Migrate Box FileSystem to Fidry FileSystem (#1028)