Skip to content

Commit

Permalink
Update browser support documentation for Firefox (Fixes #13378)
Browse files Browse the repository at this point in the history
  • Loading branch information
alexgibson committed Jul 19, 2023
1 parent 5e7e006 commit 7f1a0d5
Show file tree
Hide file tree
Showing 2 changed files with 86 additions and 20 deletions.
90 changes: 78 additions & 12 deletions docs/browser-support.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,25 +26,91 @@ Some website experiences may require us to deviate from these principles -- imag
marketing campaign page built under timeline pressure to deliver novel functionality to a
particular locale for a short while* -- but those will be exceptions and rare.

Browser Support Matrix (Updated 2022-07-06)
-------------------------------------------
Browser Support Matrix (Updated July 19 2023)
---------------------------------------------

We deliver enhanced CSS & JS to browsers in our browser support matrix (below).
We deliver degraded support to all other user agents, except legacy IE browsers,
which get basic support.
Firefox
~~~~~~~

**The following browsers have enhanced support:**
It is important that website visitors are able to download Firefox on a very broad
range of desktop operating systems. As such, we aim to deliver enhanced CSS & JS to
user agents in our Firefox browser support matrix (below).

* All evergreen browsers (Firefox, Firefox ESR, Chrome, Safari, Edge, Opera, etc.)
.. Note::

As of Firefox 116 (released August 1st 2023), support for Firefox has been ended
on Windows 8.1 and below, as well as on macOS 10.14 and below. Website visitors
on these outdated operating systems now fall under degraded support, and we
offer them to download Firefox ESR instead.

**Enhanced support:**

Windows 11 and above
- All evergreen browsers

- Firefox
- Firefox ESR
- Chrome
- Edge
- Brave
- Opera

Windows 10
- All evergreen browsers

macOS 10.15 and above
- All evergreen browsers
- Safari

Linux
- All evergreen browsers

**Degraded support:**

Windows 10
- Internet Explorer 11

**The following browsers have degraded support:**
Windows 8.1 and below
- Firefox 115
- Chrome 109
- Internet Explorer 10

macOS 10.14 and below
- Firefox 115
- Chrome 114
- Safari 12.1

**Basic support:**

Windows 7
- Internet Explorer 9
- Internet Explorer 8

**Unsupported:**

Windows XP / Vista
- Internet Explorer 7
- Internet Explorer 6

.. Note::

Firefox ended support for Windows XP and Vista in 2017 with Firefox 53. Since then,
we have continued to serve those users Firefox ESR 52 instead. However, since then
support for downloading has been discontinued. The SSL certificates on
download.mozilla.org no longer support TLS 1.0.

Privacy & security products
~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Outdated evergreen browser versions.
* IE11 & IE10.
Browser support for our privacy and security products (such as VPN, Relay, Monitor etc)
is thankfully a simpler story. Since all these product use a Firefox account for
authentication, we can simply follow the `Firefox Ecosystem Platform`_ browser support
documentation.

**The following browsers have basic support:**
The most notable thing here for bedrock is that Internet Explorer 11 does not need to be
supported.

* IE9 and below.
.. _Firefox Ecosystem Platform: https://mozilla.github.io/ecosystem-platform/reference/browser-support

Delivering basic support
------------------------
Expand Down
16 changes: 8 additions & 8 deletions docs/pipeline.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,21 +24,21 @@ Note that a deployment of Bedrock will actually trigger two separate deployments
one serving all of ``mozilla.org`` and another serving certain parts of ``getpocket.com``

Dev
```
~~~
- *Mozorg URL:* https://www-dev.allizom.org/
- *Pocket Marketing pages URL:* https://dev.tekcopteg.com/
- *Bedrock locales:* dev repo
- *Bedrock Git branch:* main, deployed on git push

Staging
```````
~~~~~~~
- *Mozorg URL:* https://www.allizom.org/
- *Pocket Marketing pages URL:* https://www.tekcopteg.com/
- *Bedrock locales:* prod repo
- *Bedrock Git branch:* stage, deployed on git push

Production
``````````
~~~~~~~~~~
- *Mozorg URL:* https://www.mozilla.org/
- *Pocket Marketing pages URL:* https://getpocket.com/
- *Bedrock locales:* prod repo
Expand Down Expand Up @@ -154,7 +154,7 @@ is deployed to each `production`_ deployment.


What Is Currently Deployed?
~~~~~~~~~~~~~~~~~~~~~~~~~~~
---------------------------

You can look at the git log of the ``main`` branch to find the last commit with a date-tag on it (e.g. 2022-05-05):
this commit will be the last one that was deployed to production. You can also use the whatsdeployed.io service to get
Expand All @@ -165,7 +165,7 @@ a nice view of what is actually currently deployed to Dev, Stage, and Prod:


Instance Configuration & Switches
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
---------------------------------

We have a `separate repo <https://github.com/mozmeao/www-config>`_ for configuring our primary instances (dev, stage, and prod).
The `docs for updating configurations <https://mozmeao.github.io/www-config/>`_ in that repo are on their own page,
Expand All @@ -176,15 +176,15 @@ version of the database in use, the git revision of the bedrock code, and how lo
a change to one of these repos and are curious if the changes have made it to production, this is the URL you should check.

Updating Selenium
~~~~~~~~~~~~~~~~~
-----------------

There are several components for Selenium, which are independently versioned. The first is the Python client,
and this can be updated via the `test dependencies`_. The other components are the Selenium versions used in
both SauceLabs and the local Selenium grid. These versions are selected automatically based on the
required OS / Browser configuration, so they should not need to be updated or specified independently.

Adding test runs
~~~~~~~~~~~~~~~~
----------------

Test runs can be added by creating a new job in ``bedrock/.github/workflows/integration_tests.yml``
with the desired variables and pushing that branch to Github.
Expand All @@ -204,7 +204,7 @@ following clause to the matrix:
You can use `Sauce Labs platform configurator`_ to help with the parameter values.

Pushing to the integration tests branch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
---------------------------------------

If you have commit rights to our Github repo (mozilla/bedrock) you can simply push
your branch to the branch named ``run-integration-tests``, and the app will be deployed
Expand Down

0 comments on commit 7f1a0d5

Please sign in to comment.