apexdevkit 1.23.3__tar.gz → 1.23.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.
Files changed (55) hide show
  1. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/PKG-INFO +1 -1
  2. apexdevkit-1.23.5/apexdevkit/date.py +79 -0
  3. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/server.py +13 -2
  4. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/pyproject.toml +1 -1
  5. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/LICENSE +0 -0
  6. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/README.md +0 -0
  7. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/__init__.py +0 -0
  8. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/annotation/__init__.py +0 -0
  9. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/annotation/deprecate.py +0 -0
  10. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/environment.py +0 -0
  11. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/error.py +0 -0
  12. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/__init__.py +0 -0
  13. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/builder.py +0 -0
  14. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/dependable.py +0 -0
  15. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/docs.py +0 -0
  16. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/name.py +0 -0
  17. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/request.py +0 -0
  18. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/resource.py +0 -0
  19. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/response.py +0 -0
  20. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/router.py +0 -0
  21. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/schema.py +0 -0
  22. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fastapi/service.py +0 -0
  23. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/fluent.py +0 -0
  24. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/formatter.py +0 -0
  25. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/http/__init__.py +0 -0
  26. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/http/fake.py +0 -0
  27. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/http/fluent.py +0 -0
  28. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/http/httpx/__init__.py +0 -0
  29. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/http/httpx/client.py +0 -0
  30. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/http/httpx/hooks.py +0 -0
  31. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/http/json.py +0 -0
  32. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/http/url.py +0 -0
  33. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/id.py +0 -0
  34. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/key_fn.py +0 -0
  35. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/py.typed +0 -0
  36. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/query/__init__.py +0 -0
  37. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/query/generator.py +0 -0
  38. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/query/query.py +0 -0
  39. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/__init__.py +0 -0
  40. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/base.py +0 -0
  41. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/connector.py +0 -0
  42. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/database.py +0 -0
  43. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/decorator.py +0 -0
  44. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/in_memory.py +0 -0
  45. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/interface.py +0 -0
  46. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/mssql.py +0 -0
  47. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/repository.py +0 -0
  48. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/sql.py +0 -0
  49. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/repository/sqlite.py +0 -0
  50. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/synchronization.py +0 -0
  51. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/testing/__init__.py +0 -0
  52. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/testing/database.py +0 -0
  53. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/testing/fake.py +0 -0
  54. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/testing/rest.py +0 -0
  55. {apexdevkit-1.23.3 → apexdevkit-1.23.5}/apexdevkit/value.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: apexdevkit
3
- Version: 1.23.3
3
+ Version: 1.23.5
4
4
  Summary: Apex Development Tools for python.
5
5
  Author: Apex Dev
6
6
  Author-email: dev@apex.ge
@@ -0,0 +1,79 @@
1
+ from __future__ import annotations
2
+
3
+ from dataclasses import dataclass
4
+ from datetime import UTC, datetime
5
+ from zoneinfo import ZoneInfo
6
+
7
+
8
+ @dataclass(frozen=True)
9
+ class DateTime:
10
+ timestamp_ms: int
11
+
12
+ # Date in format of "yyyy-mm-dd"
13
+ def as_date(self, time_zone: ZoneInfo | None = None) -> str:
14
+ if time_zone is None:
15
+ time_zone = ZoneInfo("UTC")
16
+
17
+ dt = datetime.fromtimestamp(self.as_timestamp(), tz=UTC)
18
+ local_dt = dt.astimezone(time_zone)
19
+ return local_dt.strftime("%Y-%m-%d")
20
+
21
+ # Date in format of "yyyy-mm-ddTHH:MM:SS"
22
+ def as_date_time(self, time_zone: ZoneInfo | None = None) -> str:
23
+ if time_zone is None:
24
+ time_zone = ZoneInfo("UTC")
25
+
26
+ dt = datetime.fromtimestamp(self.as_timestamp(), tz=UTC)
27
+ local_dt = dt.astimezone(time_zone)
28
+ return local_dt.strftime("%Y-%m-%dT%H:%M:%S")
29
+
30
+ def as_timestamp(self) -> float:
31
+ return float(self.timestamp_ms) / 1000.0
32
+
33
+ def as_timestamp_ms(self) -> int:
34
+ return self.timestamp_ms
35
+
36
+ # Date in format of "yyyy-mm-dd"
37
+ @classmethod
38
+ def from_date(cls, date: str, time_zone: ZoneInfo | None = None) -> DateTime:
39
+ if time_zone is None:
40
+ time_zone = ZoneInfo("UTC")
41
+
42
+ try:
43
+ dt = datetime.strptime(date, "%Y-%m-%d")
44
+ dt = dt.replace(tzinfo=time_zone)
45
+ timestamp_ms = int(dt.timestamp() * 1000)
46
+ return cls(timestamp_ms=timestamp_ms)
47
+
48
+ except ValueError as e:
49
+ raise ValueError(
50
+ f"Invalid date format: '{date}'. Expected 'yyyy-mm-dd'."
51
+ ) from e
52
+
53
+ # Date in format of "yyyy-mm-ddTHH:MM:SS"
54
+ @classmethod
55
+ def from_date_time(
56
+ cls, date_time: str, time_zone: ZoneInfo | None = None
57
+ ) -> DateTime:
58
+ if time_zone is None:
59
+ time_zone = ZoneInfo("UTC")
60
+
61
+ try:
62
+ dt = datetime.strptime(date_time, "%Y-%m-%dT%H:%M:%S")
63
+ dt = dt.replace(tzinfo=time_zone)
64
+ timestamp_ms = int(dt.timestamp() * 1000)
65
+ return cls(timestamp_ms=timestamp_ms)
66
+ except ValueError as e:
67
+ raise ValueError(
68
+ f"Invalid datetime format: '{date_time}'."
69
+ f" Expected 'yyyy-mm-ddTHH:MM:SS'."
70
+ ) from e
71
+
72
+ @classmethod
73
+ def from_timestamp(cls, timestamp: float) -> DateTime:
74
+ timestamp_ms = int(timestamp * 1000)
75
+ return cls(timestamp_ms=timestamp_ms)
76
+
77
+ @classmethod
78
+ def from_timestamp_ms(cls, timestamp_ms: int) -> DateTime:
79
+ return cls(timestamp_ms=timestamp_ms)
@@ -74,6 +74,14 @@ class UvicornServer:
74
74
  class Sentry:
75
75
  dsn: str = environment_variable("SENTRY_DSN", default="")
76
76
  release: str = environment_variable("RELEASE", default="unknown")
77
+ trace_sample_rate: str = environment_variable(
78
+ "SENTRY_TRACE_SAMPLE_RATE",
79
+ default="0.2",
80
+ )
81
+ profile_sample_rate: str = environment_variable(
82
+ "SENTRY_PROFILE_SAMPLE_RATE",
83
+ default="0.2",
84
+ )
77
85
 
78
86
  def setup(self) -> None:
79
87
  if not self.dsn:
@@ -81,8 +89,11 @@ class Sentry:
81
89
 
82
90
  sentry_sdk.init(
83
91
  release=self.release,
84
- traces_sample_rate=1.0,
85
- profiles_sample_rate=1.0,
92
+ traces_sample_rate=float(self.trace_sample_rate),
93
+ profiles_sample_rate=float(self.profile_sample_rate),
94
+ _experiments={
95
+ "enable_logs": True,
96
+ },
86
97
  )
87
98
 
88
99
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "apexdevkit"
3
- version = "1.23.3"
3
+ version = "1.23.5"
4
4
  description = "Apex Development Tools for python."
5
5
  readme = "README.md"
6
6
  authors = [
File without changes
File without changes