Version History
Version 6.1
- Downloads and network cache writes now use asyncio.library
- Adjusted SSL ciphers to try to default to ones that are faster on PowerPC (prefer CHACHA20_POLY1305_SHA256 over AES)
- Checks whether lo0 interface is enabled and warns if not (Wayfarer is unable to resolve DNS addresses with loopback interface disabled)
- Improved error handling in auto-updater
Version 6.0
- Rebased to WebKitGTK 2.40.2
- Implemented Bookmarks filtering
- Password manager now stores port numbers too, making it possible to have multiple services requiring login handled on the same domain (as a side effect, all old passwords have been promoted to port 443/https)
- Added a popup if audio initialization has failed
- Added a way to manually add passwords in the Password Settings
- Youtube MSE playback improvements
- Fixed HTTP authentication popup saving credentials for a wrong host in case of redirection
- Fixed a redraw issue when opening print panel while page is still loading
- Fixed to default mimeType to text/html if missing in response from server
- Fixed a couple of minor memory leaks
- Updated libnix and libpng16 both with additional Altivec optimizations
- Updated libxml2, libwebp
Version 5.5
- Wayfarer will now auto-update on quit when using the Check for updates functionality
- Fixed a bug in Downloads window which wouldn't always allow resuming a failed download
- Enabled mjpeg support in ffmpeg (enables audio playback in JellyFin)
- Updated cURL
Version 5.4
- Fixed a resource leak when a download was initiated with a click on a link to a file, which would eventually exhaust allowed connections to a host
- User Scripts can now be bundled with a CSS file
- Updated cURL
- Implemented an (advanced) setting to tweak HTTP/2 support in order to workaround issues with some servers and cURL
- Updated bundled youtube scripts. See the FAQ for instructions on how to update scripts
Version 5.3
- Fixed file:/// handling to resolve issues with relative file schema URIs
- Added a workaround for a NetStack bug in MorphOS 3.14-3.18 that potentially trashes memory via bogus errno pointer
- Updated cURL and sqlite
Version 5.2
- Enabled Async Clipboard APIs in WebKit (fixes github.com being very slow)
- Added a Youtube userscript that removes gradients from the player area
- Updated easylist adblock data
Version 5.1
- Fixed a MediaSource player crash if the incoming chunk has a higher # of streams than the current chunk
- Download As asl's path can now be stored separately from the standard download path
- Avoid redraws when WebKit calls a scroll function despite offsets not changing
- Improved tab key navigation
- Hotkey tweaks
Version 5.0
- Rebased to WebKitGTK 2.38.5
- Added a setting to place the cookies SQL database in RAM and synchronize it on quit/periodically to reduce disk I/O
- Added a User Scripts manager UI
- Bookmarks editor UI improvements
Version 4.9
- Added a workaround for YT changing quality mid-stream by simply feeding the player video data in different format instead of using the MSE APIs to do this
- Added a workaround for MSE initialization race with seeking for streams not starting at pos=0
- Updated cURL and nghttp2 libraries
- Updated EasyList
Version 4.8
- Cherrypicked a cURL fix for socks proxies failing
Version 4.7
- Removed the requirement of latest openssl3.libary in order to run Wayfarer
- Update check will also optionally check if openssl3.library is latest
- Localization strings cosmetics
Version 4.6
- Fixed a race condition in OffscreenCanvas leading to use after free
- Fixed the 'Import HAR' button in the Web Inspector
- Drag image handling improvements
- Implemented drag images for links
- Changed the cURL thread priority
- Updated cURL, png, webp and sqlite libraries
Version 4.5
- Updated libcURL to fix issues with HTTP/2
Version 4.4
- Massive performance gains in decoding of large file images
- Loading progress bar colour can now be configured in Interface settings
- Cherrypicked OffscreenCanvas fixes from latest WebKit sources
- Added handling of very long filenames when finalizing a download
- Fixed a bad free call in the media decoder
- Disabled some stray debug
Version 4.3
- Implemented the full WebKit WebInspector
- Deprecated Eruda
- Enabled anchor's download attribute
- Implemented download support for data blobs and data URLs
- Fixed BigInt64 types in TypedArrays
- Optimized some TypedArray operations
Version 4.2
- Rebased to WebKitGTK 2.36.8
- Updated cURL and other libs
Version 4.1
- Rebased to WebKitGTK 2.36.7
- Updated EasyList AdBlocker database
- Updated cURL and other libs
Version 4.0
- Rebased to WebKitGTK 2.36.3
- HLS stream qualities also accessible from the Media menu
- Updated cURL and other libs
Version 3.9
- Implemented ClearKey DRM support for HLS media streams
- Implemented HLS stream quality switching accessible from the media popup
- Added configurable touch events emulation (think Youtube-Mobile seeking slider)
- Refactored the HLS player to allow MPEG-TS playback
- Live HLS streams now start playing closer to the current time
- Improved stream end position reporting to get some streaming services correctly skip to next stream after playing ads
- Updated libcurl
Version 3.8
- Implemented basic drag & drop of web elements within a page
- Fixed scrollbar positions after switching between tabs
Version 3.7
- Rewritten MediaSource player state machines to improve seeking, end-of-stream handling
- Fixed a bug that caused a/v decoders to keep increasing the read-ahead decoded frame buffers infinitely (causing out-of-memory sooner or later during playback)
- Fixed a memory leak in a/v de-multiplexer
- Refactored the HLS player to enable seeking in terminated playlists
- Reduced the memory footprint of MediaSource playback
- Fixed video position reporting for MediaStreams w/o an audio track
- Rewritten the right mouse button handling
- Improved the media popup, added stream information
- Fixed input handling in fullscreen mode
- Updated OpenJPEG
Version 3.6
- Added code to skip redraws of web contents entirely when Wayfarer is on an invisible screen
- Added an Amazon Fire Stick user agent to settings, works well with youtube.com/tv
- Removed 'Skip All Frames' loop filter option
- Fixed a possible crash in the MediaSource player
- Checks if a file exists and asks to overwrite in Download As.. requester
Version 3.3-3.5
- HTTP HEAD requests to resources would poison the Curl disk cache with 0-byte files, leading to websites failing to load/work correctly
- Minor speed improvements in JavaScriptCore and timing code
- Improved refresh speeds when typing text on websites showing animated contents as you type
- The HLS player will iterate through all streams of the master playlist now if a selected sub playlist fails to play
- Re-worked post-seeking playback restart to avoid auto-start of streams that start playback from non-0 position
- Fixed audio buffer under-run handling
- Invisible video streams fixed not to enable overlay
- Improved invalid certificate error handling UI flows
- Disabled touch events support
- Fixed a regression in HTTP AUTH handling
- Please note that 3.3-3.5 binaries suffer from build problems
Version 3.2
- Implemented WOFF/WOFF2 fonts support
- Improved ligatures support
- Worked around a possible crash in JavaScript
- Fixed the Polish catalog's encoding
Version 3.1
- Fixed a crash on exiting fullscreen mode
Version 3.0
- Updated WebKit code base to the WebKitGTK 2.34.6 release
- Added a Media menu with playback controls hotkeys
- Added cookie/cache cleaning menu options
- Password save requester pops up on more sites now
- No longer writes partial files into the Curl cache
- Launcher removes PROGDIR:ICU since it is no longer required
- Fixed downloads from itch.io
- Improved network error handling in the media player
- Cleaned up console log output into dprintf
- Fixed the base URL for HLS media chunks (fixes cnn.com, etc)
Version 2.10
- Tabs may now be sorted / moved between the windows with drag & drop
- Updated notifications to use magicbeacon.library
- Improved handling of errors and clicking on downloadable URLs
- Fixed I/O error handling in downloads
- Added additional sanitization to download file names and download prefix
- Fixed Downloading files to folders containing non-ASCII characters
Version 2.9
- Implemented Proxy settings
- Added right mouse button override settings that make it possible to open the default context menu on websites that try to block it
- Fixed several edge cases where Wayfarer's url bar wouldn't correctly show page's url
- Added code to handle "ContentDisposition: attachment" to trigger downloading instead of displaying the target url
- Fixed 'Reload' to work after a failed page load
- Downloaded filename had 1st letter truncated in some cases due to a bug in header parsing
- Enabled USE_NEW_THEME in WebKit to change how some controls are drawn
- Default CSS tweaks to prevent invisible checkboxes/radio buttons
Version 2.8
- Altivec code paths for a lot of WebAudio routines, optimized sin/cos computations in StereoPanner
- Fast code paths for feColorMatrix (approximately 6 times faster than WebCore code)
- Recompiled to fix a bug with longcalls in GCC, which caused it to miscompile the code in some cases leading to crashes
- Improved the ContentDisposition header parser in WebKit
- Detects expired certificates in the certificate viewer
- Added a way to delete saved self-signed certificates, disabled the ability to 'trust' invalid/expired (not self signed) certificates
- Fixed a regression in HTTP AUTH handling that caused downloads from password protected pages to fail
Version 2.7
- Worked around random crashes that may have been observed in 2.6
- Significantly improved performance of various threading checks across WebKit
- Worked around an issue in objc runtime that caused Wayfarer to stall during download notifications. Do note that notifications must be reconfigured in Magic Beacon as some keywords have changed.
- Improved handling of websites that constatly request http auth credentials instead of caching the state
Version 2.6
- Implemented Web Notifications and Download notifications via Magic Beacon. See the FAQ for more information
- Added browser tab pinning (via tab context menu). Disables tab close button and hotkeys
- Use Clipboard unit 1 for HTML paste operations like Odyssey does
- Linked against OpenSSL 3.0
- Fixed a WebAudio crash on bahn.de
- Enabled Intersection Observer (fixes github.com)
- Fixed an issue which caused some of the settings to display wrong state when opening settings for a given host directly from the menu
Version 2.5
- Fixed a severe memory leak in JavaScriptCore, up to 5MB+ were being leaked per one page load in case of websites using SQL/IDB
- Fixed to terminate Audio Worklet threads (which has also leaked a JavaScript VM) on pages using WebAudio
- Implemented a warning (yellow shield icon) for mixed HTTPS/HTTP website content
- Updated OpenSSL to 1.1.1l
- Fixed a bug in Curl backend / networking that caused WebSockets to fail
- Removed MorphOS 3.14 threading workarounds
- Lowered WebAudio audio thread priority
- Fixed Download Image As... to popup a requester
- Disabled Download As window's menu
- Fixed double-clicking on downloaded items in Downloads view where Download As was used
Version 2.4
- Implemented Download As...
- WebAudio support for sample playback (while Google Translate text to speech works just fine, most online MOD players will be too slow)
- Implemented a Media flags popup
- Improved SSL certificate verification to avoid cases where a website wouldn't load due to cert not matching the hostname, but cert viewer window would assume the cert is fine and would not present buttons allowing to ignore/save cert
- Worked around an issue that prevented further popups from showing up if the main window was resized while a popup was up
- Reload button state wasn't properly refreshed when switching between tabs
- Fixed a crash and status bar issues when browsing page history for cached pages
- Certificate viewer may now be localized
Version 2.3
- Reimplemented fullscreen support to display contents on a separate screen
- Implemented HLS stream A/V synchronization for streams that contain no timestamps
- MediaSource playback improvements, including workarounds for broken websites
- Implemented code to stall the video pipeline when audio stalls
- Fixed a crash in ffmpeg h264 decoder
Version 2.2
- Fixed duration handling in the Media Source player
- Disabled focus frame on some elements since it wasn't always redrawn correctly
- Fixed a low-memory related crash in the PNG decoder
- Tweaked ICU data checks to try and detect broken installations
- Added a workaround for Wayfarer not shutting down (may still be up to 30s)
- Fixed setting media playback variables after prefs were reset
Version 2.1
- ICU files will now be loaded from PROGDIR if missing in MOSSYS
- Updated EasyList adblocker data
- Fixed wheel scrolling in subframes
- Fixed a race condition in HLS player
- Fixed a widely reported crash in H264 decoding
- Fixed a potential crash in bookmarks code
Version 2.0
- Rebased to latest stable WebKitGTK (2.32.1)
- Implemented Dark Mode
- Fixed a crash in HLS video playback
- Worked around an issue preventing sites from loading, etc after quit confirmation requester got cancelled
- Fixed webkit message log functionality that crashed if the resulting message contained formatting sequences
- Changed rendering of elements like checkmarks that were missing on some websites
- Out-of-RAM crashes no longer bring up the Send Bugreport messagebox
Version 1.21
- Fixed a crash on player exit
- Fixed an issue where player settings weren't correctly applied when loading pages
- Fixed an issue where wrong player settings were used in some code paths
- Fixed a problem with quitting Wayfarer
Version 1.20
- Mitigated a problem with TLS that would often cause crashes when Wayfarer was used alongside Iris
- Addressed some potential ffmpeg abort() calls as seen in bugreported crashes
- Fixed to trim long titles in Tabs menu
Version 1.19
- Implemented video playback statistics (Youtube's Stats for Nerds will now show decoded frame counts, etc)
- Fixes in HLS Live playback on YT
- Reduced frame drops when playing video
- Fixed to correctly display rotated photos
Version 1.18
- Fixed to update page's url when traversing history
- Updated ffmpeg to 4.4
- Improved player's handling of bogus stream data
- Partially mitigated a player memory leak
Version 1.17
- Media playback settings are now per-host
- Removed the media playback popup requester mode
- Various improvements in the player pipeline, including improved HLS
Version 1.16
- Disables screensaver while playing video
- Fixed a crash when shutting down the video decoder
Version 1.15
- Enabled Media playback on PowerPC CPUs without Altivec
- Improved audio seeking
- Fixed switching between playing multiple streams
- A lot of MediaSource player improvements, fixes in quality change, seeking, re-play
- Fixed playback of HLS videos
Version 1.14
- Fixed a regression in cURL code
Version 1.13
- HLS support can now be disabled in settings
- Fixed a regression in cURL code
- Fixed a crash in media playback initialization
- Minor player improvements
- Disabled media playback support for CPUs other than the G4 and G5 family
Version 1.12
- Overlay based video playback, requires updated cgxvideo.library (included in the archive)
- Experimental MediaSource support
- Added a Media settings tab
- Improved HLS audio playback
- Implemented basic fullscreen (window) mode
- Implement redraw throttling to prevent pages from taking up all the CPU time for redraws
- Updated to the latest FFMpeg4
- Updated to latest OpenSSL and cURL
- Fixed Wayfarer being stuck on quit forever
- Fixed issues with invalid download sizes for large files or with unknown size
- Fixed Tab->Move to New Window...
- Fixed an bug where chunked file uploads would fail
- Improved resource cleanup on page hibernation
Version 1.11
- Optimized Curl cache warm-up to be several magnitudes faster
- Don't popup download requesters for webpage components that have no valid mime type and aren't the main url itself
- Updated EasyList filter data
- Optimized not to attempt loading media at all if the page settings are set to block it
- Reworked localizable string formats to use @key@ instead of %d, etc to avoid crashes with incorrect translations
- Improved handling of custom/unsupported protocols
- Fixed Offline Storage settings UI
- Fixed Recently closed tabs menu
- Fixed a networking crash
- Fixed a memtrash in the loader code when closing Wayfarer on its own screen
Version 1.10
- Fixed a potential crash in AHI code
Version 1.9
- Implemented an audio player, including audio in video files
- Codec coverage basically the same as in Odyssey, with Opus and MPEG-TS support added
- Implemented HLS chunk-based media playback for many live radio streams
- Configurable popup on media load, with download option
- Fixed a case where mouse pointer would no longer change above links after scrolling with mmb
- Fixed not to mangle the file path after resuming a download with name prefix set
- Fixed to disable menus in several popup windows
- Fixed to ensure the Sessions folder is always present
- Worked around a race condition in MUI where it would crash trying to show a help bubble for a tab being closed at the same time
Version 1.8
- Added jpeg2k support via OpenJPEG
- Reports browser locale based on system locales
- Added a Translation service support w/ settings
- Added session quicksave hotkeys
- Improved wheel scrolling and mouse cursor code
- Adjusted page/wheel scrolling deltas to be in-line with WebCore's suggested values
- Scrolling page content is now possible with mmb pressed
- Esc key deactivates the WebKit container, instead of being swallowed
- Improved the cURL thread loop
- Various UI improvements in the Printing Mode
- Improved shutdown times
- Linked against latest OpenSSL 1.1.1i and cURL 7.74.0
- Fixed RMB to not select word under cursor if there already is a selection in editable components
- Fixed pasting text into editors handling paste via JS/DOM Events
- Fixed a crash in FavIcon loader
- Fixed a crash when logging into AppleID
- Fixed a crash when closing a window with tabs that are pending website load
- Fixed early startup issues where OpenURL could send OPEN commands before Wayfarer fully initializes
- Fixed a race condition in curl cache handling
- Fixed a use-after-free when closing a window or loading a session
- Worked around a bug causing some localized strings to be empty
- Download name scheme is stored when a download begins, so subsequent settings changes won't affect it
- Page reload actually skips curl caches now
- Command keys are no longer eaten by webkit
- Loader now catches all ObjC terminal errors
Version 1.7
- Implemented an optional online version check
- Added a Safari/iPad spoofing option
- Tweaked to save settings periodically after edits
- Added Local Storage and Application Cache settings
- Enabled Application Cache
- Worked around servers that compress file downloads
- Fixed a crash when opening host settings from menu
Version 1.6
- Fully WSIWYG printing system
- Spell checking support
- Undo/Redo support
- Networking thread optimized to use less CPU
- Built with optimized OpenSSL for faster HTTPS connections
- Added tons of help bubbles across the app
- Added an option to log console messages to ramdebug
- Added quit requester options to the Settings tab
- Added a setting to popup downloads tab on new downloads
- Tries to use current tab for Downloads/Settings/Bookmarks if empty
- Added an Error column to the download list
- Added a context menu to the download list (copy path/url)
- Download URL updates on redirects
- 'Download' Context menu will now use OpenURL for ftp/mailto links
- Fixed resuming of downloads after error
- Fixed to handle multiselection in the download list
- Improved the Stop/Reload button; Reload forces a full reload (disregarding disk caches)
- Fixed ctrl key handling in the text editor
- Fixed a nasty 5 random-address bytes memtrash at the end of JS Promise handling that was the main source of instability on pages like PayPal, ebay, etc
- Fixed a use-after-free in WTF's file system support
- Fixed a crash when editing quicklink submenus
- Prevents re-opening screen when loading a session
- Disabled a bunch of memtrashing code paths in audio processing support
- Fixed an out-of-mem crash in WebCore's JPEG decoder
- Fixed a crash when adding quicklinks
- Fixed size overflow on >4GB downloads
- Fixed a potential browser crash after a hibernation
Version 1.5
- Wayfarer now starts via a loader app
- Added an early loading splash window, shutdown splash window (via loader)
- Crashes in Wayfarer are caught by the loader which cleans up the windows and as many resources as possible, usually allowing a restart of the application
- Implemented a way to send bugreports directly after a crash, including debug information and the most recently visited URLs
- Added Eruda web inspector integration
- It's now possible to select a session to load on application start or automatically re-store the previous state
- Sessions store the active tab
- Enabled the Intersection Observer in WebCore
- Reduced the number of SQL file writes
- Separate interpolation setting for image links
- Quicklink buttons respect favicon settings, update on favicon changes
- Added a file requester to the downloads path in Settings
- Added quit confirmation requester settings
- Fixed navigating to wayfarer:// links without explicitly doing it from the menu
- Fixed CPU clock detection code
- Fixed a double-start issue where the 2nd instance would not quit
- Fixed a potential crash in favicon code
- Fixed right shift key handling in some hotkeys
- Fixed tab button backgrounds
- Fixed ghost effects after closing tabs on some MUI configurations
Version 1.4
- Fixed an issue where adding a link to bookmarks via menu would try to insert it to a wrong tree node in a Bookmarks tab
- Rolled back some compilation setting tweaks since they were causing issues on some G4 cpus
Version 1.3
- Minor performance improvements, mostly on G5
- Fixed lists in settings displaying no text, sometimes crashing
- Fixed url string background offsets
- Activate an exiting tab instead of adding a new one for downloads/bookmarks/settings
- Fixed tab buttons becoming invisible or corrupt on some configs
- Fixed an issue where adding a link to quick links via menu would display them in a wrong location in the Bookmarks tab
- Fixed quicklink buttons to respect releasing mouse of of button bounds
Version 1.2
- Implemented Quick Links
- Implemented favicons
- Enabled support for WebP images
- Updated libcurl
- Fixed blob: support
- Fixed file name encoding and cookie issues in downloads
- Fixed Bookmarks menus to show more depth levels
- Fixed a crash on exit caused by the password autofill manager
- Fixed a crash on exit in WebCore's fileapi
- Fixed Copy image URL context menu function
Version 1.1
- Implemented Search Engines settings UI
- Implemented a 'Do not ask to save passwords' setting
- Space+Shift does reverse scroll now
- Updated to latest OpenSSL and nghttp2
- Fixed handling of IDN/Unicode chars typed into the URL bar
- Fixed loading of files from the Curl cache, which in some cases resulted in images failing to decode (or decode as text)
- Fixed SCREENTOFRONT
- Fixed the default CSS file load path (caused default radios and checkmarks to be missing on some sites)
- Fixed an issue with sticky border scrollers
- Fixed not to leak the volume name when uploading files straight from the volume root path
- Implemented workarounds for OpenURL callers that don't pass correctly escaped URIs (like YAM)
- Updated the OWB importer
Version 1.0
- Initial public release for MorphOS 3.14