What's new in Snarl 5.0 Beta 2 Preview
Apr 28, 2017
- Snarl R5.0 is a complete re-write of Snarl using C# for the core back-end. This has added a whole new
- dimension of stability and performance increase to what was becoming a tired development platform (R4.0
- was written in Visual Basic 6). In addition to the back-end improvements, the networking core and
- notification redirection subsystem has been completely re-written as well, with many more new features
- included.
New in Snarl 3.1 Beta 3 (Jan 22, 2014)
- Fixed copyright. (45.22) - Added "FORWARD" identifier to SNP 3.0 header and incoming FORWARD packets are now given the SN_NF_FORWARD flag. (45.21)
- Fixed two bugs which were causing issues with notification forwarding when using SNP 3.0. (45.19)
- Released as 3.1 Beta 2. (45.18)
New in Snarl 3.1 Beta 2 (Jan 22, 2014)
- Registered extensions are now included in the Snarl Apps menu. Selecting an entry from the menu will cause the extension's settings panel (if it has one) to be displayed. (45.17)
- Notify command now accepts "event" arument in place of "class". (45.17)
- Added "events-add", "events-del" and "events-clear" commands. (45.17)
- Snarl now always writes to snarl_log.txt; the setting simply indicates whether that's all it does. (45.17)
- Display preview image is now created in %TEMP%\snarl.style...prvw. (45.16)
- Application Roster now provides a global DefaultAppIcon() and BannedAppIcon() rather than loading them each time. (45.15)
- Several icons are now passed as objects to Prefs Kit rather than by filename. (45.14)
- Notification actions button moved to bottom right corner. (45.12)
- Notification callback button text changed. (45.11)
- Action menu icons are now cached at startup. (45.11)
- Notification HUD layout cosmetic improvements. (45.9)
- Cosmetic tweaks to some HUD content. (45.3)
- Now using menu.library 2.0 to create the tray menu. This means we can have icons in menus again and, finally, have proper Missed Notifications and Snarl Apps sub- menus. (45.2)
- Bumped to V45. (45.1)
New in Snarl 3.1 Beta 1 (May 25, 2013)
- Includes Melon 3.78 which addresses several issues with the Prefs Kit, graphics.library and icon.resource;
- Updated SysInfo 3.3 extension, Corporate 2.0 display, Metro 2.0 display Prowl 2.1 redirect, and NMA 1.2 redirect;
- Wifi Monitor extension no longer included in distribution (functionality is now provided by SysInfo extension);
- Standardised icons for Clock+, SysInfo and AudioMon extensions;
- Standardised icons for Prowl redirect;
- Fixed: a dropshadow value of zero no longer crashes Snarl;
- Fixed: dropshadow slider in panel now initialises correctly when the panel is opened;
- Fixed: SysInfo extension no longer halts system when handling a clipboard change;
- New: SysInfo extension now recognises r,g,b formatted text on the clipboard as a colour;
- New: SysInfo extension now monitors wifi connections;
- New: Style previews now include http://getsnarl.info as the default callback;
- New: Prowl redirect now supports the Prowl 1.2 "URL" parameter;
- Fixed: Prowl redirect correctly supports the "priority" parameter;
- New: NMA redirect now supports the "priority" parameter;
- Fixed: Various issues with ICO format image handling.
- Key changes and improvements since R3.0
- Fixed: Issue which could cause Snarl to crash when creating a new redirect.
- Key changes and improvements since R2.5.1
- Fixed: Bug in the Win32 transport which was causing the wrong notify signal to be sent back to the calling application;
- New: JSON handler now supports full API request functionality;
- Fixed: GNTP application icon parsing;
- New: Block further notifications option in the notification menu. Selecting this will disable the class which generated the notification;
- New: Per-class setting which will prevent notifications from being programmatically hidden (closed) by applications;
- New: Per-class option to automatically redact notification body text based on the notification's sensitivity value;
- New: Styles may now provide custom Close and Actions gadget images;
- New: Can now subscribe to notifications from a remote computer (SNP only at present);
- When an extension is enabled, Snarl will compare its version number to a cached copy - if the two are different, Snarl will notify that the extension has changed;
- New: Per-class colour tint option allows notifications which use the same style to be easily identified (style in use must support this feature);
- New: Can now load, unload and configure extensions via the command line arguments passed to Snarl.exe;
- Notification scaling re-implemented;
- Updated "good" and "bad" icons;
- Extensions can now be configured via the [Applications] page;
- A gear wheel emblem is now drawn on the notification if it has a default callback;
- New: Can unload extensions from the [Applications] page;
- Can view details of remote applications via the [Applications] page;
- Garbage collection can now be disabled by setting garbage_collection to 0 (zero) in snarl41.config;
- New: can now define which notifications are sent to subscribed computers at a per-class level;
- Subscribed computers are now listed in the [Network] page;
- Completely revised and improved notification forwarding via both SNP and GNTP;
- Completely reworked Class Configuration panel;
- Completely reworked Preferences panel content;
- Styles are now separated into displays and redirectors.
- In addition to the above, there have been many bug fixes, security enhancements and cosmetic changes - see the change log for full details.
New in Snarl 3.0.1 (Jan 3, 2013)
- Fixed: Issue which could cause Snarl to crash when creating a new redirect.
- Fixed: Bug in the Win32 transport which was causing the wrong notify signal to be sent back to the calling application;
- New: JSON handler now supports full API request functionality;
- Fixed: GNTP application icon parsing;
- New: Block further notifications option in the notification menu. Selecting this will disable the class which generated the notification;
- New: Per-class setting which will prevent notifications from being programmatically hidden (closed) by applications;
- New: Per-class option to automatically redact notification body text based on the notification's sensitivity value;
- New: Styles may now provide custom Close and Actions gadget images;
- New: Can now subscribe to notifications from a remote computer (SNP only at present);
- When an extension is enabled, Snarl will compare its version number to a cached copy - if the two are different, Snarl will notify that the extension has changed;
- New: Per-class color tint option allows notifications which use the same style to be easily identified (style in use must support this feature);
- New: Can now load, unload and configure extensions via the command line arguments passed to Snarl.exe;
- Notification scaling re-implemented; Updated "good" and "bad" icons;
- Extensions can now be configured via the [Applications] page;
- A gear wheel emblem is now drawn on the notification if it has a default callback;
- New: Can unload extensions from the [Applications] page;
- Can view details of remote applications via the [Applications] page;
- Garbage collection can now be disabled by setting garbage_collection to 0 (zero) in snarl41.config;
- New: can now define which notifications are sent to subscribed computers at a per-class level;
- Subscribed computers are now listed in the [Network] page;
- Completely revised and improved notification forwarding via both SNP and GNTP;
- Completely reworked Class Configuration panel;
- Completely reworked Preferences panel content;
- Styles are now separated into displays and redirectors.
- In addition to the above, there have been many bug fixes, security enhancements and cosmetic changes.
New in Snarl 3.0 Beta 2 (Aug 31, 2012)
- Fixed: Bug in the Win32 transport which was causing the wrong notify signal to be sent back to the calling application;
- New: JSON handler now supports full API request functionality;
- Fixed: GNTP application icon parsing.
New in Snarl 2.6 Alpha 4 (Apr 12, 2012)
- "Redirectors" are now known simply as "Redirects".
- Correctly update all lists and combos when the available styles change.
- Changed command-line arg "-r" (request) to "-p|--parse" (parse).
- Fixed bug which was preventing redirects from being permanently removed in some
- situations. Credit to Pako for spotting this.
- Re-enabled support for legacy SNARL_LOAD_EXTENSION and SNARL_UNLOAD_EXTENSION
- commands as snarlm.exe still issues these.
- Improved support for legacy SNARL_LOAD_STYLE_ENGINE and SNARL_UNLOAD_STYLE_ENGINE
- commands as snarlm.exe still issues these.
- Now correctly installs zipped runnable styles (.RSZ files) if they're passed as
- part of a command line.
- Added "mark as read" indicator to NC items. Clicking the indicator will remove
- the item from the NC without replaying it.
- Can now configure extensions even if they're in a FAILED state.
- Changed lots of system notifications to use the Welcome Message / Others class.
- Growl UDP registrations now use the remote host IP address rather than the
- host name.
- Added extra debug output to Growl UDP packet parsing.
- Notification Centre: can now close it by clicking the "X" button in the top
- right corner.
- Notification Centre: double-clicking a header expands/collapses the items
- within it; double-clicking an item replays it and removes it from the NC.
- Notification Centre: clicking the "X" button in a header removes all the items
- within the header.
- Notification Centre: automatically closes when the last item is removed.
- "Quit Snarl" menu item is now at the bottom of the menu.
- Class configuration panel can now be displayed on its own (that is, without
- the main panel being around). This is used by the "Notification Settings..."
- option in the notification menu.
- Can now configure Notification Centre colors.
New in Snarl 2.6 Alpha 2 (Apr 12, 2012)
- Added Notification Centre.
- Shift-clicking a notification closes all notifications; Ctrl+Shift-clicking
- closes only those notifications from the same app.
- The label of the default callback button can now be customized using "callback-
- label=foo" in the {notify} request.
- New notification model. Actions gadget is larger and appears in the top left
- corner. If the notification has a callback, this is now displayed as a button
- in the bottom right of the notification. Clicking the notification body simply
- closes (SNARL_EVENT_CLOSED) the notification.
- Non-interactive notifications now fade to 25% opacity and fade faster.
- Added new global "Ignore mouse and other inputs" option.
- Style and Extension configuration panels are no longer displayed modal.
- Applications can no longer be automatically banned. Instead, uCheckDOS()
- now counts up how many notifications the application currently has visible
- and drops further notifications while this number is ten or more.
- Fixed a number of bugs to do with subscriptions and forwarding via SNP.
New in Snarl 2.6 Alpha 1 (Feb 15, 2012)
- New: Block further notifications option in the notification menu. Selecting this will disable the class which generated the notification;
- New: Per-class setting which will prevent notifications from being programmatically hidden (closed) by applications;
- New: Per-class option to automatically redact notification body text based on the notification's sensitivity value;
- New: Styles may now provide custom Close and Actions gadget images;
- New: Can now subscribe to notifications from a remote computer (SNP only at present);
- When an extension is enabled, Snarl will compare its version number to a cached copy - if the two are different, Snarl will notify that the extension has changed;
- New: Per-class colour tint option allows notifications which use the same style to be easily identified (style in use must support this feature);
- New: Can now load, unload and configure extensions via the command line arguments passed to Snarl.exe; Notification scaling re-implemented; Updated "good" and "bad" icons; Extensions can now be configured via the [Applications] page; A gear wheel emblem is now drawn on the notification if it has a default callback;
- New: Can unload extensions from the [Applications] page; Can view details of remote applications via the [Applications] page;
- Garbage collection can now be disabled by setting garbage_collection to 0 (zero) in snarl41.config;
- New: can now define which notifications are sent to subscribed computers at a per-class level;
- Subscribed computers are now listed in the [Network] page;
- Completely revised and improved notification forwarding via both SNP and GNTP;
- Completely reworked Class Configuration panel;
- Completely reworked Preferences panel content;
- Styles are now separated into displays and redirectors. In addition to the above, there have been many bug fixes, security enhancements and cosmetic changes - see the change log for full details.
New in Snarl 2.5.1 (Jan 30, 2012)
- Key changes and improvements Fixed bug which sometimes stopped the "Copy to Clipboard" option in the notification's menu from working; Can now copy and paste selected missed or historical notifications to the clipboard; Revised AudioMon extension; New Scroller style engine
- includes two new redirect styles which display the notification content on-screen in different scrolling formats; Runnable style engine now loads styles from ALLUSERDIR/styles/runnable and USERDIR/styles/runnable; The style engine which provides the Speech style was missing from the previous installation. A new, fully revised, version of the Speech style is now included; Installer now creates ALLUSERDIR/styles folder and copies some default styles in; Included beta version of Script style engine which allows for creation of styles using VBScript; Snarl now loads style engine links from INSTDIR/styles first, then from USERDIR/styles. In the case of a conflict, the engines already loaded (i.e. those from INSTDIR/styles) take priority; Updated SysInfo extension now includes "My Computer" action in volume mounted notifications. Selecting this action opens the Windows My Computer folder; Per-user settings are now created by Snarl, not the installer. This resolves an issue when installing Snarl on Windows 7 using a non-administrator account, and improves the installation experience generally; Style engine and extension links are now stored in the Snarl installation folder under \styles\ and \extensions\ respectively. This improves the experience when using Snarl in a multi-user environment; EZ styles are now stored in the same folder as the style engine (\styles\ez\) rather than in the user application data folder; The mobile style engine now creates its \webforward\ folder in the user's application data folder on start up; Runnable styles are now stored in the same folder as the style engine (\styles\runnable\) rather than in the user application data folder; Start menu content is now created in the all users folder; Fixed bug in Clock+ extension which would generate incorrect content in some cases; Clock+ extension hourly chime notifications are no longer logged in Snarl by default; Prowl redirect style now supports new "sensitivity" parameter; Many bug fixes and enhancements. In addition to the above, there have been many bug fixes, security enhancements and cosmetic changes - see the change log for full details.
New in Snarl 2.5.1 Beta 2 (Jan 26, 2012)
- Added "Options..." button to [Missed] and [Displayed] subtabs. (43.73)
- Fixed bug which sometimes prevented the "Copy to Clipboard" menu item from working. (43.73)
- Added option on [General] page to enable/disable the close notification key combo.
- Minor cosmetic changes to scheme preview notification and Snarl Apps pop-up window. (43.72)
- Added an undocumented S_STYLE_REDIRECT_TO_SCREEN (0x1000) flag which a redirect style can use to indicate it generates on-screen content. Snarl doesn't generate a "A notification using was created" notification for styles which implement this value. (43.72)
- Minor cosmetic changes to the [Presence] sub-pages. (43.72)
- Removed non-functional "Install Extension..." button from the [Extensions] page. (43.72)
- Renamed "Snarl Daemons" menu entry to "Snarl Specific Apps". (43.72) Added undocumented "away" and "back" commands to SOS. These set and clear a new SN_PF_AWAY_SOS flag which is used purely for testing the user presence code. (43.71)
- Holding down 'E' while starting Snarl prevents all extensions from starting; 'D' enables debug mode and 'S' prevents startup-sequence files from being launched. Holding down either CTRL key no longer enables debug mode. (43.71)
- Snarl now launches links from USERDIR/startup-sequence and ALLUSERDIR/startup- sequence on startup. These are SSL2 links which follow are standard INI file format. See the end of this document for more information. (43.71)
- Reworded inaccurate text on [Extensions] page. (43.71)
- Added "keep-alive" to {register} command. Default is zero. Setting to "1" ensures the application is not removed during garbage collection if the creator has disappeared (useful for scripts and command prompt-launched stuff). (43.71)
- Snarl now runs a garbage collection every 10 seconds looking for applications whose process is no longer running. Any orphans are then gracefully unregistered. (43.71)
- Now looks in user folder for style engine links *after* loading links from INSTDIR\styles.
New in Snarl 2.5.1 Beta 1 (Jan 6, 2012)
- New "sensitivity" argument added to {notify} command. Defined values are as follows: 0 - Normal; 16 - Personal; 32 - Private; 48 - Confidential. Note that Snarl simply passes the value on. (43.62)
- Removed the "include_host_name_when_forwarding" option. Styles now need to include the computer name themselves. (43.62)
- Can now send "recipient=/S" in {notify} request. Snarl will compare the value against the logged-on user's username and will discard any which don't match. (43.61)
- Double-clicking the tray icon when there are missed notifications now opens the missed notifications panel. (43.60)
- Fixed bug which caused all notification classes to default to "log always". (43.60)
- Extensions and style engines are now stored (and loaded from) INSTDIR/extensions/ and INSTDIR/styles/ respectively. (43.59)
- User-specific data folders are now created during start-up. (43.58) Applications which register via TCP/IP on the local computer no longer get treated as remote applications. Specifically: there's no "... on " text and the registration notification say "Application registered". (43.57)
- Fixed bug which broke SNP2. Credit to the G+ Notifier guys for spotting this. (43.55)
- Added new "BlockUnknownApps" admin setting. If this is enabled ("1"), only applications which have existing .class files will be allowed to register with Snarl. (43.53)
- Fixed a bug introduced in R2.4.2 which meant that if no notification title or text is supplied for {notify} you'll always receive an ERROR_ARG_MISSING, even if the notification class has a default title or text.
- Changed the way missed notifications are counted. (43.52)
- Extension icon loader now uses same code as notification icon loader. (43.52) - Better parsing of icon paths so filenames which contain commas should no longer be misunderstood as resource indicies. Credit to Toke for this. (43.52)
- System info notification now displays local IP addresses and screen resolution. (43.52)
- Fixed bug which caused the class default sound to play even if a notification provided its own specific sound.
New in Snarl 2.5 Beta 2 (Nov 11, 2011)
- Fixed bug to do with class default timeout. Credit to Pako for this. (43.50)
- Fixed bug which caused notification_info->title to be empty if S_STYLE_IS_ WINDOWLESS is specified but neither of S_STYLE_V42_CONTENT nor S_STYLE_WANT_ APP_NAME are and "Include host name when forwarding" is disabled. Credit to Pako for spotting this. (43.35)
- Style Engines can now support their own configuration interfaces. To do this, the style engine should respond to a call to IStyleEngine.StyleAt() where the index provided is zero by setting style_info->flags to S_STYLE_IS_CONFIGURABLE. Snarl will then call IStyleEngine.GetConfigWindow() with StyleName set to ".global". At this time, the engine should provide its own UI and return zero. Returning a non-zero value is not permitted and will break in future releases of Snarl. (43.34)
- "Remove Selected" in the missed/history lists now correctly removes the selected items. (43.34)
- External apps can now query Snarl's state using the new snGetSystemFlags() API. This currently returns the debug state, user away state and user busy state in the new SNARL_SYSTEM_FLAGS enum. (43.33)
- Snarl now notifies on style drag-drop. (43.32)
- Notification details menu now includes the source computer in the application name. (43.32)
- Improvements to forwarding code. (43.32)
- "Log to history" is now a 3-state control with the ability for the app to suggest what should be done if the user allows it. The app can do this by supplying "log=0" within the command to prevent the notification from being logged, otherwise it gets logged. (43.31)
- Snarl no longer creates an empty file when an invalid icon path is provided. (43.31)
- Notifications can now be replayed even while DnD mode is enabled. (43.31) Changed "Missed Notifications..." menu item to a menu parent which will open a submenu of (at most) the last 10 missed notifications. Selecting an entry from the menu will reply the notification. (43.31) - Added GNTP flash policy support. (43.30)
- Added "Restory Factory Settings" button to [Advanced] page (suggested by Shawn) which currently renames "config41.snarl", "styledefaults.conf" and anything with the extension of ".class" to "xxx.backup", launches the new DelayLoad app, and quits Snarl. (43.29)
- Added priority background, title and text colours to default style settings. (43.21)
- Pass-Thru implemented. This only applies when the user is Active (that is, when they're neither Away nor Busy). (43.21)
- Moved [Pass-Thru] from [Display] into [Presence->Active]. (43.21) Command-line parser now supports .runz and .webforward files which are copied/extracted accordingly. (43.20)
- Can now drag-and-drop .runz (zipped runnable styles) and .webforward files onto the Preferences panel. Snarl will copy/extract accordingly and re-load styles. (43.20)
- Added "never_ban" setting to the per-application config
- if this is set to 1 the application will never be banned by Snarl. (43.20) Improved way Missed and History lists are managed. (43.20)
- History and Missed lists now limited to 1,000 items. (43.19)
- NOTIFY will now register and the application if "app-sig" and "app- title" are both supplied. It will also add the required class if "class-id" and "class-name" are supplied. (43.18)
- Listen for JSON and SNP/GNTP now enabled by default. (43.15)
- Now listens on Port 5233 as well. (43.15)
- Moved Missed Notifications into [History] page under new "Missed" tab. Suggested by Shawn. (43.14)
- Added support for scripted callbacks. (43.8)
- Extensions can now provide resource-based icons in extension_info-> iconpath. For this to work, the path must contain the path to the resource file, a comma, and the index of the icon to use
- e.g. "shell32.dll,34". The path need not be absolute, so long as Windows can figure it out. (43.6)
- Only !icons are now sent verbatim; cached icons are sent phat-encoded just like other filesystem ones. (43.2)
- Content is now crafted by the subcriber roster before being passed to the individual subscribers. (43.2)
- Behind-the-scenes forwarding improved significantly. (43.2)
- Can now selectively enable and disable individual forwarders and subscribers via the [Network] page. (43.2)
- "Has action" emblem is now drawn if the notification has a static click callback. (43.2)
- Style defaults "width" is now a slider control.
New in Snarl 2.5 Beta 1 (Nov 11, 2011)
- Can now selectively enable and disable individual forwarders and subscribers via the [Network] page.
- "Has action" emblem is now drawn if the notification has a static click callback. Style defaults "width" is now a slider control.