Hi, I see your statement on DI on the bottom of the page:
"Although you can register services with the names you want, Phalcon has a several naming conventions that allow it to get the the correct (built-in) service when you need it."
And then a rather large list of services that are accessible only through $di->get('...'), but have no dedicated getters and setters.
This makes it really hard to use IDE autocompletion, and obscurifies the options a developer has.
What is the reasoning behind this decision?
I have not looked into many other parts of the code, but I hope this decision does not obscurify many other parts of the framework as well.