Python CGI
This is a fork of the standard library modules cgi and cgitb. They have
been removed from the Python standard libary in Python 3.13 by PEP-594_.
.. _PEP-594: https://peps.python.org/pep-0594/
Installation
Depend upon legacy-cgi in your project. It is recommended to use the marker
python_version >= 3.13, as while the package can install for older Python
versions, it won't have effect with a standard Python installation as the
built-in modules will take precedence.
For example, in a requirements.txt file::
legacy-cgi; python_version >= '3.13'
Or in a PEP-621 pyproject.toml file::
[project]
...
dependencies = [
...,
"legacy-cgi; python_version >= '3.13'",
]
Purpose
The purpose of this fork is to support existing CGI scripts using
these modules. Thus, compatibility is the primary goal.
Contributions are accepted, but should be focused on bug fixes instead
of new features or major refactoring.
New applications should look at the ASGI_ or WSGI_ ecosystems. There's a number
of highly-polished web frameworks available, and it's significantly faster in a
typical deployment given a new Python process does not need created for each
request.
.. _ASGI: https://asgi.readthedocs.io
.. _WSGI: https://wsgi.readthedocs.io
Documentation
See the official documentation for Python 3.12 and earlier for usage:
cgi module_
cgitb module_
.. _cgi module: https://docs.python.org/3.12/library/cgi.html
.. _cgitb module: https://docs.python.org/3.12/library/cgitb.html
The modules are not renamed, so code written for Python 3.12 or earlier should
work without modification with this package installed.