You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's one of the recurring topics in my job, there are no solutions without compromise
It's important to know the requirements first. what scenarios do you want to support, e.g. saving in YAFC 1.0, loading in 0.9 - is it supported or not?
Also with 2.0/space age just around the corner we might be just before larger changes in the data format that force us to make incompatible changes
Since we're serializing as text, not binary, the only issue I see is if someone manages to serialize a double larger than ~±3.4E+38 or smaller than ~±1.4e-45 and then load that in a float version of Yafc. float.Parse (and Convert.ToSingle, which just calls float.Parse) happily truncates in-range values with too many decimal places, but out of range values will be converted to -∞, 0, or ∞.
Converting 1/3f to double gives an error of almost exactly 1e-8, which I suspect is less than permissible error in the solver.
Checking my yafc files, the only lines that match /[0-9]E[+-]?[0-9]/ are the ones for autoFillPayback. That will probably need some special handling, or just leaving it as a float.
Let's suppose that we want to change the name of a persistent field. A persistent field is a class field that was written into a project file.
How would we approach that task? What are the C# conventions regarding the scheme change for the persistent data?
The purpose of this issue is to be a place of discussion for that topic, where we can post relevant data and experiences.
The text was updated successfully, but these errors were encountered: