fixcore-engine 0.1.3__tar.gz → 0.1.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. {fixcore_engine-0.1.3/fixcore_engine.egg-info → fixcore_engine-0.1.4}/PKG-INFO +1 -1
  2. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/transport/initiator.py +6 -8
  3. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4/fixcore_engine.egg-info}/PKG-INFO +1 -1
  4. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/pyproject.toml +1 -1
  5. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/LICENSE +0 -0
  6. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/README.md +0 -0
  7. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/__init__.py +0 -0
  8. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/application.py +0 -0
  9. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/gui.py +0 -0
  10. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/gui_ui/app.js +0 -0
  11. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/gui_ui/fixcore_logo.svg +0 -0
  12. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/gui_ui/index.html +0 -0
  13. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/gui_ui/style.css +0 -0
  14. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/log/__init__.py +0 -0
  15. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/log/base.py +0 -0
  16. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/log/factory.py +0 -0
  17. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/log/file_log.py +0 -0
  18. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/log/screen.py +0 -0
  19. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/message/__init__.py +0 -0
  20. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/message/cracker.py +0 -0
  21. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/message/data_dictionary.py +0 -0
  22. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/message/exceptions.py +0 -0
  23. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/message/field.py +0 -0
  24. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/message/message.py +0 -0
  25. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/session/__init__.py +0 -0
  26. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/session/session.py +0 -0
  27. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/session/session_id.py +0 -0
  28. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/session/session_settings.py +0 -0
  29. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/session/state.py +0 -0
  30. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/store/__init__.py +0 -0
  31. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/store/base.py +0 -0
  32. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/store/factory.py +0 -0
  33. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/store/file_store.py +0 -0
  34. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/store/memory.py +0 -0
  35. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/transport/__init__.py +0 -0
  36. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/transport/acceptor.py +0 -0
  37. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore/transport/framer.py +0 -0
  38. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore_engine.egg-info/SOURCES.txt +0 -0
  39. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore_engine.egg-info/dependency_links.txt +0 -0
  40. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore_engine.egg-info/entry_points.txt +0 -0
  41. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore_engine.egg-info/requires.txt +0 -0
  42. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/fixcore_engine.egg-info/top_level.txt +0 -0
  43. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/setup.cfg +0 -0
  44. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_cracker.py +0 -0
  45. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_data_dictionary.py +0 -0
  46. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_file_log.py +0 -0
  47. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_file_store.py +0 -0
  48. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_framer.py +0 -0
  49. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_integration.py +0 -0
  50. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_message.py +0 -0
  51. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_session.py +0 -0
  52. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_session_id.py +0 -0
  53. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_store.py +0 -0
  54. {fixcore_engine-0.1.3 → fixcore_engine-0.1.4}/tests/test_transport.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fixcore-engine
3
- Version: 0.1.3
3
+ Version: 0.1.4
4
4
  Summary: Pure Python FIX protocol engine
5
5
  Author-email: Aidan Chisholm <aidan.chisholm@gmail.com>
6
6
  License: MIT License
@@ -71,6 +71,8 @@ class SocketInitiator:
71
71
  async def stop(self) -> None:
72
72
  """Signal all connect loops to exit and wait for them to finish."""
73
73
  self._stop_event.set()
74
+ for task in self._tasks:
75
+ task.cancel()
74
76
  if self._tasks:
75
77
  await asyncio.gather(*self._tasks, return_exceptions=True)
76
78
  self._tasks.clear()
@@ -125,10 +127,9 @@ class SocketInitiator:
125
127
  try:
126
128
  while not self._stop_event.is_set():
127
129
  try:
128
- data = await asyncio.wait_for(reader.read(4096), timeout=1.0)
129
- except asyncio.TimeoutError:
130
- continue
131
- except (ConnectionResetError, asyncio.IncompleteReadError):
130
+ data = await reader.read(4096)
131
+ except (ConnectionResetError, asyncio.IncompleteReadError,
132
+ asyncio.CancelledError):
132
133
  break
133
134
  if not data:
134
135
  break
@@ -151,9 +152,6 @@ class SocketInitiator:
151
152
  async def _interruptible_sleep(self, seconds: float) -> None:
152
153
  """Sleep for *seconds* but wake immediately if stop is requested."""
153
154
  try:
154
- await asyncio.wait_for(
155
- asyncio.shield(self._stop_event.wait()),
156
- timeout=seconds,
157
- )
155
+ await asyncio.wait_for(self._stop_event.wait(), timeout=seconds)
158
156
  except asyncio.TimeoutError:
159
157
  pass
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fixcore-engine
3
- Version: 0.1.3
3
+ Version: 0.1.4
4
4
  Summary: Pure Python FIX protocol engine
5
5
  Author-email: Aidan Chisholm <aidan.chisholm@gmail.com>
6
6
  License: MIT License
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "fixcore-engine"
7
- version = "0.1.3"
7
+ version = "0.1.4"
8
8
  description = "Pure Python FIX protocol engine"
9
9
  readme = "README.md"
10
10
  license = { file = "LICENSE" }
File without changes
File without changes
File without changes