gulp-phug 1.3.4 → 2.0.0
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.
- package/README.md +26 -0
- package/index.js +38 -10
- package/package.json +4 -4
- package/support/bootstrap.php +6 -0
- package/support/composer.json +1 -1
- package/support/composer.lock +94 -179
- package/support/vendor/autoload.php +15 -0
- package/support/vendor/bin/phug +119 -0
- package/support/vendor/bin/var-dump-server +119 -0
- package/support/vendor/composer/ClassLoader.php +166 -32
- package/support/vendor/composer/InstalledVersions.php +387 -329
- package/support/vendor/composer/autoload_classmap.php +1 -5
- package/support/vendor/composer/autoload_files.php +2 -3
- package/support/vendor/composer/autoload_namespaces.php +1 -1
- package/support/vendor/composer/autoload_psr4.php +3 -4
- package/support/vendor/composer/autoload_real.php +12 -37
- package/support/vendor/composer/autoload_static.php +6 -17
- package/support/vendor/composer/installed.json +99 -186
- package/support/vendor/composer/installed.php +129 -151
- package/support/vendor/composer/platform_check.php +15 -4
- package/support/vendor/phug/phug/.github/workflows/coverage.yml +61 -0
- package/support/vendor/phug/phug/.github/workflows/multi-tester.yml +48 -0
- package/support/vendor/phug/phug/.github/workflows/split.yml +41 -0
- package/support/vendor/phug/phug/.github/workflows/style.yml +48 -0
- package/support/vendor/phug/phug/.github/workflows/tests.yml +48 -0
- package/support/vendor/phug/phug/.multi-tester.yml +47 -17
- package/support/vendor/phug/phug/composer.json +27 -18
- package/support/vendor/phug/phug/phpcs.xml +4 -0
- package/support/vendor/phug/phug/phpunit.xml +2 -0
- package/support/vendor/phug/phug/phug +1 -1
- package/support/vendor/phug/phug/release.php +8 -0
- package/support/vendor/phug/phug/src/Phug/Ast/Ast/Node.php +9 -3
- package/support/vendor/phug/phug/src/Phug/Ast/composer.json +2 -3
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/AbstractNodeCompiler.php +4 -4
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/Element/BlockElement.php +4 -4
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AssignmentListNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AssignmentNodeCompiler.php +10 -2
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AttributeListNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AttributeNodeCompiler.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/BlockNodeCompiler.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/CaseNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/CodeNodeCompiler.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/CommentNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ConditionalNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/DoNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/DoctypeNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/DocumentNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/EachNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ElementNodeCompiler.php +7 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ExpressionNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/FilterNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ForNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ImportNodeCompiler.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/KeywordNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/MixinCallNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/MixinNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/TextNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/VariableNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/WhenNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/WhileNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/YieldNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompilerInterface.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Compiler/CompilerInterface.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Compiler/composer.json +10 -7
- package/support/vendor/phug/phug/src/Phug/DependencyInjection/DependencyInjection.php +1 -1
- package/support/vendor/phug/phug/src/Phug/DependencyInjection/composer.json +3 -4
- package/support/vendor/phug/phug/src/Phug/Event/Event/ListenerQueue.php +3 -0
- package/support/vendor/phug/phug/src/Phug/Event/EventManagerTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Event/composer.json +2 -3
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/AbstractElement.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/AbstractFormat.php +17 -14
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/AssignmentContainerInterface.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AbstractAssignmentContainerElement.php +11 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AbstractMarkupElement.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AbstractValueElement.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AnonymousBlockElement.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AssignmentElement.php +13 -8
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AttributeElement.php +7 -4
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/CodeElement.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/KeywordElement.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/MarkupElement.php +13 -11
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/MixinCallElement.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/MixinElement.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/VariableElement.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Event/FormatEvent.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Format/HtmlFormat.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Format/XhtmlFormat.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Format/XmlFormat.php +214 -21
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/FormatInterface.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/AssignmentHelpersTrait.php +7 -4
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/HandleVariable.php +4 -4
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/MagicAccessorTrait.php +1 -7
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/PatternTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/composer.json +5 -6
- package/support/vendor/phug/phug/src/Phug/Invoker/Invoker.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Invoker/composer.json +9 -6
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/AbstractToken.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Partial/IndentStyleTrait.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/AssignmentScanner.php +8 -2
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/AttributeScanner.php +24 -12
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/ConditionalScanner.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/FilterScanner.php +6 -10
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/IndentationScanner.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/KeywordScanner.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/MultilineScanner.php +6 -12
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/Partial/TrailingOutdentHandlerTrait.php +26 -0
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/TextScanner.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/State.php +9 -9
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/TokenInterface.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Lexer/composer.json +4 -5
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Event/NodeEvent.php +3 -2
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/AssignmentNode.php +5 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/AttributeNode.php +4 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/ElementNode.php +5 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/FilterNode.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/MixinCallNode.php +5 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/MixinNode.php +5 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/State.php +4 -4
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AbstractTokenHandler.php +87 -0
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AssignmentTokenHandler.php +6 -21
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AttributeEndTokenHandler.php +5 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AttributeStartTokenHandler.php +7 -23
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AttributeTokenHandler.php +21 -19
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AutoCloseTokenHandler.php +5 -17
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/BlockTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/CaseTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ClassTokenHandler.php +7 -34
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/CodeTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/CommentTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ConditionalTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/DoTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/DoctypeTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/EachTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ExpansionTokenHandler.php +5 -11
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ExpressionTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/FilterTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ForTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/IdTokenHandler.php +7 -33
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ImportTokenHandler.php +14 -20
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/IndentTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/InterpolationEndTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/InterpolationStartTokenHandler.php +29 -30
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/KeywordTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/MixinCallTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/MixinTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/NewLineTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/OutdentTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/Partial/StaticAttributeTrait.php +36 -0
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TagInterpolationEndTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TagInterpolationStartTokenHandler.php +7 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TagTokenHandler.php +6 -21
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TextTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/VariableTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/WhenTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/WhileTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/YieldTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Parser/ParserException.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Parser/composer.json +5 -6
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Cli.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Partial/ExtensionsTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Partial/FacadeOptionsTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Partial/PluginEnablerTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Phug.php +14 -5
- package/support/vendor/phug/phug/src/Phug/Phug/composer.json +9 -6
- package/support/vendor/phug/phug/src/Phug/Reader/Reader.php +13 -13
- package/support/vendor/phug/phug/src/Phug/Reader/composer.json +6 -2
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Adapter/FileAdapter.php +21 -4
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Adapter/Stream/Template.php +5 -0
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Adapter/StreamAdapter.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/CacheInterface.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Partial/AdapterTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Partial/Debug/DebuggerTrait.php +56 -10
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Partial/RendererOptionsTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Profiler/Dump.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Profiler/LinkDump.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Profiler/ProfilerModule.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Task/TasksGroup.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/composer.json +10 -6
- package/support/vendor/phug/phug/src/Phug/Util/CompatibilityUtil/TestCaseTyped.php +67 -0
- package/support/vendor/phug/phug/src/Phug/Util/CompatibilityUtil/TestCaseUntyped.php +67 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/AttributesInterface.php +16 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/AttributesOrderInterface.php +17 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/AttributesStorage.php +44 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/Collection.php +2 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/OrderableInterface.php +22 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/OrderedValue.php +25 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/AttributeTrait.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/AttributesOrderTrait.php +19 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/ModuleContainerTrait.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/OptionTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/OrderTrait.php +27 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/StaticMemberTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/ValueTrait.php +5 -3
- package/support/vendor/phug/phug/src/Phug/Util/Util/SandBox.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Util/Util/TestCase.php +47 -4
- package/support/vendor/phug/phug/src/Phug/Util/composer.json +7 -8
- package/support/vendor/symfony/deprecation-contracts/CHANGELOG.md +5 -0
- package/support/vendor/symfony/{polyfill-php72 → deprecation-contracts}/LICENSE +1 -1
- package/support/vendor/symfony/deprecation-contracts/README.md +26 -0
- package/support/vendor/symfony/{polyfill-php72 → deprecation-contracts}/composer.json +9 -9
- package/support/vendor/symfony/deprecation-contracts/function.php +27 -0
- package/support/vendor/symfony/polyfill-mbstring/LICENSE +1 -1
- package/support/vendor/symfony/polyfill-mbstring/Mbstring.php +256 -57
- package/support/vendor/symfony/polyfill-mbstring/README.md +1 -1
- package/support/vendor/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php +119 -0
- package/support/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php +1 -1
- package/support/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php +102 -27
- package/support/vendor/symfony/polyfill-mbstring/bootstrap.php +33 -8
- package/support/vendor/symfony/polyfill-mbstring/bootstrap80.php +167 -0
- package/support/vendor/symfony/polyfill-mbstring/composer.json +5 -4
- package/support/vendor/symfony/var-dumper/CHANGELOG.md +63 -0
- package/support/vendor/symfony/var-dumper/Caster/AddressInfoCaster.php +82 -0
- package/support/vendor/symfony/var-dumper/Caster/AmqpCaster.php +12 -10
- package/support/vendor/symfony/var-dumper/Caster/ArgsStub.php +6 -7
- package/support/vendor/symfony/var-dumper/Caster/Caster.php +59 -31
- package/support/vendor/symfony/var-dumper/Caster/ClassStub.php +7 -9
- package/support/vendor/symfony/var-dumper/Caster/ConstStub.php +20 -4
- package/support/vendor/symfony/var-dumper/Caster/CurlCaster.php +31 -0
- package/support/vendor/symfony/var-dumper/Caster/CutArrayStub.php +1 -1
- package/support/vendor/symfony/var-dumper/Caster/CutStub.php +2 -2
- package/support/vendor/symfony/var-dumper/Caster/DOMCaster.php +61 -156
- package/support/vendor/symfony/var-dumper/Caster/DateCaster.php +27 -26
- package/support/vendor/symfony/var-dumper/Caster/DoctrineCaster.php +6 -4
- package/support/vendor/symfony/var-dumper/Caster/DsCaster.php +1 -1
- package/support/vendor/symfony/var-dumper/Caster/DsPairStub.php +1 -1
- package/support/vendor/symfony/var-dumper/Caster/EnumStub.php +4 -5
- package/support/vendor/symfony/var-dumper/Caster/ExceptionCaster.php +64 -49
- package/support/vendor/symfony/var-dumper/Caster/FFICaster.php +171 -0
- package/support/vendor/symfony/var-dumper/Caster/FiberCaster.php +43 -0
- package/support/vendor/symfony/var-dumper/Caster/FrameStub.php +6 -8
- package/support/vendor/symfony/var-dumper/Caster/GdCaster.php +30 -0
- package/support/vendor/symfony/var-dumper/Caster/GmpCaster.php +4 -2
- package/support/vendor/symfony/var-dumper/Caster/ImagineCaster.php +2 -0
- package/support/vendor/symfony/var-dumper/Caster/ImgStub.php +1 -1
- package/support/vendor/symfony/var-dumper/Caster/IntlCaster.php +10 -8
- package/support/vendor/symfony/var-dumper/Caster/LinkStub.php +14 -17
- package/support/vendor/symfony/var-dumper/Caster/MemcachedCaster.php +10 -8
- package/support/vendor/symfony/var-dumper/Caster/MysqliCaster.php +33 -0
- package/support/vendor/symfony/var-dumper/Caster/OpenSSLCaster.php +69 -0
- package/support/vendor/symfony/var-dumper/Caster/PdoCaster.php +8 -6
- package/support/vendor/symfony/var-dumper/Caster/PgSqlCaster.php +21 -19
- package/support/vendor/symfony/var-dumper/Caster/ProxyManagerCaster.php +4 -2
- package/support/vendor/symfony/var-dumper/Caster/RdKafkaCaster.php +188 -0
- package/support/vendor/symfony/var-dumper/Caster/RedisCaster.php +31 -31
- package/support/vendor/symfony/var-dumper/Caster/ReflectionCaster.php +100 -44
- package/support/vendor/symfony/var-dumper/Caster/ResourceCaster.php +33 -46
- package/support/vendor/symfony/var-dumper/Caster/ScalarStub.php +27 -0
- package/support/vendor/symfony/var-dumper/Caster/SocketCaster.php +64 -0
- package/support/vendor/symfony/var-dumper/Caster/SplCaster.php +57 -44
- package/support/vendor/symfony/var-dumper/Caster/SqliteCaster.php +32 -0
- package/support/vendor/symfony/var-dumper/Caster/StubCaster.php +15 -5
- package/support/vendor/symfony/var-dumper/Caster/SymfonyCaster.php +66 -10
- package/support/vendor/symfony/var-dumper/Caster/TraceStub.php +7 -11
- package/support/vendor/symfony/var-dumper/Caster/UninitializedStub.php +25 -0
- package/support/vendor/symfony/var-dumper/Caster/UuidCaster.php +2 -0
- package/support/vendor/symfony/var-dumper/Caster/VirtualStub.php +21 -0
- package/support/vendor/symfony/var-dumper/Caster/XmlReaderCaster.php +25 -10
- package/support/vendor/symfony/var-dumper/Caster/XmlResourceCaster.php +7 -5
- package/support/vendor/symfony/var-dumper/Cloner/AbstractCloner.php +103 -72
- package/support/vendor/symfony/var-dumper/Cloner/ClonerInterface.php +1 -5
- package/support/vendor/symfony/var-dumper/Cloner/Cursor.php +21 -21
- package/support/vendor/symfony/var-dumper/Cloner/Data.php +51 -77
- package/support/vendor/symfony/var-dumper/Cloner/DumperInterface.php +11 -14
- package/support/vendor/symfony/var-dumper/Cloner/Stub.php +40 -31
- package/support/vendor/symfony/var-dumper/Cloner/VarCloner.php +21 -104
- package/support/vendor/symfony/var-dumper/Command/Descriptor/CliDescriptor.php +9 -19
- package/support/vendor/symfony/var-dumper/Command/Descriptor/HtmlDescriptor.php +10 -11
- package/support/vendor/symfony/var-dumper/Command/ServerDumpCommand.php +27 -15
- package/support/vendor/symfony/var-dumper/Dumper/AbstractDumper.php +68 -48
- package/support/vendor/symfony/var-dumper/Dumper/CliDumper.php +126 -113
- package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/CliContextProvider.php +1 -1
- package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/ContextProviderInterface.php +0 -3
- package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/RequestContextProvider.php +5 -6
- package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/SourceContextProvider.php +10 -15
- package/support/vendor/symfony/var-dumper/Dumper/ContextualizedDumper.php +8 -11
- package/support/vendor/symfony/var-dumper/Dumper/DataDumperInterface.php +3 -0
- package/support/vendor/symfony/var-dumper/Dumper/HtmlDumper.php +122 -146
- package/support/vendor/symfony/var-dumper/Dumper/ServerDumper.php +10 -10
- package/support/vendor/symfony/var-dumper/Exception/ThrowingCasterException.php +1 -1
- package/support/vendor/symfony/var-dumper/LICENSE +1 -1
- package/support/vendor/symfony/var-dumper/README.md +6 -6
- package/support/vendor/symfony/var-dumper/Resources/bin/var-dump-server +4 -0
- package/support/vendor/symfony/var-dumper/Resources/functions/dump.php +35 -10
- package/support/vendor/symfony/var-dumper/Server/Connection.php +16 -14
- package/support/vendor/symfony/var-dumper/Server/DumpServer.php +16 -14
- package/support/vendor/symfony/var-dumper/Test/VarDumperTestTrait.php +9 -9
- package/support/vendor/symfony/var-dumper/VarDumper.php +69 -17
- package/support/vendor/symfony/var-dumper/composer.json +10 -16
- package/support/vendor/symfony/polyfill-php72/Php72.php +0 -217
- package/support/vendor/symfony/polyfill-php72/README.md +0 -28
- package/support/vendor/symfony/polyfill-php72/bootstrap.php +0 -57
- package/support/vendor/symfony/polyfill-php80/LICENSE +0 -19
- package/support/vendor/symfony/polyfill-php80/Php80.php +0 -105
- package/support/vendor/symfony/polyfill-php80/README.md +0 -24
- package/support/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php +0 -22
- package/support/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php +0 -11
- package/support/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php +0 -5
- package/support/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php +0 -5
- package/support/vendor/symfony/polyfill-php80/bootstrap.php +0 -42
- package/support/vendor/symfony/polyfill-php80/composer.json +0 -40
|
@@ -18,32 +18,29 @@ namespace Symfony\Component\VarDumper\Caster;
|
|
|
18
18
|
*/
|
|
19
19
|
class LinkStub extends ConstStub
|
|
20
20
|
{
|
|
21
|
-
public $inVendor = false;
|
|
21
|
+
public bool $inVendor = false;
|
|
22
22
|
|
|
23
|
-
private static $vendorRoots;
|
|
24
|
-
private static $composerRoots;
|
|
23
|
+
private static array $vendorRoots;
|
|
24
|
+
private static array $composerRoots = [];
|
|
25
25
|
|
|
26
|
-
public function __construct($label, int $line = 0, $href = null)
|
|
26
|
+
public function __construct(string $label, int $line = 0, ?string $href = null)
|
|
27
27
|
{
|
|
28
28
|
$this->value = $label;
|
|
29
29
|
|
|
30
|
-
if (
|
|
31
|
-
$href = $label;
|
|
32
|
-
}
|
|
33
|
-
if (!\is_string($href)) {
|
|
30
|
+
if (!\is_string($href ??= $label)) {
|
|
34
31
|
return;
|
|
35
32
|
}
|
|
36
|
-
if (
|
|
33
|
+
if (str_starts_with($href, 'file://')) {
|
|
37
34
|
if ($href === $label) {
|
|
38
35
|
$label = substr($label, 7);
|
|
39
36
|
}
|
|
40
37
|
$href = substr($href, 7);
|
|
41
|
-
} elseif (
|
|
38
|
+
} elseif (str_contains($href, '://')) {
|
|
42
39
|
$this->attr['href'] = $href;
|
|
43
40
|
|
|
44
41
|
return;
|
|
45
42
|
}
|
|
46
|
-
if (!
|
|
43
|
+
if (!is_file($href)) {
|
|
47
44
|
return;
|
|
48
45
|
}
|
|
49
46
|
if ($line) {
|
|
@@ -63,16 +60,16 @@ class LinkStub extends ConstStub
|
|
|
63
60
|
}
|
|
64
61
|
}
|
|
65
62
|
|
|
66
|
-
private function getComposerRoot(string $file, bool &$inVendor)
|
|
63
|
+
private function getComposerRoot(string $file, bool &$inVendor): string|false
|
|
67
64
|
{
|
|
68
|
-
if (
|
|
65
|
+
if (!isset(self::$vendorRoots)) {
|
|
69
66
|
self::$vendorRoots = [];
|
|
70
67
|
|
|
71
68
|
foreach (get_declared_classes() as $class) {
|
|
72
|
-
if ('C' === $class[0] &&
|
|
69
|
+
if ('C' === $class[0] && str_starts_with($class, 'ComposerAutoloaderInit')) {
|
|
73
70
|
$r = new \ReflectionClass($class);
|
|
74
71
|
$v = \dirname($r->getFileName(), 2);
|
|
75
|
-
if (
|
|
72
|
+
if (is_file($v.'/composer/installed.json')) {
|
|
76
73
|
self::$vendorRoots[] = $v.\DIRECTORY_SEPARATOR;
|
|
77
74
|
}
|
|
78
75
|
}
|
|
@@ -85,13 +82,13 @@ class LinkStub extends ConstStub
|
|
|
85
82
|
}
|
|
86
83
|
|
|
87
84
|
foreach (self::$vendorRoots as $root) {
|
|
88
|
-
if ($inVendor =
|
|
85
|
+
if ($inVendor = str_starts_with($file, $root)) {
|
|
89
86
|
return $root;
|
|
90
87
|
}
|
|
91
88
|
}
|
|
92
89
|
|
|
93
90
|
$parent = $dir;
|
|
94
|
-
while (!@
|
|
91
|
+
while (!@is_file($parent.'/composer.json')) {
|
|
95
92
|
if (!@file_exists($parent)) {
|
|
96
93
|
// open_basedir restriction in effect
|
|
97
94
|
break;
|
|
@@ -16,14 +16,16 @@ use Symfony\Component\VarDumper\Cloner\Stub;
|
|
|
16
16
|
/**
|
|
17
17
|
* @author Jan Schädlich <jan.schaedlich@sensiolabs.de>
|
|
18
18
|
*
|
|
19
|
-
* @final
|
|
19
|
+
* @final
|
|
20
|
+
*
|
|
21
|
+
* @internal since Symfony 7.3
|
|
20
22
|
*/
|
|
21
23
|
class MemcachedCaster
|
|
22
24
|
{
|
|
23
|
-
private static $optionConstants;
|
|
24
|
-
private static $defaultOptions;
|
|
25
|
+
private static array $optionConstants;
|
|
26
|
+
private static array $defaultOptions;
|
|
25
27
|
|
|
26
|
-
public static function castMemcached(\Memcached $c, array $a, Stub $stub, $isNested)
|
|
28
|
+
public static function castMemcached(\Memcached $c, array $a, Stub $stub, bool $isNested): array
|
|
27
29
|
{
|
|
28
30
|
$a += [
|
|
29
31
|
Caster::PREFIX_VIRTUAL.'servers' => $c->getServerList(),
|
|
@@ -37,8 +39,8 @@ class MemcachedCaster
|
|
|
37
39
|
|
|
38
40
|
private static function getNonDefaultOptions(\Memcached $c): array
|
|
39
41
|
{
|
|
40
|
-
self::$defaultOptions
|
|
41
|
-
self::$optionConstants
|
|
42
|
+
self::$defaultOptions ??= self::discoverDefaultOptions();
|
|
43
|
+
self::$optionConstants ??= self::getOptionConstants();
|
|
42
44
|
|
|
43
45
|
$nonDefaultOptions = [];
|
|
44
46
|
foreach (self::$optionConstants as $constantKey => $value) {
|
|
@@ -56,7 +58,7 @@ class MemcachedCaster
|
|
|
56
58
|
$defaultMemcached->addServer('127.0.0.1', 11211);
|
|
57
59
|
|
|
58
60
|
$defaultOptions = [];
|
|
59
|
-
self::$optionConstants
|
|
61
|
+
self::$optionConstants ??= self::getOptionConstants();
|
|
60
62
|
|
|
61
63
|
foreach (self::$optionConstants as $constantKey => $value) {
|
|
62
64
|
$defaultOptions[$constantKey] = $defaultMemcached->getOption($value);
|
|
@@ -71,7 +73,7 @@ class MemcachedCaster
|
|
|
71
73
|
|
|
72
74
|
$optionConstants = [];
|
|
73
75
|
foreach ($reflectedMemcached->getConstants() as $constantKey => $value) {
|
|
74
|
-
if (
|
|
76
|
+
if (str_starts_with($constantKey, 'OPT_')) {
|
|
75
77
|
$optionConstants[$constantKey] = $value;
|
|
76
78
|
}
|
|
77
79
|
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* This file is part of the Symfony package.
|
|
5
|
+
*
|
|
6
|
+
* (c) Fabien Potencier <fabien@symfony.com>
|
|
7
|
+
*
|
|
8
|
+
* For the full copyright and license information, please view the LICENSE
|
|
9
|
+
* file that was distributed with this source code.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
namespace Symfony\Component\VarDumper\Caster;
|
|
13
|
+
|
|
14
|
+
use Symfony\Component\VarDumper\Cloner\Stub;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @author Nicolas Grekas <p@tchwork.com>
|
|
18
|
+
*
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
final class MysqliCaster
|
|
22
|
+
{
|
|
23
|
+
public static function castMysqliDriver(\mysqli_driver $c, array $a, Stub $stub, bool $isNested): array
|
|
24
|
+
{
|
|
25
|
+
foreach ($a as $k => $v) {
|
|
26
|
+
if (isset($c->$k)) {
|
|
27
|
+
$a[$k] = $c->$k;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return $a;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* This file is part of the Symfony package.
|
|
5
|
+
*
|
|
6
|
+
* (c) Fabien Potencier <fabien@symfony.com>
|
|
7
|
+
*
|
|
8
|
+
* For the full copyright and license information, please view the LICENSE
|
|
9
|
+
* file that was distributed with this source code.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
namespace Symfony\Component\VarDumper\Caster;
|
|
13
|
+
|
|
14
|
+
use Symfony\Component\VarDumper\Cloner\Stub;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @author Nicolas Grekas <p@tchwork.com>
|
|
18
|
+
* @author Alexandre Daubois <alex.daubois@gmail.com>
|
|
19
|
+
*
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
final class OpenSSLCaster
|
|
23
|
+
{
|
|
24
|
+
public static function castOpensslX509(\OpenSSLCertificate $h, array $a, Stub $stub, bool $isNested): array
|
|
25
|
+
{
|
|
26
|
+
$stub->cut = -1;
|
|
27
|
+
$info = openssl_x509_parse($h, false);
|
|
28
|
+
|
|
29
|
+
$pin = openssl_pkey_get_public($h);
|
|
30
|
+
$pin = openssl_pkey_get_details($pin)['key'];
|
|
31
|
+
$pin = \array_slice(explode("\n", $pin), 1, -2);
|
|
32
|
+
$pin = base64_decode(implode('', $pin));
|
|
33
|
+
$pin = base64_encode(hash('sha256', $pin, true));
|
|
34
|
+
|
|
35
|
+
$a += [
|
|
36
|
+
Caster::PREFIX_VIRTUAL.'subject' => new EnumStub(array_intersect_key($info['subject'], ['organizationName' => true, 'commonName' => true])),
|
|
37
|
+
Caster::PREFIX_VIRTUAL.'issuer' => new EnumStub(array_intersect_key($info['issuer'], ['organizationName' => true, 'commonName' => true])),
|
|
38
|
+
Caster::PREFIX_VIRTUAL.'expiry' => new ConstStub(date(\DateTimeInterface::ISO8601, $info['validTo_time_t']), $info['validTo_time_t']),
|
|
39
|
+
Caster::PREFIX_VIRTUAL.'fingerprint' => new EnumStub([
|
|
40
|
+
'md5' => new ConstStub(wordwrap(strtoupper(openssl_x509_fingerprint($h, 'md5')), 2, ':', true)),
|
|
41
|
+
'sha1' => new ConstStub(wordwrap(strtoupper(openssl_x509_fingerprint($h, 'sha1')), 2, ':', true)),
|
|
42
|
+
'sha256' => new ConstStub(wordwrap(strtoupper(openssl_x509_fingerprint($h, 'sha256')), 2, ':', true)),
|
|
43
|
+
'pin-sha256' => new ConstStub($pin),
|
|
44
|
+
]),
|
|
45
|
+
];
|
|
46
|
+
|
|
47
|
+
return $a;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
public static function castOpensslAsymmetricKey(\OpenSSLAsymmetricKey $key, array $a, Stub $stub, bool $isNested): array
|
|
51
|
+
{
|
|
52
|
+
foreach (openssl_pkey_get_details($key) as $k => $v) {
|
|
53
|
+
$a[Caster::PREFIX_VIRTUAL.$k] = $v;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
unset($a[Caster::PREFIX_VIRTUAL.'rsa']); // binary data
|
|
57
|
+
|
|
58
|
+
return $a;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
public static function castOpensslCsr(\OpenSSLCertificateSigningRequest $csr, array $a, Stub $stub, bool $isNested): array
|
|
62
|
+
{
|
|
63
|
+
foreach (openssl_csr_get_subject($csr, false) as $k => $v) {
|
|
64
|
+
$a[Caster::PREFIX_VIRTUAL.$k] = $v;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return $a;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -18,11 +18,13 @@ use Symfony\Component\VarDumper\Cloner\Stub;
|
|
|
18
18
|
*
|
|
19
19
|
* @author Nicolas Grekas <p@tchwork.com>
|
|
20
20
|
*
|
|
21
|
-
* @final
|
|
21
|
+
* @final
|
|
22
|
+
*
|
|
23
|
+
* @internal since Symfony 7.3
|
|
22
24
|
*/
|
|
23
25
|
class PdoCaster
|
|
24
26
|
{
|
|
25
|
-
private
|
|
27
|
+
private const PDO_ATTRIBUTES = [
|
|
26
28
|
'CASE' => [
|
|
27
29
|
\PDO::CASE_LOWER => 'LOWER',
|
|
28
30
|
\PDO::CASE_NATURAL => 'NATURAL',
|
|
@@ -59,13 +61,13 @@ class PdoCaster
|
|
|
59
61
|
],
|
|
60
62
|
];
|
|
61
63
|
|
|
62
|
-
public static function castPdo(\PDO $c, array $a, Stub $stub, $isNested)
|
|
64
|
+
public static function castPdo(\PDO $c, array $a, Stub $stub, bool $isNested): array
|
|
63
65
|
{
|
|
64
66
|
$attr = [];
|
|
65
67
|
$errmode = $c->getAttribute(\PDO::ATTR_ERRMODE);
|
|
66
68
|
$c->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
|
|
67
69
|
|
|
68
|
-
foreach (self
|
|
70
|
+
foreach (self::PDO_ATTRIBUTES as $k => $v) {
|
|
69
71
|
if (!isset($k[0])) {
|
|
70
72
|
$k = $v;
|
|
71
73
|
$v = [];
|
|
@@ -76,7 +78,7 @@ class PdoCaster
|
|
|
76
78
|
if ($v && isset($v[$attr[$k]])) {
|
|
77
79
|
$attr[$k] = new ConstStub($v[$attr[$k]], $attr[$k]);
|
|
78
80
|
}
|
|
79
|
-
} catch (\Exception
|
|
81
|
+
} catch (\Exception) {
|
|
80
82
|
}
|
|
81
83
|
}
|
|
82
84
|
if (isset($attr[$k = 'STATEMENT_CLASS'][1])) {
|
|
@@ -108,7 +110,7 @@ class PdoCaster
|
|
|
108
110
|
return $a;
|
|
109
111
|
}
|
|
110
112
|
|
|
111
|
-
public static function castPdoStatement(\PDOStatement $c, array $a, Stub $stub, $isNested)
|
|
113
|
+
public static function castPdoStatement(\PDOStatement $c, array $a, Stub $stub, bool $isNested): array
|
|
112
114
|
{
|
|
113
115
|
$prefix = Caster::PREFIX_VIRTUAL;
|
|
114
116
|
$a[$prefix.'errorInfo'] = $c->errorInfo();
|
|
@@ -14,15 +14,17 @@ namespace Symfony\Component\VarDumper\Caster;
|
|
|
14
14
|
use Symfony\Component\VarDumper\Cloner\Stub;
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
|
-
* Casts
|
|
17
|
+
* Casts pgsql resources to array representation.
|
|
18
18
|
*
|
|
19
19
|
* @author Nicolas Grekas <p@tchwork.com>
|
|
20
20
|
*
|
|
21
|
-
* @final
|
|
21
|
+
* @final
|
|
22
|
+
*
|
|
23
|
+
* @internal since Symfony 7.3
|
|
22
24
|
*/
|
|
23
25
|
class PgSqlCaster
|
|
24
26
|
{
|
|
25
|
-
private
|
|
27
|
+
private const PARAM_CODES = [
|
|
26
28
|
'server_encoding',
|
|
27
29
|
'client_encoding',
|
|
28
30
|
'is_superuser',
|
|
@@ -35,7 +37,7 @@ class PgSqlCaster
|
|
|
35
37
|
'standard_conforming_strings',
|
|
36
38
|
];
|
|
37
39
|
|
|
38
|
-
private
|
|
40
|
+
private const TRANSACTION_STATUS = [
|
|
39
41
|
\PGSQL_TRANSACTION_IDLE => 'PGSQL_TRANSACTION_IDLE',
|
|
40
42
|
\PGSQL_TRANSACTION_ACTIVE => 'PGSQL_TRANSACTION_ACTIVE',
|
|
41
43
|
\PGSQL_TRANSACTION_INTRANS => 'PGSQL_TRANSACTION_INTRANS',
|
|
@@ -43,7 +45,7 @@ class PgSqlCaster
|
|
|
43
45
|
\PGSQL_TRANSACTION_UNKNOWN => 'PGSQL_TRANSACTION_UNKNOWN',
|
|
44
46
|
];
|
|
45
47
|
|
|
46
|
-
private
|
|
48
|
+
private const RESULT_STATUS = [
|
|
47
49
|
\PGSQL_EMPTY_QUERY => 'PGSQL_EMPTY_QUERY',
|
|
48
50
|
\PGSQL_COMMAND_OK => 'PGSQL_COMMAND_OK',
|
|
49
51
|
\PGSQL_TUPLES_OK => 'PGSQL_TUPLES_OK',
|
|
@@ -54,7 +56,7 @@ class PgSqlCaster
|
|
|
54
56
|
\PGSQL_FATAL_ERROR => 'PGSQL_FATAL_ERROR',
|
|
55
57
|
];
|
|
56
58
|
|
|
57
|
-
private
|
|
59
|
+
private const DIAG_CODES = [
|
|
58
60
|
'severity' => \PGSQL_DIAG_SEVERITY,
|
|
59
61
|
'sqlstate' => \PGSQL_DIAG_SQLSTATE,
|
|
60
62
|
'message' => \PGSQL_DIAG_MESSAGE_PRIMARY,
|
|
@@ -69,22 +71,22 @@ class PgSqlCaster
|
|
|
69
71
|
'function' => \PGSQL_DIAG_SOURCE_FUNCTION,
|
|
70
72
|
];
|
|
71
73
|
|
|
72
|
-
public static function castLargeObject($lo, array $a, Stub $stub, $isNested)
|
|
74
|
+
public static function castLargeObject($lo, array $a, Stub $stub, bool $isNested): array
|
|
73
75
|
{
|
|
74
76
|
$a['seek position'] = pg_lo_tell($lo);
|
|
75
77
|
|
|
76
78
|
return $a;
|
|
77
79
|
}
|
|
78
80
|
|
|
79
|
-
public static function castLink($link, array $a, Stub $stub, $isNested)
|
|
81
|
+
public static function castLink($link, array $a, Stub $stub, bool $isNested): array
|
|
80
82
|
{
|
|
81
83
|
$a['status'] = pg_connection_status($link);
|
|
82
84
|
$a['status'] = new ConstStub(\PGSQL_CONNECTION_OK === $a['status'] ? 'PGSQL_CONNECTION_OK' : 'PGSQL_CONNECTION_BAD', $a['status']);
|
|
83
85
|
$a['busy'] = pg_connection_busy($link);
|
|
84
86
|
|
|
85
87
|
$a['transaction'] = pg_transaction_status($link);
|
|
86
|
-
if (isset(self
|
|
87
|
-
$a['transaction'] = new ConstStub(self
|
|
88
|
+
if (isset(self::TRANSACTION_STATUS[$a['transaction']])) {
|
|
89
|
+
$a['transaction'] = new ConstStub(self::TRANSACTION_STATUS[$a['transaction']], $a['transaction']);
|
|
88
90
|
}
|
|
89
91
|
|
|
90
92
|
$a['pid'] = pg_get_pid($link);
|
|
@@ -96,7 +98,7 @@ class PgSqlCaster
|
|
|
96
98
|
$a['options'] = pg_options($link);
|
|
97
99
|
$a['version'] = pg_version($link);
|
|
98
100
|
|
|
99
|
-
foreach (self
|
|
101
|
+
foreach (self::PARAM_CODES as $v) {
|
|
100
102
|
if (false !== $s = pg_parameter_status($link, $v)) {
|
|
101
103
|
$a['param'][$v] = $s;
|
|
102
104
|
}
|
|
@@ -108,17 +110,17 @@ class PgSqlCaster
|
|
|
108
110
|
return $a;
|
|
109
111
|
}
|
|
110
112
|
|
|
111
|
-
public static function castResult($result, array $a, Stub $stub, $isNested)
|
|
113
|
+
public static function castResult($result, array $a, Stub $stub, bool $isNested): array
|
|
112
114
|
{
|
|
113
115
|
$a['num rows'] = pg_num_rows($result);
|
|
114
116
|
$a['status'] = pg_result_status($result);
|
|
115
|
-
if (isset(self
|
|
116
|
-
$a['status'] = new ConstStub(self
|
|
117
|
+
if (isset(self::RESULT_STATUS[$a['status']])) {
|
|
118
|
+
$a['status'] = new ConstStub(self::RESULT_STATUS[$a['status']], $a['status']);
|
|
117
119
|
}
|
|
118
120
|
$a['command-completion tag'] = pg_result_status($result, \PGSQL_STATUS_STRING);
|
|
119
121
|
|
|
120
122
|
if (-1 === $a['num rows']) {
|
|
121
|
-
foreach (self
|
|
123
|
+
foreach (self::DIAG_CODES as $k => $v) {
|
|
122
124
|
$a['error'][$k] = pg_result_error_field($result, $v);
|
|
123
125
|
}
|
|
124
126
|
}
|
|
@@ -131,11 +133,11 @@ class PgSqlCaster
|
|
|
131
133
|
for ($i = 0; $i < $fields; ++$i) {
|
|
132
134
|
$field = [
|
|
133
135
|
'name' => pg_field_name($result, $i),
|
|
134
|
-
'table' => sprintf('%s (OID: %s)', pg_field_table($result, $i), pg_field_table($result, $i, true)),
|
|
135
|
-
'type' => sprintf('%s (OID: %s)', pg_field_type($result, $i), pg_field_type_oid($result, $i)),
|
|
136
|
-
'nullable' => (bool) pg_field_is_null($result, $i),
|
|
136
|
+
'table' => \sprintf('%s (OID: %s)', pg_field_table($result, $i), pg_field_table($result, $i, true)),
|
|
137
|
+
'type' => \sprintf('%s (OID: %s)', pg_field_type($result, $i), pg_field_type_oid($result, $i)),
|
|
138
|
+
'nullable' => (bool) (\PHP_VERSION_ID >= 80300 ? pg_field_is_null($result, null, $i) : pg_field_is_null($result, $i)),
|
|
137
139
|
'storage' => pg_field_size($result, $i).' bytes',
|
|
138
|
-
'display' => pg_field_prtlen($result, $i).' chars',
|
|
140
|
+
'display' => (\PHP_VERSION_ID >= 80300 ? pg_field_prtlen($result, null, $i) : pg_field_prtlen($result, $i)).' chars',
|
|
139
141
|
];
|
|
140
142
|
if (' (OID: )' === $field['table']) {
|
|
141
143
|
$field['table'] = null;
|
|
@@ -17,11 +17,13 @@ use Symfony\Component\VarDumper\Cloner\Stub;
|
|
|
17
17
|
/**
|
|
18
18
|
* @author Nicolas Grekas <p@tchwork.com>
|
|
19
19
|
*
|
|
20
|
-
* @final
|
|
20
|
+
* @final
|
|
21
|
+
*
|
|
22
|
+
* @internal since Symfony 7.3
|
|
21
23
|
*/
|
|
22
24
|
class ProxyManagerCaster
|
|
23
25
|
{
|
|
24
|
-
public static function castProxy(ProxyInterface $c, array $a, Stub $stub, $isNested)
|
|
26
|
+
public static function castProxy(ProxyInterface $c, array $a, Stub $stub, bool $isNested): array
|
|
25
27
|
{
|
|
26
28
|
if ($parent = get_parent_class($c)) {
|
|
27
29
|
$stub->class .= ' - '.$parent;
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* This file is part of the Symfony package.
|
|
5
|
+
*
|
|
6
|
+
* (c) Fabien Potencier <fabien@symfony.com>
|
|
7
|
+
*
|
|
8
|
+
* For the full copyright and license information, please view the LICENSE
|
|
9
|
+
* file that was distributed with this source code.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
namespace Symfony\Component\VarDumper\Caster;
|
|
13
|
+
|
|
14
|
+
use RdKafka\Conf;
|
|
15
|
+
use RdKafka\Exception as RdKafkaException;
|
|
16
|
+
use RdKafka\KafkaConsumer;
|
|
17
|
+
use RdKafka\Message;
|
|
18
|
+
use RdKafka\Metadata\Broker as BrokerMetadata;
|
|
19
|
+
use RdKafka\Metadata\Collection as CollectionMetadata;
|
|
20
|
+
use RdKafka\Metadata\Partition as PartitionMetadata;
|
|
21
|
+
use RdKafka\Metadata\Topic as TopicMetadata;
|
|
22
|
+
use RdKafka\Topic;
|
|
23
|
+
use RdKafka\TopicConf;
|
|
24
|
+
use RdKafka\TopicPartition;
|
|
25
|
+
use Symfony\Component\VarDumper\Cloner\Stub;
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Casts RdKafka related classes to array representation.
|
|
29
|
+
*
|
|
30
|
+
* @author Romain Neutron <imprec@gmail.com>
|
|
31
|
+
*
|
|
32
|
+
* @internal since Symfony 7.3
|
|
33
|
+
*/
|
|
34
|
+
class RdKafkaCaster
|
|
35
|
+
{
|
|
36
|
+
public static function castKafkaConsumer(KafkaConsumer $c, array $a, Stub $stub, bool $isNested): array
|
|
37
|
+
{
|
|
38
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
39
|
+
|
|
40
|
+
try {
|
|
41
|
+
$assignment = $c->getAssignment();
|
|
42
|
+
} catch (RdKafkaException) {
|
|
43
|
+
$assignment = [];
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
$a += [
|
|
47
|
+
$prefix.'subscription' => $c->getSubscription(),
|
|
48
|
+
$prefix.'assignment' => $assignment,
|
|
49
|
+
];
|
|
50
|
+
|
|
51
|
+
$a += self::extractMetadata($c);
|
|
52
|
+
|
|
53
|
+
return $a;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
public static function castTopic(Topic $c, array $a, Stub $stub, bool $isNested): array
|
|
57
|
+
{
|
|
58
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
59
|
+
|
|
60
|
+
$a += [
|
|
61
|
+
$prefix.'name' => $c->getName(),
|
|
62
|
+
];
|
|
63
|
+
|
|
64
|
+
return $a;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
public static function castTopicPartition(TopicPartition $c, array $a): array
|
|
68
|
+
{
|
|
69
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
70
|
+
|
|
71
|
+
$a += [
|
|
72
|
+
$prefix.'offset' => $c->getOffset(),
|
|
73
|
+
$prefix.'partition' => $c->getPartition(),
|
|
74
|
+
$prefix.'topic' => $c->getTopic(),
|
|
75
|
+
];
|
|
76
|
+
|
|
77
|
+
return $a;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
public static function castMessage(Message $c, array $a, Stub $stub, bool $isNested): array
|
|
81
|
+
{
|
|
82
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
83
|
+
|
|
84
|
+
$a += [
|
|
85
|
+
$prefix.'errstr' => $c->errstr(),
|
|
86
|
+
];
|
|
87
|
+
|
|
88
|
+
return $a;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
public static function castConf(Conf $c, array $a, Stub $stub, bool $isNested): array
|
|
92
|
+
{
|
|
93
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
94
|
+
|
|
95
|
+
foreach ($c->dump() as $key => $value) {
|
|
96
|
+
$a[$prefix.$key] = $value;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
return $a;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
public static function castTopicConf(TopicConf $c, array $a, Stub $stub, bool $isNested): array
|
|
103
|
+
{
|
|
104
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
105
|
+
|
|
106
|
+
foreach ($c->dump() as $key => $value) {
|
|
107
|
+
$a[$prefix.$key] = $value;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
return $a;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
public static function castRdKafka(\RdKafka $c, array $a, Stub $stub, bool $isNested): array
|
|
114
|
+
{
|
|
115
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
116
|
+
|
|
117
|
+
$a += [
|
|
118
|
+
$prefix.'out_q_len' => $c->getOutQLen(),
|
|
119
|
+
];
|
|
120
|
+
|
|
121
|
+
$a += self::extractMetadata($c);
|
|
122
|
+
|
|
123
|
+
return $a;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
public static function castCollectionMetadata(CollectionMetadata $c, array $a, Stub $stub, bool $isNested): array
|
|
127
|
+
{
|
|
128
|
+
$a += iterator_to_array($c);
|
|
129
|
+
|
|
130
|
+
return $a;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
public static function castTopicMetadata(TopicMetadata $c, array $a, Stub $stub, bool $isNested): array
|
|
134
|
+
{
|
|
135
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
136
|
+
|
|
137
|
+
$a += [
|
|
138
|
+
$prefix.'name' => $c->getTopic(),
|
|
139
|
+
$prefix.'partitions' => $c->getPartitions(),
|
|
140
|
+
];
|
|
141
|
+
|
|
142
|
+
return $a;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
public static function castPartitionMetadata(PartitionMetadata $c, array $a, Stub $stub, bool $isNested): array
|
|
146
|
+
{
|
|
147
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
148
|
+
|
|
149
|
+
$a += [
|
|
150
|
+
$prefix.'id' => $c->getId(),
|
|
151
|
+
$prefix.'err' => $c->getErr(),
|
|
152
|
+
$prefix.'leader' => $c->getLeader(),
|
|
153
|
+
];
|
|
154
|
+
|
|
155
|
+
return $a;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
public static function castBrokerMetadata(BrokerMetadata $c, array $a, Stub $stub, bool $isNested): array
|
|
159
|
+
{
|
|
160
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
161
|
+
|
|
162
|
+
$a += [
|
|
163
|
+
$prefix.'id' => $c->getId(),
|
|
164
|
+
$prefix.'host' => $c->getHost(),
|
|
165
|
+
$prefix.'port' => $c->getPort(),
|
|
166
|
+
];
|
|
167
|
+
|
|
168
|
+
return $a;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
private static function extractMetadata(KafkaConsumer|\RdKafka $c): array
|
|
172
|
+
{
|
|
173
|
+
$prefix = Caster::PREFIX_VIRTUAL;
|
|
174
|
+
|
|
175
|
+
try {
|
|
176
|
+
$m = $c->getMetadata(true, null, 500);
|
|
177
|
+
} catch (RdKafkaException) {
|
|
178
|
+
return [];
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
return [
|
|
182
|
+
$prefix.'orig_broker_id' => $m->getOrigBrokerId(),
|
|
183
|
+
$prefix.'orig_broker_name' => $m->getOrigBrokerName(),
|
|
184
|
+
$prefix.'brokers' => $m->getBrokers(),
|
|
185
|
+
$prefix.'topics' => $m->getTopics(),
|
|
186
|
+
];
|
|
187
|
+
}
|
|
188
|
+
}
|