I am upgrading now from 4.1 to 4.2 and I just noticed the same thing, the load event is not fired anymore which I relied upon to do some processing.

Not sure what was the reason for removing the firing of the load event. I did a 4.2.1 source code search and store loadRawData is not invoked anywhere in the library. It could have been justified if there was some internal usage and in order to prevent recursive or duplicate calls it was decided to have it removed.

Basically, loadRawData is more akin to loadData than load. Since loadData doesn't fire any events, nor should loadRawData.

The thing is that loadRawData doesn't depend on any async processing, it must be called directly by the developer, so there's no real need for any events.

Twitter - @evantrimboli
Former Sencha framework engineer, available for consulting.
As of 2017-09-22 I am not employed by Sencha, all subsequent posts are my own and do not represent Sencha in any way.

It makes sense what you say, however, wouldn't have been better to wait until a major version was released (i.e. 4 -> 5)? In my mind minor releases should contain fixes and possible new minor functionality, but you shouldn't be doing breaking changes of this kind where the behavior of public functions is altered so drastically.
I thought that upgrading from 4.1 to 4.2 should be a breeze.
I patched back the function to fire the load event.

It happened in 4.1 -> 4.2, typically we do have minor API changes in between .x releases. If we could only ever alter the API in major releases, it would make it quite difficult to get anywhere. Also, this isn't so much an API change as a bug, it was never intended to fire that event.

I think

altered so drastically.

is a bit of an overstatement.

Twitter - @evantrimboli
Former Sencha framework engineer, available for consulting.
As of 2017-09-22 I am not employed by Sencha, all subsequent posts are my own and do not represent Sencha in any way.

Maybe it is an overstatement, but when the app calls this function in lots of places, you need to visit each one of them, and see exactly what needs to be refactored in order to make it work the way it was before. This adds time to the project.

Load should be fired for loadRawData

I just ran into the issue with the load event being removed from loadRawData also when upgrading.

I believe the load event should be fired. If the store was loaded, regardless of how it was loaded, the load event should be fired.

Imagine the case where one ajax call is used to retrieve meta data. This metatdata contains results for populating multiple stores. One call instead of 10 to load each store via its proxy is more efficient. So the results of this one call are loaded into each store via its loadRawData.

Now I have multipl UI components that use these stores, so to maintain clean separation these components just listened to the load event for the meta stores. Now you are telling me that the code that calls loadRawData should be aware of something else needing to be notified that the store was loaded and have to fire its own custom event? Makes no sense. The store was loaded, fire the event. Only logical.

And actually the 4.2.2 docs are incorrect as they state loadRawData actually fires the load event.

The main reason behind this is that the paging toolbar did not update correctly when paging through locally loaded data.

So I think the statement, that no events are needed isn't correct, since internal components rely on it, the PagingToolbar for example.

Just some thoughts.

makana

Programming today is a race between software engineers striving to build bigger and better ?diot-proof programs, and the universe striving to produce bigger and better idiots. So far, the universe is winning.(Rick Cook)