home / github / issue_comments

Menu
  • Search all tables
  • GraphQL API

issue_comments: 706756879

This data as json

html_url issue_url id node_id user created_at updated_at author_association body reactions issue performed_via_github_app
https://github.com/simonw/datasette/issues/1015#issuecomment-706756879 https://api.github.com/repos/simonw/datasette/issues/1015 706756879 MDEyOklzc3VlQ29tbWVudDcwNjc1Njg3OQ== 9599 2020-10-11T19:35:03Z 2020-10-11T19:35:03Z OWNER

Since plugins are installed via pip this would require Datasette to be restarted. This StackOverflow thread looks relevant to that: https://stackoverflow.com/questions/11329917/restart-python-script-from-within-itself

This recipe looks promising: ```python import os import sys import psutil import logging

def restart_program(): """Restarts the current program, with file objects and descriptors cleanup """

try:
    p = psutil.Process(os.getpid())
    for handler in p.get_open_files() + p.connections():
        os.close(handler.fd)
except Exception, e:
    logging.error(e)

python = sys.executable
os.execl(python, python, *sys.argv)

`` https://docs.python.org/3/library/os.html#os.execl says aboutos.execl`:

These functions all execute a new program, replacing the current process; they do not return. On Unix, the new executable is loaded into the current process, and will have the same process id as the caller

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
718910318  
Powered by Datasette · Queries took 1.067ms · About: github-to-sqlite