venv
This commit is contained in:
94
.venv/lib/python3.12/site-packages/zmq/__init__.py
Normal file
94
.venv/lib/python3.12/site-packages/zmq/__init__.py
Normal file
@@ -0,0 +1,94 @@
|
||||
"""Python bindings for 0MQ"""
|
||||
|
||||
# Copyright (C) PyZMQ Developers
|
||||
# Distributed under the terms of the Modified BSD License.
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
import sys
|
||||
from contextlib import contextmanager
|
||||
|
||||
|
||||
@contextmanager
|
||||
def _libs_on_path():
|
||||
"""context manager for libs directory on $PATH
|
||||
|
||||
Works around mysterious issue where os.add_dll_directory
|
||||
does not resolve imports (conda-forge Python >= 3.8)
|
||||
"""
|
||||
|
||||
if not sys.platform.startswith("win"):
|
||||
yield
|
||||
return
|
||||
|
||||
libs_dir = os.path.abspath(
|
||||
os.path.join(
|
||||
os.path.dirname(__file__),
|
||||
os.pardir,
|
||||
"pyzmq.libs",
|
||||
)
|
||||
)
|
||||
if not os.path.exists(libs_dir):
|
||||
# no bundled libs
|
||||
yield
|
||||
return
|
||||
|
||||
path_before = os.environ.get("PATH")
|
||||
try:
|
||||
os.environ["PATH"] = os.pathsep.join([path_before or "", libs_dir])
|
||||
yield
|
||||
finally:
|
||||
if path_before is None:
|
||||
os.environ.pop("PATH")
|
||||
else:
|
||||
os.environ["PATH"] = path_before
|
||||
|
||||
|
||||
# zmq top-level imports
|
||||
|
||||
# workaround for Windows
|
||||
with _libs_on_path():
|
||||
from zmq import backend
|
||||
|
||||
from . import constants # noqa
|
||||
from .constants import * # noqa
|
||||
from zmq.backend import * # noqa
|
||||
from zmq import sugar
|
||||
from zmq.sugar import * # noqa
|
||||
|
||||
|
||||
def get_includes():
|
||||
"""Return a list of directories to include for linking against pyzmq with cython."""
|
||||
from os.path import abspath, dirname, exists, join, pardir
|
||||
|
||||
base = dirname(__file__)
|
||||
parent = abspath(join(base, pardir))
|
||||
includes = [parent] + [join(parent, base, subdir) for subdir in ('utils',)]
|
||||
if exists(join(parent, base, 'include')):
|
||||
includes.append(join(parent, base, 'include'))
|
||||
return includes
|
||||
|
||||
|
||||
def get_library_dirs():
|
||||
"""Return a list of directories used to link against pyzmq's bundled libzmq."""
|
||||
from os.path import abspath, dirname, join, pardir
|
||||
|
||||
base = dirname(__file__)
|
||||
parent = abspath(join(base, pardir))
|
||||
return [join(parent, base)]
|
||||
|
||||
|
||||
COPY_THRESHOLD = 65536
|
||||
DRAFT_API = backend.has("draft")
|
||||
|
||||
__all__ = (
|
||||
[
|
||||
'get_includes',
|
||||
'COPY_THRESHOLD',
|
||||
'DRAFT_API',
|
||||
]
|
||||
+ constants.__all__
|
||||
+ sugar.__all__
|
||||
+ backend.__all__
|
||||
)
|
||||
Reference in New Issue
Block a user