apexdevkit 1.15.3__tar.gz → 1.15.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 (43) hide show
  1. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/PKG-INFO +1 -1
  2. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/server.py +15 -5
  3. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/pyproject.toml +4 -2
  4. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/LICENSE +0 -0
  5. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/README.md +0 -0
  6. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/__init__.py +0 -0
  7. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/annotation/__init__.py +0 -0
  8. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/annotation/deprecate.py +0 -0
  9. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/environment.py +0 -0
  10. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/error.py +0 -0
  11. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fastapi/__init__.py +0 -0
  12. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fastapi/builder.py +0 -0
  13. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fastapi/dependable.py +0 -0
  14. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fastapi/docs.py +0 -0
  15. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fastapi/resource.py +0 -0
  16. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fastapi/response.py +0 -0
  17. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fastapi/router.py +0 -0
  18. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fastapi/schema.py +0 -0
  19. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fastapi/service.py +0 -0
  20. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/fluent.py +0 -0
  21. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/formatter.py +0 -0
  22. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/http/__init__.py +0 -0
  23. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/http/fake.py +0 -0
  24. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/http/fluent.py +0 -0
  25. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/http/httpx.py +0 -0
  26. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/http/json.py +0 -0
  27. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/http/url.py +0 -0
  28. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/key_fn.py +0 -0
  29. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/py.typed +0 -0
  30. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/repository/__init__.py +0 -0
  31. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/repository/base.py +0 -0
  32. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/repository/connector.py +0 -0
  33. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/repository/database.py +0 -0
  34. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/repository/decorator.py +0 -0
  35. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/repository/in_memory.py +0 -0
  36. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/repository/interface.py +0 -0
  37. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/repository/mongo.py +0 -0
  38. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/repository/sqlite.py +0 -0
  39. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/synchronization.py +0 -0
  40. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/testing/__init__.py +0 -0
  41. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/testing/database.py +0 -0
  42. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/testing/fake.py +0 -0
  43. {apexdevkit-1.15.3 → apexdevkit-1.15.5}/apexdevkit/testing/rest.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: apexdevkit
3
- Version: 1.15.3
3
+ Version: 1.15.5
4
4
  Summary: Apex Development Tools for python.
5
5
  Author: Apex Dev
6
6
  Author-email: dev@apex.ge
@@ -12,6 +12,10 @@ from fastapi import FastAPI
12
12
  from apexdevkit.environment import environment_variable
13
13
 
14
14
 
15
+ def _do_nothing() -> None:
16
+ pass
17
+
18
+
15
19
  @dataclass
16
20
  class UvicornServer:
17
21
  logging_config: dict[str, Any]
@@ -20,11 +24,11 @@ class UvicornServer:
20
24
  port: int = 8000
21
25
  path: str = ""
22
26
 
23
- on_startup: Callable[[], None] = field(init=False, default_factory=lambda: None)
27
+ startup_handlers: list[Callable[[], None]] = field(default_factory=list)
24
28
 
25
29
  @classmethod
26
- def from_env(cls, env_path: str = ".env") -> UvicornServer:
27
- load_dotenv(env_path)
30
+ def from_env(cls, path: str = ".env") -> UvicornServer:
31
+ load_dotenv(path)
28
32
  Sentry().setup()
29
33
 
30
34
  return cls(LoggingConfig().setup().as_dict())
@@ -44,8 +48,10 @@ class UvicornServer:
44
48
 
45
49
  return self
46
50
 
47
- def before_run(self, execute: Callable[[], None]):
48
- self.on_startup = execute
51
+ def before_run(self, execute: Callable[[], None]) -> UvicornServer:
52
+ self.startup_handlers.append(execute)
53
+
54
+ return self
49
55
 
50
56
  def run(self, api: FastAPI) -> None:
51
57
  self.on_startup()
@@ -58,6 +64,10 @@ class UvicornServer:
58
64
  log_config=self.logging_config,
59
65
  )
60
66
 
67
+ def on_startup(self) -> None:
68
+ for handler in self.startup_handlers:
69
+ handler()
70
+
61
71
 
62
72
  @dataclass
63
73
  class Sentry:
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "apexdevkit"
3
- version = "1.15.3"
3
+ version = "1.15.5"
4
4
  description = "Apex Development Tools for python."
5
5
  authors = ["Apex Dev <dev@apex.ge>"]
6
6
  readme = "README.md"
@@ -33,7 +33,6 @@ strict = true
33
33
  exclude = [
34
34
  "apexdevkit/fastapi/schema.py",
35
35
  "apexdevkit/fastapi/dependable.py",
36
- "apexdevkit/server.py",
37
36
  ]
38
37
 
39
38
  [tool.ruff]
@@ -61,6 +60,9 @@ source = [
61
60
  "apexdevkit",
62
61
  "tests",
63
62
  ]
63
+ omit = [
64
+ "apexdevkit/server.py",
65
+ ]
64
66
 
65
67
  [tool.coverage.report]
66
68
  skip_empty = true
File without changes
File without changes