Fixed eventloop bug when running on windows

api-breakage
Morty Space 4 years ago
parent 8a8772c523
commit 7a9f31b5ea
  1. 1
      README.md
  2. 2
      azure-pipelines.yml
  3. 2
      src/cryptocom/exchange/__init__.py
  4. 7
      src/cryptocom/exchange/api.py

@ -28,6 +28,7 @@ Exchange original API docs: [https://exchange-docs.crypto.com](https://exchange-
### Changelog
- **0.9.1** - fixed Windows bug with asyncio event loop
- **0.9.0** - updated coins, refactored wallet transactions
- **0.8.1** - fixed coin name generation
- **0.8** - fixed tests with updated coins

@ -29,8 +29,6 @@ strategy:
python.version: '3.8'
Python39:
python.version: '3.9'
Python310:
python.version: '3.10'
steps:
- checkout: self

@ -17,4 +17,4 @@ __all__ = [
'ApiError', 'ApiProvider'
]
__version__ = '0.9'
__version__ = '0.9.1'

@ -1,11 +1,11 @@
import os
import json
import gzip
import time
import hmac
import random
import asyncio
import hashlib
import platform
from urllib.parse import urljoin
@ -33,6 +33,7 @@ class ApiProvider:
self.retries = retries
# NOTE: do not change this, due to crypto.com rate-limits
# TODO: add more strict settings, req/per second or milliseconds
self.semaphore = asyncio.Semaphore(20)
if not auth_required:
@ -44,6 +45,10 @@ class ApiProvider:
if not self.api_key or not self.api_secret:
raise ValueError('Provide api_key and api_secret')
if platform.system() == 'Windows':
asyncio.set_event_loop_policy(
asyncio.WindowsSelectorEventLoopPolicy())
def read_keys_from_env(self):
self.api_key = os.environ.get('CRYPTOCOM_API_KEY', '')
if not self.api_key:

Loading…
Cancel
Save