reyserver 1.1.53__py3-none-any.whl → 1.1.55__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/rauth.py CHANGED
@@ -30,7 +30,7 @@ __all__ = (
30
30
  )
31
31
 
32
32
 
33
- class DatabaseORMTableUser(rorm.Model, table=True):
33
+ class DatabaseORMTableUser(rorm.Table):
34
34
  """
35
35
  Database `user` table ORM model.
36
36
  """
@@ -48,7 +48,7 @@ class DatabaseORMTableUser(rorm.Model, table=True):
48
48
  is_valid: bool = rorm.Field(rorm.types_mysql.TINYINT(unsigned=True), field_default='1', not_null=True, comment='Is the valid.')
49
49
 
50
50
 
51
- class DatabaseORMTableRole(rorm.Model, table=True):
51
+ class DatabaseORMTableRole(rorm.Table):
52
52
  """
53
53
  Database `role` table ORM model.
54
54
  """
@@ -62,7 +62,7 @@ class DatabaseORMTableRole(rorm.Model, table=True):
62
62
  desc: str = rorm.Field(rorm.types.VARCHAR(500), comment='Role description.')
63
63
 
64
64
 
65
- class DatabaseORMTablePerm(rorm.Model, table=True):
65
+ class DatabaseORMTablePerm(rorm.Table):
66
66
  """
67
67
  Database `perm` table ORM model.
68
68
  """
@@ -77,7 +77,7 @@ class DatabaseORMTablePerm(rorm.Model, table=True):
77
77
  api: str = rorm.Field(rorm.types.VARCHAR(1000), comment='API resource path regular expression "match" pattern.')
78
78
 
79
79
 
80
- class DatabaseORMTableUserRole(rorm.Model, table=True):
80
+ class DatabaseORMTableUserRole(rorm.Table):
81
81
  """
82
82
  Database `user_role` table ORM model.
83
83
  """
@@ -90,7 +90,7 @@ class DatabaseORMTableUserRole(rorm.Model, table=True):
90
90
  role_id: int = rorm.Field(rorm.types_mysql.SMALLINT(unsigned=True), key=True, comment='Role ID.')
91
91
 
92
92
 
93
- class DatabaseORMTableRolePerm(rorm.Model, table=True):
93
+ class DatabaseORMTableRolePerm(rorm.Table):
94
94
  """
95
95
  Database `role_perm` table ORM model.
96
96
  """
reyserver/rfile.py CHANGED
@@ -25,7 +25,7 @@ __all__ = (
25
25
  )
26
26
 
27
27
 
28
- class DatabaseORMTableInfo(rorm.Model, table=True):
28
+ class DatabaseORMTableInfo(rorm.Table):
29
29
  """
30
30
  Database `info` table ORM model.
31
31
  """
@@ -39,7 +39,7 @@ class DatabaseORMTableInfo(rorm.Model, table=True):
39
39
  note: str = rorm.Field(rorm.types.VARCHAR(500), comment='File note.')
40
40
 
41
41
 
42
- class DatabaseORMTableData(rorm.Model, table=True):
42
+ class DatabaseORMTableData(rorm.Table):
43
43
  """
44
44
  Database `data` table ORM model.
45
45
  """
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.55
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>
@@ -0,0 +1,11 @@
1
+ reyserver/__init__.py,sha256=7GX64p7uI2eetJH9NJ-DTg-8iyQwOsGcviADFJCPxVA,373
2
+ reyserver/rall.py,sha256=riyDRTUsigco_Bee1H4aZFb8IgvjnxdX9qcnVb9i9mE,270
3
+ reyserver/rauth.py,sha256=Wua-4Y_MoPpW65M0KFO1xzj3t0zWDQHZU0LfaFXtMrs,11668
4
+ reyserver/rbase.py,sha256=jgjAkT1kxzVKB60xfWxZbnQJsehhcTBr24AclTYjc4g,5603
5
+ reyserver/rclient.py,sha256=IWZ3smyIP0_YJrfSrM8JFCr0FCtN02AyT3hp8YuSsDQ,5103
6
+ reyserver/rfile.py,sha256=J3iQQi4modU98yfFyovyfeHqR1nh8GyTEz1Bvo6555A,8986
7
+ reyserver/rserver.py,sha256=EDIspT0uWhiWl7uIhRDJtcxRvZG96GaVNWYik7pprz4,8561
8
+ reyserver-1.1.55.dist-info/METADATA,sha256=u_iRcTcVBs-Nt-8r-CdZz7zGbRJyYu6Q1icFCfSQG-Q,1689
9
+ reyserver-1.1.55.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
10
+ reyserver-1.1.55.dist-info/licenses/LICENSE,sha256=UYLPqp7BvPiH8yEZduJqmmyEl6hlM3lKrFIefiD4rvk,1059
11
+ reyserver-1.1.55.dist-info/RECORD,,
@@ -1,11 +0,0 @@
1
- reyserver/__init__.py,sha256=7GX64p7uI2eetJH9NJ-DTg-8iyQwOsGcviADFJCPxVA,373
2
- reyserver/rall.py,sha256=riyDRTUsigco_Bee1H4aZFb8IgvjnxdX9qcnVb9i9mE,270
3
- reyserver/rauth.py,sha256=oa6Iwuutcj9eO6RH7DaT-rPn_YqYwKuyHYaBd3lZoZE,11728
4
- reyserver/rbase.py,sha256=jgjAkT1kxzVKB60xfWxZbnQJsehhcTBr24AclTYjc4g,5603
5
- reyserver/rclient.py,sha256=IWZ3smyIP0_YJrfSrM8JFCr0FCtN02AyT3hp8YuSsDQ,5103
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,,