gecko-dev/testing/puppeteer/firefox/docs/index.rst
Henrik Skupin 939d67481a Bug 1265031 - Document the version scheme and release process for Firefox Puppeteer. r=davehunt
MozReview-Commit-ID: AgtZ0VNLkuu

--HG--
extra : rebase_source : b38ace4a197cc98634cfbab035086e1eeb389818
2016-05-18 14:17:44 +02:00

86 lines
2.6 KiB
ReStructuredText

.. py:currentmodule:: firefox_puppeteer
Firefox Puppeteer
=================
`Firefox Puppeteer`_ is a library built on top of the `Marionette Python client`_.
It aims to make automation of Firefox's browser UI simpler. It does **not**
make sense to use Firefox Puppeteer if:
* You are manipulating something other than Firefox (like Firefox OS)
* You are only manipulating elements in content scope (like a webpage)
Roughly speaking, Firefox Puppeteer provides a library to manipulate each
visual section of Firefox's browser UI. For example, there are different
libraries for the tab bar, the navigation bar, etc.
.. _Firefox Puppeteer: http://firefox-puppeteer.readthedocs.io/
.. _Marionette Python client: http://marionette-client.readthedocs.org/
Installation
------------
For end-users Firefox Puppeteer can be easily installed as a `Python package`_
from PyPI. If you want to contribute to the project we propose that you clone
the `mozilla-central`_ repository and run the following commands::
$ cd testing/puppeteer/firefox
$ python setup.py develop
In both cases all necessary files including all dependencies will be installed.
.. _Python package: https://pypi.python.org/pypi/firefox-puppeteer
.. _mozilla-central: https://hg.mozilla.org/mozilla-central
Versioning
----------
Puppeteer versions as regularly released from the Python source code, will follow
a specific versioning schema. It means the major version number will always
be identical with the supported Firefox version. Minor releases - the second part
of the version number - are done throughout the life-cycle of a Firefox version
when Puppeteer itself needs API changes for back-end and front-end modules. The
last part of the version number is the patch level, and is only used for bugfix
releases without any API changes.
Examples:
firefox_puppeteer_45.0.0 - First release for Firefox 45.0 and Firefox 45.xESR
firefox_puppeteer_46.2.0 - Second release for Firefox 46.0 caused by API changes
firefox_puppeteer_47.0.1 - First bugfix release for the new Firefox 47.0 support
Libraries
---------
The following libraries are currently implemented. More will be added in the
future. Each library is available from an instance of the FirefoxTestCase class.
.. toctree::
ui/about_window/window
ui/deck
ui/menu
ui/pageinfo/window
ui/browser/notifications
ui/browser/tabbar
ui/browser/toolbars
ui/browser/window
ui/update_wizard/dialog
ui/windows
api/appinfo
api/keys
api/l10n
api/places
api/prefs
api/security
api/software_update
api/utils
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`