KSP-KOS / KOS

Fully programmable autopilot mod for KSP. Originally By Nivekk
Other
697 stars 230 forks source link

Recent commits made user-facing changes without docs. #2375

Open Dunbaratu opened 5 years ago

Dunbaratu commented 5 years ago

Commit 9758b0a ( https://github.com/KSP-KOS/KOS/commit/9758b0a5590807a16a2ae6c3413b9f2ee908c9a9#diff-90d61f0c4968e4051d3275a8de2f3157 )

was just merged and I noticed it adds a new feature that is not mentioned to the user or visible to them. I think it should be.

It adds the concept that some Collections we return can be read-only. Notably, the value returned by SHIP:PARTS is a LIST, which now has this readOnly flag turned on. This makes sense because you can't just physically alter the vessel's parts by having your script call SHIP:PARTS:ADD() or SHIP:PARTS:REMOVE().

But, I think this needs a mention in the user docs, along with a few other changes that just got committed to develop:

Doc changes needed

A suffix to query if a collection is readonly

IMO it would also be good to let users query if a collection has that new "readonly" feature turned on, in a get suffix. It could also be a "set" suffix so users can make their own lists read-only if they like, but only if we enforce a rule that once a collection has become readonly, it cannot be set back to writable again (Otherwise we'd be letting people do set ship:parts:readonly to false. undermining the point of making it readonly. It has to be that once the readonly flag is on, it stays on.)

hvacengi commented 5 years ago

I missed some of this because it was added after I started my initial review. Here is a list of things I've checked in the final merge of #2256

I will attempt to provide the documentation for the incomplete items before the final push to upstream.