impression icon impression version history

Impression version history

Release 3.0 notes:
Issues addressed and new features in Impression 3.0 include:
- Recompiled Impression and its' support binaries for cross-platform support (i686/PPC, or Intel/PowerPC in the newSpeak), though 'hfspax' will always be a PPC-native tool (used when restoring older, non 'imps' based 'pax' archives). I've currently no system on which to test the 'Intel' aspects of the fat binary, though the 'PowerPC' aspects are fully tested and supported (as they've always been). Until a kind soul provides a Intel-based Mac for my development and testing use, Impression's backing for Intel-based Macs will remain untested (and consequently are unsupported for use with Impression).
- Added the ability to schedule Impression for automated archiving operations under Apple's iCal. Options to choose the default scheduling interval are available in Preferences. Any session bookmark can be scheduled, allowing a variety of scheduling opportunities (i.e. - a monthly archiving operation of your photos folder, weekly archiving operations for your working folders, and a daily archiving operation for your sandbox folder).
- Added support for Apple's dual-layer DVD drives (~8GB capacity).
- Added a choice for DVD-RAM (~2.6GB capacity) image size. DVD-RAM burning isn't supported under Impression, though using the 'Save Image' button from Impression's burn settings panel will allow the appropriately-sized image to be saved to a mounted, blank DVD-RAM disk.
- Added the ability to set the number of disc copies from Preferences; this works well in conjunction with the auto-burn feature when multi-copy archive sets are being built.
- Added a more robust, two-pass treatment for the disk image unmount routines. This has a pleasant side-effect of speeding the unmount routines many times over the code previously used.
- Added code that works around Norton AntiVirus' interference with disk image unmount operations. As a result, Impression is now compatible with Norton AntiVirus and can cease scanning routines that cause interference with Impression's need to automatically unmount disk images.
- Added the ability for Impression to disable Spotlight's indexing of Impression's archive sparse images while the images are being built; this effects a considerable speed gain under certain circumstances.
- Added the ability to clear the end-of-operation status messages.
- Added a more complete set of feedback and bug report forms, accessible through Impression's 'Help' menu.
- Added the ability to double-click on one of Impression's 'session' files (located in ~/Library/Application Support/Impression/sessions/") and have Impression auto-load and run an archiving operation based on the particular session clicked. These in effect are 'run documents' and can be used for a variety of customized automation and scheduling operations.
- Added more appropriate error messaging during launch time if necessary components from the BSD subsystem aren't found.
- Improved the performance of several routines that address: the instantiation of session bookmarks, addition/removal of items to/from the backup list, and performance of actions against the backup list especially when dealing with ~1K count of items.
- Removed the 'Schedule' tab, as Impression's scheduler components have been integrated within Impression's Bookmark system and do not require a separate UI pane for configuration.
- Removed a workaround under OS X 10.4.3 (and later versions of OS X 10.4.x) that was necessary to fix a burn speed setting bug present in Apple's 'hdiutil' utility when running under OS X 10.4.0, 10.4.1 and 10.4.2.
- Changed Impression's archiving feedback routines to display the archived item count (updated every 4 seconds) instead of the names of items currently being processed. This effected a noticeable speed gain, though it does come at the cost of providing more direct feedback.
- Changed Impression's authentication systems to use Apple's Authentication Services under 10.4.x.
- Changed Impression's archiving file info parsing routines to offer a more granular error state and help avoid 'folder processing error' conditions.
- Changed Impression's disk image padding values to allow for a bit of extra headroom (up from 6% to 10%) when creating disk image based archives.
- Changed Impression's references of 'Backup' to 'Archive', as the latter are more appropriate for use with an asset archiving tool.
- Fixed an issue where the restore engine was having trouble initializing restore operations based on older, 'pax' based archives.
- Fixed an issue where burn operations were incorrectly finishing with errors under Mac OS X 10.4.3.
- Fixed an issue where the grep processor was incorrectly excluding items named using certain high-ASCII characters.
- Fixed an issue where the grep processor was incorrectly excluding items with CR/LF characters in their pathnames.
- Fixed an issue in which disk images under OS X 10.4.x were occasionally having trouble being unmounted.
- Fixed an issue where the Bookmark list would occasionally become inaccessible until relaunched if a bookmark was deleted or renamed during heavy CPU or filesystem activity.
- Fixed an issue in which the preflight check could be dismissed under several circumstances and not enable the main window's close button.
- Various code maintenance and consolidations.

Release 2.81 notes:
Issues addressed and new features in Impression 2.81 include:
- Added a disc burn progress indicator.
- Added the ability to authenticate using an arbitrary user account under OS X 10.4 or later, and cleaned up the authentication and setuid routines.
- Added better error messaging for when disk image conversion routines fail; this provides correct feedback when encountering a hdiutil image resize bug present in OS X 10.3.9.
- Added a preference validator to better deal with certain preferences if their values become invalid/corrupt.
- Added a contextual identifier to the subject line of support request eMails to better aid the developer in responding to inquires.
- Fixed a crashing bug that occurred when the MD5 routines tried to process a file over 2GB in size.
- Fixed a bug in Impression's sizing routines that would incorrectly split the second half of a large file into a segment too large to save to the chosen disc size.
- Various code maintenance and consolidations.

Release 2.8 notes:
Issues addressed and new features in Impression 2.8 include:
- Tested and certified Impression to be fully functional under OS X 10.4, a.k.a. 'Tiger'. Notably, the parts of Impression that required the most substantial revisions for OS X 10.4 include: the use of Apple's HFS-compatibe 'pax' for archiving (see below), memory treatments for AppleScript Studio-based code, treatments to various command-line programs utilized by Impression and various UI feedback and notification treatments throughout the application. There are still significant bugs that persist in Tiger, and I'm working with Apple to see these resolved - though none of them are significant enough to detract from Impression's commitment to data security and the automation of archiving operations.
- 'Hfspax' is no longer fully compatible with the significant HFS modifications introduced under OS X 10.4 and its use has been replaced in favor of Apple-authored, HFS-compatible 'pax'. Under OS X 10.3.x, 'hfspax' is still Impression's tool of choice, and when running under OS X 10.4 one can restore from both 'pax' and 'hfspax' archives automatically. Restoration of archives created under OS X 10.4 is restricted to systems running 10.4 or later. Contextual command-line restore information is provided in the form of 'Read Me' files included with archives authored using both tools.
- Added support for the full recording of 'Spotlight' meta-data under OS X 10.4. All Spotlight metadata contained in resource- and data-forks is fully preserved in both 'File copy' and 'Restorable' archiving modes (i.e. - data such as Spotlight Comments, MP3/AAC metadata, EXIF metadata, Item Last Used dates, etc). Data-fork based metadata is automatically verified using MD5 checksums.
- Added support for burning multiple copies of each archive disc, accessible from Impression's Disc Burn dialog. Up to 9 duplicate discs can be burned for each disc of an archive set, with progress fully tracked and freedback provided so that one doesn't lose their place in remembering which disc they are currently producing.
- Added support for burning cross-platform, hybrid HFS+/ISO9660/Joliet discs. Under OS X 10.4 Impression can manufacture cross-platform/hybrid DVDs as well as CDs, though significant bugs remain in OS X 10.3's ability to process discs over 4294967296 (2^32) bytes (i.e. - 4.7GB DVDs). As such, support is limited to manufacturing cross-platform/hybrid CDs under OS X 10.3.x.
- Recompiled Impression with GCC 4.0 to take advantage of the new compiler and offer improved resource use under all systems.
- Added a 'File' menu to offer quick access to common functions, such as: choosing an archive for restoration, adding items to the backup list and rejoining segmented files. Additionally, the 'Window' menu now includes an item that can toggle the log drawer.
- Fixed a few minor UI bugs.
- Various code consolidations and cleanup.

Release 2.72 notes:
Issues addressed and new features in Impression 2.72 include:
- Added support for the 'QuickPrefs' function when performing backup routines to enable sets of frequently-used backup settings.
- Added a MD5 checksum verification function when running in 'file copy' mode to provide after-write verification for individual files as they are added to the archive disc/disk.
- Added support for new restrictions to Impression's use in demo mode (2 discs burned per session of 1GB of data saved to a disk image).
- Added support for a time-limited full demo license that fully unlocks Impression (just as if it were registered) for a definable, expiring date-based limit.
- Added support for site- and machine-based licenses for larger institutional and business use.
- Fixed a bug in the Restore engine in which large catalogs were suffering an incremental slowdown as files were read into memory.
- Fixed a bug in which the '-pe' flag to preserve all of a file's attributes was not being set properly when running hfspax during restore operations.
- Fixed a bug in which multiple panels informing the operator of a new version of Impression could be spawned under one specific circumstance.
- Fixed a bug in which the session list wasn't being read from the sessions folder if all items were deleted from the folder, and then immediately added back in.
- Fixed a bug in which the disk image format popup button could return no value.

Release 2.71 notes:
Issues addressed and new features in Impression 2.71 include:
- Fixed a bug that occurred when Impression was querying older, 'pax' based archives for their file catalogs.
- Fixed a bug that occurred when Impression was attempting to present a warning message regarding issues encountered with a location for a chosen disk image (a.k.a. the 'utilitiesScript' error).
- Fixed a bug that could result in an error being presented if the restore archive name or restore path was highlighted with the mouse after being chosen, before a given restore session was run.

Release 2.7 notes:
Issues addressed and new features in Impression 2.7 include:
- Completely reworked Impression's UI to offer greater cleanliness, larger core UI object size, better UI object grouping and modernization to follow with Apple's WIP 'Aluminum' look-and-feel standard.
- Impression is now fully ready for localization to non-English languages. If you're interested in helping with translation efforts, please contact me and I'll provide you a package of information containing the text strings that need translation. While I cannot pay for your efforts, you'll receive a complimentary full license for Impression and your name will be immortalized in Impression's 'About' box.
- Added an 'Auto-burn' feature that will help folks run unattended backups by providing valid media at the onset of a backup operation.
- Added an 'Eject Disc' button to the Disc Burn panel.
- Added the ability to disable file segmentation when running in 'file copy' mode, at the request of the photography community. This will enable the creation of plain-file, Finder-readable multi-DVD sets from a large pool of assets without the need of any special software to read and use the discs.
- Added the ability to disable the writing of a file/checksum catalog when running in 'file copy' mode, which will allow for cleaner presentation of an archive if that information is not needed.
- Reworked the UI for the session bookmark system to provide better ease-of-use and more straightforward bookmark selection.
- Added a bookmark editor that will allow renaming and deleting bookmarks from within Impression's interface.
- Bookmarks are now auto-named and added to the bookmark list at the conclusion of a backup operation.
- Added the ability to quit Impression using the 'window close' button in Impression's main interface. I've fought the decision to do this for some time (it is recommended in Apple's OS X Human Interface Guidelines, and more applications are adopting this tactic). Personally, I don't favor this method of application quitting - though I'm going to relent and conform to Apple's standard.
- Reworked the UI in the Backup Options sheet to offer better visual warning of scratch space needs and cleaner presentation/grouping of elements.
- All appropriate text strings now offer truncation using ellipses ('...') for long backup paths, bookmark names, restore items, progress indicators, etc.
- Impression now uses items' Finder-displayed icons in the backup list.
- Reworked the choices available when saving disk images to match Apple's standard presented in their 'Disk Utility' application.
- Internalized the MD5 calculations with a ported Objective-C method for greater speed and security. Computing MD5 calculations for files now occurs 10x+ faster than in previous versions of Impression.
- MD5 checksums are now handled automatically and are always generated for an archive catalog. Restore operations automatically detect and utilize MD5 checksums, and all backup catalogs automatically include MD5 checksums for file verification upon restoration.
- The root execution system ('setuid' operations that enable root/superuser access) have had their security enhanced significantly, requiring complex authentication information to be passed between Impression and the setuid module. This should eliminate any opportunity for another application to 'piggyback' its operations on Impression's setuid system.
- Sped up the backup item addition routines and removed the limitation on how many items can be added at one time.
- Cleaned up the incremental option selection system to provide better UI control.
- Refactored the entire restore engine. Sped the main restore routines by up to 50%, and sped up many subroutines and dealings with less than complete restore operations.
- Refactored code in the core backup engine to accommodate a 10-15% speed boost over (an already fast) Impression 2.61.
- Refactored code in the sizing routines to fix two reported bugs/incidents of incorrect archive sizing during optical disc backups.
- Fixed several odd bugs surrounding hfspax operations on files with LF/CR characters in their names/file paths. This should eternally put to rest any further backup/restore issues as a result of this very odd Mac OS file/path name convention.
- Fixed a few odd bugs concerning the reading of the contents of a modified 'sessions' folder when bringing Impression to the front after having it as a background window.
- Removed support for OS X 10.2.x, and began work on compatibility with preview releases of OS X 10.4. This removal of support for OS X 10.2 comes as a direct result of a loss of test equipment available for me to boot and test against 10.2, as my development/test system only will boot to 10.3.x and later. Impression 2.61 will continue to remain available for folks requiring the ability to run under 10.2.x.
- Various code cleanup and consolidations, mostly done to tidy up the code for the developer's and future development's purposes.

Release 2.61 notes:
Issues addressed and new features in Impression 2.61 include:
- All reported, reproducible bugs have been fixed for this release.
- Fixed a bug in the burn engine that was causing infrequent crashes upon the completion of a burn operation.
- Fixed a bug in the burn engine that was causing an error in reporting drives when only non-supported optical burning drives were installed.
- Added an alert that prompts the operator to disable Norton AV protection (if it's found running) before continuing a backup operation. Norton's Auto-Protect feature contains a bug that interferes with the System's (and Impression's) ability to manipulate disk images, which will cause Impression's backup operations to fail.
- Fixed a bug in the backup engine's large file segmentation routine that would infrequently skip single files that didn't meet the criteria for segmentation.
- Fixed a bug in the backup routines that improperly treated filenames that contain Mac-style (CR) as opposed to Unix-style (LF) line endings in the middle of their name.
- Improved the performance (speed) of the restore system's catalog parsing module.
- Fixed a bug in the restore engine's catalog parsing routines that eliminates 'out of memory' errors seen when catalogs grew past 50K items.
- Fixed a bug in the restore engine's catalog parsers that could cause an error if they came across a filename that contained Mac-style (CR) and Unix-syle (LF) line endings in the middle of their name.
- Fixed a bug concerning various internal code objects that were being deallocated improperly and thus causing various memory leaks.
- Fixed a bug in which the restore window size could be made a pixel smaller in height than the minimum window size.
- Reworked the 'Default Settings' button to work more closely with Apple's HIG standards.

Release 2.6 notes:
Issues addressed and new features in Impression 2.6 include:
- Impression now uses a new '.imps' restorable archive format. Backup and restore have both been enhanced to accommodate this new format, and both have been noticeably sped up as a result. The restore engine now seamlessly handles both older '.pax' based, Impression-generated archives as well as those in the newer '.imps' format archives. Full instructions are still included as to how to work with these archives from the command-line, and while they offer a new package-based format they are still open in their architecture and can be restored manually without using Impression's interface. This new format allows Impression to finally restore hfspax-based archived files containing regex characters in their names (i.e. - bracket characters '[' and ']').
- Added Unicode support for session, log and archive catalog files. This enables session lists to load file lists with Unicode-based paths (i.e. - Asian, etc.), and also enables the restoration of files with complicated Unicode-based paths as well. Impression will record all new log entries in a Unicode (UTF-16) format file at this location: '~/Library/Application Support/Impression/log.txt' (this new log path leaves your older, non-Unicode log files intact). Older, non-Unicode session lists and archive catalogs can still be seamlessly read by Impression, though all new text-based documents will be written in Unicode (UTF-16) format.
- Added initial UI support for forthcoming scheduling features, scheduled for completion with Impression 3.0. Thanks for your feedback, patience and patronage - all three have contributed to this feature finally making its way into Impression's life. If you haven't registered yet and regularly use Impression - please register your copy to encourage the addition of this and other features. Thanks!
- Refactored the large file segmentation module for use with the new '.imps' archive format, which offered the side benefit of reducing the amount of scratch space necessary (1 x largest file size + disc image size, as opposed to 2 x largest file size + disc image size) and also allows for better scratch handling on non HFS filesystems with 32-character filename limits.
- The log drawer is now auto-shown if errors are encountered during a backup session.
- Reworded several alert panel statements and transcript entries to offer brevity and further clarity for various error and alert notifications.
- Added support for the Preferences window to be closed when the 'Esc' key is pressed, and also made the window key and ordered front when the Preferences window is selected for display and is already shown.
- Added some small enhancements to Impression's main window title bar to offer information as to which tab is displayed.
- Reworked many of the custom UI elements to offer a cleaner, crisper presentation.
- Moved items from the 'Internet' menu to the 'Help' menu to consolidate items available from the main menu bar.
- Enhanced the text reporting routines to correctly discriminate between single and plural states when reporting file counts (i.e. - '1 file' versus '42 files').
- Fixed a crash that was occurring when the root backup list was initially processed under certain conditions.
- Fixed a bug in which the burn speed list couldn't be set of a drive had a top speed that wasn't a standard speed multiple (i.e. - 15x instead of 16x).
- Fixed a bug in which a few file types weren't being processed if added directly to the backup list.
- Fixed a bug in which certain long-path names were causing troubles during file segmentation routines on AFP- and SMB-mounted scratch volumes.
- Fixed a bug in which the progress bar wasn't displayed correctly if the initial item processed for a disk was quite large.
- Fixed a bug in which certain interface buttons could get into a half-clicked state if operated when the application was in the background and the buttons were pressed using OS X's 'click-through' mode.
- Fixed a UI bug that reported a count of zero files backed up in the transcript if only a '.part_b' segment file was added to a final disc in the backup set.
- Fixed a UI bug in which the 'Cleaning up...' panel was occasionally being overwritten by other archiving functions.
- Fixed a UI bug that occasionally caused grayed-out selections to be highlighted in the burn speed setting popup button.

Release 2.51 notes:
Issues addressed and new features in Impression 2.51 include:
- Added the ability for Impression to preserve basic Finder comments, as suggested by one of the members of the community. Thanks for the suggestion!
- Fixed a bug under 10.2.x in which some folders weren't being written with appropriate permissions when using 'file copy' mode. This was producing some errors indicating that "The...item couldn't be processed due to an error encountered when writing it to the archive" for folks running under 10.2.x when the backup session wasn't run with 'root' authority.
- Fixed a bug in which package folders were incorrectly being added to a directory in the /Volumes folder instead of to the archive path when running in 'file copy' mode.
- Most likely fixed a reported crash that couldn't be reproduced on test systems internally. The fix revolves around treating an issue in using the isFilePackageAtPath: method with certain files processed during backup operations. It's likely fixed now; if you see any other unexplained archiving crashes please report them using Impression's bug reporter.

Release 2.5 notes:
Issues addressed and new features in Impression 2.5 include:
- Improved Impression's speed considerably; this will be noticeable in all backup operations, though especially those where 'file copy' mode is used and many, many small files are added to a backup set. There still remains one speed bug relating to adding many small files to 'hfspax' archives that are over several hundred megabytes in size; I'm working to fix this for a future release.
- Many of Impression's contextually-sensitive options have been moved from the Preferences panel to be presented inline during any given session. This should make for easier opportunities to modify settings when needed.
- Added the ability to choose files for selective restore operations from any given archive. Eliminated the 'file list' button, as the list is now interactive, and included in the Restore Options sheet.
- Reworked the backup Preflight sheet into an interactive, Backup Options sheet. Choices can now be made for operations at runtime, and advanced options are separated from standard options. The estimation routines are now dynamic, allowing the operator to choose media and see the results of those choices comparatively.
- The backup file exclusion can now be disabled, resulting in noticeable speed gains from not having to process the grep-based regex pattern.
- Using the main window's 'Disc Eraser' function now ejects the disc after each erase operation, allowing for easier bulk erase procedures. The 'Disc erase' function in the burn panel does not eject discs after the erase procedure is completed, as they will likely be used in the burn operation.
- Enhanced a number of messages written to the session log, notably information regarding settings used in any given backup session.
- Enhanced and reworded a number of alert and information dialogs to offer better feedback when certain errors are encountered, and to more accurately reflect the nature of the event.
- Added /dev, /tmp, /etc, /var, ./vol, /Volumes and /Network to the default system exclusion pattern, as these items are symlinks or point to non-static device data, which is outside of the scope for Impression's purpose - to back up personal data.
- Greatly improved the speed of the routines that gather the archive file list from a catalog for a restore operation. In most cases, the speedup should be 50-100x faster than in previous versions of Impression.
- Enhanced the speed of the file path addition/deletion routines for the Backup and Restore tabs. The backup list now offers the ability to select multiple, discontinuous items and delete them from the list.
- Improved the accuracy of the routines that estimate necessary scratch space for any given routine.
- The Backup Options (formerly Preflight) sheet now dynamically links its free space indicator to the 'scratch' path chosen in Preferences.
- If a chosen, custom scratch location isn't available when Impression is launched, it now reverts to the default setting.
- Completely reworked most of Impression's interface icons to offer a more cohesive and attractive set of images. Enjoy!
- The 'Save Disk Image' dialog now remembers the last location used to save images, and as well it offers inline settings to choose disk image format and encryption.
- Fixed a bug in which certain builds of OS X 10.2.8 were not receiving the 'burn completed' notification correctly.
- Fixed a bug in which non-supported drives were being listed in the Burn Options dialog.
- Fixed a bug in which Impression was checking the directory one-up in the hierarchy when checking for read/write availability.
- Fixed a bug in which the 'bookmark' flag was unset if the delete key was pressed if no item was selected from the backup list and none was deleted.

Release 2.1 notes:
Issues addressed and new features in Impression 2.1 include:
- Impression now has a fully rewritten burn engine that offers better responsiveness/threading, better error condition handling and improved feedback. Also, the burn operation is more reliable if the system runs an intensive screen saver during the burn.
- Disk images can be saved from the burn dialog for the convenience of burning at a later time or with different disc burning software (i.e. - Toast, Disc Utility, etc.).
- Under OS X 10.3.x, the burn setup panel now offers a GUI-selectable drive chooser. Also, the prompt/feedback text is now fully compliant with other Apple DiscRecording framework-based applications.
- The maximum burn speed is now adjusted on a per-disc basis under OS X 10.3.x.
- There are now more speed choices available under the burn speed choice popup button in the burn setup panel.
- Noticeably sped up and increased the international language (high-ASCII and double-byte) abilities of Impression's path-parsing engine. This resulted in 5-15% speed gains application wide and the elimination of nearly all path-parsing errors in OS X 10.3.x.
- The Preference panel UI has been cleaned up and visually reworked.
- Added a check mark next to the currently selected, in-use bookmark.
- The preflight now offers better error condition reporting if estimation errors are encountered.
- Cleaned up the wording on several dialogs to better reflect Impression 2.x enhancements.
- Fixed a bug in the large file handler that was causing the second part of a segmented archive to not be available if it was the only file written to the last disc of a backup set.
- Fixed an odd spelling error in a transcript entry.
- Fixed a bug in which a deleted bookmark that was in previous use would cause a notification message on every launch that it was used, not just the first.
- Fixed a bug in which Impression would hang when cleaning up a part of a temporary large file segment when the backup process was run with superuser/root authority.
- Fixed a bug in which the preflight would cancel after certain ordered choices had been made using the authentication panel immediately beforehand.
- Fixed a bug in which there was a corrupt character being written to archive catalogs if MD% checksums weren't being recorded.
- Fixed a bug in the free disk image space calculation routines. The estimators have now been providing 100% accuracy during testing and eliminate a few odd, reported 'out of space' errors.
- Enhanced the item size measurement routines to better estimate files when the backup process is run with superuser/root authority.
- Modified some queries against the startup disk on launch for greater reliability.

Release 2.0 notes:
Issues addressed and new features in Impression 2.0 include:
- Impression now has a reworked UI, designed to incorporate all the UI feedback received to date without abandoning the straightforward, beautiful interface that has made Impression successful thus far. The windows are now resizable on a per-tab basis, features are addressable through less effort, important elements are larger and use more easily readable fonts, etc. Enjoy!
- Due to popular request, individual files and packages can now be added to Impression's backup list, offering a granular addition to Impression's multi-directory backup capabilities.
- Also by popular request, Impression's scratch space is now operator selectable. Impression uses this directory to read, write and delete all temporary disk image and large file segments as the archive is being made.
- Impression is now compatible with OS X 10.3.x's 'FileVault' feature, and likely is also compatible with most configurations where a user's 'home' directory is mounted via a non-traditional method (i.e. - the 'Home on iPod' feature, NFS mounted user directory, etc).
- Began the reworking of the 'previous session selection' interface into a 'session bookmark' system. This work is not yet at its final resting point, but the UI and basic code have been laid for a more comprehensive bookmarking feature opportunity.
- Changed the default exclusion system to exclude the running copy of Impression based on its full path instead of by just the application name itself. This will mostly help the developer to back up Impression's source and development folders.
- Reduced CPU usage when Impression is idle, which should see a full reduction to 0% in CPU time during idle moments (i.e. - no session is running).
- Updated the Burn Panel UI to prepare for features that will likely be added to the burn engine in a forthcoming release.
- Built OS-specific instructional text for disc insertion instructions under 10.2.x and 10.3.x.
- Removed tool tips from the main window, as OS X 10.3.x is proving too aggressive in displaying tooltips when a progress sheet is in place.
- Improved the backup engine's logging routines to better log and alert the operator to problems encountered when parsing file and folder path names when using UNIX functions.
- Improved estimation routines, the logging of files that can't be sized correctly, and optimized all sizing and estimation routines to provide noticeable speed gains.
- Further clarified the default, hard-coded system exclusion pattern to specifically exclude the items /dev, /automount, /mach, /mach.sym and /mach_kernel instead of excluding the more general pattern terms "dev", "automount", "mach", etc. The default operator-selectable exclusion list also received a similar clairification.
- Improved the high-ASCII and double-byte character parsing routines to better handle some European and Asian characters.
- Slightly modified the UI in the Preflight panel to better display the default exclusion pattern.
- Fixed a spelling error in the AES-128 tooltip for the Preferences panel.
- Fixed a bug where launching Impression by double-clicking a '.part_a' file and then canceling the rejion operation would result in a crash.
- Fixed a bug under which the Preflight would be canceled if certain choices were made in dismissing the Authentication panel.
- Fixed an bug on some older G3 systems in which a progress sheet didn't dismiss correctly.
- Fixed a bug in which certain high-byte characters had path parsing troubles when immediately followed by a UNIX 'escapable' character (i.e. - A Kanji character proceeded by a parenthesis character).
- Fixed a bug in which the progress bar would move up and down while excluding files after one file had been archived, and before the second file had been written.
- Fixed a bug in which the large file handler was incorrectly estimating the space required for the second half of a segmented file, resulting in a failed backup when that second part was written to disk.
- Fixed a bug in which a .pax archive couldn't be dropped on the appropriate text box in the Restore tab under certain conditions.
- Fixed a bug in which Impression wasn't properly appending an extra incremental number to the end of a disk image's save path when a prior backup had been run that day, and Impression had been quit and relaunched after the previous session.
- Fixed a bug under OS X 10.3.x in which in-application date strings weren't correctly reflecting the localized short date setting chosen for the logged-in user account.
- Fixed a bug that caused application seizure as an encrypted disk image was being written if the 'SecurityAgent' process wasn't already active.
- Fixed a bug in which the disk image couldn't be saved to the root path ("/") of the drive on Impression's first backup run after being launched.
- Fixed an inaccuracy in the log's reported restore file count when dealing with the restoration of packages and applications.
- Fixed a bug in which the backup list in the main window wouldn't scroll smoothly under certain conditions.

Release 1.81 notes:
Issues addressed and new features in Impression 1.81 include:
- Fixed a bug when running under OS X 10.3, a.k.a. "Panther", in which the application would crash when one of Impression's registered file types was double-clicked or drag-and-dropped over Impression's icon. This fix also takes care of the crash that occurred under OS X 10.3 after segmented files had been rejoined.

Release 1.8 notes:
Issues addressed and new features in Impression 1.8 include:
- Tested and certified Impression to be fully functional under OS X 10.3, a.k.a. "Panther". Notably, the parts of Impression that required the most substantial revisions for OS X 10.3 include: the disk image mount/unmount subsystems, the disc burn engine, the disc erase engine and a few odd UI elements. The only facet of OS X 10.3 that Impression isn't currently compatible with is FileVault, and under a logged-in FileVault account Impression can't launch (due to some odd issues with the way FileVault constructs the path to the operator's home directory).
- Under OS X 10.3, the 'Erase Disc' button is now active during backups for those times when you need to erase a CD-RW on demand just as it's needed for a backup. Sadly, this feature will not be available for OS X 10.2, a.k.a. "Jaguar" operators.
- Under OS X 10.3, the long-standing bug has been fixed with Impression's restore engine not recognizing CD- and DVD-discs that it has just created. Previously, one had to simply quit and relaunch Impression to restore files from freshly-created optical media. Now all will work as expected, though only under OS X 10.3. Sadly, this bug fix will not be available for OS X 10.2, a.k.a. "Jaguar" operators.
- Minor UI changes to the backup tab of the main window to help associate Impression's need to base incremental/differential backup runs on previous sessions.
- Changed the default exclusion pattern to better exclude 'cache' files automatically.

Release 1.71 notes:
Issues addressed and new features in Impression 1.71 include:
- Recompiled Impression with GCC 3.3 to take full advantage of the Power Macintosh G5 architecture and to offer performance benefits for all systems.
- Fixed a bug in which the disk image was spec'd too small for backups to disk image that had less than 4MB of files.

Release 1.7 notes:
Issues addressed and new features in Impression 1.7 include:
- Added initial (basic) support allowing a backup to run over a network. There is currently one supported solution, that being to run the backup locally on the machine that contains the files to be backed up, and to choose the target for the resulting disk image to an already-mounted network shared volume. Since the disk image is first generated locally on the startup disk of the machine running the backup and transferred to the network volume after the main operations have completed, performance over 100base-T have yielded positive results. Performing CD- and DVD-based backups over a network is a feature that Impression does not yet offer, as of version 1.7.
- Added initial (basic) support for multiple disc burners. Impression will open the trays (though not if the drive is a slot-load model) of all supported CD and DVD burners at the time it requests a disc. Simply insert a disc and close the tray for the drive you'd like to use for the burn operation, and Impression should use that drive. Our test pool of drives for reviewing this feature has been small, so if you have either a success or failure story to report please send us an eMail with your drive manufacturer types and a report as to your success or failure, and we'll be able to use this information to make this feature more complete and robust.
- Added an automatic internet-based version checker. The application checks for a XML file on Impression's home page and uses the information gathered from that file to determine if a newer version of the application and offers appropriate link buttons. The feature can be run manually, and the automatic 'check at launch' feature can be disabled.
- Fixed a most significant bug by changing the file name list processors to skip and log items with certain unreadable high-byte (some Asian and Czech, occasional other languages) characters in their names. This should eliminate almost every instance of Impression having to terminate a backup session due to the inability to process a filename.
- Fixed a rare bug in which certain incremental/differential backups run in 'file copy' mode were removing archived files just as the backup session concluded.
- Fixed a bug in which certain folders that contained inactivated custom icon files were having their custom icon bit set in their archived counterpart when using 'file copy' mode.
- Fixed a bug in which some menu items weren't reactivated after a menu had been clicked while a modal dialog box was displayed.
- Corrected the feedback messages displayed if an operator canceled the backup during the dialog asking for a AES-128 encryption password.
- Very tiny backups now display '1MB' instead of '0MB' in the preflight panel if backing up to disk image.
- Set the disk image default type to read-only.
- Unregistered operators cannot change the disk image/disc titles. This is the best arrangement we've been able to find for offering a free, fully-enabled application while still desiring to offer an incentive to register the application.
- Reworked the burn routine's temporary file locations to better handle multi-login systems. If you've been having trouble burning discs when logged in under different accounts other than the primary one on your system, this solves that issue.
- Tightened up security on all file cleanup and deletion routines.

Release 1.67 notes:
Issues addressed and new features in Impression 1.67 include:
- Added the option to encrypt disk images with the AES-128 encryption standard. Passwords used for images have the option of being stored in the logged-in user's Keychain.
- Localized the short date generation code. Display dates now conform fully to the operator's chosen international format, with the following caveats: the century is always listed in full (i.e. - 2003 and not 03), and if the operator's chosen date separators are forward-slashes ("/") or colons (":") they will be replace with periods (".") for filesystem compatibility. Also, under some circumstances the short date default is not present for Impression to read, which might result in an incorrect display of dates in accordance with your chosen settings. Please just open the 'International' pane of 'System Preferences' and reset your chosen date format, and all will work correctly.
- Fixed a bug in which the backup process unexpectedly terminated at the beginning of the session if archiving the root ("/") filesystem in 'file copy' mode.
- Fixed a bug in which the session list would cause a small error while it was being rebuilt if all of the session files had been deleted.
- Fixed a bug where a previously created disk image wasn't being properly deleted when the operator chose to overwrite said disk image with the contents of a new archive.
- Changed the free disk space calculation routines to be more tolerant of some third-party drives and drives that the Finder can't accurately measure the free disk space.
- The scratch space necessary is now calculated using a method more tolerant when using a UNIX static link to fool Impression into using a secondary disk for scratch space.
- There's one new and several reworded dialogs that appear during the preflight process if disks are found to be low on space, or if the root ("/") system is chosen as a backup target.
- The initial folder checking routines are now tolerant of a UNIX static link being substituted for the 'tmp' directory, though Impression doesn't check to make sure an alias is valid if its found (so watch out and manage your aliases well if you're using this unsupported hack!)
- The 'Send Support Request via eMail...' menu item has been enhanced to send additional information to identify the license holder to ensure quicker response times to support requests.
- Minor changes to the progress panel progress bar timing and display when files are first being written to a archive, and when files are being cleaned up at the end of a session.

Release 1.66 notes:
Impression version 1.67 supersedes version 1.66.

Release 1.65 notes:
Issues addressed and new features in Impression 1.65 include:
- When running an incremental backup when using file copy mode, now only folders containing files are written to the archive.
- Reworked the code for Panther compatibility, though Panther's hdiutil command-line program isn't completed, causing some serious disk image and burning errors at this time. Reverting to the hdiutil utility from Jaguar/10.2 isn't possible, so we'll just have to wait for Apple to finish Panther/10.3.
- The disc erase button from the burn choices dialog is now functional under Panther. Thanks go out to Apple's DiscRecording team for fixing the condition under which this wouldn't work in Jaguar/10.2.
- File copy mode is now enabled by default.
- Consolidated code further in the backup engine.
- Added more explicit alert dialog information for low disk space warnings.
- The drag-and-drop handlers now accept 30 files at a time instead of their previous limit of 10 for the backup location.
- Log drawer resizing has been enabled.
- Disk image file names now mirror the choice made in preferences for archive titles.
- Disk image save paths are now chosen at the time the backup is run, rather than in the preferences window.
- Specific progress messages are now shown when temporary disk images are ejected.
- Archive disk images are now unmounted before the burn selection panel is shown, instead of after.
- Minor changes in wordings for UI elements in the restore panel.
- Fixed a bug in which extra folders being generated during pax archive sessions on the archive disk.
- Fixed a display bug where the disk image options list would be active if an optical disk was chosen as the backup target when the preferences window was first shown.

Release 1.61 notes:
Issues addressed and new features in Impression 1.61 include:
- Fixed a bug in which errors were encountered archiving the first few files in the first folder of a subsequent backup disc (i.e. - discs 2, 3, etc. - though not disc 1) in file copy mode.

Release 1.6 notes:
Issues addressed and new features in Impression 1.6 include:
- Instead of using 'hfspax' for file copy mode (which was really a waste of hfspax's capabilities - forgive me), 'ditto' is now the tool of choice.
- Reviewed and rewrote many of the internal listing routines to effect greater speed gains and also to increase the accuracy of archiving UNIX symbolic link and Finder alias files. This fixes a few rarer bugs that were affecting the newly-added 'file copy' option.
- Reworked some of the archive and disk sizing routines to effect some really nice speed gains. Combined with the use of 'ditto' (above item), the speed gains vary from respectable to tremendous during this backup of a Flash MX installation:

Backup target size: 78.2MB reported by Finder, 2073 files, MD5 checksum on
Test system: PowerBook G4 500MHz, 1GB RAM
30GB HFS+ Journaled 4200RPM drive, 90% full, fragmented

version

method

time to finish

performance

1.14

pax archive

13m 36s

5.75MB/min

1.5

pax archive

12m 25s

6.29MB/min

1.5

file copy

11m 36s

6.77MB/min

1.6

pax archive

11m 29s

6.81MB/min

1.6

file copy

8m 10s

9.58MB/min


Here's a table of relative performance numbers
(higher values are faster):

version

method

relative performance

1.14

pax archive

100

1.5

pax archive

109

1.5

file copy

118

1.6

pax archive

118

1.6

file copy

167

- Reworked the archive size estimation routines to better estimate disk image sizes needed for backup sessions.
- Fixed a bug in which a temporary pax file could grow to multi-gigabyte sizes, filling up the free space on the scratch (startup) drive.
- Fixed a bug where Impression was archiving UNIX dot (".something") files even if the 'archive invisible files' option was unchecked.
- Fixed a rare stack overflow bug that was presented is the application couldn't find all of its necessary BSD resources.
- Fixed a bug in the restore routines that affected some situations where Impression incorrectly reported that an archive file couldn't be found upon drag-and-drop of a valid .pax archive.
- Fixed some odd UI bugs in the progress panel display during restore operations.
- Fixed a bug where .part_a and .part_b archives were incorrectly described to be non-matching if they weren't both located in the same directory.

Release 1.51 notes:
Issues addressed and new features in Impression 1.51 include:
- Fixed a serious bug in which the large file handlers could incorrectly parse the filename of the file to be treated, thus causing more than just that file to be archived.

Release 1.5 notes:
Issues addressed and new features in Impression 1.5 include:
- Added by popular request, Impression now supports direct-to-hard drive backups. The backup module will write a single disk image containing an archive to any locally-mounted volume (i.e. the startup disk, an external FireWire drive, a USB pocket drive, a mounted CompactFlash card/MicroDrive, an iPod, etc.)
- Also due to popular demand, Impression now supports writing Finder-style copies of files to the backup destination as an option to hfspax archiving.
- If the backup destination is a disk image, the operator can select the option to compress, generate a MD5 checksum or set one of several other states/options for the image.
- Increased the speed of the hfspax-based backup engine 10% over Impression 1.14, and by nearly 15% if 'file copy' mode is selected.
- Double-clicking or dragging a .part_a segmented file to Impression's icon will now invoke the file rejoin module and take care of automatically restoring the file with its .part_b counterpart.
- Fixed two bugs in the cancel routines of the MD5 checksum module.
- Fixed a bug in the free disk space calculation routines of the Preflight panel.
- Fixed a bug in the incremental module's assessment engine when considering packages and bundles.
- Fixed a long-standing bug in which a recently opened 'sudo' session (either from Impression or any command-line application) could cause the authentication module to accept an incorrect password.
- Fixed a bug where a forward-slash ("/") in a file name would cause an error in the large file segmentation routines.
- Fixed a bug where if the first item in the archiving process invoked the large file segment routine, the first part of the file wasn't written to the archive correctly.
- Removed return character handlers for file names that were introduced in 1.12 and reported the file naming bug to Apple.
- Reworked the total archive size estimation routines for the preflight panel; they should now be perfectly accurate at estimating the total archive size before the job has started..
- The restore routines have been sped up 5-15x when the option is selected to run them as the 'root' user.
- Began the code migration necessary to localize Impression. The code is now about 60% localizable.
- Reworked the in-application icons in several places. Wax seals are now used more prolifically, and the 'Back Up' button now changes to reflect an image of the media being used to contain the archive.
- Completely reworked the Preferences window UI to accommodate new features and streamline the existing UI.
- Widened the Preflight panel so that disc names would truncate less.
- Updated the code that generates messages under the backup/restore icons in the main window.
- About 70% of the existing code has been reviewed, functions streamlined and features consolidated. As a result many small, niggling timing and notification issues have been resolved.

Release 1.14 notes:
Issues addressed and new features in Impression 1.14 include:
- Fixed a bug where the restore engine had an issue reading double-digit numbers in archive names.

Release 1.12 notes:
Issues addressed and new features in Impression 1.12 include:
- Fixed a bug where the restore engine had trouble reading from file lists containing packages and bundles.
- When burn engine errors are encountered, the specific error messages that the DiscRecording frameworks return to Impression are now logged to aid in troubleshooting certain iMac DVD drives that are having trouble burning multiple discs.
- Fixed a rare error where the engines had trouble dealing with text clipping files with 'return' characters in their file paths. Can you believe that the Finder allows one to create a file with a 'return' character in its path? Wacky.
- The log drawer is now hidden upon initiation of a restore session, and redisplayed on completion for consistency with the backup engine.

Release 1.11 notes:
Issues addressed and new features in Impression 1.11 include:
- The 'run as root' backup routines have been sped up 5-15x and are now nearly equal in run speed to when the backup process is not 'run as root'.
- Optimized the backup engine code to effect a ~15% speed increase.
- Optimized and added additional error-checking in the backup engine's checksum module.
- Fixed a calculation issue when computing package/bundle sizes.
- Reworked the UI for the Preferences window and the Registration panel to reduce window/panel size and better meet Apple's UI spec.
- Reworked the disk use/sizing routines to ensure more accuracy and scalability for future feature additions.
- Disabled the 'Preferences' and 'Registration' menu items while Impression is running.
- The log drawer is now hidden upon initiation of a backup session, and redisplayed on completion.
- Changed the backup button key press routine from 'return' to 'command-b'.
- Many more minor UI and display tweaks.

Release 1.1 notes:
Issues addressed and new features in Impression 1.1 include:
- By popular request, Impression now supports incremental/differential backups, based on any previous run session.
- Impression now references session documents on which to base a backup. Folder lists can be recalled from any previous session, and incremental/differential backup systems can be developed as a result.
- Disc burn preferences (maximum burn speed and disc verification) have been moved to the 'Disc Burn Setup' panel. These preferences are now available on a disc-by-disc basis instead of through a global setting for an entire session.
- If a backup session produces a zero file archive, the operator is no longer prompted to burn a blank disc.
- Various code consolidations and UI tweaks.

Release 1.01 notes:
Issues addressed and new features in Impression 1.01 include:
- Due to popular demand, Impression can now be registered through Kagi as well as PayPal and Postal Mail.
- Added appearance aware (blue/graphite) folder icons to the backup folder/directory list.
- Sped up the drag-and-drop routines for adding folders to the backup list.
- Fixed a bug where a blank exclusion statement would not permit the saving of settings from the Preferences window.
- Fixed a bug where some folks who had used the beta were seeing a pair of duplicate 'Help' menus.
- Fixed a bug where the scroll bar wasn't appearing when large amounts of files were dragged to the backup folder list.
- Fixed a bug where the application would suddenly crash on adding certain large folders to the backup list.
- Added some error routines to keep an operator from initiating a backup process while large amounts of files are processing from a drag-and-drop to the backup folder list.
- Set a 10 file limit for drag-and-drop operations when adding files to the backup folder list.
- Fixed a 'halo' around Impression's icon that appeared when it was positioned against a dark background.
- Impression now additionally checks for the existence of UNIX commands 'xargs' and 'sort' at launch time and terminates if they aren't found.

Release 1.0 notes:
Issues addressed and new features in Impression 1.0 include:
- By popular request, multi-directory backups are now supported.
- Impression now includes a help system, available through the 'Help' menu and displayed in Apple's Help Viewer.
- The 'Send support request via eMail...' menu item has been moved from the 'Help' menu to the 'Internet' menu.
- Files larger than 2x the backup disc size are now properly skipped and logged.
- While the Preflight system is gathering information, a status indicator is now displayed.
- Fixed an issue preventing Impression from restoring files as the 'root' user.
- Fixed an issue in the restore routines where a variable wasn't declared correctly if an error was encountered.
- The exclusions list in the Preferences window is now colored in red.
- Added a 'cleaning up' panel for post-backup routines.
- The Preferences window now remembers its placement between launches; the Registration panel now auto-centers each time on display.
- Reworked the preference variable names and standardized on label treatments. If you were using a beta version of Impression, this will mean that all of your preferences will be factory-reset on the first launch of Impression 1.0.
- The low disc space warning algorithms have been greatly improved; they now correctly and accurately estimate very close to actual disk space necessary (disc size times 2x the largest file size in the backup set).
- Reworked the Preflight UI to more effectively represent multi-directory backup information and offer more tool tip information when needed.
- Impression's personal exclusions are now more effectively handled, including the exclusions for a current sparse disk image being used in a backup. This will prove very handy when backing up one's ~/Library folder.
- The routines that write the log have been reviewed and the code consolidated for more efficiency.
- The restoration file count (both successes and failures) is now recorded in the log.
- The Command-period command indicator in the progress panel is now grayed-out when that action is unavailable (during the initiation and clean-up of a backup session, specifically).
- Various small UI tweaks and timing issues were addressed.

Release 0.9 (beta 3) notes:
Issues addressed and new features in Impression 0.9 (beta 3) include:
- Changed the routines that gather the restore file list; they are now 4-5x faster.
- The restore and list files functions now separately show the building and verifying of the file list while the files are gathered for display or restoration routines.
- Folders, packages, bundles and applications are now more effectively excluded from file restores. For backups with considerable exclusions, this represents a significant speed boost for the application.
- The main backup routines have been through a complete code review and now prove to be about 10% faster, especially when dealing with numerous small files in the backup path.
- Command-period cancels now work much more reliably; Impression switched to using different handlers that pick up the detection of operator cancel triggers much more effectively and precisely.
- Fixed a bug where files with a 'pound' symbol (#) weren't being backed up.
- In the 'Disc Burn Choices' dialog box, the cancel button now works without looping if archiving errors were encountered during the backup process.
- Large file temporary segment deletion now occurs much more reliably upon initiation of a backup or when closing the application.
- Instructions are now included in the readme.txt with each CD/DVD that offer instructions as to how to manually check md5 checksums for files.
- Credits, special thanks and copyright information for hfspax has been added to the 'About Impression' panel.
- Internal code consolidations.

Release 0.81 (beta 2) notes:
Issues addressed and new features in Impression 0.81 (beta 2) include:
- Fixed a bug in which hfspax was not correctly located by the restore engine under certain circumstances.

Release 0.8 (beta 1) notes:
Issues addressed and new features in Impression 0.8 (beta 1) include:
- Impression now includes an encrypted registration engine that allows operators to pay for and register their copy.
- Impression also now displays a sheet at startup to remind operators the application is in beta, to report feedback and to register if they feel so inclined. The panel is not displayed after the application is registered.
- The application now identifies itself with creator code type 'Imps', properly registered with Apple.
- The backup, restore and archive file/directory paths are now checked post-choice/pre-run for validity, in case one were to select an archive and then eject the disk that contains the file. Proper error handling in this situation is now present.
- Slightly reworked the 'burn choices' dialog box to more clearly indicate the choices and requirements the operator faces at that juncture. Visually reworked the dialog to display the enhanced information.
- Removed the system exclusions list items 'vol' and 'Volumes' so that an operator can now choose to back up an externally-mounted or network volume. Please make sure you take speed performance characteristics into account before backing up non-local volumes.
- Worked around a bug in Apple's 'file open' sheets in which one could select a directory that doesn't exist by manually typing an erroneous name into the 'go to' text area.
- All windows now center on first display. The Preferences and Registration hold their positions during an operation session, while Impresssion's main window holds its position information between launches.
- Several internal code optimizations and function consolidations.

Release 0.7 notes:
Issues addressed and new features in Impression 0.7 include:
- Impression now registers itself as a handler of .part_a and .part_b filetypes and registers an icon for each appropriately.
- The backup and restore folder paths are now queried for at launch time and reset to the operator's home directory if not present.
- On the saving of preferences from the Preferences window, the egrep exclusions statement is validated and an error panel is presented if it kicks out a -2 error (invalid grep statement).
- There is now an 'Internet' menu which brings the operator to key pages on Impression's web page.
- The restore engine module that takes an archive restore process ending in a .part_a file and asks the operator for the next disc in the set in order to rejoin the segments. The rejoined file is deposited back to the original location, and the /part_a and .part_b segments are left in place if the operator wants to work with them further.
- The preflight panel now alerts the operator to a low disk space condition, dynamically determined at runtime dependent on factors such as disc size chosen.
- The extra line presented in the archive file list upon processing of an old Mac OS 98.x/9.x 'Icon' file has been resolved. Impression properly archives Mac OS X icons, custom icons pasted into OS X 'get info' dialog and Mac OS 8.x/9.x icons applied through the 'get info' dialog in the Finder. Impression restores Mac OS X icons and custom icons pasted into place using the Mac OS X 'get info' dialog in the Finder.

Release 0.62 (alpha 11) notes:
Issues addressed and new features in Impression 0.62 (alpha 11) include:
- When using the 'preserve file and folder permissions' function of the restore engine, the process is now run as the 'root' user. Without 'root' access, the -pe flag of hfspax behaves unpredictably.
- Disc names in the preflight panel are now trimmed and concatenated if of excessive length.
- Erase success/failure messages are now being send to the message area of the main window on erase completion.
- All of the directory/file path fields on the backup and restore tabs now display the path to the filename in their tooltips, in case they are excessively long and require scrolling to view. This behavior mimics the Finder and other applications UI approaches.
- On dragging the log drawer closed, the button now updates to accurately reflect the drawer's status. The tooltip information of the drawer also updates to reflect the drawer's open/close status.
- Fixed error handling on archive restoration if custom icons were used in the file contents of the archive. Icons are not restored to their original place, but they do not cause the termination of a restore operation now.
- Changed to a non-fixed width font for the log and list files views. We'll see if they work better in terms of readability.

Release 0.61 (alpha 10) notes:
Issues addressed and new features in Impression 0.61 (alpha 10) include:
- Rewrote the disk image creation process to use a 'sparse image' and take advantage of more efficient formatting methods. The new image is only ~11MB at its inception and grows to the full image size as files are put in the archive. This has the benefit of taking less time up front for disk image creation (5-20x faster, dependent on disk size) as well as making the process more space efficient for archiving small directories.
- Reduced CPU usage during burn routines.
- On quit, Impression now deletes all temporary disk images and temporary large file archives from its ~/Application Support/Impression/tmp folder.
- Code optimizations for text handling throughout the code. Testers should see little effect from this change.
- Fixed a bug where the package/bundle/application bundle sizing routines were causing the application to erroneously think that a cancel trigger had been sent to the process.

Release 0.6 (alpha 9) notes:
Issues addressed and new features in Impression 0.6 (alpha 9) include:
- The MD5 checksum module now checks the files post-restoration for integrity if that option is selected from the Preferences window. Files that fail verification after restore will be noted in the log.
- DVD burning is now supported; options have been added for 2.3 and 4.7GB discs. Please test if you have a SuperDrive.
- The 'backup process terminated' dialog panels that display when the operator cancels a backup session now display in floating (application modal) panels instead of sheets.
- There is now a 'preflight' summary panel that offers a bit of contextual feedback informing the operator of the backup session parameters before running a session.
- Added tooltips to the Preferences window.
- Completely reworked the UI in the Preferences window to present options more clearly.
- Built a separate burn progress panel to help the engine more accurately display the panel. Testers should notice no difference in burn panel procedure; this procedure only streamlined behind-the-scenes operations.
- The erase setup panel has been moved from a modal, floating dialog to a sheet attached to the main window to enable consistency with other UI elements.
- The daily increment will now stay intact during the entire day's operations, so .12 represents the twelfth backup operation preformed that day, regardless of whether the disc naming options have changed during that particular day.
- Odd and special (low-byte, !$&\"'*(){[|;<> ?~` \) characters in file names are now accepted by Impression. Even if one has some particularly l33t filenames, Impression will be able to accept them in its backup engine.
- The 'disc title' text box in the Preferences window now strips colons and forward slashes from operator-input filenames, as they are characters that really shouldn't be used for compatibility with the MacOS and Unix filesystems.
- Added 1 second to the delay routines while waiting for the disc burn engine to ask for a disc.
- Impression now allows disc names with special and odd characters (see list from several items previous) as long as they don't contain forward slashes or colons (see previous note for explanation of this purposeful omission).
- The disc sizes have been updated and made final. 650MB CDs will have 610MB of data written to them (maximum), 700MB CDs will have 660MB written to them, 2.3GB DVDs will have 2135MB written to them and 4.7GB DVDs will have 4370MB written to them (all values maximum potential).
- Forward slashes added to file names in the Finder are now handled correctly by Impression (in UNIX paths, the forward slashed are converted to colons (:), which is an odd solution but one that Mac OS X seems to be perfectly comfortable in doing).
- The restore engine now correctly works with all kinds of odd characters, as well as spaces in the disc names/paths from which/to which it is restoring.

Release 0.55 (alpha 8) notes:
Issues addressed and new features in Impression 0.55 (alpha 8) include:
- A new UI feature was added to bring the action buttons of the main window together into a sort of 'tray'.
- There's a new dialog box that offers the operator a moment of consideration (and eventually will allow them to erase discs during backups) before launching into the burn process during a backup operation. Let me know what you think about it; my thoughts were that at burn time, one might need to pause, find a disc, consider canceling the backup if they've run out of discs, and erase rewritable media (feature still to be implemented).
- Set the first-time-run preferences to not 'run as root' by default.
- Added a cancel trigger to the MD5 routines, though it still needs more work.
- After testing, all of the 'run as root' functions have been moved over to a new code method that is about 50-100% faster. There's still a large disparity for small file handling between the 'run as root' and 'normal user' runtime speeds.
- Added a unique signifier to the disk title (.1, .2, .3, etc.) that appears either directly after the operator-selectable name or the date, whichever is appropriate. This only appears during the course of a calendar day as more backups are made, so there will be little chance of running multiple backup sessions and ending up with discs of the same name.
- The log now indicates if the backup was 'run as root'.
- Basic, basic, basic error-checking in the grep statement. It checks to see if the statement begins or ends with a pipe "|" symbol, which would cause the backup to archive no files. Operator warnings are issued in the result of a statement non-verification.
- The total archive file count is now displayed in the file list window, linked from the 'restore' tab.
- Verified that the correct messages are being returned to the main window's update/message box, there will still be one more round of clean up and rewording before the 1.0 release.
- Eliminated all in-progress messages that displayed in the main window's update/message box; results are now only displayed at the end of any given backup session.
- The files for the .part_b of a large file are now rejoined before the .part_a files are written to CD, simply for process cleanliness.
- Various UI timing changes, progress panel timing issues fixed, and some closing sequence commands were cleaned up.

Release 0.5 (alpha 7) notes:
Issues addressed and new features in Impression 0.5 (alpha 7) include:
- The 'Restore' tab is now functional, as are 80% of the restore engine features. Segmented ('large') files aren't yet automatically rejoined by the application, though other restore features are fully up and running.
- The 'List Files' function is now enabled and presents a list of files in a NSTableView.
- The burn engine received a code optimization; it's now a good bit faster while archiving files and the 'run as root' feature is now noticeably faster (though still 2-10x slower than running without 'root' access).
- Fixed a bug with the correct icon and status message not appearing correctly during the second half of a large file segmentation.
- Fixed the drawer size at 200 pixels high.
- Corrected the archive file list written to CD to reflect the correct path for the file segments.
- Added appropriate log messages for the restoration, erasing and launch processes.
- Added summary file counts in the log for items put within any individual archive.
- Made new icons for file listing and restoration and tied the restoration process to the progress panel. All messages and progress bars during file listing and restoration should be fully functional.
- Built a verification feature to check for an archive file list before restoring a .pax archive (this guarantees that Impression will have written the archive, and that restoration results will work as expected.
- Built an alert/double-confirmation system if the operator is restoring files to their original locations or if they are choosing to overwrite existing files.
- Added tool-tips to the main window's Burn and Restore tabs.
- Built a 'close window' menu item and keyboard shortcut with which to close the file list window.
- Cleared menus of non-necessary items.
- Built a verification for the drag-and-drop file/folder text areas; inappropriate drops (i.e. - putting a file where only a folder should be) will now be ignored.
- Last but not least, the CD burning process is now threaded and correctly displays user prompts in the progress sheet. This was no small feat, and now it makes the CD burning process much more easy to work with from a UI perspective.

Release 0.43 (alpha 6) notes:
Issues addressed and new features in Impression 0.43 (alpha 6) include:
- Eliminated the 'Erase' tab and reworked the disc erase engine using Apple's DiscRecording frameworks. The erase button is now part of the backup window.
- Reworked the button area of the main window to use buttons with images; this should lend to more intuitive UI.
- Added a 'Preferences' button in the main window.
- Ceased to disable interface buttons when the progress panels are down; it was just a silly, overkill of an idea. If this kind of idea were to ever be implemented it will need to come from Apple's HI department.
- The burning engine will be too complex to rework and base on Apple's DiscRecording frameworks for a while yet. It's entirely feasible, though too time consumptive at this stage in the application's development cycle.
- Reworked the progress panel significantly to fit more appropriately with Apple's DiscRecording progress indicators now that we're using them in various places. Consolidated and compressed text feedback in the progress panel as well.
- Set progress bar to 'complete' status and provide feedback with sound now upon successful disc burn completion.
- Miscellaneous code cleanup and compiling optimization. The compiled code is now noticeably faster and slightly smaller.
- Creation if new icons and images for the new image-based buttons.

Release 0.42 (alpha 5) notes:
Issues addressed and new features in Impression 0.42 (alpha 5) include:
- Fixed a bug that caused an error when trying to clean up shell scripts left over from running the backup process as the 'root' user if they didn't exist.
- Slightly optimized the routines in the program that are called when the backup process is 'run as root', though running the app as the 'root' user is still 2-5x slower than running it without root privilege, dependent on file sizes and other archiving conditions.

Release 0.41 (alpha 4) notes:
Issues addressed and new features in Impression 0.41 (alpha 4) include:
- Fixed a bug that left the progress sheet intact after canceling a failed CD burn session.

Release 0.4 (alpha 3) notes:
Issues addressed and new features in Impression 0.4 (alpha 3) include:
- Moved the checkbox to 'run backup as root' out to the main backup tab.
- Code consolidation and cleanup, especially in the main backup engine routines.
- The progress panel now displays estimated number of total discs required, and dynamically removes excluded files from the count to provide a more accurate assessment as the archiving process unfolds.
- Added 8x to the step-down burn speed popup button.
- Now writing the transcript to disk in a file called impression_log.txt in the ~/Library/Application Support/Impression directory that is saved between sessions.
- The transcript drawer now automatically opens on an application error.
- The command-period cancel feature now works more reliably and quickly during the archiving process.
- Excluded files are now listed as they are not being added to the archive.
- Removed debugging statements to help enhance speed of the archiving process.
- Used the -optimizeimage flag to reduce times for burning CDs less than the maximum disc size.
- Removed 'tmp' from the default user exclusions list.
- In the transcript, the application now shows that a CD burn is reattemping correctly.
- The application now displays better, more human messages in the transcript upon encountering errors.
- Changed the grep explanation in the Preferences panel to help clarify functionality.
- The buttons and interface elements now disable themselves as the progress panel is lowered, and then reënable themselves as it is removed.
- The transcript now displays timestaps on a per-line basis. The log file records the date in addition to the time of each entry.
- Optimized the small file handling routines to bring between a 4-10x speed increase.
- Moved the 'execme' files to new location with better r/w access. They are also now deleted before writing to ensure they have no data before creating them.
- Non-root access no longer uses the 'execme' files at runtime.
- Added tooltips to various UI elements in the main window.
- Enlarged the progress panel to the same size as Apple's DiscRecording panels in preparation for consideration of using those Frameworks.
- Made disc padding a global property for easier updating.
- Fixed a /tmp write permissions bug that kept temporary shell scripts from executing by moving temporary files to another location.
- Progress text now properly updates.
- Fixed a bug where the last item of system exclusions (hardcoded into the app) and the first item of user exclusions (set in the Preferences panel) were not working properly.
- Added try error handling to any unhandled 'do shell script' statements.
- Separate out permissions/write-lock file archiving errors from user cancel signals and handle the results appropriately. Failure to archive any individual file/package/application is logged in the transcript and the process continues. User cancels during the archiving process are now handled much better.
- Added more in-progress/feedback transcript messages. Humanized the messages presented in the transcript.
- Excluded Impression from backing up itself or its temporary disk images if they are present in the archive path.

Release 0.31 (alpha 2) notes:
Issues addressed and new features in Impression 0.31 (alpha 2) include:
- Fixed a bug that didn't allow continuation after reattempting failed CD burn sessions.

Release 0.3 (alpha 1) notes:
Issues addressed and new features in Impression 0.3 (alpha 1) include:
- Root authentication is now cached for each launch session of the application.
- Hfspax root permissions issues were sorted out.
- Readme.txt files are now included on each CD with command-line restore instructions.
- Appropriate transcript messages were included for various key points in the archiving process.
- Segmented file recombination has been fully tested for files with and without resource forks to verify functionality.
- CPU consumption was reduced by eliminating 'default glowing buttons' whenever possible.
- The backup location field now supports drag-and-drop of files from the Finder.
- The archive size is now created, computed and measured much more accurately and reliably.
- During the process of adding files to the archive, the progress bar now more accurately reflects the file's size within the archive.
- Removed the 'compress archive' feature from preferences, as it will not be part of this version of Impression.
- Built the egrep function for excluding files from the archiving process.
- Built the 'backup invisible files' function.
- Worked out alias issues during the archiving process; file aliases and symbolic links now archive as files and can be restored back to place with proper connections to the original files they referenced.
- A time-limit engine is now included with the app; it will be present during developer releases.
- Sorted out various Apple HI guideline issues for various parts of the interface.
- Updated error dialogs with more human error messages.
- Verified that the 'example disc name' updates after pressing the 'Restore Default Preferences' button in the Preferences window.
- Added feedback for current disc in the progress bar during the file archiving process.
- Changed the format for filename feedback in the progress bar and enlarged the field size to accommodate longer filenames.
- Built a burn retry function in case a failure occurs while burning a disc.
- Built a 'ruler indicator' to show progress while writing files to each archive disk image.
- Fixed an issue where the application briefly lost focus ('blinked') during disk formatting.
- The user is now prompted to label each CD appropriately in the transcript window.
- The package size estimation routines were completely rewritten to more accurately and reliably determine their sizes.
- Removed the trailing / from all file paths while writing the hfspax archives, thus making them more portable and easier to restore.
- Used an auto-generated tmp/execme shell file to avoid multi-line script completion issues while running in the root/sudo environment.
- Wrote a null checksum placeholder when the MD5 engine attempts to size a package/bundle/application.
- Fixed various warning errors coming from the attempt to hide the progress bar when it wasn't being displayed.

Release 0.2 notes:
New features in Impression 0.2 include:
- A preferences panel.
- The ability to turn off MD5 checksums to speed backups.
- An authentication module that validates the user and allows the pax process to run as root to avoid permissions issues.
- User-selectable CD names and the ability to add dates to the CD titles.
- User-selectable CD/archive segment sizes.
- Retaining of window positions between launches.
- A 'clear transcript' button to remove clutter from the log view.
- Working progress bars and text feedback during the pax process.
- Better threading during the archiving process and the ability to reliably cancel/interrupt the archiving process.
- Better in-application packaging and reference to the hfspax module. No external resources will be needed; this will be a drag-and-drop install/remove.
- Standard .txt log file format and readme.txt files burned with the pax archive on each CD.
- Long file segments are now integrated with the main pax archive and verified that they retain a file's resource fork.
- Use of the 'Application Support' folder in OSX for temporary files and log reports.
- Enhanced memory of various user defaults settings.
- Introduced advanced error handling and feedback during the archiving process.
- Better file and resource cleanup after archive failures.
- Lower CPU usage.
- Menu cleanup.
- Backup engine enhancements and improved file handling subroutines.
- More streamlined code.

Release 0.1 notes:
- Initial development release.


© Copyright 1998-2006 Stephen W. Elliott, All rights reserved.