I think the user should be informed. So then a lfm file from 2.2.x is loaded to 2.3.x, and a value in the .lfm file changes, he gets a nota that there are changes in the .fm file because of different auto-size calculation results.
This would have helped me because I made a change, wanted to commit this to my Git repo and saw more than 300 changes. I searched around, could not find anything and now I somehow stole your time to help me (sorry for that). I think others will face the same situation, therefore such an info will help the users but also the Lazarus developers to prevent reports.
I doubt. Nobody reads the release notes, even you did not read the note about the label changes (I agree that the connection to your issue is not mentioned, it's more or less a side-effect of that fix, so be excused)... But anyway, I added a short note about the changes in TCheckbox/TRadioButton (
https://wiki.freepascal.org/Lazarus_2.4.0_release_notes#TCheckbox.2C_TRadioButton).
And if you are thinking of a compiler message: Again, I doubt that anybody will find such a note among the myriads of hints and warnings that FPC spits out already today.
What about my proposal with the Default Color?
Report it to bugtracker. I won't touch this issue, though, maybe another developer will. But provide a simpler example, ideally just a form with a label. Your current form is too complex and the history of it is not known. Looking at your original v2.2.2 form of reply #2, for example, I see that all labels have ParentColor = false. How does it get there? Did you set it? Or is it a consequence of the linkage of ParentColor and Transparency in v2.2.2? Groupbox Channel1CB of your file has ParentColor= false when I load the file into Laz 2.2.2, but ParentColor is true when I load it into Laz main. Why? Due do another fix? Another issue? Or is it a side-effect of the same clDefault issue that is already fixed and documented in the link I gave above? This is a huge investigation with your sample file, I am afraid nobody will take the time...
My recommendation: Do not rely on the size of controls to be exact. Once Microsoft decides to choose another system font in the upcoming Win11 22H2 your carefully designed layout will be destroyed again... When you need specific alignment of controls you should take advantage of the anchoring method coming with Lazarus (
https://wiki.freepascal.org/Autosize_/_Layout,
https://wiki.freepascal.org/Anchor_Sides). If done correctly, the layout will always be perfect, no matter which operating system is used, or which language is selected in a multi-language application. Look at the IDE as an example.