parent
							
								
									bcf32df44f
								
							
						
					
					
						commit
						41eb29a282
					
				| @ -1,277 +1,282 @@ | ||||
| import abc | ||||
| import asyncio | ||||
| import dataclasses | ||||
| import functools | ||||
| import signal | ||||
| from collections import UserList | ||||
| from enum import Enum, auto | ||||
| from typing import Callable, Coroutine, Dict, List, Optional | ||||
| 
 | ||||
| from loguru import logger | ||||
| 
 | ||||
| from busrtworker.boostrap import RpcBoot | ||||
| from busrtworker.busrt import OP_PUBLISH, Client, Frame, Rpc, serialize | ||||
| from busrtworker.scheduler import ScheduledTaskRunner | ||||
| from busrtworker.tree import RadixTree | ||||
| 
 | ||||
| 
 | ||||
| @dataclasses.dataclass | ||||
| class ConnectionInfo: | ||||
|     name: str = dataclasses.field() | ||||
|     uri: str = dataclasses.field() | ||||
|     client_prefix: str = dataclasses.field() | ||||
|     static: bool = dataclasses.field() | ||||
|     topic: str | None = dataclasses.field(default=None) | ||||
|     init_rpc: bool = dataclasses.field(default=True) | ||||
|     bus: Client = dataclasses.field(default=None, init=False) | ||||
|     rpc: Rpc = dataclasses.field(default=None, init=False) | ||||
|     final_name: str = dataclasses.field(default=None, init=False) | ||||
| 
 | ||||
|     def __getattr__(self, item): | ||||
|         if not self.init_rpc: | ||||
|             raise ValueError('must be init rpc client could call') | ||||
|         return getattr(self.rpc, item) | ||||
| 
 | ||||
|     async def send(self, topic, data=None, decode=True): | ||||
|         bus: Client = self.bus | ||||
|         await bus.send(topic, Frame(serialize(data) if decode else data, tp=OP_PUBLISH)) | ||||
| 
 | ||||
| 
 | ||||
| class Router: | ||||
|     table: dict = {} | ||||
|     tree: RadixTree = RadixTree() | ||||
| 
 | ||||
|     def insert(self, path, handler, dynamic=False): | ||||
|         if not dynamic: | ||||
|             if path in self.table: | ||||
|                 raise ValueError(f'conflict route {path}') | ||||
|             self.table[path] = handler | ||||
|         else: | ||||
|             self.tree.insert(path, handler, ['RPC']) | ||||
| 
 | ||||
|     def get(self, path): | ||||
|         if path in self.table: | ||||
|             return True, self.table[path], {} | ||||
|         return self.tree.get(path, 'RPC') | ||||
| 
 | ||||
| 
 | ||||
| class ServiceEntrypoint: | ||||
|     def __init__(self, connection: ConnectionInfo, app: 'App'): | ||||
|         self.name = connection.name | ||||
|         self.app = app | ||||
|         if self.name not in self.app.callers: | ||||
|             self.app.callers[self.name] = {} | ||||
|         if self.name not in self.app.subscribes: | ||||
|             self.app.subscribes[self.name] = Router() | ||||
| 
 | ||||
|     def on_call(self, method=None, auto_decode=True, raw=False): | ||||
|         def _warp(f): | ||||
|             target = method or (f.func.__name__ if isinstance(f, functools.partial) else f.__name__) | ||||
|             self.app.callers[self.name][target] = (f, auto_decode, asyncio.iscoroutinefunction(f), raw) | ||||
|             return f | ||||
| 
 | ||||
|         return _warp | ||||
| 
 | ||||
|     def subscribe(self, topic, auto_decode=True, raw=False): | ||||
|         assert isinstance(topic, str), 'topic must be str or callable' | ||||
| 
 | ||||
|         def _warp(f): | ||||
|             self.app.subscribes[self.name].insert(topic, (f, auto_decode, asyncio.iscoroutinefunction(f), raw), | ||||
|                                                   '/:' in topic) | ||||
|             return f | ||||
| 
 | ||||
|         return _warp | ||||
| 
 | ||||
| 
 | ||||
| class Freezable(metaclass=abc.ABCMeta): | ||||
|     def __init__(self): | ||||
|         self._frozen = False | ||||
| 
 | ||||
|     @property | ||||
|     def frozen(self) -> bool: | ||||
|         return self._frozen | ||||
| 
 | ||||
|     async def freeze(self): | ||||
|         self._frozen = True | ||||
| 
 | ||||
| 
 | ||||
| class Signal(UserList, asyncio.Event): | ||||
|     """ | ||||
|     Coroutine-based signal implementation tha behaves as an `asyncio.Event`. | ||||
| 
 | ||||
|     To connect a callback to a signal, use any list method. | ||||
| 
 | ||||
|     Signals are fired using the send() coroutine, which takes named | ||||
|     arguments. | ||||
|     """ | ||||
| 
 | ||||
|     def __init__(self, owner: Freezable) -> None: | ||||
|         UserList.__init__(self) | ||||
|         asyncio.Event.__init__(self) | ||||
|         self._owner = owner | ||||
|         self.frozen = False | ||||
| 
 | ||||
|     def __repr__(self): | ||||
|         return "<Signal owner={}, frozen={}, {!r}>".format( | ||||
|             self._owner, self.frozen, list(self) | ||||
|         ) | ||||
| 
 | ||||
|     async def send(self, *args, **kwargs): | ||||
|         """ | ||||
|         Sends data to all registered receivers. | ||||
|         """ | ||||
|         if self.frozen: | ||||
|             raise RuntimeError("Cannot send on frozen signal.") | ||||
| 
 | ||||
|         for receiver in self: | ||||
|             await receiver(*args, **kwargs) | ||||
| 
 | ||||
|         self.frozen = True | ||||
|         await self._owner.freeze() | ||||
|         self.set() | ||||
| 
 | ||||
| 
 | ||||
| async def on_frame_default(app, frame): | ||||
|     logger.opt(lazy=True).debug('{x}', | ||||
|                                 x=lambda: f"default print 'Frame:', {hex(frame.type)}, frame.sender, frame.topic, frame.payload") | ||||
| 
 | ||||
| 
 | ||||
| async def on_call_default(app, event): | ||||
|     logger.opt(lazy=True).debug('{x}', | ||||
|                                 x=lambda: f"default print 'Rpc:', {event.frame.sender}, {event.method}, {event.get_payload()}") | ||||
| 
 | ||||
| 
 | ||||
| def entrypoint(f): | ||||
|     @functools.wraps(f) | ||||
|     def _(*args, **kwargs): | ||||
|         try: | ||||
|             loop = asyncio.get_event_loop() | ||||
|             return loop.run_until_complete(f(*args, **kwargs)) | ||||
|         except KeyboardInterrupt: | ||||
|             pass | ||||
| 
 | ||||
|     return _ | ||||
| 
 | ||||
| 
 | ||||
| class AutoNameEnum(str, Enum): | ||||
|     def _generate_next_value_(  # type: ignore | ||||
|             name: str, start: int, count: int, last_values: List[str] | ||||
|     ) -> str: | ||||
|         return name.lower() | ||||
| 
 | ||||
| 
 | ||||
| class Options(AutoNameEnum): | ||||
|     MAX_CONCURRENCY = auto() | ||||
| 
 | ||||
| 
 | ||||
| class DefaultValues: | ||||
|     RUN_EVERY_MAX_CONCURRENCY = 1 | ||||
| 
 | ||||
| 
 | ||||
| class App(Freezable): | ||||
|     callers: dict[str, callable] = {} | ||||
|     subscribes: dict[str, Router] = {} | ||||
|     connections: Dict[str, ConnectionInfo] = {} | ||||
|     closeable = [] | ||||
|     on_frame_default: callable = on_frame_default | ||||
|     on_call_default: callable = on_call_default | ||||
|     task_runners = [] | ||||
| 
 | ||||
|     def __init__(self): | ||||
|         Freezable.__init__(self) | ||||
|         self.boot = RpcBoot() | ||||
|         self._on_startup: Signal = Signal(self) | ||||
|         self._on_shutdown: Signal = Signal(self) | ||||
|         self._on_startup.append(self.boot.startup) | ||||
|         self._on_shutdown.append(self.boot.shutdown) | ||||
|         signal.signal(signal.SIGINT, self.shutdown) | ||||
|         signal.signal(signal.SIGTERM, self.shutdown) | ||||
| 
 | ||||
|     def registry(self, connection: ConnectionInfo): | ||||
|         if self.frozen: | ||||
|             raise RuntimeError( | ||||
|                 "You shouldn't change the state of a started application" | ||||
|             ) | ||||
|         self.connections[connection.name] = connection | ||||
|         return ServiceEntrypoint(connection, self) | ||||
| 
 | ||||
|     def set_on_frame_default(self, on_frame: callable): | ||||
|         self.on_frame_default = on_frame | ||||
| 
 | ||||
|     def set_on_call_default(self, on_call: callable): | ||||
|         self.on_call_default = on_call | ||||
| 
 | ||||
|     @entrypoint | ||||
|     async def run(self): | ||||
|         if self.frozen: | ||||
|             raise RuntimeError( | ||||
|                 "You shouldn't change the state of a started application" | ||||
|             ) | ||||
|         logger.debug({"event": "Booting App..."}) | ||||
|         await self.startup() | ||||
| 
 | ||||
|         await self._on_shutdown.wait() | ||||
| 
 | ||||
|     async def startup(self): | ||||
|         """ | ||||
|         Causes on_startup signal | ||||
| 
 | ||||
|         Should be called in the event loop along with the request handler. | ||||
|         """ | ||||
|         await self._on_startup.send(self) | ||||
| 
 | ||||
|     def shutdown(self, *args) -> asyncio.Future: | ||||
|         """ | ||||
|         Schedules an on_startup signal | ||||
| 
 | ||||
|         Is called automatically when the application receives | ||||
|         a SIGINT or SIGTERM | ||||
|         """ | ||||
|         logger.debug('do shutdown') | ||||
|         return asyncio.ensure_future(self._on_shutdown.send(self)) | ||||
| 
 | ||||
|     def run_on_startup(self, coro: Callable[["App"], Coroutine]) -> None: | ||||
|         """ | ||||
|         Registers a coroutine to be awaited for during app startup | ||||
|         """ | ||||
|         self._on_startup.append(coro) | ||||
| 
 | ||||
|     def run_on_shutdown(self, coro: Callable[["App"], Coroutine]) -> None: | ||||
|         """ | ||||
|         Registers a coroutine to be awaited for during app shutdown | ||||
|         """ | ||||
|         self._on_shutdown.append(coro) | ||||
| 
 | ||||
|     def __getattr__(self, name): | ||||
|         return self.connections[name] | ||||
| 
 | ||||
|     def run_every(self, seconds: int, options: Optional[Dict] = None): | ||||
|         """ | ||||
|         Registers a coroutine to be called with a given interval | ||||
|         """ | ||||
|         if options is None: | ||||
|             options = {} | ||||
| 
 | ||||
|         max_concurrency = options.get( | ||||
|             Options.MAX_CONCURRENCY, DefaultValues.RUN_EVERY_MAX_CONCURRENCY | ||||
|         ) | ||||
| 
 | ||||
|         def wrapper(task: Callable[..., Coroutine]): | ||||
|             runner = ScheduledTaskRunner( | ||||
|                 seconds=seconds, | ||||
|                 task=task, | ||||
|                 max_concurrency=max_concurrency, | ||||
|             ) | ||||
|             self._on_startup.append(runner.start) | ||||
|             self._on_shutdown.append(runner.stop) | ||||
|             self.task_runners.append(runner) | ||||
| 
 | ||||
|             return task | ||||
| 
 | ||||
|         return wrapper | ||||
| 
 | ||||
|     def rpc_running(self, name): | ||||
|         if connection := self.connections.get(name, None): | ||||
|             if rpc := connection.rpc: | ||||
|                 return rpc.is_connected() | ||||
|         return False | ||||
| import abc | ||||
| import asyncio | ||||
| import dataclasses | ||||
| import functools | ||||
| import signal | ||||
| from collections import UserList | ||||
| from enum import Enum, auto | ||||
| from typing import Callable, Coroutine, Dict, List, Optional | ||||
| from loguru import logger | ||||
| from busrtworker.boostrap import RpcBoot | ||||
| from busrtworker.busrt import OP_PUBLISH, Client, Frame, Rpc, serialize | ||||
| from busrtworker.kink import di | ||||
| from busrtworker.scheduler import ScheduledTaskRunner | ||||
| from busrtworker.tree import RadixTree | ||||
| 
 | ||||
| 
 | ||||
| @dataclasses.dataclass | ||||
| class ConnectionInfo: | ||||
|     name: str = dataclasses.field() | ||||
|     uri: str = dataclasses.field() | ||||
|     client_prefix: str = dataclasses.field() | ||||
|     static: bool = dataclasses.field() | ||||
|     topic: str | None = dataclasses.field(default=None) | ||||
|     init_rpc: bool = dataclasses.field(default=True) | ||||
|     bus: Client = dataclasses.field(default=None, init=False) | ||||
|     rpc: Rpc = dataclasses.field(default=None, init=False) | ||||
|     final_name: str = dataclasses.field(default=None, init=False) | ||||
| 
 | ||||
|     def __getattr__(self, item): | ||||
|         if not self.init_rpc: | ||||
|             raise ValueError('must be init rpc client could call') | ||||
|         return getattr(self.rpc, item) | ||||
| 
 | ||||
|     async def send(self, topic, data=None, decode=True): | ||||
|         bus: Client = self.bus | ||||
|         await bus.send(topic, Frame(serialize(data) if decode else data, tp=OP_PUBLISH)) | ||||
| 
 | ||||
| 
 | ||||
| class Router: | ||||
|     table: dict = {} | ||||
|     tree: RadixTree = RadixTree() | ||||
| 
 | ||||
|     def insert(self, path, handler, dynamic=False): | ||||
|         if not dynamic: | ||||
|             if path in self.table: | ||||
|                 raise ValueError(f'conflict route {path}') | ||||
|             self.table[path] = handler | ||||
|         else: | ||||
|             self.tree.insert(path, handler, ['RPC']) | ||||
| 
 | ||||
|     def get(self, path): | ||||
|         if path in self.table: | ||||
|             return True, self.table[path], {} | ||||
|         return self.tree.get(path, 'RPC') | ||||
| 
 | ||||
| 
 | ||||
| class ServiceEntrypoint: | ||||
|     def __init__(self, connection: ConnectionInfo, app: 'App'): | ||||
|         self.name = connection.name | ||||
|         self.app = app | ||||
|         if self.name not in self.app.callers: | ||||
|             self.app.callers[self.name] = {} | ||||
|         if self.name not in self.app.subscribes: | ||||
|             self.app.subscribes[self.name] = Router() | ||||
| 
 | ||||
|     def on_call(self, method=None, auto_decode: bool = True, raw: bool = False): | ||||
|         def _warp(f): | ||||
|             target = method or (f.func.__name__ if isinstance(f, functools.partial) else f.__name__) | ||||
|             self.app.callers[self.name][target] = (f, auto_decode, asyncio.iscoroutinefunction(f), raw) | ||||
|             return f | ||||
| 
 | ||||
|         return _warp | ||||
| 
 | ||||
|     def subscribe(self, topic: str, auto_decode: bool = True, raw: bool = False): | ||||
|         assert isinstance(topic, str), 'topic must be str' | ||||
| 
 | ||||
|         def _warp(f): | ||||
|             self.app.subscribes[self.name].insert(topic, (f, auto_decode, asyncio.iscoroutinefunction(f), raw), | ||||
|                                                   '/:' in topic) | ||||
|             return f | ||||
| 
 | ||||
|         return _warp | ||||
| 
 | ||||
| 
 | ||||
| class Freezable(metaclass=abc.ABCMeta): | ||||
|     def __init__(self): | ||||
|         self._frozen = False | ||||
| 
 | ||||
|     @property | ||||
|     def frozen(self) -> bool: | ||||
|         return self._frozen | ||||
| 
 | ||||
|     async def freeze(self): | ||||
|         self._frozen = True | ||||
| 
 | ||||
| 
 | ||||
| class Signal(UserList, asyncio.Event): | ||||
|     """ | ||||
|     Coroutine-based signal implementation tha behaves as an `asyncio.Event`. | ||||
| 
 | ||||
|     To connect a callback to a signal, use any list method. | ||||
| 
 | ||||
|     Signals are fired using the send() coroutine, which takes named | ||||
|     arguments. | ||||
|     """ | ||||
| 
 | ||||
|     def __init__(self, owner: Freezable) -> None: | ||||
|         UserList.__init__(self) | ||||
|         asyncio.Event.__init__(self) | ||||
|         self._owner = owner | ||||
|         self.frozen = False | ||||
| 
 | ||||
|     def __repr__(self): | ||||
|         return "<Signal owner={}, frozen={}, {!r}>".format( | ||||
|             self._owner, self.frozen, list(self) | ||||
|         ) | ||||
| 
 | ||||
|     async def send(self, *args, **kwargs): | ||||
|         """ | ||||
|         Sends data to all registered receivers. | ||||
|         """ | ||||
|         if self.frozen: | ||||
|             raise RuntimeError("Cannot send on frozen signal.") | ||||
| 
 | ||||
|         for receiver in self: | ||||
|             await receiver(*args, **kwargs) | ||||
| 
 | ||||
|         self.frozen = True | ||||
|         await self._owner.freeze() | ||||
|         self.set() | ||||
| 
 | ||||
| 
 | ||||
| async def on_frame_default(app, frame): | ||||
|     logger.opt(lazy=True).debug('{x}', | ||||
|                                 x=lambda: f"default print 'Frame:', {hex(frame.type)}, frame.sender, frame.topic, frame.payload") | ||||
| 
 | ||||
| 
 | ||||
| async def on_call_default(app, event): | ||||
|     logger.opt(lazy=True).debug('{x}', | ||||
|                                 x=lambda: f"default print 'Rpc:', {event.frame.sender}, {event.method}, {event.get_payload()}") | ||||
| 
 | ||||
| 
 | ||||
| def entrypoint(f): | ||||
|     @functools.wraps(f) | ||||
|     def _(*args, **kwargs): | ||||
|         try: | ||||
|             loop = asyncio.get_event_loop() | ||||
|             return loop.run_until_complete(f(*args, **kwargs)) | ||||
|         except KeyboardInterrupt: | ||||
|             pass | ||||
| 
 | ||||
|     return _ | ||||
| 
 | ||||
| 
 | ||||
| class AutoNameEnum(str, Enum): | ||||
|     def _generate_next_value_(  # type: ignore | ||||
|             name: str, start: int, count: int, last_values: List[str] | ||||
|     ) -> str: | ||||
|         return name.lower() | ||||
| 
 | ||||
| 
 | ||||
| class Options(AutoNameEnum): | ||||
|     MAX_CONCURRENCY = auto() | ||||
| 
 | ||||
| 
 | ||||
| class DefaultValues: | ||||
|     RUN_EVERY_MAX_CONCURRENCY = 1 | ||||
| 
 | ||||
| 
 | ||||
| class App(Freezable): | ||||
|     callers: dict[str, callable] = {} | ||||
|     subscribes: dict[str, Router] = {} | ||||
|     connections: Dict[str, ConnectionInfo] = {} | ||||
|     closeable = [] | ||||
|     on_frame_default: callable = on_frame_default | ||||
|     on_call_default: callable = on_call_default | ||||
|     task_runners = [] | ||||
| 
 | ||||
|     def __init__(self): | ||||
|         Freezable.__init__(self) | ||||
|         self.boot = RpcBoot() | ||||
|         self._on_startup: Signal = Signal(self) | ||||
|         self._on_shutdown: Signal = Signal(self) | ||||
|         self._on_startup.append(self.boot.startup) | ||||
|         self._on_shutdown.append(self.boot.shutdown) | ||||
|         signal.signal(signal.SIGINT, self.shutdown) | ||||
|         signal.signal(signal.SIGTERM, self.shutdown) | ||||
| 
 | ||||
|     def registry(self, connection: ConnectionInfo): | ||||
|         if self.frozen: | ||||
|             raise RuntimeError( | ||||
|                 "You shouldn't change the state of a started application" | ||||
|             ) | ||||
|         self.connections[connection.name] = connection | ||||
|         return ServiceEntrypoint(connection, self) | ||||
| 
 | ||||
|     def set_on_frame_default(self, on_frame: callable): | ||||
|         self.on_frame_default = on_frame | ||||
| 
 | ||||
|     def set_on_call_default(self, on_call: callable): | ||||
|         self.on_call_default = on_call | ||||
| 
 | ||||
|     @entrypoint | ||||
|     async def run(self): | ||||
|         if self.frozen: | ||||
|             raise RuntimeError( | ||||
|                 "You shouldn't change the state of a started application" | ||||
|             ) | ||||
|         logger.debug({"event": "Booting App..."}) | ||||
|         await self.startup() | ||||
| 
 | ||||
|         await self._on_shutdown.wait() | ||||
| 
 | ||||
|     async def startup(self): | ||||
|         """ | ||||
|         Causes on_startup signal | ||||
| 
 | ||||
|         Should be called in the event loop along with the request handler. | ||||
|         """ | ||||
|         await self._on_startup.send(self) | ||||
| 
 | ||||
|     def shutdown(self, *args) -> asyncio.Future: | ||||
|         """ | ||||
|         Schedules an on_startup signal | ||||
| 
 | ||||
|         Is called automatically when the application receives | ||||
|         a SIGINT or SIGTERM | ||||
|         """ | ||||
|         logger.debug('do shutdown') | ||||
|         return asyncio.ensure_future(self._on_shutdown.send(self)) | ||||
| 
 | ||||
|     def run_on_startup(self, coro: Callable[["App"], Coroutine]) -> None: | ||||
|         """ | ||||
|         Registers a coroutine to be awaited for during app startup | ||||
|         """ | ||||
|         self._on_startup.append(coro) | ||||
| 
 | ||||
|     def run_on_shutdown(self, coro: Callable[["App"], Coroutine]) -> None: | ||||
|         """ | ||||
|         Registers a coroutine to be awaited for during app shutdown | ||||
|         """ | ||||
|         self._on_shutdown.append(coro) | ||||
| 
 | ||||
|     def __getattr__(self, name): | ||||
|         return self.connections[name] | ||||
| 
 | ||||
|     def __getitem__(self, name): | ||||
|         return self.connections[name] | ||||
| 
 | ||||
|     def __setitem__(self, key, value): | ||||
|         di[key] = value | ||||
| 
 | ||||
|     def run_every(self, seconds: int, options: Optional[Dict] = None): | ||||
|         """ | ||||
|         Registers a coroutine to be called with a given interval | ||||
|         """ | ||||
|         if options is None: | ||||
|             options = {} | ||||
| 
 | ||||
|         max_concurrency = options.get( | ||||
|             Options.MAX_CONCURRENCY, DefaultValues.RUN_EVERY_MAX_CONCURRENCY | ||||
|         ) | ||||
| 
 | ||||
|         def wrapper(task: Callable[..., Coroutine]): | ||||
|             runner = ScheduledTaskRunner( | ||||
|                 seconds=seconds, | ||||
|                 task=task, | ||||
|                 max_concurrency=max_concurrency, | ||||
|             ) | ||||
|             self._on_startup.append(runner.start) | ||||
|             self._on_shutdown.append(runner.stop) | ||||
|             self.task_runners.append(runner) | ||||
| 
 | ||||
|             return task | ||||
| 
 | ||||
|         return wrapper | ||||
| 
 | ||||
|     def rpc_running(self, name): | ||||
|         if connection := self.connections.get(name, None): | ||||
|             if rpc := connection.rpc: | ||||
|                 return rpc.is_connected() | ||||
|         return False | ||||
|  | ||||
| @ -1,14 +1,15 @@ | ||||
| import msgpack | ||||
| import zstd | ||||
| 
 | ||||
| 
 | ||||
| def deserialize(data): | ||||
|     if data is None: | ||||
|         return None | ||||
|     return msgpack.unpackb(zstd.decompress(data)) | ||||
| 
 | ||||
| 
 | ||||
| def serialize(data): | ||||
|     if data is None: | ||||
|         data={} | ||||
|     return zstd.compress(msgpack.dumps(data)) | ||||
| import msgpack | ||||
| from cramjam import zstd | ||||
| 
 | ||||
| 
 | ||||
| def deserialize(data): | ||||
|     if data is None: | ||||
|         return None | ||||
|     return msgpack.unpackb(bytes(zstd.decompress(data))) | ||||
| 
 | ||||
| 
 | ||||
| def serialize(data): | ||||
|     if data is None: | ||||
|         data = {} | ||||
|     content = msgpack.dumps(data) | ||||
|     return bytes(zstd.compress(content)) | ||||
|  | ||||
| @ -1,247 +1,219 @@ | ||||
| # This file is automatically @generated by Poetry 1.4.2 and should not be changed by hand. | ||||
| 
 | ||||
| [[package]] | ||||
| name = "colorama" | ||||
| version = "0.4.6" | ||||
| description = "Cross-platform colored terminal text." | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" | ||||
| files = [ | ||||
|     {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, | ||||
|     {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, | ||||
| ] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [[package]] | ||||
| name = "loguru" | ||||
| version = "0.7.0" | ||||
| description = "Python logging made (stupidly) simple" | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = ">=3.5" | ||||
| files = [ | ||||
|     {file = "loguru-0.7.0-py3-none-any.whl", hash = "sha256:b93aa30099fa6860d4727f1b81f8718e965bb96253fa190fab2077aaad6d15d3"}, | ||||
|     {file = "loguru-0.7.0.tar.gz", hash = "sha256:1612053ced6ae84d7959dd7d5e431a0532642237ec21f7fd83ac73fe539e03e1"}, | ||||
| ] | ||||
| 
 | ||||
| [package.dependencies] | ||||
| colorama = {version = ">=0.3.4", markers = "sys_platform == \"win32\""} | ||||
| win32-setctime = {version = ">=1.0.0", markers = "sys_platform == \"win32\""} | ||||
| 
 | ||||
| [package.extras] | ||||
| dev = ["Sphinx (==5.3.0)", "colorama (==0.4.5)", "colorama (==0.4.6)", "freezegun (==1.1.0)", "freezegun (==1.2.2)", "mypy (==v0.910)", "mypy (==v0.971)", "mypy (==v0.990)", "pre-commit (==3.2.1)", "pytest (==6.1.2)", "pytest (==7.2.1)", "pytest-cov (==2.12.1)", "pytest-cov (==4.0.0)", "pytest-mypy-plugins (==1.10.1)", "pytest-mypy-plugins (==1.9.3)", "sphinx-autobuild (==2021.3.14)", "sphinx-rtd-theme (==1.2.0)", "tox (==3.27.1)", "tox (==4.4.6)"] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [[package]] | ||||
| name = "msgpack" | ||||
| version = "1.0.5" | ||||
| description = "MessagePack serializer" | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = "*" | ||||
| files = [ | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:525228efd79bb831cf6830a732e2e80bc1b05436b086d4264814b4b2955b2fa9"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4f8d8b3bf1ff2672567d6b5c725a1b347fe838b912772aa8ae2bf70338d5a198"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cdc793c50be3f01106245a61b739328f7dccc2c648b501e237f0699fe1395b81"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5cb47c21a8a65b165ce29f2bec852790cbc04936f502966768e4aae9fa763cb7"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e42b9594cc3bf4d838d67d6ed62b9e59e201862a25e9a157019e171fbe672dd3"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:55b56a24893105dc52c1253649b60f475f36b3aa0fc66115bffafb624d7cb30b"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:1967f6129fc50a43bfe0951c35acbb729be89a55d849fab7686004da85103f1c"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:20a97bf595a232c3ee6d57ddaadd5453d174a52594bf9c21d10407e2a2d9b3bd"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d25dd59bbbbb996eacf7be6b4ad082ed7eacc4e8f3d2df1ba43822da9bfa122a"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-win32.whl", hash = "sha256:382b2c77589331f2cb80b67cc058c00f225e19827dbc818d700f61513ab47bea"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-win_amd64.whl", hash = "sha256:4867aa2df9e2a5fa5f76d7d5565d25ec76e84c106b55509e78c1ede0f152659a"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9f5ae84c5c8a857ec44dc180a8b0cc08238e021f57abdf51a8182e915e6299f0"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9e6ca5d5699bcd89ae605c150aee83b5321f2115695e741b99618f4856c50898"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5494ea30d517a3576749cad32fa27f7585c65f5f38309c88c6d137877fa28a5a"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ab2f3331cb1b54165976a9d976cb251a83183631c88076613c6c780f0d6e45a"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:28592e20bbb1620848256ebc105fc420436af59515793ed27d5c77a217477705"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fe5c63197c55bce6385d9aee16c4d0641684628f63ace85f73571e65ad1c1e8d"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ed40e926fa2f297e8a653c954b732f125ef97bdd4c889f243182299de27e2aa9"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:b2de4c1c0538dcb7010902a2b97f4e00fc4ddf2c8cda9749af0e594d3b7fa3d7"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:bf22a83f973b50f9d38e55c6aade04c41ddda19b00c4ebc558930d78eecc64ed"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-win32.whl", hash = "sha256:c396e2cc213d12ce017b686e0f53497f94f8ba2b24799c25d913d46c08ec422c"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-win_amd64.whl", hash = "sha256:6c4c68d87497f66f96d50142a2b73b97972130d93677ce930718f68828b382e2"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:a2b031c2e9b9af485d5e3c4520f4220d74f4d222a5b8dc8c1a3ab9448ca79c57"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4f837b93669ce4336e24d08286c38761132bc7ab29782727f8557e1eb21b2080"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1d46dfe3832660f53b13b925d4e0fa1432b00f5f7210eb3ad3bb9a13c6204a6"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:366c9a7b9057e1547f4ad51d8facad8b406bab69c7d72c0eb6f529cf76d4b85f"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:4c075728a1095efd0634a7dccb06204919a2f67d1893b6aa8e00497258bf926c"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:f933bbda5a3ee63b8834179096923b094b76f0c7a73c1cfe8f07ad608c58844b"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:36961b0568c36027c76e2ae3ca1132e35123dcec0706c4b7992683cc26c1320c"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-win32.whl", hash = "sha256:b5ef2f015b95f912c2fcab19c36814963b5463f1fb9049846994b007962743e9"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-win_amd64.whl", hash = "sha256:288e32b47e67f7b171f86b030e527e302c91bd3f40fd9033483f2cacc37f327a"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:137850656634abddfb88236008339fdaba3178f4751b28f270d2ebe77a563b6c"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0c05a4a96585525916b109bb85f8cb6511db1c6f5b9d9cbcbc940dc6b4be944b"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56a62ec00b636583e5cb6ad313bbed36bb7ead5fa3a3e38938503142c72cba4f"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef8108f8dedf204bb7b42994abf93882da1159728a2d4c5e82012edd92c9da9f"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:1835c84d65f46900920b3708f5ba829fb19b1096c1800ad60bae8418652a951d"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e57916ef1bd0fee4f21c4600e9d1da352d8816b52a599c46460e93a6e9f17086"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:17358523b85973e5f242ad74aa4712b7ee560715562554aa2134d96e7aa4cbbf"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-win32.whl", hash = "sha256:cb5aaa8c17760909ec6cb15e744c3ebc2ca8918e727216e79607b7bbce9c8f77"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-win_amd64.whl", hash = "sha256:ab31e908d8424d55601ad7075e471b7d0140d4d3dd3272daf39c5c19d936bd82"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b72d0698f86e8d9ddf9442bdedec15b71df3598199ba33322d9711a19f08145c"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:379026812e49258016dd84ad79ac8446922234d498058ae1d415f04b522d5b2d"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:332360ff25469c346a1c5e47cbe2a725517919892eda5cfaffe6046656f0b7bb"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:476a8fe8fae289fdf273d6d2a6cb6e35b5a58541693e8f9f019bfe990a51e4ba"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9985b214f33311df47e274eb788a5893a761d025e2b92c723ba4c63936b69b1"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:48296af57cdb1d885843afd73c4656be5c76c0c6328db3440c9601a98f303d87"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:addab7e2e1fcc04bd08e4eb631c2a90960c340e40dfc4a5e24d2ff0d5a3b3edb"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:916723458c25dfb77ff07f4c66aed34e47503b2eb3188b3adbec8d8aa6e00f48"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:821c7e677cc6acf0fd3f7ac664c98803827ae6de594a9f99563e48c5a2f27eb0"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-win32.whl", hash = "sha256:1c0f7c47f0087ffda62961d425e4407961a7ffd2aa004c81b9c07d9269512f6e"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-win_amd64.whl", hash = "sha256:bae7de2026cbfe3782c8b78b0db9cbfc5455e079f1937cb0ab8d133496ac55e1"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:20c784e66b613c7f16f632e7b5e8a1651aa5702463d61394671ba07b2fc9e025"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:266fa4202c0eb94d26822d9bfd7af25d1e2c088927fe8de9033d929dd5ba24c5"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:18334484eafc2b1aa47a6d42427da7fa8f2ab3d60b674120bce7a895a0a85bdd"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:57e1f3528bd95cc44684beda696f74d3aaa8a5e58c816214b9046512240ef437"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:586d0d636f9a628ddc6a17bfd45aa5b5efaf1606d2b60fa5d87b8986326e933f"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a740fa0e4087a734455f0fc3abf5e746004c9da72fbd541e9b113013c8dc3282"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:3055b0455e45810820db1f29d900bf39466df96ddca11dfa6d074fa47054376d"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:a61215eac016f391129a013c9e46f3ab308db5f5ec9f25811e811f96962599a8"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:362d9655cd369b08fda06b6657a303eb7172d5279997abe094512e919cf74b11"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-win32.whl", hash = "sha256:ac9dd47af78cae935901a9a500104e2dea2e253207c924cc95de149606dc43cc"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-win_amd64.whl", hash = "sha256:06f5174b5f8ed0ed919da0e62cbd4ffde676a374aba4020034da05fab67b9164"}, | ||||
|     {file = "msgpack-1.0.5.tar.gz", hash = "sha256:c075544284eadc5cddc70f4757331d99dcbc16b2bbd4849d15f8aae4cf36d31c"}, | ||||
| ] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [[package]] | ||||
| name = "win32-setctime" | ||||
| version = "1.1.0" | ||||
| description = "A small Python utility to set file creation time on Windows" | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = ">=3.5" | ||||
| files = [ | ||||
|     {file = "win32_setctime-1.1.0-py3-none-any.whl", hash = "sha256:231db239e959c2fe7eb1d7dc129f11172354f98361c4fa2d6d2d7e278baa8aad"}, | ||||
|     {file = "win32_setctime-1.1.0.tar.gz", hash = "sha256:15cf5750465118d6929ae4de4eb46e8edae9a5634350c01ba582df868e932cb2"}, | ||||
| ] | ||||
| 
 | ||||
| [package.extras] | ||||
| dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [[package]] | ||||
| name = "zstd" | ||||
| version = "1.5.5.1" | ||||
| description = "ZSTD Bindings for Python" | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = "*" | ||||
| files = [ | ||||
|     {file = "zstd-1.5.5.1-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:555779789bc75cd05089c3ba857f45a0a8c4b87d45e5ced02fec77fa8719237a"}, | ||||
|     {file = "zstd-1.5.5.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:86496bd4830cdb7b4b05a9ce6ce2baee87d327ff90845da4ee308452bfbbed4e"}, | ||||
|     {file = "zstd-1.5.5.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:b487c2e67ed42a4e0d47997d209f4456b01b334023083ef61873f79577c84c62"}, | ||||
|     {file = "zstd-1.5.5.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:45ccd45a5b681088fca1a863ca9236ded5112b8011f1d5bf69e908f5eb32023a"}, | ||||
|     {file = "zstd-1.5.5.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:8403fe84207d8b0c7b17bca6c4caad431ac765b1b9b626ad9fae4bb93a64a9d8"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:0ab979c6357b8927f0c025ea2f72f25e15d03ce17a8a6c1789e2d5b108bf39ae"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:98cbee6c1b2fe85f02fd475d885f98363c63bc64eebc249d7eb7469a0ff70283"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9962714b89641301029f3832bdf07c20f60b9e64e39e8d7b6253451a82b54f5c"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f59cc92d71537f8082306f75aa403ddb4a4a1069a39f104525673110e4d23f7"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:569f13d0c926ddafceebce8ac73baddfc2bd9cbbbbc922b6b3073338cc43dae6"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:ba530c44f252016acc6ef906d7d2070c1ad0cfe835c498fdcd37493e4772ac6e"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:8ee3496ed8fff3add6c6e658b207f18d96474c3db0c28ab7a69623380b1a0a8c"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:530d69bea2791cde8afa7fe988f3a37c3ba37015f6a1d5593c0500f089f3090e"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-win32.whl", hash = "sha256:cf179e51f447b6a7ff47e449fcb98fb5fe15aedcc90401697cf7c93dd6e4434e"}, | ||||
|     {file = "zstd-1.5.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:5f5e6e0805d710d7509c8d175a467eb89c631a4142b1a630ceeb8e3e3138d152"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:022f935a8666e08f0fff6204938a84d9fe4fcd8235a205787275933a07a164fb"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a3d15a2d18dac8bcafdde52fdf5d40ecae1f73b7de19b171f42339d2e51346d0"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45b9c67989f50ba63ffa0c50c9eaa037c2d14abacb0813e838ad705135245b4b"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:97da6a842ba7e4acf8bba7c596057143ee39b3c4a467196c2096d460e44accd6"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2dafd492fb8ee4ae04c81ab00f5f137860e7071f611335dd4cdb1c38bd8f11bc"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9ee83e0bcbfd776200b026b3b9e86c6c86b8f414749f58d87c85dcf456b27066"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:ae2fd4bc8ea772a7b5f1acd1cac9e34bb9cd8fcde191f170092fdeea779a3a12"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:edea52a0109f48fd46f4763689d3d356dcafd20ddf6789c559a1bd2e62b40a32"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-win32.whl", hash = "sha256:88410481209520298ec4430e0d1d57e004c45e0b27c3035674fb182ccd2d8b7b"}, | ||||
|     {file = "zstd-1.5.5.1-cp311-cp311-win_amd64.whl", hash = "sha256:dce18aaefbacf8b133367be86beec670baf68c0420bfcca49be08dbdbf933db6"}, | ||||
|     {file = "zstd-1.5.5.1-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:634dc632f7cf87e95dabf74dcf682e3507bd5cb9dd1bcdb81f92a6521aab0bd2"}, | ||||
|     {file = "zstd-1.5.5.1-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:608414eb75ead573891d97a1e529848b8f31749d21a440e80838548a19d8c0e6"}, | ||||
|     {file = "zstd-1.5.5.1-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:384128f7a731e3f45da49976591cec03fc4079e70653df10d9ea43a1d3b49d50"}, | ||||
|     {file = "zstd-1.5.5.1-cp35-cp35m-win32.whl", hash = "sha256:4bce254174ef05cea01021d67e18489d5d08db1168e758b62ecee121572a52a9"}, | ||||
|     {file = "zstd-1.5.5.1-cp35-cp35m-win_amd64.whl", hash = "sha256:3f0ff81232b49d7eb4f4d9e6f92443c9d242c139ad98ffedac0e889568f900ce"}, | ||||
|     {file = "zstd-1.5.5.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:a871df41b801a260cc849c2c76f300ebb9d286c4b7a1fd6ce45fe0c91340b767"}, | ||||
|     {file = "zstd-1.5.5.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:5a53860dbfbea281eb690ce09cae28967cf1df8e6d7560e4a8bf5b9fcb258147"}, | ||||
|     {file = "zstd-1.5.5.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:a37cbc0580fdfd66c8b3ec65f9af00a4a34e9781b54dfb89f04d301dc375c90a"}, | ||||
|     {file = "zstd-1.5.5.1-cp36-cp36m-win32.whl", hash = "sha256:5531b683539ae1f7b2ad23dacee8a73e5d7eaa6702ea8df5a24bd3318647dee1"}, | ||||
|     {file = "zstd-1.5.5.1-cp36-cp36m-win_amd64.whl", hash = "sha256:eeaff418269b41eee8c7971fbba9d32d07d3f6aa26f962a72aff725071096a1b"}, | ||||
|     {file = "zstd-1.5.5.1-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:8bd6a9050de8bbe844447348372ca17d01bc05207619f6a5d448567d111b5cd9"}, | ||||
|     {file = "zstd-1.5.5.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2ece3d20ef357370584f304407fbd1e4ff9c231209320e08a889b8e3725d56e"}, | ||||
|     {file = "zstd-1.5.5.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:687f9e03dc9f9b8803840425bb23bf6bc700888b4860afcf43c4f238102752d2"}, | ||||
|     {file = "zstd-1.5.5.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3a649daac9c8f1b37d29f2b3d0a43f134061659b54877fe4b0da6df2965dc91f"}, | ||||
|     {file = "zstd-1.5.5.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:bddc7e3c3ce31c01fe1edaa7c03c0b9e71eadf4ce1609746d32f86d95a0449e6"}, | ||||
|     {file = "zstd-1.5.5.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:12bf8e04add8bb84f9fe9117f3de6d9394eade6a5a82fe4d6bd95914fc6ef423"}, | ||||
|     {file = "zstd-1.5.5.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:9e6a15fa4d2e65c5902ab2a4e41279ac126cb371ce6c3c75ad5789bb20dd1f54"}, | ||||
|     {file = "zstd-1.5.5.1-cp37-cp37m-win32.whl", hash = "sha256:a1c269243a4321beb948635b544ccbe6390846358ace620fd000ab7099011d9c"}, | ||||
|     {file = "zstd-1.5.5.1-cp37-cp37m-win_amd64.whl", hash = "sha256:91366e36773241cb4b049a32f4495d33dd274df1eea5b55396f5f3984a3de22e"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:d3ce2cb310690994274d133ea7f269dd4b81799fdbce158690556209723d7d4e"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e0c87bfbfa9d852f79c90bcd7426c3ba46cf3285e6984013636d4fc854ba9230"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a89ce6d829d515f272fddb3a87e1a5f32cc0f1a7b0cba24d360c89f4a165b74b"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e05f81f346213b23ed1b12d84fc1f72e65eacd8978e1e88facf185c82bd3d053"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:43ec66c4c3a76351c672c6ef9f0ff3412fca9ede0a56d18dddaf6418a93faef8"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:58e554e91e0d49f4f2b2df390cdd0f64aa9b6fd5f4dcb208c094bfd079b30f3a"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:883c6d3b6f5574e1765ca97f4b6a41b69094a41be56175552faebc0e0e43b65e"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d52b6932cab5419c434bccfea3e5640e755369fc9eeb51e3d17e15bf8e8cb103"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-win32.whl", hash = "sha256:dcaf44270ec88552e969be4dd3359b34aa3065663ccd8168a257c78f150a356c"}, | ||||
|     {file = "zstd-1.5.5.1-cp38-cp38-win_amd64.whl", hash = "sha256:627f12cb7035723c8f3d8d4cefcad6d950ed9cba33fd3eb46bae04ccab479234"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:c0dab132c1a5a7cc838a7c3e4e380ad153b9d7bd1fadafabf6cfeb780b916201"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d4ab0a5dd9a41d3b083304beee7ada40ee36431acbeb75132032f4fe5cf0490a"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9f6e38f496d287020658c6b4cdb5e815ecc6998889bd0f1f9ab0825f2e3d74ef"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e0096c8ee0ed4bfe406bc961019f55552109e19771bfd3eb32d2af56ea27085c"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1a0f1527728c50b6aa8f04b47a07580f0ae13cfc6c6d9c96bb0bdf5259487559"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6a64e420c904063c5c3de53c00ec0993ebc0a48cebbef97dc6c768562c5abab5"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:03444e357b7632c64480a81ce7095242dab9d7f8aed317326563ef6c663263eb"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:88b9a10f80d2b87bf8cc1a1fc20a815ed92b5eefdc15cbe8062021f0b5a26a10"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-win32.whl", hash = "sha256:c91cc1606eb8b3a6fed11faaef4c6e55f1133d70cf0db0c829a2cf9c2ac1dfd9"}, | ||||
|     {file = "zstd-1.5.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:f462e2ebf26dcbfc2c8dddd6b5c56859683f0b77edb8f268e637f7d390a58f74"}, | ||||
|     {file = "zstd-1.5.5.1-pp27-pypy_73-macosx_10_14_x86_64.whl", hash = "sha256:c63f916732e3e309e49ec95e7a0af5d37ff1321f3df2aac10e507bd2b56fceda"}, | ||||
|     {file = "zstd-1.5.5.1-pp27-pypy_73-manylinux1_x86_64.whl", hash = "sha256:50d4850d758bb033df50722cc13ed913b2afcd5385250be4f3ffb79a26b319c3"}, | ||||
|     {file = "zstd-1.5.5.1-pp27-pypy_73-manylinux2010_x86_64.whl", hash = "sha256:0412d666515e78a91ada7e2d78e9dd6b25ddda1b41623b145b99653275c7f3ce"}, | ||||
|     {file = "zstd-1.5.5.1-pp36-pypy36_pp73-macosx_10_14_x86_64.whl", hash = "sha256:0ea91f74869a3cdcb2dde08f8f30ee3da72782c5d1737afed9c703232815864e"}, | ||||
|     {file = "zstd-1.5.5.1-pp36-pypy36_pp73-manylinux1_x86_64.whl", hash = "sha256:477548897dc2b8b595af7bec5f0f55dcba8e9a282335f687cc663b52b171357b"}, | ||||
|     {file = "zstd-1.5.5.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl", hash = "sha256:c518938b57a56001ee04dcf79a432152f5bd431416f3b22819ba959bc6054d89"}, | ||||
|     {file = "zstd-1.5.5.1-pp36-pypy36_pp73-win32.whl", hash = "sha256:894a8fe0228d5e24dc286a8d98eb0ce2883f8e2e57f3b7e7619ebdb67967120a"}, | ||||
|     {file = "zstd-1.5.5.1-pp37-pypy37_pp73-macosx_10_14_x86_64.whl", hash = "sha256:42ec0a4ae9bedd9909fa4f580f3c800469da1b631faeaa94f204e1b66c767fa2"}, | ||||
|     {file = "zstd-1.5.5.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d56dedaa04ab8ecc23492972b12e0bf8529f64c9bceb28c11f43c2369c9768b3"}, | ||||
|     {file = "zstd-1.5.5.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5b060770d796e4c01f5848b345c3cea8a177ab4e7cd95a1963a355042d429e1"}, | ||||
|     {file = "zstd-1.5.5.1-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fea04805ef6e1cb93d6e5d6bbc7a03bc75a5c733fd352d5aaa81109986fdf1ef"}, | ||||
|     {file = "zstd-1.5.5.1-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:405c28a35756e57a434bbd7ed29dc5e6490cd2fc2118cbf78b60eaebd134f5e9"}, | ||||
|     {file = "zstd-1.5.5.1-pp38-pypy38_pp73-macosx_10_14_x86_64.whl", hash = "sha256:c42e630443b01a891277426365a51a2aa630b059ce675992c70c1928d30eccb4"}, | ||||
|     {file = "zstd-1.5.5.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1520d23f24f26cdfbcdb4dc86947446b8f694838bfce728d7fc4b3492397357c"}, | ||||
|     {file = "zstd-1.5.5.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f4730737f63cf802321743ded6acc85e747e7f5587c5ba2e51a760bf009f7de"}, | ||||
|     {file = "zstd-1.5.5.1-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e9f8c014395e89ad7f67ffe873c0fa1d8e9b4dea8b1801d24e8d9ccd8259858d"}, | ||||
|     {file = "zstd-1.5.5.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:5d9ba4f6af0945809bfa3387c6a1208a22937a876521b9ec347e7183d623311b"}, | ||||
|     {file = "zstd-1.5.5.1-pp39-pypy39_pp73-macosx_10_14_x86_64.whl", hash = "sha256:04dfd9f46b0b0b1bc413884fe028b726febcb726d4f66e3cf8afc00c2d9026bf"}, | ||||
|     {file = "zstd-1.5.5.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:af52436a2eb5caa925d95461973984cb34d472a963b6be1c0a9f2dfbafad096f"}, | ||||
|     {file = "zstd-1.5.5.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:610928b888a2e7ae9d2018ffa814859d47ec4ba75f89a1188ab4eb9232636ee5"}, | ||||
|     {file = "zstd-1.5.5.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ee3c9feea99c7f4ff43129a885da056b5aa0cde3f7876bf6397bfb9433f44352"}, | ||||
|     {file = "zstd-1.5.5.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c6ac9768eeb3c6b530db93de2fec9b363776075dc8a00ee4049612ba5397ca8e"}, | ||||
|     {file = "zstd-1.5.5.1.tar.gz", hash = "sha256:1ef980abf0e1e072b028d2d76ef95b476632651c96225cf30b619c6eef625672"}, | ||||
| ] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [metadata] | ||||
| lock-version = "2.0" | ||||
| python-versions = "^3.10" | ||||
| content-hash = "04b38a8ef5153eb24a8822947e6897b5f9c2459eeda498ca54f243cfedb196f5" | ||||
| # This file is automatically @generated by Poetry 1.4.2 and should not be changed by hand. | ||||
| 
 | ||||
| [[package]] | ||||
| name = "colorama" | ||||
| version = "0.4.6" | ||||
| description = "Cross-platform colored terminal text." | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" | ||||
| files = [ | ||||
|     {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, | ||||
|     {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, | ||||
| ] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [[package]] | ||||
| name = "cramjam" | ||||
| version = "2.6.2" | ||||
| description = "Thin Python bindings to de/compression algorithms in Rust" | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = ">=3.7" | ||||
| files = [ | ||||
|     {file = "cramjam-2.6.2-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:b6adc0f2f2d1c4fd0f93ecef036a3217b785737ada3bc7ad4233db6ca98eafff"}, | ||||
|     {file = "cramjam-2.6.2-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:a6df618d5f4b4d09ccde28beb5b1e6806ff88efbfa7d67e47226afa84363db51"}, | ||||
|     {file = "cramjam-2.6.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edc655ec9014d5ebe827d578e03c0ae2839b05fba6dcddf412059e3f7e4a3a68"}, | ||||
|     {file = "cramjam-2.6.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:656505c16ece09d54a98b0128d0ce3e75a09ed27aafa9fc36c6881b736f9740b"}, | ||||
|     {file = "cramjam-2.6.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9928cb6703209c9a5474863973d09ab3c5cfbc10c051acec9af917413f64026b"}, | ||||
|     {file = "cramjam-2.6.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:664a1ae58d735c92551cfbbc09d9398bb218c7e6833b2392fece71af1dcbeedd"}, | ||||
|     {file = "cramjam-2.6.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:76db0782d610644be01a6aabad16d51a5989c58a07b27353b7c10ce1fe8cdfd3"}, | ||||
|     {file = "cramjam-2.6.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a4b9aa1eefb690a16bab8aaa522d6e4595b86a0e4924f062ec261771061434c5"}, | ||||
|     {file = "cramjam-2.6.2-cp310-none-win32.whl", hash = "sha256:a15db0c29278517465eee33bb5a4637930673ead242c98c81e613de0486ed00d"}, | ||||
|     {file = "cramjam-2.6.2-cp310-none-win_amd64.whl", hash = "sha256:a89a48527cf416a7b4fcd97e924fa8784b51ec4c38911c4454663648b4a4914f"}, | ||||
|     {file = "cramjam-2.6.2-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:70c725e90d7beede63e663a335eb8adf2038a5b1a5f5ae32fcfa25cda164b520"}, | ||||
|     {file = "cramjam-2.6.2-cp311-cp311-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:88f847313b6b3c4191eb15f74f3354f126297b7a51773cbfcc6a2917ecdcf40e"}, | ||||
|     {file = "cramjam-2.6.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ddc0776fc98cbd7967a3c243666363eb88e5d32c2e9640b8f59f4f5cd2934161"}, | ||||
|     {file = "cramjam-2.6.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4750df49a08396fbc06cf1fcf4055daa5e009f5e06e7fb5d70b23266f5bb28cc"}, | ||||
|     {file = "cramjam-2.6.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:63ba3affd35c780cd69382b022fade08b1b14e82f45aa86576e10b5520f21ffe"}, | ||||
|     {file = "cramjam-2.6.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f09dbb5cde9d4130677875c68e53568829e00bda3eb85b880190e8c56ba7af73"}, | ||||
|     {file = "cramjam-2.6.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:33d4bd5e280f055da306b0c78c72af4e166018bea3b38c50a44b6264188cfe10"}, | ||||
|     {file = "cramjam-2.6.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1797a1367e9f854be2173e07812a096aec67e0e4891ce3c527d1536fb3023344"}, | ||||
|     {file = "cramjam-2.6.2-cp311-none-win32.whl", hash = "sha256:b772394920b48af69db4b7b3b2e2684524f4b6d73a8e8e595811e2cc9d2fbee5"}, | ||||
|     {file = "cramjam-2.6.2-cp311-none-win_amd64.whl", hash = "sha256:6455273781378befa00d096d9a58bcaee2c34f59057149220dd8edd185627b59"}, | ||||
|     {file = "cramjam-2.6.2-cp37-cp37m-macosx_10_7_x86_64.whl", hash = "sha256:514afdeca432f1b870f4c15c51b2538f841ea36500d8b2b63c437e949a48d737"}, | ||||
|     {file = "cramjam-2.6.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a6a1df30ac4da907499bf9f160ee25947609e94f4c2093c6b1cb63698c61d17"}, | ||||
|     {file = "cramjam-2.6.2-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:201924909735626eee4dcf841e720634ce753c3af30687c20958a0836221f6c2"}, | ||||
|     {file = "cramjam-2.6.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d1d3d73125fa692974ccf0c0af4a444564e52c45b933527d4c047630b8c4b78f"}, | ||||
|     {file = "cramjam-2.6.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:02c0d09552137f07c8ea3681c215ce94e8431b7eaa5f293b747a24e9038c5d5c"}, | ||||
|     {file = "cramjam-2.6.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bd152234396942ca12d755f4dd5ab2e39f478c5900c290e4f9582bcc2290988"}, | ||||
|     {file = "cramjam-2.6.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f45b2a6776637edd5017c5c1c6a167243a8d2250698e10971ce8da015ed43442"}, | ||||
|     {file = "cramjam-2.6.2-cp37-none-win32.whl", hash = "sha256:2313e5353176b8659f9e157cc8ef64d7f6d80d381ae493abba0b6b213a8cb2ea"}, | ||||
|     {file = "cramjam-2.6.2-cp37-none-win_amd64.whl", hash = "sha256:83041d02a9c3f09a41d5687f0a5dd2e5e591c6f5d7ccceba2d4788adf58dccb7"}, | ||||
|     {file = "cramjam-2.6.2-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:489a16df91d10825ed47f95b985f8e353c8c8b4e078f571fd84e38a8ca95284b"}, | ||||
|     {file = "cramjam-2.6.2-cp38-cp38-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:ea42c629046964bcfa9971d0a978fb647d769f726f69ad39a8c6c5dc435616ad"}, | ||||
|     {file = "cramjam-2.6.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7a6b474523eb23d090812ace971ce28297664913b0d9b753f6648c766af7dc7e"}, | ||||
|     {file = "cramjam-2.6.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:54c945fe1ab67bcd9ca90626176ec4fb74354c698e83c992641a5c4834dda675"}, | ||||
|     {file = "cramjam-2.6.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d2256470f96c3ab0aba3b45f62708ea8eb98603f3417d9d1d3bd5cb4140fbf56"}, | ||||
|     {file = "cramjam-2.6.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe176dcb03ec241c48b6af4be800f3e99f6b5be52ea2b660511374be709be926"}, | ||||
|     {file = "cramjam-2.6.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:60db085bff42099c4de9a2a0b10284ab4b1032d356193ada6275d3225dc16b0e"}, | ||||
|     {file = "cramjam-2.6.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6b98fb0ebc565298fab857bc09273c0fb57167a2703c51436f7f423ca62b8009"}, | ||||
|     {file = "cramjam-2.6.2-cp38-none-win32.whl", hash = "sha256:fa5ae1851a9fa93c3d6f1f2051d2a51438479476f2a07dd0f04e47d23ceea708"}, | ||||
|     {file = "cramjam-2.6.2-cp38-none-win_amd64.whl", hash = "sha256:6b78702dbc1a4b1f4da613c63c7be578d418a561025432e1e0400b0274800917"}, | ||||
|     {file = "cramjam-2.6.2-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:29769fbbb56cbada20ad66d0aa268a8f55dcef99053c5c16780394d5d656815a"}, | ||||
|     {file = "cramjam-2.6.2-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:35da290896b2953e3056441b6b42d3576588dddee28ae6a890b03047929ae34d"}, | ||||
|     {file = "cramjam-2.6.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:076ce14ec4bc99b7de72e2da328b350d8e22d50a9a6880e0538863ef65d6d507"}, | ||||
|     {file = "cramjam-2.6.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0cfa188b95fb311892504df236f45029c03d8ac68634a6b5bb66487ee2d43f0e"}, | ||||
|     {file = "cramjam-2.6.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9034e7591fd689f17b5de830026a75f9c1788f0c78416a0845ba4c91cf4e896c"}, | ||||
|     {file = "cramjam-2.6.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c3a55e68ed847b5fd8d151f9998d150d47d689cedbf89c11c0c05db656fd6336"}, | ||||
|     {file = "cramjam-2.6.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b621ce7d92a6620fb1737892b7b00a5911d92f80f0d5b454795ba1cd844e51"}, | ||||
|     {file = "cramjam-2.6.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a9add823575629c026625080b92ff44ba7bb6ade7f661252a07e6b300e1a689b"}, | ||||
|     {file = "cramjam-2.6.2-cp39-none-win32.whl", hash = "sha256:f0c83c643b1fe6a79a938e453c139c73a196182d47915897b2cbadf46531a3a5"}, | ||||
|     {file = "cramjam-2.6.2-cp39-none-win_amd64.whl", hash = "sha256:62c1ecc70be62e9dd5176949f2da6488f1e8981d33fd241a874f2f25f6fed3bf"}, | ||||
|     {file = "cramjam-2.6.2-pp37-pypy37_pp73-macosx_10_7_x86_64.whl", hash = "sha256:4b322f268461e66530bfd851ae7e33eb37829284f6326d831b96eed1fbfee554"}, | ||||
|     {file = "cramjam-2.6.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fa655603b0cf88e029f4d328d10bb6b78866a388c8bda4e5d17b5b644827d8cf"}, | ||||
|     {file = "cramjam-2.6.2-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:797beb5629e814766b6ebbc73625a6f741739ca302ec1bcb12b47e39e8a1e4d7"}, | ||||
|     {file = "cramjam-2.6.2-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:3a798f52a0cf6780f5b5aacc4a2ea06737f12b98762083d88c3e1ac6315260c7"}, | ||||
|     {file = "cramjam-2.6.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:755cdc43d79de9da949be797ee6f773a85cdec493f0339f48d944ebb7cc9342e"}, | ||||
|     {file = "cramjam-2.6.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8bc899d401055d7e54ce0182eda303c80f22c4a3271a01f44c72d51a07c4fed"}, | ||||
|     {file = "cramjam-2.6.2-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:02a07a3e17fab7f1b1cf81c8fd80416bd06ca0a508cd8e379e280dc591641e14"}, | ||||
|     {file = "cramjam-2.6.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:346f4b3c7845ea1c5f0bc4e1c6cfd39153c399e3c03262d4c9e6575edb16c15a"}, | ||||
|     {file = "cramjam-2.6.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a37eab7095c4bd4ae81d5c8c16c8fcf0e5c1c85c732716e2e7d6fdd873fc756"}, | ||||
|     {file = "cramjam-2.6.2.tar.gz", hash = "sha256:1ffdc8d1381b5fee57b33b537e38fa7fd29e8d8f3b544dbab1d71dbfaaec3bef"}, | ||||
| ] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [[package]] | ||||
| name = "loguru" | ||||
| version = "0.7.0" | ||||
| description = "Python logging made (stupidly) simple" | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = ">=3.5" | ||||
| files = [ | ||||
|     {file = "loguru-0.7.0-py3-none-any.whl", hash = "sha256:b93aa30099fa6860d4727f1b81f8718e965bb96253fa190fab2077aaad6d15d3"}, | ||||
|     {file = "loguru-0.7.0.tar.gz", hash = "sha256:1612053ced6ae84d7959dd7d5e431a0532642237ec21f7fd83ac73fe539e03e1"}, | ||||
| ] | ||||
| 
 | ||||
| [package.dependencies] | ||||
| colorama = {version = ">=0.3.4", markers = "sys_platform == \"win32\""} | ||||
| win32-setctime = {version = ">=1.0.0", markers = "sys_platform == \"win32\""} | ||||
| 
 | ||||
| [package.extras] | ||||
| dev = ["Sphinx (==5.3.0)", "colorama (==0.4.5)", "colorama (==0.4.6)", "freezegun (==1.1.0)", "freezegun (==1.2.2)", "mypy (==v0.910)", "mypy (==v0.971)", "mypy (==v0.990)", "pre-commit (==3.2.1)", "pytest (==6.1.2)", "pytest (==7.2.1)", "pytest-cov (==2.12.1)", "pytest-cov (==4.0.0)", "pytest-mypy-plugins (==1.10.1)", "pytest-mypy-plugins (==1.9.3)", "sphinx-autobuild (==2021.3.14)", "sphinx-rtd-theme (==1.2.0)", "tox (==3.27.1)", "tox (==4.4.6)"] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [[package]] | ||||
| name = "msgpack" | ||||
| version = "1.0.5" | ||||
| description = "MessagePack serializer" | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = "*" | ||||
| files = [ | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:525228efd79bb831cf6830a732e2e80bc1b05436b086d4264814b4b2955b2fa9"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4f8d8b3bf1ff2672567d6b5c725a1b347fe838b912772aa8ae2bf70338d5a198"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cdc793c50be3f01106245a61b739328f7dccc2c648b501e237f0699fe1395b81"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5cb47c21a8a65b165ce29f2bec852790cbc04936f502966768e4aae9fa763cb7"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e42b9594cc3bf4d838d67d6ed62b9e59e201862a25e9a157019e171fbe672dd3"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:55b56a24893105dc52c1253649b60f475f36b3aa0fc66115bffafb624d7cb30b"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:1967f6129fc50a43bfe0951c35acbb729be89a55d849fab7686004da85103f1c"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:20a97bf595a232c3ee6d57ddaadd5453d174a52594bf9c21d10407e2a2d9b3bd"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d25dd59bbbbb996eacf7be6b4ad082ed7eacc4e8f3d2df1ba43822da9bfa122a"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-win32.whl", hash = "sha256:382b2c77589331f2cb80b67cc058c00f225e19827dbc818d700f61513ab47bea"}, | ||||
|     {file = "msgpack-1.0.5-cp310-cp310-win_amd64.whl", hash = "sha256:4867aa2df9e2a5fa5f76d7d5565d25ec76e84c106b55509e78c1ede0f152659a"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9f5ae84c5c8a857ec44dc180a8b0cc08238e021f57abdf51a8182e915e6299f0"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9e6ca5d5699bcd89ae605c150aee83b5321f2115695e741b99618f4856c50898"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5494ea30d517a3576749cad32fa27f7585c65f5f38309c88c6d137877fa28a5a"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ab2f3331cb1b54165976a9d976cb251a83183631c88076613c6c780f0d6e45a"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:28592e20bbb1620848256ebc105fc420436af59515793ed27d5c77a217477705"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fe5c63197c55bce6385d9aee16c4d0641684628f63ace85f73571e65ad1c1e8d"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ed40e926fa2f297e8a653c954b732f125ef97bdd4c889f243182299de27e2aa9"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:b2de4c1c0538dcb7010902a2b97f4e00fc4ddf2c8cda9749af0e594d3b7fa3d7"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:bf22a83f973b50f9d38e55c6aade04c41ddda19b00c4ebc558930d78eecc64ed"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-win32.whl", hash = "sha256:c396e2cc213d12ce017b686e0f53497f94f8ba2b24799c25d913d46c08ec422c"}, | ||||
|     {file = "msgpack-1.0.5-cp311-cp311-win_amd64.whl", hash = "sha256:6c4c68d87497f66f96d50142a2b73b97972130d93677ce930718f68828b382e2"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:a2b031c2e9b9af485d5e3c4520f4220d74f4d222a5b8dc8c1a3ab9448ca79c57"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4f837b93669ce4336e24d08286c38761132bc7ab29782727f8557e1eb21b2080"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1d46dfe3832660f53b13b925d4e0fa1432b00f5f7210eb3ad3bb9a13c6204a6"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:366c9a7b9057e1547f4ad51d8facad8b406bab69c7d72c0eb6f529cf76d4b85f"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:4c075728a1095efd0634a7dccb06204919a2f67d1893b6aa8e00497258bf926c"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:f933bbda5a3ee63b8834179096923b094b76f0c7a73c1cfe8f07ad608c58844b"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:36961b0568c36027c76e2ae3ca1132e35123dcec0706c4b7992683cc26c1320c"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-win32.whl", hash = "sha256:b5ef2f015b95f912c2fcab19c36814963b5463f1fb9049846994b007962743e9"}, | ||||
|     {file = "msgpack-1.0.5-cp36-cp36m-win_amd64.whl", hash = "sha256:288e32b47e67f7b171f86b030e527e302c91bd3f40fd9033483f2cacc37f327a"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:137850656634abddfb88236008339fdaba3178f4751b28f270d2ebe77a563b6c"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0c05a4a96585525916b109bb85f8cb6511db1c6f5b9d9cbcbc940dc6b4be944b"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56a62ec00b636583e5cb6ad313bbed36bb7ead5fa3a3e38938503142c72cba4f"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef8108f8dedf204bb7b42994abf93882da1159728a2d4c5e82012edd92c9da9f"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:1835c84d65f46900920b3708f5ba829fb19b1096c1800ad60bae8418652a951d"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e57916ef1bd0fee4f21c4600e9d1da352d8816b52a599c46460e93a6e9f17086"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:17358523b85973e5f242ad74aa4712b7ee560715562554aa2134d96e7aa4cbbf"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-win32.whl", hash = "sha256:cb5aaa8c17760909ec6cb15e744c3ebc2ca8918e727216e79607b7bbce9c8f77"}, | ||||
|     {file = "msgpack-1.0.5-cp37-cp37m-win_amd64.whl", hash = "sha256:ab31e908d8424d55601ad7075e471b7d0140d4d3dd3272daf39c5c19d936bd82"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b72d0698f86e8d9ddf9442bdedec15b71df3598199ba33322d9711a19f08145c"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:379026812e49258016dd84ad79ac8446922234d498058ae1d415f04b522d5b2d"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:332360ff25469c346a1c5e47cbe2a725517919892eda5cfaffe6046656f0b7bb"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:476a8fe8fae289fdf273d6d2a6cb6e35b5a58541693e8f9f019bfe990a51e4ba"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9985b214f33311df47e274eb788a5893a761d025e2b92c723ba4c63936b69b1"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:48296af57cdb1d885843afd73c4656be5c76c0c6328db3440c9601a98f303d87"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:addab7e2e1fcc04bd08e4eb631c2a90960c340e40dfc4a5e24d2ff0d5a3b3edb"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:916723458c25dfb77ff07f4c66aed34e47503b2eb3188b3adbec8d8aa6e00f48"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:821c7e677cc6acf0fd3f7ac664c98803827ae6de594a9f99563e48c5a2f27eb0"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-win32.whl", hash = "sha256:1c0f7c47f0087ffda62961d425e4407961a7ffd2aa004c81b9c07d9269512f6e"}, | ||||
|     {file = "msgpack-1.0.5-cp38-cp38-win_amd64.whl", hash = "sha256:bae7de2026cbfe3782c8b78b0db9cbfc5455e079f1937cb0ab8d133496ac55e1"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:20c784e66b613c7f16f632e7b5e8a1651aa5702463d61394671ba07b2fc9e025"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:266fa4202c0eb94d26822d9bfd7af25d1e2c088927fe8de9033d929dd5ba24c5"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:18334484eafc2b1aa47a6d42427da7fa8f2ab3d60b674120bce7a895a0a85bdd"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:57e1f3528bd95cc44684beda696f74d3aaa8a5e58c816214b9046512240ef437"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:586d0d636f9a628ddc6a17bfd45aa5b5efaf1606d2b60fa5d87b8986326e933f"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a740fa0e4087a734455f0fc3abf5e746004c9da72fbd541e9b113013c8dc3282"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:3055b0455e45810820db1f29d900bf39466df96ddca11dfa6d074fa47054376d"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:a61215eac016f391129a013c9e46f3ab308db5f5ec9f25811e811f96962599a8"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:362d9655cd369b08fda06b6657a303eb7172d5279997abe094512e919cf74b11"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-win32.whl", hash = "sha256:ac9dd47af78cae935901a9a500104e2dea2e253207c924cc95de149606dc43cc"}, | ||||
|     {file = "msgpack-1.0.5-cp39-cp39-win_amd64.whl", hash = "sha256:06f5174b5f8ed0ed919da0e62cbd4ffde676a374aba4020034da05fab67b9164"}, | ||||
|     {file = "msgpack-1.0.5.tar.gz", hash = "sha256:c075544284eadc5cddc70f4757331d99dcbc16b2bbd4849d15f8aae4cf36d31c"}, | ||||
| ] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [[package]] | ||||
| name = "win32-setctime" | ||||
| version = "1.1.0" | ||||
| description = "A small Python utility to set file creation time on Windows" | ||||
| category = "main" | ||||
| optional = false | ||||
| python-versions = ">=3.5" | ||||
| files = [ | ||||
|     {file = "win32_setctime-1.1.0-py3-none-any.whl", hash = "sha256:231db239e959c2fe7eb1d7dc129f11172354f98361c4fa2d6d2d7e278baa8aad"}, | ||||
|     {file = "win32_setctime-1.1.0.tar.gz", hash = "sha256:15cf5750465118d6929ae4de4eb46e8edae9a5634350c01ba582df868e932cb2"}, | ||||
| ] | ||||
| 
 | ||||
| [package.extras] | ||||
| dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] | ||||
| 
 | ||||
| [package.source] | ||||
| type = "legacy" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| reference = "baidu" | ||||
| 
 | ||||
| [metadata] | ||||
| lock-version = "2.0" | ||||
| python-versions = "^3.10" | ||||
| content-hash = "63b9e742f573b151a16afd00410be218a8669e1f0f531c7b747f9f4729e639f8" | ||||
|  | ||||
| @ -1,43 +1,43 @@ | ||||
| [tool.poetry] | ||||
| name = "busrt-worker" | ||||
| version = "0.1.0" | ||||
| description = "busrt-worker is a Python-based async busrt message handle framework" | ||||
| authors = ["JimZhang <zzl22100048@gmail.com>"] | ||||
| readme = "README.md" | ||||
| packages = [{include = "busrt_worker"}] | ||||
| 
 | ||||
| [tool.poetry.dependencies] | ||||
| python = "^3.10" | ||||
| msgpack = "^1.0.5" | ||||
| zstd = "^1.5.5.1" | ||||
| loguru = "^0.7.0" | ||||
| 
 | ||||
| 
 | ||||
| [tool.poetry.group.dev.dependencies] | ||||
| 
 | ||||
| [build-system] | ||||
| requires = ["poetry-core"] | ||||
| build-backend = "poetry.core.masonry.api" | ||||
| 
 | ||||
| 
 | ||||
| [[tool.poetry.source]] | ||||
| name = "baidu" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| default = true | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| [tool.ruff] | ||||
| exclude = [ | ||||
|     "tests", | ||||
| ] | ||||
| line-length = 120 | ||||
| select = [ | ||||
|     "E", | ||||
|     "F", | ||||
|     "W", | ||||
|     "I" | ||||
| ] | ||||
| target-version = "py310" | ||||
| [tool.ruff.isort] | ||||
| [tool.poetry] | ||||
| name = "busrt-worker" | ||||
| version = "0.1.2" | ||||
| description = "busrt-worker is a Python-based async busrt message handle framework" | ||||
| authors = ["JimZhang <zzl22100048@gmail.com>"] | ||||
| repository = "https://git.loom.run/Coder/amqp-worker" | ||||
| readme = "README.md" | ||||
| packages = [{include = "busrtworker"}] | ||||
| keywords = ["busrt", "message", "rpc"] | ||||
| license = "MIT" | ||||
| [tool.poetry.dependencies] | ||||
| python = "^3.10" | ||||
| msgpack = "^1.0.5" | ||||
| loguru = "^0.7.0" | ||||
| cramjam = "^2.6.2" | ||||
| 
 | ||||
| 
 | ||||
| [build-system] | ||||
| requires = ["poetry-core"] | ||||
| build-backend = "poetry.core.masonry.api" | ||||
| 
 | ||||
| 
 | ||||
| [[tool.poetry.source]] | ||||
| name = "baidu" | ||||
| url = "https://mirror.baidu.com/pypi/simple" | ||||
| default = true | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| [tool.ruff] | ||||
| exclude = [ | ||||
|     "tests", | ||||
| ] | ||||
| line-length = 120 | ||||
| select = [ | ||||
|     "E", | ||||
|     "F", | ||||
|     "W", | ||||
|     "I" | ||||
| ] | ||||
| target-version = "py310" | ||||
| [tool.ruff.isort] | ||||
| combine-as-imports = true | ||||
					Loading…
					
					
				
		Reference in New Issue