Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Environment:Spotify Luigi Python Runtime

From Leeroopedia


Knowledge Sources
Domains Infrastructure, Pipeline_Framework
Last Updated 2026-02-10 07:00 GMT

Overview

Python 3.8+ runtime environment with core dependencies for running Luigi pipeline framework.

Description

This environment defines the base Python runtime and core library dependencies required to run any Luigi pipeline. Luigi requires Python >= 3.8.0 and < 3.13, with officially supported versions being 3.8, 3.9, 3.10, 3.11, and 3.12. The core dependencies include tornado for the web server and RPC layer, python-dateutil for date parameter handling, tenacity for retry logic, and typing-extensions for type annotation support.

Usage

This environment is required for all Luigi workflows. Every task definition, pipeline execution, and scheduler operation depends on this base Python runtime. It is the foundational prerequisite for all other Luigi environments.

System Requirements

Category Requirement Notes
OS Linux, macOS, Windows Cross-platform; daemon mode requires python-daemon on non-Windows
Python >= 3.8.0, < 3.13 Supported: 3.8, 3.9, 3.10, 3.11, 3.12
Disk Minimal Standard Python installation

Dependencies

System Packages

  • Python 3.8+ interpreter

Python Packages

  • `python-dateutil` >= 2.7.5, < 3
  • `tenacity` >= 8, < 9
  • `tornado` >= 5.0, < 7
  • `typing-extensions` >= 4.12.2
  • `python-daemon` < 2.2.0 (Windows only)
  • `python-daemon` (non-Windows)

Credentials

No credentials required for the base Python runtime.

Quick Install

pip install luigi

Or install from source:

pip install "python-dateutil>=2.7.5,<3" "tenacity>=8,<9" "tornado>=5.0,<7" "typing-extensions>=4.12.2"

Code Evidence

Python version constraint from `pyproject.toml:12`:

requires-python = ">=3.8.0, <3.13"

Core dependencies from `pyproject.toml:13-20`:

dependencies = [
    "python-dateutil>=2.7.5,<3",
    "tenacity>=8,<9",
    "tornado>=5.0,<7",
    "python-daemon<2.2.0; sys_platform == 'win32'",
    "python-daemon; sys_platform != 'win32'",
    "typing-extensions>=4.12.2",
]

Python version classifiers from `pyproject.toml:28-32`:

"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",

Common Errors

Error Message Cause Solution
`ModuleNotFoundError: No module named 'luigi'` Luigi not installed `pip install luigi`
`Python version 3.7 not supported` Python version too old Upgrade to Python >= 3.8
`ImportError: No module named 'daemon'` python-daemon not installed (Linux/macOS) `pip install python-daemon`

Compatibility Notes

  • Windows: The `python-daemon` package version is pinned to < 2.2.0 on Windows due to compatibility issues. Daemon mode (`luigid`) has limited support on Windows.
  • Python 3.13+: Not yet supported. The upper bound is explicitly set to < 3.13.
  • Tornado: Versions 5.x and 6.x are supported. Tornado 7+ is not yet compatible.

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment