#34787: The 'runserver' command doesn't work when run from an installed script
on
Windows
-------------------------------------+-------------------------------------
Reporter: Joël Larose | Owner: nobody
Type: Bug | Status: new
Component: Core (Management | Version: 4.2
commands) |
Severity: Normal | Resolution:
Keywords: | Triage Stage:
| Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Joël Larose):
One observation is that the system exits here:
{{{
def run_with_reloader(main_func, *args, **kwargs):
signal.signal(signal.SIGTERM, lambda *args: sys.exit(0))
try:
if os.environ.get(DJANGO_AUTORELOAD_ENV) == "true":
reloader = get_reloader()
logger.info(
"Watching for file changes with %s",
reloader.__class__.__name__
)
start_django(reloader, main_func, *args, **kwargs)
else:
exit_code = restart_with_reloader()
sys.exit(exit_code) # <--- Exits here
except KeyboardInterrupt:
pass
}}}
I added a pdb.set_trace() call in main(), here's a trace that might help:
{{{
(venv) PS C:\Users\jplarose\Projects\django-windows-mvp> djm runserver
> c:\users\jplarose\projects\django-windows-
mvp\django_windows_mvp\manage.py(10)main()
-> os.environ.setdefault('DJANGO_SETTINGS_MODULE',
'django_windows_mvp.settings')
(Pdb) b django/utils/autoreload.py:674
Breakpoint 1 at c:\users\jplarose\projects\django-windows-mvp\venv\lib
\site-packages\django\utils\autoreload.py:674
(Pdb) c
C:\Users\jplarose\Projects\django-windows-mvp\venv\Scripts\python.exe:
Error while finding module specification for '__main__' (ValueError:
__main__.__spec__ is None)
> c:\users\jplarose\projects\django-windows-mvp\venv\lib\site-
packages\django\utils\autoreload.py(674)run_with_reloader()
-> sys.exit(exit_code)
(Pdb) where
<frozen runpy>(198)_run_module_as_main()
<frozen runpy>(88)_run_code()
c:\users\jplarose\projects\django-windows-
mvp\venv\scripts\djm.exe\__main__.py(7)<module>()
-> sys.exit(main())
c:\users\jplarose\projects\django-windows-
mvp\django_windows_mvp\manage.py(19)main()
-> execute_from_command_line(sys.argv)
c:\users\jplarose\projects\django-windows-mvp\venv\lib\site-
packages\django\core\management\__init__.py(442)execute_from_command_line()
-> utility.execute()
c:\users\jplarose\projects\django-windows-mvp\venv\lib\site-
packages\django\core\management\__init__.py(436)execute()
-> self.fetch_command(subcommand).run_from_argv(self.argv)
c:\users\jplarose\projects\django-windows-mvp\venv\lib\site-
packages\django\core\management\base.py(412)run_from_argv()
-> self.execute(*args, **cmd_options)
c:\users\jplarose\projects\django-windows-mvp\venv\lib\site-
packages\django\core\management\commands\runserver.py(74)execute()
-> super().execute(*args, **options)
c:\users\jplarose\projects\django-windows-mvp\venv\lib\site-
packages\django\core\management\base.py(458)execute()
-> output = self.handle(*args, **options)
c:\users\jplarose\projects\django-windows-mvp\venv\lib\site-
packages\django\core\management\commands\runserver.py(111)handle()
-> self.run(**options)
c:\users\jplarose\projects\django-windows-mvp\venv\lib\site-
packages\django\core\management\commands\runserver.py(118)run()
-> autoreload.run_with_reloader(self.inner_run, **options)
> c:\users\jplarose\projects\django-windows-mvp\venv\lib\site-
packages\django\utils\autoreload.py(674)run_with_reloader()
-> sys.exit(exit_code)
(Pdb)
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/34787#comment:5>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/0107018a2f37a07f-96ec97d4-2ff5-4db9-9975-7cb7874947e0-000000%40eu-central-1.amazonses.com.