Below is a summary of the notable new features and improvements since IBrowse 2.4 (for the full list, including bug fixes, see the IBrowse 3 history log and the IBrowse 2.5 history log):
IBrowse 3.0
> IBrowse 2 and IBrowse 3 Unification It's finally time to move on from IBrowse 2, which has been developed for over 20 years! IBrowse 3.0 makes available the previously unreleased features that were originally being worked on alongside IBrowse 2.4 (on a completely separate development branch), whilst retaining everything from IBrowse 2.5.9 and all the new developments since its release.
The IBrowse 2 and 3 development branches are now fully merged, which was a complex and time-consuming task, due to considerable divergence. The process was completed methodically and carefully, in order to not compromise stability or lose any functionality. Development can now move forward without being restricted to the limitations of the IBrowse 2 framework, allowing for more substantial changes.
> New Reimagined HTML Parser Debut of our new faster, more efficient and easily expandable HTML parser, originally designed for IBrowse 3.0 by Stefan Burstroem. The opportunity was also taken to add support for some missing HTML 4.01 tags and attributes.
> Improved HTML Engine The HTML engine has been improved with numerous layout and rendering enhancements, including tables, lists and superscript + subscript text.
> Hotlist Multi-aliasing When entering a hotlist alias as a URL, all of your hotlist URLs matching the alias will each be opened in their own browser tab. Additionally, hotlist entries can now be given multiple aliases (separated by a space).
> Early Data / Zero Round Trip Time Resumption (0-RTT) In conjunction with our SSL session cache feature, 0-RTT improves HTTPS and Gemini performance further still by sending requests in advance of connection handshake completion for a resumed session, reducing the time taken to establish connections. Available on TLSv1.3 connections with servers that are 0-RTT enabled.
> Better GIF Animation Playback The GIF decoder has several fixes for incorrect decoding of images and the GIF animation playback code has been improved to play more animations as intended.
> AmigaOS 3.2 Context Sensitive Mouse Pointers IBrowse is now able to directly use the mouse pointer imagery from AmigaOS 3.2, in addition to the existing support for AmigaOS 4.x and MUI 4/5 mouse pointers. This behaviour can be adjusted in the preferences, using the newly expanded setting, allowing you to switch between different imagery.
> NList GUI Consistency In IBrowse 2, some GUI elements used NList/NListtree, whilst others used other list classes. For consistency and performance, everything now uses NList/NListtree.
> Preferences IBrowse's preferences window has been improved, now placed in a virtual group, allowing it to work better on low resolution screens. Checkbox labels are now clickable too and the window now has a "Save" button. New default settings change the look of IBrowse, giving it borderless image-only toolbar buttons and white as the default page colour (you are, of course, free to amend these as you prefer).
> Decompression and Image Decoding Libraries Upgraded Zlib has been upgraded to v1.3, Brotli to v1.1.0 and libpng to v1.6.40, ensuring IBrowse is up to date with security advisories and the latest, fastest code.
> Space Saving As IBrowse (and AmiSSL) grow, we continue to make modifications to improve efficiency throughout the code. The biggest changes in this area are the separate HTTP and HTTPS protocol libraries being been merged into a single library and the duplicated zlib code being removed from the PNG decoder module, which now uses the existing zlib code from IBrowse itself.
IBrowse 2.5.7
> AmigaOS 4.x Vector-Port File I/O Our low-level lock relative file i/o library functions now directly use the Vector-Port interface instead of old-style DOS packets, when using a suitable file system (e.g. NGFS), increasing performance.
IBrowse 2.5.6
> OpenSSL 3.x / AmiSSL v5 Support
Support for the latest AmiSSL release has been added, allowing the
use of the most up to date SSL implementation (OpenSSL 3.x) available for AmigaOS.
> Gemini Client Added support for the Gemini protocol and gemini:// URLs.
> HTTP Engine - Brotli
HTTP(S) connections may now be made using Brotli compression, if offered by the server.
> Gopher Client The Gopher client has been improved, adding support for 'i' and 'h' lines, and fixed invalid image shown for CSO lines.
IBrowse 2.5.5
> Third-party Cookies Third-party cookies can now be blocked globally and/or via the URL prefs settings.
IBrowse 2.5.3
> SSL Session Caching
IBrowse now implements a SSL session cache for all HTTPS connections, supporting all the differing session/ticket methods
used from TLSv1.0 to TLSv1.3. This allows the slow initial handshaking to be bypassed on subsequent connections to the same
host, thus increasing performance noticably on AmigaOS 3.x, and even on AmigaOS 4.x too. Most websites support this feature universally.
> Persistent Connections
This is an older HTTP feature that was never implemented in IBrowse until now, partly because IBrowse has always relied on
opening multiple connections to websites, which didn't really make this feature worthwhile. However, it can be useful for
HTTPS connections as it allows them to be left open and reused, without having spend CPU time renegotiating the SSL connection
at all. Not all websites support persistent connections and, some of those that
do, do not keep connections open long enough (e.g. 1 second) to make a difference.
IBrowse 2.5.1
> Alpha Channel Support on >= 15-bit Displays (MorphOS) Alpha channels in images are now also fully supported and displayed properly on suitable screenmodes when running on MorphOS.
> AmiUpdate Support (AmigaOS 4.x) Updates to IBrowse may now be download and installed via AmiUpdate.
IBrowse 2.5
New Features
> AmigaOS 4.x Native Version Added (AmigaOS 4.1 Final Edition Required) In addition to the AmigaOS 3.x 68k version of IBrowse, an AmigaOS 4.x PowerPC native version will also
be available. This is not a simple port, but we have taken great care to ensure it fully
utilises of all the relevant new features avaiable in AmigaOS 4.x and as such requires a minimum of AmigaOS 4.1 Final Edition. Uses the new
graphics.library RTG system, dropping CyberGraphX support completely. Other
features include faster image rendering using hardware compositing, anti-aliased text rendering and proper
daylight saving time handling.
> OpenSSL 1.1.x / AmiSSL v4 Support
Support for the latest AmiSSL release has been added to IBrowse 2.5, allowing the
use of the most up to date SSL implementation (OpenSSL 1.1.x) available for AmigaOS. Whilst this
adds support for TLSv1.0-TLSv1.3 and the latest ciphers, we have also dropped SSLv2 and SSLv3
support completely (including MiamiSSL). SNI (Server Name Information) support has
be added for HTTPS. Certificate verification has been added, which prompts the
user when necessary, to protect against "Man in the Middle" vulnerabilities.
AmigaOS 4.x users will be able to benefit from
the improved speed of the PPC native SSL implementation, including specific PPC
speed optimisations and AltiVec acceleration, and other AmigaOS compatible systems will be
able to use the 68k implementation. The AmiSSL Open Source Team are still looking
for somebody to handle the MorphOS build of AmiSSL v4 - no MorphOS developers have
volunteered.
> MUI 4.0 and 5.0 Support IBrowse 2.5 will still work with MUI 3.8 (although, we recommend 3.9 as a minimum) and we
have added support for new features in 4.0 and 5.0. This includes using MUI's context sensitive pointers
instead of our own which were introduced in IBrowse 2.4, support for various
built-in MUI menus and other new GUI additions.
> Alpha Channel Support on >= 15-bit Displays (AmigaOS 4.x) Alpha channels in images are now fully supported and displayed properly on suitable screenmodes when running on AmigaOS 4.x.
> 4Gb+ File/Downloads (AmigaOS 4.x) The AmigaOS 4.x version of IBrowse 2.5 is able to properly support handling and downloading
of files bigger than 2Gb, with all status information now capable of displaying
sizes larger than 4Gb.
> Customisable Spoofing Strings
HTTP and Javascript User-Agent and related JavaScript properties may now be fully customised,
allowing existing strings to be duplicated and edited, and new strings added. The "Spoof As"
menu can also be fully customised to show the entries you want there. These settings can of course
also be applied in the URL Prefs also, as in previous releases.
> OpenSearch Support IBrowse 2.5 now supports the OpenSearch standard allowing search engines to
automatically be added to the search bar. This is possible via JavaScript or OpenSearch
autodiscovery. This is in addition to the older Sherlock/Mycroft search engine support available in IBrowse 2.4.
Rewritten Features
> TextEditField Text Editor IBrowse's TextEditField object has had an overhaul, fixing various issues and
adding new features. Rendering is done in a more MUI4/5 compatible manner
allowing these objects to inherit your MUI settings. Your mousewheel can now
be used for scrolling and various MUI defined keyboard shortcuts are now
honoured.
> Disk Cache Clean This is really a new feature, albeit not an exciting one, as the disk cache clean
menu item never used to do anything. Now it actually will erase all unused items,
as it can happen that untracked files can get lost there and never deleted, due to bugs or if IBrowse is not shutdown correctly.
There have also been a few fixes to the disk cache, during day to
day operation, to prevent old files being left untracked there.
Improved Features
> HTTP Engine Various fixes and improvements, making IBrowse compatible with more servers.
Now also supports the "Do Not Track" and "Upgrade-Insecure-Requests" headers, chunked transfer encoding and faster password protected sessions.
> HTML Engine The existing HTML4 engine has been enhanced, with improved support for more tags and attributes, as well as being compatible with more sites.
Redraw speeds of background images containing transparency has been greatly improved.
> JavaScript Engine JavaScript engine has been improved yet further, with various improvements, bug fixes and crash fixes.
Improved parsing speed of large inline JavaScript section in HTML. Fixed various issues that could
occur, and increased performance, when JavaScript is disabled.
> Internal Image Decoders
All the internal image decoders have been improved, with various fixes, alpha channel
handling, and speed optimisations. The JPEG and PNG decoders now fully utilise the
decoding improvements and optimisations from the current Warp Datatypes,
which also includes AltiVec acceleration in the JPEG decoder.
> Cookie Support The hardcoded 2000 global cookies, with a 200 per domain, limits introduced in IBrowse 2.4
are now adjustable in the preferences. An AmigaDOS pattern can also be used to
automatically block certain cookies from being accepted. For the Cookie Manager
window itself, real-time updating no longer slows everything down while browsing and
columns are now click sortable.
> Password Manager The password manager can now also store FTP login information. Issues with setting a
master password have been fixed along with a crash bug.
> Various GUI Elements The background of browser tabs now uses your MUI "Groups / Tab groups / Container" setting. As a whole, IBrowse's GUI is more compatible with MUI 4.0 and 5.0 than previous versions of IBrowse.
> Memory Management Further improvements to the memory management and usage, plus more memory leaks plugged.
> Bug Fixes It perhaps goes without saying that many bugs, some minor, some crash inducing, have
been fixed for IBrowse 2.5, making it the most stable version ever.
|
|
|