Awasu 3.0.2 (beta)

This is a beta release [?]. Some features may not be complete and the software may be unstable. Install at your own risk! You may need to do some basic computer maintenance tasks to get this release to run.
Installation

First, backup your existing Awasu installation! [?]

I say this every time, but this time it's important! There have been extensive changes in this release, so if you have problems and need to go back to 3.0.1, it will be tricky to do so since there have also been backwards-incompatible database changes.

Then choose how you want to install this release:

Upgrade from Awasu 3.0.2.alpha1, alpha2, alpha3 or alpha4
Upgrade from Awasu 3.0.1
Upgrade from Awasu 3.0
Upgrade from a version of Awasu prior to 3.0
Create a clean installation
Reinstall Awasu 3.0.2
After installing this release, Awasu will forget which feed items are new.
Optimizations
  • Optimized the feed parser.
  • Optimized how channel summary pages are generated.
  • Optimized how Awasu checks if it has seen feed items before.
  • Optimized the shutdown process.
  • Optimized how Awasu accesses the archive database.
  • Changed the available choices for the Database access option in the Archive tab of the Program Options.
  • Optimized how Awasu checks for new items for each channel during startup.
  • Optimized how Awasu processes regular expressions.
User interface
  • The Channel Wizard no longer hangs the UI if the initial update of the new channel takes some time.
  • Extremely large images in feeds are now adjusted to be a more sensible size.
  • Large channel images are resized smaller.
  • Added an option to allow embedded media in feeds.
    This is just a short-cut to allow <script> and <object> tags, and can be set globally in the Advanced tab of the Program Options (under Safe Feed Content), or per channel in the Advanced tab of the channel's Properties (under Safe Feed Content).
  • Fixed a bug that was causing the incorrect URL to sometimes be shown in the browser navbar.
  • Fixed a bug that was preventing normal typing in the browser navbar.
  • Fixed the animation in the "operation in progress" dialog.
Search engine
  • The search engine now only returns the most recent revision of each search result (unless the channel it came from is tracking revisions).
    This removes a lot of the noise from the search results.
  • Decode SGML entities correctly when converting HTML into plain-text e.g. for search result excerpts.
  • Removed the Search in URL option.
    Unfortunately, the underlying search engine just wasn't handling this properly, so the option was removed. Use the site: filter to restrict search results by web site.
  • Clicking on a search result shows it in its parent channel summary page (if possible).
  • Fixed a problem with pagination of quoted search queries.
  • Use the short-form parameter name in the search query page template.
  • Fixed a possible crash if a search was made before all the channels had finished loading.
  • Fixed a possible crash when indexing content.
Email

Awasu now has new infrastructure for sending emails, which is configured in the Advanced tab of the Program Options dialog. This works much better than the old system, and also allows emails to be sent via public email services such as GMail or Hotmail.

If you are using the SendEmail channel hook, this extension now uses the above global SMTP settings (instead of having its own settings). This means you must configure your SMTP settings, as described below, otherwise it will not be able to send emails.

Configuring Awasu to use a standard SMTP server

To configure Awasu to use a standard SMTP server to send emails:
  • Enter the server address. If the server uses a non-standard port (i.e. not port 25), append it to the address e.g. myserver.com:123.
  • Enter the username and password.
  • Most SMTP servers will also require you to login before sending any emails.

Configuring Awasu to use GMail

To configure Awasu to use GMail to send emails:
  • Enter a server address of gmail.com:465.
  • Enter your username and password.
  • Enable SSL and login.

Configuring Awasu to use Hotmail

To configure Awasu to use Hotmail to send emails:
  • Enter a server address of smtp.live.com:587.
  • Enter your username and password.
  • Enable TLS and login.
User tools
  • User tools now have access to all of a feed item's metadata.
    Just enter the usual {%ITEM-METADATA% ...} values as the user tool's command.
  • Sending a feed item to the clipboard now sends the title, URL and description.
Templates
  • Standardized the way date/time values are inserted into templates.
    The following parameters are now recognized (and can be overridden in the Program Options):
    • DATE_FORMAT (default "%Y-%m-%d")
    • DATEA_FORMAT (default "%d %b %Y")
    • TIME_FORMAT (default ""%H:%M"")
    • TIMES_FORMAT (default "%H:%M:%S")
    The following parameters are synthesized from the above parameters:
    • DATE_TIME_FORMAT
    • DATE_TIMES_FORMAT
    • DATEA_TIME_FORMAT
    • DATEA_TIMES_FORMAT
  • Added the ability to format byte counts in templates.
  • Added a new jsonval encoding type (this inserts a JSON value, with quotes if necessary).
Plugin channels
  • Added support for the new Awasu plugins.
  • Plugin channels and channel hooks can now show/hide properties based on the value of another property.
  • New plugin channels are now assigned a GUID before the plugin is first run.
  • The channel's .CHANNEL file is now flushed to disk before the plugin is run (in case the plugin needs to read it).
  • New plugin channels now re-use the already-downloaded feed after the Channel Wizard finishes (instead of getting it again).
  • Plugin channels are now notified if they are being run by the Channel Wizard for a new channel.
    This is an optimization for plugins that take a long time to run. Since the Channel Wizard only needs basic information about the channel (e.g. its name, home URL, etc.), the plugin can just return this, instead of generating the entire feed.
  • Plugins can now request that their feed be refetched after a channel has been created (instead of using the previously retrieved feed).
Minor changes and bug fixes
  • Added the ability to zoom in/out of web pages.
    The standard keyboard shortcuts of Ctrl-Plus and Ctrl-Minus are assigned to zoom in and out, but if you are already using Awasu, your existing shortcuts won't be upgraded. Either run admin.exe and reset your keyboard shortcuts, or assign them manually (via the Tools|Customize dialog).
  • You can also set the default zoom in the Display tab of the Program Options.
  • Implemented a new crash handler that will automatically submit crash logs.
    Hopefully, you will never see this
  • Worked around a problem introduced by IE11 that was causing channel updates to get stuck.
  • Fixed a problem that was sometimes stopping offline images from working.
  • Reworked how channel housekeeping works, so that it always gets done, even on a heavily loaded system.
  • Moved the channel housekeeping work from Awasu Admin to the main Awasu program, where it is done automatically. This means that Awasu no longer nags you to optimize the database - woo hoo!
    It is still recommended that you run Awasu Admin and optimize the database from time to time, but it is no longer essential.
  • Fixed a problem that was sometimes stopping enclosures from being downloaded on large Awasu installations.
  • Enclosures are now automatically deleted correctly, even if their parent feed item has been purged from the archive database.
    Thanks to Tom Stewart for psychically figuring this one out. Raymond Chen would've been proud.
  • Enclosures are now automatically deleted based on the prevailing settings at the time of their download (instead of when the cleanup is done).
  • Enclosure housekeeping is now done periodically (instead of just at startup).
  • Fixed a crash when running Awasu Admin non-elevated for a portable user.
  • Reset the UI for the logged-on user if the selected user is a portable one.
  • Any pending channel updates are cancelled when a blackout period starts.
  • Fixed a problem that was stopping item content filters from being applied if their auto-download had been disabled.
  • Standardized how Awasu sniffs for HTML and XML.
  • Increased the default log file sizes for Awasu Server.
  • Plugin channels, application plugins, channel hooks and esync services now support the following aliases for parameters recognized by Awasu:
    • DownloadUrlDownload URL
    • DownloadUrl_UserNameDownload user name
    • DownloadUrl_PasswordDownload password
    • DownloadUrl_UtcOffsetDownload UTC offset
    • ScriptTimeoutScript timeout
  • Parameters for plugin channels, application plugins, channel hooks, esync services and smart subscribes are now case-insensitive.
  • The process used to download articles for reading offline is now run at a lower-priority.
  • Empty HTTP responses are now handled correctly.
  • Fixed a potential crash when adding text to the clipboard.
  • The {%ENCLOSURES-SAVEDIR%} template parameter now returns the configured save directory for enclosures, not the effective one.
  • The $/channels/get API call now correctly encodes plain text content.
  • The $/channels/folders/delete API call now allows all folders to be deleted (use id=*).
  • Awasu no longer attempts to download embedded images (i.e. that are using the data: protocol) for offline reading.
  • Awasu now tries to keep going, even if cannot create the system tray icon.
  • If opening a large number of channels simultaneously, the process can now be cancelled.
  • Added <wbr> to the list of HTML tags allowed by default.
  • Changed the way Awasu handles feeds with non-standard encodings.
  • The default value for extension parameters is now trimmed.
  • Extensions can now define a "directory" type parameter.
  • Boolean extension parameters now recognize values such as yes/no, true/false, on/off, etc.
  • Extensions now receive a parameter that flags if Awasu is being run in portable mode.
  • Relative paths are now only decoded for file/directory extension parameters.
  • Fixed a problem when dumping network interfaces during startup.
  • Fixed a possible crash if a search result is returned for a channel that has since been deleted.
  • The favicon for the Awasu API is now served internally, not from an external file.
  • The feed item cache is now disabled by default.
    This will speed up Awasu and reduce its memory consumption.
  • Fixed several cases where Awasu could hang under heavy load.
  • Optimize the process of sending out reports that are both email'ed and FTP'ed.
  • Awasu now collects statistics about its operation.
  • Fixed a bug that was stopping Update all channels from working if a channel blackout is in effect.
  • Fixed relative link translation to handle protocol-relative links.
    Browsers still don't seem to handle these properly, so Awasu now converts protocol-relative links to be http://.
  • Awasu now logs an error if it can't register the IE context menu extensions.
  • Fixed a bug that was stopping content that started with the string "data:" from appearing properly.
  • Changed the way log files get truncated.
  • Fixed a problem when showing the error message, if Awasu fails to download a feed item for offline reading.
  • Fixed a bug in how JSON values are encoded when processing templates.
  • Dialog boxes are now disabled in embedded HTML controls.
  • Stopped IE from making clicking sounds when navigating links.
  • Awasu now treats failure to download feed items for offline reading as a warning, not an error.
  • Awasu Server no longer tracks new feed items.
  • Fixed a possible crash when manipulating workpads or reports via the Awasu API.
  • Fixed a possible hang.
  • Removed the GoogleSearch, Syndic8 and Yahoo Groups extensions.
  • Minor changes to the API templates.
  • Miscellaneous optimizations.
  • Miscellaneous UI changes.