CHANGES.md in ruby-jss-0.11.0a6 vs CHANGES.md in ruby-jss-0.11.0b1

- old
+ new

@@ -1,8 +1,8 @@ # Change History -## v 0.11.0, 2018-02-19 +## v 0.11.0b1, 2018-02-19 - Improvement: Updated general attributes for computers and mobile devices - Improvement: Computers and MobileDevices are now Creatable. Use the .make class method to create an unsaved instance, then .create/.save instance method to create the JSS record. Note: Mobile Devices need both a unique serial number and unique udid to be accepted by the API. @@ -16,10 +16,12 @@ - Add: All APIObject subclasses can be deleted without instantiating, via the .delete class method, providing an array of ids - Improvement: All handling of MDM commands is in the JSS::MDM module, which is mixed in to Computer, ComputerGroup, MobileDevice, and MobileDeviceGroup + *WARNING* Due to the expanded functionality of MDM commands overall, the syntax for calling .send_mdm_command may have changed, depening on how you used it. Please test your code before updating. + - Fix: Scope objects use the api connection of their container - Improvement: 'devmode', use `JSS.devmode \[:on|:off]`` to set, and `JSS.devmode?`` to query. Useful for developers, esp. in `irb` who want, e.g. to have a method output some state when in devmode, instead of/as well as behaving normally. This is currently the case for `JSS::MDM.send_mdm_command`. When devmode? is true, the XML sent to the API for the command is printed to stdout before the command is sent to the target machine. - Improvement: Computer app usage & mgmt data methods are now class methods, so can be used without instantiating the computer. @@ -35,16 +37,21 @@ All other methods now return Arrays of various instances of classes defined in the module. For example, the {JSS::MobileDevice.audit_history} method returns an Array of JSS::ManagementHistory::AuditEvent instances, and the {JSS::Computer.completed_policies} gives an Array of JSS::ManagementHistory::PolicyLog objects. These objects are read-only and - provide access to their values via attribute-style methods. + provide access to their values via attribute-style methods, and hash-like keys, similar to how OpenStruct objects do. As with MDM command handling, and computer app usage and mgmt data, the work is done by class methods, so that the data is available without creating instances of the Computers or MobileDevices, and the instance methods just call the class methods. *WARNING* these changes mean that the methods returning Arrays of ManagementHistory class instances are not backward compatible, since the earlier versions returned Hashes + +- Deprecated: The JSS::APIConnection convenience class methods .computer_history, .send_computer_mdm_command, and .send_computer_mdm_command. + + These methods have been updated to work with the new methods in the MDM and ManagementHistory modules, but will be removed from JSS::APIConnection in a future release. Instead, call them directly from the JSS::Computer or JSS::MobileDevice classes, passing in the desired APIConnection if needed. Given the expansion of MDM commands and history details, maintaining the convenience methods in APIConnection is too prone to errors. + ## v 0.10.2, 2018-02-16 - *IMPORTANT BUG FIX*: Updating JSS::Extendable objects with no changes to ext. attribs will no longer erase all ext attrib values. (!)