Power Manager

Version history of DssW Power Manager.

The latest version of Power Manager is v5.10.4.

Changes in v5.10.4

  • Change: Added computer wide log files location to removal script.
  • Change: Enforce minimum TLSv1.2 for connections.
  • Change: Require pm as the Transport Layer Security (TLS)’s Application Layer Protocol Negotiation (ALPN) for connections.
  • Change: Restricted application’s daemon process check to reduce false positives with assisting processes.
  • Change: Universal binaries of uk.co.dssw.powermanager.pmd and uk.co.dssw.powermanager.pmd.darwin.
  • Bug: Fix misleading requirement for Rosetta 2 for installation or removal packages.
  • Bug: Fix darwin specific actions failing due to context finishing.
  • API: Deprecated level within SSL structure.
  • API: Deprecated SSL level element; defaults to best practice.
  • API: Changed default SSL level element value from TLSv1 to negotiated.

Changes in v5.10.3

  • Change: Reinstated UNIX domain sockets for local connections; see v5.0.0.
  • Change: Added passive authentication using local peer credentials.
  • Change: Disabled localhost networking and dns-sd for local connections.
  • Change: Removed application sandboxing entitlement for computer wide UNIX domain sockets.
  • Change: Changed default value of pmctl flag -url from empty to local socket path.
  • Change: Remove deprecated toolbar item divider and updated default toolbar item set.
  • Bug: Fixed decoding of multi-typed values in events.

Changes in v5.10.2

  • Bug: Fixed authentication user interface layout bug (macOS 15).

Changes in v5.10.1

  • Change: Moved scheduler’s logging to /Library/Logs/uk.co.dssw.powermanager/ from Apple System Logging (ASL).
  • Change: Moved assistants’ logging to Library/Logs/uk.co.dssw.powermanager/ from Apple System Logging (ASL).
  • Change: Transliterated uk.co.dssw.powermanager.pmd to a platform neutral and memory managed implementation.
  • Change: Combined pmctl and uk.co.dssw.powermanager.pmuser with uk.co.dssw.powermanager.pmd.
  • Change: Isolated darwin (macOS) specific code within uk.co.dssw.powermanager.pmd.darwin.
  • Change: Improved reconnection to scheduler after unexpected disconnection.
  • Change: Prioritise local connection via notify, over dns-sd local-only service discovery.
  • Change: dns-sd local-only service discovery is optional.
  • Change: Increased detail in debug logging.
  • Change: Legacy schedules from v3 (pre-2010) are no longer automatically upgraded.
  • Bug: Fixed editor drag component background redrawing in white.
  • Bug: Fixed user session time trigger responses to cancel and reset; previously returned success for unknown trigger identifiers.
  • Bug: Fixed two causes of stuck performing events.
  • Bug: Fixed completing multi-action events from file configuration.
  • API: Removed unused default signature for authorisation.applyright; a signature must be provided.
  • API: Removed unused sample trigger; use notification trigger with external script as alternative.
  • API: Removed unused sample condition; use execute external condition as alternative.
  • API: Hardened request parameters: values must be expected type, unknown keys are an error.

Changes in v5.10.0

  • New: Added Schedule Assistant to request a URL on-demand.
  • New: Added Schedule Assistant to request a URL once.
  • New: Added Schedule Assistant to request a URL daily.
  • New: Added Schedule Assistant to request a URL after inactivity.
  • New: Added Schedule Assistant to request a URL before sleep.
  • New: Added Schedule Assistant to request a URL upon wake.
  • New: Added Schedule Assistant to request a URL on battery remaining.
  • New: Added Schedule Assistant to request a URL during a user session.
  • New: Added Schedule Assistant to request a URL on log in.
  • New: Added Schedule Assistant to request a URL on log out.
  • New: Added User Session Time condition to limit actions based on time since log in.
  • New: Added uk.co.dssw.powermanager.pmd command line flag b to disable launchd job bootstrapping; simplifies custom installations.
  • New: Added pmctl command line flag to-file-configuration to replace deprecated file-configuration.
  • New: Added pmctl command line flag from-file-configuration to read requests from a file configuration.
  • Change: Added kAEQuitReason attribute to kAEQuit AppleEvents.
  • Change: Deprecated pmctl command line flag file-configuration; replaced by to-file-configuration.
  • Bug: Fixed astronomic calculation where negative offset could return a historic date.
  • API: Increased optional trigger drift to a maximum of 72 hours, up from 24 hours.
  • API: Deprecated use of system master volume; added replacement system volume.

Changes in v5.9.4

  • Change: Increase operating system requirement to macOS 10.14 or later.

Changes in v5.9.3

  • Change: Native support for Apple silicon (arm64).

Changes in v5.9.2

  • Bug: Fixed astronomic calculation to return future event when called during second of current event.

Changes in v5.9.1

  • Change: Extended logging detail for file configuration.
  • Bug: Fixed file configuration bug that could replace schedule instead of merging.

Changes in v5.9.0

  • New: Added ability to drag and drop certificates onto licensing table.
  • Change: File configuration changed to attempt all requests; failed requests continue to be logged.
  • Change: Migrated from AstronomicalAlgorithms to astral for astronomic calculations.
  • Change: Decimal fields in the editor now validate only on completion.
  • Change: Application retains selection as events change.
  • Change: Reveal previously hidden Edit > Edit in Event Editor menu item.
  • Change: Continued modernisation of code.
  • Change: Be lenient with early renewal certificates.
  • Bug: Fixed time zone bug affecting astronomic calculations.
  • Bug: Show early renewal licences before validity.

Changes in v5.8.0

  • New: Added Schedule Assistant to run a Shortcuts shortcut (macOS 12).
  • New: Added Schedule Assistant to run a Shortcuts shortcut on demand (macOS 12).
  • New: Added Schedule Assistant to run a Shortcuts shortcut on battery remaining (macOS 12).
  • New: Added Schedule Assistant to run a Shortcuts shortcut during a user session (macOS 12).
  • New: Added Schedule Assistant to run a Shortcuts shortcut on log in (macOS 12).
  • New: Added Schedule Assistant to run a Shortcuts shortcut after inactivity (macOS 12).
  • New: Added Schedule Assistant to run a Shortcuts shortcut daily (macOS 12).
  • Bug: Fixed missing OSA identifier properties.

Changes in v5.7.1

  • Bug: Fixed unexpected signal in pmctl (golang://47776).

Changes in v5.7.0

  • Change: Use built-in sudo PAM profile to authenticate as an administrator (macOS 12).
  • Change: Removed custom PAM profile /etc/pam.d/uk.co.dssw.powermanager; destination SIP locked (macOS 12).
  • Bug: Fixed bugs and potential memory leaks to improve stability.

Changes in v5.6.1

  • New: Added -file-configuration flag to pmctl to write requests in file configuration format.
  • New: Added -as-file-configuration flag to pmctl to execute requests via file configuration.
  • Bug: Restored super user (root) option in Schedule Assistant user choice.

Changes in v5.6.0

  • New: Added support for filtering log out triggers by graphical or terminal session type.
  • Change: Updated log out trigger to use user sessions (macOS 11).
  • Bug: Fixed bugs and potential memory leaks to improve stability.

Changes in v5.5.4

  • New: Added -debug flag to pmctl to write debug information.
  • Change: Added console log entries for software update settings.
  • Change: Updated UpdateKit library.
  • Bug: Fixed default softwareupdate.check behaviour in the application.

Changes in v5.5.3

  • Change: Removed Secure sleep after inactivity Schedule Assistant task (unavailable on macOS 11).
  • Change: Demoted Fast User Switch choice in Schedule Assistant (unavailable on macOS 11).
  • Change: Deprecated Fast User Switch action in Event Editor (unavailable on macOS 11).
  • Change: Removed support for login window notifications.
  • Change: Accessibility improvements.
  • Change: Continued modernisation of code.
  • Change: Updated UpdateKit library.
  • Bug: Fixed cosmetic bug when denying authentication.
  • Bug: Fixed cosmetic bug for missing details in status menu (macOS 11.2).

Changes in v5.5.2

  • Info: After upgrading, connection certificates will be renewed to ensure latest format.
  • Change: Added explicit key use to self-signed certificates (macOS 11.0/FB8833986).
  • Change: Reduced the size of the View toolbar segment control in the application.
  • Change: Cosmetic changes to menu bar item fonts (macOS 11.0).
  • Change: Updated UpdateKit library.
  • Bug: Fixed bugs and potential memory leaks to improve stability.

Changes in v5.5.1

  • Bug: Fixed software update mechanism.

Changes in v5.5.0

  • New: Added support for TLS client certificates to uk.co.dssw.powermanager.pmd.
  • New: Added authenticate-on-connect flag to pmctl to immediately authenticate after connecting.
  • New: Added client-certificate and client-key flags to pmctl to support TLS client certificates.
  • New: New licensing interface shows known certificates.
  • Change: Trimmed product name prefix from licence name.
  • Bug: Reduced impact of interrupted or stuck performing events.
  • Bug: Restricted writes during restore to reduce the chance of data loss in case of error.
  • Bug: Fixed concatenation of licences when added separately.
  • API: New legal.certificate to list licence certificates.
  • API: Added begins field to licence structure to better highlight future dated licences.
  • API: New legal.remove to remove existing licences.
  • API: Deprecated legal.revoke; use legal.remove instead. The verb revoke incorrectly implied the licence would be invalidated.
  • API: Increased accepted pem parameter size from 16KiB to 64KiB for legal.license. This allows for larger concatenated licences.
  • API: Marked deprecated items as hidden in Scripting Definition (SDEF) but they remain available for existing Open Scripting Architecture (OSA) scripts.

Changes in v5.4.9

  • Change: Added alternative method of detecting local service TCP/IP port.
  • Change: Updated AstronomicalAlgorithms framework.
  • Change: Updated CodeMirror library.
  • Change: Updated UpdateKit library.
  • Bug: Fixed Power Assertions condition failing to detect some assertions.
  • Bug: Restored Full Screen condition in the event editor.

Changes in v5.4.8

  • Bug: Fixed tool crashing on pre-AVX machines (golang://37478).
  • Bug: Fixed missing await sleep trigger in the editor.

Changes in v5.4.7

  • Bug: Fixed missing sleep trigger in the editor.

Changes in v5.4.6

  • Change: Added option to Schedule Assistant for scripts to run in each logged in user session.
  • Change: Support deep fields within the editor.
  • Change: Sending HUP signal to uk.co.dssw.powermanager.pmd stops and starts an enabled Scheduler.
  • Change: Continued modernisation of code.
  • Bug: Stopped Power Manager Notifications pre-authorising for requests with universal rights.
  • Bug: Reduced impact of interrupted or stuck performing events.

Changes in v5.4.5

  • Change: Set contextual menu of editor sections to Action pop-up.
  • Change: Double-click on editor blocks to edit.
  • Change: Improved validator error message when exceeding minimum and maximum limits.
  • Change: Continued modernisation of code.
  • Bug: Fixed rights bug.

Changes in v5.4.4

  • Bug: Fixed bug causing some perpetual licences to expire.

Changes in v5.4.3

  • Bug: Fixed bug affecting long running events.
  • Bug: Fixed missing Connection Disrupted localisation.

Changes in v5.4.2

  • Change: Updated predefined Time Machine action to use tmutil.
  • Change: Created a Display category for conditions in the event editor.
  • Bug: Fixed bug that could cause inconsistent category groups in the event editor.

Changes in v5.4.1

  • API: Fixed misapplied length limits.

Changes in v5.4.0

  • New: Added Open Scripting Architecture (OSA) support for Audio API and user session time elements.
  • Change: Updated table buttons in editor to use textual labels.
  • Change: Removed field editor for notification contexts.
  • Change: Updated CodeMirror library.
  • Change: Updated UpdateCore library.
  • Change: Continued modernisation of code.
  • Bug: Fixed event scoped notification actions not broadcasting consistently.
  • API: Enforcing maximum string and array lengths of 1024, where previously limited by memory (API hardening).
  • API: Inline scripts limited to 64 KiB (API hardening).
  • API: additional environment changed from dictionary to environment variables structure (API hardening).
  • API: context changed from dictionary to notification context structure (API hardening).
  • API: Notification trigger changed to accept context when subset of notification, instead of exact match.
  • API: Increased length limits of name and organisation in licence.
  • API: Removed deprecated Client computer name, SSL allowances, and SSL levels.
  • API: Deprecated process scheduling priority, file creation mode mask, throttle disk reads and resource limits in external.

Changes in v5.3.0

  • New: Added support for the default audio input device.
  • Change: Added a connection disrupted warning to aid debugging of content and network blockers.
  • Change: Pre-fill lock login with user name.
  • Change: Continued modernisation of code.
  • Bug: Fixed flickering interface when attempting to connect; now updates on connection, instead of connecting.
  • API: Removed legacy framework headers.

Changes in v5.2.0

  • New: Added Schedule Assistant to set audio volume on graphical user log in.
  • New: Added Schedule Assistant to set audio volume on log out.
  • New: Added Schedule Assistant to limit maximum audio volume.
  • New: Added Schedule Assistant to limit maximum audio volume between set times, on set days of the week.
  • New: Added audio device mute trigger.
  • New: Added audio device mute condition.
  • New: Added audio device mute action.
  • New: Added audio device volume trigger.
  • New: Added audio device volume condition.
  • New: Added audio device volume action.
  • API: Added Audio API for audio settings; allows control without an active user session.
  • Change: Improved event summaries, mentioning conditions and on demand behaviour.
  • Change: Continued modernisation of code.
  • Bug: Corrected menu item ‘License Options’ to ‘Licence Options’; UK verb/noun difference.
  • Bug: Fixed two small memory leaks.

Changes in v5.1.1

  • Change: Adjusted Scheduler’s install button layout.
  • Change: Updated Internet Access Policy documentation.
  • Info: Network blockers are confirmed as causing problems; please disable blocking or permit local network access.
  • Bug: Fixed pending event Adjust window not appearing.
  • Bug: Fixed sheet window closing bug affecting macOS 10.12.
  • Bug: Mitigated installation bug affecting macOS 10.12.

Changes in v5.1.0

  • New: Added user session time trigger; triggers after a user has been logged in for a specific duration.
  • New: Added support for filtering log in triggers by graphical or terminal session type.
  • New: Added Schedule Assistant to execute a command line tool during a user session.
  • New: Added Schedule Assistant to launch an application during a user session.
  • New: Added Schedule Assistant to log out during a user session; designed for kiosks and public computers.
  • New: Added Schedule Assistant to open document with application during a user session.
  • New: Added Schedule Assistant to run a script during a user session.
  • Change: Log-in trigger defaults to graphical sessions and when pmuser becomes available.
  • Change: Deprecated external assistant trigger; use log-in trigger.
  • API: Changed term ‘Mac OS X’ to ‘macOS’ in API documentation.
  • API: Removed mentions of legacy versions of macOS from API documentation.

Changes in v5.0.2

  • New: Added Restart Scheduler alternative menu item.
  • Change: Added lock image to restricted menu items when the Scheduler is locked.
  • Bug: Fixed erroneous install Scheduler prompt after failed local authentication.
  • Bug: Status menu bar reconnects after failed local authentication.

Changes in v5.0.1

  • Bug: Fixed bug that caused some licences not to be accepted.

Changes in v5.0.0

  • New: Sandboxed Power Manager application.
  • New: Sandboxed Power Manager Notifications application.
  • New: pmctl available for macOS, Linux, and Windows; see https://dssw.co.uk/powermanager/pmctl
  • New: Added Notification Centre widget, Power Manager Schedule.
  • New: Added support for Dark Mode.
  • New: Added application support for complex Pluggable Authentication Modules (PAM).
  • New: Added default management.profile to customise PAM service.
  • New: Expanded Internet Research Assistant support to document network connections.
  • New: Provide a localhost only TCP/IP service for clients.
  • New: Pin credentials stored in Keychain to connection certificate.
  • New: Help menu search updated to include web site results.
  • New: Notarised for Gatekeeper by Apple.
  • Change: Default to localhost TCP/IP service for PowerManager.framework connections.
  • Change: Power Manager.app must now be placed in /Applications.
  • Change: Renamed pmd and pmuser with uk.co.dssw.powermanager. prefix for unambiguous identification.
  • Change: Moved to X.509 certificates for licences and licensing; see https://miln.eu/indie
  • Change: Moved uk.co.dssw.powermanager.pmd daemon into Power Manager.app bundle.
  • Change: Moved uk.co.dssw.powermanager.pmuser daemon into Power Manager.app bundle.
  • Change: Moved notify agent into Power Manager.app bundle.
  • Change: Migrated user name, log in, and log out tracking to lower level implementation.
  • Change: Migrated Bonjour/Zero-Conf to DNS Service Discovery implementation.
  • Change: Migrated to UpdateKit for sandboxed updating; removed Sparkle framework; see https://miln.eu/indie
  • Change: Migrated to checking admin group membership for limiting automatic update checks.
  • Change: Modernised Open Scripting Architecture (OSA) support.
  • Change: Modernised launchd job tickets.
  • Change: Modernised signal handling.
  • Change: Enabled runtime hardening to protect signed code.
  • Change: Enabled library validation to ensure linking against signed code.
  • Change: Migrated to internal tool and removed dependency on local openssl binary.
  • Change: Replaced Provide Feedback in application menu with Contact Support in help menu.
  • Change: Renamed LaunchDaemon uk.co.dssw.pmd to uk.co.dssw.powermanager.pmd to match executable.
  • Change: Updated documentation; consolidated guides and rewrote API reference.
  • Change: Updated application icon.
  • Change: Removed Automator actions; see scripting guide for replacements.
  • Change: Removed embedded PDF documentation; see https://dssw.co.uk/powermanager/guide
  • Change: Removed support for macOS 10.10 and 10.11; see https://dssw.co.uk/powermanager/legacy
  • Change: Removed LetsMove library.
  • Change: Removed FeedbackReporter library.
  • Change: Removed Growl notifications support.
  • Change: Removed need for files in Application Support folder.
  • Change: Removed support for UNIX domain socket connections; TCP/IP only.
  • Change: Removed legacy support for group check via remotemanagement.groups; use pam_group.
  • Change: Removed need for persistent /Library/LaunchAgents files; created on-demand by pmd.
  • Change: Removed need for persistent /etc/pam.d file; created on-demand by pmd.
  • API: Added support for connections with limited-rights before authentication; allows read-only connections.
  • API: Added support for mid-flight connection authentication.
  • API: Added authenticate command to connection class in AppleScript.
  • API: Added authenticated property to connection class in AppleScript.
  • API: Improved AppleScript errors. Passing back API response error codes with description.
  • API: Removed support for Apple AuthenticationRef authentication and authorisation; sandboxing limitation.
  • API: client.computername is deprecated; use client.localhostname.
  • API: client.localhostname returns full host name.
  • API: legal.license requires PEM encoded licence certificate instead of textual licence components.
  • API: Renamed parameter at to moment within sun observation, trigger sun, and trigger await sun in AppleScript.
  • API: Renamed default connection to local connection in AppleScript.
  • Bug: Fixed potential crash when authentication passed malformed values.
  • Bug: Fixed alert when installation failed without a log file.
  • Bug: Improved automatic reconnection when server disconnects.

Changes in v4.6.5

  • Change: Updated AstronomicalAlgorithms framework.
  • Change: Updated CodeMirror library.
  • Change: Updated LetsMove library.
  • Change: Updated Sparkle framework.
  • Change: Continued modernisation of code.
  • Bug: Fixed immediate removal of temporary file.
  • API: Deprecated launch behaviour untrusted.
  • API: Deprecated process entry process information.
  • API: Deprecated SSL/TLS protocols SSLv2 and SSLv3.

Changes in v4.6.4

  • New: Added more battery level options.
  • Change: Raised maximum time durations in editor from 24 hours to 365 days.
  • Change: Continued modernisation of code.
  • Bug: Fixed start-up/uptime condition; previously inverted.

Changes in v4.6.3

  • Bug: Fixed dragging of components in event editor affecting macOS 10.13.

Changes in v4.6.2

  • New: Added Schedule Assistant to open document on-demand.
  • New: Added Schedule Assistant to open document once.
  • New: Added Schedule Assistant to open document daily.
  • New: Added Schedule Assistant to open document after inactivity.
  • New: Added Schedule Assistant to open document on log in.
  • New: Added Schedule Assistant to open document with specific application on-demand.
  • New: Added Schedule Assistant to open document with specific application once.
  • New: Added Schedule Assistant to open document with specific application daily.
  • New: Added Schedule Assistant to open document with specific application after inactivity.
  • New: Added Schedule Assistant to open document with specific application on log in.
  • New: Added warning to summary for events using deprecated Schedule Assistant tasks.
  • New: Added New Empty Event menu item.
  • New: Added Edit Event/Edit Event Editor menu items.
  • New: Added Internet Research Assistant documentation.
  • Change: Core installer recovers from persistently unloaded launchd jobs.
  • Change: Deprecated movie playing Schedule Assistant tasks; macOS 10.13 QuickTime Player sandboxing.
  • Change: Removed Schedule Assistant for creating an empty event.
  • Change: Removed pmd and pmuser dependences on legacy Carbon framework.
  • Change: Updated appearance of Quick Schedule menu.
  • Change: Updated AstronomicalAlgorithms framework.
  • Change: Updated CodeMirror library.
  • Change: Updated LetsMove library.
  • Change: Updated Sparkle framework.
  • Change: Continued modernisation of code.

Changes in v4.6.1

  • New: Added running and not-running example conditions to event editor.
  • Change: Refactored update checking in notification application.
  • Change: Updated administrator guide for Unified Logging.
  • Change: Removed support for macOS 10.7, 10.8, and 10.9; see https://dssw.co.uk/powermanager/legacy/
  • Bug: Fixed hardware power scheduling bug affecting macOS 10.12.4.
  • Bug: Fixed post-adjustment double event listing affecting macOS 10.12.4.

Changes in v4.6.0

  • New: Added Schedule Assistant to execute a command line tool on-demand.
  • New: Added Schedule Assistant to execute a command line tool once.
  • New: Added Schedule Assistant to execute a command line tool daily.
  • New: Added Schedule Assistant to execute a command line tool after inactivity.
  • New: Added Schedule Assistant to execute a command line tool before sleep.
  • New: Added Schedule Assistant to execute a command line tool after power on or wake.
  • New: Added Schedule Assistant to run a script after power on or wake up.
  • New: Added dark mode support to status menu bar.
  • New: Added delay by 60 minutes to status menu bar.
  • New: Added advance counterparts for delays to status menu bar; press Control key to reveal.
  • New: Added sun trigger artwork.
  • New: Added executable action artwork.
  • New: Added argument suggestions for absolute path, UUID, and volume UUIDs.
  • New: Added handler for applying licence via URL.
  • Change: Disabled fading of status menu bar icon for distant triggers.
  • Change: Modernised how artwork is determined for an event.
  • Change: Modernised notifier code.
  • Change: Updated AstronomicalAlgorithms library.
  • Change: Updated CodeMirror library.
  • Change: Updated LetsMove library.
  • Change: Updated Sparkle framework.
  • Change: Updated documentation to refer to macOS instead of Mac OS X.
  • Bug: Fixed bugs and potential memory leaks to improve stability.

Changes in v4.5.4

  • Change: Updated AstronomicalAlgorithms framework.
  • Change: Updated CodeMirror library.
  • Change: Updated LetsMove library.
  • Change: Updated Sparkle framework; fixes bug affecting macOS 10.7.
  • Bug: Fixed bug affecting macOS 10.12 betas.

Changes in v4.5.3

  • Bug: Worked around codesign bug affecting macOS 10.10 and earlier (rdar://26297046).

Changes in v4.5.2

  • Change: Updated Sparkle framework.
  • Bug: Fixed bug delaying authorisation.rights being immediately saved.

Changes in v4.5.1

  • New: Added experimental application trigger.
  • New: Added time zone change support to Power Manager.app.
  • New: Added Spotlight support for .pm-schedule files; .pm-event already supported.
  • New: Added option to show full file path within Schedule Assistant.
  • New: Added option to use enhanced or plain script editor; default boolean colourScriptEditorSyntax.
  • Change: Removed /Library/Frameworks/PowerManager.framework; now embedded as needed.
  • Change: Updated time zone change support within the status menu bar.
  • Change: Supporting tool pmctl no longer requires PowerManager.framework.
  • Change: Supporting daemon pmuser no longer requires PowerManager.framework.
  • Change: Linked pmuser against AppKit for workspace notifications.
  • Change: Improved event summary descriptions.
  • Change: Reduced authorization requests needed for installation and removal of the scheduler.
  • Change: Updated more external links and documentation to https://.
  • Change: Updated AstronomicalAlgorithms framework.
  • Change: Updated LetsMove library.
  • Change: Updated Sparkle framework.
  • Change: Updated CodeMirror library.
  • Bug: Fixed a file path editor bug affecting multiple choice operations.
  • Bug: Fixed clicking an update notification in banner alert style.
  • Bug: Fixed tracking of time zone changes.

Changes in v4.5.0

  • New: Added trigger sleep.
  • New: Added action await sleep.
  • New: Added Schedule Assistant for launching an application on log in.
  • New: Added Schedule Assistant for running a script on log in.
  • New: Added Schedule Assistant for running a script before sleep.
  • New: Added Schedule Assistant for running an Automator workflow on log in.
  • New: Added Schedule Assistant for mirroring files on log in.
  • New: Added Schedule Assistant for running a script on log out.
  • New: Added Schedule Assistant for mirroring files on log out.
  • New: Added offset to sun trigger to allow times relative to astronomical events.
  • New: Added host wide preference notifier.login.position-vertical to adjust Login Window notification.
  • Change: Core install better stops and restarts existing launchd jobs during update.
  • Change: Renamed pmnotify.app to Power Manager Notifications.app for clarity of purpose.
  • Change: Updated appearance of the Login Window notification.
  • Change: Modernised and started refactoring Power Manager Notifications.app.
  • Change: Quietened Power Manager Notifications.app log messages.
  • Change: Updated power assertions used by other processes not to idle dim or sleep.
  • Change: Refactored code previously required for pre-macOS 10.7.
  • Change: Removed legacy code previously required for pre-macOS 10.5.
  • Change: Updated external links in software and documentation to https://.
  • Change: Fixed warning in PAM authentication.
  • Change: Updated application scripting definition to dynamically include CocoaStandard.
  • Change: Updated Sparkle framework.
  • Change: Updated AstronomicalAlgorithms library.
  • Bug: Fixed warnings by modernising code for macOS 10.11.
  • Bug: Fixed buy now button on licence sheet.
  • Bug: Fixed event editor group styling.

Changes in v4.4.1

  • Change: Default Notification Center behaviour changed from Alert to Banner style.

Changes in v4.4.0

  • New: Added trigger external assistant.
  • New: Added condition console user.
  • New: Added condition user inactivity.
  • New: Added condition start up.
  • New: Added action await battery health.
  • New: Added action await external assistant.
  • New: Added action await once.
  • New: Added action await power remaining.
  • New: Added action await power state.
  • New: Added action await start up.
  • New: Added action await sun observation.
  • New: Added action await user inactivity.
  • Change: Update notifications appear in the Notification Center.
  • Change: Display core update alert on connection to old schedulers.
  • Bug: Fixed an editor bug affecting removal of optional values.

Changes in v4.3.4

  • New: Added await log in action for chaining actions.
  • New: Added await log out action for chaining actions.
  • Change: Updated Sparkle framework.
  • Bug: Fixed an AppleScript bug affecting sun observation calculations.

Changes in v4.3.3

  • New: Added sun trigger for scheduling events by sun events.
  • New: Added sun condition for limiting events by sun events.
  • New: Added Astronomic API for calculating sun observation dates and times.
  • Change: Simplified code that supported legacy operating systems.
  • Change: Self-signed SSL/TSL certificates now signed with sha256; replaces sha1.
  • Change: New internal broadcast module replacing CFNotificationCenter.
  • API: Deprecated some SSL/TLS allowances in ssl.allow.
  • Bug: Fixed potential crash when managing remote clients.
  • Bug: Fixed warnings through modernising older code.

Changes in v4.3.2

  • Change: Added filter to ease finding specific Schedule Assistant tasks.
  • Change: Added syntax highlighting to Schedule Assistant script steps.
  • Change: Exposed optional command line arguments in editor for embedded scripts.
  • Change: Action summary now includes hash bang executable in editor for embedded scripts.
  • Bug: Fixed auto-playing of presentations for Apple Keynote 6.2.2.
  • Bug: Fixed dragging of pm-schedule files directly onto event view.

Changes in v4.3.1

  • Change: Restored support for macOS 10.7.
  • Change: Improved installed scheduler version evaluation.
  • Change: Improved undo handling to reduce save prompts (macOS 10.10).

Changes in v4.3.0

  • New: Added ability to connect to and manage Power Manager clients remotely.
  • New: Added support for connecting to Bonjour services with pmctl.
  • New: Added an empty event template for easy custom event creation.
  • Change: Reworked core networking to relieve name resolution from caller.
  • Change: Schedule Assistant changed to open executable but suffixed files; previously executed.
  • Change: Added sound to Notifications Center messages; adjust through System Preferences as needed.
  • Change: Updated notification panel style to better compliment Yosemite.
  • Change: Updated client and schedule document icons for Yosemite.
  • API: Added CFNetServiceRef and NSNetService support to connection APIs.
  • Bug: Fixed a bug in remote management that could block legitimate access (macOS 10.10).
  • Bug: Fixed pmuser to ensure it never appears in the Dock (macOS 10.10).

Changes in v4.2.1

  • Change: Restored support for macOS 10.7.
  • Bug: Fixed window state restoration bug.
  • Bug: Fixed bug blocking event deletion (macOS 10.8).

Changes in v4.2.0

  • New: Installation and removal of scheduling engine no longer require a restart.
  • New: Added engine view to application; previously restricted to status menu and iOS app.
  • New: Added alert before stopping scheduler to confirm decision.
  • New: Added Scheduler menu to group related actions.
  • New: Added Action and Adjust per-event menus to manipulate events within the engine.
  • New: Revised application look and feel.
  • Change: Removed support for macOS 10.6.
  • Change: Removed support for garbage collection in PowerManager.framework.
  • Change: Removed software update options; defaults remain for customisation.
  • Change: Moved administrator access lock to menu item.
  • Change: Moved allow remote management to menu item.
  • Change: Moved pmctl tool into Power Manager.app bundle.
  • Change: Added AppleScript support to Power Manager.app; removed stand alone AppleScript application.
  • Change: pmctl updated to include Power Manager.app/Contents/Tools/interfaces by default for interfaces
  • Change: Remove item revealed in status menu, if main application is missing.
  • Change: Check for Updates… menus disabled if default prohibits checking.
  • Change: Updated Sparkle framework.
  • Change: Added support for automatic graphics card switching.
  • Change: Improved drag and drop to stack events and show item count.
  • API: Authorisation rights are now observable.
  • Bug: Fixed a bug in AppleScript that could cause a crash.
  • Bug: Fixed a bug in simplified notification limiting preflight checking of rights.

Changes in v4.1.8

  • New: Added tasks triggered when battery drops to a specified percentage capacity.
  • New: Added any battery charging or any battery discharging filter options to the event editor.
  • Bug: Restored authentication dialog for non-administrator users.
  • Bug: Disabled Smart Substitutions in script editor (macOS 10.9).

Changes in v4.1.7

  • New: Added Check for Updates… menu to application menu.
  • New: Added License… menu to application menu.
  • Change: Added authorisation rights repair option to pmd.
  • Change: Reduced external authorisation rights to avoid macOS 10.9 limits (rdar://15381545).
  • Change: Expanded pmd documentation.
  • API: Added authorisation object to manage request rights.

Changes in v4.1.6

  • Bug: Worked around authorization rights bug (macOS 10.9; rdar://15381545).
  • Bug: Fixed authorization rights listing bug (macOS 10.9).
  • Bug: Fixed bug in adjustment/modifications storage that could cause the pmd daemon to crash.
  • Change: Removed coupling to System Preferences authorization right, no longer required.

Changes in v4.1.5

  • New: Added Automator tasks for working with workflows.
  • New: Added Keynote tasks for playing and stopping presentations.
  • New: Added PowerPoint tasks for playing and stopping presentations.
  • New: Added QuickTime tasks for playing and stopping movies.
  • New: Extended Quick Schedule to allow sleep, restart, and shut down after short delay.
  • New: Notification Center support for pending and warning events (macOS 10.8).
  • New: Added in-application feedback and crash reporting.
  • Bug: Fixed a bug that could delay external processes being cleaned up.

Changes in v4.1.4

  • New: Added shell script on-demand, launch on-demand, and mirror files on-demand tasks.
  • New: Added support for subscription and transfer licences.
  • New: Added assisted move of application to Applications folder.
  • New: Added simplified notification option for schools.
  • Change: Added software update check option to removal application.
  • Change: Updated Sparkle framework.
  • API: Fixed activeevent.activity documentation.
  • API: Block support for Objective-C connection requests.
  • Bug: Fixed pmd rights set/remove command line option.
  • Bug: Fixed bugs and potential memory leaks to improve stability.

Changes in v4.1.3

  • New: Added support for macOS 10.8.
  • New: Added support for Gatekeeper; signed installer and applications with Apple Developer ID.
  • New: Replaced System Preference with stand-alone application.
  • Change: Added QuickLook support to stand-alone application.
  • Change: Added Spotlight support to stand-alone application.
  • Change: Embedded Automator actions within stand-alone application.
  • Change: Removed support for PowerPC (PPC) Macs.
  • Change: Removed support for macOS 10.4 and 10.5.
  • Change: Removal tool no longer suggests name and e-mail.
  • Change: Reduced size of and simplified self-signed certificate.
  • Change: Sped up AppleScript support and reduced memory use.
  • Change: Improved packaging; less packages and smaller file size.
  • Change: Added expiry date and revoke to licensing interface.
  • API: listen.applysocket default changed to TLSv1; previously negotiated.
  • Bug: Fixed bugs and potential memory leaks to improve stability.

Changes in v4.1.2

  • Bug: Fixed timer drift after sleep (macOS 10.7; rdar://9855350).
  • Bug: Fixed incorrectly configured local socket warning (macOS 10.7).
  • Bug: Fixed minor memory leak in new editor.

Changes in v4.1.1

  • Bug: Fixed bug that could cause idle sleep to fail.
  • Change: Improved network connection keep alive behaviour.
  • Change: Scaled back calls to macOS’s authorisation service.

Changes in v4.1.0

  • New: Added new event editor.
  • New: Added new event templates triggered by switching to battery or mains power.
  • Bug: Fixed Quick Schedule’s wake event.
  • Bug: Fixed bugs for macOS 10.7 Developer Preview.
  • Bug: Fixed “Unavailable” bug caused by orphaned certificates.
  • Bug: Fixed event view icon inversion when not window is not key.
  • Bug: Fixed AppleScript properties for inherited structures, such as power sources.
  • Bug: Removed incorrect continue field from the launch application action.
  • Bug: Fixed potential pmd crash when changing time zones (macOS 10.5).
  • Bug: Fixed pmuli login items set up bug (macOS 10.4).
  • Bug: Fixed inline scripts failing when not executed as root.
  • API: Added build.revision to return developer version information.
  • Change: Improved self-signed certificate creation and management.
  • Change: Any executable file can now be added to conditional running processes list.
  • Change: Added certtool example to the Administrator Guide.
  • Change: Added version information to Power Manager helpbook.
  • Change: Improved licence entry sheet (Pro).
  • Change: Status menu differentiates a stopped scheduler and no pending events.
  • Change: Removed extraneous menu item in status menu when only on-demand events are scheduled.
  • Change: Removed pmrights tool. Added functionality to pmd.
  • Change: Added ability to repair required authorization rights on pmd launch.
  • Change: Added ability to install to non-booted System volumes.
  • Change: Improved remaining non-essential installer scripts.
  • Change: Added ability to opening multiple events from an event view.

Changes in v4.0.4

  • Bug: Fixed launch application action bug that could cause the pmd daemon to crash.
  • Change: Improved localisation of recent triggers and conditions (Pro).

Changes in v4.0.3

  • Bug: Fixed inactivity trigger bug that could cause triggers to be delayed or not fire.
  • API: Added throughput methods for tallying bytes sent and received over a network connection.
  • API: Added Power object for observing and working with power sources.
  • API: Added trigger power state for triggering when a power source switches between mains and battery.
  • API: Added trigger power remaining for triggering when a power source capacity or remaining seconds changes.
  • API: Added trigger battery health for triggering when the health of a power source changes.
  • API: Added condition power state to test for a specific power state.
  • API: Added condition power remaining to test for power source current capacity or remaining seconds.
  • API: Added condition battery health to test for power source health.
  • Change: Improved recovery behaviour if a self-signed certificate can not be created.
  • Change: Improved inactivity trigger to better synchronise overlapping triggers.

Changes in v4.0.2

  • Bug: Fixed bug where some event editor fields did not support undo (Pro).
  • Bug: Fixed AppleScript property names that overlapped reserved phrases.
  • Bug: Fixed AppleScript sample criterion to reveal inherited structures.
  • Bug: Fixed errors in Administrator documentation regarding cron and launchd integration.
  • Bug: Fixed bug in days of the week condition.
  • API: Changed continue when field in action launch application, to continue.
  • Change: Added fallback for handling malformed application bundles in Interactive Constraints.
  • Change: Removed extraneous tool field from Schedule Assistant created events (Pro).
  • Change: Removing empty note fields from Schedule Assistant created events.
  • Change: Added a replace existing option to System Preference panel’s Import Schedule panel.
  • Change: Added ability to sort events by column (Pro).
  • Change: Fixed spelling mistakes in developer documentation.
  • Change: Added embedded documentation within AppleScript dictionary.

Changes in v4.0.1

  • Bug: Fixed bug in framework where invalidating a connection within a callback could crash the application.
  • Bug: Fixed bug that could cause sleep to be delayed by up to thirty seconds.
  • Bug: Fixed bug that could cause running application constraint open dialog to fail.
  • Bug: Fixed bug that could stop licensing Apply button being enabled (macOS 10.4).
  • Bug: Fixed bug that could cause external processes not to be cleaned up.
  • API: Unanswered requests called with NULL response if connection becomes invalid.
  • API: Added Time Zone object to provide client time zone name and current offset in seconds from UTC.
  • API: Added length limit of 1024 characters to notifications.
  • Change: Reworded licensing dialogs and removed requirement for organisation value.
  • Change: Removed edge case where Professional’s auto-saving library could present a save dialog (Pro).
  • Change: Updated removal tool’s confirmation dialog.
  • Change: Added editors for choosing directories, executables, and files (Pro).
  • Change: Disk image presentation.

Changes in v4.0.0

  • Core: New event format: multiple triggers, conditions, and actions per event,
  • Core: Event domains
  • Core: Concurrent and serial event performance support
  • Core: On demand triggering of events
  • Core: Arbitrary trigger date and time adjustment
  • Core: Reset trigger support
  • Core: Automatic scattering of date and time triggers
  • Core: Variable notification period support
  • Core: Variable warning period support
  • Core: Networking support: IPv4, IPv6, SSL, Bonjour
  • Core: Authentication via Pluggable Authentication Modules (PAM), including: Open Directory/Directory Services and Kerberos
  • Core: Configure on launch with flat file support
  • Core: Open and documented event format
  • Core: Software Development Kit (SDK): C and Objective-C interfaces, Interface Builder plug-in, and Networked Key Value Observation (KVO) support
  • Core: Extensive SDK documentation with numerous examples
  • Core: pmctl tool for easy local and remote command line management
  • Core: pmrights tool to manage and test authentication rights
  • Core: Logging with Apple System Logger (ASL) support and full audit log of triggers, conditions, and actions
  • Core: Watch logs over remote connections
  • Core: Standardised installation into /Library/Application Support/
  • System Preference: New Schedule Assistant:
  • System Preference: New tasks and workflows
  • System Preference: Edit existing events.
  • System Preference: Event history and statistics view
  • System Preference: Single click remote management set up
  • System Preference: Automatic software update support
  • System Preference: Improved look and feel
  • Status Menu: Adjust pending triggers forwards and backwards
  • Status Menu: Reset pending triggers
  • Status Menu: New Quick Schedule options: easy one-off event creation, postpone or reset all pending events
  • Status Menu: Improved look and feel
  • Notifier: Added Spaces support
  • Notifier: Added support for adjusting triggers forwards and backwards
  • Notifier: Added Growl support
  • Notifier: Improved look and feel

Changes in v3.7.4

  • Updated command line tool to export UTF8.
  • Fixed potential memory leaks.

Changes in v3.7.3

  • New Login Window notification implementation (Mac OS X 10.5 or later).
  • Moved per-user agents to launchd control (Mac OS X 10.5 or later).
  • Removed support for Mac OS X 10.3.9, aka Panther.

Changes in v3.7.2

  • Improved Quick Status interface.
  • Improved feedback field to allow multiple line comments.
  • Improved status menu ’nothing pending’ icon.
  • Minor documentation improvements.
  • Fixed potential crashing bug when rescheduling events.

Changes in v3.7.1

  • Improved syslog logging support.
  • Improved removal experience.
  • Fixed a rare bug in daily trigger calculation.

Changes in v3.7.0

  • New wake action.
  • Added time zone support.
  • Added starting and stopping events from Quick Schedule.
  • Added cancelling pending events from Quick Schedule.
  • Updated Login Window pmauthctl to support multiple installation mechanism names (Mac OS X 10.5).
  • Updated AMRollOverButton code.
  • Improved System Preference interface restrictions when locked.
  • Improved upgrade process to remove legacy preference file.
  • Improved status menu ’none’ icon (Mac OS X 10.5).
  • Improved status menu to truncate event names longer than 64 characters.
  • Improved status menu’s messages to differentiate between stopped and empty event queue.
  • Improved documentation.
  • Improved removal script.
  • Reduced System Preference’s Console logging to only failed daemon requests.
  • Moved daemon preference file back to /Library/Preferences/.
  • Safe guarded against bug in IOPM queue.
  • Fixed status menu hide/show bug (Mac OS X 10.5).
  • Fixed KVO bug in the Schedule Assistant.
  • Fixed Schedule Assistant bug caused by behavioural differences in tab views (Mac OS X 10.5).
  • Fixed incorrect icon bug in System Preference (Mac OS X 10.5).
  • Fixed an occasional visual bug in the event performing window.
  • Fixed a visual bug in the status menu event transition.

Changes in v3.6.2

  • Fixed uninstaller script bug that caused Automator to crash.
  • Fixed cosmetic bug in calculating status menu’s width.
  • Fixed restart request in uninstaller script (Mac OS X 10.3.9).
  • Safe guarded against missing resource in System Preference.
  • Safe guarded against effects of an interrupted uninstaller run.
  • Removed numerous authorisation requests in uninstaller (Mac OS X 10.3.9).

Changes in v3.6.1

  • Fixed inactivity trigger drift after power cycle.

Changes in v3.6.0

  • Import and export schedules from the System Preference.
  • Copy and paste events in the System Preference.
  • Drag and drop support; accepts XML/Property List drags, provides RTF and plain text descriptions.
  • New Automator action to Quick Schedule an event (Mac OS X 10.4 or later).
  • New Automator action to start and stop the scheduler (Mac OS X 10.4 or later).
  • New Automator action to get the next pending event (Mac OS X 10.4 or later).
  • New Automator action to cancel events (Mac OS X 10.4 or later).
  • New Automator action to delay events (Mac OS X 10.4 or later).
  • New Automator action to filter events by name, type, or action (Mac OS X 10.4 or later).
  • New inline AppleScript documentation (Mac OS X 10.4 or later).
  • New AppleScript Guide.
  • Rewrote AppleScript support; better meets expected behaviour.
  • Status menu icon dimmed until one hour before event; reduces visual impact until needed.
  • Improved status menu descriptions by removing redundant event description.
  • Removed redundant AppleScript commands where r/w properties exist.
  • Renamed all API parameters EventID to UniqueID.
  • Added a Remove Power Manager option to the System Preference.
  • Improved the uninstaller script with a restart dialog.
  • Improved the first-run and end-of-demonstration experiences.
  • Fixed inaccurate AppleScript dictionary properties marked as r/o, despite being r/w.
  • Fixed inaccurate error message in event validator when exceeding maximum value.
  • Fixed demo expiry code that caused events to remain in the pending queue.

Changes in v3.5.0

  • New architecture offering improved security and reduced disk access.
  • Padlock respects administrators and Security preferences in System Preference.
  • Cancel or delay any pending event.
  • Menu bar status item shows pending events.
  • Schedule Assistant to get you started quickly.
  • Quick Schedule for one off events.
  • AppleScript, Automator, and command line scripting support.
  • Less intrusive pending events notification dialogs; never takes the keyboard focus.
  • Improved pending event notifications when showing login window.
  • Undo support in System Preference.
  • Security rights granted through Mac OS X’s Authentication Policy database.
  • Named events provide better reasoning behind schedule.
  • Any combination of days available to Daily events.
  • Software update check in System Preference.
  • launchd support on Mac OS X 10.4 and later.
  • Distribution script based installer on Mac OS X 10.4 and later.
  • Subdivided installer packages for easier customization.
  • Improved interface and feedback.
  • Renamed Fast User Switch to Login Window.

Changes in v3.2.1

  • Universal Binary (Intel and PowerPC native).
  • Fixed potential crash when cancelling events.
  • Fixed potential notification drift after wake.

Changes in v3.2.0

  • New fast user switch action.
  • New inactivity trigger for scheduling an event after idle time.
  • New daemon option for configuration updates by URL.
  • New support for waking from sleep before pending events.
  • New Dashboard widget.
  • Schedule changes are now applied immediately.
  • Support for Spotlight searches.
  • Bug fixed to support edits made by authorised but non-administrator users.
  • Tidied up final notification dialog box message.
  • Apple Installer bug bypassed by no longer using drive checking script.

Changes in v3.1.0

  • New log out action.
  • New restart action.
  • New option to Delay pending events.
  • New option to Cancel pending events.
  • Users logging in with an event pending are immediately informed.
  • Application friendly shut down process.
  • Idle sleep disabled during pending event.
  • New scheduling engine.

Changes in v3.0.0

  • Initial release on Mac OS X.

Changes in v2.1.0

  • Control Strip support
  • Location Manager support
  • Keychain integration

Changes in v2.0.0

  • New Launcher
  • Two new Schedulers
  • Remote configuration
  • Administration facilities
  • Full AppleScript support

Changes in v1.0.2000

  • Schedule multiple start up and shut down events each day
  • Independent control over each day of the week
  • Enhanced access to sleep and idle time settings
  • Example and template AppleScripts
  • New iSupport menu
  • Updated manual
  • Extensive Balloon Help
  • Reduced file size

Changes in v1.0.0

  • Initial release.
  • Supports multiple start ups and shut downs per day
  • Independent schedules for each day of the week
  • Configure your System, display and hard drive sleeping timings to the minute
  • Control the notification period before scheduled shut downs
  • Adjust the idle time required before scheduled shut downs occur
  • Easy User Interface
  • Extensive Balloon Help
  • Template and Example AppleScripts
  • Complete documentation and tutorials (including Internet editions)
  • Free technical support
  • Includes the Secure Purchasing System for easy ordering