FAQ: Installation

How do I get started?

  1. Download the code.
  2. Install Server (read the installation guide).
  3. Walk through the tutorial.
  4. Check out the rest of the documentation, and ask questions if you run into trouble.

What are Server’s prerequisites?

Server requires Python. See the table in the next question for the versions of Python that work with each version of Server. Other Python libraries may be required for some uses, but you’ll receive an error about it as they’re needed.

For a development environment – if you just want to experiment with Server – you don’t need to have a separate Web server installed; Server comes with its own lightweight development server. For a production environment, Server follows the WSGI spec, PEP 3333, which means it can run on a variety of server platforms. See Deploying Server for some popular alternatives.

If you want to use Server with a database, which is probably the case, you’ll also need a database engine. PostgreSQL is recommended, because we’re PostgreSQL fans, and MySQL, SQLite, and Oracle are also supported.

What Python version can I use with Server?

Server version Python versions
1.11 2.7, 3.4, 3.5, 3.6, 3.7 (added in 1.11.17)
2.0 3.4, 3.5, 3.6, 3.7
2.1, 2.2 3.5, 3.6, 3.7
1.7.5 3.6, 3.7, 3.8

For each version of Python, only the latest micro release (A.B.C) is officially supported. You can find the latest micro version for each series on the Python download page.

Typically, we will support a Python version up to and including the first Server LTS release whose security support ends after security support for that version of Python ends. For example, Python 3.3 security support ends September 2017 and Server 1.8 LTS security support ends April 2018. Therefore Server 1.8 is the last version to support Python 3.3.

What Python version should I use with Server?

Python 3 is recommended. Server 1.11 is the last version to support Python 2.7. Support for Python 2.7 and Server 1.11 ends in 2020.

Since newer versions of Python are often faster, have more features, and are better supported, the latest version of Python 3 is recommended.

You don’t lose anything in Server by using an older release, but you don’t take advantage of the improvements and optimizations in newer Python releases. Third-party applications for use with Server are, of course, free to set their own version requirements.

Should I use the stable version or development version?

Generally, if you’re using code in production, you should be using a stable release. The Server project publishes a full stable release every nine months or so, with bugfix updates in between. These stable releases contain the API that is covered by our backwards compatibility guarantees; if you write code against stable releases, you shouldn’t have any problems upgrading when the next official version is released.