AmiUpdate 2.0 (22.07.2010) - Where to start? There have been so many changes in all components it is difficult to know what to write here. The main bullet points would be: Now preferences driven. This means no more fiddling with awkward tooltypes. Iconifies to a docky, which allows a handy popup menu from the dock for common functions. System RollBack now allows date-relative purging of the RollBack database. The RollBack system can be turned off, if desired. Scheduled scanning means AmiUpdate sits idle until a scan is due. Manual scanning is still possible, of course. Major rework in all components for stability, reliability and functionality. Can now work with offline resources for updating via update CDs etc. Documentation fully updated to include all of the latest functionality. The amigaguide documentation has now been made obsolete. The documentation can now be viewed from the website at www.amiupdate.net. - Because of the major changes in the program, there may be some problems with certain functions and features. We apologise for this in advance, although we have done our utmost to test it as thoroughly as we can. - This update absolutely requires the latest versions of all AmiUpdate components. Do not try to mix older versions of software with any of these new ones and expect it to work reliably (if at all). - The AmigaGuide documentation has now been removed from the archives. It is now replaced with the live documentation from the website. - Translator files included in the full archive. AmiUpdate 2.1 (23.07.2010) - Changed the preferences and AmiUpdate to allow the iconification method of choice to be used when the program is starting up rather than always forcing as a "docky". - The images for the logo and the gears are now transparent to allow better integration with custom window themes. AmiUpdate 2.2 (30.07.2010) - After lots of testing and rejumbling code section, this version should now work under 4.0. We would like to thank Chris Dallimore and Darren Eveland for their extensive testing to ensure 4.0 compatibility again. Thanks guys. - Changed the preferences editor so that only one instance can be launched. This stops any confusion arising out of two sets of preferences in play. - Now includes the required files for translators to be able to localise AmiUpdate and the Preferences Editor. - Italian catalogs are included. Thanks to Samir Hawamdeh. AmiUpdate 2.3 (23.08.2010) - Slight change in the environment variable handling to include AppDir and AppPaths within the same framework. This means that both ENV:AppPaths/myapp and ENV:AppDir/myapp can be supplied as valid paths which can be optionally appended with the path extension string. AmiUpdate 2.4 (24.08.2010) - Oh dear. It appears that the Self-Update feature did not work well when the docky was displayed. This has now been fixed. Thanks to Costel Mincea for bringing it to my attention. AmiUpdate 2.5 (27.11.2010) - Another slight change to the redirection code, this time for framed forwarding. AmiUpdate 2.6 (27.12.2010) - Changed the network detection code to ignore the received packet count. This helps to detect a connection now on a fresh boot of the system when no network traffic has taken place. There still is no mechanism within the TCP stack to tell if an interface will actually lead to the outside world, so it now relies on SM_Up being reported by QueryInterfaceTags(). - Fixed a crash when changing screenmodes with the docky showing in AmiDock. - Now uses a fallback mode from the compositing engine when on an 8 bit screenmode. - The images are now reloaded and remapped when switching screenmodes/depths. - The docky now respects the users current scaling factor, and sizes itself accordingly. This requires AmiDock 53.35+. Because the scaling is done via the compositing engine, the images are not scaled on 8 bit screens even though the docky changes size. This is because I could not be arsed to spend time creating a fallback scaling routine, I mean, who the hell uses 8 bit screen modes any more... AmiUpdate 2.7 (21.03.2011) - The Unpack To Base Directory option was actually reversed, and a directory was created when not requested. - Upgraded the RebootDeamon so that the user can optionally "Reboot Now" rather than waiting for the time-out. - Added the ability to have the "Requires" field contain reference to ENV:AppDir or ENV:AppPaths to allow path resolution. AmiUpdate 2.8 (07.05.2011) - Changes made to the AutoInstall system to allow for multiple platforms in one script. AmiUpdate 2.9 (05.12.2011) - Fixed a typo in the version string. - Fixed a duplicated menu shortcut. (Thanks to Tuomas Hokka for both reports) - Added a check to see if a more complex directory structure was supplied in which to store downloaded archives. - Fixed a possible memory leak in the RebootDeamon. - Fixed a layout issue in the "Rebooting in 10 seconds" window. - The extended and normal description strings displayed encoded entities if present in the xml database. - When the program is uniconified, the Workbench screen is now brought to the front of the display in case the uniconification was caused by a notification double-click. - If a connection required authorization and the stored login details were incorrect, the connection would fail with a 403 error. Now the user will be prompted to re-enter the login for the current server in order to replace the login data. - Added more sanity checks to the downloaded database when scanning servers. AmiUpdate 2.10 (06.12.2011) - My bad, I added a catalog string into the middle of the .cd file without respecting the existing catalogs. The additional string has now been moved to the end of the .cd so that existing catalogs should work as expected. AmiUpdate 2.11 (21.01.2012) - Fixed an issue trying to shutdown the network while AmiUpdate was running. Thanks to Micheal Merkel. AmiUpdate 2.12 (22.01.2012) - It appears that a few errors crept in when removing some deprecated functions, which lead to the database file not being parsed correctly, and a "No updates available" status being displayed always. AmiUpdate 2.13 (13.02.2012) - When prompting for a PGP passphrase, the saved value was truncated if a ";" was present in the passphrase. - Added extra output in VERBOSE log if a dependency check fails during a scan. AmiUpdate 2.14 (09.06.2012) - If an update did not exist on the local computer and a missing requirement was detected, the update was still shown in the list. Fixed. - When trying to configure the log file name when a path was already set, the file name was shown in the requesters "drawer" field. Fixed. - Fixed the Obtain and Release vector return codes for the docky, which tried to self-expunge and clashed with the kernel function implemented in 53.29+. update.library 53.9 (08.06.2012) - Fixed the Obtain and Release vectors to correctly return the required values. Previously always returned ZERO. AmiUpdate 2.15 (26.08.2012) - Now shows the date and time when the database was last updated in the main list (next to the database title). Locale files also updated to suit, and available from the downloads section of the website. AmiUpdate 2.16 (23.09.2012) - Added more error trapping for HTTP server software that likes to twist the rules. *sigh* AmiUpdate 2.17 (29.09.2012) - When ignoring an update, it was removed from the list, but if it was the only update from that server, the heading was not removed from the main list. This left the server heading with no available updates. Fixed. - After removing an update from the list in the Ignore Manager, the list sorting was lost. Fixed - A long standing bug which went unnoticed for ages is the last entry in the IgnoreList was never shown in the Ignore Manager window. Fixed - The file mappings was failing to add any paths due to node allocations changing in recent updates. Fixed. AmiUpdate 2.18 (03.10.2012) - Fixed a parser error which may mistake a valid database for an error on some servers. AmiUpdate 2.19 (10.11.2012) - Fixed some non-localised strings. AmiUpdate 2.20 (15.01.2012) - Recompiled all modules due to an updated application.library include wrongly applied. No functional changes. AmiUpdate 2.21 (24.12.2012) - It seems an error in the AutoInstall script of the AmiUpdate update archive caused a situation which was never conceived possible, and led to a crash when trying to update itself. Fixed. AmiUpdate 2.22 (25.11.2012) - Finally fixed the flickering download window. It has been bugging me for ages. AmiUpdate 2.23 (2.12.2012) - When set to iconify as an AppIcon on the Workbench screen, there was no check to make sure that the icon file was successfully loaded which led to a crash if the icon loading failed for any reason. Now it will use a default icon if the programs icon cannot be loaded. AmiUpdate 2.24 (4.12.2012) - Really fixed the icon loading problem now when launched from a shell and the current directory is not PROGDIR: AmiUpdate 2.25 (12.12.2012) - Hopefully tracked down and fixed the invisible docky problem. AmiUpdate 2.26 (24.12.2012) - OK, so 2.25 was a bit of a disaster. At least it's xmas :) - Recoded much of the docky code which should hopefully fix any of the previously reported problems. - Fixed Rollback to work with the latest dos.library. - Slowed down the docky animation speed to suit the new dockstrip images. AmiUpdate 2.27 (26.12.2012) - The "Abort Scan" menu item was not working from the docky. Fixed. - Updated the self update routines to be able to handle a reboot situation if required. This would be required when a new library update is included, for example. AmiUpdate 2.28 (5.1.2013) - When supplying the name of a file in the "requires" field, if the device or volume did not exist, it would put up an "Insert Volume..." requester. It now fails quietly, as intended. - Added menu item "Open RollBack..." to allow a quick way to open the RollBack tool. - Added some substantial new functionality. The user now has the option to save the extended information of each update, which is usually used for release information. This works on a server-by-server basis, and is set within the preferences editor. Open the preferences editor and go to the "Servers" tab. A new column has been added to show whether the release information from each server should be saved or not. The feature can be toggled by selecting the server and clicking "Edit". Once enabled, the release information will be saved in the SYS:Documentation/ReleaseInfo drawer. A file will be created for each unique update, and the information will be saved into it under a heading denoting the version and the date of this update. The file will be named after the package name, so all release information will be collected in one file for each package. For example, each update of "Kernel" will be saved into a file called "SYS:Documentation/ReleaseInfo/Kernel_release_info". Each version will have a separate section within this file showing the information for each release. - Added some strings to the locale files to support the above functionality. - This update absolutely requires update.library 53.10 and Prefs/Updates 53.7. Anything less will most likely cause problems. AmiUpdate 2.29 (5.1.2013) - After some thought, the release information is now saved if the update does not install for any reason. The release information file is stored in the default "Unpacked" directory where the unpacked archive is also stored. It is then up to the user what to do with it, just as with the archive contents. AmiUpdate 2.30 (6.1.2013) - Disabling the AutoInstall of an update led to the release information being written to the SYS:Documentation directory and saved in the "Unpacked" drawer. Thanks to for the report. Fixed AmiUpdate 2.31 (7.1.2013) - Tweaked the code for opening System_Rollback. I knew changing it was a bad idea! - Whether adding a server or editing one, the requester title was shown as "Add Server". Fixed. AmiUpdate 2.32 (8.1.2013) - When performing a self-update, garbage was written to the release info file. - Added a new preferences option to enable a scan to be performed automatically when the progam starts. AmiUpdate 2.33 (3.8.2013) - Changed the location of the "Open Preferences" menu item into the "Settings" menu. #85 - Fixed a nasty crash when supplying the PGP passphrase via the requester. #87 - As some users have requested that the RollBack entries are formatted by date first (to make it easier for searching), functionality has been added to allow this. A requester will appear if old format names are detected, and the ability to convert the directory names and restore scripts will be presented. It's wise to make a backup of your Rollback directory until you ensure the conversion has completed successfully. As a side note, the restore scripts will also be changed to provide a relative path for the source file rather than an absolute one. This means that the current directory MUST be set to the directory the restore script is in, but it does have the benefit that the RollBack drawer can be moved en-mass and the restore scripts will still work. System_RollBack and CopyStore have also been updated to incorporate this functionality too. - Fixed a bug in the Info window if the filename did not have an extension like .lha etc. - If the database local file path pointed to a file that did not exist on the host system, the "Update Existing" option was not honoured, and the update would always appear in the list with a "not found on path" suffix. Now, if the update is not forced, non-existent updates will not be shown in the list. - Fixed a problem associated with running "IPrefs NewMouse" in the startup-sequence, and scrolling the main list with an item selected. - The opening and closing counts for update.library were not synchronised due to the Docky not having its Expunge function called. This is now forced when the RefCount reaches ZERO, and means the update.library is not locked in memory due to its open count being non-ZERO. - Now automatically checks for the latest version of update.library to save any more trouble with outdated libraries being installed. - Added some more static strings to the catalog. - When an assign was used by an update, a requester might appear during a scan if the assign did not exist locally. Fixed. AmiUpdate 2.34 (5.8.2013) - Fixed a potential crash when quitting the program via the "Quit" menu. Thanks to "Trixie" for the report. - Added extra information when registering with application.library. AmiUpdate 2.35 (29.9.2013) - When navigating the main update list with the keyboard, selecting category headings did not disable the "Info" button, and some users couldn't resist clicking it :) Reported by "Samo79". Fixed - Under certain circumstances, duplicate updates found from different servers would cause the server header in the main list to be omitted, making it appear to be from the previous server. Fixed. AmiUpdate 2.36 (5.2.2014) - No code changes. update.library 53.13 (5.2.2014) Fixed a problem with the default preferences and selecting the "Servers" tab in the preferences editor. AmiUpdate 2.37 (27.12.2014) - During startup, AmiUpdate locked the Workbench screen for comparison purposes, but forgot to unlock it again. This led to a block on screenmode or GUI preferences changes. - Upgraded to handle https:// protocols. Thanks to Thore Bockelmann for the enhancement. AmiUpdate 2.38 (25.4.2015) - Added OC_PreferExternal, TRUE to the catalog opening in the hope it fixes #4689. - Added support for X5000/20 and X5000/40 platforms. AmiUpdate 2.39 (24.9.2015) - Fixed support for X5020 and X5040. - Added support for upcoming platform(s). AmiUpdate 2.40 (8.10.2015) - Found a rather nasty memory leak which is now fixed. - Very long extended descriptions were truncated to 512 bytes, which was deemed plenty many years ago. The descriptions are now stored in a dynamic buffer rather than a fixed length one, which should fix this problem. AmiUpdate 2.41 (30.10.2016) - It appears the description strings could contain any arbitrary text, including string formatting commands, and these would play havoc with ASPrintf(), which was used to copy the strings into a buffer. Now allocates memory and copies the strings byte-for-byte to avoid such formatting issues. AmiUpdate 2.42 (3.12.2016) - Recompiled everything cleanly. Hopefully may fix some weird functionality here and there. - Added the locale files to the archive and the AutoInstall script. - It appears my build system did not include the latest versions of some components. Should be fixed now. - The check on the Rollback directory is now skipped when Rollback use is disabled in the prefs. Fixes #123 - The routine used to convert the Rollback directory names into FORMAT_ISO did not preserve the datestamps. This has led to all directories converted at the time to have the same datestamp. This will effect the "Purge" feature of System Rollback, although most people will have probably converted the directories more than a year ago, so RollBack will still recognise those directories as being correctly more than a year old. This has since been fixed, although probably a bit late! Prefs 53.10 (3.12.2016) o The editor would get a notification when the prefs file had changed, but did not clear the notification before processing it, putting it into an endless loop. o Now fixed. Thanks to Andy Broad for the report. RebootDeamon 2.3 (3.12.2016): o Added OC_PreferExternal, TRUE when opening the catalog. AmiUpdate 2.43 (29.12.2016) - It appears that some archives contain files that are delete-protected, and this caused problems when trying to download and unpack the same update twice in the same session. Thanks to Niels Bache for the report. - Fixed yet another issue when opening the preferences editor when AmiUpdate was also open which could lead to a busy-loop. Prefs 53.11 (29.12.2016) o Rejigged some code in the event loop to protect from the above busy-looping situation. AmiUpdate 2.44 (16.5.2018) - It appears that some lha archives may have a space (0x20) as the first character, and the function to strip off the http headers was removing this as a workaround for some badly configured web servers. This striping of the leading 0x20 character led to a corrupt lha archive. Thanks to Mick for the report. - All components now compiled using the GCC 5.4.0 toolchain. - It appears that the "Tabor" platform was expecting "A1222" as the AutoInstall argument, rather than "Tabor". Now changed. - Changes to allow a user-defined server for self-update checks rather than relying purely on "www.amiupdate.net". Prefs 53.12 (16.5.2018) o Updated to allow configuring the server to use for the self-update feature. update.library 53.15 (16.5.2018) o Updated to allow configuring the server for self-update checks. o Fixed a potential crash if the version string contained particular characters in the comment section. AmiUpdate 2.45 (20.5.2018) - In trying to fix one bug, another was introduced in the version checking routine. *sigh* update.library 53.16 (20.5.2018) o When copying the version string from a disk based file, it may have been possible to overrun a stack based buffer, which caused some strange results due to a corrupted stack frame. AmiUpdate 2.46 (10.11.2019) - If updates were found after scanning when iconified, the main update list was unavailable until a manual scan was performed again. Fixes #144. Thanks to Raziel for the report. - System wide changes to support a separate directory to save downloaded archives into. Prefs 53.13 (26.12.2019) o When using a custom screen, the screen was not closed after the preferences editor was closed. Fixed. Thanks to Janne Peraaho for the report. o The "About" requester always appeared on the Workbench screen even if the editor was using its own screen. o The list of servers is now able to be rearranged changing the order of servers to check. Thanks to Valiant for the idea. o The directory that downloaded archives are saved to can now be a separate directory to the "working" directory (noramlly "RAM:Unpacked"). o When exiting out of the "Edit Server" window, the status of the current "Self-Update" server was set incorrectly. Fixes #150. update.library 53.17 (26.12.2019) o Changed the internal structure of the preferences to allow for the new path to store archives. o Changed the internal structure of the "prefs" to be a bit more conservative with memory. AmiUpdate 2.47 (29.12.2019) - Even though the Self-update server is now configurable, the download location for the update archive was still hard-coded to the troublesome "amiupdate.net" domain. Now fixed to use a relative path of the chosen server from the prefs. update.library 53.18 (29.12.2019) o For some reason, the function to write to the log was causing problems, which still is not apparent why, but at least after quite a few clean compiles, seems to work OK again. AmiUpdate 2.48 (17.1.2021) - Added support to download from https servers. Thanks to Oliver Roberts for the code changes to allow this functionality. NOTE: Requires AmiSSL to be installed. - Now supports the "Content-Disposition:" html header to set the target filename. Thanks to Oliver Roberts for the suggestion. - For some reason the download window was not being updated during an http(s) transfer. Not noticed this before, so not sure how long it's been broken. - It appears that somewhere along the line, a change of preferences from the prefs program was not being recognised by AmiUpdate. Thanks to "Tim O" for the report. AmiUpdate 2.49 (02.01.2022) - The handling of the "Content-Disposition" header as not handled correctly, leading to archives getting stored with an unexpected name after a redirection. - Reworked the handling of the "Content-Length" header in order to report the filesize correctly in the download progress window. - Made some changes in order to better support redirected urls. Prefs 53.16 (02.01.2022) o When adding or editing a server from the list, the "active" status as not set correctly. o Changed the look of the title bar in the "Add Server" window for better consistency. o Fixed a potential memory leak when saving preferences. o Improved keyboard navigation. o Changed the way the string values are saved into the prefs, as it was possible that changing one of the directory settings may have been missed, and not saved. o A copy'n'paste error led to the Archive storage directory getting overwritten with the wrong value under certain conditions. o When showing new preferences into the editor window, the temporary directory was not set. o Improved the keyboard navigation in the editor window. update.library 53.18 (31.12.2021) o If the prefs file was not found, then AmiUpdate refused to start. It now creates a new prefs file with the default settings and uses that. AmiUpdate 2.50 (4.2.2024) - The http transfer routines did not consider a filename with spaces in it. All filenames are now run through an encoder prior to the HTTP request being sent. This fixes issues like the MUI update failing to download. update.library 53.19 (4.2.2024) o Added more internal vectors. RebootDeamon 2.4 (4.2.2024) o Reworked the source to avoid some duplication of code. o Changed the timer.device handling to avoid memory leaks. o Removed the pointless cancel button from the countdown requester. o If update.library could not be loaded, it tried to open an intuition requester for notification, but intuition had not been opened yet! AmiUpdate 2.51 (6.2.2024) - Some internal changes, but nothing functional (unless I added some bugs, of course). - It seems the http request headers did NOT include the version info in the User-Agent field, which the server uses. I could have sworn it was included ages ago! - Added better logging in the case of [405] errors. - The status bar will now show correctly if no servers are selected. RebootDeamon 2.5 (6.4.2024) o Seems there was a long standing bug which just popped up, which could lead to a crash dealing with the time requests. AmiUpdate 2.52 (10.2.2024) - Unfortunately, trying to keep compatibility with OS 4.0 led to problems with the docky part of application.library, as it always opens V2 of the library interface. As the program is using the old V1 tags, this threw up an error reported by multiple users. As it is highly unlikely anyone is still using 4.0, it should not be a problem a huge problem. My aplologies to any 4.0 users, but now is the time to upgrade!. - As the ongoing saga with connections to "amiupdate.net" is still ongoing, despite my best efforts to resolve it, I have now added a simple NSLookup to AmiUpdate in order to put rest to this issue once and for all. Accesses to "amiupdate.net" and "wwww.amiupdate.net" are now registered on "my" lookup server and are now redirected to the correct place without any intervention from the great wide internet. AmiUpdate 2.53 (12.2.2024) - It seems that the Ignore Manager ignored any subrevision in the version number. 1: It was never saved to the IgnoreList file. 2: It was never used in the manager to display the information. Seems a strange thing to have missed all those years back, but it is fixed now. Thanks to Neils Bache for the report. o Prefs_Updates 53.17 (12.2.2024) Seems I missed the opening of application.library with the old V1 interface while trying to perform a "Scan Now" operation which led to a myriad of nag requesters. AmiUpdate 2.54 (18.2.2024) - Changed the main list to include a "Last Changed" column. This now allows you to sort updates according to date. - Improved the log output for clarity when connecting to WWW realms and using login credentials. o Prefs_Updates 53.18 (12.2.2024) Missed yet another application interface conflict. Hopefully this should be it now.