pymammotion 0.4.30__tar.gz → 0.4.32__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 (126) hide show
  1. {pymammotion-0.4.30 → pymammotion-0.4.32}/PKG-INFO +1 -1
  2. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/device.py +2 -0
  3. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/state_manager.py +7 -0
  4. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/devices/base.py +6 -7
  5. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/devices/mammotion_bluetooth.py +2 -25
  6. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/device_type.py +4 -4
  7. {pymammotion-0.4.30 → pymammotion-0.4.32}/pyproject.toml +2 -2
  8. {pymammotion-0.4.30 → pymammotion-0.4.32}/LICENSE +0 -0
  9. {pymammotion-0.4.30 → pymammotion-0.4.32}/README.md +0 -0
  10. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/__init__.py +0 -0
  11. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/__init__.py +0 -0
  12. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/client.py +0 -0
  13. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/cloud_gateway.py +0 -0
  14. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/model/aep_response.py +0 -0
  15. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/model/connect_response.py +0 -0
  16. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/model/dev_by_account_response.py +0 -0
  17. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/model/login_by_oauth_response.py +0 -0
  18. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/model/regions_response.py +0 -0
  19. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/model/session_by_authcode_response.py +0 -0
  20. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/model/stream_subscription_response.py +0 -0
  21. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/regions.py +0 -0
  22. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/tea/core.py +0 -0
  23. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/aliyun/tmp_constant.py +0 -0
  24. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/__init__.py +0 -0
  25. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/ble.py +0 -0
  26. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/ble_message.py +0 -0
  27. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/const.py +0 -0
  28. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/data/__init__.py +0 -0
  29. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/data/convert.py +0 -0
  30. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/data/framectrldata.py +0 -0
  31. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/data/notifydata.py +0 -0
  32. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/model/__init__.py +0 -0
  33. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/bluetooth/model/atomic_integer.py +0 -0
  34. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/const.py +0 -0
  35. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/__init__.py +0 -0
  36. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/__init__.py +0 -0
  37. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/account.py +0 -0
  38. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/device_config.py +0 -0
  39. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/device_info.py +0 -0
  40. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/device_limits.py +0 -0
  41. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/enums.py +0 -0
  42. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/excute_boarder_params.py +0 -0
  43. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/execute_boarder.py +0 -0
  44. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/generate_route_information.py +0 -0
  45. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/hash_list.py +0 -0
  46. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/location.py +0 -0
  47. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/mowing_modes.py +0 -0
  48. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/plan.py +0 -0
  49. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/rapid_state.py +0 -0
  50. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/raw_data.py +0 -0
  51. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/region_data.py +0 -0
  52. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/model/report_info.py +0 -0
  53. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/mqtt/__init__.py +0 -0
  54. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/mqtt/event.py +0 -0
  55. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/mqtt/properties.py +0 -0
  56. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/data/mqtt/status.py +0 -0
  57. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/event/__init__.py +0 -0
  58. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/event/event.py +0 -0
  59. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/http/_init_.py +0 -0
  60. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/http/encryption.py +0 -0
  61. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/http/http.py +0 -0
  62. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/http/model/http.py +0 -0
  63. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/__init__.py +0 -0
  64. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/__init__.py +0 -0
  65. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/abstract_message.py +0 -0
  66. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/mammotion_command.py +0 -0
  67. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/messages/__init__.py +0 -0
  68. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/messages/driver.py +0 -0
  69. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/messages/media.py +0 -0
  70. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/messages/navigation.py +0 -0
  71. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/messages/network.py +0 -0
  72. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/messages/ota.py +0 -0
  73. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/messages/system.py +0 -0
  74. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/commands/messages/video.py +0 -0
  75. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/control/__init__.py +0 -0
  76. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/control/joystick.py +0 -0
  77. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/devices/__init__.py +0 -0
  78. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/devices/mammotion.py +0 -0
  79. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mammotion/devices/mammotion_cloud.py +0 -0
  80. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mqtt/__init__.py +0 -0
  81. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mqtt/linkkit/__init__.py +0 -0
  82. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mqtt/linkkit/h2client.py +0 -0
  83. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mqtt/linkkit/linkkit.py +0 -0
  84. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mqtt/mammotion_future.py +0 -0
  85. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/mqtt/mammotion_mqtt.py +0 -0
  86. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/__init__.py +0 -0
  87. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/basestation.proto +0 -0
  88. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/basestation_pb2.py +0 -0
  89. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/basestation_pb2.pyi +0 -0
  90. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/common.proto +0 -0
  91. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/common_pb2.py +0 -0
  92. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/common_pb2.pyi +0 -0
  93. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/dev_net.proto +0 -0
  94. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/dev_net_pb2.py +0 -0
  95. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/dev_net_pb2.pyi +0 -0
  96. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/luba_msg.proto +0 -0
  97. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/luba_msg_pb2.py +0 -0
  98. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/luba_msg_pb2.pyi +0 -0
  99. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/luba_mul.proto +0 -0
  100. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/luba_mul_pb2.py +0 -0
  101. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/luba_mul_pb2.pyi +0 -0
  102. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_driver.proto +0 -0
  103. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_driver_pb2.py +0 -0
  104. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_driver_pb2.pyi +0 -0
  105. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_nav.proto +0 -0
  106. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_nav_pb2.py +0 -0
  107. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_nav_pb2.pyi +0 -0
  108. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_ota.proto +0 -0
  109. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_ota_pb2.py +0 -0
  110. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_ota_pb2.pyi +0 -0
  111. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_pept.proto +0 -0
  112. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_pept_pb2.py +0 -0
  113. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_pept_pb2.pyi +0 -0
  114. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_sys.proto +0 -0
  115. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_sys_pb2.py +0 -0
  116. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/proto/mctrl_sys_pb2.pyi +0 -0
  117. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/py.typed +0 -0
  118. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/constant/__init__.py +0 -0
  119. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/constant/device_constant.py +0 -0
  120. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/conversions.py +0 -0
  121. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/datatype_converter.py +0 -0
  122. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/device_config.py +0 -0
  123. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/map.py +0 -0
  124. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/movement.py +0 -0
  125. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/periodic.py +0 -0
  126. {pymammotion-0.4.30 → pymammotion-0.4.32}/pymammotion/utility/rocker_util.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pymammotion
3
- Version: 0.4.30
3
+ Version: 0.4.32
4
4
  Summary:
5
5
  License: GPL-3.0
6
6
  Author: Michael Arthur
@@ -9,6 +9,7 @@ from pymammotion.data.model import HashList, RapidState
9
9
  from pymammotion.data.model.device_info import DeviceFirmwares, MowerInfo
10
10
  from pymammotion.data.model.location import Location
11
11
  from pymammotion.data.model.report_info import ReportData
12
+ from pymammotion.data.model.work import CurrentTaskSettings
12
13
  from pymammotion.data.mqtt.properties import ThingPropertiesMessage
13
14
  from pymammotion.data.mqtt.status import ThingStatusMessage
14
15
  from pymammotion.http.model.http import ErrorInfo
@@ -29,6 +30,7 @@ class MowingDevice(DataClassORJSONMixin):
29
30
  mqtt_properties: ThingPropertiesMessage | None = None
30
31
  status_properties: ThingStatusMessage | None = None
31
32
  map: HashList = field(default_factory=HashList)
33
+ work: CurrentTaskSettings = field(default_factory=CurrentTaskSettings)
32
34
  location: Location = field(default_factory=Location)
33
35
  mowing_state: RapidState = field(default_factory=RapidState)
34
36
  report_data: ReportData = field(default_factory=ReportData)
@@ -10,6 +10,7 @@ import betterproto
10
10
  from pymammotion.data.model.device import MowingDevice
11
11
  from pymammotion.data.model.device_info import SideLight
12
12
  from pymammotion.data.model.hash_list import AreaHashNameList, NavGetCommData, NavGetHashListData, Plan, SvgMessage
13
+ from pymammotion.data.model.work import CurrentTaskSettings
13
14
  from pymammotion.data.mqtt.properties import ThingPropertiesMessage
14
15
  from pymammotion.data.mqtt.status import ThingStatusMessage
15
16
  from pymammotion.proto import (
@@ -22,6 +23,7 @@ from pymammotion.proto import (
22
23
  NavGetCommDataAck,
23
24
  NavGetHashListAck,
24
25
  NavPlanJobSet,
26
+ NavReqCoverPath,
25
27
  SvgMessageAckT,
26
28
  TimeCtrlLight,
27
29
  WifiIotStatusReport,
@@ -206,6 +208,11 @@ class StateManager:
206
208
  if resp.res == DrvDevInfoResult.DRV_RESULT_SUC and resp.id == 1 and resp.type == 6:
207
209
  self._device.mower_state.swversion = resp.info
208
210
  self._device.device_firmwares.device_version = resp.info
211
+ case "bidire_reqconver_path":
212
+ work_settings: NavReqCoverPath = net_msg[1]
213
+ self._device.work = CurrentTaskSettings.from_dict(
214
+ work_settings.to_dict(casing=betterproto.Casing.SNAKE)
215
+ )
209
216
 
210
217
  def _update_mul_data(self, message) -> None:
211
218
  pass
@@ -90,12 +90,9 @@ class MammotionBaseDevice:
90
90
  await self.queue_command("get_regional_data", regional_data=region_data)
91
91
 
92
92
  async def plan_callback(self, plan: NavPlanJobSet) -> None:
93
- if plan.plan_index != 0 and plan.total_plan_num - 1 != plan.plan_index:
94
- index = plan.plan_index
95
- while index in self.mower.map.plan and index < plan.total_plan_num:
96
- index += 1
97
- if index < plan.total_plan_num:
98
- await self.queue_command("read_plan", plan_index=index)
93
+ if plan.plan_index < plan.total_plan_num - 1:
94
+ index = plan.plan_index + 1
95
+ await self.queue_command("read_plan", sub_cmd=2, plan_index=index)
99
96
 
100
97
  def _update_raw_data(self, data: bytes) -> None:
101
98
  """Update raw and model data from notifications."""
@@ -224,7 +221,9 @@ class MammotionBaseDevice:
224
221
  if self._cloud_device and len(self.mower.map.area_name) == 0 and not DeviceType.is_luba1(self.mower.name):
225
222
  await self.queue_command("get_area_name_list", device_id=self._cloud_device.iotId)
226
223
 
227
- if len(self.mower.map.plan) == 0 or self.mower.map.plan[0].total_plan_num != len(self.mower.map.plan):
224
+ if len(self.mower.map.plan) == 0 or list(self.mower.map.plan.values())[0].total_plan_num != len(
225
+ self.mower.map.plan
226
+ ):
228
227
  await self.queue_command("read_plan", sub_cmd=2, plan_index=0)
229
228
 
230
229
  for hash, frame in list(self.mower.map.area.items()):
@@ -297,7 +297,7 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
297
297
  await self._ble_sync()
298
298
  self.schedule_ble_sync()
299
299
 
300
- async def _send_command_locked(self, key: str, command: bytes) -> bytes:
300
+ async def _send_command_locked(self, key: str, command: bytes) -> None:
301
301
  """Send command to device and read response."""
302
302
  await self._ensure_connected()
303
303
  try:
@@ -344,12 +344,7 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
344
344
  if has_field(new_msg.net.toapp_wifi_iot_status) and self._commands.get_device_product_key() == "":
345
345
  self._commands.set_device_product_key(new_msg.net.toapp_wifi_iot_status.productkey)
346
346
 
347
- return
348
-
349
347
  await self._state_manager.notification(new_msg)
350
- # may or may not be correct, some work could be done here to correctly match responses
351
- if self._notify_future and not self._notify_future.done():
352
- self._notify_future.set_result(data)
353
348
 
354
349
  if self._execute_timed_disconnect is None:
355
350
  await self._execute_forced_disconnect()
@@ -361,30 +356,12 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
361
356
  _LOGGER.debug("%s: Subscribe to notifications; RSSI: %s", self.name, self.rssi)
362
357
  await self._client.start_notify(self._read_char, self._notification_handler)
363
358
 
364
- async def _execute_command_locked(self, key: str, command: bytes) -> bytes:
359
+ async def _execute_command_locked(self, key: str, command: bytes) -> None:
365
360
  """Execute command and read response."""
366
361
  assert self._client is not None
367
- self._notify_future = self.loop.create_future()
368
- self._key = key
369
362
  _LOGGER.debug("%s: Sending command: %s", self.name, key)
370
363
  await self._message.post_custom_data_bytes(command)
371
364
 
372
- timeout = 1
373
- timeout_handle = self.loop.call_at(self.loop.time() + timeout, _handle_timeout, self._notify_future)
374
- timeout_expired = False
375
- try:
376
- notify_msg = await self._notify_future
377
- except asyncio.TimeoutError:
378
- timeout_expired = True
379
- notify_msg = b""
380
- finally:
381
- if not timeout_expired:
382
- timeout_handle.cancel()
383
- self._notify_future = None
384
-
385
- _LOGGER.debug("%s: Notification received: %s", self.name, notify_msg.hex())
386
- return notify_msg
387
-
388
365
  def get_address(self) -> str:
389
366
  """Return address of device."""
390
367
  return self.ble_device.address
@@ -275,10 +275,10 @@ class DeviceType(Enum):
275
275
  device_type = DeviceType.value_of_str(device_name, product_key)
276
276
 
277
277
  return (
278
- DeviceType.RTK.get_value() != device_type.get_value()
279
- and DeviceType.RTK3A0.get_value() != device_type.get_value()
280
- and DeviceType.RTK3A1.get_value() != device_type.get_value()
281
- and DeviceType.RTK3A2.get_value() != device_type.get_value()
278
+ DeviceType.RTK.get_value() == device_type.get_value()
279
+ or DeviceType.RTK3A0.get_value() == device_type.get_value()
280
+ or DeviceType.RTK3A1.get_value() == device_type.get_value()
281
+ or DeviceType.RTK3A2.get_value() == device_type.get_value()
282
282
  )
283
283
 
284
284
  @staticmethod
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
4
4
 
5
5
  [project]
6
6
  name = "pymammotion"
7
- version = "0.4.30"
7
+ version = "0.4.32"
8
8
  license = "GPL-3.0"
9
9
  description = ""
10
10
  readme = "README.md"
@@ -66,7 +66,7 @@ autotyping = "^24.3.0"
66
66
  ipython = "^9.0.2"
67
67
 
68
68
  [tool.bumpver]
69
- current_version = "0.4.30"
69
+ current_version = "0.4.32"
70
70
  version_pattern = "MAJOR.MINOR.PATCH"
71
71
  commit_message = "Bump version {old_version} -> {new_version}"
72
72
  commit = true
File without changes
File without changes