Skip to content

Commit e5703f7

Browse files
committed
feat: Add post-install script for Composer setup and user interaction
- Implemented a post-install script that runs after Composer installation. - The script prompts the user to run a setup wizard or provides manual setup instructions. - Added health check system for Cycle ORM with detailed checks and metrics collection. - Introduced middleware for health check endpoint and transaction management. - Created metrics collector and performance profiler for monitoring ORM operations. - Added tests for commands, health checks, middleware, and integration scenarios. - Refactored existing command classes to include proper namespaces and improved structure. - Removed unused SeedCommand class.
1 parent 3e1df57 commit e5703f7

31 files changed

+4441
-120
lines changed

.php-cs-fixer.dist.php

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
2+
<?php
3+
4+
$finder = PhpCsFixer\Finder::create()
5+
->in([
6+
__DIR__ . '/src',
7+
__DIR__ . '/tests',
8+
])
9+
->name('*.php')
10+
->notName('*.blade.php')
11+
->ignoreDotFiles(true)
12+
->ignoreVCS(true);
13+
14+
return (new PhpCsFixer\Config())
15+
->setRules([
16+
'@PSR12' => true,
17+
'@PhpCsFixer' => true,
18+
'array_syntax' => ['syntax' => 'short'],
19+
'binary_operator_spaces' => [
20+
'default' => 'single_space',
21+
'operators' => ['=>' => null]
22+
],
23+
'blank_line_after_opening_tag' => true,
24+
'blank_line_before_statement' => [
25+
'statements' => ['return']
26+
],
27+
'cast_spaces' => true,
28+
'class_attributes_separation' => [
29+
'elements' => ['method' => 'one', 'property' => 'one']
30+
],
31+
'concat_space' => ['spacing' => 'one'],
32+
'declare_equal_normalize' => true,
33+
'function_typehint_space' => true,
34+
'include' => true,
35+
'increment_style' => ['style' => 'post'],
36+
'lowercase_cast' => true,
37+
'magic_constant_casing' => true,
38+
'method_argument_space' => [
39+
'on_multiline' => 'ensure_fully_multiline'
40+
],
41+
'native_function_casing' => true,
42+
'new_with_braces' => true,
43+
'no_blank_lines_after_class_opening' => true,
44+
'no_blank_lines_after_phpdoc' => true,
45+
'no_empty_comment' => true,
46+
'no_empty_phpdoc' => true,
47+
'no_empty_statement' => true,
48+
'no_extra_blank_lines' => [
49+
'tokens' => [
50+
'curly_brace_block',
51+
'extra',
52+
'parenthesis_brace_block',
53+
'square_brace_block',
54+
'throw',
55+
'use'
56+
]
57+
],
58+
'no_leading_import_slash' => true,
59+
'no_leading_namespace_whitespace' => true,
60+
'no_mixed_echo_print' => ['use' => 'echo'],
61+
'no_multiline_whitespace_around_double_arrow' => true,
62+
'no_short_bool_cast' => true,
63+
'no_singleline_whitespace_before_semicolons' => true,
64+
'no_spaces_around_offset' => true,
65+
'no_trailing_comma_in_list_call' => true,
66+
'no_trailing_comma_in_singleline_array' => true,
67+
'no_unneeded_control_parentheses' => true,
68+
'no_unused_imports' => true,
69+
'no_whitespace_before_comma_in_array' => true,
70+
'no_whitespace_in_blank_line' => true,
71+
'normalize_index_brace' => true,
72+
'object_operator_without_whitespace' => true,
73+
'php_unit_fqcn_annotation' => true,
74+
'phpdoc_align' => true,
75+
'phpdoc_annotation_without_dot' => true,
76+
'phpdoc_indent' => true,
77+
'phpdoc_inline_tag_normalizer' => true,
78+
'phpdoc_no_access' => true,
79+
'phpdoc_no_alias_tag' => true,
80+
'phpdoc_no_empty_return' => true,
81+
'phpdoc_no_package' => true,
82+
'phpdoc_no_useless_inheritdoc' => true,
83+
'phpdoc_return_self_reference' => true,
84+
'phpdoc_scalar' => true,
85+
'phpdoc_separation' => true,
86+
'phpdoc_single_line_var_spacing' => true,
87+
'phpdoc_summary' => true,
88+
'phpdoc_to_comment' => true,
89+
'phpdoc_trim' => true,
90+
'phpdoc_types' => true,
91+
'phpdoc_var_without_name' => true,
92+
'self_accessor' => true,
93+
'short_scalar_cast' => true,
94+
'simplified_null_return' => true,
95+
'single_blank_line_at_eof' => true,
96+
'single_blank_line_before_namespace' => true,
97+
'single_class_element_per_statement' => true,
98+
'single_line_after_imports' => true,
99+
'single_line_comment_style' => ['comment_types' => ['hash']],
100+
'single_quote' => true,
101+
'space_after_semicolon' => true,
102+
'standardize_not_equals' => true,
103+
'ternary_operator_spaces' => true,
104+
'trailing_comma_in_multiline' => ['elements' => ['arrays']],
105+
'trim_array_spaces' => true,
106+
'unary_operator_spaces' => true,
107+
'whitespace_after_comma_in_array' => true,
108+
])
109+
->setFinder($finder)
110+
->setUsingCache(true)
111+
->setRiskyAllowed(true);

0 commit comments

Comments
 (0)