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
anduk.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
withinSSL
structure. - API: Deprecated
SSL level
element; defaults to best practice. - API: Changed default
SSL level
element value fromTLSv1
tonegotiated
.
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
anduk.co.dssw.powermanager.pmuser
withuk.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
forauthorisation.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 flagb
to disable launchd job bootstrapping; simplifies custom installations. - New: Added
pmctl
command line flagto-file-configuration
to replace deprecatedfile-configuration
. - New: Added
pmctl
command line flagfrom-file-configuration
to read requests from a file configuration. - Change: Added
kAEQuitReason
attribute tokAEQuit
AppleEvents. - Change: Deprecated
pmctl
command line flagfile-configuration
; replaced byto-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 replacementsystem 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 topmctl
to write requests in file configuration format. - New: Added
-as-file-configuration
flag topmctl
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 topmctl
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 topmctl
to immediately authenticate after connecting. - New: Added
client-certificate
andclient-key
flags topmctl
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 tolicence
structure to better highlight future dated licences. - API: New
legal.remove
to remove existing licences. - API: Deprecated
legal.revoke
; uselegal.remove
instead. The verb revoke incorrectly implied the licence would be invalidated. - API: Increased accepted
pem
parameter size from 16KiB to 64KiB forlegal.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 toenvironment variables
structure (API hardening). - API:
context
changed from dictionary tonotification 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
andorganisation
inlicence
. - API: Removed deprecated Client
computer name
, SSL allowances, and SSL levels. - API: Deprecated
process scheduling priority
,file creation mode mask
,throttle disk reads
andresource limits
inexternal
.
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
andpmuser
withuk.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
touk.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
; usepam_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 toconnection
class in AppleScript. - API: Added
authenticated
property toconnection
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; useclient.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
tomoment
withinsun observation
,trigger sun
, andtrigger await sun
in AppleScript. - API: Renamed
default connection
tolocal 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
andSSLv3
.
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
andpmuser
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
; replacessha1
. - 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
andNSNetService
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
orany 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 toTLSv1
; previouslynegotiated
. - 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, tocontinue
. - 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