layrz-sdk 4.0.4__tar.gz → 4.0.6__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.

Potentially problematic release.


This version of layrz-sdk might be problematic. Click here for more details.

Files changed (133) hide show
  1. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/CHANGELOG.md +13 -0
  2. {layrz_sdk-4.0.4/layrz_sdk.egg-info → layrz_sdk-4.0.6}/PKG-INFO +1 -1
  3. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/operation.py +12 -2
  4. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/operation_payload.py +11 -1
  5. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/trigger.py +18 -1
  6. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6/layrz_sdk.egg-info}/PKG-INFO +1 -1
  7. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/pyproject.toml +25 -36
  8. layrz_sdk-4.0.6/uv.lock +737 -0
  9. layrz_sdk-4.0.4/uv.lock +0 -708
  10. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/.github/workflows/checks.yml +0 -0
  11. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/.github/workflows/deploy.yml +0 -0
  12. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/.gitignore +0 -0
  13. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/.vscode/extensions.json +0 -0
  14. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/CODE_OF_CONDUCT.md +0 -0
  15. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/CONTRIBUTING.md +0 -0
  16. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/LICENSE +0 -0
  17. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/README.md +0 -0
  18. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/__init__.py +0 -0
  19. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/constants.py +0 -0
  20. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/__init__.py +0 -0
  21. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/action.py +0 -0
  22. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/action_geofence_ownership.py +0 -0
  23. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/action_kind.py +0 -0
  24. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/action_subkind.py +0 -0
  25. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/asset.py +0 -0
  26. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/asset_constants.py +0 -0
  27. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/asset_contact.py +0 -0
  28. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/asset_operation_mode.py +0 -0
  29. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/ats_entry.py +0 -0
  30. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/ats_exit_history.py +0 -0
  31. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/ats_possible_entry.py +0 -0
  32. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/ats_possible_exit.py +0 -0
  33. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/ats_reception.py +0 -0
  34. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/broadcast/__init__.py +0 -0
  35. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/broadcast/payload.py +0 -0
  36. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/broadcast/request.py +0 -0
  37. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/broadcast/response.py +0 -0
  38. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/broadcast/result.py +0 -0
  39. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/broadcast/service.py +0 -0
  40. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/broadcast/status.py +0 -0
  41. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/case.py +0 -0
  42. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/case_ignored_status.py +0 -0
  43. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/case_status.py +0 -0
  44. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/axis_config.py +0 -0
  45. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/bar_chart.py +0 -0
  46. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/chart_alignment.py +0 -0
  47. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/chart_color.py +0 -0
  48. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/chart_configuration.py +0 -0
  49. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/chart_data_serie.py +0 -0
  50. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/chart_data_serie_type.py +0 -0
  51. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/chart_data_type.py +0 -0
  52. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/chart_render_technology.py +0 -0
  53. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/column_chart.py +0 -0
  54. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/html_chart.py +0 -0
  55. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/line_chart.py +0 -0
  56. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/map_center_type.py +0 -0
  57. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/map_chart.py +0 -0
  58. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/map_point.py +0 -0
  59. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/number_chart.py +0 -0
  60. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/pie_chart.py +0 -0
  61. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/radar_chart.py +0 -0
  62. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/radial_bar_chart.py +0 -0
  63. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/scatter_chart.py +0 -0
  64. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/scatter_serie.py +0 -0
  65. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/scatter_serie_item.py +0 -0
  66. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/table_chart.py +0 -0
  67. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/table_header.py +0 -0
  68. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/table_row.py +0 -0
  69. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/timeline_chart.py +0 -0
  70. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/timeline_serie.py +0 -0
  71. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/charts/timeline_serie_item.py +0 -0
  72. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/checkpoint.py +0 -0
  73. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/command_series_ticket.py +0 -0
  74. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/comment.py +0 -0
  75. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/custom_field.py +0 -0
  76. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/custom_report_page.py +0 -0
  77. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/destination_phone.py +0 -0
  78. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/device.py +0 -0
  79. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/event.py +0 -0
  80. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/exchange_service.py +0 -0
  81. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/function.py +0 -0
  82. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/geofence.py +0 -0
  83. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/geofence_category.py +0 -0
  84. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/last_message.py +0 -0
  85. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/message.py +0 -0
  86. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/modbus/__init__.py +0 -0
  87. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/modbus/config.py +0 -0
  88. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/modbus/parameter.py +0 -0
  89. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/modbus/schema.py +0 -0
  90. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/modbus/status.py +0 -0
  91. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/modbus/wait.py +0 -0
  92. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/notification_type.py +0 -0
  93. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/operation_case_payload.py +0 -0
  94. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/operation_type.py +0 -0
  95. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/outbound_service.py +0 -0
  96. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/platform.py +0 -0
  97. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/position.py +0 -0
  98. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/presence_type.py +0 -0
  99. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/preset.py +0 -0
  100. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/report.py +0 -0
  101. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/report_col.py +0 -0
  102. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/report_configuration.py +0 -0
  103. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/report_data_type.py +0 -0
  104. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/report_format.py +0 -0
  105. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/report_header.py +0 -0
  106. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/report_page.py +0 -0
  107. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/report_row.py +0 -0
  108. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/request_type.py +0 -0
  109. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/sensor.py +0 -0
  110. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/sound_effect.py +0 -0
  111. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/static_position.py +0 -0
  112. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/telemetry/__init__.py +0 -0
  113. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/telemetry/assetmessage.py +0 -0
  114. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/telemetry/devicemessage.py +0 -0
  115. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/text_alignment.py +0 -0
  116. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/timezone.py +0 -0
  117. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/trigger_kind.py +0 -0
  118. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/user.py +0 -0
  119. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/waypoint.py +0 -0
  120. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/entities/weekday.py +0 -0
  121. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/helpers/__init__.py +0 -0
  122. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/helpers/color.py +0 -0
  123. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/lcl/__init__.py +0 -0
  124. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/lcl/core.py +0 -0
  125. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk/py.typed +0 -0
  126. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk.egg-info/SOURCES.txt +0 -0
  127. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk.egg-info/dependency_links.txt +0 -0
  128. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk.egg-info/requires.txt +0 -0
  129. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/layrz_sdk.egg-info/top_level.txt +0 -0
  130. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/manual_deploy.py +0 -0
  131. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/setup.cfg +0 -0
  132. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/tests/__init__.py +0 -0
  133. {layrz_sdk-4.0.4 → layrz_sdk-4.0.6}/tests/test_lcl.py +0 -0
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.0.6
4
+
5
+ - Added validation for `manual_action_fields` in `Trigger` entity to ensure it is a list of dictionaries.
6
+ - Added validation for `priority` field in `Trigger` entity to ensure it is an integer
7
+
8
+ ## 4.0.5
9
+
10
+ - Missing doc
11
+
12
+ ## 4.0.4
13
+
14
+ - Fixes on `is_primary` field in `Device` entity to ensure it is a boolean value.
15
+
3
16
  ## 4.0.3
4
17
 
5
18
  - Added validation for `static_position` in `Asset` entity to ensure it can accept a dictionary representation of `StaticPosition`.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: layrz-sdk
3
- Version: 4.0.4
3
+ Version: 4.0.6
4
4
  Summary: Layrz SDK for Python
5
5
  Author-email: "Golden M, Inc." <software@goldenm.com>
6
6
  Maintainer-email: Kenny Mochizuki <kenny@goldenm.com>, Luis Reyes <lreyes@goldenm.com>, Kasen Li <kli@goldenm.com>, Miguel Zauzich <miguel@goldenm.com>, Angel Prieto <aprieto@goldenm.com>
@@ -3,7 +3,7 @@
3
3
  from datetime import time, timedelta
4
4
  from typing import Any, Self
5
5
 
6
- from pydantic import BaseModel, Field
6
+ from pydantic import BaseModel, Field, field_validator
7
7
 
8
8
  from .destination_phone import DestinationPhone
9
9
  from .notification_type import TwilioNotificationType
@@ -181,11 +181,21 @@ class Operation(BaseModel):
181
181
  description='Defines the URI for the sound effect of the operation. Only when sound_effect is set to CUSTOM.',
182
182
  )
183
183
 
184
- duration: timedelta = Field(
184
+ duration: timedelta | None = Field(
185
185
  default_factory=lambda: timedelta(seconds=5),
186
186
  description='Defines the duration of the operation',
187
187
  )
188
188
 
189
+ @field_validator('duration', mode='before')
190
+ def validate_duration(cls, value: Any) -> timedelta:
191
+ if value is None:
192
+ return timedelta(seconds=0)
193
+ if isinstance(value, timedelta):
194
+ return value
195
+ if isinstance(value, (int, float)):
196
+ return timedelta(seconds=value)
197
+ return timedelta(seconds=0)
198
+
189
199
  credentials: dict[str, Any] = Field(
190
200
  default_factory=dict,
191
201
  description='Defines the credentials for the operation',
@@ -275,8 +275,18 @@ class OperationPayload(BaseModel):
275
275
  alias='icon',
276
276
  )
277
277
 
278
- duration: timedelta = Field(
278
+ duration: timedelta | None = Field(
279
279
  default_factory=lambda: timedelta(seconds=0),
280
280
  description='Defines the duration of the in-app notification',
281
281
  alias='duration',
282
282
  )
283
+
284
+ @field_validator('duration', mode='before')
285
+ def validate_duration(cls, value: Any) -> timedelta:
286
+ if value is None:
287
+ return timedelta(seconds=0)
288
+ if isinstance(value, timedelta):
289
+ return value
290
+ if isinstance(value, (int, float)):
291
+ return timedelta(seconds=value)
292
+ return timedelta(seconds=0)
@@ -3,7 +3,7 @@
3
3
  from datetime import time, timedelta
4
4
  from typing import Any
5
5
 
6
- from pydantic import BaseModel, Field
6
+ from pydantic import BaseModel, Field, field_validator
7
7
 
8
8
  from .trigger_kind import TriggerCaseKind, TriggerCommentPattern, TriggerGeofenceKind, TriggerKind
9
9
  from .weekday import Weekday
@@ -92,6 +92,13 @@ class Trigger(BaseModel):
92
92
  description='Defines the fields for manual action in the trigger',
93
93
  )
94
94
 
95
+ @field_validator('manual_action_fields', mode='before')
96
+ def validate_manual_action_fields(cls, value: Any) -> list[dict[str, Any]]:
97
+ """Ensure manual_action_fields is a list of dictionaries."""
98
+ if isinstance(value, list):
99
+ return value
100
+ return []
101
+
95
102
  formula: str | None = Field(
96
103
  default=None,
97
104
  description='Defines the formula of the trigger, this formula is only LCL (Layrz Computation Language) compatible',
@@ -114,6 +121,16 @@ class Trigger(BaseModel):
114
121
  description='Defines the priority of the trigger',
115
122
  )
116
123
 
124
+ @field_validator('priority', mode='before')
125
+ def validate_priority(cls, value: Any) -> int:
126
+ """Ensure priority is an integer."""
127
+ if isinstance(value, int):
128
+ return value
129
+ try:
130
+ return int(value)
131
+ except (ValueError, TypeError):
132
+ return 0
133
+
117
134
  color: str | None = Field(
118
135
  default='#2196F3',
119
136
  description='Defines the color of the trigger',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: layrz-sdk
3
- Version: 4.0.4
3
+ Version: 4.0.6
4
4
  Summary: Layrz SDK for Python
5
5
  Author-email: "Golden M, Inc." <software@goldenm.com>
6
6
  Maintainer-email: Kenny Mochizuki <kenny@goldenm.com>, Luis Reyes <lreyes@goldenm.com>, Kasen Li <kli@goldenm.com>, Miguel Zauzich <miguel@goldenm.com>, Angel Prieto <aprieto@goldenm.com>
@@ -1,31 +1,23 @@
1
1
  [project]
2
2
  name = "layrz-sdk"
3
- version = "4.0.4"
3
+ version = "4.0.6"
4
4
  description = "Layrz SDK for Python"
5
- authors = [
6
- {name = "Golden M, Inc.", email = "software@goldenm.com"}
7
- ]
5
+ authors = [{ name = "Golden M, Inc.", email = "software@goldenm.com" }]
8
6
  requires-python = ">=3.13"
9
7
 
10
8
  maintainers = [
11
- {name = "Kenny Mochizuki", email = "kenny@goldenm.com"},
12
- {name = "Luis Reyes", email = "lreyes@goldenm.com"},
13
- {name = "Kasen Li", email = "kli@goldenm.com"},
14
- {name = "Miguel Zauzich", email = "miguel@goldenm.com"},
15
- {name = "Angel Prieto", email = "aprieto@goldenm.com"},
9
+ { name = "Kenny Mochizuki", email = "kenny@goldenm.com" },
10
+ { name = "Luis Reyes", email = "lreyes@goldenm.com" },
11
+ { name = "Kasen Li", email = "kli@goldenm.com" },
12
+ { name = "Miguel Zauzich", email = "miguel@goldenm.com" },
13
+ { name = "Angel Prieto", email = "aprieto@goldenm.com" },
16
14
  ]
17
15
 
18
16
  readme = "README.md"
19
17
 
20
18
  license = "MIT"
21
19
 
22
- keywords = [
23
- "sdk",
24
- "goldenm",
25
- "lcl",
26
- "layrz compute language",
27
- "layrz",
28
- ]
20
+ keywords = ["sdk", "goldenm", "lcl", "layrz compute language", "layrz"]
29
21
  classifiers = [
30
22
  "Programming Language :: Python :: 3",
31
23
  "Programming Language :: Python :: 3.13",
@@ -53,12 +45,12 @@ build-backend = "setuptools.build_meta"
53
45
 
54
46
  [dependency-groups]
55
47
  dev = [
56
- "build>=1.2.2.post1",
57
- "mypy>=1.15.0",
58
- "pytest>=8.3.5",
59
- "python-dotenv>=1.0.1",
60
- "ruff>=0.11.0",
61
- "twine>=6.1.0",
48
+ "build>=1.2.2.post1",
49
+ "mypy>=1.15.0",
50
+ "pytest>=8.3.5",
51
+ "python-dotenv>=1.0.1",
52
+ "ruff>=0.11.0",
53
+ "twine>=6.1.0",
62
54
  ]
63
55
 
64
56
 
@@ -70,19 +62,20 @@ exclude = [".venv"]
70
62
 
71
63
  [tool.ruff.lint]
72
64
  ignore = [
73
- "F401", # Unused import
74
- "E701", # Multiple statements on one line
75
- "TD003", # Missing issue link
65
+ "F401", # Unused import
66
+ "E701", # Multiple statements on one line
67
+ "TD003", # Missing issue link
76
68
  "ANN401", # Any type annotation
77
69
  ]
78
70
 
79
71
  select = [
80
- "I", # isort
81
- "E", "W", # pycodestyle
82
- "F", # pyflakes
83
- "B", # flakes8-bugbear
84
- "TD", # flake8-todo
85
- "DJ", # flake8-django
72
+ "I", # isort
73
+ "E",
74
+ "W", # pycodestyle
75
+ "F", # pyflakes
76
+ "B", # flakes8-bugbear
77
+ "TD", # flake8-todo
78
+ "DJ", # flake8-django
86
79
  "DTZ", # flake8-datetimez
87
80
  "T20", # flake8-print # En un futuro
88
81
  "PYI", # flake8-pyi
@@ -101,8 +94,4 @@ ignore_missing_imports = true
101
94
  check_untyped_defs = true
102
95
  disallow_untyped_defs = true
103
96
 
104
- exclude = [
105
- ".*\\.venv",
106
- ".*\\.ruff_cache",
107
- ".*\\.mypy_cache",
108
- ]
97
+ exclude = [".*\\.venv", ".*\\.ruff_cache", ".*\\.mypy_cache"]