Skip to content

1.2beta1

Pre-release
Pre-release
Compare
Choose a tag to compare
@BigMacAdmin BigMacAdmin released this 05 Jan 01:41
· 1 commit to dev since this release

v1.2 Change Log

Note: A profile manifest with new profile keys is included here. This will be pushed to the official ProfilesManifest repository upon full release of this version. Use the local one for testing.

New Features

  • New Default Behavior: Clicking the Dialog notification will initiate the restart window
    • This can be disabled in the profile with new OptionalArguments boolean key set to false: NotificationActionEnabled #81
  • Language support for Dutch (nl)
  • Renew can now be used with a plist file OR a mobileconfig
    • If a mobile configuration file is not found, Renew will check for a configuration file in this location: /Library/Preferences/com.secondsonconsulting.renew.plist
    • You can still use iMazing Profile Editor to make this plist, just choose "Payload > Export as Plist"
    • Huge thanks to @drtaru for adding this feature.
  • Admins can now choose additional applications to ignore assertions.
    • Huge thanks to @drtaru for adding this feature.
    • If you don't want to respect a display sleep assertion for an application, you can add that application to an OptionalArguments:IgnoreAssertions array in your configuration file.
    • The default assertions to ignore will still be used as well (obs caffeinate Amphetamine)
    • Use pmset -g to see what applications are using assertions as well as how to ignore them.

Improvements

  • Argument Processing rewritten

    • --version now prints only the script version and exits with no logs and no other output
    • Multiple arguments are now supported. It is up to the operator to ensure conflicting arguments are not passed
      • --verbose --force-normal --dryrun is valid
      • --verbose --force-normal --force-notification is invalid, and will result in undefined behavior
    • --verboseor -v enables set -x for verbose troubleshooting output
    • --dryrun argument now does not process a deferral as well as disabling Restart prompt
    • --deadline argument now sets the deadline to the provided value for testing
      • Example: ./Renew.sh --deadline 66 will set the deadline to 66 days uptime
    • --print-configuration option will print the configuration file and exit
    • --configuration /path/to/renew.plist allows you to specify a plist file you wish to use as the configuration for that run.
      • This is intended for use in testing, though, there's nothing stopping you from using this option with a LaunchAgent or from your management tool
      • This argument overrides any MDM profile or configuration file for that run
      • #80
    • --language followed by a language code will allow you to test Renew behavior for different languages (i.e. --language nl would use Dutch)
    • --help is now more reliable. Thanks @aschwanb
  • Renew no longer processes deferrals/events if the system has been idle from human input for over 60 minutes

  • If the same program has multiple display sleep assertions (like caffeinate running twice or more), Renew will now properly ignore them if they're on the IgnoreAssertions list.

    • Thanks again to @drtaru for this improvement.

Housekeeping

  • Renew is now published under the MIT open-source license
  • All log messages are now also written to standard output
  • Log messages are more useful in determinig what logic is being applied and why
  • Debug messages now only visible in verbose mode, and not tied to --dryrun option