smdb-web-server 2.0.3__tar.gz → 2.0.4__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 (24) hide show
  1. {smdb_web_server-2.0.3/smdb_web_server.egg-info → smdb_web_server-2.0.4}/PKG-INFO +1 -1
  2. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/setup.cfg +1 -1
  3. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/HTMLServer.py +14 -3
  4. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4/smdb_web_server.egg-info}/PKG-INFO +1 -1
  5. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/LICENSE +0 -0
  6. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/README.md +0 -0
  7. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/pyproject.toml +0 -0
  8. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/HTTPRequestHandler.py +0 -0
  9. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/__init__.py +0 -0
  10. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/data/Base.py +0 -0
  11. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/data/Constants.py +0 -0
  12. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/data/Protocol.py +0 -0
  13. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/data/ResponseCode.py +0 -0
  14. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/data/Timer.py +0 -0
  15. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/data/UrlData.py +0 -0
  16. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/data/__init__.py +0 -0
  17. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/data/wrappers.py +0 -0
  18. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/errors/CloseException.py +0 -0
  19. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/errors/KnownError.py +0 -0
  20. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/errors/RequestException.py +0 -0
  21. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server/errors/__init__.py +0 -0
  22. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server.egg-info/SOURCES.txt +0 -0
  23. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server.egg-info/dependency_links.txt +0 -0
  24. {smdb_web_server-2.0.3 → smdb_web_server-2.0.4}/smdb_web_server.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: smdb_web_server
3
- Version: 2.0.3
3
+ Version: 2.0.4
4
4
  Summary: A really basic, not so safe web server.
5
5
  Home-page: https://github.com/NightKey/smdb-server
6
6
  Author: Janthó Dávid
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = smdb_web_server
3
- version = 2.0.3
3
+ version = 2.0.4
4
4
  author = Janthó Dávid
5
5
  author_email = davidjantho@gmail.com
6
6
  description = A really basic, not so safe web server.
@@ -1,6 +1,6 @@
1
1
  import asyncio
2
2
  from threading import Event, Thread
3
- from typing import Callable, Dict, Optional, Any, List, Coroutine, Union
3
+ from typing import Callable, Dict, Optional, Any, List, Coroutine, Union, Literal, overload
4
4
  from os import path
5
5
 
6
6
  from smdb_logger import Logger, LEVEL
@@ -8,6 +8,8 @@ from smdb_logger import Logger, LEVEL
8
8
  from smdb_web_server import HTTPRequestHandler, Protocol, UrlData, TEMPLATES, get_rules, put_rules, post_rules, STATIC, \
9
9
  async_wrapped, Base, wrapped, show_open_calls
10
10
 
11
+ CallbackHandler = Union[Callable[[UrlData], Union[str, None]], Callable[[UrlData], Coroutine[Any, Any, Union[str, None]]]]
12
+ GetCallbackHandler = Union[Callable[[UrlData], str], Callable[[UrlData], Coroutine[Any, Any, str]]]
11
13
 
12
14
  class HTMLServer(Base):
13
15
  def __init__(
@@ -68,8 +70,17 @@ class HTMLServer(Base):
68
70
  def render_static_file(self, name: str) -> Union[str, bytes, None]:
69
71
  return self._render_static_file(name=name, STATIC=STATIC)
70
72
 
73
+ @overload
71
74
  @staticmethod
72
- def add_url_rule(rule: str, callback: Union[Callable[[UrlData], str], Callable[[UrlData], Coroutine[Any, Any, str]]], protocol: Protocol = Protocol.Get, disable_cache: bool = False) -> None:
75
+ def add_url_rule(rule: str, callback: GetCallbackHandler, protocol: Literal[Protocol.Get] = Protocol.Get, disable_cache: bool = False) -> None:...
76
+ @overload
77
+ @staticmethod
78
+ def add_url_rule(rule: str, callback: CallbackHandler, protocol: Literal[Protocol.Put, Protocol.Post], disable_cache: bool = False) -> None:...
79
+ @overload
80
+ @staticmethod
81
+ def add_url_rule(rule: str, callback: CallbackHandler, protocol: Protocol = Protocol.Get, disable_cache: bool = False) -> None:...
82
+ @staticmethod
83
+ def add_url_rule(rule: str, callback: CallbackHandler, protocol: Protocol = Protocol.Get, disable_cache: bool = False) -> None:
73
84
  if protocol == Protocol.Get:
74
85
  get_rules[rule] = (callback, disable_cache)
75
86
  elif protocol == Protocol.Put:
@@ -79,7 +90,7 @@ class HTMLServer(Base):
79
90
 
80
91
  @classmethod
81
92
  def as_url_rule(cls, rule: Optional[str] = None, protocol: Protocol = Protocol.Get, disable_cache: bool = False) -> Any:
82
- def decorator(callback: Union[Callable[[...], str], Callable[[...], Coroutine[Any, Any, str]]]):
93
+ def decorator(callback: CallbackHandler):
83
94
  cls.add_url_rule(rule or callback.__name__, callback, protocol, disable_cache)
84
95
  return decorator
85
96
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: smdb_web_server
3
- Version: 2.0.3
3
+ Version: 2.0.4
4
4
  Summary: A really basic, not so safe web server.
5
5
  Home-page: https://github.com/NightKey/smdb-server
6
6
  Author: Janthó Dávid
File without changes