diff --git a/.dockerignore b/.dockerignore
deleted file mode 100644
index ce38d0f17f5..00000000000
--- a/.dockerignore
+++ /dev/null
@@ -1,2 +0,0 @@
-.github
-examples
\ No newline at end of file
diff --git a/.editorconfig b/.editorconfig
deleted file mode 100644
index e0456a226c2..00000000000
--- a/.editorconfig
+++ /dev/null
@@ -1,292 +0,0 @@
-[*]
-charset = utf-8
-end_of_line = lf
-insert_final_newline = false
-max_line_length = 120
-tab_width = 4
-ij_continuation_indent_size = 4
-ij_formatter_off_tag = @formatter:off
-ij_formatter_on_tag = @formatter:on
-ij_formatter_tags_enabled = false
-ij_smart_tabs = false
-ij_visual_guides = none
-ij_wrap_on_typing = false
-
-[{*.json,composer.lock}]
-indent_size = 4
-indent_style = space
-ij_json_keep_blank_lines_in_code = 0
-ij_json_keep_indents_on_empty_lines = false
-ij_json_keep_line_breaks = true
-ij_json_space_after_colon = true
-ij_json_space_after_comma = true
-ij_json_space_before_colon = true
-ij_json_space_before_comma = false
-ij_json_spaces_within_braces = false
-ij_json_spaces_within_brackets = false
-ij_json_wrap_long_lines = false
-
-[{*.yaml,*.yml}]
-indent_size = 2
-indent_style = space
-ij_yaml_align_values_properties = do_not_align
-ij_yaml_autoinsert_sequence_marker = true
-ij_yaml_block_mapping_on_new_line = false
-ij_yaml_indent_sequence_value = true
-ij_yaml_keep_indents_on_empty_lines = false
-ij_yaml_keep_line_breaks = true
-ij_yaml_sequence_on_new_line = false
-ij_yaml_space_before_colon = false
-ij_yaml_spaces_within_braces = true
-ij_yaml_spaces_within_brackets = true
-
-[{*.php}]
-indent_size = 4
-indent_style = space
-ij_continuation_indent_size = 4
-ij_php_align_assignments = false
-ij_php_align_class_constants = false
-ij_php_align_group_field_declarations = false
-ij_php_align_inline_comments = false
-ij_php_align_key_value_pairs = false
-ij_php_align_match_arm_bodies = false
-ij_php_align_multiline_array_initializer_expression = false
-ij_php_align_multiline_binary_operation = false
-ij_php_align_multiline_chained_methods = false
-ij_php_align_multiline_extends_list = true
-ij_php_align_multiline_for = true
-ij_php_align_multiline_parameters = false
-ij_php_align_multiline_parameters_in_calls = false
-ij_php_align_multiline_ternary_operation = false
-ij_php_align_named_arguments = false
-ij_php_align_phpdoc_comments = false
-ij_php_align_phpdoc_param_names = false
-ij_php_anonymous_brace_style = end_of_line
-ij_php_api_weight = 28
-ij_php_array_initializer_new_line_after_left_brace = true
-ij_php_array_initializer_right_brace_on_new_line = true
-ij_php_array_initializer_wrap = on_every_item
-ij_php_assignment_wrap = off
-ij_php_attributes_wrap = off
-ij_php_author_weight = 28
-ij_php_binary_operation_sign_on_next_line = false
-ij_php_binary_operation_wrap = off
-ij_php_blank_lines_after_class_header = 1
-ij_php_blank_lines_after_function = 1
-ij_php_blank_lines_after_imports = 1
-ij_php_blank_lines_after_opening_tag = 1
-ij_php_blank_lines_after_package = 1
-ij_php_blank_lines_around_class = 1
-ij_php_blank_lines_around_constants = 0
-ij_php_blank_lines_around_field = 1
-ij_php_blank_lines_around_method = 1
-ij_php_blank_lines_before_class_end = 0
-ij_php_blank_lines_before_imports = 1
-ij_php_blank_lines_before_method_body = 0
-ij_php_blank_lines_before_package = 1
-ij_php_blank_lines_before_return_statement = 0
-ij_php_blank_lines_between_imports = 1
-ij_php_block_brace_style = end_of_line
-ij_php_call_parameters_new_line_after_left_paren = true
-ij_php_call_parameters_right_paren_on_new_line = true
-ij_php_call_parameters_wrap = on_every_item
-ij_php_catch_on_new_line = false
-ij_php_category_weight = 28
-ij_php_class_brace_style = next_line
-ij_php_comma_after_last_array_element = true
-ij_php_concat_spaces = true
-ij_php_copyright_weight = 28
-ij_php_deprecated_weight = 28
-ij_php_do_while_brace_force = always
-ij_php_else_if_style = combine
-ij_php_else_on_new_line = false
-ij_php_example_weight = 28
-ij_php_extends_keyword_wrap = off
-ij_php_extends_list_wrap = on_every_item
-ij_php_fields_default_visibility = protected
-ij_php_filesource_weight = 28
-ij_php_finally_on_new_line = false
-ij_php_for_brace_force = always
-ij_php_for_statement_new_line_after_left_paren = true
-ij_php_for_statement_right_paren_on_new_line = true
-ij_php_for_statement_wrap = off
-ij_php_force_short_declaration_array_style = true
-ij_php_getters_setters_naming_style = camel_case
-ij_php_getters_setters_order_style = getters_first
-ij_php_global_weight = 28
-ij_php_group_use_wrap = on_every_item
-ij_php_if_brace_force = always
-ij_php_if_lparen_on_next_line = false
-ij_php_if_rparen_on_next_line = false
-ij_php_ignore_weight = 28
-ij_php_import_sorting = alphabetic
-ij_php_indent_break_from_case = true
-ij_php_indent_case_from_switch = true
-ij_php_indent_code_in_php_tags = false
-ij_php_internal_weight = 28
-ij_php_keep_blank_lines_after_lbrace = 0
-ij_php_keep_blank_lines_before_right_brace = 0
-ij_php_keep_blank_lines_in_code = 1
-ij_php_keep_blank_lines_in_declarations = 1
-ij_php_keep_control_statement_in_one_line = true
-ij_php_keep_first_column_comment = true
-ij_php_keep_indents_on_empty_lines = false
-ij_php_keep_line_breaks = true
-ij_php_keep_rparen_and_lbrace_on_one_line = true
-ij_php_keep_simple_classes_in_one_line = false
-ij_php_keep_simple_methods_in_one_line = false
-ij_php_lambda_brace_style = end_of_line
-ij_php_license_weight = 28
-ij_php_line_comment_add_space = false
-ij_php_line_comment_at_first_column = true
-ij_php_link_weight = 28
-ij_php_lower_case_boolean_const = true
-ij_php_lower_case_keywords = true
-ij_php_lower_case_null_const = true
-ij_php_method_brace_style = next_line
-ij_php_method_call_chain_wrap = off
-ij_php_method_parameters_new_line_after_left_paren = true
-ij_php_method_parameters_right_paren_on_new_line = true
-ij_php_method_parameters_wrap = on_every_item
-ij_php_method_weight = 28
-ij_php_modifier_list_wrap = false
-ij_php_multiline_chained_calls_semicolon_on_new_line = false
-ij_php_namespace_brace_style = 1
-ij_php_new_line_after_php_opening_tag = true
-ij_php_null_type_position = in_the_end
-ij_php_package_weight = 28
-ij_php_param_weight = 0
-ij_php_parameters_attributes_wrap = off
-ij_php_parentheses_expression_new_line_after_left_paren = false
-ij_php_parentheses_expression_right_paren_on_new_line = false
-ij_php_phpdoc_blank_line_before_tags = true
-ij_php_phpdoc_blank_lines_around_parameters = false
-ij_php_phpdoc_keep_blank_lines = true
-ij_php_phpdoc_param_spaces_between_name_and_description = 1
-ij_php_phpdoc_param_spaces_between_tag_and_type = 1
-ij_php_phpdoc_param_spaces_between_type_and_name = 1
-ij_php_phpdoc_use_fqcn = false
-ij_php_phpdoc_wrap_long_lines = false
-ij_php_place_assignment_sign_on_next_line = false
-ij_php_place_parens_for_constructor = 0
-ij_php_property_read_weight = 28
-ij_php_property_weight = 28
-ij_php_property_write_weight = 28
-ij_php_return_type_on_new_line = false
-ij_php_return_weight = 1
-ij_php_see_weight = 28
-ij_php_since_weight = 28
-ij_php_sort_phpdoc_elements = true
-ij_php_space_after_colon = true
-ij_php_space_after_colon_in_enum_backed_type = true
-ij_php_space_after_colon_in_named_argument = true
-ij_php_space_after_colon_in_return_type = true
-ij_php_space_after_comma = true
-ij_php_space_after_for_semicolon = true
-ij_php_space_after_quest = true
-ij_php_space_after_type_cast = true
-ij_php_space_after_unary_not = false
-ij_php_space_before_array_initializer_left_brace = false
-ij_php_space_before_catch_keyword = true
-ij_php_space_before_catch_left_brace = true
-ij_php_space_before_catch_parentheses = true
-ij_php_space_before_class_left_brace = true
-ij_php_space_before_closure_left_parenthesis = true
-ij_php_space_before_colon = true
-ij_php_space_before_colon_in_enum_backed_type = false
-ij_php_space_before_colon_in_named_argument = false
-ij_php_space_before_colon_in_return_type = false
-ij_php_space_before_comma = false
-ij_php_space_before_do_left_brace = true
-ij_php_space_before_else_keyword = true
-ij_php_space_before_else_left_brace = true
-ij_php_space_before_finally_keyword = true
-ij_php_space_before_finally_left_brace = true
-ij_php_space_before_for_left_brace = true
-ij_php_space_before_for_parentheses = true
-ij_php_space_before_for_semicolon = false
-ij_php_space_before_if_left_brace = true
-ij_php_space_before_if_parentheses = true
-ij_php_space_before_method_call_parentheses = false
-ij_php_space_before_method_left_brace = true
-ij_php_space_before_method_parentheses = false
-ij_php_space_before_quest = true
-ij_php_space_before_short_closure_left_parenthesis = false
-ij_php_space_before_switch_left_brace = true
-ij_php_space_before_switch_parentheses = true
-ij_php_space_before_try_left_brace = true
-ij_php_space_before_unary_not = false
-ij_php_space_before_while_keyword = true
-ij_php_space_before_while_left_brace = true
-ij_php_space_before_while_parentheses = true
-ij_php_space_between_ternary_quest_and_colon = false
-ij_php_spaces_around_additive_operators = true
-ij_php_spaces_around_arrow = false
-ij_php_spaces_around_assignment_in_declare = true
-ij_php_spaces_around_assignment_operators = true
-ij_php_spaces_around_bitwise_operators = true
-ij_php_spaces_around_equality_operators = true
-ij_php_spaces_around_logical_operators = true
-ij_php_spaces_around_multiplicative_operators = true
-ij_php_spaces_around_null_coalesce_operator = true
-ij_php_spaces_around_pipe_in_union_type = false
-ij_php_spaces_around_relational_operators = true
-ij_php_spaces_around_shift_operators = true
-ij_php_spaces_around_unary_operator = false
-ij_php_spaces_around_var_within_brackets = false
-ij_php_spaces_within_array_initializer_braces = false
-ij_php_spaces_within_brackets = false
-ij_php_spaces_within_catch_parentheses = false
-ij_php_spaces_within_for_parentheses = false
-ij_php_spaces_within_if_parentheses = false
-ij_php_spaces_within_method_call_parentheses = false
-ij_php_spaces_within_method_parentheses = false
-ij_php_spaces_within_parentheses = false
-ij_php_spaces_within_short_echo_tags = false
-ij_php_spaces_within_switch_parentheses = false
-ij_php_spaces_within_while_parentheses = false
-ij_php_special_else_if_treatment = false
-ij_php_subpackage_weight = 28
-ij_php_ternary_operation_signs_on_next_line = false
-ij_php_ternary_operation_wrap = off
-ij_php_throws_weight = 2
-ij_php_todo_weight = 28
-ij_php_unknown_tag_weight = 28
-ij_php_upper_case_boolean_const = false
-ij_php_upper_case_null_const = false
-ij_php_uses_weight = 28
-ij_php_var_weight = 28
-ij_php_variable_naming_style = camel_case
-ij_php_version_weight = 28
-ij_php_while_brace_force = always
-ij_php_while_on_new_line = false
-
-[{*.sh}]
-indent_size = 4
-tab_width = 4
-ij_shell_binary_ops_start_line = false
-ij_shell_keep_column_alignment_padding = false
-ij_shell_minify_program = false
-ij_shell_redirect_followed_by_space = false
-ij_shell_switch_cases_indented = false
-ij_shell_use_unix_line_separator = true
-
-[{*.xml}]
-indent_size = 4
-indent_style = space
-ij_xml_align_attributes = true
-ij_xml_align_text = false
-ij_xml_attribute_wrap = on_every_item
-ij_xml_block_comment_at_first_column = true
-ij_xml_keep_blank_lines = 1
-ij_xml_keep_indents_on_empty_lines = false
-ij_xml_keep_line_breaks = true
-ij_xml_keep_line_breaks_in_text = true
-ij_xml_keep_whitespaces = true
-ij_xml_keep_whitespaces_around_cdata = preserve
-ij_xml_keep_whitespaces_inside_cdata = true
-ij_xml_line_comment_at_first_column = true
-ij_xml_space_after_tag_name = false
-ij_xml_space_around_equals_in_attribute = false
-ij_xml_space_inside_empty_tag = true
-ij_xml_text_wrap = normal
diff --git a/.env b/.env
deleted file mode 100644
index b5d1459d6da..00000000000
--- a/.env
+++ /dev/null
@@ -1,5 +0,0 @@
-COMPOSE_DOCKER_CLI_BUILD=1
-DOCKER_BUILDKIT=1
-COMPOSE_PROJECT_NAME=app
-COMPOSE_PATH_SEPARATOR=:
-COMPOSE_FILE=build/docker-compose.yaml:test/docker-compose.yaml
diff --git a/.gitattributes b/.gitattributes
deleted file mode 100644
index c1bf5c2804f..00000000000
--- a/.gitattributes
+++ /dev/null
@@ -1,28 +0,0 @@
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-
-/vendor export-ignore
-/build export-ignore
-/test export-ignore
-/examples export-ignore
-/.github export-ignore
-/.editorconfig export-ignore
-/.env export-ignore
-/.gitattributes export-ignore
-/.gitignore export-ignore
-/composer.lock export-ignore
-
-CODE_OF_CONDUCT export-ignore
-DCO export-ignore
-AUTHORS export-ignore
-CONTRIBUTING export-ignore
-AUTHORS export-ignore
-CITATION export-ignore
-
-* text=false
-*.php text eol=lf
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
deleted file mode 100644
index 6dc9bd5cfda..00000000000
--- a/.github/CODEOWNERS
+++ /dev/null
@@ -1,15 +0,0 @@
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-
-# @see https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners#codeowners-syntax
-
-# These owners will be the default owners for everything in
-# the repo. Unless a later match takes precedence,
-# @global-owner1 and @global-owner2 will be requested for
-# review when someone opens a pull request.
-* @sshilko
\ No newline at end of file
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
deleted file mode 100644
index 4ff5d231cdb..00000000000
--- a/.github/FUNDING.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-
-# @see https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository
-
-github: sshilko
-custom: https://paypal.me/sergeishilko
diff --git a/.github/SECURITY b/.github/SECURITY
deleted file mode 100644
index 898f002cd3e..00000000000
--- a/.github/SECURITY
+++ /dev/null
@@ -1,13 +0,0 @@
-# Security Policy
-
-This is security policy
-
-## Reporting a Vulnerability
-
-If you find something suspicious and want to report it, we'd really appreciate!
-
-### Ways to report
-
-* Send us an email message
-* If you can't send an email, either open an issue or pull request on GitHub
-
diff --git a/.github/workflows/github-pages.yml b/.github/workflows/github-pages.yml
deleted file mode 100644
index 448be4f7607..00000000000
--- a/.github/workflows/github-pages.yml
+++ /dev/null
@@ -1,59 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: Github Pages
-
-on:
- schedule:
- # @see https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule
- # * is a special character in YAML so you have to quote this string
- # ┌───────────── minute (0 - 59)
- # │ ┌───────────── hour (0 - 23)
- # │ │ ┌───────────── day of the month (1 - 31)
- # │ │ │ ┌───────────── month (1 - 12)
- # │ │ │ │ ┌───────────── day of the week (0 - 6)
- # │ │ │ │ │
- # │ │ │ │ │
- # │ │ │ │ │
- # * * * * *
- - cron: "0 * * * 0"
-
-jobs:
- pages-directory-listing-release:
-
- runs-on: ubuntu-latest
- timeout-minutes: 3
-
- steps:
- - name: Checkout
- uses: actions/checkout@v3
- with:
- ref: pages
-
- - name: Generate Directory Listings
- uses: jayanta525/github-pages-directory-listing@v2.0.0
- with:
- FOLDER: .
-
- - uses: nick-fields/retry@v2
- name: Commit directory-listing
- continue-on-error: true
- with:
- timeout_seconds: 20
- max_attempts: 3
- retry_on: error
- command: |
- git status
- git config user.name github-actions
- git config user.email github-actions@github.com
- git pull
- git add "**/index.html"
- git reset php/phpdoc/index.html
- git commit -m "generated directory-listing docs from revision ${GITHUB_SHA::7}"
- git push
diff --git a/.github/workflows/php-docker.yml b/.github/workflows/php-docker.yml
deleted file mode 100644
index 35035911439..00000000000
--- a/.github/workflows/php-docker.yml
+++ /dev/null
@@ -1,50 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.1 Docker
-
-on:
- push:
- branches: [ "master" ]
-
-permissions:
- contents: read
-
-jobs:
- build-containers:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 6
- steps:
- - uses: actions/checkout@v3
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v2
-
- - name: Cache Docker php-image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php-xbuild-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php81') }}
-
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar || true
- if: steps.docker-php-image-cache.outputs.cache-hit == 'true'
-
- - name: Build Docker image
- run: ls -l && docker build -f build/Dockerfile.php81 --build-arg BUILDKIT_INLINE_CACHE=1 -t app/php-image --cache-from=app/php-image-cache ./build
- if: steps.docker-php-image-cache.outputs.cache-hit != 'true'
- env:
- DOCKER_BUILDKIT: '1'
- COMPOSE_DOCKER_CLI_BUILD: '1'
-
- - name: Tag Docker image
- run: docker tag app/php-image app/php-image-cache && mkdir -p /tmp/docker-save && docker save app/php-image-cache -o /tmp/docker-save/snapshot.tar && ls -lh /tmp/docker-save || true
- if: always() && steps.docker-php-image-cache.outputs.cache-hit != 'true'
diff --git a/.github/workflows/phpcs.yml b/.github/workflows/phpcs.yml
deleted file mode 100644
index fd693cca304..00000000000
--- a/.github/workflows/phpcs.yml
+++ /dev/null
@@ -1,103 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.1 PHPCS
-
-on:
- push:
- branches: [ "master" ]
-
-permissions:
- contents: read
-
-jobs:
- build:
-
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 5
-
- steps:
- - name: Checkout
- uses: actions/checkout@v3
-
- - name: PHP setup
- uses: shivammathur/setup-php@v2
- with:
- php-version: '8.1'
- extensions: simplexml,dom,xml,intl,ast,mysql,xdebug
- coverage: xdebug
-
- # https://github.com/pre-commit/action
- - name: Pre-commit dependencies
- uses: actions/setup-python@v3
- - run: pip install pre-commit
-
- - name: Validate composer.json and composer.lock
- run: composer validate
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: PHP Version
- run: php --version
-
- - name: Install dependencies
- run: composer install --prefer-dist --no-progress --optimize-autoloader
-
- # Docs: https://github.com/squizlabs/PHP_CodeSniffer
- - name: Run PHPCodeSniffer github.com/squizlabs/PHP_CodeSniffer
- run: composer app-phpcs
-
- # https://github.com/actions/upload-artifact
- - name: Upload PHPCS artifacts
- uses: actions/upload-artifact@v3
- with:
- name: phpcs-output
- path: |
- build/tmp/phpcs.txt
- retention-days: 1
- pages:
- needs: build
- runs-on: ubuntu-latest
- timeout-minutes: 2
- permissions: write-all
- steps:
- # https://github.com/actions/checkout
- - name: Checkout pages branch
- uses: actions/checkout@v3
- with:
- ref: pages
-
- # https://github.com/marketplace/actions/download-a-build-artifact
- - name: Download all PHPCS artifacts
- uses: actions/download-artifact@v3
- with:
- name: phpcs-output
- path: php/phpcs
-
- - uses: nick-fields/retry@v2
- name: Commit php/phpcs
- continue-on-error: true
- with:
- timeout_seconds: 20
- max_attempts: 3
- retry_on: error
- command: |
- git status
- git config user.name github-actions
- git config user.email github-actions@github.com
- git pull
- git add php/phpcs/phpcs.txt
- git commit -m "generated phpcs docs from revision ${GITHUB_SHA::7}"
- git push
\ No newline at end of file
diff --git a/.github/workflows/phpdoc.yml b/.github/workflows/phpdoc.yml
deleted file mode 100644
index 693f45b023c..00000000000
--- a/.github/workflows/phpdoc.yml
+++ /dev/null
@@ -1,108 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.1 PHPDocumentor
-
-on:
- workflow_run:
- workflows: [ "8.1 Docker" ]
- types:
- - completed
-
-permissions:
- contents: read
-
-jobs:
- build:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 10
-
- steps:
- - uses: actions/checkout@v3
-
- - name: Load cached app docker image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php-xbuild-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php81') }}
-
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar && docker tag app/php-image-cache app/php
-
- - name: Docker boot
- env:
- SERVICES_NAME: "app.php81"
- run: docker-compose up -d $SERVICES_NAME
-
- - run: docker-compose ps
-
- - name: Sleep
- run: sleep 6
- timeout-minutes: 1
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: Docker install dependencies
- run: docker-compose exec -T app.php81 composer install
-
- # Docs: https://phpunit.readthedocs.io/en/9.5/
- - name: Docker run PHPDoc
- run: docker-compose exec -T app.php81 composer app-phpdoc
-
- # https://github.com/actions/upload-artifact
- - name: Upload PHPDoc artifacts
- uses: actions/upload-artifact@v3
- with:
- name: phpdoc-output
- path: |
- build/tmp/phpdoc-output
- retention-days: 1
-
- docs:
- needs: build
- runs-on: ubuntu-latest
- timeout-minutes: 2
- permissions: write-all
- steps:
- # https://github.com/actions/checkout
- - name: Checkout pages branch
- uses: actions/checkout@v3
- with:
- ref: pages
-
- # https://github.com/marketplace/actions/download-a-build-artifact
- - name: Download all PHPUnit artifacts
- uses: actions/download-artifact@v3
- with:
- name: phpdoc-output
- path: php/phpdoc
-
- - uses: nick-fields/retry@v2
- name: Commit phpdoc details
- continue-on-error: true
- with:
- timeout_seconds: 20
- max_attempts: 3
- retry_on: error
- command: |
- git status
- git config user.name github-actions
- git config user.email github-actions@github.com
- git pull
- git add php/phpdoc/*
- git commit -m "generated phpdoc artifacts from revision ${GITHUB_SHA::7}"
- git push
-
diff --git a/.github/workflows/phpmd.yml b/.github/workflows/phpmd.yml
deleted file mode 100644
index 3248ef07361..00000000000
--- a/.github/workflows/phpmd.yml
+++ /dev/null
@@ -1,98 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.1 PHPMd
-
-on:
- push:
- branches: [ "master" ]
-
-permissions:
- contents: read
-
-jobs:
- build:
-
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 5
-
- steps:
- - name: Checkout
- uses: actions/checkout@v3
-
- - name: PHP setup
- uses: shivammathur/setup-php@v2
- with:
- php-version: '8.1'
- extensions: simplexml,dom,xml,intl,ast,mysql,xdebug
- coverage: xdebug
-
- - name: Validate composer.json and composer.lock
- run: composer validate
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: PHP Version
- run: php --version
-
- - name: Install dependencies
- run: composer install --prefer-dist --no-progress --optimize-autoloader
-
- # Docs: https://phpmd.org
- - name: Run PHPmd phpmd.org
- run: composer app-phpmd
-
- # https://github.com/actions/upload-artifact
- - name: Upload PHPMD artifacts
- uses: actions/upload-artifact@v3
- with:
- name: phpmd-output
- path: |
- build/tmp/phpmd.txt
- retention-days: 1
- pages:
- needs: build
- runs-on: ubuntu-latest
- timeout-minutes: 2
- permissions: write-all
- steps:
- # https://github.com/actions/checkout
- - name: Checkout pages branch
- uses: actions/checkout@v3
- with:
- ref: pages
-
- #https://github.com/marketplace/actions/download-a-build-artifact
- - name: Download all PHPMD artifacts
- uses: actions/download-artifact@v3
- with:
- name: phpmd-output
- path: php/phpmd
-
- - uses: nick-fields/retry@v2
- name: Commit php/phpmd
- continue-on-error: true
- with:
- timeout_seconds: 20
- max_attempts: 3
- retry_on: error
- command: |
- git status
- git config user.name github-actions
- git config user.email github-actions@github.com
- git pull
- git add php/phpmd/phpmd.txt
- git commit -m "generated phpmd docs from revision ${GITHUB_SHA::7}"
- git push
diff --git a/.github/workflows/phppdepend.yml b/.github/workflows/phppdepend.yml
deleted file mode 100644
index 5bc276fbf46..00000000000
--- a/.github/workflows/phppdepend.yml
+++ /dev/null
@@ -1,114 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.1 PDepend
-
-on:
- workflow_run:
- workflows: [ "8.1 Docker" ]
- types:
- - completed
-
-permissions:
- contents: read
-
-jobs:
- build:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 10
-
- steps:
- - uses: actions/checkout@v3
-
- - name: Load cached app docker image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php-xbuild-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php81') }}
-
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar && docker tag app/php-image-cache app/php
-
- - name: Docker boot
- env:
- DOCKER_BUILDKIT: '1'
- COMPOSE_DOCKER_CLI_BUILD: '1'
- SERVICES_NAME: "app.php81"
- run: docker-compose up -d $SERVICES_NAME
-
- - run: docker-compose ps
-
- - name: Sleep
- run: sleep 6
- timeout-minutes: 1
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: Docker install dependencies
- run: docker-compose exec -T app.php81 composer install
-
- # Docs: https://phpunit.readthedocs.io/en/9.5/
- - name: Docker run PHPUnit with MySQL5.7
- run: docker-compose exec -T app.php81 composer app-pdepend
-
- # https://github.com/actions/upload-artifact
- - name: Upload Pdepend artifacts
- uses: actions/upload-artifact@v3
- with:
- name: pdepend-output
- path: |
- build/tmp/pdepend-dependency-xml.xml
- build/tmp/pdepend-jdepend-chart.svg
- build/tmp/pdepend-jdepend-xml.xml
- build/tmp/pdepend-summary-xml.xml
- build/tmp/pdepend-overview-pyramid.svg
- retention-days: 1
-
- badges:
- needs: build
- runs-on: ubuntu-latest
- timeout-minutes: 2
- permissions: write-all
- steps:
- # https://github.com/actions/checkout
- - name: Checkout pages branch
- uses: actions/checkout@v3
- with:
- ref: pages
-
- # https://github.com/marketplace/actions/download-a-build-artifact
- - name: Download all PHPUnit artifacts
- uses: actions/download-artifact@v3
- with:
- name: pdepend-output
- path: php/pdepend
-
- - uses: nick-fields/retry@v2
- name: Commit pdepend details
- continue-on-error: true
- with:
- timeout_seconds: 20
- max_attempts: 3
- retry_on: error
- command: |
- git status
- git config user.name github-actions
- git config user.email github-actions@github.com
- git pull
- git add php/pdepend/*
- git commit -m "generated pdepend artifacts from revision ${GITHUB_SHA::7}"
- git push
-
diff --git a/.github/workflows/phpphan.yml b/.github/workflows/phpphan.yml
deleted file mode 100644
index d117d98dee7..00000000000
--- a/.github/workflows/phpphan.yml
+++ /dev/null
@@ -1,100 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.1 Phan
-
-on:
- push:
- branches: [ "master" ]
-
-permissions:
- contents: read
-
-jobs:
- build:
-
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 5
-
- steps:
- - name: Checkout
- uses: actions/checkout@v3
-
- - name: PHP setup
- uses: shivammathur/setup-php@v2
- with:
- php-version: '8.1'
- extensions: simplexml,dom,xml,intl,ast,mysql,xdebug
- coverage: xdebug
-
- - name: Validate composer.json and composer.lock
- run: composer validate
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: PHP Version
- run: php --version
-
- - name: Install dependencies
- run: composer install --prefer-dist --no-progress --optimize-autoloader
-
- # Docs: https://github.com/phan/phan
- - name: Run Phan github.com/phan/phan
- run: composer app-phan > build/tmp/phan.txt 2>&1
-
- # https://github.com/actions/upload-artifact
- - name: Upload Phan artifacts
- uses: actions/upload-artifact@v3
- with:
- name: phan-output
- path: |
- build/tmp/phan.html
- build/tmp/phan.txt
- retention-days: 1
- pages:
- needs: build
- runs-on: ubuntu-latest
- timeout-minutes: 2
- permissions: write-all
- steps:
- # https://github.com/actions/checkout
- - name: Checkout pages branch
- uses: actions/checkout@v3
- with:
- ref: pages
-
- #https://github.com/marketplace/actions/download-a-build-artifact
- - name: Download all Phan artifacts
- uses: actions/download-artifact@v3
- with:
- name: phan-output
- path: php/phan
-
- - uses: nick-fields/retry@v2
- name: Commit php/phan
- continue-on-error: true
- with:
- timeout_seconds: 20
- max_attempts: 3
- retry_on: error
- command: |
- git status
- git config user.name github-actions
- git config user.email github-actions@github.com
- git pull
- git add php/phan/phan.txt
- git add php/phan/phan.html
- git commit -m "generated phan docs from revision ${GITHUB_SHA::7}"
- git push
diff --git a/.github/workflows/phppsalm.yml b/.github/workflows/phppsalm.yml
deleted file mode 100644
index 0162ca1a1a3..00000000000
--- a/.github/workflows/phppsalm.yml
+++ /dev/null
@@ -1,101 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.1 Psalm
-
-on:
- push:
- branches: [ "master" ]
-
-permissions:
- contents: read
-
-jobs:
- build:
-
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 5
-
- steps:
- - name: Checkout
- uses: actions/checkout@v3
-
- - name: PHP setup
- uses: shivammathur/setup-php@v2
- with:
- php-version: '8.1'
- extensions: simplexml,dom,xml,intl,ast,mysql,xdebug
- coverage: xdebug
-
- - name: Validate composer.json and composer.lock
- run: composer validate
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: PHP Version
- run: php --version
-
- - name: Install dependencies
- run: composer install --prefer-dist --no-progress --optimize-autoloader
-
- # Docs: https://github.com/psalm/shepherd
- - name: Run psalm suite and send shepherd stats psalm.dev
- run: composer app-psalm -- --shepherd > $PWD/build/tmp/psalm.stdout.txt
- - name: Echo psalm output
- run: cat $PWD/build/tmp/psalm.stdout.txt
-
- # https://github.com/actions/upload-artifact
- - name: Upload Psalm artifacts
- uses: actions/upload-artifact@v3
- with:
- retention-days: 1
- name: psalm-output
- path: |
- build/tmp/psalm.stdout.txt
- build/tmp/psalm.txt
- pages:
- needs: build
- runs-on: ubuntu-latest
- timeout-minutes: 2
- permissions: write-all
- steps:
- # https://github.com/actions/checkout
- - name: Checkout pages branch
- uses: actions/checkout@v3
- with:
- ref: pages
-
- # https://github.com/marketplace/actions/download-a-build-artifact
- - name: Download all Psalm artifacts
- uses: actions/download-artifact@v3
- with:
- name: psalm-output
- path: php/psalm
-
- - uses: nick-fields/retry@v2
- name: Commit php/phpstan
- continue-on-error: true
- with:
- timeout_seconds: 20
- max_attempts: 3
- retry_on: error
- command: |
- git status
- git config user.name github-actions
- git config user.email github-actions@github.com
- git pull
- git add php/psalm/*
- git commit -m "generated psalm docs from revision ${GITHUB_SHA::7}"
- git push
diff --git a/.github/workflows/phpstan.yml b/.github/workflows/phpstan.yml
deleted file mode 100644
index 0bace2918af..00000000000
--- a/.github/workflows/phpstan.yml
+++ /dev/null
@@ -1,103 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.1 PHPStan
-
-on:
- push:
- branches: [ "master" ]
-
-permissions:
- contents: read
-
-jobs:
- build:
-
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 5
-
- steps:
- - name: Checkout
- uses: actions/checkout@v3
-
- - name: PHP setup
- uses: shivammathur/setup-php@v2
- with:
- php-version: '8.1'
- extensions: simplexml,dom,xml,intl,ast,mysql,xdebug
- coverage: xdebug
-
- # https://github.com/pre-commit/action
- - name: Pre-commit dependencies
- uses: actions/setup-python@v3
- - run: pip install pre-commit
-
- - name: Validate composer.json and composer.lock
- run: composer validate
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: PHP Version
- run: php --version
-
- - name: Install dependencies
- run: composer install --prefer-dist --no-progress --optimize-autoloader
-
- # Docs: https://phpstan.org
- - name: Run PHPStan phpstan.org
- run: composer app-phpstan
-
- # https://github.com/actions/upload-artifact
- - name: Upload PHPStan artifacts
- uses: actions/upload-artifact@v3
- with:
- name: phpstan-output
- path: |
- build/tmp/phpstan.txt
- retention-days: 1
- pages:
- needs: build
- runs-on: ubuntu-latest
- timeout-minutes: 2
- permissions: write-all
- steps:
- # https://github.com/actions/checkout
- - name: Checkout pages branch
- uses: actions/checkout@v3
- with:
- ref: pages
-
- # https://github.com/marketplace/actions/download-a-build-artifact
- - name: Download all PHPStan artifacts
- uses: actions/download-artifact@v3
- with:
- name: phpstan-output
- path: php/phpstan
-
- - uses: nick-fields/retry@v2
- name: Commit php/phpstan
- continue-on-error: true
- with:
- timeout_seconds: 20
- max_attempts: 3
- retry_on: error
- command: |
- git status
- git config user.name github-actions
- git config user.email github-actions@github.com
- git pull
- git add php/phpstan/phpstan.txt
- git commit -m "generated phpstan docs from revision ${GITHUB_SHA::7}"
- git push
diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml
deleted file mode 100644
index 8862b904445..00000000000
--- a/.github/workflows/phpunit.yml
+++ /dev/null
@@ -1,146 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: PHPUnit
-
-on:
- workflow_run:
- workflows: [ "8.1 Docker" ]
- types:
- - completed
-
-permissions:
- contents: read
-
-jobs:
- build:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 10
-
- steps:
- - uses: actions/checkout@v3
-
- - name: Load cached app docker image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php-xbuild-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php81') }}
-
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar && docker tag app/php-image-cache app/php
-
- - name: Docker boot
- env:
- DOCKER_BUILDKIT: '1'
- COMPOSE_DOCKER_CLI_BUILD: '1'
- SERVICES_NAME: "app.php81 mysql mysql80"
- run: docker-compose up -d $SERVICES_NAME
- timeout-minutes: 6
-
- - name: Wait for all services to become healthy
- run: for SVC in "app.php81" "mysql" "mysql80"; do while [ "\"healthy\"" != "$(docker inspect --format '{{json .State.Health.Status }}' ${SVC})" ];do docker-compose ps && sleep 5; done; done
- timeout-minutes: 2
-
- - name: Sleep
- run: sleep 4
- - run: docker-compose ps
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: Docker install dependencies
- run: docker-compose exec -T app.php81 composer install
-
- # Docs: https://phpunit.readthedocs.io/en/9.5/
- - name: Docker run PHPUnit with MySQL5.7
- run: docker-compose exec -T app.php81 composer app-phpunit-mysql57
-
- - name: Docker run PHPUnit with MySQL8.0 & Coverage
- run: docker-compose exec -T app.php81 composer app-phpunit-mysql80-coverage
-
- - name: Docker run PHPUnit badge generation
- id: app-phpunit-badges-coverage
- continue-on-error: true
- run: |
- #3 attempts to generate badges
- docker-compose exec -T app.php81 composer app-phpunit-badges-coverage || \
- docker-compose exec -T app.php81 composer app-phpunit-badges-coverage || \
- docker-compose exec -T app.php81 composer app-phpunit-badges-coverage
-
- # Docs: https://github.com/marketplace/actions/phpunit-coverage-badge
- - name: Generate PHPUnit coverage badge
- uses: timkrase/phpunit-coverage-badge@v1.2.0
- with:
- coverage_badge_path: 'test/tmp/phpunit-coverage-badge.svg'
- push_badge: false
- report: test/tmp/phpunit-clover.xml
-
- # https://github.com/actions/upload-artifact
- - name: Upload PHPUnit artifacts
- uses: actions/upload-artifact@v3
- with:
- name: phpunit-output
- path: |
- test/tmp/html
- test/tmp/xml
- test/tmp/phpunit-testdox-html.html
- test/tmp/phpunit-testdox-text.txt
- test/tmp/phpunit-clover.xml
- test/tmp/phpunit-junit.xml
- test/tmp/phpunit-cobertura.xml
- test/tmp/phpunit-crap4j.xml
- test/tmp/phpunit-xml.xml
- test/tmp/phpunit-coverage.txt
- test/tmp/phpunit-coverage-badge.svg
- test/tmp/phpunit-coverage-badge-lines.svg
- test/tmp/phpunit-coverage-badge-classes.svg
- test/tmp/phpunit-coverage-badge-methods.svg
- retention-days: 1
-
- badges:
- needs: build
- runs-on: ubuntu-latest
- timeout-minutes: 2
- permissions: write-all
- steps:
- # https://github.com/actions/checkout
- - name: Checkout pages branch
- uses: actions/checkout@v3
- with:
- ref: pages
-
- # https://github.com/marketplace/actions/download-a-build-artifact
- - name: Download all PHPUnit artifacts
- uses: actions/download-artifact@v3
- with:
- name: phpunit-output
- path: php/phpunit
-
- - uses: nick-fields/retry@v2
- name: Commit coverage details
- continue-on-error: true
- with:
- timeout_seconds: 20
- max_attempts: 3
- retry_on: error
- command: |
- git status
- git config user.name github-actions
- git config user.email github-actions@github.com
- git pull
- git add php/phpunit/*
- git commit -m "generated phpunit artifacts from revision ${GITHUB_SHA::7}"
- git push
-
diff --git a/.github/workflows/phpunit80.yml b/.github/workflows/phpunit80.yml
deleted file mode 100644
index 86e03b338d1..00000000000
--- a/.github/workflows/phpunit80.yml
+++ /dev/null
@@ -1,104 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.0 PHPUnit
-
-on:
- push:
- branches: [ "master" ]
-
-permissions:
- contents: read
-
-jobs:
- build-containers:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 10
- steps:
- - uses: actions/checkout@v3
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v2
-
- - name: Cache Docker php-image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php-build80-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php80', 'composer.lock') }}
-
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar || true
- if: steps.docker-php-image-cache.outputs.cache-hit == 'true'
-
- - name: Build Docker image
- run: ls -l && docker build -f build/Dockerfile.php80 --build-arg BUILDKIT_INLINE_CACHE=1 -t app/php-image --cache-from=app/php80-image-cache ./build
- if: steps.docker-php-image-cache.outputs.cache-hit != 'true'
- env:
- DOCKER_BUILDKIT: '1'
- COMPOSE_DOCKER_CLI_BUILD: '1'
-
- - name: Tag Docker image
- run: docker tag app/php-image app/php80-image-cache && mkdir -p /tmp/docker-save && docker save app/php80-image-cache -o /tmp/docker-save/snapshot.tar && ls -lh /tmp/docker-save || true
- if: always() && steps.docker-php-image-cache.outputs.cache-hit != 'true'
-
- build:
- needs: build-containers
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 10
-
- steps:
- - uses: actions/checkout@v3
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v2
-
- - name: List files
- run: pwd && ls -l
-
- - name: Load cached app docker image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php-build80-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php80', 'composer.lock') }}
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar && docker tag app/php80-image-cache app/php80
-
- - name: Docker boot
- env:
- DOCKER_BUILDKIT: '1'
- COMPOSE_DOCKER_CLI_BUILD: '1'
- SERVICES_NAME: "app.php80 mysql mysql80"
- run: docker-compose up -d $SERVICES_NAME
- timeout-minutes: 1
-
- - name: Wait for all services to become healthy
- run: for SVC in "app.php80" "mysql" "mysql80"; do while [ "\"healthy\"" != "$(docker inspect --format '{{json .State.Health.Status }}' ${SVC})" ];do docker-compose ps && sleep 5; done; done
- timeout-minutes: 2
-
- - name: Sleep
- run: sleep 4
- - run: docker-compose ps
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php80-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: Docker install dependencies
- run: docker-compose exec -T app.php80 composer install
-
- # Docs: https://phpunit.readthedocs.io/en/9.5/
- - name: Docker run PHPUnit
- run: docker-compose exec -T app.php80 composer app-phpunit
diff --git a/.github/workflows/phpunit81.yml b/.github/workflows/phpunit81.yml
deleted file mode 100644
index 5b01b1e2f22..00000000000
--- a/.github/workflows/phpunit81.yml
+++ /dev/null
@@ -1,102 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.1 PHPUnit
-
-on:
- push:
- branches: [ "master" ]
-
-permissions:
- contents: read
-
-jobs:
- build-containers:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 10
- steps:
- - uses: actions/checkout@v3
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v2
-
- - name: List files
- run: pwd && ls -l
-
- - name: Cache Docker php-image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php-build81-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php81', 'composer.lock') }}
-
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar || true
- if: steps.docker-php-image-cache.outputs.cache-hit == 'true'
-
- - name: Build Docker image
- run: ls -l && docker build -f build/Dockerfile.php81 --build-arg BUILDKIT_INLINE_CACHE=1 -t app/php-image --cache-from=app/php-image-cache ./build
- if: steps.docker-php-image-cache.outputs.cache-hit != 'true'
- env:
- DOCKER_BUILDKIT: '1'
- COMPOSE_DOCKER_CLI_BUILD: '1'
-
- - name: Tag Docker image
- run: docker tag app/php-image app/php-image-cache && mkdir -p /tmp/docker-save && docker save app/php-image-cache -o /tmp/docker-save/snapshot.tar && ls -lh /tmp/docker-save || true
- if: always() && steps.docker-php-image-cache.outputs.cache-hit != 'true'
-
- build:
- needs: build-containers
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 10
-
- steps:
- - uses: actions/checkout@v3
-
- - name: Load cached app docker image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php-build81-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php81', 'composer.lock') }}
-
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar && docker tag app/php-image-cache app/php81
-
- - name: Docker boot
- env:
- DOCKER_BUILDKIT: '1'
- COMPOSE_DOCKER_CLI_BUILD: '1'
- SERVICES_NAME: "app.php81 mysql mysql80"
- run: docker-compose up -d $SERVICES_NAME
- timeout-minutes: 1
-
- - name: Wait for all services to become healthy
- run: for SVC in "app.php81" "mysql" "mysql80"; do while [ "\"healthy\"" != "$(docker inspect --format '{{json .State.Health.Status }}' ${SVC})" ];do docker-compose ps && sleep 5; done; done
- timeout-minutes: 2
-
- - name: Sleep
- run: sleep 4
- - run: docker-compose ps
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: Docker install dependencies
- run: docker-compose exec -T app.php81 composer install
-
- # Docs: https://phpunit.readthedocs.io/en/9.5/
- - name: Docker run PHPUnit
- run: docker-compose exec -T app.php81 composer app-phpunit
diff --git a/.github/workflows/phpunit82.yml b/.github/workflows/phpunit82.yml
deleted file mode 100644
index 6e91449e751..00000000000
--- a/.github/workflows/phpunit82.yml
+++ /dev/null
@@ -1,101 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-name: 8.2 PHPUnit
-
-on:
- push:
- branches: [ "master" ]
-
-permissions:
- contents: read
-
-jobs:
- build-containers:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 10
- steps:
- - uses: actions/checkout@v3
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v2
-
- - name: List files
- run: pwd && ls -l
-
- - name: Cache Docker php-image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php82-build-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php82', 'composer.lock') }}
-
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar || true
- if: steps.docker-php-image-cache.outputs.cache-hit == 'true'
-
- - name: Build Docker image
- run: ls -l && docker build -f build/Dockerfile.php82 --build-arg BUILDKIT_INLINE_CACHE=1 -t app/php-image --cache-from=app/php82-image-cache ./build
- if: steps.docker-php-image-cache.outputs.cache-hit != 'true'
- env:
- DOCKER_BUILDKIT: '1'
- COMPOSE_DOCKER_CLI_BUILD: '1'
-
- - name: Tag Docker image
- run: docker tag app/php-image app/php82-image-cache && mkdir -p /tmp/docker-save && docker save app/php82-image-cache -o /tmp/docker-save/snapshot.tar && ls -lh /tmp/docker-save || true
- if: always() && steps.docker-php-image-cache.outputs.cache-hit != 'true'
-
- build:
- needs: build-containers
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, 'skip-ci')"
- timeout-minutes: 10
-
- steps:
- - uses: actions/checkout@v3
-
- - name: Load cached app docker image
- id: docker-php-image-cache
- uses: actions/cache@v3
- with:
- path: /tmp/docker-save
- key: ${{ runner.os }}-docker-php82-build-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php82', 'composer.lock') }}
-
- - name: Load cached Docker image
- run: docker load -i /tmp/docker-save/snapshot.tar && docker tag app/php82-image-cache app/php82
-
- - name: Docker boot
- env:
- DOCKER_BUILDKIT: '1'
- COMPOSE_DOCKER_CLI_BUILD: '1'
- SERVICES_NAME: "app.php82 mysql mysql80"
- run: docker-compose up -d $SERVICES_NAME
- timeout-minutes: 1
-
- - name: Wait for all services to become healthy
- run: for SVC in "app.php82" "mysql" "mysql80"; do while [ "\"healthy\"" != "$(docker inspect --format '{{json .State.Health.Status }}' ${SVC})" ];do docker-compose ps && sleep 5; done; done
- timeout-minutes: 2
-
- - name: Sleep
- run: sleep 4
- - run: docker-compose ps
-
- - name: Cache Composer packages
- id: composer-cache
- uses: actions/cache@v3
- with:
- path: vendor
- key: ${{ runner.os }}-php82-${{ hashFiles('composer.lock') }}-composer-dev
-
- - name: Docker install dependencies
- run: docker-compose exec -T app.php82 composer install
-
- - name: Docker run PHPUnit
- run: docker-compose exec -T app.php82 composer app-phpunit
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 25fcf9ff116..00000000000
--- a/.gitignore
+++ /dev/null
@@ -1,21 +0,0 @@
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-
-# .gitignore file
-# @see https://github.com/github/gitignore
-
-# @see https://getcomposer.org
-vendor
-
-# OSX finder artifacts
-**/.DS_Store
-
-# JetBrains IDEs
-# @see https://www.jetbrains.com/help/idea/configure-project-settings.html
-# @see https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
-.idea
diff --git a/.nojekyll b/.nojekyll
new file mode 100644
index 00000000000..6b20770a1f0
--- /dev/null
+++ b/.nojekyll
@@ -0,0 +1,4 @@
+Fix underscore folder problem with github page
+https://pages.github.com
+https://github.blog/2009-12-29-bypassing-jekyll-on-github-pages/
+
diff --git a/AUTHORS b/AUTHORS
deleted file mode 100644
index e70c9c4c637..00000000000
--- a/AUTHORS
+++ /dev/null
@@ -1,8 +0,0 @@
-AUTHORS
-
-This project is maintained by the following people.
-
-All maintainers must agree to the Developer Certificate of Origin
-
-Sergei Shiko
-As a maintainer, I agree to the Developer Certificate of Origin
\ No newline at end of file
diff --git a/CITATION b/CITATION
deleted file mode 100644
index 49c8acf08bd..00000000000
--- a/CITATION
+++ /dev/null
@@ -1,9 +0,0 @@
-cff-version: 1.2.0
-message: "If you use this software, please cite it as below."
-authors:
-- family-names: "Shilko"
- given-names: "Sergei"
-title: "sshilko/php-sql-mydb Component"
-version: 1.0.0
-date-released: 2021-11-01
-url: "https://github.com/sshilko/php-sql-mydb"
\ No newline at end of file
diff --git a/CODE_OF_CONDUCT b/CODE_OF_CONDUCT
deleted file mode 100644
index b57255e2f37..00000000000
--- a/CODE_OF_CONDUCT
+++ /dev/null
@@ -1,25 +0,0 @@
-Code of Conduct
-
-We are committed to fostering a welcoming community.
-Any participant and contributor is required to adhere to this Code of Conduct.
-
-We are proud to say that we have an open source community that is welcoming, positive, and respectful to all participants,
-regardless of gender, gender identity, gender presentation, sexual orientation, race, age,
-disability, physical appearance, national origin, ethnicity, religion or any other protected status.
-We believe our diversity makes us stronger and enriches the work we do.
-In an effort to maintain a high level of respect and acceptance in our community,
-we ask that anyone who participates in the this project’s open source community follow this Code of Conduct.
-
-By participating in the project’s open source community, you agree to:
-
-- Treat each other with respect.
-- Respect each other’s privacy.
-- Respect each other’s boundaries.
-- Be thoughtful about what you say.
-- Be helpful. Offer constructive criticism.
-- Be lawful. Don’t post, link or attach content that violates third party intellectual property rights or violates the law.
-
-Discrimination, harassment or individual or coordinated attacks on contributors of any kind, will not be tolerated.
-
-If a participant violates this Code of Conduct, the project's members may take any action we deem appropriate,
-including warning the offender, blocking them temporarily or permanently, and/or contacting law enforcement.
\ No newline at end of file
diff --git a/CONTRIBUTING b/CONTRIBUTING
deleted file mode 100644
index dbe388adf79..00000000000
--- a/CONTRIBUTING
+++ /dev/null
@@ -1,76 +0,0 @@
-#### CI
-
-Project uses free Github actions as build/CI.
-CI steps [definitions](.github)
-
-#### Development setup
-
-- Install [PHP](https://www.php.net/) & [Composer](https://getcomposer.org/) & [Docker Compose](https://docs.docker.com/compose/install/)
-- Install [PHPStorm IDE](https://www.jetbrains.com/phpstorm/) with [PHP Inspections](https://github.com/kalessil/phpinspectionsea) or [VSCode IDE](https://code.visualstudio.com/)
-
-docker-compose up --force-recreate -d
-docker-compose exec -T app.php81 composer install
-
-Different PHP language runtime versions are available in named containers
-- PHP7.4 - *app.php* (deprecated)
-- PHP8.0 - *app.php80*
-- PHP8.1 - *app.php81*
-- PHP8.2 - *app.php81*
-
-docker-compose exec %php-container% composer %composer-script%
-
-#### How to check code quality before commit
-
-git add -A
-docker-compose exec app.php81 composer app-pre-commit
-docker-compose exec app.php81 composer app-quality
-git commit -m "new-feature-message"
-
-docker-compose exec -it app.php80 bash
-
-##### Run [PHPUnit](https://phpunit.de) test suite
-
-docker-compose exec app.php81 composer app-phpunit
-docker-compose exec app.php81 composer app-phpunit -- --filter SelectTest
-docker-compose exec app.php81 composer app-phpunit-mysql57 -- --filter escape
-docker-compose exec app.php81 composer app-phpunit-mysql80
-
-docker-compose exec app.php82 composer app-phpunit-mysql80
-
-docker-compose exec mysql mysql -uroot -proot mydb
-docker-compose exec mysql80 mysql -uroot -proot mydb
-
-##### Run PHP Code Beautifier & PHP [CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer) (all files)
-
-docker-compose exec app.php81 composer app-phpcbf
-docker-compose exec app.php81 composer app-phpcs
-
-##### Run [Psalm](https://psalm.dev) - a static analysis tool for PHP (all files)
-
-docker-compose exec app.php81 composer app-psalm
-docker-compose exec app.php81 composer app-psalm-alter
-docker-compose exec app.php81 composer app-psalm-taint
-
-##### Run [PHPStan](https://phpstan.org) - PHP Static Analysis Tool (all files)
-
-docker-compose exec app.php81 composer app-phpstan
-
-##### Run [PHPMD](https://phpmd.org) - PHP Mess Detector
-
-docker-compose exec app.php81 composer app-phpmd
-
-##### Run [Phan](https://github.com/phan/phan) - PHP Phan static analyzer
-
-docker-compose exec app.php81 composer app-phan
-
-##### Run [phpDocumentor](https://www.phpdoc.org) - [phpDocumentor](https://docs.phpdoc.org/3.0/guide/references/phpdoc/tags/)
-
-docker-compose exec app.php81 composer app-phpdoc
-
-##### Run [PHPCPD](https://github.com/sebastianbergmann/phpcpd) - PHPCPD Copy/Paste Detector (CPD) for PHP code
-
-docker-compose exec app.php81 composer app-phpcpd
-
-##### Run [Pdepend](https://pdepend.org) - PHP quality of design - extensibility, reusability and maintainability
-
-docker-compose exec app.php81 composer app-pdepend
diff --git a/DCO b/DCO
deleted file mode 100644
index 0cdce0c397f..00000000000
--- a/DCO
+++ /dev/null
@@ -1,37 +0,0 @@
-Developer Certificate of Origin
-Version 1.1
-
-Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
-1 Letterman Drive
-Suite D4700
-San Francisco, CA, 94129
-
-Everyone is permitted to copy and distribute verbatim copies of this
-license document, but changing it is not allowed.
-
-
-Developer's Certificate of Origin 1.1
-
-By making a contribution to this project, I certify that:
-
-(a) The contribution was created in whole or in part by me and I
- have the right to submit it under the open source license
- indicated in the file; or
-
-(b) The contribution is based upon previous work that, to the best
- of my knowledge, is covered under an appropriate open source
- license and I have the right under that license to submit that
- work with modifications, whether created in whole or in part
- by me, under the same open source license (unless I am
- permitted to submit under a different license), as indicated
- in the file; or
-
-(c) The contribution was provided directly to me by some other
- person who certified (a), (b) or (c) and I have not modified
- it.
-
-(d) I understand and agree that this project and the contribution
- are public and that a record of the contribution (including all
- personal information I submit with it, including my sign-off) is
- maintained indefinitely and may be redistributed consistent with
- this project or the open source license(s) involved.
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index 21ac017c6d3..00000000000
--- a/LICENSE
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (c) 2022 Sergei Shilko
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/README.md b/README.md
deleted file mode 100644
index 1e5478c62d4..00000000000
--- a/README.md
+++ /dev/null
@@ -1,135 +0,0 @@
-
-MyDb - Component
-=================
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Simple PHP client for MySQL database
-
-#### Installation
-
-```
-composer require sshilko/php-sql-mydb
-```
-
-#### [Compatibility](https://sshilko.com/php-sql-mydb/php/)
-
-- PHP 8.0, 8.1, 8.2
-- MySQL >=5.7.8, 8.0
-- MariaDB not compatible (TODO)
-
-#### How this client helps you talk SQL to MySQL server
-
-- Make MySQL behave like a “traditional” SQL database system
- - `TRADITIONAL` mode, a simple description of this mode is [“give an error instead of a warning”](https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_traditional)
-- Friendly transactions
- - `autocommit = 0`
- - explicit `commit` [on gracefull shutdown](https://dev.mysql.com/doc/refman/5.7/en/innodb-autocommit-commit-rollback.html)
-- Explicit timeouts
- - 05 seconds `client-side` connect-timeout
- - 89 seconds `server-side` SELECT query timeout
- - 90 seconds `client-side` read-timeout for any query
- - 7200 seconds non-interactive connection `idle timeout`
- - `mysqlnd.net_read_timeout`
- - respect client disconnect in php-fpm `function.ignore-user-abort.php`
-- Performance boost
- - increased `MYSQLI_OPT_NET_READ_BUFFER_SIZE`
- - increased `MYSQLI_OPT_NET_CMD_BUFFER_SIZE`
- - read-only InnoDB [optimizations](https://dev.mysql.com/doc/refman/5.6/en/innodb-performance-ro-txn.html)
- - READ COMMITED session transaction isolation level for readonly connections
- - async command execution
- - move mysql resultset to PHP userspace memory `MYSQLI_STORE_RESULT_COPY_DATA`
- - use of `fetch_all` from [PHP Mysql native driver](https://www.php.net/manual/en/intro.mysqlnd.php)
-- UTF-8
- - `utf8mb4` character set
- - `UTC` timezone
-- Quality error handling
- - PHP default error-reporting `E_ALL & ~E_WARNING & ~E_NOTICE`
- - MySQL default error-reporting `MYSQLI_REPORT_ALL ^ MYSQLI_REPORT_STRICT ^ MYSQLI_REPORT_INDEX`
- - `SIGTERM, SIGINT, SIGHUP` signals trap
- - connection retry
-- PHPUnit & Static code analysis
- - unit-tested, static analysed codebase
-
-#### What is the best use-case for this library
-
-- High performance, low-latency data-intensive applications
-- No prepared statements requirement
-- No 3rd party dependencies
-- No run-time/compile-time steps
-- Easy to start with and/or [integrate](https://refactoring.guru/design-patterns/php) into existing codebase
-
-#### Out of scope
-
-This library is **not** intending to become a framework, to *keep focus* and minimize codebase, it does not provide
-
-- Input [validation](https://symfony.com/doc/current/validation.html), [API](https://refactoring.guru/design-patterns/facade) facade
-- [Object-relational mapping](https://en.wikipedia.org/wiki/Object–relational_mapping), ORM
-- [Active record](https://en.wikipedia.org/wiki/Active_record_pattern) pattern
-- [Repository](https://symfony.com/doc/current/doctrine.html#querying-for-objects-the-repository) pattern
-- Import and export of data
-
-please re-use existing solutions that best fit your requirements.
-
-#### Why this library exists
-
-* MySQL database is fast, reliable and scalable, php runtime is the same
-* Value developers time and do not add complexity where possible
-* Measure app's performance with real-world datasets and organic load
-* Optimize for my use-case, focus on bottlenecks, remember that there is no ~~NoSQL~~ silver bullet
-* Do not optimize early - resources like CPU, memory are cheap
-* Focus on building architecture, learn from others and improve over time
-
-#### Future roadmap
-
-- MariaDB compatibility layer (variables and init command syntax is different between mysql and mariadb)
-- MydbFactory responsible for initializing defaults
-
-#### Contributing
-
-* Please read [contributing](CONTRIBUTING) document
-
-#### Authors
-
-Sergei Shilko
diff --git a/build/.pre-commit-config.yaml b/build/.pre-commit-config.yaml
deleted file mode 100644
index 1995903f653..00000000000
--- a/build/.pre-commit-config.yaml
+++ /dev/null
@@ -1,70 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
----
-# https://pre-commit.com/#installation
-#default_stages: [commit, push]
-default_language_version:
- # force all unspecified Python hooks to run python3
- python: python3
-minimum_pre_commit_version: "1.20.0"
-exclude: ^(vendor/.*)$
-repos:
- - repo: local
- hooks:
- - id: php-code-syntax-check
- name: php-code-syntax-check
- entry: php -l -d display_errors=0
- language: system
- types: [php]
- - id: php-code-phpcbf
- name: php-code-phpcbf
- entry: php ./vendor/bin/phpcbf --standard=build/phpcs-ruleset.xml
- log_file: build/tmp/phpcbf.txt
- language: system
- types: [php]
- verbose: true
- - id: php-code-phpcs
- name: php-code-phpcs
- entry: php ./vendor/bin/phpcs --standard=build/phpcs-ruleset.xml
- log_file: build/tmp/phpcs.txt
- language: system
- types: [php]
- verbose: true
- - id: php-code-phpstan
- name: php-code-phpstan
- entry: php ./vendor/bin/phpstan analyse --memory-limit=256M --no-progress -c build/phpstan.neon
- log_file: build/tmp/phpstan.txt
- language: system
- types: [php]
- verbose: true
- - id: php-code-psalm-single-changed-file-check
- name: php-code-psalm-single-changed-file-check
- entry: |
- php ./vendor/bin/psalm.phar --config build/psalm.xml
- --memory-limit=256M
- --no-diff
- --long-progress
- --show-info=true
- --stats
- --disable-extension=xdebug
- language: system
- types: [php]
- verbose: false
- - repo: https://github.com/pre-commit/pre-commit-hooks
- rev: v4.0.1
- hooks:
- - id: end-of-file-fixer
- - id: fix-byte-order-marker
- - id: mixed-line-ending
- - id: trailing-whitespace
- - id: check-case-conflict
- - id: check-json
- - id: check-xml
- - id: check-yaml
diff --git a/build/Dockerfile.php.common b/build/Dockerfile.php.common
deleted file mode 100644
index 8ba7f5a0024..00000000000
--- a/build/Dockerfile.php.common
+++ /dev/null
@@ -1,83 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-LABEL author='Sergei Shilko '
-
-ENV DEBIAN_FRONTEND noninteractive
-
-# /usr/share/man/man1 needs to be created before installing openjdk-11-jre lest it will fail
-# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=863199#23
-RUN mkdir -p /usr/share/man/man1
-
-# https://wiki.ubuntu.com/ReducingDiskFootprint
-RUN set -eux; \
-echo '\n\
-path-exclude /usr/share/doc/* \n\
-path-include /usr/share/doc/*/copyright \n\
-path-exclude /usr/share/man/* \n\
-path-exclude /usr/share/groff/* \n\
-path-exclude /usr/share/info/* \n\
-path-exclude /usr/share/locale/* \n\
-path-exclude /usr/share/lintian/* \n\
-path-exclude /usr/share/linda/* \n\
-' >> /etc/dpkg/dpkg.cfg.d/01_excludes && \
- cat /etc/dpkg/dpkg.cfg.d/01_excludes && \
- echo 'APT::Install-Recommends "0";' > /etc/apt/apt.conf.d/no-recommends && \
- find /usr/share/locale -maxdepth 1 -mindepth 1 ! -name 'en' |xargs rm -rf && \
- apt-get update && \
- docker-php-ext-install -j$(nproc) mysqli && \
- docker-php-ext-install -j$(nproc) pcntl && \
- apt-get install -y --no-install-recommends \
- unzip \
- python3-pip \
- pre-commit \
- locales \
- netcat-traditional \
- git && \
- apt-get clean && \
- apt-get -y autoremove && \
- rm -rf /var/lib/{apt,cache,log}/ && \
- rm -rf /tmp/* /var/tmp/* && \
- echo "* hard nofile 524280" >> /etc/security/limits.conf && \
- echo "* soft nofile 262140" >> /etc/security/limits.conf && \
- echo 'en_US.UTF-8 UTF-8' > /etc/locale.gen && \
- /usr/sbin/locale-gen && \
- echo "TZ=Etc/UTC" >> /etc/environment && \
- echo 'Done'
-
-ENV LANG "en_US.UTF-8"
-ENV LC_ALL "en_US.UTF-8"
-ENV TZ "Etc/UTC"
-
-HEALTHCHECK --interval=10s --timeout=1s --retries=2 --start-period=5s CMD /usr/local/bin/php -v || exit 1
-WORKDIR /app
-COPY --from=0 /usr/bin/composer /usr/bin/composer
-
-#https://www.phpdoc.org
-ADD https://phpdoc.org/phpDocumentor.phar /usr/bin/phpdoc
-RUN chmod +x /usr/bin/phpdoc
-
-#phan/phan php-ast dependency
-#https://github.com/mlocati/docker-php-extension-installer
-COPY --from=mlocati/php-extension-installer:1.5.49 /usr/bin/install-php-extensions /usr/local/bin/
-RUN install-php-extensions ast
-
-ADD https://phar.phpunit.de/phpcpd.phar /usr/bin/phpcpd
-RUN chmod +x /usr/bin/phpcpd
-
-#phpunit coverage requirement
-ARG xdebug_php_extension
-RUN mkdir /root/tmp && pear config-set temp_dir /root/tmp && install-php-extensions ${xdebug_php_extension}
-ENV XDEBUG_MODE "coverage"
-
-RUN docker-php-ext-enable opcache
-
-STOPSIGNAL SIGINT
-ENTRYPOINT [ "/bin/bash" ]
-CMD ["-c", "trap exit INT; while sleep 1; do sleep 1; done;"]
diff --git a/build/Dockerfile.php74 b/build/Dockerfile.php74
deleted file mode 100644
index 28c049e3a64..00000000000
--- a/build/Dockerfile.php74
+++ /dev/null
@@ -1,16 +0,0 @@
-# syntax = edrevo/dockerfile-plus
-
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-FROM --platform=linux/amd64 library/composer:2.0
-FROM --platform=linux/amd64 library/php:7.4-cli
-INCLUDE+ Dockerfile.php.common
-
-# Change this line to invalidate github workflow cache for app/php-image-cache:latest .
diff --git a/build/Dockerfile.php80 b/build/Dockerfile.php80
deleted file mode 100644
index 72c2eb86e13..00000000000
--- a/build/Dockerfile.php80
+++ /dev/null
@@ -1,14 +0,0 @@
-# syntax = edrevo/dockerfile-plus
-
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-FROM --platform=linux/amd64 library/composer:2.4
-FROM --platform=linux/amd64 library/php:8.0-cli
-INCLUDE+ Dockerfile.php.common
diff --git a/build/Dockerfile.php81 b/build/Dockerfile.php81
deleted file mode 100644
index 6d6689a8597..00000000000
--- a/build/Dockerfile.php81
+++ /dev/null
@@ -1,14 +0,0 @@
-# syntax = edrevo/dockerfile-plus
-
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-FROM --platform=linux/amd64 library/composer:2.4
-FROM --platform=linux/amd64 library/php:8.1-cli
-INCLUDE+ Dockerfile.php.common
diff --git a/build/Dockerfile.php82 b/build/Dockerfile.php82
deleted file mode 100644
index 08e15a5463e..00000000000
--- a/build/Dockerfile.php82
+++ /dev/null
@@ -1,14 +0,0 @@
-# syntax = edrevo/dockerfile-plus
-
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-FROM --platform=linux/amd64 library/composer:latest
-FROM --platform=linux/amd64 library/php:8.2-cli
-INCLUDE+ Dockerfile.php.common
diff --git a/build/README.md b/build/README.md
deleted file mode 100644
index 6d1360bfa66..00000000000
--- a/build/README.md
+++ /dev/null
@@ -1,33 +0,0 @@
-
-#### Code quality configuration
-
-- [Pre-commit](https://pre-commit.com/)
-- [PHPCS CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer)
-- [PHPCS CodeBeautifier](https://github.com/squizlabs/PHP_CodeSniffer)
-- [PHP MessDetector](https://phpmd.org/)
-- [PHP Psalm](https://psalm.dev/)
-- [phpDocumentor](https://www.phpdoc.org)
-- [phan/phan](https://github.com/phan/phan)
-- [PHPCPD](https://github.com/sebastianbergmann/phpcpd)
-
-#### Artifacts and other metadata expects few github branches to exist
-
-- pages
-
-Use following commands to pre-create branches
-```
-git switch --orphan
-git commit --allow-empty -m "Initial commit on empty branch"
-git push -u origin
-```
\ No newline at end of file
diff --git a/build/docker-compose.yaml b/build/docker-compose.yaml
deleted file mode 100644
index edbdafbf5d6..00000000000
--- a/build/docker-compose.yaml
+++ /dev/null
@@ -1,122 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-x-app: &app
- pull_policy: never
- #container_name: app
- tty: true
- stdin_open: true
- dns: 1.1.1.1
- dns_opt:
- - use-vc
- stop_grace_period: 4s
- platform: linux/amd64
- logging:
- options:
- max-size: "1m"
- max-file: "2"
- healthcheck:
- test: ["CMD", "nc", "-w1", "-zv", "mysql", "3306"]
- #test: ["CMD", "php", "examples/example.php"]
- timeout: 2s
- start_period: 5s
- interval: 2s
- retries: 3
- cpus: 1.5
- mem_limit: "1100M"
- pids_limit: 100
- ulimits:
- nproc: 65535
- nofile:
- soft: 262140
- hard: 262140
- tmpfs:
- - /tmp
- volumes:
- - ./php.ini:/usr/local/etc/php/php.ini:ro,cached
- - ./../:/app:rw,cached
- sysctls:
- net.ipv4.tcp_synack_retries: 2 # Number of times SYNACKs for passive TCP connection.
- net.ipv4.ip_local_port_range: '2000 65535' # Allowed local port range
- net.ipv4.tcp_rfc1337: 1 # Protect Against TCP Time-Wait
- net.ipv4.tcp_fin_timeout: 15 # Decrease the time default value for tcp_fin_timeout connection
-# fs.file-max: 2097152 # Increase size of file handles and inode cache
-# vm.swappiness: 10 # Do less swapping
-# vm.dirty_ratio: 60 # Do less swapping
-# vm.dirty_background_ratio: 2 # Do less swapping
-
- net.ipv4.tcp_keepalive_time: 300 # Decrease the time default value for connections to keep alive
- net.ipv4.tcp_keepalive_probes: 5 # Decrease the time default value for connections to keep alive
- net.ipv4.tcp_keepalive_intvl: 15 # Decrease the time default value for connections to keep alive
-# net.core.rmem_default: 31457280 # Default Socket Receive Buffer
-# net.core.rmem_max: 12582912 # Maximum Socket Receive Buffer
-# net.core.wmem_default: 31457280 # Default Socket Send Buffer
-# net.core.wmem_max: 12582912 # Maximum Socket Send Buffer
- net.core.somaxconn: 4096 # Increase number of incoming connections
-# net.core.netdev_max_backlog: 65536 # Increase number of incoming connections backlog
-# net.core.optmem_max: 25165824 # Increase the maximum amount of option memory buffers
-# net.ipv4.tcp_mem: '65536 131072 262144' # Increase the maximum total buffer-space allocatable
-# net.ipv4.udp_mem: '65536 131072 262144' # This is measured in units of pages (4096 bytes)
- net.ipv4.tcp_rmem: 8192 87380 16777216 # Increase the read-buffer space allocatable
- net.ipv4.udp_rmem_min: 16384 # Increase the read-buffer space allocatable
- net.ipv4.tcp_wmem: 8192 65536 16777216 # Increase the write-buffer-space allocatable
- net.ipv4.udp_wmem_min: 16384 # Increase the write-buffer-space allocatable
- net.ipv4.tcp_max_tw_buckets: 1440000 # Increase the tcp-time-wait buckets pool size to prevent simple DOS attacks
-# net.ipv4.tcp_tw_recycle: 1 # Increase the tcp-time-wait buckets pool size to prevent simple DOS attacks
- net.ipv4.tcp_tw_reuse: 1 # Increase the tcp-time-wait buckets pool size to prevent simple DOS attacks
-
- environment:
- XDEBUG_MODE: "off"
- COMPOSER_NO_AUDIT: "1"
- COMPOSER_PROCESS_TIMEOUT: 300
- COMPOSER_NO_INTERACTION: "1"
- COMPOSER_DISABLE_XDEBUG_WARN: "1"
- extra_hosts:
- - "host.docker.internal:host-gateway"
- restart: on-failure:2
-
-version: "3.7"
-services:
- app.php:
- <<: *app
- image: app/php
- container_name: app.php
- build:
- context: .
- dockerfile: Dockerfile.php74
- args:
- xdebug_php_extension: xdebug-3.0.0
- app.php80:
- <<: *app
- image: app/php80
- container_name: app.php80
- build:
- context: .
- dockerfile: Dockerfile.php80
- args:
- xdebug_php_extension: xdebug-3.1.6
- app.php81:
- <<: *app
- image: app/php81
- container_name: app.php81
- build:
- context: .
- dockerfile: Dockerfile.php81
- args:
- xdebug_php_extension: xdebug-3.1.6
- app.php82:
- <<: *app
- image: app/php82
- container_name: app.php82
- build:
- context: .
- dockerfile: Dockerfile.php82
- args:
- xdebug_php_extension: xdebug-3.2.0
-
diff --git a/build/pdepend.xml b/build/pdepend.xml
deleted file mode 100644
index 93b81fee98f..00000000000
--- a/build/pdepend.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
- Arial
- 14
-
-
-
- file
-
-
-
-
\ No newline at end of file
diff --git a/build/phan.php b/build/phan.php
deleted file mode 100644
index 8ebe4701c8c..00000000000
--- a/build/phan.php
+++ /dev/null
@@ -1,334 +0,0 @@
-
- *
- * MIT License
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- * @license https://opensource.org/licenses/mit-license.php MIT
- */
-
-declare(strict_types = 1);
-
-use Phan\Issue;
-
-/**
- * This configuration will be read and overlaid on top of the
- * default configuration. Command-line arguments will be applied
- * after this file is read.
- * @phpcs:disable
- * @see https://github.com/phan/phan/blob/master/internal/CLI-HELP.md
- */
-return [
- // The number of processes to fork off during the analysis
- // phase.
- 'processes' => 1,
-
- // The minimum severity level to report on. This can be
- // set to Issue::SEVERITY_LOW, Issue::SEVERITY_NORMAL or
- // Issue::SEVERITY_CRITICAL.
- 'minimum_severity' => Issue::SEVERITY_LOW,
-
- 'suppress_issue_types' => [
- 'PhanParamNameIndicatingUnusedInClosure'
- ],
-
- // Supported values: `'5.6'`, `'7.0'`, `'7.1'`, `'7.2'`, `'7.3'`,
- // `'7.4'`, `'8.0'`, `'8.1'`, `null`.
- // If this is set to `null`,
- // then Phan assumes the PHP version which is closest to the minor version
- // of the php executable used to execute Phan.
- //
- // Note that the **only** effect of choosing `'5.6'` is to infer
- // that functions removed in php 7.0 exist.
- // (See `backward_compatibility_checks` for additional options)
- // TODO: Set this.
- 'target_php_version' => '8.1',
- 'minimum_target_php_version' => '8.0',
-
- // A list of directories that should be parsed for class and
- // method information. After excluding the directories
- // defined in exclude_analysis_directory_list, the remaining
- // files will be statically analyzed for errors.
- //
- // Thus, both first-party and third-party code being used by
- // your application should be included in this list.
- 'directory_list' => [
- 'src',
- 'vendor',
- ],
-
- // A regex used to match every file name that you want to
- // exclude from parsing. Actual value will exclude every
- // "test", "tests", "Test" and "Tests" folders found in
- // "vendor/" directory.
- 'exclude_file_regex' => '@^vendor/.*/(tests?|Tests?)/@',
-
- // A directory list that defines files that will be excluded
- // from static analysis, but whose class and method
- // information should be included.
- //
- // Generally, you'll want to include the directories for
- // third-party code (such as "vendor/") in this list.
- //
- // n.b.: If you'd like to parse but not analyze 3rd
- // party code, directories containing that code
- // should be added to both the `directory_list`
- // and `exclude_analysis_directory_list` arrays.
- 'exclude_analysis_directory_list' => [
- 'vendor/',
- ],
-
- # ------------------------------------------------------
- # ADVANCED SETTINGS ------------------------------------
- # ------------------------------------------------------
-
- // Default: true. If this is set to true,
- // and target_php_version is newer than the version used to run Phan,
- // Phan will act as though functions added in newer PHP versions exist.
- //
- // NOTE: Currently, this only affects Closure::fromCallable
- 'pretend_newer_core_functions_exist' => true,
-
- // If true, missing properties will be created when
- // they are first seen. If false, we'll report an
- // error message.
- 'allow_missing_properties' => false,
-
- // Allow null to be cast as any type and for any
- // type to be cast to null.
- 'null_casts_as_any_type' => false,
-
- // Allow null to be cast as any array-like type
- // This is an incremental step in migrating away from null_casts_as_any_type.
- // If null_casts_as_any_type is true, this has no effect.
- 'null_casts_as_array' => false,
-
- // Allow any array-like type to be cast to null.
- // This is an incremental step in migrating away from null_casts_as_any_type.
- // If null_casts_as_any_type is true, this has no effect.
- 'array_casts_as_null' => false,
-
- // If enabled, Phan will warn if **any** type in a method invocation's object
- // is definitely not an object,
- // or if **any** type in an invoked expression is not a callable.
- // Setting this to true will introduce numerous false positives
- // (and reveal some bugs).
- 'strict_method_checking' => true,
-
- // If enabled, Phan will warn if **any** type in the argument's union type
- // cannot be cast to a type in the parameter's expected union type.
- // Setting this to true will introduce numerous false positives
- // (and reveal some bugs).
- 'strict_param_checking' => true,
-
- // If enabled, Phan will warn if **any** type in a property assignment's union type
- // cannot be cast to a type in the property's declared union type.
- // Setting this to true will introduce numerous false positives
- // (and reveal some bugs).
- // (For self-analysis, Phan has a large number of suppressions and file-level suppressions, due to \ast\Node being difficult to type check)
- 'strict_property_checking' => true,
-
- // If enabled, Phan will warn if **any** type in a returned value's union type
- // cannot be cast to the declared return type.
- // Setting this to true will introduce numerous false positives
- // (and reveal some bugs).
- // (For self-analysis, Phan has a large number of suppressions and file-level suppressions, due to \ast\Node being difficult to type check)
- 'strict_return_checking' => true,
-
- // If enabled, Phan will warn if **any** type of the object expression for a property access
- // does not contain that property.
- 'strict_object_checking' => true,
-
- // If enabled, scalars (int, float, bool, string, null)
- // are treated as if they can cast to each other.
- // This does not affect checks of array keys. See `scalar_array_key_cast`.
- 'scalar_implicit_cast' => false,
-
- // If enabled, any scalar array keys (int, string)
- // are treated as if they can cast to each other.
- // E.g. `array` can cast to `array` and vice versa.
- // Normally, a scalar type such as int could only cast to/from int and mixed.
- 'scalar_array_key_cast' => false,
-
- // If this has entries, scalars (int, float, bool, string, null)
- // are allowed to perform the casts listed.
- //
- // E.g. `['int' => ['float', 'string'], 'float' => ['int'], 'string' => ['int'], 'null' => ['string']]`
- // allows casting null to a string, but not vice versa.
- // (subset of `scalar_implicit_cast`)
- 'scalar_implicit_partial' => [],
-
- // If true, Phan will convert the type of a possibly undefined array offset to the nullable, defined equivalent.
- // If false, Phan will convert the type of a possibly undefined array offset to the defined equivalent (without converting to nullable).
- 'convert_possibly_undefined_offset_to_nullable' => false,
-
- // If true, seemingly undeclared variables in the global
- // scope will be ignored.
- //
- // This is useful for projects with complicated cross-file
- // globals that you have no hope of fixing.
- 'ignore_undeclared_variables_in_global_scope' => false,
-
- // Backwards Compatibility Checking (This is very slow)
- 'backward_compatibility_checks' => false,
-
- // If true, check to make sure the return type declared
- // in the doc-block (if any) matches the return type
- // declared in the method signature.
- 'check_docblock_signature_return_type_match' => true,
-
- // If true, check to make sure the param types declared
- // in the doc-block (if any) matches the param types
- // declared in the method signature.
- 'check_docblock_signature_param_type_match' => true,
-
- // If true, make narrowed types from phpdoc params override
- // the real types from the signature, when real types exist.
- // (E.g. allows specifying desired lists of subclasses,
- // or to indicate a preference for non-nullable types over nullable types)
- //
- // Affects analysis of the body of the method and the param types passed in by callers.
- //
- // (*Requires `check_docblock_signature_param_type_match` to be true*)
- 'prefer_narrowed_phpdoc_param_type' => true,
-
- // (*Requires `check_docblock_signature_return_type_match` to be true*)
- //
- // If true, make narrowed types from phpdoc returns override
- // the real types from the signature, when real types exist.
- //
- // (E.g. allows specifying desired lists of subclasses,
- // or to indicate a preference for non-nullable types over nullable types)
- // Affects analysis of return statements in the body of the method and the return types passed in by callers.
- 'prefer_narrowed_phpdoc_return_type' => true,
-
- // If enabled, check all methods that override a
- // parent method to make sure its signature is
- // compatible with the parent's. This check
- // can add quite a bit of time to the analysis.
- // This will also check if final methods are overridden, etc.
- 'analyze_signature_compatibility' => true,
-
- // Set this to true to make Phan guess that undocumented parameter types
- // (for optional parameters) have the same type as default values
- // (Instead of combining that type with `mixed`).
- // E.g. `function($x = 'val')` would make Phan infer that $x had a type of `string`, not `string|mixed`.
- // Phan will not assume it knows specific types if the default value is false or null.
- 'guess_unknown_parameter_type_using_default' => false,
-
- // Allow adding types to vague return types such as @return object, @return ?mixed in function/method/closure union types.
- // Normally, Phan only adds inferred returned types when there is no `@return` type or real return type signature..
- // This setting can be disabled on individual methods by adding `@phan-hardcode-return-type` to the doc comment.
- //
- // Disabled by default. This is more useful with `--analyze-twice`.
- 'allow_overriding_vague_return_types' => true,
-
- // When enabled, infer that the types of the properties of `$this` are equal to their default values at the start of `__construct()`.
- // This will have some false positives due to Phan not checking for setters and initializing helpers.
- // This does not affect inherited properties.
- 'infer_default_properties_in_construct' => true,
-
- // Set this to true to enable the plugins that Phan uses to infer more accurate return types of `implode`, `json_decode`, and many other functions.
- //
- // Phan is slightly faster when these are disabled.
- 'enable_extended_internal_return_type_plugins' => true,
-
- // This setting maps case-insensitive strings to union types.
- //
- // This is useful if a project uses phpdoc that differs from the phpdoc2 standard.
- //
- // If the corresponding value is the empty string,
- // then Phan will ignore that union type (E.g. can ignore 'the' in `@return the value`)
- //
- // If the corresponding value is not empty,
- // then Phan will act as though it saw the corresponding UnionTypes(s)
- // when the keys show up in a UnionType of `@param`, `@return`, `@var`, `@property`, etc.
- //
- // This matches the **entire string**, not parts of the string.
- // (E.g. `@return the|null` will still look for a class with the name `the`, but `@return the` will be ignored with the below setting)
- //
- // (These are not aliases, this setting is ignored outside of doc comments).
- // (Phan does not check if classes with these names exist)
- //
- // Example setting: `['unknown' => '', 'number' => 'int|float', 'char' => 'string', 'long' => 'int', 'the' => '']`
- 'phpdoc_type_mapping' => [ ],
-
- // Set to true in order to attempt to detect dead
- // (unreferenced) code. Keep in mind that the
- // results will only be a guess given that classes,
- // properties, constants and methods can be referenced
- // as variables (like `$class->$property` or
- // `$class->$method()`) in ways that we're unable
- // to make sense of.
- //
- // To more aggressively detect dead code,
- // you may want to set `dead_code_detection_prefer_false_negative` to `false`.
- 'dead_code_detection' => false,
-
- // Set to true in order to attempt to detect unused variables.
- // `dead_code_detection` will also enable unused variable detection.
- //
- // This has a few known false positives, e.g. for loops or branches.
- 'unused_variable_detection' => false,
-
- // Set to true in order to force tracking references to elements
- // (functions/methods/consts/protected).
- // dead_code_detection is another option which also causes references
- // to be tracked.
- 'force_tracking_references' => false,
-
- // Set to true in order to attempt to detect redundant and impossible conditions.
- //
- // This has some false positives involving loops,
- // variables set in branches of loops, and global variables.
- 'redundant_condition_detection' => true,
-
- // Set to true in order to attempt to detect error-prone truthiness/falsiness checks.
- //
- // This is not suitable for all codebases.
- 'error_prone_truthy_condition_detection' => true,
-
- // Enable this to warn about harmless redundant use for classes and namespaces such as `use Foo\bar` in namespace Foo.
- //
- // Note: This does not affect warnings about redundant uses in the global namespace.
- 'warn_about_redundant_use_namespaced_class' => true,
-
- // If true, then run a quick version of checks that takes less time.
- // False by default.
- 'quick_mode' => false,
-
- // If true, then before analysis, try to simplify AST into a form
- // which improves Phan's type inference in edge cases.
- //
- // This may conflict with 'dead_code_detection'.
- // When this is true, this slows down analysis slightly.
- //
- // E.g. rewrites `if ($a = value() && $a > 0) {...}`
- // into $a = value(); if ($a) { if ($a > 0) {...}}`
- 'simplify_ast' => true,
-
- // If true, Phan will read `class_alias` calls in the global scope,
- // then (1) create aliases from the *parsed* files if no class definition was found,
- // and (2) emit issues in the global scope if the source or target class is invalid.
- // (If there are multiple possible valid original classes for an aliased class name,
- // the one which will be created is unspecified.)
- // NOTE: THIS IS EXPERIMENTAL, and the implementation may change.
- 'enable_class_alias_support' => false,
-
- // Enable or disable support for generic templated
- // class types.
- 'generic_types_enabled' => true,
-
- // If enabled, warn about throw statement where the exception types
- // are not documented in the PHPDoc of functions, methods, and closures.
- 'warn_about_undocumented_throw_statements' => true,
-
- // If enabled (and warn_about_undocumented_throw_statements is enabled),
- // warn about function/closure/method calls that have (at)throws
- // without the invoking method documenting that exception.
- 'warn_about_undocumented_exceptions_thrown_by_invoked_functions' => true,
-];
diff --git a/build/php.ini b/build/php.ini
deleted file mode 100644
index cfc6a547d36..00000000000
--- a/build/php.ini
+++ /dev/null
@@ -1,75 +0,0 @@
-;This file is part of the sshilko/php-sql-mydb package.
-;
-;(c) Sergei Shilko
-;
-;MIT License
-;
-;For the full copyright and license information, please view the LICENSE
-;file that was distributed with this source code.
-;@license https://opensource.org/licenses/mit-license.php MIT
-[VERBOSE]
-display_errors=false
-error_reporting=E_ALL & ~E_DEPRECATED & ~E_NOTICE & ~E_STRICT
-expose_php=false
-log_errors_max_len=8192
-log_errors=true
-[RUNTIME]
-memory_limit=536870912
-max_execution_time=901
-zend.enable_gc=1
-zend.detect_unicode=0
-zend.assertions=-1
-default_charset=UTF-8
-date.timezone=UTC
-[IO]
-always_populate_raw_post_data=-1
-enable_post_data_reading=0
-max_input_time=20
-max_input_vars=100
-post_max_size=1M
-max_file_uploads=2
-upload_max_filesize=100K
-error_log=/dev/null
-[FILES]
-cgi.fix_pathinfo=1
-realpath_cache_size=256k
-realpath_cache_ttl=86400
-include_path=.
-user_ini.cache_ttl=86400
-[SESSION]
-session.auto_start=false
-session.cache_expire=300
-session.use_cookies=false
-session.lazy_write=1
-session.upload_progress.enabled=false
-[OPCACHE]
-opcache.enable_file_override=1
-opcache.memory_consumption=96
-opcache.interned_strings_buffer=16
-opcache.max_accelerated_files=7963
-opcache.save_comments=1
-opcache.consistency_checks=0
-opcache.enable=1
-opcache.enable_cli=1
-opcache.optimization_level=0xFFFFFFFF
-opcache.huge_code_pages=0
-opcache.revalidate_freq=2
-opcache.validate_timestamps=1
-;opcache.blacklist_filename=/tmp/opcache.blacklist_filename
-[JIT]
-opcache.jit_buffer_size=100M
-opcache.jit=0202
-[MYSQLND]
-mysqli.allow_persistent=true
-mysqli.reconnect=Off
-mysqlnd.collect_statistics=0
-mysqlnd.net_cmd_buffer_size=6144
-mysqlnd.net_read_buffer_size=49152
-mysqlnd.net_read_timeout=899
-mysqlnd.collect_memory_statistics=0
-;default mysql connection options
-mysqli.default_host='127.0.0.1'
-mysqli.default_user='default_user'
-mysqli.default_pw='default_pw'
-mysqli.default_port='3306'
-
diff --git a/build/phpcs-ruleset.xml b/build/phpcs-ruleset.xml
deleted file mode 100644
index e9295f1eb43..00000000000
--- a/build/phpcs-ruleset.xml
+++ /dev/null
@@ -1,302 +0,0 @@
-
-
-
-PSR1, PSR2, PSR-12, Squizlabs, SlevomatCodingStandard
-
-
-
- */vendor/*
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
-
-
- 5
-
-
- 5
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
-
-
- 5
-
-
-
-
-
- 5
-
-
- 5
-
-
- 5
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 9
- warning
-
-
- 9
- warning
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
-
-
-
-
-
-
-
-
- 0
-
-
diff --git a/build/phpdoc.xml b/build/phpdoc.xml
deleted file mode 100644
index a811d9dcce1..00000000000
--- a/build/phpdoc.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
- phpDocumentor
-
-
- tmp/phpdoc-cache
-
-
- latest
-
-
- src
-
- Application
-
- TODO
- FIXME
-
-
-
-
diff --git a/build/phpmd-rulesets.xml b/build/phpmd-rulesets.xml
deleted file mode 100644
index 4e96e2e1d96..00000000000
--- a/build/phpmd-rulesets.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
-
- 25
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/phpstan.neon b/build/phpstan.neon
deleted file mode 100644
index 48bfde72eee..00000000000
--- a/build/phpstan.neon
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of the sshilko/php-sql-mydb package.
-#
-# (c) Sergei Shilko
-#
-# MIT License
-#
-# For the full copyright and license information, please view the LICENSE
-# file that was distributed with this source code.
-# @license https://opensource.org/licenses/mit-license.php MIT
-parameters:
- level: 0
- tmpDir: tmp
- paths:
- - ../src
- bootstrapFiles:
- - ../test/phpunit.xml.bootstrap.php
- excludePaths:
- - ../test/*
- parallel:
- maximumNumberOfProcesses: 4
- processTimeout: 300.0
diff --git a/build/psalm.xml b/build/psalm.xml
deleted file mode 100644
index ef7df8f0a83..00000000000
--- a/build/psalm.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/tmp/.gitignore b/build/tmp/.gitignore
deleted file mode 100644
index c96a04f008e..00000000000
--- a/build/tmp/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
\ No newline at end of file
diff --git a/composer.json b/composer.json
deleted file mode 100644
index 620be13ff34..00000000000
--- a/composer.json
+++ /dev/null
@@ -1,160 +0,0 @@
-{
- "name": "sshilko/php-sql-mydb",
- "type": "library",
- "description": "Simple yet powerful PHP wrapper for MySQL",
- "license": "MIT",
- "authors": [
- {
- "name": "Sergei Shilko",
- "email": "contact@sshilko.com",
- "homepage": "https://github.com/sshilko",
- "role": "Developer"
- }
- ],
- "keywords": ["mysql", "php", "database", "mysqli", "pdo", "mysqlnd"],
- "config": {
- "vendor-dir": "vendor",
- "preferred-install": {
- "*": "dist"
- },
- "prepend-autoloader": false,
- "optimize-autoloader": true,
- "classmap-authoritative": false,
- "process-timeout": 360,
- "sort-packages": true,
- "allow-plugins": {
- "dealerdirect/phpcodesniffer-composer-installer": true
- }
- },
- "scripts": {
- "app-pre-commit": [
- "@putenv XDEBUG_MODE=off",
- "pre-commit run --config build/.pre-commit-config.yaml"
- ],
- "app-quality": [
- "@app-phpcbf",
- "@app-phpcs",
- "@app-phpcpd",
- "@app-pdepend",
- "@app-phpmd",
- "@app-phpstan",
- "@app-psalm-alter",
- "@app-psalm-taint",
- "@app-psalm",
- "@app-phan"
- ],
- "app-psalm":[
- "@putenv XDEBUG_MODE=off",
- "php ./vendor/bin/psalm.phar --php-version=$(php -r 'echo PHP_VERSION;') --config build/psalm.xml --memory-limit=-1 --no-diff --show-info=true --long-progress --stats --disable-extension=xdebug --report=$PWD/build/tmp/psalm.txt $1"
- ],
- "app-psalm-alter": [
- "@putenv XDEBUG_MODE=off",
- "php ./vendor/bin/psalm.phar --php-version=$(php -r 'echo PHP_VERSION;') --config build/psalm.xml --alter --issues=MissingParamType,MissingReturnType,InvalidReturnType,InvalidNullableReturnType,InvalidFalsableReturnType,PossiblyUndefinedVariable,UnnecessaryVarAnnotation,ParamNameMismatch"
- ],
- "app-psalm-taint": [
- "@putenv XDEBUG_MODE=off",
- "php ./vendor/bin/psalm.phar --php-version=$(php -r 'echo PHP_VERSION;') --config build/psalm.xml --taint-analysis --long-progress --disable-extension=xdebug"
- ],
- "app-phpcbf":[
- "@putenv XDEBUG_MODE=off",
- "pre-commit run --all-files --config build/.pre-commit-config.yaml php-code-phpcbf"
- ],
- "app-phpcs":[
- "@putenv XDEBUG_MODE=off",
- "pre-commit run --all-files --config build/.pre-commit-config.yaml php-code-phpcs"
- ],
- "app-phpstan":[
- "@putenv XDEBUG_MODE=off",
- "pre-commit run --all-files --config build/.pre-commit-config.yaml php-code-phpstan"
- ],
- "app-phpmd": [
- "@putenv XDEBUG_MODE=off",
- "php ./vendor/phpmd/phpmd/src/bin/phpmd --reportfile build/tmp/phpmd.txt src/ ansi build/phpmd-rulesets.xml; cat build/tmp/phpmd.txt"
- ],
- "app-phpunit": [
- "@app-phpunit-mysql57",
- "@app-phpunit-mysql80"
- ],
- "app-phpunit-mysql57": [
- "@putenv XDEBUG_MODE=off",
- "@putenv PHPUNIT_MYSQL_MYDB1_HOST=mysql",
- "php ./vendor/phpunit/phpunit/phpunit --no-coverage --configuration test/phpunit.xml $1"
- ],
- "app-phpunit-mysql80": [
- "@putenv XDEBUG_MODE=off",
- "@putenv PHPUNIT_MYSQL_MYDB1_HOST=mysql80",
- "php ./vendor/phpunit/phpunit/phpunit --no-coverage --configuration test/phpunit.xml $1"
- ],
- "app-phpunit-maria10": [
- "@putenv XDEBUG_MODE=off",
- "@putenv PHPUNIT_MYSQL_MYDB1_HOST=maria10",
- "php ./vendor/phpunit/phpunit/phpunit --no-coverage --configuration test/phpunit.xml $1"
- ],
- "app-phpunit-mysql57-coverage": [
- "@putenv XDEBUG_MODE=coverage",
- "@putenv PHPUNIT_MYSQL_MYDB1_HOST=mysql",
- "php ./vendor/phpunit/phpunit/phpunit --configuration test/phpunit.xml"
- ],
- "app-phpunit-mysql80-coverage": [
- "@putenv XDEBUG_MODE=coverage",
- "@putenv PHPUNIT_MYSQL_MYDB1_HOST=mysql80",
- "php ./vendor/phpunit/phpunit/phpunit --configuration test/phpunit.xml"
- ],
- "app-phpunit-maria10-coverage": [
- "@putenv XDEBUG_MODE=coverage",
- "@putenv PHPUNIT_MYSQL_MYDB1_HOST=maria10",
- "php ./vendor/phpunit/phpunit/phpunit --configuration test/phpunit.xml"
- ],
- "app-phpunit-badges-coverage": [
- "@putenv XDEBUG_MODE=off",
- "php test/phpunit.xml.badges.php"
- ],
- "app-phpdoc": [
- "@putenv XDEBUG_MODE=off",
- "/usr/bin/phpdoc --config /app/build/phpdoc.xml"
- ],
- "app-phan": [
- "@putenv XDEBUG_MODE=off",
- "@putenv PHAN_DISABLE_XDEBUG_WARN=1",
- "@putenv PHAN_ALLOW_XDEBUG=1",
- "php ./vendor/bin/phan --disable-plugins --color -k ./build/phan.php --output-mode html -o build/tmp/phan.html --long-progress-bar; cat build/tmp/phan.html"
- ],
- "app-phpcpd": [
- "@putenv XDEBUG_MODE=off",
- "php /usr/bin/phpcpd src"
- ],
- "app-pdepend": [
- "@putenv XDEBUG_MODE=off",
- "php ./vendor/bin/pdepend --configuration=$PWD/build/pdepend.xml --dependency-xml=$PWD/build/tmp/pdepend-dependency-xml.xml --jdepend-chart=$PWD/build/tmp/pdepend-jdepend-chart.svg --jdepend-xml=$PWD/build/tmp/pdepend-jdepend-xml.xml --summary-xml=$PWD/build/tmp/pdepend-summary-xml.xml --overview-pyramid=$PWD/build/tmp/pdepend-overview-pyramid.svg src"
- ]
- },
- "minimum-stability": "dev",
- "prefer-stable": true,
- "require-dev": {
- "ext-posix": "*",
- "ext-ast": "*",
- "nikic/php-parser": "^4",
- "pdepend/pdepend": "^2.12",
- "phan/phan": "^5.4",
- "phpmd/phpmd": "^2.13",
- "phpstan/phpstan": "^1.8",
- "phpunit/phpunit": "^9.5",
- "psalm/phar": "*",
- "slevomat/coding-standard": "^8.4",
- "squizlabs/php_codesniffer": "^3.8",
- "composer/composer": "^2"
- },
- "require": {
- "php": "^8.0 || ^8.1 || ^8.2",
- "ext-mysqli": "*",
- "ext-mysqlnd": "*",
- "ext-pcntl": "*",
- "psr/log": "^1",
- "composer-plugin-api": "^2"
- },
- "autoload": {
- "psr-4": {
- "sql\\": "src/sql"
- }
- }
-}
diff --git a/composer.lock b/composer.lock
deleted file mode 100644
index 216a222eaf2..00000000000
--- a/composer.lock
+++ /dev/null
@@ -1,5196 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
- "This file is @generated automatically"
- ],
- "content-hash": "0ad9d68f0842fd9264d83c58ced66d80",
- "packages": [
- {
- "name": "psr/log",
- "version": "1.1.4",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "d49695b909c3b7628b6289db5479a1c204601f11"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11",
- "reference": "d49695b909c3b7628b6289db5479a1c204601f11",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Log\\": "Psr/Log/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "https://www.php-fig.org/"
- }
- ],
- "description": "Common interface for logging libraries",
- "homepage": "https://github.com/php-fig/log",
- "keywords": [
- "log",
- "psr",
- "psr-3"
- ],
- "support": {
- "source": "https://github.com/php-fig/log/tree/1.1.4"
- },
- "time": "2021-05-03T11:20:27+00:00"
- }
- ],
- "packages-dev": [
- {
- "name": "composer/ca-bundle",
- "version": "1.4.0",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/ca-bundle.git",
- "reference": "b66d11b7479109ab547f9405b97205640b17d385"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/ca-bundle/zipball/b66d11b7479109ab547f9405b97205640b17d385",
- "reference": "b66d11b7479109ab547f9405b97205640b17d385",
- "shasum": ""
- },
- "require": {
- "ext-openssl": "*",
- "ext-pcre": "*",
- "php": "^5.3.2 || ^7.0 || ^8.0"
- },
- "require-dev": {
- "phpstan/phpstan": "^0.12.55",
- "psr/log": "^1.0",
- "symfony/phpunit-bridge": "^4.2 || ^5",
- "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Composer\\CaBundle\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be"
- }
- ],
- "description": "Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.",
- "keywords": [
- "cabundle",
- "cacert",
- "certificate",
- "ssl",
- "tls"
- ],
- "support": {
- "irc": "irc://irc.freenode.org/composer",
- "issues": "https://github.com/composer/ca-bundle/issues",
- "source": "https://github.com/composer/ca-bundle/tree/1.4.0"
- },
- "funding": [
- {
- "url": "https://packagist.com",
- "type": "custom"
- },
- {
- "url": "https://github.com/composer",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/composer/composer",
- "type": "tidelift"
- }
- ],
- "time": "2023-12-18T12:05:55+00:00"
- },
- {
- "name": "composer/class-map-generator",
- "version": "1.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/class-map-generator.git",
- "reference": "953cc4ea32e0c31f2185549c7d216d7921f03da9"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/class-map-generator/zipball/953cc4ea32e0c31f2185549c7d216d7921f03da9",
- "reference": "953cc4ea32e0c31f2185549c7d216d7921f03da9",
- "shasum": ""
- },
- "require": {
- "composer/pcre": "^2.1 || ^3.1",
- "php": "^7.2 || ^8.0",
- "symfony/finder": "^4.4 || ^5.3 || ^6 || ^7"
- },
- "require-dev": {
- "phpstan/phpstan": "^1.6",
- "phpstan/phpstan-deprecation-rules": "^1",
- "phpstan/phpstan-phpunit": "^1",
- "phpstan/phpstan-strict-rules": "^1.1",
- "symfony/filesystem": "^5.4 || ^6",
- "symfony/phpunit-bridge": "^5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Composer\\ClassMapGenerator\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "https://seld.be"
- }
- ],
- "description": "Utilities to scan PHP code and generate class maps.",
- "keywords": [
- "classmap"
- ],
- "support": {
- "issues": "https://github.com/composer/class-map-generator/issues",
- "source": "https://github.com/composer/class-map-generator/tree/1.1.0"
- },
- "funding": [
- {
- "url": "https://packagist.com",
- "type": "custom"
- },
- {
- "url": "https://github.com/composer",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/composer/composer",
- "type": "tidelift"
- }
- ],
- "time": "2023-06-30T13:58:57+00:00"
- },
- {
- "name": "composer/composer",
- "version": "2.6.6",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/composer.git",
- "reference": "683557bd2466072777309d039534bb1332d0dda5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/composer/zipball/683557bd2466072777309d039534bb1332d0dda5",
- "reference": "683557bd2466072777309d039534bb1332d0dda5",
- "shasum": ""
- },
- "require": {
- "composer/ca-bundle": "^1.0",
- "composer/class-map-generator": "^1.0",
- "composer/metadata-minifier": "^1.0",
- "composer/pcre": "^2.1 || ^3.1",
- "composer/semver": "^3.2.5",
- "composer/spdx-licenses": "^1.5.7",
- "composer/xdebug-handler": "^2.0.2 || ^3.0.3",
- "justinrainbow/json-schema": "^5.2.11",
- "php": "^7.2.5 || ^8.0",
- "psr/log": "^1.0 || ^2.0 || ^3.0",
- "react/promise": "^2.8 || ^3",
- "seld/jsonlint": "^1.4",
- "seld/phar-utils": "^1.2",
- "seld/signal-handler": "^2.0",
- "symfony/console": "^5.4.11 || ^6.0.11",
- "symfony/filesystem": "^5.4 || ^6.0 || ^7",
- "symfony/finder": "^5.4 || ^6.0 || ^7",
- "symfony/polyfill-php73": "^1.24",
- "symfony/polyfill-php80": "^1.24",
- "symfony/polyfill-php81": "^1.24",
- "symfony/process": "^5.4 || ^6.0 || ^7"
- },
- "require-dev": {
- "phpstan/phpstan": "^1.9.3",
- "phpstan/phpstan-deprecation-rules": "^1",
- "phpstan/phpstan-phpunit": "^1.0",
- "phpstan/phpstan-strict-rules": "^1",
- "phpstan/phpstan-symfony": "^1.2.10",
- "symfony/phpunit-bridge": "^6.0 || ^7"
- },
- "suggest": {
- "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages",
- "ext-zip": "Enabling the zip extension allows you to unzip archives",
- "ext-zlib": "Allow gzip compression of HTTP requests"
- },
- "bin": [
- "bin/composer"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "2.6-dev"
- },
- "phpstan": {
- "includes": [
- "phpstan/rules.neon"
- ]
- }
- },
- "autoload": {
- "psr-4": {
- "Composer\\": "src/Composer/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nils Adermann",
- "email": "naderman@naderman.de",
- "homepage": "https://www.naderman.de"
- },
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "https://seld.be"
- }
- ],
- "description": "Composer helps you declare, manage and install dependencies of PHP projects. It ensures you have the right stack everywhere.",
- "homepage": "https://getcomposer.org/",
- "keywords": [
- "autoload",
- "dependency",
- "package"
- ],
- "support": {
- "irc": "ircs://irc.libera.chat:6697/composer",
- "issues": "https://github.com/composer/composer/issues",
- "security": "https://github.com/composer/composer/security/policy",
- "source": "https://github.com/composer/composer/tree/2.6.6"
- },
- "funding": [
- {
- "url": "https://packagist.com",
- "type": "custom"
- },
- {
- "url": "https://github.com/composer",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/composer/composer",
- "type": "tidelift"
- }
- ],
- "time": "2023-12-08T17:32:26+00:00"
- },
- {
- "name": "composer/metadata-minifier",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/metadata-minifier.git",
- "reference": "c549d23829536f0d0e984aaabbf02af91f443207"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/metadata-minifier/zipball/c549d23829536f0d0e984aaabbf02af91f443207",
- "reference": "c549d23829536f0d0e984aaabbf02af91f443207",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.2 || ^7.0 || ^8.0"
- },
- "require-dev": {
- "composer/composer": "^2",
- "phpstan/phpstan": "^0.12.55",
- "symfony/phpunit-bridge": "^4.2 || ^5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Composer\\MetadataMinifier\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be"
- }
- ],
- "description": "Small utility library that handles metadata minification and expansion.",
- "keywords": [
- "composer",
- "compression"
- ],
- "support": {
- "issues": "https://github.com/composer/metadata-minifier/issues",
- "source": "https://github.com/composer/metadata-minifier/tree/1.0.0"
- },
- "funding": [
- {
- "url": "https://packagist.com",
- "type": "custom"
- },
- {
- "url": "https://github.com/composer",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/composer/composer",
- "type": "tidelift"
- }
- ],
- "time": "2021-04-07T13:37:33+00:00"
- },
- {
- "name": "composer/pcre",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/pcre.git",
- "reference": "00104306927c7a0919b4ced2aaa6782c1e61a3c9"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/pcre/zipball/00104306927c7a0919b4ced2aaa6782c1e61a3c9",
- "reference": "00104306927c7a0919b4ced2aaa6782c1e61a3c9",
- "shasum": ""
- },
- "require": {
- "php": "^7.4 || ^8.0"
- },
- "require-dev": {
- "phpstan/phpstan": "^1.3",
- "phpstan/phpstan-strict-rules": "^1.1",
- "symfony/phpunit-bridge": "^5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Composer\\Pcre\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be"
- }
- ],
- "description": "PCRE wrapping library that offers type-safe preg_* replacements.",
- "keywords": [
- "PCRE",
- "preg",
- "regex",
- "regular expression"
- ],
- "support": {
- "issues": "https://github.com/composer/pcre/issues",
- "source": "https://github.com/composer/pcre/tree/3.1.1"
- },
- "funding": [
- {
- "url": "https://packagist.com",
- "type": "custom"
- },
- {
- "url": "https://github.com/composer",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/composer/composer",
- "type": "tidelift"
- }
- ],
- "time": "2023-10-11T07:11:09+00:00"
- },
- {
- "name": "composer/semver",
- "version": "3.4.0",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/semver.git",
- "reference": "35e8d0af4486141bc745f23a29cc2091eb624a32"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/semver/zipball/35e8d0af4486141bc745f23a29cc2091eb624a32",
- "reference": "35e8d0af4486141bc745f23a29cc2091eb624a32",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.2 || ^7.0 || ^8.0"
- },
- "require-dev": {
- "phpstan/phpstan": "^1.4",
- "symfony/phpunit-bridge": "^4.2 || ^5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Composer\\Semver\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nils Adermann",
- "email": "naderman@naderman.de",
- "homepage": "http://www.naderman.de"
- },
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be"
- },
- {
- "name": "Rob Bast",
- "email": "rob.bast@gmail.com",
- "homepage": "http://robbast.nl"
- }
- ],
- "description": "Semver library that offers utilities, version constraint parsing and validation.",
- "keywords": [
- "semantic",
- "semver",
- "validation",
- "versioning"
- ],
- "support": {
- "irc": "ircs://irc.libera.chat:6697/composer",
- "issues": "https://github.com/composer/semver/issues",
- "source": "https://github.com/composer/semver/tree/3.4.0"
- },
- "funding": [
- {
- "url": "https://packagist.com",
- "type": "custom"
- },
- {
- "url": "https://github.com/composer",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/composer/composer",
- "type": "tidelift"
- }
- ],
- "time": "2023-08-31T09:50:34+00:00"
- },
- {
- "name": "composer/spdx-licenses",
- "version": "1.5.8",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/spdx-licenses.git",
- "reference": "560bdcf8deb88ae5d611c80a2de8ea9d0358cc0a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/spdx-licenses/zipball/560bdcf8deb88ae5d611c80a2de8ea9d0358cc0a",
- "reference": "560bdcf8deb88ae5d611c80a2de8ea9d0358cc0a",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.2 || ^7.0 || ^8.0"
- },
- "require-dev": {
- "phpstan/phpstan": "^0.12.55",
- "symfony/phpunit-bridge": "^4.2 || ^5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Composer\\Spdx\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nils Adermann",
- "email": "naderman@naderman.de",
- "homepage": "http://www.naderman.de"
- },
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be"
- },
- {
- "name": "Rob Bast",
- "email": "rob.bast@gmail.com",
- "homepage": "http://robbast.nl"
- }
- ],
- "description": "SPDX licenses list and validation library.",
- "keywords": [
- "license",
- "spdx",
- "validator"
- ],
- "support": {
- "irc": "ircs://irc.libera.chat:6697/composer",
- "issues": "https://github.com/composer/spdx-licenses/issues",
- "source": "https://github.com/composer/spdx-licenses/tree/1.5.8"
- },
- "funding": [
- {
- "url": "https://packagist.com",
- "type": "custom"
- },
- {
- "url": "https://github.com/composer",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/composer/composer",
- "type": "tidelift"
- }
- ],
- "time": "2023-11-20T07:44:33+00:00"
- },
- {
- "name": "composer/xdebug-handler",
- "version": "3.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/xdebug-handler.git",
- "reference": "ced299686f41dce890debac69273b47ffe98a40c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/ced299686f41dce890debac69273b47ffe98a40c",
- "reference": "ced299686f41dce890debac69273b47ffe98a40c",
- "shasum": ""
- },
- "require": {
- "composer/pcre": "^1 || ^2 || ^3",
- "php": "^7.2.5 || ^8.0",
- "psr/log": "^1 || ^2 || ^3"
- },
- "require-dev": {
- "phpstan/phpstan": "^1.0",
- "phpstan/phpstan-strict-rules": "^1.1",
- "symfony/phpunit-bridge": "^6.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Composer\\XdebugHandler\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "John Stevenson",
- "email": "john-stevenson@blueyonder.co.uk"
- }
- ],
- "description": "Restarts a process without Xdebug.",
- "keywords": [
- "Xdebug",
- "performance"
- ],
- "support": {
- "irc": "irc://irc.freenode.org/composer",
- "issues": "https://github.com/composer/xdebug-handler/issues",
- "source": "https://github.com/composer/xdebug-handler/tree/3.0.3"
- },
- "funding": [
- {
- "url": "https://packagist.com",
- "type": "custom"
- },
- {
- "url": "https://github.com/composer",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/composer/composer",
- "type": "tidelift"
- }
- ],
- "time": "2022-02-25T21:32:43+00:00"
- },
- {
- "name": "dealerdirect/phpcodesniffer-composer-installer",
- "version": "v1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/PHPCSStandards/composer-installer.git",
- "reference": "4be43904336affa5c2f70744a348312336afd0da"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/PHPCSStandards/composer-installer/zipball/4be43904336affa5c2f70744a348312336afd0da",
- "reference": "4be43904336affa5c2f70744a348312336afd0da",
- "shasum": ""
- },
- "require": {
- "composer-plugin-api": "^1.0 || ^2.0",
- "php": ">=5.4",
- "squizlabs/php_codesniffer": "^2.0 || ^3.1.0 || ^4.0"
- },
- "require-dev": {
- "composer/composer": "*",
- "ext-json": "*",
- "ext-zip": "*",
- "php-parallel-lint/php-parallel-lint": "^1.3.1",
- "phpcompatibility/php-compatibility": "^9.0",
- "yoast/phpunit-polyfills": "^1.0"
- },
- "type": "composer-plugin",
- "extra": {
- "class": "PHPCSStandards\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\Plugin"
- },
- "autoload": {
- "psr-4": {
- "PHPCSStandards\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Franck Nijhof",
- "email": "franck.nijhof@dealerdirect.com",
- "homepage": "http://www.frenck.nl",
- "role": "Developer / IT Manager"
- },
- {
- "name": "Contributors",
- "homepage": "https://github.com/PHPCSStandards/composer-installer/graphs/contributors"
- }
- ],
- "description": "PHP_CodeSniffer Standards Composer Installer Plugin",
- "homepage": "http://www.dealerdirect.com",
- "keywords": [
- "PHPCodeSniffer",
- "PHP_CodeSniffer",
- "code quality",
- "codesniffer",
- "composer",
- "installer",
- "phpcbf",
- "phpcs",
- "plugin",
- "qa",
- "quality",
- "standard",
- "standards",
- "style guide",
- "stylecheck",
- "tests"
- ],
- "support": {
- "issues": "https://github.com/PHPCSStandards/composer-installer/issues",
- "source": "https://github.com/PHPCSStandards/composer-installer"
- },
- "time": "2023-01-05T11:28:13+00:00"
- },
- {
- "name": "doctrine/deprecations",
- "version": "1.1.2",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/deprecations.git",
- "reference": "4f2d4f2836e7ec4e7a8625e75c6aa916004db931"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/deprecations/zipball/4f2d4f2836e7ec4e7a8625e75c6aa916004db931",
- "reference": "4f2d4f2836e7ec4e7a8625e75c6aa916004db931",
- "shasum": ""
- },
- "require": {
- "php": "^7.1 || ^8.0"
- },
- "require-dev": {
- "doctrine/coding-standard": "^9",
- "phpstan/phpstan": "1.4.10 || 1.10.15",
- "phpstan/phpstan-phpunit": "^1.0",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "psalm/plugin-phpunit": "0.18.4",
- "psr/log": "^1 || ^2 || ^3",
- "vimeo/psalm": "4.30.0 || 5.12.0"
- },
- "suggest": {
- "psr/log": "Allows logging deprecations via PSR-3 logger implementation"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.",
- "homepage": "https://www.doctrine-project.org/",
- "support": {
- "issues": "https://github.com/doctrine/deprecations/issues",
- "source": "https://github.com/doctrine/deprecations/tree/1.1.2"
- },
- "time": "2023-09-27T20:04:15+00:00"
- },
- {
- "name": "doctrine/instantiator",
- "version": "1.5.0",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b",
- "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b",
- "shasum": ""
- },
- "require": {
- "php": "^7.1 || ^8.0"
- },
- "require-dev": {
- "doctrine/coding-standard": "^9 || ^11",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpbench/phpbench": "^0.16 || ^1",
- "phpstan/phpstan": "^1.4",
- "phpstan/phpstan-phpunit": "^1",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "vimeo/psalm": "^4.30 || ^5.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "https://ocramius.github.io/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "support": {
- "issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/1.5.0"
- },
- "funding": [
- {
- "url": "https://www.doctrine-project.org/sponsorship.html",
- "type": "custom"
- },
- {
- "url": "https://www.patreon.com/phpdoctrine",
- "type": "patreon"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator",
- "type": "tidelift"
- }
- ],
- "time": "2022-12-30T00:15:36+00:00"
- },
- {
- "name": "felixfbecker/advanced-json-rpc",
- "version": "v3.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/felixfbecker/php-advanced-json-rpc.git",
- "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/felixfbecker/php-advanced-json-rpc/zipball/b5f37dbff9a8ad360ca341f3240dc1c168b45447",
- "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447",
- "shasum": ""
- },
- "require": {
- "netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0 || ^4.0",
- "php": "^7.1 || ^8.0",
- "phpdocumentor/reflection-docblock": "^4.3.4 || ^5.0.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^7.0 || ^8.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "AdvancedJsonRpc\\": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "ISC"
- ],
- "authors": [
- {
- "name": "Felix Becker",
- "email": "felix.b@outlook.com"
- }
- ],
- "description": "A more advanced JSONRPC implementation",
- "support": {
- "issues": "https://github.com/felixfbecker/php-advanced-json-rpc/issues",
- "source": "https://github.com/felixfbecker/php-advanced-json-rpc/tree/v3.2.1"
- },
- "time": "2021-06-11T22:34:44+00:00"
- },
- {
- "name": "justinrainbow/json-schema",
- "version": "v5.2.13",
- "source": {
- "type": "git",
- "url": "https://github.com/justinrainbow/json-schema.git",
- "reference": "fbbe7e5d79f618997bc3332a6f49246036c45793"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/fbbe7e5d79f618997bc3332a6f49246036c45793",
- "reference": "fbbe7e5d79f618997bc3332a6f49246036c45793",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "~2.2.20||~2.15.1",
- "json-schema/json-schema-test-suite": "1.2.0",
- "phpunit/phpunit": "^4.8.35"
- },
- "bin": [
- "bin/validate-json"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "JsonSchema\\": "src/JsonSchema/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bruno Prieto Reis",
- "email": "bruno.p.reis@gmail.com"
- },
- {
- "name": "Justin Rainbow",
- "email": "justin.rainbow@gmail.com"
- },
- {
- "name": "Igor Wiedler",
- "email": "igor@wiedler.ch"
- },
- {
- "name": "Robert Schönthal",
- "email": "seroscho@googlemail.com"
- }
- ],
- "description": "A library to validate a json schema.",
- "homepage": "https://github.com/justinrainbow/json-schema",
- "keywords": [
- "json",
- "schema"
- ],
- "support": {
- "issues": "https://github.com/justinrainbow/json-schema/issues",
- "source": "https://github.com/justinrainbow/json-schema/tree/v5.2.13"
- },
- "time": "2023-09-26T02:20:38+00:00"
- },
- {
- "name": "microsoft/tolerant-php-parser",
- "version": "v0.1.2",
- "source": {
- "type": "git",
- "url": "https://github.com/microsoft/tolerant-php-parser.git",
- "reference": "3eccfd273323aaf69513e2f1c888393f5947804b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/microsoft/tolerant-php-parser/zipball/3eccfd273323aaf69513e2f1c888393f5947804b",
- "reference": "3eccfd273323aaf69513e2f1c888393f5947804b",
- "shasum": ""
- },
- "require": {
- "php": ">=7.2"
- },
- "require-dev": {
- "phpunit/phpunit": "^8.5.15"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Microsoft\\PhpParser\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Rob Lourens",
- "email": "roblou@microsoft.com"
- }
- ],
- "description": "Tolerant PHP-to-AST parser designed for IDE usage scenarios",
- "support": {
- "issues": "https://github.com/microsoft/tolerant-php-parser/issues",
- "source": "https://github.com/microsoft/tolerant-php-parser/tree/v0.1.2"
- },
- "time": "2022-10-05T17:30:19+00:00"
- },
- {
- "name": "myclabs/deep-copy",
- "version": "1.11.1",
- "source": {
- "type": "git",
- "url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c",
- "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c",
- "shasum": ""
- },
- "require": {
- "php": "^7.1 || ^8.0"
- },
- "conflict": {
- "doctrine/collections": "<1.6.8",
- "doctrine/common": "<2.13.3 || >=3,<3.2.2"
- },
- "require-dev": {
- "doctrine/collections": "^1.6.8",
- "doctrine/common": "^2.13.3 || ^3.2.2",
- "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13"
- },
- "type": "library",
- "autoload": {
- "files": [
- "src/DeepCopy/deep_copy.php"
- ],
- "psr-4": {
- "DeepCopy\\": "src/DeepCopy/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "Create deep copies (clones) of your objects",
- "keywords": [
- "clone",
- "copy",
- "duplicate",
- "object",
- "object graph"
- ],
- "support": {
- "issues": "https://github.com/myclabs/DeepCopy/issues",
- "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1"
- },
- "funding": [
- {
- "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy",
- "type": "tidelift"
- }
- ],
- "time": "2023-03-08T13:26:56+00:00"
- },
- {
- "name": "netresearch/jsonmapper",
- "version": "v4.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/cweiske/jsonmapper.git",
- "reference": "f60565f8c0566a31acf06884cdaa591867ecc956"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/f60565f8c0566a31acf06884cdaa591867ecc956",
- "reference": "f60565f8c0566a31acf06884cdaa591867ecc956",
- "shasum": ""
- },
- "require": {
- "ext-json": "*",
- "ext-pcre": "*",
- "ext-reflection": "*",
- "ext-spl": "*",
- "php": ">=7.1"
- },
- "require-dev": {
- "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0",
- "squizlabs/php_codesniffer": "~3.5"
- },
- "type": "library",
- "autoload": {
- "psr-0": {
- "JsonMapper": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "OSL-3.0"
- ],
- "authors": [
- {
- "name": "Christian Weiske",
- "email": "cweiske@cweiske.de",
- "homepage": "http://github.com/cweiske/jsonmapper/",
- "role": "Developer"
- }
- ],
- "description": "Map nested JSON structures onto PHP classes",
- "support": {
- "email": "cweiske@cweiske.de",
- "issues": "https://github.com/cweiske/jsonmapper/issues",
- "source": "https://github.com/cweiske/jsonmapper/tree/v4.2.0"
- },
- "time": "2023-04-09T17:37:40+00:00"
- },
- {
- "name": "nikic/php-parser",
- "version": "v4.18.0",
- "source": {
- "type": "git",
- "url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "1bcbb2179f97633e98bbbc87044ee2611c7d7999"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/1bcbb2179f97633e98bbbc87044ee2611c7d7999",
- "reference": "1bcbb2179f97633e98bbbc87044ee2611c7d7999",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=7.0"
- },
- "require-dev": {
- "ircmaxell/php-yacc": "^0.0.7",
- "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0"
- },
- "bin": [
- "bin/php-parse"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.9-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "PhpParser\\": "lib/PhpParser"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Nikita Popov"
- }
- ],
- "description": "A PHP parser written in PHP",
- "keywords": [
- "parser",
- "php"
- ],
- "support": {
- "issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v4.18.0"
- },
- "time": "2023-12-10T21:03:43+00:00"
- },
- {
- "name": "pdepend/pdepend",
- "version": "2.16.2",
- "source": {
- "type": "git",
- "url": "https://github.com/pdepend/pdepend.git",
- "reference": "f942b208dc2a0868454d01b29f0c75bbcfc6ed58"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/pdepend/pdepend/zipball/f942b208dc2a0868454d01b29f0c75bbcfc6ed58",
- "reference": "f942b208dc2a0868454d01b29f0c75bbcfc6ed58",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.7",
- "symfony/config": "^2.3.0|^3|^4|^5|^6.0|^7.0",
- "symfony/dependency-injection": "^2.3.0|^3|^4|^5|^6.0|^7.0",
- "symfony/filesystem": "^2.3.0|^3|^4|^5|^6.0|^7.0",
- "symfony/polyfill-mbstring": "^1.19"
- },
- "require-dev": {
- "easy-doc/easy-doc": "0.0.0|^1.2.3",
- "gregwar/rst": "^1.0",
- "squizlabs/php_codesniffer": "^2.0.0"
- },
- "bin": [
- "src/bin/pdepend"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "PDepend\\": "src/main/php/PDepend"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "description": "Official version of pdepend to be handled with Composer",
- "keywords": [
- "PHP Depend",
- "PHP_Depend",
- "dev",
- "pdepend"
- ],
- "support": {
- "issues": "https://github.com/pdepend/pdepend/issues",
- "source": "https://github.com/pdepend/pdepend/tree/2.16.2"
- },
- "funding": [
- {
- "url": "https://tidelift.com/funding/github/packagist/pdepend/pdepend",
- "type": "tidelift"
- }
- ],
- "time": "2023-12-17T18:09:59+00:00"
- },
- {
- "name": "phan/phan",
- "version": "5.4.3",
- "source": {
- "type": "git",
- "url": "https://github.com/phan/phan.git",
- "reference": "86a7acd99c1239b8867b49feca2398851212e7fe"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phan/phan/zipball/86a7acd99c1239b8867b49feca2398851212e7fe",
- "reference": "86a7acd99c1239b8867b49feca2398851212e7fe",
- "shasum": ""
- },
- "require": {
- "composer/semver": "^1.4|^2.0|^3.0",
- "composer/xdebug-handler": "^2.0|^3.0",
- "ext-filter": "*",
- "ext-json": "*",
- "ext-tokenizer": "*",
- "felixfbecker/advanced-json-rpc": "^3.0.4",
- "microsoft/tolerant-php-parser": "0.1.2",
- "netresearch/jsonmapper": "^1.6.0|^2.0|^3.0|^4.0",
- "php": "^7.2.0|^8.0.0",
- "sabre/event": "^5.1.3",
- "symfony/console": "^3.2|^4.0|^5.0|^6.0|^7.0",
- "symfony/polyfill-mbstring": "^1.11.0",
- "symfony/polyfill-php80": "^1.20.0",
- "tysonandre/var_representation_polyfill": "^0.0.2|^0.1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^8.5.0"
- },
- "suggest": {
- "ext-ast": "Needed for parsing ASTs (unless --use-fallback-parser is used). 1.0.1+ is needed, 1.0.16+ is recommended.",
- "ext-iconv": "Either iconv or mbstring is needed to ensure issue messages are valid utf-8",
- "ext-igbinary": "Improves performance of polyfill when ext-ast is unavailable",
- "ext-mbstring": "Either iconv or mbstring is needed to ensure issue messages are valid utf-8",
- "ext-tokenizer": "Needed for fallback/polyfill parser support and file/line-based suppressions.",
- "ext-var_representation": "Suggested for converting values to strings in issue messages"
- },
- "bin": [
- "phan",
- "phan_client",
- "tocheckstyle"
- ],
- "type": "project",
- "autoload": {
- "psr-4": {
- "Phan\\": "src/Phan"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Tyson Andre"
- },
- {
- "name": "Rasmus Lerdorf"
- },
- {
- "name": "Andrew S. Morrison"
- }
- ],
- "description": "A static analyzer for PHP",
- "keywords": [
- "analyzer",
- "php",
- "static",
- "static analysis"
- ],
- "support": {
- "issues": "https://github.com/phan/phan/issues",
- "source": "https://github.com/phan/phan/tree/5.4.3"
- },
- "time": "2023-12-26T17:57:35+00:00"
- },
- {
- "name": "phar-io/manifest",
- "version": "2.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/phar-io/manifest.git",
- "reference": "97803eca37d319dfa7826cc2437fc020857acb53"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53",
- "reference": "97803eca37d319dfa7826cc2437fc020857acb53",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-phar": "*",
- "ext-xmlwriter": "*",
- "phar-io/version": "^3.0.1",
- "php": "^7.2 || ^8.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Arne Blankerts",
- "email": "arne@blankerts.de",
- "role": "Developer"
- },
- {
- "name": "Sebastian Heuer",
- "email": "sebastian@phpeople.de",
- "role": "Developer"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "Developer"
- }
- ],
- "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
- "support": {
- "issues": "https://github.com/phar-io/manifest/issues",
- "source": "https://github.com/phar-io/manifest/tree/2.0.3"
- },
- "time": "2021-07-20T11:28:43+00:00"
- },
- {
- "name": "phar-io/version",
- "version": "3.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phar-io/version.git",
- "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74",
- "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74",
- "shasum": ""
- },
- "require": {
- "php": "^7.2 || ^8.0"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Arne Blankerts",
- "email": "arne@blankerts.de",
- "role": "Developer"
- },
- {
- "name": "Sebastian Heuer",
- "email": "sebastian@phpeople.de",
- "role": "Developer"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "Developer"
- }
- ],
- "description": "Library for handling version information and constraints",
- "support": {
- "issues": "https://github.com/phar-io/version/issues",
- "source": "https://github.com/phar-io/version/tree/3.2.1"
- },
- "time": "2022-02-21T01:04:05+00:00"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "2.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b",
- "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b",
- "shasum": ""
- },
- "require": {
- "php": "^7.2 || ^8.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-2.x": "2.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "support": {
- "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues",
- "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x"
- },
- "time": "2020-06-27T09:03:43+00:00"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "5.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "622548b623e81ca6d78b721c5e029f4ce664f170"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170",
- "reference": "622548b623e81ca6d78b721c5e029f4ce664f170",
- "shasum": ""
- },
- "require": {
- "ext-filter": "*",
- "php": "^7.2 || ^8.0",
- "phpdocumentor/reflection-common": "^2.2",
- "phpdocumentor/type-resolver": "^1.3",
- "webmozart/assert": "^1.9.1"
- },
- "require-dev": {
- "mockery/mockery": "~1.3.2",
- "psalm/phar": "^4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- },
- {
- "name": "Jaap van Otterdijk",
- "email": "account@ijaap.nl"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "support": {
- "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues",
- "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0"
- },
- "time": "2021-10-19T17:43:47+00:00"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "1.7.3",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "3219c6ee25c9ea71e3d9bbaf39c67c9ebd499419"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/3219c6ee25c9ea71e3d9bbaf39c67c9ebd499419",
- "reference": "3219c6ee25c9ea71e3d9bbaf39c67c9ebd499419",
- "shasum": ""
- },
- "require": {
- "doctrine/deprecations": "^1.0",
- "php": "^7.4 || ^8.0",
- "phpdocumentor/reflection-common": "^2.0",
- "phpstan/phpdoc-parser": "^1.13"
- },
- "require-dev": {
- "ext-tokenizer": "*",
- "phpbench/phpbench": "^1.2",
- "phpstan/extension-installer": "^1.1",
- "phpstan/phpstan": "^1.8",
- "phpstan/phpstan-phpunit": "^1.1",
- "phpunit/phpunit": "^9.5",
- "rector/rector": "^0.13.9",
- "vimeo/psalm": "^4.25"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-1.x": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
- "support": {
- "issues": "https://github.com/phpDocumentor/TypeResolver/issues",
- "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.7.3"
- },
- "time": "2023-08-12T11:01:26+00:00"
- },
- {
- "name": "phpmd/phpmd",
- "version": "2.15.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpmd/phpmd.git",
- "reference": "74a1f56e33afad4128b886e334093e98e1b5e7c0"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpmd/phpmd/zipball/74a1f56e33afad4128b886e334093e98e1b5e7c0",
- "reference": "74a1f56e33afad4128b886e334093e98e1b5e7c0",
- "shasum": ""
- },
- "require": {
- "composer/xdebug-handler": "^1.0 || ^2.0 || ^3.0",
- "ext-xml": "*",
- "pdepend/pdepend": "^2.16.1",
- "php": ">=5.3.9"
- },
- "require-dev": {
- "easy-doc/easy-doc": "0.0.0 || ^1.3.2",
- "ext-json": "*",
- "ext-simplexml": "*",
- "gregwar/rst": "^1.0",
- "mikey179/vfsstream": "^1.6.8",
- "squizlabs/php_codesniffer": "^2.9.2 || ^3.7.2"
- },
- "bin": [
- "src/bin/phpmd"
- ],
- "type": "library",
- "autoload": {
- "psr-0": {
- "PHPMD\\": "src/main/php"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Manuel Pichler",
- "email": "github@manuel-pichler.de",
- "homepage": "https://github.com/manuelpichler",
- "role": "Project Founder"
- },
- {
- "name": "Marc Würth",
- "email": "ravage@bluewin.ch",
- "homepage": "https://github.com/ravage84",
- "role": "Project Maintainer"
- },
- {
- "name": "Other contributors",
- "homepage": "https://github.com/phpmd/phpmd/graphs/contributors",
- "role": "Contributors"
- }
- ],
- "description": "PHPMD is a spin-off project of PHP Depend and aims to be a PHP equivalent of the well known Java tool PMD.",
- "homepage": "https://phpmd.org/",
- "keywords": [
- "dev",
- "mess detection",
- "mess detector",
- "pdepend",
- "phpmd",
- "pmd"
- ],
- "support": {
- "irc": "irc://irc.freenode.org/phpmd",
- "issues": "https://github.com/phpmd/phpmd/issues",
- "source": "https://github.com/phpmd/phpmd/tree/2.15.0"
- },
- "funding": [
- {
- "url": "https://tidelift.com/funding/github/packagist/phpmd/phpmd",
- "type": "tidelift"
- }
- ],
- "time": "2023-12-11T08:22:20+00:00"
- },
- {
- "name": "phpstan/phpdoc-parser",
- "version": "1.24.5",
- "source": {
- "type": "git",
- "url": "https://github.com/phpstan/phpdoc-parser.git",
- "reference": "fedf211ff14ec8381c9bf5714e33a7a552dd1acc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/fedf211ff14ec8381c9bf5714e33a7a552dd1acc",
- "reference": "fedf211ff14ec8381c9bf5714e33a7a552dd1acc",
- "shasum": ""
- },
- "require": {
- "php": "^7.2 || ^8.0"
- },
- "require-dev": {
- "doctrine/annotations": "^2.0",
- "nikic/php-parser": "^4.15",
- "php-parallel-lint/php-parallel-lint": "^1.2",
- "phpstan/extension-installer": "^1.0",
- "phpstan/phpstan": "^1.5",
- "phpstan/phpstan-phpunit": "^1.1",
- "phpstan/phpstan-strict-rules": "^1.0",
- "phpunit/phpunit": "^9.5",
- "symfony/process": "^5.2"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "PHPStan\\PhpDocParser\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "PHPDoc parser with support for nullable, intersection and generic types",
- "support": {
- "issues": "https://github.com/phpstan/phpdoc-parser/issues",
- "source": "https://github.com/phpstan/phpdoc-parser/tree/1.24.5"
- },
- "time": "2023-12-16T09:33:33+00:00"
- },
- {
- "name": "phpstan/phpstan",
- "version": "1.10.50",
- "source": {
- "type": "git",
- "url": "https://github.com/phpstan/phpstan.git",
- "reference": "06a98513ac72c03e8366b5a0cb00750b487032e4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpstan/zipball/06a98513ac72c03e8366b5a0cb00750b487032e4",
- "reference": "06a98513ac72c03e8366b5a0cb00750b487032e4",
- "shasum": ""
- },
- "require": {
- "php": "^7.2|^8.0"
- },
- "conflict": {
- "phpstan/phpstan-shim": "*"
- },
- "bin": [
- "phpstan",
- "phpstan.phar"
- ],
- "type": "library",
- "autoload": {
- "files": [
- "bootstrap.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "PHPStan - PHP Static Analysis Tool",
- "keywords": [
- "dev",
- "static analysis"
- ],
- "support": {
- "docs": "https://phpstan.org/user-guide/getting-started",
- "forum": "https://github.com/phpstan/phpstan/discussions",
- "issues": "https://github.com/phpstan/phpstan/issues",
- "security": "https://github.com/phpstan/phpstan/security/policy",
- "source": "https://github.com/phpstan/phpstan-src"
- },
- "funding": [
- {
- "url": "https://github.com/ondrejmirtes",
- "type": "github"
- },
- {
- "url": "https://github.com/phpstan",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan",
- "type": "tidelift"
- }
- ],
- "time": "2023-12-13T10:59:42+00:00"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "9.2.30",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "ca2bd87d2f9215904682a9cb9bb37dda98e76089"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ca2bd87d2f9215904682a9cb9bb37dda98e76089",
- "reference": "ca2bd87d2f9215904682a9cb9bb37dda98e76089",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-libxml": "*",
- "ext-xmlwriter": "*",
- "nikic/php-parser": "^4.18 || ^5.0",
- "php": ">=7.3",
- "phpunit/php-file-iterator": "^3.0.3",
- "phpunit/php-text-template": "^2.0.2",
- "sebastian/code-unit-reverse-lookup": "^2.0.2",
- "sebastian/complexity": "^2.0",
- "sebastian/environment": "^5.1.2",
- "sebastian/lines-of-code": "^1.0.3",
- "sebastian/version": "^3.0.1",
- "theseer/tokenizer": "^1.2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "suggest": {
- "ext-pcov": "PHP extension that provides line coverage",
- "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "9.2-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
- "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
- "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.30"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2023-12-22T06:47:57+00:00"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "3.0.6",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf",
- "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues",
- "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2021-12-02T12:48:52+00:00"
- },
- {
- "name": "phpunit/php-invoker",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-invoker.git",
- "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
- "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "ext-pcntl": "*",
- "phpunit/phpunit": "^9.3"
- },
- "suggest": {
- "ext-pcntl": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Invoke callables with a timeout",
- "homepage": "https://github.com/sebastianbergmann/php-invoker/",
- "keywords": [
- "process"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/php-invoker/issues",
- "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-09-28T05:58:55+00:00"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
- "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/php-text-template/issues",
- "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-10-26T05:33:50+00:00"
- },
- {
- "name": "phpunit/php-timer",
- "version": "5.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
- "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/php-timer/issues",
- "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-10-26T13:16:10+00:00"
- },
- {
- "name": "phpunit/phpunit",
- "version": "9.6.15",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "05017b80304e0eb3f31d90194a563fd53a6021f1"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/05017b80304e0eb3f31d90194a563fd53a6021f1",
- "reference": "05017b80304e0eb3f31d90194a563fd53a6021f1",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.3.1 || ^2",
- "ext-dom": "*",
- "ext-json": "*",
- "ext-libxml": "*",
- "ext-mbstring": "*",
- "ext-xml": "*",
- "ext-xmlwriter": "*",
- "myclabs/deep-copy": "^1.10.1",
- "phar-io/manifest": "^2.0.3",
- "phar-io/version": "^3.0.2",
- "php": ">=7.3",
- "phpunit/php-code-coverage": "^9.2.28",
- "phpunit/php-file-iterator": "^3.0.5",
- "phpunit/php-invoker": "^3.1.1",
- "phpunit/php-text-template": "^2.0.3",
- "phpunit/php-timer": "^5.0.2",
- "sebastian/cli-parser": "^1.0.1",
- "sebastian/code-unit": "^1.0.6",
- "sebastian/comparator": "^4.0.8",
- "sebastian/diff": "^4.0.3",
- "sebastian/environment": "^5.1.3",
- "sebastian/exporter": "^4.0.5",
- "sebastian/global-state": "^5.0.1",
- "sebastian/object-enumerator": "^4.0.3",
- "sebastian/resource-operations": "^3.0.3",
- "sebastian/type": "^3.2",
- "sebastian/version": "^3.0.2"
- },
- "suggest": {
- "ext-soap": "To be able to generate mocks based on WSDL files",
- "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "9.6-dev"
- }
- },
- "autoload": {
- "files": [
- "src/Framework/Assert/Functions.php"
- ],
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/phpunit/issues",
- "security": "https://github.com/sebastianbergmann/phpunit/security/policy",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.15"
- },
- "funding": [
- {
- "url": "https://phpunit.de/sponsors.html",
- "type": "custom"
- },
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit",
- "type": "tidelift"
- }
- ],
- "time": "2023-12-01T16:55:19+00:00"
- },
- {
- "name": "psalm/phar",
- "version": "5.18.0",
- "source": {
- "type": "git",
- "url": "https://github.com/psalm/phar.git",
- "reference": "a78b5c2e8860c3b4242c63bc0864621278705f9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/psalm/phar/zipball/a78b5c2e8860c3b4242c63bc0864621278705f9a",
- "reference": "a78b5c2e8860c3b4242c63bc0864621278705f9a",
- "shasum": ""
- },
- "require": {
- "php": "^7.1 || ^8.0"
- },
- "conflict": {
- "vimeo/psalm": "*"
- },
- "bin": [
- "psalm.phar"
- ],
- "type": "library",
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "Composer-based Psalm Phar",
- "support": {
- "issues": "https://github.com/psalm/phar/issues",
- "source": "https://github.com/psalm/phar/tree/5.18.0"
- },
- "time": "2023-12-16T09:41:14+00:00"
- },
- {
- "name": "psr/container",
- "version": "2.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/container.git",
- "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963",
- "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963",
- "shasum": ""
- },
- "require": {
- "php": ">=7.4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Container\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "https://www.php-fig.org/"
- }
- ],
- "description": "Common Container Interface (PHP FIG PSR-11)",
- "homepage": "https://github.com/php-fig/container",
- "keywords": [
- "PSR-11",
- "container",
- "container-interface",
- "container-interop",
- "psr"
- ],
- "support": {
- "issues": "https://github.com/php-fig/container/issues",
- "source": "https://github.com/php-fig/container/tree/2.0.2"
- },
- "time": "2021-11-05T16:47:00+00:00"
- },
- {
- "name": "react/promise",
- "version": "v3.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/reactphp/promise.git",
- "reference": "e563d55d1641de1dea9f5e84f3cccc66d2bfe02c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/reactphp/promise/zipball/e563d55d1641de1dea9f5e84f3cccc66d2bfe02c",
- "reference": "e563d55d1641de1dea9f5e84f3cccc66d2bfe02c",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1.0"
- },
- "require-dev": {
- "phpstan/phpstan": "1.10.39 || 1.4.10",
- "phpunit/phpunit": "^9.6 || ^7.5"
- },
- "type": "library",
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "React\\Promise\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jan Sorgalla",
- "email": "jsorgalla@gmail.com",
- "homepage": "https://sorgalla.com/"
- },
- {
- "name": "Christian Lück",
- "email": "christian@clue.engineering",
- "homepage": "https://clue.engineering/"
- },
- {
- "name": "Cees-Jan Kiewiet",
- "email": "reactphp@ceesjankiewiet.nl",
- "homepage": "https://wyrihaximus.net/"
- },
- {
- "name": "Chris Boden",
- "email": "cboden@gmail.com",
- "homepage": "https://cboden.dev/"
- }
- ],
- "description": "A lightweight implementation of CommonJS Promises/A for PHP",
- "keywords": [
- "promise",
- "promises"
- ],
- "support": {
- "issues": "https://github.com/reactphp/promise/issues",
- "source": "https://github.com/reactphp/promise/tree/v3.1.0"
- },
- "funding": [
- {
- "url": "https://opencollective.com/reactphp",
- "type": "open_collective"
- }
- ],
- "time": "2023-11-16T16:21:57+00:00"
- },
- {
- "name": "sabre/event",
- "version": "5.1.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sabre-io/event.git",
- "reference": "d7da22897125d34d7eddf7977758191c06a74497"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sabre-io/event/zipball/d7da22897125d34d7eddf7977758191c06a74497",
- "reference": "d7da22897125d34d7eddf7977758191c06a74497",
- "shasum": ""
- },
- "require": {
- "php": "^7.1 || ^8.0"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "~2.17.1",
- "phpstan/phpstan": "^0.12",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
- },
- "type": "library",
- "autoload": {
- "files": [
- "lib/coroutine.php",
- "lib/Loop/functions.php",
- "lib/Promise/functions.php"
- ],
- "psr-4": {
- "Sabre\\Event\\": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Evert Pot",
- "email": "me@evertpot.com",
- "homepage": "http://evertpot.com/",
- "role": "Developer"
- }
- ],
- "description": "sabre/event is a library for lightweight event-based programming",
- "homepage": "http://sabre.io/event/",
- "keywords": [
- "EventEmitter",
- "async",
- "coroutine",
- "eventloop",
- "events",
- "hooks",
- "plugin",
- "promise",
- "reactor",
- "signal"
- ],
- "support": {
- "forum": "https://groups.google.com/group/sabredav-discuss",
- "issues": "https://github.com/sabre-io/event/issues",
- "source": "https://github.com/fruux/sabre-event"
- },
- "time": "2021-11-04T06:51:17+00:00"
- },
- {
- "name": "sebastian/cli-parser",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/cli-parser.git",
- "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2",
- "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library for parsing CLI options",
- "homepage": "https://github.com/sebastianbergmann/cli-parser",
- "support": {
- "issues": "https://github.com/sebastianbergmann/cli-parser/issues",
- "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-09-28T06:08:49+00:00"
- },
- {
- "name": "sebastian/code-unit",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/code-unit.git",
- "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120",
- "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Collection of value objects that represent the PHP code units",
- "homepage": "https://github.com/sebastianbergmann/code-unit",
- "support": {
- "issues": "https://github.com/sebastianbergmann/code-unit/issues",
- "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-10-26T13:08:54+00:00"
- },
- {
- "name": "sebastian/code-unit-reverse-lookup",
- "version": "2.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
- "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Looks up which function or method a line of code belongs to",
- "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "support": {
- "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues",
- "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-09-28T05:30:19+00:00"
- },
- {
- "name": "sebastian/comparator",
- "version": "4.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "fa0f136dd2334583309d32b62544682ee972b51a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a",
- "reference": "fa0f136dd2334583309d32b62544682ee972b51a",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3",
- "sebastian/diff": "^4.0",
- "sebastian/exporter": "^4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "https://github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/comparator/issues",
- "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2022-09-14T12:41:17+00:00"
- },
- {
- "name": "sebastian/complexity",
- "version": "2.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/complexity.git",
- "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a",
- "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a",
- "shasum": ""
- },
- "require": {
- "nikic/php-parser": "^4.18 || ^5.0",
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library for calculating the complexity of PHP code units",
- "homepage": "https://github.com/sebastianbergmann/complexity",
- "support": {
- "issues": "https://github.com/sebastianbergmann/complexity/issues",
- "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.3"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2023-12-22T06:19:30+00:00"
- },
- {
- "name": "sebastian/diff",
- "version": "4.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/74be17022044ebaaecfdf0c5cd504fc9cd5a7131",
- "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3",
- "symfony/process": "^4.2 || ^5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Kore Nordmann",
- "email": "mail@kore-nordmann.de"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff",
- "udiff",
- "unidiff",
- "unified diff"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/diff/issues",
- "source": "https://github.com/sebastianbergmann/diff/tree/4.0.5"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2023-05-07T05:35:17+00:00"
- },
- {
- "name": "sebastian/environment",
- "version": "5.1.5",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
- "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "suggest": {
- "ext-posix": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.1-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/environment/issues",
- "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2023-02-03T06:03:51+00:00"
- },
- {
- "name": "sebastian/exporter",
- "version": "4.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
- "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3",
- "sebastian/recursion-context": "^4.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "https://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/exporter/issues",
- "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2022-09-14T06:03:37+00:00"
- },
- {
- "name": "sebastian/global-state",
- "version": "5.0.6",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bde739e7565280bda77be70044ac1047bc007e34"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bde739e7565280bda77be70044ac1047bc007e34",
- "reference": "bde739e7565280bda77be70044ac1047bc007e34",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3",
- "sebastian/object-reflector": "^2.0",
- "sebastian/recursion-context": "^4.0"
- },
- "require-dev": {
- "ext-dom": "*",
- "phpunit/phpunit": "^9.3"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/global-state/issues",
- "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.6"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2023-08-02T09:26:13+00:00"
- },
- {
- "name": "sebastian/lines-of-code",
- "version": "1.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/lines-of-code.git",
- "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5",
- "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5",
- "shasum": ""
- },
- "require": {
- "nikic/php-parser": "^4.18 || ^5.0",
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library for counting the lines of code in PHP source code",
- "homepage": "https://github.com/sebastianbergmann/lines-of-code",
- "support": {
- "issues": "https://github.com/sebastianbergmann/lines-of-code/issues",
- "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.4"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2023-12-22T06:20:34+00:00"
- },
- {
- "name": "sebastian/object-enumerator",
- "version": "4.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "5c9eeac41b290a3712d88851518825ad78f45c71"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71",
- "reference": "5c9eeac41b290a3712d88851518825ad78f45c71",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3",
- "sebastian/object-reflector": "^2.0",
- "sebastian/recursion-context": "^4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Traverses array structures and object graphs to enumerate all referenced objects",
- "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "support": {
- "issues": "https://github.com/sebastianbergmann/object-enumerator/issues",
- "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-10-26T13:12:34+00:00"
- },
- {
- "name": "sebastian/object-reflector",
- "version": "2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/object-reflector.git",
- "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
- "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Allows reflection of object attributes, including inherited and non-public ones",
- "homepage": "https://github.com/sebastianbergmann/object-reflector/",
- "support": {
- "issues": "https://github.com/sebastianbergmann/object-reflector/issues",
- "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-10-26T13:14:26+00:00"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "4.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
- "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "https://github.com/sebastianbergmann/recursion-context",
- "support": {
- "issues": "https://github.com/sebastianbergmann/recursion-context/issues",
- "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2023-02-03T06:07:39+00:00"
- },
- {
- "name": "sebastian/resource-operations",
- "version": "3.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
- "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides a list of PHP built-in functions that operate on resources",
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "support": {
- "issues": "https://github.com/sebastianbergmann/resource-operations/issues",
- "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-09-28T06:45:17+00:00"
- },
- {
- "name": "sebastian/type",
- "version": "3.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/type.git",
- "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
- "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Collection of value objects that represent the types of the PHP type system",
- "homepage": "https://github.com/sebastianbergmann/type",
- "support": {
- "issues": "https://github.com/sebastianbergmann/type/issues",
- "source": "https://github.com/sebastianbergmann/type/tree/3.2.1"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2023-02-03T06:13:03+00:00"
- },
- {
- "name": "sebastian/version",
- "version": "3.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "c6c1022351a901512170118436c764e473f6de8c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c",
- "reference": "c6c1022351a901512170118436c764e473f6de8c",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "support": {
- "issues": "https://github.com/sebastianbergmann/version/issues",
- "source": "https://github.com/sebastianbergmann/version/tree/3.0.2"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-09-28T06:39:44+00:00"
- },
- {
- "name": "seld/jsonlint",
- "version": "1.10.1",
- "source": {
- "type": "git",
- "url": "https://github.com/Seldaek/jsonlint.git",
- "reference": "76d449a358ece77d6f1d6331c68453e657172202"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/76d449a358ece77d6f1d6331c68453e657172202",
- "reference": "76d449a358ece77d6f1d6331c68453e657172202",
- "shasum": ""
- },
- "require": {
- "php": "^5.3 || ^7.0 || ^8.0"
- },
- "require-dev": {
- "phpstan/phpstan": "^1.5",
- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^8.5.13"
- },
- "bin": [
- "bin/jsonlint"
- ],
- "type": "library",
- "autoload": {
- "psr-4": {
- "Seld\\JsonLint\\": "src/Seld/JsonLint/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "https://seld.be"
- }
- ],
- "description": "JSON Linter",
- "keywords": [
- "json",
- "linter",
- "parser",
- "validator"
- ],
- "support": {
- "issues": "https://github.com/Seldaek/jsonlint/issues",
- "source": "https://github.com/Seldaek/jsonlint/tree/1.10.1"
- },
- "funding": [
- {
- "url": "https://github.com/Seldaek",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/seld/jsonlint",
- "type": "tidelift"
- }
- ],
- "time": "2023-12-18T13:03:25+00:00"
- },
- {
- "name": "seld/phar-utils",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/Seldaek/phar-utils.git",
- "reference": "ea2f4014f163c1be4c601b9b7bd6af81ba8d701c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Seldaek/phar-utils/zipball/ea2f4014f163c1be4c601b9b7bd6af81ba8d701c",
- "reference": "ea2f4014f163c1be4c601b9b7bd6af81ba8d701c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Seld\\PharUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be"
- }
- ],
- "description": "PHAR file format utilities, for when PHP phars you up",
- "keywords": [
- "phar"
- ],
- "support": {
- "issues": "https://github.com/Seldaek/phar-utils/issues",
- "source": "https://github.com/Seldaek/phar-utils/tree/1.2.1"
- },
- "time": "2022-08-31T10:31:18+00:00"
- },
- {
- "name": "seld/signal-handler",
- "version": "2.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/Seldaek/signal-handler.git",
- "reference": "04a6112e883ad76c0ada8e4a9f7520bbfdb6bb98"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Seldaek/signal-handler/zipball/04a6112e883ad76c0ada8e4a9f7520bbfdb6bb98",
- "reference": "04a6112e883ad76c0ada8e4a9f7520bbfdb6bb98",
- "shasum": ""
- },
- "require": {
- "php": ">=7.2.0"
- },
- "require-dev": {
- "phpstan/phpstan": "^1",
- "phpstan/phpstan-deprecation-rules": "^1.0",
- "phpstan/phpstan-phpunit": "^1",
- "phpstan/phpstan-strict-rules": "^1.3",
- "phpunit/phpunit": "^7.5.20 || ^8.5.23",
- "psr/log": "^1 || ^2 || ^3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "2.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Seld\\Signal\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be"
- }
- ],
- "description": "Simple unix signal handler that silently fails where signals are not supported for easy cross-platform development",
- "keywords": [
- "posix",
- "sigint",
- "signal",
- "sigterm",
- "unix"
- ],
- "support": {
- "issues": "https://github.com/Seldaek/signal-handler/issues",
- "source": "https://github.com/Seldaek/signal-handler/tree/2.0.2"
- },
- "time": "2023-09-03T09:24:00+00:00"
- },
- {
- "name": "slevomat/coding-standard",
- "version": "8.14.1",
- "source": {
- "type": "git",
- "url": "https://github.com/slevomat/coding-standard.git",
- "reference": "fea1fd6f137cc84f9cba0ae30d549615dbc6a926"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/slevomat/coding-standard/zipball/fea1fd6f137cc84f9cba0ae30d549615dbc6a926",
- "reference": "fea1fd6f137cc84f9cba0ae30d549615dbc6a926",
- "shasum": ""
- },
- "require": {
- "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7 || ^1.0",
- "php": "^7.2 || ^8.0",
- "phpstan/phpdoc-parser": "^1.23.1",
- "squizlabs/php_codesniffer": "^3.7.1"
- },
- "require-dev": {
- "phing/phing": "2.17.4",
- "php-parallel-lint/php-parallel-lint": "1.3.2",
- "phpstan/phpstan": "1.10.37",
- "phpstan/phpstan-deprecation-rules": "1.1.4",
- "phpstan/phpstan-phpunit": "1.3.14",
- "phpstan/phpstan-strict-rules": "1.5.1",
- "phpunit/phpunit": "8.5.21|9.6.8|10.3.5"
- },
- "type": "phpcodesniffer-standard",
- "extra": {
- "branch-alias": {
- "dev-master": "8.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "SlevomatCodingStandard\\": "SlevomatCodingStandard/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "Slevomat Coding Standard for PHP_CodeSniffer complements Consistence Coding Standard by providing sniffs with additional checks.",
- "keywords": [
- "dev",
- "phpcs"
- ],
- "support": {
- "issues": "https://github.com/slevomat/coding-standard/issues",
- "source": "https://github.com/slevomat/coding-standard/tree/8.14.1"
- },
- "funding": [
- {
- "url": "https://github.com/kukulich",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/slevomat/coding-standard",
- "type": "tidelift"
- }
- ],
- "time": "2023-10-08T07:28:08+00:00"
- },
- {
- "name": "squizlabs/php_codesniffer",
- "version": "3.8.0",
- "source": {
- "type": "git",
- "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git",
- "reference": "5805f7a4e4958dbb5e944ef1e6edae0a303765e7"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/5805f7a4e4958dbb5e944ef1e6edae0a303765e7",
- "reference": "5805f7a4e4958dbb5e944ef1e6edae0a303765e7",
- "shasum": ""
- },
- "require": {
- "ext-simplexml": "*",
- "ext-tokenizer": "*",
- "ext-xmlwriter": "*",
- "php": ">=5.4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0"
- },
- "bin": [
- "bin/phpcs",
- "bin/phpcbf"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.x-dev"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Greg Sherwood",
- "role": "Former lead"
- },
- {
- "name": "Juliette Reinders Folmer",
- "role": "Current lead"
- },
- {
- "name": "Contributors",
- "homepage": "https://github.com/PHPCSStandards/PHP_CodeSniffer/graphs/contributors"
- }
- ],
- "description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.",
- "homepage": "https://github.com/PHPCSStandards/PHP_CodeSniffer",
- "keywords": [
- "phpcs",
- "standards",
- "static analysis"
- ],
- "support": {
- "issues": "https://github.com/PHPCSStandards/PHP_CodeSniffer/issues",
- "security": "https://github.com/PHPCSStandards/PHP_CodeSniffer/security/policy",
- "source": "https://github.com/PHPCSStandards/PHP_CodeSniffer",
- "wiki": "https://github.com/PHPCSStandards/PHP_CodeSniffer/wiki"
- },
- "funding": [
- {
- "url": "https://github.com/PHPCSStandards",
- "type": "github"
- },
- {
- "url": "https://github.com/jrfnl",
- "type": "github"
- },
- {
- "url": "https://opencollective.com/php_codesniffer",
- "type": "open_collective"
- }
- ],
- "time": "2023-12-08T12:32:31+00:00"
- },
- {
- "name": "symfony/config",
- "version": "v6.0.19",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/config.git",
- "reference": "db4fc45c24e0c3e2198e68ada9d7f90daa1f97e3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/db4fc45c24e0c3e2198e68ada9d7f90daa1f97e3",
- "reference": "db4fc45c24e0c3e2198e68ada9d7f90daa1f97e3",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.2",
- "symfony/deprecation-contracts": "^2.1|^3",
- "symfony/filesystem": "^5.4|^6.0",
- "symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-php81": "^1.22"
- },
- "conflict": {
- "symfony/finder": "<4.4"
- },
- "require-dev": {
- "symfony/event-dispatcher": "^5.4|^6.0",
- "symfony/finder": "^5.4|^6.0",
- "symfony/messenger": "^5.4|^6.0",
- "symfony/service-contracts": "^1.1|^2|^3",
- "symfony/yaml": "^5.4|^6.0"
- },
- "suggest": {
- "symfony/yaml": "To use the yaml reference dumper"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Config\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Helps you find, load, combine, autofill and validate configuration values of any kind",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/config/tree/v6.0.19"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-09T04:36:00+00:00"
- },
- {
- "name": "symfony/console",
- "version": "v6.0.19",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/console.git",
- "reference": "c3ebc83d031b71c39da318ca8b7a07ecc67507ed"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/c3ebc83d031b71c39da318ca8b7a07ecc67507ed",
- "reference": "c3ebc83d031b71c39da318ca8b7a07ecc67507ed",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.2",
- "symfony/polyfill-mbstring": "~1.0",
- "symfony/service-contracts": "^1.1|^2|^3",
- "symfony/string": "^5.4|^6.0"
- },
- "conflict": {
- "symfony/dependency-injection": "<5.4",
- "symfony/dotenv": "<5.4",
- "symfony/event-dispatcher": "<5.4",
- "symfony/lock": "<5.4",
- "symfony/process": "<5.4"
- },
- "provide": {
- "psr/log-implementation": "1.0|2.0|3.0"
- },
- "require-dev": {
- "psr/log": "^1|^2|^3",
- "symfony/config": "^5.4|^6.0",
- "symfony/dependency-injection": "^5.4|^6.0",
- "symfony/event-dispatcher": "^5.4|^6.0",
- "symfony/lock": "^5.4|^6.0",
- "symfony/process": "^5.4|^6.0",
- "symfony/var-dumper": "^5.4|^6.0"
- },
- "suggest": {
- "psr/log": "For using the console logger",
- "symfony/event-dispatcher": "",
- "symfony/lock": "",
- "symfony/process": ""
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Console\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Eases the creation of beautiful and testable command line interfaces",
- "homepage": "https://symfony.com",
- "keywords": [
- "cli",
- "command line",
- "console",
- "terminal"
- ],
- "support": {
- "source": "https://github.com/symfony/console/tree/v6.0.19"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-01T08:36:10+00:00"
- },
- {
- "name": "symfony/dependency-injection",
- "version": "v6.0.20",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dependency-injection.git",
- "reference": "359806e1adebd1c43e18e5ea22acd14bef7fcf8c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/359806e1adebd1c43e18e5ea22acd14bef7fcf8c",
- "reference": "359806e1adebd1c43e18e5ea22acd14bef7fcf8c",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.2",
- "psr/container": "^1.1|^2.0",
- "symfony/deprecation-contracts": "^2.1|^3",
- "symfony/polyfill-php81": "^1.22",
- "symfony/service-contracts": "^1.1.6|^2.0|^3.0"
- },
- "conflict": {
- "ext-psr": "<1.1|>=2",
- "symfony/config": "<5.4",
- "symfony/finder": "<5.4",
- "symfony/proxy-manager-bridge": "<5.4",
- "symfony/yaml": "<5.4"
- },
- "provide": {
- "psr/container-implementation": "1.1|2.0",
- "symfony/service-implementation": "1.1|2.0|3.0"
- },
- "require-dev": {
- "symfony/config": "^5.4|^6.0",
- "symfony/expression-language": "^5.4|^6.0",
- "symfony/yaml": "^5.4|^6.0"
- },
- "suggest": {
- "symfony/config": "",
- "symfony/expression-language": "For using expressions in service container configuration",
- "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required",
- "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
- "symfony/yaml": ""
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DependencyInjection\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Allows you to standardize and centralize the way objects are constructed in your application",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/dependency-injection/tree/v6.0.20"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-30T15:41:07+00:00"
- },
- {
- "name": "symfony/deprecation-contracts",
- "version": "v3.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/deprecation-contracts.git",
- "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/26954b3d62a6c5fd0ea8a2a00c0353a14978d05c",
- "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "3.0-dev"
- },
- "thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
- }
- },
- "autoload": {
- "files": [
- "function.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "A generic function and convention to trigger deprecation notices",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/deprecation-contracts/tree/v3.0.2"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2022-01-02T09:55:41+00:00"
- },
- {
- "name": "symfony/filesystem",
- "version": "v6.0.19",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/filesystem.git",
- "reference": "3d49eec03fda1f0fc19b7349fbbe55ebc1004214"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/3d49eec03fda1f0fc19b7349fbbe55ebc1004214",
- "reference": "3d49eec03fda1f0fc19b7349fbbe55ebc1004214",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.2",
- "symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-mbstring": "~1.8"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Filesystem\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Provides basic utilities for the filesystem",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/filesystem/tree/v6.0.19"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-20T17:44:14+00:00"
- },
- {
- "name": "symfony/finder",
- "version": "v6.0.19",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/finder.git",
- "reference": "5cc9cac6586fc0c28cd173780ca696e419fefa11"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/5cc9cac6586fc0c28cd173780ca696e419fefa11",
- "reference": "5cc9cac6586fc0c28cd173780ca696e419fefa11",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.2"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Finder\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Finds files and directories via an intuitive fluent interface",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/finder/tree/v6.0.19"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-20T17:44:14+00:00"
- },
- {
- "name": "symfony/polyfill-ctype",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-ctype.git",
- "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb",
- "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "provide": {
- "ext-ctype": "*"
- },
- "suggest": {
- "ext-ctype": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Ctype\\": ""
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Gert de Pagter",
- "email": "BackEndTea@gmail.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill for ctype functions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "ctype",
- "polyfill",
- "portable"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-ctype/tree/v1.28.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/polyfill-intl-grapheme",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-intl-grapheme.git",
- "reference": "875e90aeea2777b6f135677f618529449334a612"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/875e90aeea2777b6f135677f618529449334a612",
- "reference": "875e90aeea2777b6f135677f618529449334a612",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "suggest": {
- "ext-intl": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Intl\\Grapheme\\": ""
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill for intl's grapheme_* functions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "grapheme",
- "intl",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.28.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/polyfill-intl-normalizer",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-intl-normalizer.git",
- "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
- "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "suggest": {
- "ext-intl": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Intl\\Normalizer\\": ""
- },
- "classmap": [
- "Resources/stubs"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill for intl's Normalizer class and related functions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "intl",
- "normalizer",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.28.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "42292d99c55abe617799667f454222c54c60e229"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229",
- "reference": "42292d99c55abe617799667f454222c54c60e229",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "provide": {
- "ext-mbstring": "*"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Mbstring\\": ""
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill for the Mbstring extension",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "mbstring",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-07-28T09:04:16+00:00"
- },
- {
- "name": "symfony/polyfill-php73",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php73.git",
- "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fe2f306d1d9d346a7fee353d0d5012e401e984b5",
- "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Php73\\": ""
- },
- "classmap": [
- "Resources/stubs"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-php73/tree/v1.28.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/polyfill-php80",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php80.git",
- "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
- "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Php80\\": ""
- },
- "classmap": [
- "Resources/stubs"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Ion Bazan",
- "email": "ion.bazan@gmail.com"
- },
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-php80/tree/v1.28.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/polyfill-php81",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php81.git",
- "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/7581cd600fa9fd681b797d00b02f068e2f13263b",
- "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Php81\\": ""
- },
- "classmap": [
- "Resources/stubs"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-php81/tree/v1.28.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/process",
- "version": "v6.0.19",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "2114fd60f26a296cc403a7939ab91478475a33d4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/2114fd60f26a296cc403a7939ab91478475a33d4",
- "reference": "2114fd60f26a296cc403a7939ab91478475a33d4",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.2"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Executes commands in sub-processes",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/process/tree/v6.0.19"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-01T08:36:10+00:00"
- },
- {
- "name": "symfony/service-contracts",
- "version": "v3.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/service-contracts.git",
- "reference": "d78d39c1599bd1188b8e26bb341da52c3c6d8a66"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d78d39c1599bd1188b8e26bb341da52c3c6d8a66",
- "reference": "d78d39c1599bd1188b8e26bb341da52c3c6d8a66",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.2",
- "psr/container": "^2.0"
- },
- "conflict": {
- "ext-psr": "<1.1|>=2"
- },
- "suggest": {
- "symfony/service-implementation": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "3.0-dev"
- },
- "thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Contracts\\Service\\": ""
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Generic abstractions related to writing services",
- "homepage": "https://symfony.com",
- "keywords": [
- "abstractions",
- "contracts",
- "decoupling",
- "interfaces",
- "interoperability",
- "standards"
- ],
- "support": {
- "source": "https://github.com/symfony/service-contracts/tree/v3.0.2"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2022-05-30T19:17:58+00:00"
- },
- {
- "name": "symfony/string",
- "version": "v6.0.19",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/string.git",
- "reference": "d9e72497367c23e08bf94176d2be45b00a9d232a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/d9e72497367c23e08bf94176d2be45b00a9d232a",
- "reference": "d9e72497367c23e08bf94176d2be45b00a9d232a",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.2",
- "symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-intl-grapheme": "~1.0",
- "symfony/polyfill-intl-normalizer": "~1.0",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "conflict": {
- "symfony/translation-contracts": "<2.0"
- },
- "require-dev": {
- "symfony/error-handler": "^5.4|^6.0",
- "symfony/http-client": "^5.4|^6.0",
- "symfony/translation-contracts": "^2.0|^3.0",
- "symfony/var-exporter": "^5.4|^6.0"
- },
- "type": "library",
- "autoload": {
- "files": [
- "Resources/functions.php"
- ],
- "psr-4": {
- "Symfony\\Component\\String\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way",
- "homepage": "https://symfony.com",
- "keywords": [
- "grapheme",
- "i18n",
- "string",
- "unicode",
- "utf-8",
- "utf8"
- ],
- "support": {
- "source": "https://github.com/symfony/string/tree/v6.0.19"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2023-01-01T08:36:10+00:00"
- },
- {
- "name": "theseer/tokenizer",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/theseer/tokenizer.git",
- "reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/theseer/tokenizer/zipball/b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
- "reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-tokenizer": "*",
- "ext-xmlwriter": "*",
- "php": "^7.2 || ^8.0"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Arne Blankerts",
- "email": "arne@blankerts.de",
- "role": "Developer"
- }
- ],
- "description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
- "support": {
- "issues": "https://github.com/theseer/tokenizer/issues",
- "source": "https://github.com/theseer/tokenizer/tree/1.2.2"
- },
- "funding": [
- {
- "url": "https://github.com/theseer",
- "type": "github"
- }
- ],
- "time": "2023-11-20T00:12:19+00:00"
- },
- {
- "name": "tysonandre/var_representation_polyfill",
- "version": "0.1.3",
- "source": {
- "type": "git",
- "url": "https://github.com/TysonAndre/var_representation_polyfill.git",
- "reference": "e9116c2c352bb0835ca428b442dde7767c11ad32"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/TysonAndre/var_representation_polyfill/zipball/e9116c2c352bb0835ca428b442dde7767c11ad32",
- "reference": "e9116c2c352bb0835ca428b442dde7767c11ad32",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": "^7.2.0|^8.0.0"
- },
- "provide": {
- "ext-var_representation": "*"
- },
- "require-dev": {
- "phan/phan": "^5.4.1",
- "phpunit/phpunit": "^8.5.0"
- },
- "suggest": {
- "ext-var_representation": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "0.1.3-dev"
- }
- },
- "autoload": {
- "files": [
- "src/var_representation.php"
- ],
- "psr-4": {
- "VarRepresentation\\": "src/VarRepresentation"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Tyson Andre"
- }
- ],
- "description": "Polyfill for var_representation: convert a variable to a string in a way that fixes the shortcomings of var_export",
- "keywords": [
- "var_export",
- "var_representation"
- ],
- "support": {
- "issues": "https://github.com/TysonAndre/var_representation_polyfill/issues",
- "source": "https://github.com/TysonAndre/var_representation_polyfill/tree/0.1.3"
- },
- "time": "2022-08-31T12:59:22+00:00"
- },
- {
- "name": "webmozart/assert",
- "version": "1.11.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozarts/assert.git",
- "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991",
- "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991",
- "shasum": ""
- },
- "require": {
- "ext-ctype": "*",
- "php": "^7.2 || ^8.0"
- },
- "conflict": {
- "phpstan/phpstan": "<0.12.20",
- "vimeo/psalm": "<4.6.1 || 4.6.2"
- },
- "require-dev": {
- "phpunit/phpunit": "^8.5.13"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.10-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "support": {
- "issues": "https://github.com/webmozarts/assert/issues",
- "source": "https://github.com/webmozarts/assert/tree/1.11.0"
- },
- "time": "2022-06-03T18:03:27+00:00"
- }
- ],
- "aliases": [],
- "minimum-stability": "dev",
- "stability-flags": [],
- "prefer-stable": true,
- "prefer-lowest": false,
- "platform": {
- "php": "^8.0 || ^8.1 || ^8.2",
- "ext-mysqli": "*",
- "ext-mysqlnd": "*",
- "ext-pcntl": "*",
- "composer-plugin-api": "^2"
- },
- "platform-dev": {
- "ext-posix": "*",
- "ext-ast": "*"
- },
- "plugin-api-version": "2.3.0"
-}
diff --git a/examples/MydbRepository/UserRepository.php b/examples/MydbRepository/UserRepository.php
deleted file mode 100644
index 7d85b3aee64..00000000000
--- a/examples/MydbRepository/UserRepository.php
+++ /dev/null
@@ -1,38 +0,0 @@
-
- *
- * MIT License
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- * @license https://opensource.org/licenses/mit-license.php MIT
- */
-
-// @codeCoverageIgnoreStart
-
-namespace MydbRepository;
-
-use sql\MydbRepository;
-
-class UserRepository extends MydbRepository
-{
-
- public function getDatabaseIdentifier(): string
- {
- return 'db1';
- }
-
- public function findById(int $id): ?array
- {
- $db = $this->getDatabase();
-
- return $db->select("SELECT * FROM users WHERE id = " . $db->escape($id));
- }
-}
-// @codeCoverageIgnoreEnd
diff --git a/examples/example.php b/examples/example.php
deleted file mode 100644
index 7eb87704226..00000000000
--- a/examples/example.php
+++ /dev/null
@@ -1,101 +0,0 @@
-
- *
- * MIT License
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- * @license https://opensource.org/licenses/mit-license.php MIT
- */
-// @codeCoverageIgnoreStart
-
-
-declare(strict_types = 1);
-
-use MydbRepository\UserRepository;
-use sql\Mydb;
-use sql\MydbCredentials;
-use sql\MydbLogger;
-use sql\MydbOptions;
-use sql\MydbRegistry;
-
-include_once __DIR__ . '/../vendor/autoload.php';
-include_once __DIR__ . '/MydbRepository/UserRepository.php';
-
-
-$registry = new MydbRegistry();
-$mylogger = new MydbLogger();
-$sqlHost = 'mysql' === gethostbyname('mysql') ? '0.0.0.0' : gethostbyname('mysql');
-
-$auth = new MydbCredentials($sqlHost, 'root', 'root', 'mydb', 3306);
-$opts = new MydbOptions();
-$opts->setTransactionIsolationLevel(MydbOptions::TRANSACTION_ISOLATION_LEVEL_READ_COMMITTED);
-$mydb = new Mydb($auth, $mylogger, $opts);
-
-$mydb->beginTransaction();
-
-$array1 = $mydb->select("SELECT 123");
-$array2 = $mydb->query("SELECT 123");
-
-assert($array1 === $array2);
-
-$created = $mydb->command('CREATE TEMPORARY TABLE `users` (
- `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `name` varchar(200) NOT NULL,
- `myenum` enum ("e1","e2") NOT NULL DEFAULT "e1",
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4');
-
-assert(true === $created);
-
-$insertedStringId = $mydb->insert("INSERT INTO users (id, name) VALUES (10, 'user10')");
-assert('10' === $insertedStringId);
-
-$insertedStringId = $mydb->insertOne(['id' => 20, 'name' => 'user20'], 'users');
-assert('20' === $insertedStringId);
-
-$mydb->insertMany([[30, 'user30'], [40, 'user40']], ['id', 'name'], 'users');
-
-assert(['10', '20', '30', '40'] === array_column($mydb->query("SELECT id, name FROM users ORDER BY id ASC"), 'id'));
-
-$deletedRowsCount = $mydb->delete('DELETE FROM users WHERE id = 40');
-assert(1 === $deletedRowsCount);
-
-assert(['10', '20', '30'] === array_column($mydb->select("SELECT id, name FROM users ORDER BY id ASC"), 'id'));
-
-$enum = $mydb->getEnumValues('users', 'myenum');
-assert(['e1', 'e2'] === $enum);
-
-$prim = $mydb->getPrimaryKeys('users');
-assert(['id'] === $prim);
-
-$deletedRowsCount = $mydb->deleteWhere(['id' => '30'], 'users');
-assert(1 === $deletedRowsCount);
-
-assert(['10', '20'] === array_column($mydb->select("SELECT id, name FROM users ORDER BY id ASC"), 'id'));
-
-assert(1, $mydb->updateWhere(['id' => 99], ['id' => 10], 'users'));
-assert(['20', '99'] === array_column($mydb->select("SELECT id, name FROM users ORDER BY id ASC"), 'id'));
-
-$db10 = new Mydb($auth, $mylogger, $opts);
-$db10->open();
-
-$db20 = new Mydb($auth, $mylogger, $opts);
-$registry['db1'] = $mydb;
-$registry['db2'] = $db10;
-$registry['db3'] = $db20;
-
-$db10->close();
-$db20->close();
-
-$userRepo = new UserRepository($registry);
-$user20 = $userRepo->findById(20);
-assert('user20' === $user20[0]['name']);
-
-$mydb->rollbackTransaction();
-echo 'OK' . PHP_EOL;
-exit(0);
-// @codeCoverageIgnoreEnd
diff --git a/mysql/InnoDbMemoryDisk.png b/mysql/InnoDbMemoryDisk.png
new file mode 100644
index 00000000000..68ac86c5065
Binary files /dev/null and b/mysql/InnoDbMemoryDisk.png differ
diff --git a/mysql/MySQL_PERFORMANCE.md b/mysql/MySQL_PERFORMANCE.md
new file mode 100644
index 00000000000..eb31ea8a46e
--- /dev/null
+++ b/mysql/MySQL_PERFORMANCE.md
@@ -0,0 +1,69 @@
+
+### Solution to 'MySQL server has gone away'
+
+[Solutions for the 2006 MySQL error](https://haydenjames.io/mysql-server-has-gone-away-error-solutions/)
+
+ 1. Check values of `wait_timeout` MySQL setting along with `net_read_timeout`, `net_write_timeout`, `interactive_timeout` and `connect_timeout`
+ 2. Verify PHP MySQL configuration options on php.ini: `mysql.connect_timeout` and `mysql.allow_persistent`
+ 3. To allow slow/long-running queries, increase the `default_socket_timeout` and `max_input_time`. They'll be applied
+ if no `mysqlnd` timeouts are set per (`mysqlnd.net_read_timeout`)
+ 4. If expect large results, check value of `max_allowed_package` to receive a packet that's too large
+ 5. As last, increasing `innodb_log_file_size` MySQL variable might help
+
+### Finetuning MySQL
+
+ - `explain extended` and `show warnings`
+ - `show index from table`
+ - `show table status where Name = 'table'`
+ - `show engine innodb status`
+ - Rules of Thumb for MySQL [Rick's RoTs](http://mysql.rjweb.org/doc.php/ricksrots#partitioning)
+ - MySQL process list `SELECT ID,USER,HOST,DB,COMMAND,TIME,STATE,LEFT(REPLACE(REPLACE(INFO, '\n', ' '), ' ', ' '), 80) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE != '' ORDER BY TIME DESC LIMIT 50`
+ - SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool_pages_%' ([Values are in blocks of 16 kilobytes](https://www.fromdual.com/de/innodb-variables-and-status-explained))
+
+#### MySQL buffer `innodb_buffer_pool_size` in Gb
+`SELECT CONCAT(CEILING(RIBPS/POWER(1024,pw)), SUBSTR(' KMGT',pw+1,1) Recommended_InnoDB_Buffer_Pool_Size FROM
+ (
+ SELECT RIBPS,FLOOR(LOG(RIBPS)/LOG(1024)) pw
+ FROM (SELECT SUM(data_length+index_length)*1.1*growth RIBPS
+ FROM information_schema.tables AAA,
+ (SELECT 1.25 growth) BBB
+ WHERE ENGINE='InnoDB') AA
+ ) A;`
+#### MySQL table size
+`SELECT table_schema,
+ table_name,
+ round(((data_length + index_length) / 1024 / 1024), 2) 'SizeMB'
+ FROM information_schema.TABLES
+ ORDER BY (data_length + index_length) DESC LIMIT 10`
+
+#### MySQL table partition sizes
+`SELECT table_schema as 'Database',
+ table_name AS 'Table',
+ PARTITION_NAME,
+ SUBPARTITION_NAME,
+ round(((data_length + index_length) / 1024 / 1024), 2) 'SizeMB'
+ FROM information_schema.PARTITIONS
+ ORDER BY (data_length + index_length) DESC, TABLE_NAME LIMIT 10`
+#### MySQL Optimizer
+`SET SESSION optimizer_trace="enabled=on";
+ SELECT ...;
+ SELECT * FROM INFORMATION_SCHEMA.OPTIMIZER_TRACE;
+ SET SESSION optimizer_trace="enabled=off";`
+
+#### MySQL Profiling
+`SET SESSION profiling=1;
+ SELECT ...;
+ SET SESSION profiling=0;
+ SHOW PROFILE;
+ `
diff --git a/mysql/index.html b/mysql/index.html
new file mode 100644
index 00000000000..bbd064296dd
--- /dev/null
+++ b/mysql/index.html
@@ -0,0 +1,62 @@
+
+
+
+
+ Index of /
+
+
+
+
+
+
Index of /mysql
+
+
+
+
+ Filename
+ |
+
+ Size
+ |
+
+ Last Modified
+ |
+
+
+
+
+
+ .. ..
+ |
+ - |
+ 10-Aug-2025 23:25 |
+
+
+
+
+ InnoDbMemoryDisk.png InnoDbMemoryDisk.png
+ |
+ 115 kB |
+ 10-Aug-2025 23:25 |
+
+
+
+ MySQL_PERFORMANCE.md MySQL_PERFORMANCE.md
+ |
+ 2 kB |
+ 10-Aug-2025 23:25 |
+
+
+
+
+
+ generated by apindex
+
+
+
+
+