Version 6 changelog

A read only forum, announcing new versions of Flagfox.
Post Reply
User avatar
Flagfox Developer
Posts: 723
Joined: Wed Oct 03, 2007 9:06 pm
Location: Philadelphia, USA

Version 6 changelog

Post by DaveG » Sun Dec 31, 2017 9:39 am

The current version of Flagfox is available on the Mozilla Add-ons page.
New versions are not available for automatic update until after reviewed and approved by a Mozilla Add-ons editor. View the versions list to see past updates.
If Flagfox currently has beta/experimental versions released to the public for testing, the most recent version(s) will be here.

The file sizes listed below are for the unsigned installers. The signature and Mozilla's less-than-ideal compression make the final file size a bit larger. Some release dates differ from the versions download page due to timezone differences.

Below is an up-to-date list of stable version changes:

Version 6.1.23 — January 26, 2020 — 755 KB
* IPv4 & IPv6 address location database updates for January 2020

Version 6.1.22 — January 2, 2020 — 754 KB
* Minor updates to TLD nationalities map (support for new IDN TLDs)
* Fixed URL for Video Converter action again (now with better I18N)

Version 6.1.21 — December 26, 2019 — 754 KB
* IPv4 & IPv6 address location database updates for December 2019
* Updated URLs for Security Observatory and Video Converter actions

Version 6.1.20 — November 29, 2019 — 751 KB
* IPv4 & IPv6 address location database updates for November 2019

Version 6.1.19 — October 31, 2019 — 748 KB
* IPv4 & IPv6 address location database updates for October 2019

Version 6.1.18 — September 30, 2019 — 745 KB
* IPv4 & IPv6 address location database updates for September 2019

Version 6.1.17 — August 25, 2019 — 743 KB
* IPv4 & IPv6 address location database updates for August 2019

Version 6.1.16 — July 23, 2019 — 740 KB
* IPv4 & IPv6 address location database updates for July 2019
* Updated country names list for North Macedonia name change (en/de/ru)

Version 6.1.15 — June 19, 2019 — 738 KB
* IPv4 & IPv6 address location database updates for June 2019

Version 6.1.14 — May 7, 2019 — 734 KB
* IPv4 & IPv6 address location database updates for May 2019

Version 6.1.13 — April 16, 2019 — 732 KB
* IPv4 & IPv6 address location database updates for April 2019

Version 6.1.12 — March 1, 2019 — 729 KB
* IPv4 & IPv6 address location database updates for March 2019
* Fixed wrong action being deleted if also reordering after deleting
* Fixed favicon toggling forgetting pending deletes' disabled states
* Fixed hover menu open forcing actions list scroll to focused item

Version 6.1.11 — February 15, 2019 — 729 KB
* IPv4 & IPv6 address location database updates for February 2019

Version 6.1.10 — January 2, 2019 — 719 KB
* IPv4 & IPv6 address location database updates for January 2019
* Improved support for IPv4 addresses embedded in IPv6
* Yet more minor code cleanups (incl. one delayed by an AMO bug)

Version 6.1.9 — December 9, 2018 — 718 KB
* IPv4 & IPv6 address location database updates for December 2018
* Improved favicon prefetching to allow for longer timeouts on startup

Version 6.1.8 — November 24, 2018 — 714 KB
* Added forward-compatibility for HTTP/3+ checking
* Added variant of insecure HTTP tooltip tag for FTP
* Fixed action list item selection colors in options under newer Firefox versions
* Reimplemented support for hotkeys using two ctrl/alt/cmd keys (upgraded WebExt API; requires Firefox 63+)
* Reimplemented middle-click on menu item to open in background tab (new WebExt API; requires Firefox 64+)
* Yet more minor code cleanups

Version 6.1.7 — November 4, 2018 — 714 KB
* IPv4 & IPv6 address location database updates for November 2018
* Favicon cache is now cleared after disabling favicons and closing/refreshing options
* Fixed bug that could cause formfield actions to not be disabled when not applicable
* Fixed recent regression that broke formfield action favicons (e.g. Ping)
* More cleanups and optimizations (incl. fixing some slow WebExt API calls)

Version 6.1.6 — October 6, 2018 — 688 KB
* IPv4 & IPv6 address location database updates for October 2018
* Fixed error page and offline mode icons not showing correctly
* More cleanups and optimizations

Version 6.1.5 — September 7, 2018 — 686 KB
* IPv4 & IPv6 address location database updates for September 2018

Version 6.1.4 — September 4, 2018 — 712 KB
* Added timeout for favicon fetching (can now handle errors faster)
* Improved favicon cache to only retry failures after a day or so
* Replaced broken "Check Server Status" default action with "Is It Up?"
* Various code, debug, & L10N cleanups

Version 6.1.3 — August 27, 2018 — 711 KB
* Fixed a bug caused by polyfill for new JS methods for Firefox 60-61 that broke the options page

Version 6.1.2 — August 26, 2018 — 711 KB
* IPv4 & IPv6 address location database updates for August 2018
* Added DNS cache check retries if no IP is found within a minute of startup (for already loaded tabs)
* Created a hack to allow hiding of menus without deletion+recreation (WebExt API can only disable)
* Flagfox menus now hide automatically for all URLs which never show Flagfox icons (e.g. about:newtab)
* Flagfox menus are now generated on first open instead of all at first startup (using new APIs more)
* More cleanups and optimizations

Version 6.1.1 — July 18, 2018 — 706 KB
* Fixed checking/disabling of unavailable actions in menus in some circumstances
* Worked-around WebExt menu API bugs when at "about:" URLs
* Various code cleanups and minor optimizations

Version 6.1.0 — July 8, 2018 — 706 KB
* IPv4 & IPv6 address location database updates for July 2018
* Reimplemented support for fetching IPs from the DNS cache, instead of only requests (new WebExt API)
* Reimplemented support for customizable hotkeys for actions, instead of just one default (new WebExt API)
* Reimplemented action availability check on menu open, instead of all tab changes (new WebExt API)
* Added local caching for all favicons (uses localStorage; clears with cache clear)
* Added throttling to favicon fetching while editing an action's template
* Reimplemented default icon loading for missing favicons in menus
* Added support for importing actions into options from prefs/actions JSON files
* Improved startup to attempt to load icons into existing tabs, where possible
* Rewrote IP/host cache, yet again (having the DNS API makes things way less complex now)
* Added support for all action types in context menus, where now possible (IPs obtainable via DNS cache)
* Changed hotkey pref save format to match new API; old ones from Flagfox 5.2.x will be imported
* Added detection and indication of invalid or existing hotkeys, when setting (not 100%, due to iffy API)
* Added ability to undo a hotkey change without having to cancel config, via escape key
* Switched to PointerEvents where applicable (only minor use)
* Improved opening of new tabs to use openerTabId; now opened next to subject, instead of end of strip
* Support for Tree Style Tabs addon (and similar) is now available again due to openerTabId change
* Shut up some pointless warning messages on startup from manifest.json load
* Various code cleanups/fixes
* Dropped support for Firefox 56-59, as Mozilla only finally added the new APIs used here in Firefox 60
-> This Flagfox version requires Firefox 60+ (which is fortunately an ESR)

Version 6.0.7 — June 30, 2018 — 703 KB
* IPv4 & IPv6 address location database updates for June 2018
* Dropped now-defunct XMarks and URL Parser default actions
* Replaced old URL Parser action with a simple built-in JS action

Version 6.0.6 — May 31, 2018 — 700 KB
* IPv4 & IPv6 address location database updates for May 2018
* Updated Flagfox-Geotool CAPTCHA pass mechanism

Version 6.0.5 — April 30, 2018 — 697 KB
* IPv4 & IPv6 address location database updates for April 2018
* Updated IPDB build system to handle new Maxmind file format
* Updated country names list for Swaziland->eSwatini name change

Version 6.0.4 — March 30, 2018 — 690 KB
* IPv4 & IPv6 address location database updates for March 2018
* Fixed actions import via drag/drop text into options
* Added ability to import from text file via drag/drop into options
* Files are finally now signed by AMO using a non-broken hash (SHA2-256)

Version 6.0.3 — March 3, 2018 — 686 KB
* Shut up a warning message in the browser console
* Tweaked to handle edge-cases involving raw IPs better

Version 6.0.2 — February 28, 2018 — 686 KB
* IPv4 & IPv6 address location database updates for February 2018
* Added ability to handle raw IPs when webRequest API provides no IP
* Minor optimizations
* Minor JS updates to use some newer syntax, where applicable
* Tweaked startup to ensure there's always at least one menu item enabled
* Reverted crossed-out HTTPS tag to "INSECURE HTTP" due to issues on some platforms

Version 6.0.1 — January 30, 2018 — 657 KB
* IPv4 & IPv6 address location database updates for January 2018
* Fixed some caching issues causing IPs to be forgotten in a few cases
* Fixed RTL issues in tooltip and implemented proper support in options
* Fixed bugs related to hotclick configuration in the options page
* Worked-around WebExtension API bug that causes some addon options pages to break in private browsing windows
* Various JS and CSS cleanups

Version 6.0.0 — December 31, 2017 — 677 KB
* IPv4 & IPv6 address location database updates for December 2017
* First pure WebExtension API version of Flagfox; Firefox 57+ support added (min is v56; v57+ highly recommended)
* Ported Flagfox options from XUL window to HTML tab (along with all other dialogs), per WebExt requirement
* Improved IPDB to now run in its own dedicated JS Worker thread
* Started using ES6 promises everywhere (some new uses because it's better; many compelled by WebExt API)
* Faster flag icon updates using new WebExt API (pages loaded/cached prior to install/update must be refreshed)
* Added simple indicator icons+tags for HSTS, HTTP/2, and insecure HTTP to flag icon tooltips
* Changed TLD nationality to always show in tooltips for nation-restricted non-ccTLDs (IDN TLDs require Firefox 57+)
* Added Flagfox actions context menus for elements within a page and background tabs (IP-related stuff NYI)
* Improved keyboard support in the options page
* Added domain names of actions (that have a URL) to their tooltips in the options page
* Added options page support for paste to import and cut/copy to clone, via main menu or hotkey (e.g. ctrl+v/c/x)
* Changed options page to autosave actions JSON to storage rather than wait for tab close
* Fixed some bugs with actions import/drag/drop in options under recent versions of Firefox
* Added Linux support for opening actions in a background window (mostly useless, but nonetheless true)
* Implemented custom locale properties file parsing/loading, because screw WebExtension's bloated I18N
* Implemented universal automatic English fallback for locales (Flagfox 5 had some; Flagfox 6 has it for everything)
* Now stripping redundant manual English fallback strings on build, to save a bit of space for install/load
* Added automatic locale file unload after disuse to reduce memory use when no longer needed
* Significantly improved location/host/ip caching (which is now required, due to WebExt APIs)
* Implemented (partial) replacements for various features Mozilla abandoned with the WebExt transition (e.g. eTLD)
* Removed old grey question mark icon; replaced its last remaining use with the already-used globe icon
* Disabled actions that need a content script on protocols and Mozilla domains blocked by the WebExt API
* Added ability to handle default action favicons on non-standard paths; all should show, now (improvement over 5.x)
* Geotool action hotkey changed from Ctrl+Alt+G to Alt+Shift+G due to the very limited WebExtension hotkey API
* New default action hotclicks: "Check Server Status" on double-click and "Google Cache" on triple-click
* Various default action changes:
- Improved Page Metadata JS action to list everything it can find (with improved formatting)
- Netcraft & IntoDNS switched to HTTPS (only URL Parser & Traceroute remain without HTTPS support)
- Dropped Wave A11Y due to various issues, including over-active use throttling
- Dropped obsolete action, as it became a redirect to the main W3C Validator
- Demoted WOT from default menu to options-available, due to excessive popup ads on use (amongst other issues)
- Added: Is It Up? (alternative status checker), Built With, Mozilla Security Observatory, & Video Converter
* Dropped support for all Firefox/Gecko versions 24-55, which includes all versions of SeaMonkey up to current
(SeaMonkey support may be readded when they have a version that supports WebExtensions sufficiently)
(Unfortunately, Firefox 52 ESR support is also not possible, due to unavailable WebExtension API updates)
-> This Flagfox version supports Firefox 56+ (desktop), however some features require Firefox 57+ to work fully
-> Due to bugs in Mozilla's WebExtension API, this support floor will increase further in future 6.x releases

# Known issues that cannot be fixed due to broken/buggy/badly designed and now mandatory-to-use WebExtension APIs:
- Icon is smaller and squarified, per WebExt API's apparent requirements (API not documented properly)
- Icon menu has default toolbar menu items in it, even if N/A; no way to disable; nightly has some fixes
- Icon menu limited to 6 top-level items, per arbitrary WebExt API limitation; others in auto-submenu
- Icon menu item favicons (if enabled) have no default; WebExt API has no way to set a default/onerror
- All menu generation is done more often than prior versions due to primitive WebExt API (no on-showing event)
- Icon tooltip doesn't have columns or text styling, as the WebExt API here is primitive (plain text only)
- Icon middle-click settings no longer work, due to limited WebExt API (existing settings left alone, but hidden)
- Hotkey customization is no longer available, due to very limited WebExt API (no user-set hotkey support, at all)
- The WebExt notifications API outputs to the OS notifications system, which may get truncated text
- There is no way to select "Don't show this again" for notifications (custom buttons not supported in Firefox)
- Firefox wipes WebExtension data on uninstall, without user notification or prompting (affects *ALL* addons!)

# Known issues that will be addressed in future Flagfox updates:
- The new page element action menus do not yet support actions that use IP addresses (implementation TBD)
- All page notifications for TLD/IP country mismatches have been disabled until I can make notifications better
- Options edit action autocomplete and detailed help popup are disabled (cut for time; reimplementation TBD)
- Options page is kinda ugly, due to having to port XUL to HTML and CSS being a horrible monstrosity
- Some RTL locale display issues (nothing drastic, and probably nothing you haven't seen in other software)

# My initial estimate, months ago, would be that updating Flagfox for the now-mandatory WebExtension API required
by Firefox 57+ was that it would take an annoying few dozen hours. Once I started working on it heavily, I realized
that there were way more problems with the API than advertised, and it is fundamentally different and slower to
work with than all prior "legacy" APIs Mozilla has now banned. That dozens of hours estimate quickly became hundreds
of hours... and I eventually realized that was still underestimating things, and that's not even counting the fact
that I unfortunately got rather sick and unable to work on this significantly for a good two weeks. Flagfox is a
one-person hobby-project, and dear lord, this transition damn-near killed me, and it's still only ready a month and
a half after Firefox 57 was released. In any case, it's ready now... now, I can get some sleep.

Version 5.x changelog is available here.



Post Reply