Add case check for external dependency classes - #2556
Conversation
|
Benchmark reportComparison against PHP 8.3 on |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## development #2556 +/- ##
===============================================
+ Coverage 19.29% 19.45% +0.16%
===============================================
Files 288 288
Lines 24501 24504 +3
===============================================
+ Hits 4728 4768 +40
+ Misses 19773 19736 -37 🚀 New features to boost your workflow:
|
Tested the hypothesis that the case-sensitivity fix (PR zephir-lang#2556/0.23.0) would finally engage external-dependencies for Phalcon\* interfaces, exposing the dormant generateClassHeadersPost interface-include-guard bug (the third gap) as a new C compile failure in phalcon-shared. Empirically disproven: upgraded a live phalcon-shared image to Zephir 0.23.0 and rebuilt against the real /opt/cphalcon sources - build succeeded, CE relationship intact, generated C unchanged. locateExternalClassFile() only tries two casings (exact-FQN or fully-lowercased) and misses Phalcon's actual hybrid casing convention (lowercase root + PascalCase sub-path), so external-dependencies stays dormant for Phalcon classes regardless of version.



Hello!
In raising this pull request, I confirm the following:
Review of #2499 and different vision approach.