def run_server(bindaddr, env, output_path, verbosity=0, lektor_dev=False,
               ui_lang='en', browse=False, build_flags=None):
    wz_as_main = os.environ.get('WERKZEUG_RUN_MAIN') == 'true'
    in_main_process = not lektor_dev or wz_as_main
    build_flags = process_build_flags(build_flags)

    if in_main_process:
        background_builder = BackgroundBuilder(env, output_path, verbosity,
                                               build_flags)
        background_builder.setDaemon(True)
        background_builder.start()
        env.plugin_controller.emit('server-spawn', bindaddr=bindaddr,
                                   build_flags=build_flags)

    app = WebAdmin(env, output_path=output_path, verbosity=verbosity,
                   debug=lektor_dev, ui_lang=ui_lang,
                   build_flags=build_flags)

    dt = None
    if lektor_dev and not wz_as_main:
        dt = DevTools(env)
        dt.start()

    if browse:
        browse_to_address(bindaddr)

    try:
        return run_simple(bindaddr[0], bindaddr[1], app,
                          use_debugger=True, threaded=True,
                          use_reloader=lektor_dev,
                          request_handler=not lektor_dev
                          and SilentWSGIRequestHandler or WSGIRequestHandler)
    finally:
        if dt is not None:
            dt.stop()
        if in_main_process:
            env.plugin_controller.emit('server-stop')
for a tz-aware type, return an encoded zone
dataset/ETHPy150Open lektor/lektor-archive/lektor/devserver.py/run_server--crossover with--dataset/ETHPy150Open pydata/pandas/pandas/io/pytables.py/_get_tz