gulp-phug 1.3.3 → 1.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (260) hide show
  1. package/index.js +23 -8
  2. package/package.json +4 -4
  3. package/support/composer.json +1 -1
  4. package/support/composer.lock +93 -178
  5. package/support/vendor/autoload.php +15 -0
  6. package/support/vendor/bin/phug +119 -0
  7. package/support/vendor/bin/var-dump-server +119 -0
  8. package/support/vendor/composer/ClassLoader.php +166 -32
  9. package/support/vendor/composer/InstalledVersions.php +387 -329
  10. package/support/vendor/composer/autoload_classmap.php +1 -5
  11. package/support/vendor/composer/autoload_files.php +2 -3
  12. package/support/vendor/composer/autoload_namespaces.php +1 -1
  13. package/support/vendor/composer/autoload_psr4.php +3 -4
  14. package/support/vendor/composer/autoload_real.php +12 -37
  15. package/support/vendor/composer/autoload_static.php +6 -17
  16. package/support/vendor/composer/installed.json +97 -184
  17. package/support/vendor/composer/installed.php +129 -151
  18. package/support/vendor/composer/platform_check.php +16 -4
  19. package/support/vendor/phug/phug/.github/workflows/coverage.yml +71 -0
  20. package/support/vendor/phug/phug/.github/workflows/multi-tester.yml +46 -0
  21. package/support/vendor/phug/phug/.github/workflows/split.yml +41 -0
  22. package/support/vendor/phug/phug/.github/workflows/style.yml +48 -0
  23. package/support/vendor/phug/phug/.github/workflows/tests.yml +49 -0
  24. package/support/vendor/phug/phug/.multi-tester.yml +42 -10
  25. package/support/vendor/phug/phug/composer.json +25 -16
  26. package/support/vendor/phug/phug/phpcs.xml +4 -0
  27. package/support/vendor/phug/phug/phpunit.xml +2 -0
  28. package/support/vendor/phug/phug/phug +1 -1
  29. package/support/vendor/phug/phug/release.php +8 -0
  30. package/support/vendor/phug/phug/src/Phug/Ast/Ast/Node.php +7 -1
  31. package/support/vendor/phug/phug/src/Phug/Ast/composer.json +1 -2
  32. package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/Element/BlockElement.php +1 -1
  33. package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AssignmentNodeCompiler.php +9 -1
  34. package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AttributeNodeCompiler.php +1 -0
  35. package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ElementNodeCompiler.php +6 -0
  36. package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ImportNodeCompiler.php +4 -4
  37. package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompilerInterface.php +1 -1
  38. package/support/vendor/phug/phug/src/Phug/Compiler/composer.json +5 -2
  39. package/support/vendor/phug/phug/src/Phug/DependencyInjection/DependencyInjection.php +1 -1
  40. package/support/vendor/phug/phug/src/Phug/DependencyInjection/composer.json +1 -2
  41. package/support/vendor/phug/phug/src/Phug/Event/Event/ListenerQueue.php +3 -0
  42. package/support/vendor/phug/phug/src/Phug/Event/EventManagerTrait.php +1 -1
  43. package/support/vendor/phug/phug/src/Phug/Event/composer.json +1 -2
  44. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/AbstractFormat.php +15 -12
  45. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/AssignmentContainerInterface.php +2 -1
  46. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AbstractAssignmentContainerElement.php +11 -1
  47. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AbstractMarkupElement.php +1 -1
  48. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AssignmentElement.php +9 -4
  49. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AttributeElement.php +4 -1
  50. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/CodeElement.php +2 -2
  51. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/MarkupElement.php +10 -8
  52. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/MixinCallElement.php +2 -1
  53. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/MixinElement.php +2 -1
  54. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Format/XmlFormat.php +213 -20
  55. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/AssignmentHelpersTrait.php +7 -4
  56. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/HandleVariable.php +4 -4
  57. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/MagicAccessorTrait.php +1 -7
  58. package/support/vendor/phug/phug/src/Phug/Formatter/Formatter.php +1 -1
  59. package/support/vendor/phug/phug/src/Phug/Formatter/composer.json +1 -2
  60. package/support/vendor/phug/phug/src/Phug/Invoker/Invoker.php +1 -1
  61. package/support/vendor/phug/phug/src/Phug/Invoker/composer.json +5 -2
  62. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Partial/IndentStyleTrait.php +5 -5
  63. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/AssignmentScanner.php +8 -2
  64. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/AttributeScanner.php +23 -11
  65. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/ConditionalScanner.php +1 -1
  66. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/FilterScanner.php +6 -10
  67. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/IndentationScanner.php +1 -1
  68. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/KeywordScanner.php +1 -1
  69. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/MultilineScanner.php +6 -12
  70. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/Partial/TrailingOutdentHandlerTrait.php +26 -0
  71. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/TextScanner.php +3 -3
  72. package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/State.php +9 -9
  73. package/support/vendor/phug/phug/src/Phug/Lexer/composer.json +1 -2
  74. package/support/vendor/phug/phug/src/Phug/Parser/Parser/Event/NodeEvent.php +3 -2
  75. package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/AssignmentNode.php +5 -1
  76. package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/AttributeNode.php +4 -1
  77. package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/ElementNode.php +5 -1
  78. package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/FilterNode.php +2 -1
  79. package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/MixinCallNode.php +5 -1
  80. package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/MixinNode.php +5 -1
  81. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AbstractTokenHandler.php +87 -0
  82. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AssignmentTokenHandler.php +6 -21
  83. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AttributeEndTokenHandler.php +5 -10
  84. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AttributeStartTokenHandler.php +7 -23
  85. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AttributeTokenHandler.php +21 -19
  86. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AutoCloseTokenHandler.php +5 -17
  87. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/BlockTokenHandler.php +4 -10
  88. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/CaseTokenHandler.php +4 -10
  89. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ClassTokenHandler.php +7 -34
  90. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/CodeTokenHandler.php +4 -10
  91. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/CommentTokenHandler.php +4 -10
  92. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ConditionalTokenHandler.php +4 -10
  93. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/DoTokenHandler.php +4 -10
  94. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/DoctypeTokenHandler.php +4 -10
  95. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/EachTokenHandler.php +4 -10
  96. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ExpansionTokenHandler.php +5 -11
  97. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ExpressionTokenHandler.php +4 -10
  98. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/FilterTokenHandler.php +4 -10
  99. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ForTokenHandler.php +4 -10
  100. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/IdTokenHandler.php +7 -33
  101. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ImportTokenHandler.php +14 -20
  102. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/IndentTokenHandler.php +4 -10
  103. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/InterpolationEndTokenHandler.php +4 -10
  104. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/InterpolationStartTokenHandler.php +29 -30
  105. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/KeywordTokenHandler.php +4 -10
  106. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/MixinCallTokenHandler.php +4 -10
  107. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/MixinTokenHandler.php +4 -10
  108. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/NewLineTokenHandler.php +4 -10
  109. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/OutdentTokenHandler.php +4 -10
  110. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/Partial/StaticAttributeTrait.php +36 -0
  111. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TagInterpolationEndTokenHandler.php +4 -10
  112. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TagInterpolationStartTokenHandler.php +7 -10
  113. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TagTokenHandler.php +6 -21
  114. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TextTokenHandler.php +4 -10
  115. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/VariableTokenHandler.php +4 -10
  116. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/WhenTokenHandler.php +4 -10
  117. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/WhileTokenHandler.php +4 -10
  118. package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/YieldTokenHandler.php +4 -10
  119. package/support/vendor/phug/phug/src/Phug/Parser/Parser.php +1 -1
  120. package/support/vendor/phug/phug/src/Phug/Parser/composer.json +1 -2
  121. package/support/vendor/phug/phug/src/Phug/Phug/Phug/Cli.php +5 -5
  122. package/support/vendor/phug/phug/src/Phug/Phug/Phug/Partial/ExtensionsTrait.php +1 -1
  123. package/support/vendor/phug/phug/src/Phug/Phug/Phug/Partial/FacadeOptionsTrait.php +1 -1
  124. package/support/vendor/phug/phug/src/Phug/Phug/Phug/Phug.php +14 -5
  125. package/support/vendor/phug/phug/src/Phug/Phug/composer.json +5 -2
  126. package/support/vendor/phug/phug/src/Phug/Reader/Reader.php +9 -9
  127. package/support/vendor/phug/phug/src/Phug/Reader/composer.json +4 -0
  128. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Adapter/FileAdapter.php +21 -4
  129. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Adapter/Stream/Template.php +5 -0
  130. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Adapter/StreamAdapter.php +1 -1
  131. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/CacheInterface.php +1 -1
  132. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Partial/AdapterTrait.php +1 -1
  133. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Partial/Debug/DebuggerTrait.php +56 -10
  134. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Partial/RendererOptionsTrait.php +1 -1
  135. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Profiler/Dump.php +1 -1
  136. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Profiler/LinkDump.php +2 -2
  137. package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Profiler/ProfilerModule.php +1 -1
  138. package/support/vendor/phug/phug/src/Phug/Renderer/composer.json +7 -3
  139. package/support/vendor/phug/phug/src/Phug/Util/CompatibilityUtil/TestCaseTyped.php +67 -0
  140. package/support/vendor/phug/phug/src/Phug/Util/CompatibilityUtil/TestCaseUntyped.php +67 -0
  141. package/support/vendor/phug/phug/src/Phug/Util/Util/AttributesInterface.php +16 -0
  142. package/support/vendor/phug/phug/src/Phug/Util/Util/AttributesOrderInterface.php +17 -0
  143. package/support/vendor/phug/phug/src/Phug/Util/Util/AttributesStorage.php +44 -0
  144. package/support/vendor/phug/phug/src/Phug/Util/Util/Collection.php +2 -0
  145. package/support/vendor/phug/phug/src/Phug/Util/Util/OrderableInterface.php +22 -0
  146. package/support/vendor/phug/phug/src/Phug/Util/Util/OrderedValue.php +25 -0
  147. package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/AttributeTrait.php +2 -1
  148. package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/AttributesOrderTrait.php +19 -0
  149. package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/ModuleContainerTrait.php +3 -3
  150. package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/OptionTrait.php +1 -1
  151. package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/OrderTrait.php +27 -0
  152. package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/StaticMemberTrait.php +1 -1
  153. package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/ValueTrait.php +5 -3
  154. package/support/vendor/phug/phug/src/Phug/Util/Util/SandBox.php +1 -0
  155. package/support/vendor/phug/phug/src/Phug/Util/Util/TestCase.php +47 -4
  156. package/support/vendor/phug/phug/src/Phug/Util/composer.json +5 -6
  157. package/support/vendor/symfony/deprecation-contracts/CHANGELOG.md +5 -0
  158. package/support/vendor/symfony/{polyfill-php72 → deprecation-contracts}/LICENSE +1 -1
  159. package/support/vendor/symfony/deprecation-contracts/README.md +26 -0
  160. package/support/vendor/symfony/{polyfill-php72 → deprecation-contracts}/composer.json +9 -9
  161. package/support/vendor/symfony/deprecation-contracts/function.php +27 -0
  162. package/support/vendor/symfony/polyfill-mbstring/LICENSE +1 -1
  163. package/support/vendor/symfony/polyfill-mbstring/Mbstring.php +256 -57
  164. package/support/vendor/symfony/polyfill-mbstring/README.md +1 -1
  165. package/support/vendor/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php +119 -0
  166. package/support/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php +1 -1
  167. package/support/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php +102 -27
  168. package/support/vendor/symfony/polyfill-mbstring/bootstrap.php +33 -8
  169. package/support/vendor/symfony/polyfill-mbstring/bootstrap80.php +167 -0
  170. package/support/vendor/symfony/polyfill-mbstring/composer.json +5 -4
  171. package/support/vendor/symfony/var-dumper/CHANGELOG.md +63 -0
  172. package/support/vendor/symfony/var-dumper/Caster/AddressInfoCaster.php +82 -0
  173. package/support/vendor/symfony/var-dumper/Caster/AmqpCaster.php +12 -10
  174. package/support/vendor/symfony/var-dumper/Caster/ArgsStub.php +6 -7
  175. package/support/vendor/symfony/var-dumper/Caster/Caster.php +59 -31
  176. package/support/vendor/symfony/var-dumper/Caster/ClassStub.php +7 -9
  177. package/support/vendor/symfony/var-dumper/Caster/ConstStub.php +20 -4
  178. package/support/vendor/symfony/var-dumper/Caster/CurlCaster.php +31 -0
  179. package/support/vendor/symfony/var-dumper/Caster/CutArrayStub.php +1 -1
  180. package/support/vendor/symfony/var-dumper/Caster/CutStub.php +2 -2
  181. package/support/vendor/symfony/var-dumper/Caster/DOMCaster.php +61 -156
  182. package/support/vendor/symfony/var-dumper/Caster/DateCaster.php +27 -26
  183. package/support/vendor/symfony/var-dumper/Caster/DoctrineCaster.php +6 -4
  184. package/support/vendor/symfony/var-dumper/Caster/DsCaster.php +1 -1
  185. package/support/vendor/symfony/var-dumper/Caster/DsPairStub.php +1 -1
  186. package/support/vendor/symfony/var-dumper/Caster/EnumStub.php +4 -5
  187. package/support/vendor/symfony/var-dumper/Caster/ExceptionCaster.php +64 -49
  188. package/support/vendor/symfony/var-dumper/Caster/FFICaster.php +171 -0
  189. package/support/vendor/symfony/var-dumper/Caster/FiberCaster.php +43 -0
  190. package/support/vendor/symfony/var-dumper/Caster/FrameStub.php +6 -8
  191. package/support/vendor/symfony/var-dumper/Caster/GdCaster.php +30 -0
  192. package/support/vendor/symfony/var-dumper/Caster/GmpCaster.php +4 -2
  193. package/support/vendor/symfony/var-dumper/Caster/ImagineCaster.php +2 -0
  194. package/support/vendor/symfony/var-dumper/Caster/ImgStub.php +1 -1
  195. package/support/vendor/symfony/var-dumper/Caster/IntlCaster.php +10 -8
  196. package/support/vendor/symfony/var-dumper/Caster/LinkStub.php +14 -17
  197. package/support/vendor/symfony/var-dumper/Caster/MemcachedCaster.php +10 -8
  198. package/support/vendor/symfony/var-dumper/Caster/MysqliCaster.php +33 -0
  199. package/support/vendor/symfony/var-dumper/Caster/OpenSSLCaster.php +69 -0
  200. package/support/vendor/symfony/var-dumper/Caster/PdoCaster.php +8 -6
  201. package/support/vendor/symfony/var-dumper/Caster/PgSqlCaster.php +21 -19
  202. package/support/vendor/symfony/var-dumper/Caster/ProxyManagerCaster.php +4 -2
  203. package/support/vendor/symfony/var-dumper/Caster/RdKafkaCaster.php +188 -0
  204. package/support/vendor/symfony/var-dumper/Caster/RedisCaster.php +31 -31
  205. package/support/vendor/symfony/var-dumper/Caster/ReflectionCaster.php +100 -44
  206. package/support/vendor/symfony/var-dumper/Caster/ResourceCaster.php +33 -46
  207. package/support/vendor/symfony/var-dumper/Caster/ScalarStub.php +27 -0
  208. package/support/vendor/symfony/var-dumper/Caster/SocketCaster.php +64 -0
  209. package/support/vendor/symfony/var-dumper/Caster/SplCaster.php +57 -44
  210. package/support/vendor/symfony/var-dumper/Caster/SqliteCaster.php +32 -0
  211. package/support/vendor/symfony/var-dumper/Caster/StubCaster.php +15 -5
  212. package/support/vendor/symfony/var-dumper/Caster/SymfonyCaster.php +66 -10
  213. package/support/vendor/symfony/var-dumper/Caster/TraceStub.php +7 -11
  214. package/support/vendor/symfony/var-dumper/Caster/UninitializedStub.php +25 -0
  215. package/support/vendor/symfony/var-dumper/Caster/UuidCaster.php +2 -0
  216. package/support/vendor/symfony/var-dumper/Caster/VirtualStub.php +21 -0
  217. package/support/vendor/symfony/var-dumper/Caster/XmlReaderCaster.php +25 -10
  218. package/support/vendor/symfony/var-dumper/Caster/XmlResourceCaster.php +7 -5
  219. package/support/vendor/symfony/var-dumper/Cloner/AbstractCloner.php +103 -72
  220. package/support/vendor/symfony/var-dumper/Cloner/ClonerInterface.php +1 -5
  221. package/support/vendor/symfony/var-dumper/Cloner/Cursor.php +21 -21
  222. package/support/vendor/symfony/var-dumper/Cloner/Data.php +51 -77
  223. package/support/vendor/symfony/var-dumper/Cloner/DumperInterface.php +11 -14
  224. package/support/vendor/symfony/var-dumper/Cloner/Stub.php +40 -31
  225. package/support/vendor/symfony/var-dumper/Cloner/VarCloner.php +21 -104
  226. package/support/vendor/symfony/var-dumper/Command/Descriptor/CliDescriptor.php +9 -19
  227. package/support/vendor/symfony/var-dumper/Command/Descriptor/HtmlDescriptor.php +10 -11
  228. package/support/vendor/symfony/var-dumper/Command/ServerDumpCommand.php +27 -15
  229. package/support/vendor/symfony/var-dumper/Dumper/AbstractDumper.php +68 -48
  230. package/support/vendor/symfony/var-dumper/Dumper/CliDumper.php +126 -113
  231. package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/CliContextProvider.php +1 -1
  232. package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/ContextProviderInterface.php +0 -3
  233. package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/RequestContextProvider.php +5 -6
  234. package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/SourceContextProvider.php +10 -15
  235. package/support/vendor/symfony/var-dumper/Dumper/ContextualizedDumper.php +8 -11
  236. package/support/vendor/symfony/var-dumper/Dumper/DataDumperInterface.php +3 -0
  237. package/support/vendor/symfony/var-dumper/Dumper/HtmlDumper.php +122 -146
  238. package/support/vendor/symfony/var-dumper/Dumper/ServerDumper.php +10 -10
  239. package/support/vendor/symfony/var-dumper/Exception/ThrowingCasterException.php +1 -1
  240. package/support/vendor/symfony/var-dumper/LICENSE +1 -1
  241. package/support/vendor/symfony/var-dumper/README.md +6 -6
  242. package/support/vendor/symfony/var-dumper/Resources/bin/var-dump-server +4 -0
  243. package/support/vendor/symfony/var-dumper/Resources/functions/dump.php +35 -10
  244. package/support/vendor/symfony/var-dumper/Server/Connection.php +16 -14
  245. package/support/vendor/symfony/var-dumper/Server/DumpServer.php +16 -14
  246. package/support/vendor/symfony/var-dumper/Test/VarDumperTestTrait.php +9 -9
  247. package/support/vendor/symfony/var-dumper/VarDumper.php +69 -17
  248. package/support/vendor/symfony/var-dumper/composer.json +10 -16
  249. package/support/vendor/symfony/polyfill-php72/Php72.php +0 -217
  250. package/support/vendor/symfony/polyfill-php72/README.md +0 -28
  251. package/support/vendor/symfony/polyfill-php72/bootstrap.php +0 -57
  252. package/support/vendor/symfony/polyfill-php80/LICENSE +0 -19
  253. package/support/vendor/symfony/polyfill-php80/Php80.php +0 -105
  254. package/support/vendor/symfony/polyfill-php80/README.md +0 -24
  255. package/support/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php +0 -22
  256. package/support/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php +0 -11
  257. package/support/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php +0 -5
  258. package/support/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php +0 -5
  259. package/support/vendor/symfony/polyfill-php80/bootstrap.php +0 -42
  260. package/support/vendor/symfony/polyfill-php80/composer.json +0 -40
@@ -11,7 +11,6 @@
11
11
 
12
12
  namespace Symfony\Component\VarDumper\Command\Descriptor;
13
13
 
14
- use Symfony\Component\Console\Formatter\OutputFormatterStyle;
15
14
  use Symfony\Component\Console\Input\ArrayInput;
16
15
  use Symfony\Component\Console\Output\OutputInterface;
17
16
  use Symfony\Component\Console\Style\SymfonyStyle;
@@ -27,14 +26,11 @@ use Symfony\Component\VarDumper\Dumper\CliDumper;
27
26
  */
28
27
  class CliDescriptor implements DumpDescriptorInterface
29
28
  {
30
- private $dumper;
31
- private $lastIdentifier;
32
- private $supportsHref;
29
+ private mixed $lastIdentifier = null;
33
30
 
34
- public function __construct(CliDumper $dumper)
35
- {
36
- $this->dumper = $dumper;
37
- $this->supportsHref = method_exists(OutputFormatterStyle::class, 'setHref');
31
+ public function __construct(
32
+ private CliDumper $dumper,
33
+ ) {
38
34
  }
39
35
 
40
36
  public function describe(OutputInterface $output, Data $data, array $context, int $clientId): void
@@ -42,7 +38,7 @@ class CliDescriptor implements DumpDescriptorInterface
42
38
  $io = $output instanceof SymfonyStyle ? $output : new SymfonyStyle(new ArrayInput([]), $output);
43
39
  $this->dumper->setColors($output->isDecorated());
44
40
 
45
- $rows = [['date', date('r', $context['timestamp'])]];
41
+ $rows = [['date', date('r', (int) $context['timestamp'])]];
46
42
  $lastIdentifier = $this->lastIdentifier;
47
43
  $this->lastIdentifier = $clientId;
48
44
 
@@ -50,7 +46,7 @@ class CliDescriptor implements DumpDescriptorInterface
50
46
  if (isset($context['request'])) {
51
47
  $request = $context['request'];
52
48
  $this->lastIdentifier = $request['identifier'];
53
- $section = sprintf('%s %s', $request['method'], $request['uri']);
49
+ $section = \sprintf('%s %s', $request['method'], $request['uri']);
54
50
  if ($controller = $request['controller']) {
55
51
  $rows[] = ['controller', rtrim($this->dumper->dump($controller, true), "\n")];
56
52
  }
@@ -65,10 +61,9 @@ class CliDescriptor implements DumpDescriptorInterface
65
61
 
66
62
  if (isset($context['source'])) {
67
63
  $source = $context['source'];
68
- $sourceInfo = sprintf('%s on line %d', $source['name'], $source['line']);
69
- $fileLink = $source['file_link'] ?? null;
70
- if ($this->supportsHref && $fileLink) {
71
- $sourceInfo = sprintf('<href=%s>%s</>', $fileLink, $sourceInfo);
64
+ $sourceInfo = \sprintf('%s on line %d', $source['name'], $source['line']);
65
+ if ($fileLink = $source['file_link'] ?? null) {
66
+ $sourceInfo = \sprintf('<href=%s>%s</>', $fileLink, $sourceInfo);
72
67
  }
73
68
  $rows[] = ['source', $sourceInfo];
74
69
  $file = $source['file_relative'] ?? $source['file'];
@@ -77,11 +72,6 @@ class CliDescriptor implements DumpDescriptorInterface
77
72
 
78
73
  $io->table([], $rows);
79
74
 
80
- if (!$this->supportsHref && isset($fileLink)) {
81
- $io->writeln(['<info>Open source in your IDE/browser:</info>', $fileLink]);
82
- $io->newLine();
83
- }
84
-
85
75
  $this->dumper->dump($data);
86
76
  $io->newLine();
87
77
  }
@@ -24,12 +24,11 @@ use Symfony\Component\VarDumper\Dumper\HtmlDumper;
24
24
  */
25
25
  class HtmlDescriptor implements DumpDescriptorInterface
26
26
  {
27
- private $dumper;
28
- private $initialized = false;
27
+ private bool $initialized = false;
29
28
 
30
- public function __construct(HtmlDumper $dumper)
31
- {
32
- $this->dumper = $dumper;
29
+ public function __construct(
30
+ private HtmlDumper $dumper,
31
+ ) {
33
32
  }
34
33
 
35
34
  public function describe(OutputInterface $output, Data $data, array $context, int $clientId): void
@@ -45,22 +44,22 @@ class HtmlDescriptor implements DumpDescriptorInterface
45
44
  if (isset($context['request'])) {
46
45
  $request = $context['request'];
47
46
  $controller = "<span class='dumped-tag'>{$this->dumper->dump($request['controller'], true, ['maxDepth' => 0])}</span>";
48
- $title = sprintf('<code>%s</code> <a href="%s">%s</a>', $request['method'], $uri = $request['uri'], $uri);
47
+ $title = \sprintf('<code>%s</code> <a href="%s">%s</a>', $request['method'], $uri = $request['uri'], $uri);
49
48
  $dedupIdentifier = $request['identifier'];
50
49
  } elseif (isset($context['cli'])) {
51
50
  $title = '<code>$ </code>'.$context['cli']['command_line'];
52
51
  $dedupIdentifier = $context['cli']['identifier'];
53
52
  } else {
54
- $dedupIdentifier = uniqid('', true);
53
+ $dedupIdentifier = bin2hex(random_bytes(4));
55
54
  }
56
55
 
57
56
  $sourceDescription = '';
58
57
  if (isset($context['source'])) {
59
58
  $source = $context['source'];
60
59
  $projectDir = $source['project_dir'] ?? null;
61
- $sourceDescription = sprintf('%s on line %d', $source['name'], $source['line']);
60
+ $sourceDescription = \sprintf('%s on line %d', $source['name'], $source['line']);
62
61
  if (isset($source['file_link'])) {
63
- $sourceDescription = sprintf('<a href="%s">%s</a>', $source['file_link'], $sourceDescription);
62
+ $sourceDescription = \sprintf('<a href="%s">%s</a>', $source['file_link'], $sourceDescription);
64
63
  }
65
64
  }
66
65
 
@@ -94,7 +93,7 @@ HTML
94
93
 
95
94
  private function extractDate(array $context, string $format = 'r'): string
96
95
  {
97
- return date($format, $context['timestamp']);
96
+ return date($format, (int) $context['timestamp']);
98
97
  }
99
98
 
100
99
  private function renderTags(array $tags): string
@@ -105,7 +104,7 @@ HTML
105
104
 
106
105
  $renderedTags = '';
107
106
  foreach ($tags as $key => $value) {
108
- $renderedTags .= sprintf('<li><span class="badge">%s</span>%s</li>', $key, $value);
107
+ $renderedTags .= \sprintf('<li><span class="badge">%s</span>%s</li>', $key, $value);
109
108
  }
110
109
 
111
110
  return <<<HTML
@@ -11,7 +11,10 @@
11
11
 
12
12
  namespace Symfony\Component\VarDumper\Command;
13
13
 
14
+ use Symfony\Component\Console\Attribute\AsCommand;
14
15
  use Symfony\Component\Console\Command\Command;
16
+ use Symfony\Component\Console\Completion\CompletionInput;
17
+ use Symfony\Component\Console\Completion\CompletionSuggestions;
15
18
  use Symfony\Component\Console\Exception\InvalidArgumentException;
16
19
  use Symfony\Component\Console\Input\InputInterface;
17
20
  use Symfony\Component\Console\Input\InputOption;
@@ -32,18 +35,16 @@ use Symfony\Component\VarDumper\Server\DumpServer;
32
35
  *
33
36
  * @final
34
37
  */
38
+ #[AsCommand(name: 'server:dump', description: 'Start a dump server that collects and displays dumps in a single place')]
35
39
  class ServerDumpCommand extends Command
36
40
  {
37
- protected static $defaultName = 'server:dump';
38
-
39
- private $server;
40
-
41
41
  /** @var DumpDescriptorInterface[] */
42
- private $descriptors;
42
+ private array $descriptors;
43
43
 
44
- public function __construct(DumpServer $server, array $descriptors = [])
45
- {
46
- $this->server = $server;
44
+ public function __construct(
45
+ private DumpServer $server,
46
+ array $descriptors = [],
47
+ ) {
47
48
  $this->descriptors = $descriptors + [
48
49
  'cli' => new CliDescriptor(new CliDumper()),
49
50
  'html' => new HtmlDescriptor(new HtmlDumper()),
@@ -52,13 +53,10 @@ class ServerDumpCommand extends Command
52
53
  parent::__construct();
53
54
  }
54
55
 
55
- protected function configure()
56
+ protected function configure(): void
56
57
  {
57
- $availableFormats = implode(', ', array_keys($this->descriptors));
58
-
59
58
  $this
60
- ->addOption('format', null, InputOption::VALUE_REQUIRED, sprintf('The output format (%s)', $availableFormats), 'cli')
61
- ->setDescription('Starts a dump server that collects and displays dumps in a single place')
59
+ ->addOption('format', null, InputOption::VALUE_REQUIRED, \sprintf('The output format (%s)', implode(', ', $this->getAvailableFormats())), 'cli')
62
60
  ->setHelp(<<<'EOF'
63
61
  <info>%command.name%</info> starts a dump server that collects and displays
64
62
  dumps in a single place for debugging you application:
@@ -81,7 +79,7 @@ EOF
81
79
  $format = $input->getOption('format');
82
80
 
83
81
  if (!$descriptor = $this->descriptors[$format] ?? null) {
84
- throw new InvalidArgumentException(sprintf('Unsupported format "%s".', $format));
82
+ throw new InvalidArgumentException(\sprintf('Unsupported format "%s".', $format));
85
83
  }
86
84
 
87
85
  $errorIo = $io->getErrorStyle();
@@ -89,11 +87,25 @@ EOF
89
87
 
90
88
  $this->server->start();
91
89
 
92
- $errorIo->success(sprintf('Server listening on %s', $this->server->getHost()));
90
+ $errorIo->success(\sprintf('Server listening on %s', $this->server->getHost()));
93
91
  $errorIo->comment('Quit the server with CONTROL-C.');
94
92
 
95
93
  $this->server->listen(function (Data $data, array $context, int $clientId) use ($descriptor, $io) {
96
94
  $descriptor->describe($io, $data, $context, $clientId);
97
95
  });
96
+
97
+ return 0;
98
+ }
99
+
100
+ public function complete(CompletionInput $input, CompletionSuggestions $suggestions): void
101
+ {
102
+ if ($input->mustSuggestOptionValuesFor('format')) {
103
+ $suggestions->suggestValues($this->getAvailableFormats());
104
+ }
105
+ }
106
+
107
+ private function getAvailableFormats(): array
108
+ {
109
+ return array_keys($this->descriptors);
98
110
  }
99
111
  }
@@ -21,33 +21,35 @@ use Symfony\Component\VarDumper\Cloner\DumperInterface;
21
21
  */
22
22
  abstract class AbstractDumper implements DataDumperInterface, DumperInterface
23
23
  {
24
- const DUMP_LIGHT_ARRAY = 1;
25
- const DUMP_STRING_LENGTH = 2;
26
- const DUMP_COMMA_SEPARATOR = 4;
27
- const DUMP_TRAILING_COMMA = 8;
24
+ public const DUMP_LIGHT_ARRAY = 1;
25
+ public const DUMP_STRING_LENGTH = 2;
26
+ public const DUMP_COMMA_SEPARATOR = 4;
27
+ public const DUMP_TRAILING_COMMA = 8;
28
28
 
29
+ /** @var callable|resource|string|null */
29
30
  public static $defaultOutput = 'php://output';
30
31
 
31
- protected $line = '';
32
+ protected string $line = '';
33
+ /** @var callable|null */
32
34
  protected $lineDumper;
35
+ /** @var resource|null */
33
36
  protected $outputStream;
34
- protected $decimalPoint; // This is locale dependent
35
- protected $indentPad = ' ';
36
- protected $flags;
37
+ protected string $decimalPoint = '.';
38
+ protected string $indentPad = ' ';
37
39
 
38
- private $charset = '';
40
+ private string $charset = '';
39
41
 
40
42
  /**
41
43
  * @param callable|resource|string|null $output A line dumper callable, an opened stream or an output path, defaults to static::$defaultOutput
42
44
  * @param string|null $charset The default character encoding to use for non-UTF8 strings
43
45
  * @param int $flags A bit field of static::DUMP_* constants to fine tune dumps representation
44
46
  */
45
- public function __construct($output = null, string $charset = null, int $flags = 0)
46
- {
47
- $this->flags = $flags;
48
- $this->setCharset($charset ?: ini_get('php.output_encoding') ?: ini_get('default_charset') ?: 'UTF-8');
49
- $this->decimalPoint = localeconv();
50
- $this->decimalPoint = $this->decimalPoint['decimal_point'];
47
+ public function __construct(
48
+ $output = null,
49
+ ?string $charset = null,
50
+ protected int $flags = 0,
51
+ ) {
52
+ $this->setCharset($charset ?: \ini_get('php.output_encoding') ?: \ini_get('default_charset') ?: 'UTF-8');
51
53
  $this->setOutput($output ?: static::$defaultOutput);
52
54
  if (!$output && \is_string(static::$defaultOutput)) {
53
55
  static::$defaultOutput = $this->outputStream;
@@ -57,23 +59,23 @@ abstract class AbstractDumper implements DataDumperInterface, DumperInterface
57
59
  /**
58
60
  * Sets the output destination of the dumps.
59
61
  *
60
- * @param callable|resource|string $output A line dumper callable, an opened stream or an output path
62
+ * @param callable|resource|string|null $output A line dumper callable, an opened stream or an output path
61
63
  *
62
- * @return callable|resource|string The previous output destination
64
+ * @return callable|resource|string|null The previous output destination
63
65
  */
64
66
  public function setOutput($output)
65
67
  {
66
- $prev = null !== $this->outputStream ? $this->outputStream : $this->lineDumper;
68
+ $prev = $this->outputStream ?? $this->lineDumper;
67
69
 
68
70
  if (\is_callable($output)) {
69
71
  $this->outputStream = null;
70
72
  $this->lineDumper = $output;
71
73
  } else {
72
74
  if (\is_string($output)) {
73
- $output = fopen($output, 'wb');
75
+ $output = fopen($output, 'w');
74
76
  }
75
77
  $this->outputStream = $output;
76
- $this->lineDumper = [$this, 'echoLine'];
78
+ $this->lineDumper = $this->echoLine(...);
77
79
  }
78
80
 
79
81
  return $prev;
@@ -82,16 +84,14 @@ abstract class AbstractDumper implements DataDumperInterface, DumperInterface
82
84
  /**
83
85
  * Sets the default character encoding to use for non-UTF8 strings.
84
86
  *
85
- * @param string $charset The default character encoding to use for non-UTF8 strings
86
- *
87
87
  * @return string The previous charset
88
88
  */
89
- public function setCharset($charset)
89
+ public function setCharset(string $charset): string
90
90
  {
91
91
  $prev = $this->charset;
92
92
 
93
93
  $charset = strtoupper($charset);
94
- $charset = null === $charset || 'UTF-8' === $charset || 'UTF8' === $charset ? 'CP1252' : $charset;
94
+ $charset = 'UTF-8' === $charset || 'UTF8' === $charset ? 'CP1252' : $charset;
95
95
 
96
96
  $this->charset = $charset;
97
97
 
@@ -105,7 +105,7 @@ abstract class AbstractDumper implements DataDumperInterface, DumperInterface
105
105
  *
106
106
  * @return string The previous indent pad
107
107
  */
108
- public function setIndentPad($pad)
108
+ public function setIndentPad(string $pad): string
109
109
  {
110
110
  $prev = $this->indentPad;
111
111
  $this->indentPad = $pad;
@@ -120,17 +120,14 @@ abstract class AbstractDumper implements DataDumperInterface, DumperInterface
120
120
  *
121
121
  * @return string|null The dump as string when $output is true
122
122
  */
123
- public function dump(Data $data, $output = null)
123
+ public function dump(Data $data, $output = null): ?string
124
124
  {
125
- $this->decimalPoint = localeconv();
126
- $this->decimalPoint = $this->decimalPoint['decimal_point'];
127
-
128
125
  if ($locale = $this->flags & (self::DUMP_COMMA_SEPARATOR | self::DUMP_TRAILING_COMMA) ? setlocale(\LC_NUMERIC, 0) : null) {
129
126
  setlocale(\LC_NUMERIC, 'C');
130
127
  }
131
128
 
132
129
  if ($returnDump = true === $output) {
133
- $output = fopen('php://memory', 'r+b');
130
+ $output = fopen('php://memory', 'r+');
134
131
  }
135
132
  if ($output) {
136
133
  $prevOutput = $this->setOutput($output);
@@ -163,7 +160,7 @@ abstract class AbstractDumper implements DataDumperInterface, DumperInterface
163
160
  * @param int $depth The recursive depth in the dumped structure for the line being dumped,
164
161
  * or -1 to signal the end-of-dump to the line dumper callable
165
162
  */
166
- protected function dumpLine($depth)
163
+ protected function dumpLine(int $depth): void
167
164
  {
168
165
  ($this->lineDumper)($this->line, $depth, $this->indentPad);
169
166
  $this->line = '';
@@ -171,12 +168,8 @@ abstract class AbstractDumper implements DataDumperInterface, DumperInterface
171
168
 
172
169
  /**
173
170
  * Generic line dumper callback.
174
- *
175
- * @param string $line The line to write
176
- * @param int $depth The recursive depth in the dumped structure
177
- * @param string $indentPad The line indent pad
178
171
  */
179
- protected function echoLine($line, $depth, $indentPad)
172
+ protected function echoLine(string $line, int $depth, string $indentPad): void
180
173
  {
181
174
  if (-1 !== $depth) {
182
175
  fwrite($this->outputStream, str_repeat($indentPad, $depth).$line."\n");
@@ -185,28 +178,55 @@ abstract class AbstractDumper implements DataDumperInterface, DumperInterface
185
178
 
186
179
  /**
187
180
  * Converts a non-UTF-8 string to UTF-8.
188
- *
189
- * @param string|null $s The non-UTF-8 string to convert
190
- *
191
- * @return string|null The string converted to UTF-8
192
181
  */
193
- protected function utf8Encode($s)
182
+ protected function utf8Encode(?string $s): ?string
194
183
  {
195
184
  if (null === $s || preg_match('//u', $s)) {
196
185
  return $s;
197
186
  }
198
187
 
199
- if (!\function_exists('iconv')) {
200
- throw new \RuntimeException('Unable to convert a non-UTF-8 string to UTF-8: required function iconv() does not exist. You should install ext-iconv or symfony/polyfill-iconv.');
188
+ if (\function_exists('iconv')) {
189
+ if (false !== $c = @iconv($this->charset, 'UTF-8', $s)) {
190
+ return $c;
191
+ }
192
+ if ('CP1252' !== $this->charset && false !== $c = @iconv('CP1252', 'UTF-8', $s)) {
193
+ return $c;
194
+ }
201
195
  }
202
196
 
203
- if (false !== $c = @iconv($this->charset, 'UTF-8', $s)) {
204
- return $c;
197
+ $s .= $s;
198
+ $len = \strlen($s);
199
+ $mapCp1252 = false;
200
+
201
+ for ($i = $len >> 1, $j = 0; $i < $len; ++$i, ++$j) {
202
+ if ($s[$i] < "\x80") {
203
+ $s[$j] = $s[$i];
204
+ } elseif ($s[$i] < "\xC0") {
205
+ $s[$j] = "\xC2";
206
+ $s[++$j] = $s[$i];
207
+ if ($s[$i] < "\xA0") {
208
+ $mapCp1252 = true;
209
+ }
210
+ } else {
211
+ $s[$j] = "\xC3";
212
+ $s[++$j] = \chr(\ord($s[$i]) - 64);
213
+ }
205
214
  }
206
- if ('CP1252' !== $this->charset && false !== $c = @iconv('CP1252', 'UTF-8', $s)) {
207
- return $c;
215
+
216
+ $s = substr($s, 0, $j);
217
+
218
+ if (!$mapCp1252) {
219
+ return $s;
208
220
  }
209
221
 
210
- return iconv('CP850', 'UTF-8', $s);
222
+ return strtr($s, [
223
+ "\xC2\x80" => '€', "\xC2\x82" => '‚', "\xC2\x83" => 'ƒ', "\xC2\x84" => '„',
224
+ "\xC2\x85" => '…', "\xC2\x86" => '†', "\xC2\x87" => '‡', "\xC2\x88" => 'ˆ',
225
+ "\xC2\x89" => '‰', "\xC2\x8A" => 'Š', "\xC2\x8B" => '‹', "\xC2\x8C" => 'Œ',
226
+ "\xC2\x8D" => 'Ž', "\xC2\x91" => '‘', "\xC2\x92" => '’', "\xC2\x93" => '“',
227
+ "\xC2\x94" => '”', "\xC2\x95" => '•', "\xC2\x96" => '–', "\xC2\x97" => '—',
228
+ "\xC2\x98" => '˜', "\xC2\x99" => '™', "\xC2\x9A" => 'š', "\xC2\x9B" => '›',
229
+ "\xC2\x9C" => 'œ', "\xC2\x9E" => 'ž',
230
+ ]);
211
231
  }
212
232
  }