fastapi-rtk 1.0.22__tar.gz → 1.0.24__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 (133) hide show
  1. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/PKG-INFO +1 -1
  2. fastapi_rtk-1.0.24/fastapi_rtk/_version.py +1 -0
  3. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/model.py +7 -1
  4. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/manager.py +1 -1
  5. fastapi_rtk-1.0.22/fastapi_rtk/_version.py +0 -1
  6. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/.gitignore +0 -0
  7. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/LICENSE +0 -0
  8. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/README.md +0 -0
  9. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/__init__.py +0 -0
  10. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/api/__init__.py +0 -0
  11. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/api/base_api.py +0 -0
  12. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/api/model_rest_api.py +0 -0
  13. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/apis.py +0 -0
  14. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/__init__.py +0 -0
  15. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/auth.py +0 -0
  16. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/hashers/__init__.py +0 -0
  17. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/hashers/pbkdf2.py +0 -0
  18. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/hashers/scrypt.py +0 -0
  19. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/password_helpers/__init__.py +0 -0
  20. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/password_helpers/fab.py +0 -0
  21. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/strategies/__init__.py +0 -0
  22. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/strategies/config.py +0 -0
  23. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/strategies/db.py +0 -0
  24. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/auth/strategies/jwt.py +0 -0
  25. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/__init__.py +0 -0
  26. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/generic/__init__.py +0 -0
  27. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/generic/column.py +0 -0
  28. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/generic/db.py +0 -0
  29. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/generic/exceptions.py +0 -0
  30. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/generic/filters.py +0 -0
  31. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/generic/interface.py +0 -0
  32. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/generic/model.py +0 -0
  33. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/generic/session.py +0 -0
  34. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/__init__.py +0 -0
  35. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/column.py +0 -0
  36. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/db.py +0 -0
  37. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/exceptions.py +0 -0
  38. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/extensions/__init__.py +0 -0
  39. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/extensions/audit/__init__.py +0 -0
  40. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/extensions/audit/audit.py +0 -0
  41. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/extensions/audit/types.py +0 -0
  42. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/extensions/geoalchemy2/__init__.py +0 -0
  43. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/extensions/geoalchemy2/filters.py +0 -0
  44. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/extensions/geoalchemy2/geometry_converter.py +0 -0
  45. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/filters.py +0 -0
  46. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/interface.py +0 -0
  47. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/backends/sqla/session.py +0 -0
  48. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/bases/__init__.py +0 -0
  49. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/bases/db.py +0 -0
  50. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/bases/file_manager.py +0 -0
  51. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/bases/filter.py +0 -0
  52. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/bases/interface.py +0 -0
  53. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/bases/model.py +0 -0
  54. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/bases/session.py +0 -0
  55. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/__init__.py +0 -0
  56. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/cli.py +0 -0
  57. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/__init__.py +0 -0
  58. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/db/__init__.py +0 -0
  59. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/db/templates/fastapi/README +0 -0
  60. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/db/templates/fastapi/alembic.ini.mako +0 -0
  61. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/db/templates/fastapi/env.py +0 -0
  62. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/db/templates/fastapi/script.py.mako +0 -0
  63. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/db/templates/fastapi-multidb/README +0 -0
  64. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/db/templates/fastapi-multidb/alembic.ini.mako +0 -0
  65. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/db/templates/fastapi-multidb/env.py +0 -0
  66. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/db/templates/fastapi-multidb/script.py.mako +0 -0
  67. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/export.py +0 -0
  68. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/security.py +0 -0
  69. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/commands/translate.py +0 -0
  70. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/const.py +0 -0
  71. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/decorators.py +0 -0
  72. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/types.py +0 -0
  73. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/cli/utils.py +0 -0
  74. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/config.py +0 -0
  75. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/const.py +0 -0
  76. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/db.py +0 -0
  77. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/decorators.py +0 -0
  78. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/dependencies.py +0 -0
  79. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/exceptions.py +0 -0
  80. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/fastapi_react_toolkit.py +0 -0
  81. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/file_managers/__init__.py +0 -0
  82. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/file_managers/file_manager.py +0 -0
  83. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/file_managers/image_manager.py +0 -0
  84. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/file_managers/s3_file_manager.py +0 -0
  85. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/file_managers/s3_image_manager.py +0 -0
  86. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/filters.py +0 -0
  87. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/globals.py +0 -0
  88. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/__init__.py +0 -0
  89. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/babel/__init__.py +0 -0
  90. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/babel/cli.py +0 -0
  91. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/babel/config.py +0 -0
  92. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/babel.cfg +0 -0
  93. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/lazy_text.py +0 -0
  94. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/messages.pot +0 -0
  95. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/translations/de/LC_MESSAGES/messages.mo +0 -0
  96. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/translations/de/LC_MESSAGES/messages.po +0 -0
  97. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/translations/en/LC_MESSAGES/messages.mo +0 -0
  98. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/lang/translations/en/LC_MESSAGES/messages.po +0 -0
  99. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/middlewares.py +0 -0
  100. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/mixins.py +0 -0
  101. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/models.py +0 -0
  102. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/routers.py +0 -0
  103. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/schemas.py +0 -0
  104. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/security/__init__.py +0 -0
  105. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/security/sqla/__init__.py +0 -0
  106. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/security/sqla/apis.py +0 -0
  107. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/security/sqla/models.py +0 -0
  108. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/security/sqla/security_manager.py +0 -0
  109. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/setting.py +0 -0
  110. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/types.py +0 -0
  111. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/__init__.py +0 -0
  112. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/async_task_runner.py +0 -0
  113. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/class_factory.py +0 -0
  114. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/csv_json_converter.py +0 -0
  115. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/deep_merge.py +0 -0
  116. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/extender_mixin.py +0 -0
  117. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/flask_appbuilder_utils.py +0 -0
  118. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/formatter.py +0 -0
  119. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/hooks.py +0 -0
  120. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/lazy.py +0 -0
  121. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/merge_schema.py +0 -0
  122. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/multiple_async_contexts.py +0 -0
  123. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/pydantic.py +0 -0
  124. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/run_utils.py +0 -0
  125. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/self_dependencies.py +0 -0
  126. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/smartdefaultdict.py +0 -0
  127. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/sqla.py +0 -0
  128. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/timezone.py +0 -0
  129. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/update_signature.py +0 -0
  130. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/utils/use_default_when_none.py +0 -0
  131. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/fastapi_rtk/version.py +0 -0
  132. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/pyproject.toml +0 -0
  133. {fastapi_rtk-1.0.22 → fastapi_rtk-1.0.24}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fastapi-rtk
3
- Version: 1.0.22
3
+ Version: 1.0.24
4
4
  Summary: A package that provides a set of tools to build a FastAPI application with a Class-Based CRUD API.
5
5
  Project-URL: Homepage, https://codeberg.org/datatactics/fastapi-rtk
6
6
  Project-URL: Issues, https://codeberg.org/datatactics/fastapi-rtk/issues
@@ -0,0 +1 @@
1
+ __version__ = "1.0.24"
@@ -125,16 +125,22 @@ class Model(sqlalchemy.ext.asyncio.AsyncAttrs, BasicModel, DeclarativeBase):
125
125
  def get_pk_attrs(cls):
126
126
  return [col.name for col in cls.__mapper__.primary_key]
127
127
 
128
- async def load(self, *cols: list[str] | str):
128
+ async def load(self, *cols: list[str] | str, refresh=False):
129
129
  """
130
130
  Asynchronously loads the specified columns of the model instance.
131
131
 
132
132
  Args:
133
133
  *cols (list[str] | str): The columns to load. Can be a list of strings or individual string arguments.
134
+ refresh (bool, optional): If True, forces reloading of all specified columns even if they are already loaded. Defaults to False.
134
135
  """
135
136
  cols = [
136
137
  item for col in cols for item in (col if isinstance(col, list) else [col])
137
138
  ]
139
+ if not refresh:
140
+ # Filter out already-loaded attributes
141
+ cols = [col for col in cols if col not in self.__dict__]
142
+ if not cols:
143
+ return
138
144
 
139
145
  async with AsyncTaskRunner() as runner:
140
146
  for col in cols:
@@ -82,7 +82,7 @@ class UserManager(IDParser, BaseUserManager[User, int]):
82
82
  list[Role]: A list of Role objects that match the given role names.
83
83
  """
84
84
  if not roles:
85
- return []
85
+ return list[Role]()
86
86
  if isinstance(roles, str):
87
87
  roles = [roles]
88
88
  statement = select(Role).where(Role.name.in_(roles))
@@ -1 +0,0 @@
1
- __version__ = "1.0.22"
File without changes
File without changes
File without changes
File without changes