Skip to content
This repository has been archived by the owner on Oct 17, 2020. It is now read-only.

en | Upgrading from KeeFox 1.4

Chris Tomlinson edited this page Jun 20, 2015 · 5 revisions

This page is being used for two purposes at the moment, a draft of the full release notes for KeeFox 1.5 (which will be posted on the official site once complete) and a list of things to be aware of and possible solutions to problems that arise during an upgrade from KeeFox 1.4 to 1.5 or higher (which will remain here indefinitely).

If you have any feedback regarding the upgrade to 1.5 Beta, please feel free to edit this page accordingly but unless you're certain the reasoning behind your edit and the scope of affected users is completely clear, please at least include an explanatory note or preferably discuss it in an issue on github or a post on the support forum so I can make sure we get the right balance between explaining potential problems/solutions and actually fixing problems before the final v1.5 release.

Core functionality improvements

To complete a typical fully automated login, KeeFox has three main tasks:

  1. Find all the forms that might be the login form we are looking for
  2. Work out which form to fill in, which KeePass entry to fill into the form and which specific form fields should be filled
  3. Work out how to submit the form

All of those tasks have been overhauled in KeeFox 1.5. In most cases this will be an improvement but there will be a few exceptions, particularly for people that often make use of the advanced KeeFox settings. If you find an existing login no longer works correctly with KeeFox 1.5, the easiest fix is to re-save the login (try an update first but saving a new entry and deleting the old one might be needed in some cases) but the information below will help you find other fixes too.

Better detection of forms

Websites are increasingly using unpredictable ways to create the login forms you see on the page. The new version of KeeFox uses a combination of new techniques to detect more of these forms so you will find that you can fill in even more forms with KeeFox 1.5.

Note that this improvement has removed the need for the previous "Monitor each web page for new forms" option which you might have used before. The setting remains stored in your configuration in case you need to temporarily downgrade to KeeFox 1.4 but you shouldn't worry that it has disappeared from KeeFox 1.5.

Better identification of correct form and field to fill in

KeeFox now considers more information when working out which login to fill into which form. The largest change here is that we can now identify the main address of a website (its domain name).

It might sound strange that this was not what happened before so I'll explain by example. Take the following URLs:

Earlier versions of KeeFox could not be certain that they were all run by the same company so each URL had to be treated as a separate website. KeeFox 1.5 knows that they are all part of google.com and therefore that when you try to log in to a form on any of those pages, you want your google.com login to be used.

It will never be possible to get this right for 100% of websites but if you do find the occasional problematic site, you can try out the new "Minimum URL match accuracy" feature on each KeePass entry to control which entries are filled in on each of the related URLs. [screenshot]

This change might result in a few issues with your existing logins so take a look at the upgrade troubleshooting tips below to see how to fix any problems. I appreciate that some users will be more affected by this change than others but the exact scope is unclear so (especially during beta testing) please provide feedback if there are any particularly painful adjustments you have to make. There is a possibility of developing a mass-editing feature or an automatic settings migration feature built into KeePassRPC but there might not be time unless you do it yourself so any information you can supply will help prioritise that sort of work appropriately. Sorry in advance if your particular set of websites and logins needs a bit of work to migrate to KeeFox 1.5 but I hope you can understand that for 99% of users this more relaxed minimal match threshold is going to be a massive improvement.

Better detection of submit buttons

Some websites use new ways to submit forms. KeeFox can now auto-submit more forms by spotting these new approaches.

HTTP Auth now also affected by entry priorities and accuracy of URL match

Not much to say here?

Improved "Save password" feature including ability to update an existing password

A new streamlined save password prompt will allow you to easily save login data as a new entry or update an existing entry. [screenshot]

Tutorial and uninstallation improvements

I expect/hope that most people reading this are not the target audience for this new feature but you might still come across it during installs onto fresh Firefox profiles or when temporarily disabling KeeFox for testing purposes.

At the moment less than 2% of KeeFox downloads result in a new user the next day so there's obviously a lot of room for improvement in the initial add-on experience. I've therefore developed a new feature to try to help new users that are struggling to get KeeFox setup and to record relevant data that might one day allow me to identify specific areas that can be improved.

I've focussed on these three improvements initially:

  1. A notification directing the user to the getting started tutorial will appear shortly after initial installation (provided they have not already made some progress in the tutorial by that point)
  2. The tutorial itself will be improved to take advantage of basic setup data supplied from KeeFox (so we can tell the user what setup steps need completing rather than just offering a long list of everything that might need to be done) [Visting the getting started tutorial while running KeeFox 1.5 will now reveal the beta of the new version of the tutorial. A few more details will be refined and screenshots added over the next few weeks but any initial feedback is welcome via the support forum or a github issue]
  3. Users that uninstall or disable KeeFox will be given an opportunity to offer feedback about why they are doing so and everyone that submits feedback will be offered a customised suggestion of what they could do to get KeeFox to work better for them if they choose to re-install

Future development is likely to centre around any way to offer assistance before it gets to the point where someone has decided to click uninstall but we need to gather feedback from this initial work before we can offer a high-enough quality experience.

Multi-process support

Enabling support for the new multi-process Firefox has resulted in a fundamental change to the way KeeFox communicates with the websites you visit. The bits of code that read and write forms on the web page are now separated from the bits of code which communicate with KeePass. These two parts of KeeFox can now only communicate via small messages passed between them and there is no guarantee when those messages will be received.

This required such a huge overhaul of all KeeFox code that I took the opportunity to put the pieces back together in a slightly better way, resulting in many of the new features and improvements listed above.

You can read more about the multi-process change in the Multi-what? article on the KeeFox site.

Hundreds of more minor improvements and bug fixes including:

  • Support for multiple password generation profiles
  • Improved context menus (copy password, etc.)
  • Quick option to search only entries for the current website
  • More modern looking notifications
  • Clean uninstallation on Thunderbird no longer requires venturing into about:config to re-enable the built-in password manager

Removed support for Firefox versions < 29

Removed support for a smooth upgrade from KeeFox 1.1 or earlier

If this affects you, please upgrade to KeeFox 1.4.x first to ensure you don't lose any of your preferences.

Common problems after the upgrade:

The improvements to form filling have come at a slight cost - there may be some of your existing logins which no longer work the way you want them to. In a tiny minority of cases, it might not be possible to exactly replicate the old behaviour but in almost all cases, following the advice below should get everything back to normal very quickly.

Problem: A different login is being filled in to the form than before Reason: KeeFox 1.5 can more accurately detect that certain web addresses belong to the same website so you may be seeing more logins for a website available on each page of that website. KeeFox will try to select the login that most closely matches the address of the current page but you may have previously adjusted KeeFox's behaviour by either:

  1. setting a fixed priority on some of the entries for that website
  2. adding a regular expression URL match
  3. storing duplicate entries for related pages (e.g. "google.com" and "www.google.com") - some of which may even contain out of date password information Solution: Depending on how many entries are affected by the problem you should consider these two possible solutions:
  4. Remove the unnecessary priority, regular expression settings or duplicate entries
  5. Change the URL matching mode to "Hostname" or "Exact"

Problem: I'm asked to save a password again even though KeeFox filled it in for me Reason: This happens from time to time (and may not be directly related to the KeeFox upgrade) but the cause is usually that the website has changed something about its login form since you last asked KeeFox to save the password. Solution: Use the new "Update existing entry" feature to overwrite the information KeeFox stores about the login form so that next time you should not be prompted again.

Problem: A different HTTP Auth login is being filled in than before Reason: Similar to the situation with the form filling, this is primarily because KeeFox can now consider more web addresses to be part of the same website but the effect is more pronounced for HTTP Auth dialogs because of both the technical limitations of those dialogs and the fact that we now also consider manually set priorities when deciding which entry should be filled in. Solution: As per the solution for forms.

Problem: KeePass connects to the internet once a month Reason: About once a month KeePassRPC will download the latest information from publicsuffix.org in order to power the new improved login matching system. Solution: If you prevent KeePass from connecting to the internet, KeeFox will still work but it will not be able to identify the correct login to use with the same level of accuracy. You could try manually downloading the relevant file and inserting it to your KeePass profile folder but such complexities are beyond the scope of this guide.

WARNING!

OLD INFORMATION

The information in this Wiki is out of date.

It is only of interest if you are using the old add-on called KeeFox in a very old (insecure) version of Firefox or other browsers based on the old Firefox XUL technology.

Read the manual for Kee and KeeBird instead.

Clone this wiki locally