minot-cli 0.11.2__tar.gz → 0.11.3__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 (119) hide show
  1. {minot_cli-0.11.2 → minot_cli-0.11.3}/Cargo.lock +15 -15
  2. {minot_cli-0.11.2 → minot_cli-0.11.3}/Cargo.toml +14 -14
  3. {minot_cli-0.11.2 → minot_cli-0.11.3}/PKG-INFO +1 -1
  4. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_bagread/src/lib.rs +13 -4
  5. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/Cargo.toml +0 -0
  6. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/README.md +0 -0
  7. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/build.rs +0 -0
  8. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/app.rs +0 -0
  9. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/coord.rs +0 -0
  10. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/event.rs +0 -0
  11. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/gen_c.rs +0 -0
  12. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/gen_c.rs.patch +0 -0
  13. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/gen_c.rs.patch2 +0 -0
  14. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/gen_c_tests.rs +0 -0
  15. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/handler.rs +0 -0
  16. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/minot.rs +0 -0
  17. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/runner.rs +0 -0
  18. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/tui.rs +0 -0
  19. {minot_cli-0.11.2 → minot_cli-0.11.3}/minot/src/ui.rs +0 -0
  20. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_bagread/Cargo.toml +0 -0
  21. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_bagread/README.md +0 -0
  22. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_bagread/examples/stream_probe.rs +0 -0
  23. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_bagread/src/qos.rs +0 -0
  24. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_bagread/test/metadata-v5.yml +0 -0
  25. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_bagread/test/metadata-v9.yml +0 -0
  26. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_coord/Cargo.toml +0 -0
  27. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_coord/README.md +0 -0
  28. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_coord/src/lib.rs +0 -0
  29. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/Cargo.toml +0 -0
  30. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/default.rl +0 -0
  31. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/cleanup.rs +0 -0
  32. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/core/marina.rs +0 -0
  33. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/core/mod.rs +0 -0
  34. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/io/bag.rs +0 -0
  35. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/io/db3_transform.rs +0 -0
  36. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/io/mcap_transform.rs +0 -0
  37. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/io/mod.rs +0 -0
  38. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/io/pack.rs +0 -0
  39. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/io/transform_progress.rs +0 -0
  40. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/lib.rs +0 -0
  41. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/model/bag_ref.rs +0 -0
  42. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/model/mod.rs +0 -0
  43. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/progress.rs +0 -0
  44. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/driver.rs +0 -0
  45. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/folder.rs +0 -0
  46. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/gdrive.rs +0 -0
  47. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/gdrive_auth.rs +0 -0
  48. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/http.rs +0 -0
  49. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/minot/block_store.rs +0 -0
  50. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/minot/mod.rs +0 -0
  51. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/minot/protocol.rs +0 -0
  52. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/minot/remote_file.rs +0 -0
  53. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/mod.rs +0 -0
  54. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/ssh.rs +0 -0
  55. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/stub.rs +0 -0
  56. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/registry/transfer_progress.rs +0 -0
  57. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/storage/cache.rs +0 -0
  58. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/storage/config.rs +0 -0
  59. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_dataset/src/storage/mod.rs +0 -0
  60. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_flow/Cargo.toml +0 -0
  61. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_flow/src/lib.rs +0 -0
  62. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_log/Cargo.toml +0 -0
  63. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_log/README.md +0 -0
  64. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_log/src/buffer.rs +0 -0
  65. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_log/src/format.rs +0 -0
  66. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_log/src/init.rs +0 -0
  67. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_log/src/lib.rs +0 -0
  68. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_log/src/logger.rs +0 -0
  69. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_log/src/pane.rs +0 -0
  70. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_log/src/tests.rs +0 -0
  71. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_mtc/Cargo.toml +0 -0
  72. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_mtc/README.md +0 -0
  73. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_mtc/src/lib.rs +0 -0
  74. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_net/Cargo.toml +0 -0
  75. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_net/README.md +0 -0
  76. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_net/examples/c_interop_layout.rs +0 -0
  77. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_net/examples/c_interop_pc2.rs +0 -0
  78. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_net/examples/c_interop_test.rs +0 -0
  79. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_net/src/bin_layout.rs +0 -0
  80. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_net/src/c_interop_test.rs +0 -0
  81. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_net/src/lib.rs +0 -0
  82. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/Cargo.toml +0 -0
  83. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/README.md +0 -0
  84. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/examples/be_node.rs +0 -0
  85. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/examples/be_sub.rs +0 -0
  86. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/examples/be_sub_drop.rs +0 -0
  87. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/examples/be_sub_error.rs +0 -0
  88. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/examples/pub.rs +0 -0
  89. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/examples/smol.rs +0 -0
  90. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/examples/sub.rs +0 -0
  91. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_pubsub/src/lib.rs +0 -0
  92. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_scope/Cargo.toml +0 -0
  93. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_scope/README.md +0 -0
  94. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_scope/examples/test.rs +0 -0
  95. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_scope/src/lib.rs +0 -0
  96. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_sea/Cargo.toml +0 -0
  97. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_sea/README.md +0 -0
  98. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_sea/src/client.rs +0 -0
  99. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_sea/src/coordinator.rs +0 -0
  100. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_sea/src/lib.rs +0 -0
  101. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_sea/src/net.rs +0 -0
  102. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_sea/src/network.rs +0 -0
  103. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_sea/src/ship.rs +0 -0
  104. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_service/Cargo.toml +0 -0
  105. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_service/README.md +0 -0
  106. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_service/examples/bad_service_client.rs +0 -0
  107. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_service/examples/basic_service_client.rs +0 -0
  108. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_service/examples/basic_service_client2.rs +0 -0
  109. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_service/examples/basic_service_server.rs +0 -0
  110. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_service/src/lib.rs +0 -0
  111. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_wind/Cargo.toml +0 -0
  112. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_wind/README.md +0 -0
  113. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_wind/src/hiroz.rs +0 -0
  114. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_wind/src/lib.rs +0 -0
  115. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_wind/src/mt_pubsub.rs +0 -0
  116. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_wind/src/ros1.rs +0 -0
  117. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_wind/src/ros2.rs +0 -0
  118. {minot_cli-0.11.2 → minot_cli-0.11.3}/mt_wind/src/ros2_r2r.rs +0 -0
  119. {minot_cli-0.11.2 → minot_cli-0.11.3}/pyproject.toml +0 -0
@@ -3808,7 +3808,7 @@ dependencies = [
3808
3808
 
3809
3809
  [[package]]
3810
3810
  name = "minot"
3811
- version = "0.11.2"
3811
+ version = "0.11.3"
3812
3812
  dependencies = [
3813
3813
  "anyhow",
3814
3814
  "bytesize",
@@ -3935,7 +3935,7 @@ dependencies = [
3935
3935
 
3936
3936
  [[package]]
3937
3937
  name = "mt_action"
3938
- version = "0.11.2"
3938
+ version = "0.11.3"
3939
3939
  dependencies = [
3940
3940
  "anyhow",
3941
3941
  "log",
@@ -3950,7 +3950,7 @@ dependencies = [
3950
3950
 
3951
3951
  [[package]]
3952
3952
  name = "mt_bagread"
3953
- version = "0.11.2"
3953
+ version = "0.11.3"
3954
3954
  dependencies = [
3955
3955
  "anyhow",
3956
3956
  "camino",
@@ -3971,7 +3971,7 @@ dependencies = [
3971
3971
 
3972
3972
  [[package]]
3973
3973
  name = "mt_coord"
3974
- version = "0.11.2"
3974
+ version = "0.11.3"
3975
3975
  dependencies = [
3976
3976
  "anyhow",
3977
3977
  "fs2",
@@ -3985,7 +3985,7 @@ dependencies = [
3985
3985
 
3986
3986
  [[package]]
3987
3987
  name = "mt_dataset"
3988
- version = "0.11.2"
3988
+ version = "0.11.3"
3989
3989
  dependencies = [
3990
3990
  "anyhow",
3991
3991
  "async-trait",
@@ -4028,7 +4028,7 @@ dependencies = [
4028
4028
 
4029
4029
  [[package]]
4030
4030
  name = "mt_flow"
4031
- version = "0.11.2"
4031
+ version = "0.11.3"
4032
4032
  dependencies = [
4033
4033
  "anyhow",
4034
4034
  "env_logger",
@@ -4042,7 +4042,7 @@ dependencies = [
4042
4042
 
4043
4043
  [[package]]
4044
4044
  name = "mt_log"
4045
- version = "0.11.2"
4045
+ version = "0.11.3"
4046
4046
  dependencies = [
4047
4047
  "env_filter 2.0.0",
4048
4048
  "env_logger",
@@ -4054,7 +4054,7 @@ dependencies = [
4054
4054
 
4055
4055
  [[package]]
4056
4056
  name = "mt_mtc"
4057
- version = "0.11.2"
4057
+ version = "0.11.3"
4058
4058
  dependencies = [
4059
4059
  "anyhow",
4060
4060
  "ariadne",
@@ -4067,7 +4067,7 @@ dependencies = [
4067
4067
 
4068
4068
  [[package]]
4069
4069
  name = "mt_net"
4070
- version = "0.11.2"
4070
+ version = "0.11.3"
4071
4071
  dependencies = [
4072
4072
  "anyhow",
4073
4073
  "rkyv 0.8.18",
@@ -4077,7 +4077,7 @@ dependencies = [
4077
4077
 
4078
4078
  [[package]]
4079
4079
  name = "mt_pubsub"
4080
- version = "0.11.2"
4080
+ version = "0.11.3"
4081
4081
  dependencies = [
4082
4082
  "anyhow",
4083
4083
  "async-trait",
@@ -4096,7 +4096,7 @@ dependencies = [
4096
4096
 
4097
4097
  [[package]]
4098
4098
  name = "mt_rat"
4099
- version = "0.11.2"
4099
+ version = "0.11.3"
4100
4100
  dependencies = [
4101
4101
  "anyhow",
4102
4102
  "async-trait",
@@ -4111,7 +4111,7 @@ dependencies = [
4111
4111
 
4112
4112
  [[package]]
4113
4113
  name = "mt_scope"
4114
- version = "0.11.2"
4114
+ version = "0.11.3"
4115
4115
  dependencies = [
4116
4116
  "anyhow",
4117
4117
  "env_logger",
@@ -4124,7 +4124,7 @@ dependencies = [
4124
4124
 
4125
4125
  [[package]]
4126
4126
  name = "mt_sea"
4127
- version = "0.11.2"
4127
+ version = "0.11.3"
4128
4128
  dependencies = [
4129
4129
  "anyhow",
4130
4130
  "async-trait",
@@ -4141,7 +4141,7 @@ dependencies = [
4141
4141
 
4142
4142
  [[package]]
4143
4143
  name = "mt_service"
4144
- version = "0.11.2"
4144
+ version = "0.11.3"
4145
4145
  dependencies = [
4146
4146
  "anyhow",
4147
4147
  "log",
@@ -4155,7 +4155,7 @@ dependencies = [
4155
4155
 
4156
4156
  [[package]]
4157
4157
  name = "mt_wind"
4158
- version = "0.11.2"
4158
+ version = "0.11.3"
4159
4159
  dependencies = [
4160
4160
  "anyhow",
4161
4161
  "async-trait",
@@ -4,7 +4,7 @@ members = ["minot", "mt_pubsub", "mt_coord", "mt_bagread", "mt_mtc", "mt_sea", "
4
4
  resolver = "3"
5
5
 
6
6
  [workspace.package]
7
- version = "0.11.2"
7
+ version = "0.11.3"
8
8
  keywords = ["robotics"]
9
9
  license = "MIT OR Apache-2.0"
10
10
  repository = "https://codeberg.org/stelzo/minot.git"
@@ -28,19 +28,19 @@ exclude = [
28
28
  ]
29
29
 
30
30
  [workspace.dependencies]
31
- mt_sea = { path = "mt_sea", version = "0.11.2", default-features = false }
32
- mt_coord = { path = "mt_coord", version = "0.11.2", default-features = false }
33
- mt_pubsub = { path = "mt_pubsub", version = "0.11.2", default-features = false }
34
- mt_service = { path = "mt_service", version = "0.11.2", default-features = false }
35
- mt_action = { path = "mt_action", version = "0.11.2", default-features = false }
36
- mt_scope = { path = "mt_scope", version = "0.11.2", default-features = false }
37
- mt_bagread = { path = "mt_bagread", version = "0.11.2", default-features = false }
38
- mt_net = { path = "mt_net", version = "0.11.2", default-features = false }
39
- mt_flow = { path = "mt_flow", version = "0.11.2", default-features = false }
40
- mt_dataset = { path = "mt_dataset", version = "0.11.2", default-features = false }
41
- mt_wind = { path = "mt_wind", version = "0.11.2", default-features = false }
42
- mt_mtc = { path = "mt_mtc", version = "0.11.2", default-features = false }
43
- mt_log = { path = "mt_log", version = "0.11.2", default-features = false }
31
+ mt_sea = { path = "mt_sea", version = "0.11.3", default-features = false }
32
+ mt_coord = { path = "mt_coord", version = "0.11.3", default-features = false }
33
+ mt_pubsub = { path = "mt_pubsub", version = "0.11.3", default-features = false }
34
+ mt_service = { path = "mt_service", version = "0.11.3", default-features = false }
35
+ mt_action = { path = "mt_action", version = "0.11.3", default-features = false }
36
+ mt_scope = { path = "mt_scope", version = "0.11.3", default-features = false }
37
+ mt_bagread = { path = "mt_bagread", version = "0.11.3", default-features = false }
38
+ mt_net = { path = "mt_net", version = "0.11.3", default-features = false }
39
+ mt_flow = { path = "mt_flow", version = "0.11.3", default-features = false }
40
+ mt_dataset = { path = "mt_dataset", version = "0.11.3", default-features = false }
41
+ mt_wind = { path = "mt_wind", version = "0.11.3", default-features = false }
42
+ mt_mtc = { path = "mt_mtc", version = "0.11.3", default-features = false }
43
+ mt_log = { path = "mt_log", version = "0.11.3", default-features = false }
44
44
 
45
45
  # Tools
46
46
  anyhow = "1.0"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: minot-cli
3
- Version: 0.11.2
3
+ Version: 0.11.3
4
4
  Classifier: Intended Audience :: Developers
5
5
  Classifier: Intended Audience :: Science/Research
6
6
  Classifier: License :: OSI Approved :: MIT License
@@ -496,6 +496,8 @@ where
496
496
 
497
497
  let mut breaked_until = false;
498
498
  let mut time_iter_before = None;
499
+ // Log time of the message that stopped this call. It was not consumed, so the next call starts there.
500
+ let mut break_log_time = None;
499
501
  let span_start = last_iter_time.unwrap_or(start_time);
500
502
  while let Some(event) = reader.next_event() {
501
503
  match event? {
@@ -510,7 +512,7 @@ where
510
512
  let log_time = nanos_to_system_time(header.log_time);
511
513
 
512
514
  if time_iter_before.is_none() {
513
- time_iter_before.replace(start_time);
515
+ time_iter_before.replace(span_start);
514
516
  } else {
515
517
  time_iter_before = *last_iter_time;
516
518
  }
@@ -522,6 +524,7 @@ where
522
524
  let end_abs = span_start + rel_dur;
523
525
  if log_time > end_abs {
524
526
  breaked_until = true;
527
+ break_log_time = Some(header.log_time);
525
528
  reached_end_naturally = false;
526
529
  break;
527
530
  }
@@ -532,6 +535,7 @@ where
532
535
  let end_abs = span_start + rel_dur;
533
536
  if log_time > end_abs {
534
537
  breaked_until = true;
538
+ break_log_time = Some(header.log_time);
535
539
  reached_end_naturally = false;
536
540
  break;
537
541
  }
@@ -541,6 +545,7 @@ where
541
545
  let end_abs = span_start + max;
542
546
  if log_time > end_abs {
543
547
  breaked_until = true;
548
+ break_log_time = Some(header.log_time);
544
549
  reached_end_naturally = false;
545
550
  break;
546
551
  }
@@ -548,6 +553,7 @@ where
548
553
  Some(PlayCount::Amount(count)) => {
549
554
  if rel_since_begin >= *count {
550
555
  breaked_until = true;
556
+ break_log_time = Some(header.log_time);
551
557
  reached_end_naturally = false;
552
558
  break;
553
559
  }
@@ -563,6 +569,7 @@ where
563
569
  pc,
564
570
  )? {
565
571
  breaked_until = true;
572
+ break_log_time = Some(header.log_time);
566
573
  reached_end_naturally = false;
567
574
  break;
568
575
  }
@@ -606,10 +613,12 @@ where
606
613
  }
607
614
  }
608
615
 
609
- // going back one message
616
+ // Resume at the message that stopped this call. Seeking to the previous message instead
617
+ // would replay an already consumed message.
610
618
  if breaked_until {
611
- let options = IndexedReaderOptions::new()
612
- .log_time_on_or_after(system_time_to_nanos(&time_iter_before.unwrap()));
619
+ let options = IndexedReaderOptions::new().log_time_on_or_after(
620
+ break_log_time.expect("break_log_time is set whenever breaked_until is set"),
621
+ );
613
622
  *reader = mcap::sans_io::indexed_reader::IndexedReader::new_with_options(summary, options)
614
623
  .expect("could not construct reader");
615
624
  *last_iter_time = time_iter_before;
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes