Bugfix: child class in valid drivers#4314
Conversation
|
I don't have time to keep messing around with the tests. The reason for the pull request is that Drivers usage is not the same between CI2 and CI3, but the docs are the same. So either the docs are wrong for CI3, or there's a need to go in and make drivers work like CI2. The problem being that the array of valid drivers has changed the way valid drivers are listed. |
|
What part of the documentation suggests this? |
|
Actually, now that you mention it, the documentation for drivers is so poor, that one would have to resort to tutorials on the internet, or asking questions on the forum to get them working. So you are right, and I am wrong, because the documentation doesn't ever mention that the $valid_drivers array exists, or how to use it. That said, anyone who used CI2 drivers successfully would have their drivers immediately fail on CI3 because the usage of $valid_drivers has changed. Nowhere on the Upgrading from 2.2.x to 3.0.x page is this mentioned, which isn't a surprise because $valid_drivers isn't mentioned anywhere else in the docs. It would be really nice to include a little documentation about the $valid_drivers array, because that is an essential thing to know about drivers. Is mere documentation the proper solution, or should the CI3 valid drivers be set the same was as CI2? |
|
Changing the code to match CI2's behavior would obviously be a BC break for CI3 at this point, so closing the PR. However, you might find the discussion in #4187 useful. |
|
I see that you don't like the Drivers feature, and it's your opinion that it may not be as useful as originally thought, and that you'd just like to get rid of the Drivers feature. That sounds like a great solution, because nobody is willing to make documentation changes that allow it to be easily used, and in your own words, you don't even know how it works. I used it once, and it wasn't anything that couldn't have been accomplished in others ways. I do like that using drivers kept all of the files in a single sub-directory of application/libraries. |
$child will never be in $valid_drivers unless backwards compatibility with CI2 and the docs are wrong.