I've moved this to the 4.2.0 Beta forum - thanks for the report by the way!
This area was impacted by performance work in the component life-cycle (add and remove events no longer bubble) and it was a bit tricky to achieve its goals without creating a performance drain on all components and containers. In case you were interested in all that
I knew there was more than idle interest I had in mind in mentioning the above ... due to that change, the form / basicform no longer tracks references to all of its descendant fields - it gathers them when needed.
This tends to be a bargain vs burdening the life-cycle of all components and containers to track this for use in an infrequently called method (typically called based on user interaction).
Should I post all beta release issues in this forum? Just I already posted many ones in the Bugs forum and this is the first time when the thread was moved to the Beta forum.
It is not necessary, but helps somewhat get the right people to see the report. During beta, the dev team is more actively looking at beta issues and they focus in the beta forum. The bugs forum is more focused on support of current released versions.
All that is just internal -and we don't always move them around since once they are processed internally it does not matter too much where they live on the forum.
Originally Posted by Daniil
Thank you for the explanation of the root of the issue. I guessed it.
So, the fields should be re-requested each getFields call? (It is about how you are going to fix it. Just curios.)
Yes, each call to getFields will have to acquire the current set (deeply). Internally, to determine valid / dirty state, we will probably use ComponentQuery and the "down" method to see if there are any invalid or dirty fields. Still a bit TBD, but I would avoid calling getFields in a loop or anything