[PATCH RFC v3] scmutil: add a simple key-value file helper
quark at fb.com
Tue Dec 6 08:48:54 EST 2016
Excerpts from Kostia Balytskyi's message of 2016-12-06 13:39:31 +0000:
> Hm, I don't see how upper/lower-case instead of explicit boolean flag
> handles that...
I didn't realize the issue either, before Yuya's reply.
> But to answer your question:
> 1. When you add a new field and you mark it as required, you really have
> only two options:
> a. Breaking backwards compatibility. I guess this is wanted rarely.
> b. Adding a logic to replace the missing required field with some
> default value. My opinion is that such logic should exist outside of
> simplekeyvaluefile implementation, so from this class' perspective that
> field is still optional
> 2. When you remove a required field or make field which was required
> optional. Because we don't limit the optional
> fields in any way, this should just work - unexpected field in the file
> is just read and stored in the dictionary.
It seems that the user of simplekeyvaluefile have to deal with "required" /
How about just removing the "required" check in simplekeyvaluefile?
Leave them to the user to handle. That seems cleaner to me.
More information about the Mercurial-devel