layrz-sdk 4.0.3__tar.gz → 4.0.5__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.
- {layrz_sdk-4.0.3/layrz_sdk.egg-info → layrz_sdk-4.0.5}/PKG-INFO +1 -1
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/device.py +12 -1
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/operation.py +12 -2
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/operation_payload.py +11 -1
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5/layrz_sdk.egg-info}/PKG-INFO +1 -1
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk.egg-info/SOURCES.txt +0 -10
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/pyproject.toml +25 -36
- layrz_sdk-4.0.3/.github/workflows/checks.yml +0 -50
- layrz_sdk-4.0.3/.github/workflows/deploy.yml +0 -32
- layrz_sdk-4.0.3/.gitignore +0 -19
- layrz_sdk-4.0.3/.vscode/extensions.json +0 -9
- layrz_sdk-4.0.3/CHANGELOG.md +0 -551
- layrz_sdk-4.0.3/CODE_OF_CONDUCT.md +0 -29
- layrz_sdk-4.0.3/CONTRIBUTING.md +0 -26
- layrz_sdk-4.0.3/manual_deploy.py +0 -14
- layrz_sdk-4.0.3/tests/__init__.py +0 -0
- layrz_sdk-4.0.3/uv.lock +0 -708
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/LICENSE +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/README.md +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/__init__.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/constants.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/__init__.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/action.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/action_geofence_ownership.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/action_kind.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/action_subkind.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/asset.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/asset_constants.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/asset_contact.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/asset_operation_mode.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/ats_entry.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/ats_exit_history.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/ats_possible_entry.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/ats_possible_exit.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/ats_reception.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/broadcast/__init__.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/broadcast/payload.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/broadcast/request.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/broadcast/response.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/broadcast/result.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/broadcast/service.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/broadcast/status.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/case.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/case_ignored_status.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/case_status.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/axis_config.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/bar_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/chart_alignment.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/chart_color.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/chart_configuration.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/chart_data_serie.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/chart_data_serie_type.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/chart_data_type.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/chart_render_technology.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/column_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/html_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/line_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/map_center_type.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/map_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/map_point.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/number_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/pie_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/radar_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/radial_bar_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/scatter_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/scatter_serie.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/scatter_serie_item.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/table_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/table_header.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/table_row.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/timeline_chart.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/timeline_serie.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/charts/timeline_serie_item.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/checkpoint.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/command_series_ticket.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/comment.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/custom_field.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/custom_report_page.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/destination_phone.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/event.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/exchange_service.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/function.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/geofence.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/geofence_category.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/last_message.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/message.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/modbus/__init__.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/modbus/config.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/modbus/parameter.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/modbus/schema.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/modbus/status.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/modbus/wait.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/notification_type.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/operation_case_payload.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/operation_type.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/outbound_service.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/platform.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/position.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/presence_type.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/preset.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/report.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/report_col.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/report_configuration.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/report_data_type.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/report_format.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/report_header.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/report_page.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/report_row.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/request_type.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/sensor.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/sound_effect.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/static_position.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/telemetry/__init__.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/telemetry/assetmessage.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/telemetry/devicemessage.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/text_alignment.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/timezone.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/trigger.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/trigger_kind.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/user.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/waypoint.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/entities/weekday.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/helpers/__init__.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/helpers/color.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/lcl/__init__.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/lcl/core.py +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk/py.typed +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk.egg-info/dependency_links.txt +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk.egg-info/requires.txt +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/layrz_sdk.egg-info/top_level.txt +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/setup.cfg +0 -0
- {layrz_sdk-4.0.3 → layrz_sdk-4.0.5}/tests/test_lcl.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: layrz-sdk
|
|
3
|
-
Version: 4.0.
|
|
3
|
+
Version: 4.0.5
|
|
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,6 +1,8 @@
|
|
|
1
1
|
"""Device entitiy"""
|
|
2
2
|
|
|
3
|
-
from
|
|
3
|
+
from typing import Any
|
|
4
|
+
|
|
5
|
+
from pydantic import BaseModel, Field, field_validator
|
|
4
6
|
|
|
5
7
|
from .modbus import ModbusConfig
|
|
6
8
|
|
|
@@ -18,4 +20,13 @@ class Device(BaseModel):
|
|
|
18
20
|
protocol: str = Field(description='Defines the protocol of the device')
|
|
19
21
|
is_primary: bool = Field(default=False, description='Defines if the device is the primary device')
|
|
20
22
|
|
|
23
|
+
@field_validator('is_primary', mode='before')
|
|
24
|
+
def validate_is_primary(cls, value: Any) -> bool:
|
|
25
|
+
"""Validate that is_primary is a boolean value."""
|
|
26
|
+
if isinstance(value, str):
|
|
27
|
+
return value.lower() in ('true', '1', 'yes')
|
|
28
|
+
if isinstance(value, bool):
|
|
29
|
+
return value
|
|
30
|
+
return False
|
|
31
|
+
|
|
21
32
|
modbus: ModbusConfig | None = Field(default=None, description='Modbus configuration')
|
|
@@ -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)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: layrz-sdk
|
|
3
|
-
Version: 4.0.
|
|
3
|
+
Version: 4.0.5
|
|
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,15 +1,6 @@
|
|
|
1
|
-
.gitignore
|
|
2
|
-
CHANGELOG.md
|
|
3
|
-
CODE_OF_CONDUCT.md
|
|
4
|
-
CONTRIBUTING.md
|
|
5
1
|
LICENSE
|
|
6
2
|
README.md
|
|
7
|
-
manual_deploy.py
|
|
8
3
|
pyproject.toml
|
|
9
|
-
uv.lock
|
|
10
|
-
.github/workflows/checks.yml
|
|
11
|
-
.github/workflows/deploy.yml
|
|
12
|
-
.vscode/extensions.json
|
|
13
4
|
layrz_sdk/__init__.py
|
|
14
5
|
layrz_sdk/constants.py
|
|
15
6
|
layrz_sdk/py.typed
|
|
@@ -126,5 +117,4 @@ layrz_sdk/helpers/__init__.py
|
|
|
126
117
|
layrz_sdk/helpers/color.py
|
|
127
118
|
layrz_sdk/lcl/__init__.py
|
|
128
119
|
layrz_sdk/lcl/core.py
|
|
129
|
-
tests/__init__.py
|
|
130
120
|
tests/test_lcl.py
|
|
@@ -1,31 +1,23 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "layrz-sdk"
|
|
3
|
-
version = "4.0.
|
|
3
|
+
version = "4.0.5"
|
|
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
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
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",
|
|
74
|
-
"E701",
|
|
75
|
-
"TD003",
|
|
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",
|
|
81
|
-
"E",
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
"
|
|
85
|
-
"
|
|
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"]
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
name: "Checks before merging"
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
pull_request:
|
|
5
|
-
types:
|
|
6
|
-
- opened
|
|
7
|
-
- synchronize
|
|
8
|
-
- reopened
|
|
9
|
-
branches:
|
|
10
|
-
- '*'
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
lint:
|
|
14
|
-
runs-on: ubuntu-latest
|
|
15
|
-
container:
|
|
16
|
-
image: ghcr.io/goldenm-software/python-builder:uv-3.13-x86
|
|
17
|
-
options: --user root
|
|
18
|
-
credentials:
|
|
19
|
-
username: ${{ github.repository_owner }}
|
|
20
|
-
password: ${{ secrets.GITHUB_TOKEN }}
|
|
21
|
-
|
|
22
|
-
steps:
|
|
23
|
-
- name: Checkout
|
|
24
|
-
uses: actions/checkout@v4
|
|
25
|
-
|
|
26
|
-
- name: Lint
|
|
27
|
-
run: |
|
|
28
|
-
uv sync --only-group dev
|
|
29
|
-
uv run ruff check
|
|
30
|
-
uv run mypy .
|
|
31
|
-
|
|
32
|
-
uniitest:
|
|
33
|
-
needs: lint
|
|
34
|
-
runs-on: ubuntu-latest
|
|
35
|
-
container:
|
|
36
|
-
image: ghcr.io/goldenm-software/python-builder:uv-3.13-x86
|
|
37
|
-
options: --user root
|
|
38
|
-
credentials:
|
|
39
|
-
username: ${{ github.repository_owner }}
|
|
40
|
-
password: ${{ secrets.GITHUB_TOKEN }}
|
|
41
|
-
|
|
42
|
-
steps:
|
|
43
|
-
- name: Checkout
|
|
44
|
-
uses: actions/checkout@v4
|
|
45
|
-
|
|
46
|
-
- name: Install dependencies
|
|
47
|
-
run: |
|
|
48
|
-
uv sync
|
|
49
|
-
uv run pytest ./tests/
|
|
50
|
-
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
name: "Deploy package"
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ "main" ]
|
|
6
|
-
|
|
7
|
-
jobs:
|
|
8
|
-
build:
|
|
9
|
-
permissions:
|
|
10
|
-
id-token: write
|
|
11
|
-
contents: read
|
|
12
|
-
repository-projects: read
|
|
13
|
-
packages: read
|
|
14
|
-
|
|
15
|
-
runs-on: ubuntu-latest
|
|
16
|
-
container:
|
|
17
|
-
image: ghcr.io/goldenm-software/python-builder:uv-3.13-x86
|
|
18
|
-
options: --user root
|
|
19
|
-
credentials:
|
|
20
|
-
username: ${{ github.repository_owner }}
|
|
21
|
-
password: ${{ secrets.GITHUB_TOKEN }}
|
|
22
|
-
|
|
23
|
-
steps:
|
|
24
|
-
- name: Checkout
|
|
25
|
-
uses: actions/checkout@v4
|
|
26
|
-
|
|
27
|
-
- name: Build and upload
|
|
28
|
-
run: |
|
|
29
|
-
uv venv --python 3.13
|
|
30
|
-
uv sync --only-group dev
|
|
31
|
-
uv run python -m build
|
|
32
|
-
uv run python -m twine upload -u ${{ secrets.LAYRZ_PYPI_USERNAME }} -p ${{ secrets.LAYRZ_PYPI_PASSWORD }} dist/*
|
layrz_sdk-4.0.3/.gitignore
DELETED