Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Django runserver replacement that reuses its listening socket on reload

Project Description

This is a drop-in replacement for Django’s runserver command for the impatient.

Django’s development server restarts itself whenever it detects a change in any loaded module, which is great. What’s not so great is that during the restart, there is a window of time where, if you’re like me, you’d be hitting Ctrl+R key repeatedly on the browser only to be greeted with ECONNREFUSED because the server is not ready.

Django-pserver solves this problem by reusing the listening socket when it restarts, so you can just hit refresh once and wait (retaining your sanity.)


To use it, simply add pserver to your INSTALLED_APPS, and run runserver as usual.


I’ve tested this on Django 1.2.4 and 1.3, but it could well work with other versions.

Tested on OS X only, but should work on any UNIX variant. It will probably break horribly on Windows.

Release History

This version
History Node


Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
(3.7 kB) Copy SHA256 Hash SHA256
Source None May 14, 2011

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers