From 91d6a1b1e32d79b0ad4b2b884a189d9d9d2ca476 Mon Sep 17 00:00:00 2001 From: cr7yash Date: Sun, 5 Apr 2026 01:07:36 -0700 Subject: [PATCH] Move livereload import inside docserve() This fixes 'invoke setup' failing in fresh virtual environments. The top-level import of livereload caused tasks.py to fail on import before any task could execute, since livereload is a dev dependency only installed by pdm during the setup process. --- RELEASE.md | 3 +++ tasks.py | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 RELEASE.md diff --git a/RELEASE.md b/RELEASE.md new file mode 100644 index 00000000..fbbee49f --- /dev/null +++ b/RELEASE.md @@ -0,0 +1,3 @@ +Release type: patch + +Move livereload import inside docserve() to fix invoke setup in fresh environments diff --git a/tasks.py b/tasks.py index a879d2bd..a1e0ac78 100644 --- a/tasks.py +++ b/tasks.py @@ -3,7 +3,6 @@ from pathlib import Path from shutil import which from invoke import task -from livereload import Server PKG_NAME = "pelican" PKG_PATH = Path(PKG_NAME) @@ -30,6 +29,8 @@ def docbuild(c): @task(docbuild) def docserve(c): """Serve docs at http://localhost:$DOCS_PORT/ (default port is 8000)""" + from livereload import Server # noqa: PLC0415 + server = Server() server.watch("docs/conf.py", lambda: docbuild(c)) server.watch("CONTRIBUTING.rst", lambda: docbuild(c))