Closed Bug 1453091 Opened 6 years ago Closed 6 years ago

Prevent geckodriver from connecting to unsupported Firefox version

Categories

(Testing :: geckodriver, enhancement, P3)

enhancement

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1481444

People

(Reporter: ato, Unassigned)

References

(Blocks 1 open bug)

Details

When you attempt to use geckodriver with an unsupported Firefox
version, you are either rewarded with a long timeout or a connection
where nothing works.  There is no warning or functionality in place
to protect/prevent you from connecting to a known-incompatible
Firefox version.

At the time of writing the minimum supported Firefox version is 55
(although in all likelihood whimboo will bump this to 57 soon), and
we have a rough idea of which Firefox versions we pretend to support
even if we don’t do any exhaustive testing.  “Support” for earlier
Firefoxen is today done at best-effort.

We already use mozversion to match the Firefox version number for
browserVersion capability matching.  We could use the same technique
for determining if geckodriver is unusable with a given Firefox
binary.  I would propose it only goes downwards, e.g. anything
before version X would be rejected but there would be no protection
of attempting to connect to any newer version.
As I understand it the version parsing that mozversion does of
Firefox’ application.ini is not perfect.  I don’t remember the
details, so could you please tell us some more?

Can we use mozversion for this sort of check?
Flags: needinfo?(james)
Priority: -- → P3
I think the parsing is OK, but the file doesn't necessarily exist (or we can't necessarily find it e.g. if the firefox binary is a wrapper script). So for the capabilities check we also check the output of `firefox --version`.

One implementation here would be to reuse the capabilites code entirely by checking the value set against some minimum and setting a minimum value if none is supplied. I don't recall if we got around to supporting >= comparisons there though.
Flags: needinfo?(james)
That seems like a really fine idea, actually.
You had some concerns here when we discussed this in person.
Flags: needinfo?(hskupin)
The only concern was that if there is a security release of Firefox which would break our compatibility with that version. But I wouldn't count that as something which happens often, or maybe at all. So maybe we just ignore that.
Flags: needinfo?(hskupin)
Blocks: 1489130
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.