reyserver 1.1.53__py3-none-any.whl → 1.1.54__py3-none-any.whl

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 reyserver might be problematic. Click here for more details.

reyserver/rserver.py CHANGED
@@ -48,6 +48,7 @@ class Server(ServerBase, Singleton):
48
48
  after: CoroutineFunctionSimple | Sequence[CoroutineFunctionSimple] | None = None,
49
49
  ssl_cert: str | None = None,
50
50
  ssl_key: str | None = None,
51
+ db_warm: bool = False,
51
52
  debug: bool = False
52
53
  ) -> None:
53
54
  """
@@ -62,6 +63,7 @@ class Server(ServerBase, Singleton):
62
63
  after : Execute after server end.
63
64
  ssl_cert : SSL certificate file path.
64
65
  ssl_key : SSL key file path.
66
+ db_warm : Whether database pre create connection to warm all pool.
65
67
  debug : Whether use development mode debug server.
66
68
  """
67
69
 
@@ -76,7 +78,7 @@ class Server(ServerBase, Singleton):
76
78
  Bind.Depend(task)
77
79
  for task in depend
78
80
  ]
79
- lifespan = self.__create_lifespan(before, after)
81
+ lifespan = self.__create_lifespan(before, after, db_warm)
80
82
 
81
83
  # Build.
82
84
  ServerConfig.server = self
@@ -114,8 +116,9 @@ class Server(ServerBase, Singleton):
114
116
 
115
117
  def __create_lifespan(
116
118
  self,
117
- before: CoroutineFunctionSimple | Sequence[CoroutineFunctionSimple] | None = None,
118
- after: CoroutineFunctionSimple | Sequence[CoroutineFunctionSimple] | None = None,
119
+ before: CoroutineFunctionSimple | Sequence[CoroutineFunctionSimple] | None,
120
+ after: CoroutineFunctionSimple | Sequence[CoroutineFunctionSimple] | None,
121
+ db_warm: bool
119
122
  ) -> _AsyncGeneratorContextManager[None, None]:
120
123
  """
121
124
  Create asynchronous function of lifespan manager.
@@ -124,6 +127,7 @@ class Server(ServerBase, Singleton):
124
127
  ----------
125
128
  before : Execute before server start.
126
129
  after : Execute after server end.
130
+ db_warm : Whether database pre create connection to warm all pool.
127
131
 
128
132
  Returns
129
133
  -------
@@ -154,6 +158,12 @@ class Server(ServerBase, Singleton):
154
158
  # Before.
155
159
  for task in before:
156
160
  await task()
161
+
162
+ # Databse.
163
+ if db_warm:
164
+ await self.db.warm_all()
165
+
166
+ # Runing.
157
167
  yield
158
168
 
159
169
  # After.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: reyserver
3
- Version: 1.1.53
3
+ Version: 1.1.54
4
4
  Summary: Backend server method set.
5
5
  Project-URL: homepage, https://github.com/reyxbo/reyserver/
6
6
  Author-email: Rey <reyxbo@163.com>
@@ -4,8 +4,8 @@ reyserver/rauth.py,sha256=oa6Iwuutcj9eO6RH7DaT-rPn_YqYwKuyHYaBd3lZoZE,11728
4
4
  reyserver/rbase.py,sha256=jgjAkT1kxzVKB60xfWxZbnQJsehhcTBr24AclTYjc4g,5603
5
5
  reyserver/rclient.py,sha256=IWZ3smyIP0_YJrfSrM8JFCr0FCtN02AyT3hp8YuSsDQ,5103
6
6
  reyserver/rfile.py,sha256=bvuXOYO3UDM1jMiyNzQDz56_0ekZUEIRcfNFAhGgdUY,9010
7
- reyserver/rserver.py,sha256=wQMAtCb3iu3XfYSiGS7TbqHslxdcMFLAmCaYdNToDbY,8241
8
- reyserver-1.1.53.dist-info/METADATA,sha256=9DvHdPLFWZ6BASCz_WFMmGLB5ZmTstbC0_99kaQjhw4,1689
9
- reyserver-1.1.53.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
10
- reyserver-1.1.53.dist-info/licenses/LICENSE,sha256=UYLPqp7BvPiH8yEZduJqmmyEl6hlM3lKrFIefiD4rvk,1059
11
- reyserver-1.1.53.dist-info/RECORD,,
7
+ reyserver/rserver.py,sha256=EDIspT0uWhiWl7uIhRDJtcxRvZG96GaVNWYik7pprz4,8561
8
+ reyserver-1.1.54.dist-info/METADATA,sha256=xajKdcgwZ5ajkYubVO_TXjA1dL1KY6xH_36zokahzbA,1689
9
+ reyserver-1.1.54.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
10
+ reyserver-1.1.54.dist-info/licenses/LICENSE,sha256=UYLPqp7BvPiH8yEZduJqmmyEl6hlM3lKrFIefiD4rvk,1059
11
+ reyserver-1.1.54.dist-info/RECORD,,