chore(tests): preserve generated C++ sources for CI artifacts
- Remove copilot instructions file that was causing confusion
- Add logic to copy generated .cc and .h files when PHPT tests fail
- Set up TYPEPHP_PHPT_GENERATED_ARTIFACT_DIR environment variable in CI
- Include generated source files in uploaded artifacts for debugging
- Replace curl extension with embed extension in workflow configuration
- Remove explicit PHP embed library installation from CI steps
- Update PHPT runner to use bootstrap compiler via --compiler flag
```
- Removed custom setup-php-apt action that installed PHP from Ondrej PPA
- Switched to using shivammathur/setup-php@v2 community action
- Updated workflow jobs to use ubuntu-latest instead of ubuntu-24.04
- Configured PHP extensions (curl, redis, mbstring, ffi) via setup action
- Set PHP ini values through action configuration including FFI enable,
memory limits, and error reporting settings
- Updated PHP embed library installation
- Removed --compiler ./tpc flag from run-tests.php command
- Fixed test execution to use default compiler instead of bootstrap compiler
- Updated workflow to properly handle compiler tests without explicit compiler path
- Replace hardcoded package list with dynamic array that checks OPcache availability
- Add conditional logic to install OPcache only when available in PPA for target PHP version
- Modify phpenmod command to conditionally enable OPcache based on config file existence
- Update extension verification script to check OPcache presence conditionally
- Remove OPcache from mandatory extensions list in validation check
- Add warning message when OPcache is not available for specific PHP version
- Replace shivammathur/setup-php@v2 with custom setup-php-apt action
- Update all workflow jobs to use ubuntu-24.04 runner
- Create new composite action for installing PHP from Ondrej PPA
- Simplify PHP configuration by using predefined ini settings
- Remove redundant apt-get update commands in build steps
- Update PHP embed library configuration and linking
- Fix ldd command regex pattern for libphp.so detection
- Standardize PHP INI directory paths across all workflows
- Remove unused PHP_INI_SCAN_DIR environment variable exports
- Removed embed extension from PHP extensions list in workflow configuration
- Added explicit installation of version-matched PHP embed library using apt-get
- Implemented version verification script to ensure embed package matches PHP version
- Created symbolic links for PHP embed library with proper path configuration
- Updated environment variables to include PHP embed library path in LD_LIBRARY_PATH
- Added ldd command to verify libphp.so linking in bootstrap compiler step
- Add empty ini directory placeholders for test isolation
- Set PHP_INI_SCAN_DIR environment in include_require and python tests
- Replace no-leak.ini with descriptive comment for dedicated configuration
- Modify ref-call-arg.phpt to use temporary files instead of fixed paths
- Add ZipArchive operations in ref-call-arg.phpt for proper test data generation
- Update expected output values in ref-call-arg.phpt test results
- Add display_startup_errors=1 to php ini-values in workflow configuration
- Enable opcache.jit=0 setting in workflow configuration for consistency
- Increase
- Added phpy.enable_operator_overloading=0 to ini-values in workflow configuration
- Applied the setting to both PHP version matrix configurations in tests.yml
- Maintained existing PHP settings while adding the new operator overloading parameter
- Added precision=17 setting to all PHP configurations
- Increased memory limit to 4GB for all test environments
- Updated error reporting to show errors and warnings only
- Enabled display of errors in console output
- Disabled error logging to prevent interference with tests
- Applied consistent configuration across all PHP version matrices
- Replace zend_string_init with zend_string_init_interned for persistent property defaults
- Use ZVAL_INTERNED_STR instead of ZVAL_STR for interned string values
- Add test case to verify persistent string metadata uses non-refcounted interned zval
- Reduce parallel test jobs from 8 to 4 to accommodate compiler test requirements
- Removed CLAUDE.md guidance file for Claude Code usage
- Removed code reuse improvement plan documentation
- Removed encapsulation review documentation
- Updated composer.json to specify phpstan version constraint
- Fixed namespace issues in Extractor.php exception handling
- Renamed main function in bin/extractor.php to avoid conflicts
- Updated LICENSE to standard GPL format
- Add GitHub Action to patch PHP headers for C++ compatibility
- Update swoole/phpx from v2.4.3 to v2.6.3
- Add phpstan/phpstan as dev dependency
- Update composer.lock with new package versions
- Add complete GPL-3.0 license file to project root
- Update plugin-api-version from 2.1.0 to 2.9.0 in composer.lock
- Replaced all occurrences of native_types::type_* with Type::* constants
- Replaced all occurrences of complex_types::type_* with Type::* constants
- Updated ExtensionProvider annotation to use ExtensionProvider::Keyword
- Modified std array, vector, map, ordered_map, bigfloat, bigint, decimal tests
- Updated stream, array multidimensional, unsafe pointer, and type mismatch tests
- Changed camel case keyword extension to use Type::Any constant
- Updated documentation to reflect Type::* constant usage instead of type_* constants
- Renamed test directory from tests/aot/ to tests/compiler/
- Updated all references in documentation files to point to new location
- Modified test runner commands to use new compiler test path
- Updated guide documentation to reflect directory name change
- Changed all test file paths in markdown documentation accordingly
- Updated CompilerBase.php to use convertIntExpr for bitwise not operations on variables
- Modified gen_stub.php to always use var_export for default value conversion
- Enhanced object_property test to follow strict type checking with TypeError handling
- Added native property test for bitwise not class constant assignments
- Updated Translator.php to return raw values instead of CValue wrappers for constants
- Improved documentation consistency across project overview files
- Added strict types declaration to property assignment test cases
- Change src/Php/Translator.php to src/Translator.php in documentation
- Update class hierarchy diagram to remove Php subdirectory references
- Modify composer.json autoloader to map TypePhp namespace to src directory only
- Adjust all src/Php/* paths to src/* in configuration and test files
- Update project.yml sources to include ./src instead of individual Php subdirectories
- Remove Php subdirectory from file paths in platform and analysis tests
- Clean up directory references in test results documentation
- Updated namespace declarations from PhpAot\Php to TypePhp in all source files
- Modified import statements to use TypePhp instead of PhpAot\Php throughout the codebase
- Adjusted composer.json autoload configuration to map TypePhp namespace to src directories
- Updated documentation references from PhpAot\Php to TypePhp in comments and markdown files
- Changed class references in test files to use new TypePhp namespace
- Updated bootstrap and utility scripts to reference TypePhp namespace
- Removed abstract base class inheritance in CompilerBase class
- Added new properties and methods for indentation and mode handling in CompilerBase
- Updated exception handling to use new TypePhp\Exception namespace
- Rename AOT Language Design Principles to TypePHP Language Design Principles
- Update references from AOT compiler to TypePHP throughout documentation
- Change ahead-of-time compiler terminology in project overview
- Update SSA/e-SSA builder documentation to reflect TypePHP naming
- Modify function call handling documentation to use TypePHP convention
- Rename project references from Swoole-Compiler to TypePHP in documentation
- Update command line usage from php bin/compiler.php to ./tpc
- Change application name constant from Swoole-Compiler (AOT) to TypePHP
- Update file descriptions and metadata in project.yml
- Modify Windows packaging script title to TypePHP
- Replace all copyright headers to reference TypePHP instead of Swoole-Compiler