Syntax: wxCondition -g {donorLoc} wxCondition -ps {srcLoc} wxCondition -p [-pr o/a] {srcLoc} {donorLoc} {instrStr} (see the Syntax Spreadsheet} TO-DO: ------ Sprint 3 Item 9 Feat 1 Bug 3 CURRENT ITEMS: ============== [Sprint 3 (commencement date)] [Item 8 (2019-01-10)] Convert the value-finder routine to binary search COMPLETED ITEMS: ================ 2018-12-16: [Sprint 1 (2018-12-16)] [Item 1] Expand maximum readings to one-thousand Store readings in separate files according to the source Implemented and tested 2019-12-16. [Item 2] Remove application of, and all references to, random-walk value. Implemented and tested 2019-12-16. [Item 3] Add several parameters to control the source and donor locations, and the processing string - pr O|A - {donorLocCode} - Instruction String Implemented and tested 2019-12-16. See the Syntax Spreadsheet. SPRINT CLEARED FOR RELEASE, 2018-12-16. 2018-09-24: [Bug 1 (2018-09-23)] Program chokes if input file is empty. Build in some simple protection from that. Fixed 2018-09-24. [Feat 1 (2018-09-23)] Make the following change: - Pending (manually-entered) readings are stored in 'mcc_pending_readings.txt', in exactly the same format as a normal observations file. - mcCondition reads it (if present) and substitutes any readings thus given. - mcCondition will have to parse and reassemble the input line. This shouldn't be a problem. - Command-line flag to tell mcCondition whether to do its usual processing, in which case: - Process first - Substitute readings second (they have priority) Implemented 2018-09-24. 2018-09-26: [Bug 2 (2018-09-26)] Multiple terms in the observations string fuck up wxCondition. Fixed and tested 2018-09-26. 2019-01-13: [Sprint 2 (commencement date) to v2.10] [Bug 3 (2019-01-10)] Source file is deleted without always being rewritten. Change to delete-only-on-write Believe fixed 2019-01-10. [Item 9 (2019-01-10)] Remove the separator between opcode and operand. Implemented 2019-01-10. [Item 4 (2019-01-10)] Additions to the instructions string Instruction Declaration: S{Value} - Replace Source value with Donor value, if Source value is less than {Value} Implemented 2019-01-10. [Item 5 (2019-01-10)] Additions to the instructions string Instruction Declaration: G{Value} - Replace Source value with Donor value, if Source value is greater than {Value} Implemented 2019-01-10. [Item 6 (2019-01-10)] Additions to the instructions string Instruction Declaration: E{Value} - Replace Source value with Donor value, if Source value is equal to {Value} Implemented 2019-01-10. [Item 7 (2019-01-10)] Additions to the instructions string Instruction Declaration: A - Replace Source with the average of Source and Donor values Implemented 2019-01-10. All: See the Syntax Spreadsheet [Deployment Notes:] - Procedure for safely editing the calling scripts: - Move the current version of wxCondition into backups - Edit the calling scripts (probably 2) - Remove separators between operands and opcodes - Copy over the new version and make executable [Test Sequence:] - Copy over fresh observations files and rename appropriately - Regression test not needed at this point - Test with bad parameters to trigger an internal error - Source file should remain untouched - Test all four new parameters - Verify results All tested 2019-01-13. Released same day.