uiElement
objects. This series was prompted by some strange behavior in the default value system w/r/t observable objects. The linked bug report covers the details of why this happens, and why it’s a bug.
It’s been about two weeks since I started the uiElement internals series. The not-so-secret-secret about my Magento articles is most come from my desire to understand how these systems work. i.e. I am not a wizard with magic powers – I write these articles so I can better understand how these features work, and better reason about these systems. Until I finished today’s article on the internals of the uiClass object, I had no concrete evidence on why the observable objects in defaults
were linked.
I could have opened a bug report without this information, but if you do this sort of work long enough and you know an overworked bug scrub team would probably close that as a WONTFIX
or Works as intended. Without two weeks of research, I wouldn’t have been able to point to the exact problem. I wouldn’t have been able to have a compelling story for why this is a bug.
While this particular bug, at this particular point in Magento 2’s lifecycle, was an extreme case, most serious bugs require at least a solid day of debugging, research, and ticket followup to get properly fixed. Companies who see open bug reporting as an off message nuisance tend to alienate their community, and to limp along with an adequate, but not great, product. Companies who treat community bug reporting as seriously as they do their internal reports tend to strengthen their community ties and, over time, develop a more solidly engineered product.