oep-client-python 0.0.19__tar.gz → 0.0.20__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 (52) hide show
  1. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/CHANGELOG.md +4 -0
  2. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/PKG-INFO +1 -1
  3. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/pyproject.toml +1 -1
  4. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/__init__.py +1 -1
  5. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/console.py +5 -3
  6. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/.gitignore +0 -0
  7. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/LICENSE +0 -0
  8. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/README.ja.md +0 -0
  9. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/README.md +0 -0
  10. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/__main__.py +0 -0
  11. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/arm.py +0 -0
  12. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/capture.py +0 -0
  13. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/catalog.py +0 -0
  14. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/ch32_flash.py +0 -0
  15. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/cobs.py +0 -0
  16. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/config.py +0 -0
  17. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/core.py +0 -0
  18. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/decode.py +0 -0
  19. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/dump.py +0 -0
  20. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/endpoint.py +0 -0
  21. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/fake.py +0 -0
  22. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/fake_capture.py +0 -0
  23. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/fake_serial.py +0 -0
  24. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/fake_serve.py +0 -0
  25. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/fixture.py +0 -0
  26. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/frames.py +0 -0
  27. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/hid_stream.py +0 -0
  28. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/host.py +0 -0
  29. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/interfaces.py +0 -0
  30. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/link.py +0 -0
  31. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/message.py +0 -0
  32. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/names.py +0 -0
  33. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/registry.py +0 -0
  34. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/riscv.py +0 -0
  35. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/rp2350.py +0 -0
  36. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/uiapduino.py +0 -0
  37. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/src/oep_client/usb_stream.py +0 -0
  38. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_capabilities.py +0 -0
  39. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_capture.py +0 -0
  40. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_cobs.py +0 -0
  41. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_config.py +0 -0
  42. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_fake_capture.py +0 -0
  43. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_fake_spec.py +0 -0
  44. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_fixture_targets.py +0 -0
  45. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_flash_console.py +0 -0
  46. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_hid_stream.py +0 -0
  47. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_interfaces.py +0 -0
  48. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_link_host.py +0 -0
  49. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_link_serial.py +0 -0
  50. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_session.py +0 -0
  51. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_target_parts.py +0 -0
  52. {oep_client_python-0.0.19 → oep_client_python-0.0.20}/tests/test_usb_stream.py +0 -0
@@ -2,6 +2,10 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.0.20
6
+ - (EN) A console write's chunk fits the probe's frame: frame - 12 - the stream's prefix (the console's stream u16; none on a fixture UART). It was frame - 13 for both, one byte over on a console with 64-byte frames. Found porting it to oep-client-js.
7
+ - (JA) console の書き込みの 1 回の大きさが probe のフレームに収まるようにした: frame − 12 − stream の前置き(console は stream の u16、fixture UART は無し)。両方とも frame − 13 だったので、64 byte のフレームの console で 1 byte はみ出していた。oep-client-js に移すときに見つかった。
8
+
5
9
  ## 0.0.19
6
10
  - (EN) The pre-freeze decisions (oep-spec docs/v1-freeze-decisions.ja.md), in the fake and the client at once:
7
11
  - `oep.fixture.capture` is `oep.fixture.logic`; the I2C / SPI targets are the standard `oep.fixture.i2c-target` / `spi-target` (`fixture.I2cTarget` / `SpiTarget`; `esp32_targets` is gone). Their status is separate fields (`I2cStatus(state=, mode=, armed=, queued=, …)`); `read_hw` is gone, `set_stretch` is `stretch` (op 0x07).
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: oep-client-python
3
- Version: 0.0.19
3
+ Version: 0.0.20
4
4
  Summary: Open Embedded Probe (OEP) v1 host: serial / USB / TCP transports, the session rules, the standard interfaces, and a fake probe
5
5
  Project-URL: Homepage, https://github.com/Open-Embedded-Probe/oep-client-python
6
6
  Project-URL: Repository, https://github.com/Open-Embedded-Probe/oep-client-python
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "oep-client-python"
7
- version = "0.0.19"
7
+ version = "0.0.20"
8
8
  description = "Open Embedded Probe (OEP) v1 host: serial / USB / TCP transports, the session rules, the standard interfaces, and a fake probe"
9
9
  readme = "README.md"
10
10
  license = "MIT"
@@ -2,4 +2,4 @@
2
2
 
3
3
  __all__ = ["__version__"]
4
4
 
5
- __version__ = "0.0.19"
5
+ __version__ = "0.0.20"
@@ -136,10 +136,12 @@ class StreamIO:
136
136
  self.lost = 0
137
137
 
138
138
  def _limits(self) -> tuple[int, int]:
139
- """(read, write) chunk sizes that fit the probe's frame: request header 6 + session 4 + stream 1 + count 2,
140
- result header 5 + start 8 + flags 1."""
139
+ """(read, write) chunk sizes that fit the probe's frame: a write is request header 6 + session 4 + the stream's
140
+ prefix (the console's stream u16, none on a fixture UART) + count 2; a read's result is header 5 + start 8 +
141
+ flags 1. (The write was frame - 13 for both: one byte over on the console's 64-byte frames.)"""
141
142
  frame = self.source.host.confirmed()["max_frame"]
142
- return max(1, min(self.MAX_READ, frame - 14)), max(1, min(self.MAX_WRITE, frame - 13))
143
+ write = frame - 12 - len(self.source._stream_prefix())
144
+ return max(1, min(self.MAX_READ, frame - 14)), max(1, min(self.MAX_WRITE, write))
143
145
 
144
146
  def read(self, n: int = 512) -> bytes:
145
147
  c = self.source.read_from(self.position, min(n, self._limits()[0]))