data-sourcerer 0.8.1__tar.gz → 0.9.0__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 (137) hide show
  1. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/PKG-INFO +5 -3
  2. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/pyproject.toml +6 -4
  3. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/__init__.py +1 -1
  4. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/access_credentials/entities.py +4 -4
  5. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/access_credentials/repositories.py +1 -1
  6. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/access_credentials/services.py +1 -1
  7. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/storage/repositories.py +1 -1
  8. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/storage_provider/entities.py +1 -1
  9. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/access_credentials/repositories.py +1 -1
  10. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/file_system/services.py +1 -1
  11. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage/repositories.py +1 -1
  12. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage/services.py +1 -1
  13. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/utils.py +1 -1
  14. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/file_system_finder/widgets/file_system_navigator.py +3 -3
  15. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storage_action_progress/main.py +1 -1
  16. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/.gitignore +0 -0
  17. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/LICENSE +0 -0
  18. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/README.md +0 -0
  19. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/__init__.py +0 -0
  20. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/access_credentials/__init__.py +0 -0
  21. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/access_credentials/exceptions.py +0 -0
  22. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/file_system/__init__.py +0 -0
  23. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/file_system/entities.py +0 -0
  24. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/file_system/exceptions.py +0 -0
  25. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/file_system/services.py +0 -0
  26. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/package_meta/__init__.py +0 -0
  27. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/package_meta/entities.py +0 -0
  28. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/package_meta/services.py +0 -0
  29. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/settings/__init__.py +0 -0
  30. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/settings/entities.py +0 -0
  31. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/settings/repositories.py +0 -0
  32. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/settings/services.py +0 -0
  33. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/shared/__init__.py +0 -0
  34. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/shared/entities.py +0 -0
  35. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/storage/__init__.py +0 -0
  36. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/storage/entities.py +0 -0
  37. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/storage_provider/__init__.py +0 -0
  38. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/storage_provider/exceptions.py +0 -0
  39. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/domain/storage_provider/services.py +0 -0
  40. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/__init__.py +0 -0
  41. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/access_credentials/__init__.py +0 -0
  42. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/access_credentials/exceptions.py +0 -0
  43. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/access_credentials/registry.py +0 -0
  44. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/access_credentials/services.py +0 -0
  45. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/db/__init__.py +0 -0
  46. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/db/config.py +0 -0
  47. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/db/models.py +0 -0
  48. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/file_system/__init__.py +0 -0
  49. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/file_system/exceptions.py +0 -0
  50. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/package_meta/__init__.py +0 -0
  51. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/package_meta/services.py +0 -0
  52. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/settings/__init__.py +0 -0
  53. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/settings/repositories.py +0 -0
  54. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/settings/services.py +0 -0
  55. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage/__init__.py +0 -0
  56. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage_provider/__init__.py +0 -0
  57. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage_provider/exceptions.py +0 -0
  58. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage_provider/registry.py +0 -0
  59. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage_provider/services/__init__.py +0 -0
  60. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage_provider/services/azure.py +0 -0
  61. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage_provider/services/gcp.py +0 -0
  62. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/infrastructure/storage_provider/services/s3.py +0 -0
  63. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/__init__.py +0 -0
  64. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/app.py +0 -0
  65. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/di_container.py +0 -0
  66. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/__init__.py +0 -0
  67. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/about/__init__.py +0 -0
  68. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/about/main.py +0 -0
  69. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/about/styles.tcss +0 -0
  70. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/critical_error/__init__.py +0 -0
  71. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/critical_error/main.py +0 -0
  72. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/critical_error/styles.tcss +0 -0
  73. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/file_system_finder/__init__.py +0 -0
  74. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/file_system_finder/main.py +0 -0
  75. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/file_system_finder/styles.tcss +0 -0
  76. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/file_system_finder/widgets/__init__.py +0 -0
  77. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/__init__.py +0 -0
  78. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/main.py +0 -0
  79. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/__init__.py +0 -0
  80. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/delete_request.py +0 -0
  81. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/download_request.py +0 -0
  82. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/presign_url_request.py +0 -0
  83. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/preview_request.py +0 -0
  84. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/refresh_storages_list_request.py +0 -0
  85. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/resizing_rule.py +0 -0
  86. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/select_storage_item.py +0 -0
  87. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/uncheck_files_request.py +0 -0
  88. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/messages/upload_request.py +0 -0
  89. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/mixins/__init__.py +0 -0
  90. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/mixins/resize_containers_watcher_mixin.py +0 -0
  91. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/styles.tcss +0 -0
  92. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/widgets/__init__.py +0 -0
  93. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/widgets/gradient.py +0 -0
  94. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/widgets/resizing_rule.py +0 -0
  95. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/widgets/storage_content.py +0 -0
  96. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/main/widgets/storage_list_sidebar.py +0 -0
  97. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/preview_content/__init__.py +0 -0
  98. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/preview_content/main.py +0 -0
  99. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/preview_content/styles.tcss +0 -0
  100. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/preview_content/text_area_style.py +0 -0
  101. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/provider_creds_list/__init__.py +0 -0
  102. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/provider_creds_list/main.py +0 -0
  103. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/provider_creds_list/messages/__init__.py +0 -0
  104. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/provider_creds_list/messages/reload_credentials_request.py +0 -0
  105. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/provider_creds_list/styles.tcss +0 -0
  106. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/provider_creds_registration/__init__.py +0 -0
  107. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/provider_creds_registration/main.py +0 -0
  108. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/provider_creds_registration/styles.tcss +0 -0
  109. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/question/__init__.py +0 -0
  110. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/question/main.py +0 -0
  111. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/question/styles.tcss +0 -0
  112. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/settings/__init__.py +0 -0
  113. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/settings/main.py +0 -0
  114. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/settings/styles.tcss +0 -0
  115. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/shared/__init__.py +0 -0
  116. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/shared/containers.py +0 -0
  117. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/shared/modal_screens.py +0 -0
  118. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/shared/widgets/__init__.py +0 -0
  119. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/shared/widgets/button.py +0 -0
  120. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/shared/widgets/labeled_input.py +0 -0
  121. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/shared/widgets/spinner.py +0 -0
  122. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storage_action_progress/__init__.py +0 -0
  123. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storage_action_progress/styles.tcss +0 -0
  124. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storages_list/__init__.py +0 -0
  125. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storages_list/main.py +0 -0
  126. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storages_list/messages/__init__.py +0 -0
  127. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storages_list/messages/reload_storages_request.py +0 -0
  128. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storages_list/styles.tcss +0 -0
  129. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storages_registration/__init__.py +0 -0
  130. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storages_registration/main.py +0 -0
  131. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/screens/storages_registration/styles.tcss +0 -0
  132. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/settings.py +0 -0
  133. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/themes/__init__.py +0 -0
  134. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/themes/github_dark.py +0 -0
  135. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/presentation/utils.py +0 -0
  136. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/settings.py +0 -0
  137. {data_sourcerer-0.8.1 → data_sourcerer-0.9.0}/sourcerer/utils.py +0 -0
@@ -1,17 +1,18 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: data-sourcerer
3
- Version: 0.8.1
3
+ Version: 0.9.0
4
4
  Summary: Sourcerer is a terminal cloud storage navigator.
5
5
  Author-email: Bohdana Kuzmenko <bohdana.kuzmenko.dev@gmail.com>
6
6
  License: MIT
7
7
  License-File: LICENSE
8
8
  Keywords: cli,cloud,gcp,s3,storage,terminal,textual,ui
9
- Requires-Python: >=3.9
9
+ Requires-Python: >=3.10
10
10
  Requires-Dist: azure-identity<2.0.0,>=1.22.0
11
11
  Requires-Dist: azure-mgmt-storage<23.0.0,>=22.2.0
12
12
  Requires-Dist: azure-storage-blob<13.0.0,>=12.25.1
13
13
  Requires-Dist: boto3<2.0.0,>=1.26.0
14
- Requires-Dist: cryptography<45.0.0,>=44.0.2
14
+ Requires-Dist: cachetools>=5.5.2
15
+ Requires-Dist: cryptography<47,>=46.0.5
15
16
  Requires-Dist: dependency-injector<5.0.0,>=4.43.0
16
17
  Requires-Dist: google-cloud-storage<4.0.0,>=3.1.0
17
18
  Requires-Dist: humanize<5.0.0,>=4.12.1
@@ -27,6 +28,7 @@ Requires-Dist: black>=25.1.0; extra == 'dev'
27
28
  Requires-Dist: coverage>=7.8.0; extra == 'dev'
28
29
  Requires-Dist: hatch>=1.14.1; extra == 'dev'
29
30
  Requires-Dist: mkdocs-material>=9.6.12; extra == 'dev'
31
+ Requires-Dist: nox[pbs]>=2026.2.9; extra == 'dev'
30
32
  Requires-Dist: pre-commit>=4.2.0; extra == 'dev'
31
33
  Requires-Dist: pylint>=3.3.6; extra == 'dev'
32
34
  Requires-Dist: pyright>=1.1.400; extra == 'dev'
@@ -3,7 +3,7 @@
3
3
  name = "data-sourcerer"
4
4
  dynamic = ["version"]
5
5
  description = "Sourcerer is a terminal cloud storage navigator."
6
- requires-python = ">=3.9"
6
+ requires-python = ">=3.10"
7
7
 
8
8
  keywords = ["cloud", "s3", "gcp", "cli", "terminal", "storage", "textual", "ui"]
9
9
  license = {text = "MIT"}
@@ -16,7 +16,7 @@ readme = {file = "README.md", content-type = "text/markdown"}
16
16
 
17
17
  dependencies = [
18
18
  "boto3>=1.26.0,<2.0.0",
19
- "cryptography>=44.0.2,<45.0.0",
19
+ "cryptography>=46.0.5,<47",
20
20
  "dependency-injector>=4.43.0,<5.0.0",
21
21
  "google-cloud-storage>=3.1.0,<4.0.0",
22
22
  "humanize>=4.12.1,<5.0.0",
@@ -29,6 +29,7 @@ dependencies = [
29
29
  "azure-mgmt-storage>=22.2.0,<23.0.0",
30
30
  "msgspec>=0.19.0",
31
31
  "packaging>=25.0",
32
+ "cachetools>=5.5.2",
32
33
  ]
33
34
 
34
35
  [project.scripts]
@@ -51,7 +52,7 @@ dev = [
51
52
  "ruff>=0.11.7",
52
53
  "textual-dev>=1.7.0",
53
54
  "ty>=0.0.1a6",
54
- "black>=25.1.0",
55
+ "nox[pbs]>=2026.2.9",
55
56
  ]
56
57
 
57
58
  [project.optional-dependencies]
@@ -68,6 +69,7 @@ dev = [
68
69
  "textual-dev>=1.7.0",
69
70
  "ty>=0.0.1a6",
70
71
  "black>=25.1.0",
72
+ "nox[pbs]>=2026.2.9",
71
73
  ]
72
74
 
73
75
  [tool.coverage.run]
@@ -78,7 +80,7 @@ source = [
78
80
 
79
81
  [tool.ruff]
80
82
  line-length = 120
81
- target-version = "py312"
83
+ target-version = "py310"
82
84
 
83
85
  # Enable these rules
84
86
  select = [
@@ -14,4 +14,4 @@ The application is structured using a clean architecture approach with:
14
14
 
15
15
  name = "sourcerer"
16
16
  package_name = "data_sourcerer"
17
- __version__ = "0.8.1"
17
+ __version__ = "0.9.0"
@@ -24,8 +24,8 @@ class Credentials(Struct):
24
24
  credentials_type (str): Type of credentials (e.g., key_pair).
25
25
  credentials (str): Serialized credentials data.
26
26
  active (bool): Indicates if the credentials are active.
27
- created_at (datetime | None): Timestamp when the credentials were created.
28
- updated_at (datetime | None): Timestamp when the credentials were last updated.
27
+ created_at (Optional[datetime]): Timestamp when the credentials were created.
28
+ updated_at (Optional[datetime]): Timestamp when the credentials were last updated.
29
29
  """
30
30
 
31
31
  uuid: str
@@ -45,8 +45,8 @@ class Boto3Credentials(Struct):
45
45
 
46
46
  Attributes:
47
47
  session (boto3.Session): The boto3 session object for AWS authentication.
48
- endpoint_url (str|None): Optional custom endpoint URL for AWS services.
49
- signature_version (str|None): Optional signature version for AWS API requests.
48
+ endpoint_url (Optional[str]): Optional custom endpoint URL for AWS services.
49
+ signature_version (Optional[str]): Optional signature version for AWS API requests.
50
50
  """
51
51
 
52
52
  session: boto3.Session
@@ -60,7 +60,7 @@ class BaseCredentialsRepository(metaclass=ABCMeta):
60
60
  """List all credentials in the repository.
61
61
 
62
62
  Args:
63
- active_only (bool|None, optional): If True, return only active credentials.
63
+ active_only (Optional[bool], optional): If True, return only active credentials.
64
64
  If False, return all credentials. Defaults to None.
65
65
 
66
66
  Returns:
@@ -22,7 +22,7 @@ class AuthField:
22
22
  key (str): Unique identifier for the auth field
23
23
  label (str): Display label for the auth field
24
24
  required (bool): Whether this field is required
25
- description (str | None): Optional description of the field
25
+ description (Optional[str]): Optional description of the field
26
26
  """
27
27
 
28
28
  key: str
@@ -16,7 +16,7 @@ class BaseStoragesRepository(metaclass=ABCMeta):
16
16
  def list(self, provider_id: int | None = None) -> list[Storage]:
17
17
  """List all storage entries in the repository.
18
18
  Args:
19
- provider_id (int | None): The provider ID to filter by. If None, all entries are returned.
19
+ provider_id (Optional[int]): The provider ID to filter by. If None, all entries are returned.
20
20
  Returns:
21
21
  List[Storage]: A list of storage entries
22
22
  """
@@ -59,7 +59,7 @@ class File(Struct):
59
59
  key (str): The path/key identifier for the file
60
60
  size (str): Human-readable file size
61
61
  is_text (bool): Whether the file is textual
62
- date_modified (datetime | None): When the file was last modified, if available
62
+ date_modified (Optional[datetime]): When the file was last modified, if available
63
63
  """
64
64
 
65
65
  uuid: str
@@ -83,7 +83,7 @@ class SQLAlchemyCredentialsRepository(BaseCredentialsRepository):
83
83
  List all credentials in the repository.
84
84
 
85
85
  Args:
86
- active_only (bool|None, optional): If True, return only active credentials.
86
+ active_only (Optional[bool], optional): If True, return only active credentials.
87
87
  If False, return all credentials. Defaults to None.
88
88
 
89
89
  Returns:
@@ -83,7 +83,7 @@ class FileSystemService(BaseFileSystemService):
83
83
  path (Path): The path to the directory.
84
84
  relative_paths (bool): Whether to return relative paths or full paths.
85
85
  recursively (bool): Whether iterate recursively over the content.
86
- max_items (int | None): Maximum number of items to return.
86
+ max_items (Optional[int]): Maximum number of items to return.
87
87
 
88
88
  Returns:
89
89
  ListDirOutput: A data class containing the list of files and directories within the specified path.
@@ -35,7 +35,7 @@ class SQLAlchemyStoragesRepository(BaseStoragesRepository):
35
35
  List all storages, optionally filtered by provider ID.
36
36
 
37
37
  Args:
38
- provider_id (int | None): The ID of the provider to filter by
38
+ provider_id (Optional[int]): The ID of the provider to filter by
39
39
 
40
40
  Returns:
41
41
  list[Storage]: List of storage entities
@@ -23,7 +23,7 @@ class StoragesService:
23
23
  List all storage entities.
24
24
 
25
25
  Args:
26
- provider_id (int|None, optional): If provided, filter storage entities by provider ID
26
+ provider_id (Optional[int], optional): If provided, filter storage entities by provider ID
27
27
  """
28
28
  return self.repository.list(provider_id)
29
29
 
@@ -72,7 +72,7 @@ def custom_sort_key(s: str | Path):
72
72
  is considered after all letters in ASCII comparison.
73
73
 
74
74
  Args:
75
- s (str|Path): The string to be transformed for custom sorting.
75
+ s (Union[str, Path]): The string to be transformed for custom sorting.
76
76
 
77
77
  Returns:
78
78
  str: A string transformed to facilitate the desired sorting order.
@@ -91,7 +91,7 @@ class FileSystemWidget(Widget):
91
91
  Attributes:
92
92
  entity_name (Path): Stores the path of the current file or directory
93
93
  icon (str): Stores the icon for visual representation
94
- last_file_click (Tuple[float, Path | None]): Tracks the timestamp and path of the last file click
94
+ last_file_click (Tuple[float, Optional[Path]]): Tracks the timestamp and path of the last file click
95
95
  to enable double-click detection, initialized with a timestamp two seconds in the past
96
96
  """
97
97
  self.entity_name = entity_name
@@ -492,7 +492,7 @@ class FileSystemNavigator(ScrollHorizontalContainerWithNoBindings):
492
492
  path (Path): The directory path to list contents for
493
493
 
494
494
  Returns:
495
- - PathListingContainer | None: A container with folder and file widgets, or None if directory is empty or
495
+ - Optional[PathListingContainer]: A container with folder and file widgets, or None if directory is empty or
496
496
  listing fails
497
497
 
498
498
  Raises:
@@ -704,7 +704,7 @@ class FileSystemNavigator(ScrollHorizontalContainerWithNoBindings):
704
704
  of_type (Type, optional): A specific widget type to filter the elements. Defaults to None.
705
705
 
706
706
  Returns:
707
- Widget | None: The next widget in the sequence, or None if no valid elements exist.
707
+ Optional[Widget]: The next widget in the sequence, or None if no valid elements exist.
708
708
  If no element is currently focused, returns the first element.
709
709
  Supports circular navigation, wrapping around to the start/end of the sequence.
710
710
 
@@ -117,7 +117,7 @@ class StorageActionProgressScreen(ModalScreen):
117
117
  Args:
118
118
  storage_name (str): Name of the storage being operated on
119
119
  path (str): Path within the storage
120
- provider_service (BaseStorageProviderService | None): Service for interacting with the storage provider
120
+ provider_service (Optional[BaseStorageProviderService]): Service for interacting with the storage provider
121
121
  keys (list[Key]): List of keys representing files/folders to process
122
122
  action (str): Type of action being performed ('download', 'upload', or 'delete')
123
123
  *args: Additional positional arguments to pass to parent class
File without changes
File without changes