This is AWeb 3.6, a new version of the classic Amiga web browser, developed by amigazen project. This release is AWeb 3.6 Beta 8, a preview build intended for testing and feedback. Following from the previous AWeb 3.6 Alpha 7 snapshot, Beta 8 adds major improvements to networking (especially HTTPS keep-alive), disk caching, memory management, font rendering (AWeb can now use TTEngine) and CSS support. The full source code of this release is available at https://github.com/amigazen/aweb3/
amigazen project uses modern software development tools and methods to update and rerelease classic Amiga open source software. This new version 3.6 updates AWeb to build against NDK3.2, replacing ClassAct with ReAction, updating networking code for RoadShow and AmiSSL, and ensuring it builds against the amigazen project ToolKit standard for Amiga SDK configuration.
Read this first
- Beta release This is a Beta preview with many known and unknown issues; please report problems on GitHub
- AWeb 3.5 This AWeb 3.6 is derived directly from AWeb 3.4, with improvements from AWeb 3.5 being integrated manually one by one. As of Beta 8, all relevant improvements from AWeb 3.5 have been integrated and in many cases improved even further
- Since there are many new default preferences in AWeb 3.6, starting from a clean configuration is recommended
- OS4 compatibility This is a 68k build, that does run on OS4, but you may encounter OS4 specific issues
- This release is built optimised for 68020 processors. It is possible to build a 68000 compatible build from the project source
- Similarly the PNG, JFIF (JPEG) and GIF plugins are built for 68020 with 68881 FPU but can be built for other targets
- This Beta build of AWeb saves it's disk cache in the T: location - this helps ensure it won't corrupt your hard disk, but means it uses more RAM, and prevents collision with other versions of AWeb you may have installed
- AWeb needs Fast RAM, hopefully in 2026 every Amiga user has plenty of Fast RAM
- No longer any need for an installer script, just put this drawer wherever you want, and run AWeb from here, it will assign AWeb: to the current directory if it does not exist already
- Multiple icons are included in the Storage drawer such as the original GlowIcons set by Oliver Tacke and Thomas Peterseim, the MasonIcons version and the MagicWB version. You can also find icons for AWeb in collections such as the AmigaOS 3.2 GlowIcons collection
- As with all versions of AWeb, you need ReAction to run AWeb (it may work with ClassAct but is not tested), a bsdsocket.library compatible TCP/IP stack, as well as AmiSSL 5.27 if you want to use HTTPS connections
- A default toolbar button "Protoweb" will configure use of the Protoweb.org proxy which lets you browse the web as if it's 1999!
New features in AWeb 3.6 include:
- CSS - AWeb now supports CSS, starting with experimental inline CSS for properties matching HTML4 attributes and even more experimental support for external CSS stylesheets
- Web safe fonts - Font tag parsing and matching logic now works like other browsers, and enhanced text rendering with TTEngine if installed
- The new gemini.aweblib module brings gemini:// and spartan:// protocol support for these new gopher-like networks
- A new about.aweblib brings about: URLs with home, fonts, version, plugins and blank page templates
- AWeb now knows how to handle view-source: allowing you to view any URL as plain text HTML source
- Directory browsing is now possible with the file:// protocol, and you can browse the root file:/// to see all mounted volumes
- Markdown - AWeb now understands and renders Markdown as rich text, with on the fly conversion to HTML
- HTTP/1.1 gzip and chunked encoding, Range (RFC 7233) support for fast automatic transfer resume, and keep-alive for faster page loading especially on SSL/TLS connections
- AmiSSL 5.27 support for HTTPS connections, including TLS 1.3 and strong cipher suites
- data: URL support allows for inline binary attachments
- utf-8 transcoding of the most common multibyte characters to Latin-1
- TTEngine support for text rendering with OpenType/TrueType fonts when ttengine.library is available, for enhanced font rendering with kerning, utf-8 support for non-Latin languages and even anti-aliasing on 15bpp+ screens
- AmigaOS 3.2 features such as contextual mouse pointers, DefIcons and window iconification are now supported, while retaining compatibility with 3.1
What's New in AWeb 3.6 Beta 8?
This first beta release of AWeb 3.6 marks the transition from work in progress alpha releases, to a functionally complete and relatively stable release ready for wider distribution and testing. At this point no major new features will be added for AWeb 3.6, and the focus will be on bug fixes, optimisations and compatibility with Amiga-centric web sites.
AWeb 3.6 beta 8 brings many new features and refactored core components including:
- HTTP keep-alive support for faster page loading especially on SSL/TLS connections
- Optional enhanced text rendering using ttengine.library for TrueType/OpenType fonts with anti-aliasing on 15bpp+ screens
- Full UTF-8 content rendering when using ttengine.library
- Enhanced about:fonts page for font matching diagnostics including TTEngine support
- When TTEngine is available, standard Amiga fonts are not preloaded at startup, to save memory
- All remaining relevant patches from every known release of AWeb 3.5 are fully integrated and in many cases improved upon
- AWeb now requires the latest AmiSSL 5.27 - it will not allow TLS connections without it
- Images are now lazy-rendered - images "below the fold" are not decoded until they are about to be displayed, and thus don't use up chip memory until they are on the screen, accelerating page loading and reducing memory pressure
- Additional chip RAM usage optimisations in both DataTypes image decoding and AWebPlugin image decoders
- The current Screen's titlebar is now used to display relevant information such as memory usage and open connections
- CSS and JavaScript content embedded from third party domains is ignored on the assumption that it is likely to contain incompatible content used for tracking and advertising that may trip up AWeb's parser
- Richer status window messages for more types of events - and status events are also logged to the console when DEBUG is turned on
- Windows opening at the default full screen size now respect the screen title BarHeight so the page does not cover the title bar, allowing the screen title to be visible
- Japanese characters are now supported in ShiftJIS encoded pages and text blocks if JKFF.font is installed
- If AmiSSL 5.27 or later is not installed, the user is prompted to navigate to Aminet to download it
- UserAgent string includes identification of the specific Amiga operating system version instead of hardcoded version 3.2, and defaults to Mozilla/4.0 style
- Refactored memory allocations throughout the core AWeb binary to use shared memory pools through the AWeb memory manager instead of direct exec.library calls, for more efficient memory usage, reduced fragmentation, and improved stability
- Additionally, as a result of the centralised memory management, AWeb can now track its own memory usage total and display that in the screen title(not including allocations by the operating system for bitmaps, fonts, network connections etc.)
- Memory allocations made by zlib (for gzip http streams) and PCRE (for regular expressions) are now made directly through the AWeb memory manager instead of malloc()
- Debug logging has been overhauled to remove redundant output, to standardise on syslog / RFC3164 format logs with timestamps, and all logging is now centralised through a new AWebLog submodule using Amiga native functions instead of C library stdio
- HTTPDEBUG/S command line option will in future be deprecated in favour of simply DEBUG/S since debug output is not only used for HTTP related events - both options are valid in this release
- HTTP Cache-Control response handling (no-store, no-cache, max-age, must-revalidate) improves cache freshness and correctness; POST responses are no longer written to the disk cache
- JavaScript diagnostics and memory tracking have been significantly expanded for debugging (GC/memory session stats, stack traces, and improved runtime logging)
- Amiga paths entered as locations (for example Work: or RAM: paths) are now normalised into file:/// URLs automatically
- AWEB 3.5: ARexx window and screen controls extended (SCREEN, LEFT, TOP, WIDTH, HEIGHT, NONAV) with updated prefs accessors
- AWEB 3.5: window.open() popups use correct browser chrome deltas
- AWEB 3.5: AppWindow works when Workbench is selected as a named public screen
- AWEB 3.5: Cookie prefs are split out from the Network prefs into their own file
- FIXED: Large numbers of Enforcer hits in the JavaScript plugin
- FIXED: Starting new fetches while previous fetches are still running no longer cancels the new fetch when cancelling the existing fetch where the domain is the same
- FIXED: Failed requests on keep-alive connections were not retried with a fresh connection
- FIXED: Many longstanding memory leaks identified and fixed using MemLog and SegTracker
- FIXED: External .css and .js resources are cached correctly in the disk cache
- FIXED: file:// URL content is no longer copied to the disk cache unnecessarily
- FIXED: 304 Not Modified revalidation with pooled connections
- FIXED: PNG AWebPlugin no longer deadlocks when P96 is unavailable; image plugins decode to Fast RAM first with a Chip display copy
- FIXED: HTTP Redirect 308 is now supported, following the same behaviour as for 307 redirects
- FIXED: Image transparency masks now use small row-wise reads instead of one huge temporary buffer for more efficient memory usage
- FIXED: <SCRIPT> HTML text inside SCRIPT tags is ignored and not parsed as markup
- FIXED: Many CSS fixes includingfont-family application corrected; redundant style passes removed; generic element selectors are no longer mis-applied to the BODY object
- FIXED: XmlHttpRequest shutdown on exit could hang
- FIXED: The size of placeholders for images no longer calculates width based on alt text content
- FIXED: Cache corruption edge cases on failed fetch/reload are eliminated by preventing stray payload data being appended to cached entries after an error
- FIXED: HTTPS keep-alive pooling is now robust against pending SSL/TLS read state (prevents TLS desync on reuse) and SSL cleanup/teardown is now bounded to avoid shutdown deadlocks or Exec semaphore corruption
- FIXED: SSL reads no longer hang indefinitely; AmiSSL socket I/O uses non-blocking reads with bounded WANT_READ/WANT_WRITE loops and timeouts
- FIXED: gzip + chunked transfer decoding is hardened so terminal chunk framing is preserved across decompression and chunk discard does not misclassify CR/LF as data
- FIXED: SPAN style state now correctly push/pops so styles do not “run on” into following content
- FIXED: HTTP/SSL connection teardown order with keep-alive (Enforcer hits during HTTPS retrieve)
- FIXED: Large HTTP requests and long response headers (304/401 completion, Content-Disposition filenames, buffer overflows)
- FIXED: Lazy images and CSS backgrounds after iconify or when backgrounds were deferred too far
- FIXED: JavaScript Date, onclick, window.scroll/scrollTo, and setTimeout after page display
- FIXED: Preference files that still reference AWebPath: are ignored so outdated 3.4/3.5 configs are not loaded
- FIXED: Popup menus no longer take focus away from the active window when switching windows
- Chip RAM memory pools removed so released chip bitmap memory can be reclaimed by the system
- Default parallel file:// connections increased to 8
- protoweb.awebrx ARexx script included for Protoweb.org proxy setup
Running AWeb
AWeb no longer requires an installer script. It can run from anywhere. Just run it from the folder it's in. Do note however that if the assign "AWeb:" does not already exist it will temporarily assign it to its current directory until it exits. On the other hand if you have assigned AWeb: to a different location then it won't find its plugins.
Saved AWeb prefs configs from earlier releases are not guaranteed to be compatible to AWeb 3.6, as AWeb 3.4 had several major defects in its prefs management and AWeb 3.5 changed the prefs file format. It is recommended to start with a fresh config for AWeb 3.6. You can use the CONFIG argument/ToolType if you wish to keep your AWeb 3.6 config separate from your earlier releases. In any case, AWeb 3.6 is much smarter about choosing default settings and for most users the defaults will be appropriate.
This beta build supports a DEBUG/S command line option which will output a LOT of debugging output to the console. If you use this, redirect the output to a file on a safe disk like the RAM: disk or, if running under emulation, a mounted host folder, just in case it causes filesystem corruption.
The requirements for AWeb 3.6 remain the same as the original 3.4 release, however most websites, even those that only use HTML 3 and 4 features, require significant amounts of RAM - 8MB Fast RAM is probably a sensible minimum. Some of the new default settings assume a more powerful Amiga than would have been common in the 1990s. It will of course fail to correctly load most modern websites requiring HTML5, CSS3, video content, heavy JavaScript, etc.
What's New in 3.6 Alpha 7?
- DataType images now render with transparency if picture.datatype is v47 or higher, where also supported by the DataType in question
- AWeb no longer renders a placeholder image and border if an IMG element source is missing
- Improved viewport width sizing: parsing of the viewport meta tag as a width hint, plus checks in frame layout so the top-level content width tracks the window inner width where appropriate
- Experimental modern toolbar layout removes the clutter of the old toolbar and replaces it with a more minimalist design. In this mode, the Reload button also functions as Stop (Not enabled in the public release build)
- New HTML elements added including SPAN and MARQUEE
- Improved font related CSS support: font-family and font-size (size keywords, px, pt, em, ex, %)
- Additional CSS support for :hover and :active (with correct hover target per element), list-style-image, background-repeat and related background properties, margins on all sides, background-color: transparent, transform: translate, percentage top/left, and @import merging into the active sheet
- Descendant and child selectors use a DIV parse stack so nesting matches the document; stale class/id are cleared when a tag omits them.
- External stylesheet readiness is tracked so colors and rules reapply once CSS finishes loading (reduces races with cached or late sheets)
- And announcing, for the first time in an Amiga web browser, support for the XMLHttpRequest API and AJAX websites, and ARexx commands to match
- AWeb is now a commodity, and can be managed by Exchange, with Show/Hide mapped to the Iconify feature
- Experimental ttengine.library support means AWeb can now natively support TrueType/OpenType fonts, with anti aliasing on full color screenmodes. ttengine.library is used automatically if installed on the system
- FTP module now supports FTPS i.e. FTP over TLS. Note this is not the same as SFTP support, which would require a separate module
- Removed PNG write functions from being built in to the PNG AWebPlugin, reducing the binary size back down to 140KB from over 180KB.
- Support for using the screen title to display relevant information such as network status, available memory and transient error messages (not enabled in the public release build but do feedback at Github what you would want to see this used for)
- Layout: fewer unnecessary full-frame repaints when embedded images finish decoding at the same dimensions; document notifies the frame for layout only when new markup was actually consumed (avoids duplicate work on EOF-only updates)
- Rebuilt all binaries with relevant SAS/C optimisations turned on
- User-Agent spoof mode now emits exactly the string configured in preferences (standard User-Agent: line only, with no extra "Spoofed by" suffix text)
- HTTP requests now send an Accept-Language header after the fixed headers when locale.library provides a usable two-letter or five-character (xx-yy) preference, with a sensible fallback
- The AWeb3 directory is now automatically created in ENVARC: if it does not already exist, so that preferences save correctly
- BitMap allocations all now declare BMF_DISPLAYABLE to allow for hardware accelerated blitting with graphics cards
- AWebJS module now supports require(), delay(), and print()
- AWEB 3.5: Integrated the JavaScript engine from AWeb 3.5 bringing full JavaScript 1.5 (ECMAScript 3) support, including RegExp
- AWEB 3.5: The standalone AWebJS JavaScript runtime now makes it possible to send ARexx commands to host ports host-port from scripts
- AWEB 3.5: Background images no longer get corrupted on OS4 (and probably also on P96) by applying correct access to BitMap structures
- FIXED: Table spacing where cellspacing was set to 0 would still be overridden by the default 2 pixel spacing
- FIXED: Rendering bugs in the bgalign implementation reintegrated from AWeb 3.5
- FIXED: AmiSSL 5.25 now works for HTTPS connections on OS4.
- FIXED: Buttons activating ARexx scripts could sometimes cause an illegal instruction guru
- FIXED: HTML and CSS string matching now uses utility.library Stricmp()/Strnicmp() directly instead of stricmp()/strnicmp() for maximum performance
- FIXED: Content-Length header should not be expected when chunked encoding is used; gzip downloads compare Content-Length against compressed payload bytes where applicable
- FIXED: Memory leak when releasing multipart boundary data in the HTTP stack
- FIXED: Timer used to support animating the MARQUEE tag caused an ISI panic on OS4
- FIXED: Text display and memory corruption on OS4 caused by lack of Strncpy() in OS4 utility.library
- FIXED: Numerous improvements to the JavaScript engine, including performance and stability improvements
- FIXED: Clipboard operations leaked memory and corrupted the memlist
- FIXED: Rendering of PRE tags and equivalent styles now always uses fixed-width fonts to ensure consistent column alignment
- FIXED: HTML text buffer expansion and insertion paths null-terminate and copy only valid lengths so uninitialized memory is not exposed or merged into the parse buffer
- FIXED: JavaScript robustness—among other fixes: Escape() uses unsigned bytes for %XX; RegExp match slicing uses the correct end offset; instanceof walks the prototype chain; shift operators no longer use uninitialized values; try/catch cannot write through a missing catch binding; string lexer advances the pointer correctly for \xNN escapes; reserved words such as switch, try/catch/finally, and instanceof are recognized by the parser
- FIXED: Object/JavaScript setup dispatches through the correct Amessage fields (avoids corrupt message structs); Jallowgc() wraps setup so garbage collection does not run during fragile initialization (reduces deadlocks)
What's New in 3.6 Alpha 6?
- More CSS properties are now supported, including padding, margin, position, top, left, right, bottom, border, vertical-align, text-align, and combined table cell styles
- CSS colors can now be specified in either hex swatch format or by name
- Connections that are still loading for the current page will immediately be terminated and a new connection will be made when navigating to a new page or reloading
- That same improved connection cancellation now also applies to the Cancel All button in the Network Status window and the Cancel Load menu item and ARexx commands
- AWeb now comes with an ARexx script for easily enabling the Protoweb.org proxy - browse the web as if it's 1999!
- In order to support Multipart MIME in the future, AWeb now parses cid: and data: URL types for inline binary attachments
- When viewing the directory view of the root file:/// it will show volume size and filesystem type rather than the normal directory listing
- All binaries are now built with 68020 optimization enabled. If you need a different configuration, follow the build instructions in BUILD.md on GitHub
- All locale catalogs from AWeb 3.4 are now included in the distribution. Note that AWeb 3.6 currently uses the same catalogs as AWeb 3.4 with no additional strings added
- ICO format images such as any favicon.ico are converted on the fly into regular BMP format images and then passed to DataTypes to render - this provides for an efficient way of supporting .ico without needing a full builtin decoder, given that .ico files are really only used for one purpose now
- Mozilla bookmarks files can now be imported into your AWeb Hotlist
- Default User-Agent strings for spoofing now reflect a variety of real world browsers
- AWeb no longer shows a 'FOUC' of a square image icon at the start of every page load
- view-source: in the URL bar is now supported, allowing you to view any URL as plain text (but note this does not work correctly with 30x redirects)
- Added new default MIME types for files common in 2025, and set all MIME types to lowercase as specified in RFC 6838, although matching remains case-insensitive
- HTTP Range (RFC 7233) support added for fast automatic resume of incomplete requests, should mean fewer page assets failing to load
- The PNG AWebPlugin has been updated to use libpng 1.6.43 although it's still probably slower than whatever DataType you're using for PNG
- Rebuilt with latest AmiSSL 5.25 SDK
- AWeb will now prefer CHACHA20-POLY1305 ciphers over AES-GCM for better performance on Amiga - if you have an Amiga oriented website consider adding this to your server's TLS configuration for faster loading speed
- AWEB 3.5: Reintegrated support for INS and DEL HTML elements
- AWEB 3.5: bgalign implementation
- AWEB 3.5: Reintegrated the optimisation for background image redraws
- AWEB 3.5: Missing FreeMem call in every AWebPlugin startup.c
- AWEB 3.5: Fixed JavaScript Image onerror handling
- AWEB 3.5: Some FORM elements like INPUT and BUTTON can now exist outside of forms and be used as document GUI objects that can trigger JavaScript events
- AWEB 3.5: Saved files will get a DefIcons icon if its running on the system, thanks to using GetDiskObjectNew() instead of GetDefDiskObject()
- AWEB 3.5: Fixed bug with nested tables having the height tag
- AWEB 3.5: Fixed long standing bug with caching of javascript source files that would store empty files in cache
- AWEB 3.5: Fixed problem where onload and onunload would not work when preceded by a script section in the head of the document
- AWEB 3.5: The referer in redirected pages is now set correctly
- AWEB 3.5: AWeb is now aware that printer.device can handle bitmaps greater than 8 bits from version 44, enabling printing from deep screens without requiring Turboprint
- AWEB 3.5: In tolerant mode event handlers such as onclick now allow the form "javascript:code" often used and supported by other browsers
- AWEB 3.5: Non RFC cookie mode extended to allow .domain.com to match domain.com, improving the behaviour of some login systems
- AWEB 3.5: Added Copy Image Url To Clipboard to default Image Popup menu
- AWEB 3.5: Fixed bug where Javascript images could overwrite some document properties
- AWEB 3.5: Fixed bug where transparent GIF animations did not update their backgrounds
- AWEB 3.5: Integrated fixes for known Enforcer hits in original AWeb 3.4 in body.c, defprefs.c and jcomp.c
- AWEB 3.5: Added support for mousewheel scrolling on OS4
- FIXED: Refactored SSL_CTX management
- FIXED: XML character entity matching is case sensitive again
- FIXED: Loading cached external CSS stylesheets would fail if server returned a 304 Not Modified response
- FIXED: Redirects for URLs with query strings now work properly - they are marked as volatile to force refresh since query strings change the URL's intent
- FIXED: If external CSS stylesheets were in utf-8 format, the parser would get stuck in an infinite loop
- FIXED: Long standing bug from AWeb 3.4 where wrong struct member was used to reply to the WBStartup ReplyPort, which could cause unpredictable crashes on launch or DSI errors on OS4
- FIXED: When Background images were turned off, the background color and body styles were also not applied
- FIXED: BUTTON elements now render their inner text as their label instead of being blank or using the object's value property
- FIXED: The GIF AWebPlugin now builds a working binary again that doesn't crash on initialization
- FIXED: Fix Connection header parsing for comma-separated values, preventing reload failures and memory issues when servers request connection closure via comma-separated Connection headers.
- FIXED: Table column width distribution for unsized columns and default border rendering when border attribute is not specified
- FIXED: After integrating the AWeb 3.5 changes for bgalign, child elements no longer rendered their own backgrounds when there was a body background image
- FIXED: The ARexx RUN command for running ARexx scripts from menu items and buttons no longer risks a crash if the script does not exist
- FIXED: Numerous stability improvements to the AmiSSL and CSS codebases, too many to list here
What's New in 3.6 Alpha 5?
- Experimental inline CSS support for a subset of CSS1 and CSS2 properties, see the inline CSS Test Page
- Experimental link rel="stylesheet" support for external CSS stylesheets, see the link rel=stylesheet Test Page
- IMPORTANT: Some websites that were previously usable with earlier releases of AWeb may no longer display in a usable form, if they use external stylesheets
- XHTML 1.0 support for parsing and rendering XHTML documents, enforcing strict parsing mode when XHTML is detected and supporting CDATA
- PNG AWebPlugin updated further to version 1.0.69 (latest 1.0.x branch) after it was updated to 1.0.0 by integrating the changes from AWeb 3.5
- Experimental support for the gemini:// and spartan:// protocols, new gopher-like networks, and the gemtext markup language they use
- Introducing AWebView a new standalone HTML and Markdown file viewer built using the LOCALONLY build configuration
- utf-8 support now handles mapping some 3-byte and 4-byte characters to Latin-1
- TLS connections now safely fail immediately instead of prompting the user to allow unsecure fallback, if secure socket cannot be established
- PNG AWebPlugin now uses the same zlib as the main AWeb program instead of the previous ancient version
- Further enhancement to the HTTP/1.1 keep-alive support but still disabled in this alpha release build
- AWEB 3.5: PNG AWebPlugin's libpng library updated to version 1.0.0 as used in AWeb 3.5
- AWEB 3.5: JFIF AWebPlugin's JPEG library updated to version 6b as used in AWeb 3.5
- AWEB 3.5: GIF AWebPlugin incorporates GIF engine changes from AWeb 3.5
- AWEB 3.5: Reintegrated the improvements to the gopher:// aweblib module
- FIXED: Null pointer access during argument parsing on launch which failed silently except on OS4 where it throws a DSI error
- FIXED: If using a custom CONFIG argument, AWeb now creates the directory for it if it doesn't already exist before saving into it
- FIXED: TLS connections are properly cleaned up in all circumstances and AmiSSL libraries are only closed on application exit
- FIXED: Improvements to chunked encoding handling mean connections to google no longer trigger binary download. Google still doesn't work but at least you'll see their errors pages now
What's New in 3.6 Alpha 4?
- Experimental HTTP/1.1 keep-alive support has been added to the codebase but is not enabled in this build as it requires further testing, and appears to be slower not faster as expected
- HTTPS connections now deny use of weak ciphers and TLS versions below 1.2 and also check CN and SAN name matches, with wildcard support, chain validation and Server Name Indication (SNI)
- FONT tags now search first for the named font if it exists on the system, then for the mapped alternative, then for the fallback font for the requested family
- The new about:fonts page now illustrates exactly how AWeb will render the defacto standard web safe fonts on your system with the fonts you have installed
- about.aweblib module now includes about:plugins which will list all loaded AWebPlugin and AWebLib modules
- theoldnet.com is now a default bookmark and the proxy function has been tested with theoldnet.com's http proxy service for browsing old versions of websites
- To use theoldnet.com proxy, enter "http://theoldnet.com:1996" as the proxy host and port in the Network settings, and set web.archive.org as an exception
- FORM elements such as INPUT, TEXTAREA, SELECT and BUTTON now render using the current font of the element they are contained within, rather than the system font
- URL parameters passed on the command line with no URL protocol are assumed to be local files, or in other words to open local files it is no longer necessary to specify the file:// protocol (actually this was added in 3.6 Alpha 2 but missed from these Release Notes)
- The file:// protocol now supports browsing and navigating directories as well as viewing files unless a file "index.html" is present in the directory. From here you can view individual files and navigate into subdirectories.
- Additionally, if you navigate to the file:/// root URL you will see a list of all mounted volumes
- Added new command line option (and corresponding ToolType) "NOSTARTUP/S". If this is passed, the startup.aweblib plugin will not be run even if it exists and therefore no splash screen will show.
- The Documentation now includes test pages for HTML3.2, HTML4.0 and JavaScript 1.1 to make it easy to see exactly how AWeb handles these standards
- AWEB 3.5: JavaScript now employs dynamic garbage collection during script execution instead of only at the end, reducing overall memory usage
- AWEB 3.5: Implemented ETags for caching
- AWEB 3.5: Implemented Content-Disposition parsing used for setting suggested name for file downloads
- AWEB 3.5: Reintegrated support for 302 and 307 redirects
- FIXED: Entities are now always rendered as actual characters regardless of the HTML compatibility mode
- FIXED: Proxy settings are now actually saved - this was completely missing in the original AWeb 3.4 source code
- FIXED: Broken ReadBytes function in the PNG plugin could cause an infinite loop loading assets from HTTPS connections, now fixed following the JPEG version pattern.
What's New in 3.6 Alpha 3?
- On larger screen resolutions (above 640x512) new browser windows will default to a more sensible size rather than full screen
- Closing the last browser window from the close gadget will no longer prompt with an 'Are you sure you want to quit?' requester unless there are transfers still in progress
- AWeb will now use system provided contextual mouse pointers if intuition.library v47 or greater is available, instead of its own custom pointers, for links, text cursors, popup menus and resize handles
- Implemented better content type detection for text formats and image formats from web servers that send unknown or octet-stream content type headers, which should reduce the likelihood of being forced to save a file the browser should be able to render
- HAIKU/S is now a valid alternative to the VVIIV/S (5-7-5.. get it?) command line option "easter egg"
- All remaining Latin-1 XML entities are now supported
- Markdown documents loaded both from files or http(s) URLs are rendered as HTML on the fly
- about: URL protocol now provides a default home page, an about:blank, a fonts test page, and a version information page
- Added a default custom config name (AWeb36a3) to the AWeb icon when launching from Workbench in order to avoid conflict with any preexisting AWeb settings in your ENV:AWeb3 directory
- TLS/SSL connections are now much more secure by default - rejecting anything other than TLS 1.2 and TLS 1.3 and only using strong ciphers
- HTTPS connections now properly verify that the hostname matches the certificate following RFC 6125
- FIXED: Removed an unnecessary additional init SSL function call which may have caused some instability with HTTPS connections
- FIXED: AWeb really will automatically create the AWeb: assign now if it doesn't already exist, and remove it on exit if it created it. This was broken in 3.6 Alpha 2
- FIXED: Large files are sometimes truncated due to chunk buffers being too small
What's New in 3.6 Alpha 2?
- Migrated from ClassAct to ReAction
- Refactored to use P96 instead of Cybergraphics
- SSL rewritten to use AmiSSL v5.2
- Updated to build against NDK3.2 and ToolKit SDK
- Renamed executable from 'AWeb-II' to simply 'AWeb'
- HTTP module completely written to use HTTP/1.1, gzip and chunked encodings
- Socket connections can be arbitrarily terminated at any time and now timeout after 15 seconds of inactivity
- Default background color for HTML rendering changed to white
- Images no longer render a border when associated with an a link
- Default search engine changed to BoingSearch.com
- Cookies now accepted by default, avoiding requester overload
- Default fonts changed to use the Amiga's default scalable fonts
- Added web-safe font aliases for better font matching
- Added XML character entities support
- Added stopgap UTF-8 conversion to prevent spurious glyphs
- Updated default bookmarks and default search engine is now boingsearch.com
- INet225 support removed - use bsdsocket.library instead
- MiamiSSL support removed - use AmiSSL 5.20+ instead
- CyberGraphX support removed (for now anyway) - this build uses P96 instead which should make it more viable under emulation and on OS4
- Builds again with SAS/C! Does not require gcc, native or cross-compiler to build
Known Issues in 3.6 Beta 8
- Setting the disk cache to 0 or a very small size will prevent images from rendering - this is an issue carried over from the original AWeb
- The new support for Markdown documents still has some visual glitches
- The AWebPlugins are deliberately not enabled by default, you will need to enable them manually in the configuration - however the plugins offer little to no benefit compared to using recent DataTypes, which tend to be much faster
- Feedback is also particularly welcome on default settings and default programs
Contact