On 05/11/09 14:43, Dave Miner wrote:
> Jack Schwartz wrote:
>> Hi Dave.
>>
>> On 05/11/09 13:05, Dave Miner wrote:
>>> Jack Schwartz wrote:
>>>> Hi Dave.
>>>>
>>>> Thanks for your comments.
>>>>
>>>> On 05/11/09 12:08, Dave Miner wrote:
>>>>> Jack Schwartz wrote:
>>>>>> Hi everyone.
>>>>>>
>>>>>> Minutes from this meeting are posted at:
>>>>>> http://www.opensolaris.org/os/project/caiman/auto_install/AI_mtg/Minutes/XML_parser_rework_minutes_090507.txt
>>>>>>  
>>>>>>
>>>>>>
>>>>> I don't understand what's meant by the "carries a lot of 
>>>>> information" portion of the below.  Carrying a lot of information 
>>>>> isn't inherently a problem, so what's the real problem being 
>>>>> hinted at?
>>>>>
>>>>>> 2) Current AI manifests are not easy to use.
>>>>>>    - fragmented, could be better organized, carries a lot of 
>>>>>> information.
>>>> Carrying lots of information isn't a problem if that information is 
>>>> well organized.  Combined with the file being fragmented and not 
>>>> organized as well as it could, carrying a lot of information makes 
>>>> the file harder to read.
>>>>
>>>> I'll drop the "carries a lot of information" part.
>>>>>>    - We decided that changing from XML is out of scope and off 
>>>>>> the table.
>>>>>>
>>>>> Additionally, I'd suggest some alteration of the below:
>>>>>
>>>>>> 3) AI manifests need to be forward and backward compatible 
>>>>>> between builds.
>>>>>>    - Old manifest to work on new build
>>>>>>    - Have old build recognize new manifests and fail in a 
>>>>>> user-friendly way
>>>>> I think it would be more general to say that "A given version of 
>>>>> the automated installer must be able to recognize and gracefully 
>>>>> fail when presented with a manifest with which it is not 
>>>>> compatible."  The specific old/new statements above seem a little 
>>>>> too restrictive and would potentially lead to solutions which are 
>>>>> insufficiently flexible for the product's future evolution.
>>>> Well, I could take your wording (and I'd like to), but...
>>>>
>>>> Reading between the lines here, are you suggesting that we need to 
>>>> support that a manifest of a given version works with both 
>>>> up-revved and down-revved installers?
>>>>
>>> No, I wasn't suggesting that.  The specific wording was chosen in an 
>>> attempt to avoid that implication.
>> Phew!
>>>> If that's the case then we should make that as part of the problem 
>>>> statement as it's more complete.  (This is assuming that now is the 
>>>> time to completely define the problem.)  The other way implies that 
>>>> there may be manifest versions which won't work with a given 
>>>> installer version.  This way says all manifest versions will work 
>>>> with any installer version.
>>>>
>>>> What's your opinion on this?
>>>>
>>> There is no requirement that everything work with everything.  Do 
>>> you think such is even possible here?
>> It would be hard if not impossible.
>>> My opinion is that we desire to maintain compatibility of manifests 
>>> moving forward, but should assume there will be an incompatible 
>>> change required at some point and that the installer should fail 
>>> gracefully when presented with one.  That requires that the 
>>> installer be able to differentiate between compatible and 
>>> incompatible manifests.
>> OK.  That's what I thought I captured earlier.
>>
>> So back to your original statement:  how do you see what I wrote 
>> earlier as too restrictive?  What solutions would it lead to which 
>> are insufficiently flexible for the product's future evolution?  I 
>> want to be sure I understand where you're coming from.
>>
>
> In your original terminology, I don't see that you capture the 
> possibility that new builds may wish to not maintain compatibility 
> with old manifests.
OK.  Got it.
A new installer version can remain compatible with an old manifest in 
many cases (for example when there are additions which can be defaulted 
if they are missing from a manifest).  In the case of a new installer 
version with an incompatible change (e.g. changes in the semantics of a 
previously used item), we would want to gracefully abort.  We need to 
handle both cases.

So, here's how (3) can be reworded:

3) AI manifests need to be forward and backward compatible between builds.
   - Manifests of different versions than the automated installer must 
work whenever possible.
   - A given version of the automated installer must be able to 
recognize a manifest with which it is not compatible and gracefully fail.

    Thanks,
    Jack
>
> Dave
>


Reply via email to