All notable changes to this project will be documented in this file. Octory adheres to Semantic Versioning.
Released on March 1, 2022
- New SecureText input component, allowing user to input hidden password & confirm it. Also allows you to ask for password to match a specific regex
- Fixed HidePreviousButton and HideNextButton settings
- Fixed file monitor, now generated variables are replacing "." with "_" (eg. for test.txt it is now IS_TEST_TXT_FILE_PRESENT instead of IS_TEST.TXT_FILE_PRESENT )
- Fixed AirWatch app monitor regexes
- Fixed Jamf app monitor regexes
- Fixed Octory-Notifier to make it a universal app (Apple Silicon & Intel)
- Fixed DEVICE_NAME variable that previously returned device model instead of friendly name
- Fixed BlurredBackground mode for new macOS versions
- Added WaitForTerminationScriptExecution to wait for app termination script execution and include output in app logs (cf. wiki).
- Fixed CompleteInstallationScriptPath and IncompleteInstallationScriptPath not always run before application exited.
- Added new app icon following new UI guidelines.
- Added some logging so that it is easier for you to debug your configuration files.
- Added new packaging providing notarized installer for Octory, Helper (& weak) and Notifier.
- Fixed the AppTermination ActionSets that were not properly run before app being stopped.
- Fixed first action ran twice when using Chained actions.
- Added the MandatoryFilesMissingQuitText property for mandatory files monitoring.
- Fixed the IsMandatory property not working for File monitoring.
- Fixed the SendRequest action that wasn't properly read from configuration file in some cases.
- Fixed the Variable key registering in the configuration.
- NextButtonClick trigger was targeting PreviousButtonClick trigger.
Actions and Triggers
- Action: open a slide in another window. See OpenWindow. PRO
- Action: navigate to a specific slide. See NavigateToSlide. PRO
- Action: display a local notification to the user. See DisplayNotification. PRO
- Action: update a variable. See UpdateVariable. PRO
- Trigger: trigger an action set when another app is launched. See Triggers. PRO
- Trigger: trigger an action set programmatically with:
- ButtonComponent "Trigger" key
- DisplayNotification actions "Trigger" keys See Triggers. PRO
- Sidebar a container on the right. See SideContainer. PRO
- Specify width ratios to arrange containers. See Containers.
- New monitors count placeholders (useful to indicate the remaining monitors to install). See Placeholders.
- New Installer possible value: "Managed" to specify that a monitor installation state will be updated by octo-notifier only. See App Monitor.
- Optionally display a vertical scroller for the AppMonitorComponent. See AppMonitorComponent.
- Mark an AppMonitor as "Not mandatory" to allow the app termination if the monitor is not installed. See application monitoring.
- The icons to indicate the installation state of a monitor have been updated with SF Symbols (require macOS 11+). A spinner will be displayed when the monitor state is "Installing" (available on all supported macOS versions).
- Disable the application relaunch at login behavior when the system was turned off or restarted and the app was running. See App termination.
- The command-line tool config has been improved to be more precise in the error messages and to better evaluate the configuration files.
- A new command-line tool octo-notifier is available to send monitors installation updates to Octory or to send custom trigger events.
- Changed AppMonitoringComponent look.
- The "Previous" button was reappearing on the last slide after an incomplete installation alert was displayed although it was specified to hide it.
- The monitors specifying a condition in the Conditions section were not updated when a variable involved in the specified conditions was updated.
- PDF component. See Interface composition.
- Video component. See Interface composition.
- Copy to clipboard action. See Actions. PRO
- Terminate app action. See Actions. PRO
- The application will check that a configuration file has the correct permissions before using it. See Security.
- The Helper has received a security update and its current version is now 1.1.0. This version is required to work with Octory 2.0.6. Also, the Helper is now a Universal Binary. See Security.
- The application now uses a new internal library to decode a configuration file. The config checker is built on top of it to validate a configuartion file similarly as the logs of th app in /tmp.
- The SaveInputs and Log action have been marked as PRO features to improve coherence. Now all Actions are PRO features.
- The device placeholders have been fixed for Silicon Macs.
- 2020-12-16 update: Universal build for ARM and Intel
- Big Sur compatibility and graphics
- Slide valid state was not updated on a variable update
- The CURRENT_SLIDE_INDEX variable was not set at 0 before evaluating conditions
- The monitors conditions were not properly updated
- The Jamf policy execution now works properly by using sudo
- Action sets were triggered by an unwanted event
- Multi-threads crashes fixed
- The key Window→IsMovable now only affects the window title bar. Thus, the window is no more draggable using its background.
- Shortcut to force the app termination unconditionally. See AppTermination.
- App termination scripts with ExecuteAsRoot to choose how the run the scripts. See AppTermination.
- AppTermination → QuitShortcutIsEnabled not required anymore with default true value. See AppTermination.
- Scout updated to 1.3.0 to get a dictionary or array count. See API requests (VariableReadingPaths).
- Bad thread access when updating Jamf monitors while parsing the Jamf log that caused random crashes.
- Bad thread access when dealing with the variables updates that caused random crashes.
- Window shadow was not set with the "Simple" value for the OnScreen key.
- App termination script now uses the Helper
- Checkboxes text now populated
- Monitors text now populated
- Flag to save the configuration passed as argument: --save
- Model (font, color, request) single parent log error improved
- Default config name now also searched in Managed Preferences
- The window title can be populated
- Octory log is now named username-octory.log
- AppMonitor generated variables were not writting their first state
- The device placeholders now work for macOS < 10.15
- DisplayAlert actions were populated
- Display a popover view from a button. See Button component. PRO
- Conditionally execute actions. See Actions. PRO
- Reload the interface by keeping variables values and controls states. See Admin menu
- New application and device placeholders. See Variables
- Possibility to choose the application configuration file with the command line. See Home
- Possibility to choose the application window OnScreen option with the command line. See Window configuration
- Possibility to hide navigation buttons for each slide. See Slides
- Window OnScreen new value MenuBar and bunch of new customizations. See Window configuration
- Possibility to use a parent style (font, color) with a single string when no overrides are needed. See Appearance
- Helper to execute a command with root privileges. See Helper. PRO
- Conditionally insert or remove components and monitors. See Conditions, Components and Monitors. PRO
- Specify an Input component percent width. See Input Components
- File monitoring with generated variables and optionally generate a variable for each app monitor. See Monitoring
- Reload the interface takes the monitors and navigation view into account. Thus, the monitors states are reset.
- The Justified text alignment value for a font has changed to Justify
- Button component required Style key added. See Button component
- Button component TextColor key has been changed to Color
- Termination sound has been moved to the Monitoring section, with new customizations.
- Window Minimum/Maximum height and width have changed for sizes. See Window configuration
- Some keys previously required are not required anymore and have a default value instead
- The placeholder FULL_USER_NAME has been changed for USER_FULL_NAME
- Checkboxes input variable format has changed from [variable]_[title] to [variable]-[checkbox index]. See Checkbox Input component
- Octory now waits for Workspace ONE (Airwatch) or Munki log files, then starts monitoring.
- Input variable now written in Octory’s variables and in the input file, without the need of a validation key
- Possibility to test empty strings with validation regular expression for a Text Input component
- Possibility to tab between Text Input component, unless the interface has been reloaded
- Image view infinite loop at image loading
- AppTermination scripts paths not populated
- The StyleConfigurableTextView and StyleConfigurableTextField would not listen to input variables updates
- It was not possible to quit even if no monitors were configured, or if all were already installed
- Monitoring of the file /var/log/install.log to trigger the monitoring installing state for apps which are not downloaded directly into the /Applications folder with the .appdownload extension (like Microsoft’s apps)
- Regular expression to find a match in the Jamf log changed to add more flexibility
- The Previous button was appearing on sole slides when the “Finish” button was clicked, but the application was not terminated
- The Admin mode was not deactivated when specified so in the configuration
- Menu bar not always active at app launch
- Initial release.