===================
System Requirements
===================

The Stein release of horizon has the following dependencies.

* Python 2.7 or 3.5
* Django 1.11 or 2.0

  * Django 1.8 to 1.10 are no longer supported since Rocky release.
  * Horizon usually syncs with
    `Django's Roadmap <https://www.djangoproject.com/weblog/2015/jun/25/roadmap/>`__
    and basically supports maintained versions of Django
    as of the feature freeze of each OpenStack release.

* An accessible `keystone <https://docs.openstack.org/keystone/latest/>`_ endpoint

* All other services are optional.
  Horizon supports the following services as of the Stein release.
  If the keystone endpoint for a service is configured,
  horizon detects it and enables its support automatically.

  * `cinder <https://docs.openstack.org/cinder/latest/>`_: Block Storage
  * `glance <https://docs.openstack.org/glance/latest/>`_: Image Management
  * `neutron <https://docs.openstack.org/neutron/latest/>`_: Networking
  * `nova <https://docs.openstack.org/nova/latest/>`_: Compute
  * `swift <https://docs.openstack.org/swift/latest/>`_: Object Storage
  * Horizon also supports many other OpenStack services via plugins. For more
    information, see the :ref:`install-plugin-registry`.

===================
System Requirements
===================

The Stein release of horizon has the following dependencies.

* Python 2.7 or 3.5

  * Python 3.6 support is experimental.
  * Python 3.7 (or later versions if any) support will be considered
    along with the OpenStack community support policy.

* Django 1.11 or 2.0

  * Django 1.8 to 1.10 are no longer supported since Rocky release.
  * Horizon usually syncs with
    `Django's Roadmap <https://www.djangoproject.com/weblog/2015/jun/25/roadmap/>`__
    and supports LTS (long term support) versions of Django
    as of the feature freeze of each OpenStack release.
    Supports for other maintained Django versions are optional and best-effort.

* An accessible `keystone <https://docs.openstack.org/keystone/latest/>`_ endpoint

* All other services are optional.
  Horizon supports the following services as of the Stein release.
  If the keystone endpoint for a service is configured,
  horizon detects it and enables its support automatically.

  * `cinder <https://docs.openstack.org/cinder/latest/>`_: Block Storage
  * `glance <https://docs.openstack.org/glance/latest/>`_: Image Management
  * `neutron <https://docs.openstack.org/neutron/latest/>`_: Networking
  * `nova <https://docs.openstack.org/nova/latest/>`_: Compute
  * `swift <https://docs.openstack.org/swift/latest/>`_: Object Storage
  * Horizon also supports many other OpenStack services via plugins. For more
    information, see the :ref:`install-plugin-registry`.

Document Django and Python support policy
Document Django and Python support policy

As discussed in the Stein PTG at Denver,
we support maintained LTS versions of Django and other maintained
Django versions are optional. For example, upcoming LTS version of
Django 2.2 will be supported. Django 2.1 support will be best-effort.

The policy for Python supported version is documented.
Python 3.6 is now covered by unit tests, so it can be considered
as experimental. Python 3.7 support will be added along with
the community goal.

Change-Id: I1d844b0333b2701adbae7a51033091bff1458313
