clear-skies 2.0.4__py3-none-any.whl → 2.0.6__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 clear-skies might be problematic. Click here for more details.
- clear_skies-2.0.6.dist-info/METADATA +74 -0
- {clear_skies-2.0.4.dist-info → clear_skies-2.0.6.dist-info}/RECORD +31 -31
- {clear_skies-2.0.4.dist-info → clear_skies-2.0.6.dist-info}/WHEEL +1 -1
- clearskies/columns/json.py +4 -2
- clearskies/configs/endpoint_list.py +1 -0
- clearskies/endpoint_group.py +0 -2
- clearskies/endpoints/callable.py +2 -2
- clear_skies-2.0.4.dist-info/METADATA +0 -36
- {clear_skies-2.0.4.dist-info → clear_skies-2.0.6.dist-info/licenses}/LICENSE +0 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: clear-skies
|
|
3
|
+
Version: 2.0.6
|
|
4
|
+
Summary: A framework for building backends in the cloud
|
|
5
|
+
Project-URL: Documentation, https://clearskies.io/
|
|
6
|
+
Project-URL: Repository, https://github.com/clearskies-py/clearskies
|
|
7
|
+
Project-URL: Issues, https://github.com/clearskies-py/clearskies/issues
|
|
8
|
+
Project-URL: Changelog, https://github.com/clearskies-py/clearskies/blob/main/CHANGELOG.md
|
|
9
|
+
Author-email: Conor Mancone <cmancone@gmail.com>
|
|
10
|
+
License-Expression: MIT
|
|
11
|
+
License-File: LICENSE
|
|
12
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Requires-Python: <4.0,>=3.11
|
|
17
|
+
Requires-Dist: dateparser<2.0.0,>=1.1.8
|
|
18
|
+
Requires-Dist: requests<3.0.0,>=2.31.0
|
|
19
|
+
Requires-Dist: typing-extensions<5.0.0,>=4.12.0; python_version >= '3.10' and python_version < '3.11'
|
|
20
|
+
Requires-Dist: wrapt<2.0.0,>=1.16.0
|
|
21
|
+
Provides-Extra: jwcrypto
|
|
22
|
+
Requires-Dist: jwcrypto<2.0.0,>=1.5.6; extra == 'jwcrypto'
|
|
23
|
+
Provides-Extra: mysql
|
|
24
|
+
Requires-Dist: pymysql<2.0.0,>=1.1.0; extra == 'mysql'
|
|
25
|
+
Provides-Extra: secrets
|
|
26
|
+
Requires-Dist: akeyless-cloud-id<0.3.0,>=0.2.3; extra == 'secrets'
|
|
27
|
+
Requires-Dist: akeyless<5.0.0,>=4.0.0; extra == 'secrets'
|
|
28
|
+
Description-Content-Type: text/markdown
|
|
29
|
+
|
|
30
|
+
# clearskies
|
|
31
|
+
|
|
32
|
+
clearskies is a very opinionated Python framework intended for developing microservices in the cloud via declarative programming principles. It is mainly intended for backend services and so is designed for RESTful API endpoints, queue listeners, scheduled tasks, and the like.
|
|
33
|
+
|
|
34
|
+
## Installation
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
uv add clear-skies
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
or
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
pip install clear-skies
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
or
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
pipenv install clear-skies
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
or
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
poetry add clear-skies
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Development
|
|
59
|
+
|
|
60
|
+
To set up your development environment with pre-commit hooks:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
# Install uv if not already installed
|
|
64
|
+
pip install uv
|
|
65
|
+
|
|
66
|
+
# Create a virtual environment and install all dependencies (including dev)
|
|
67
|
+
uv sync
|
|
68
|
+
|
|
69
|
+
# Install pre-commit hooks
|
|
70
|
+
uv run pre-commit install
|
|
71
|
+
|
|
72
|
+
# Optionally, run pre-commit on all files
|
|
73
|
+
uv run pre-commit run --all-files
|
|
74
|
+
```
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
clearskies/__init__.py,sha256=pvReM1OEkMlXGPR56eNUq1DDantH9ds9szCXI9O-wOQ,1123
|
|
2
2
|
clearskies/action.py,sha256=x_T05XaC0m-BYPZWaSR94XbE7T5ZK1vRtSfEszfZuDg,121
|
|
3
|
+
clearskies/column.py,sha256=_VkvfD_6d4brTkChUbevJe9e7sla8ovsiJ5cH1evoH4,52070
|
|
4
|
+
clearskies/configurable.py,sha256=FFkKwlQk17KOLnZiTsTF3hrCu2WxRSuuddNNhz9aySY,3049
|
|
5
|
+
clearskies/decorators.py,sha256=I91l4Iwe2swzkZPWUWywmIV2LfTBlw9IWmUfspKm3yY,1040
|
|
6
|
+
clearskies/end.py,sha256=Z4C9n7OvBky_640oJ8d19jIr_ap1iqjGJqqO6s_zF5g,8919
|
|
7
|
+
clearskies/endpoint.py,sha256=6ihZzygVvGnBkl7IExoLbiiEPza15ULsFVtgFimZDUQ,49062
|
|
8
|
+
clearskies/endpoint_group.py,sha256=bKnw6d6AHBGqz7jrD56gSxDgwFwtHNOPpjnP0julohM,12528
|
|
9
|
+
clearskies/environment.py,sha256=LV7XztYYUZhaL8zWXi2EC-u6DLrCPxJTeUzmCy7p-ZA,3703
|
|
10
|
+
clearskies/model.py,sha256=6ZJoWNKzjsQFvgXEaXybrO0HaaknoSkKYNYO_i0Ep0k,77189
|
|
11
|
+
clearskies/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
12
|
+
clearskies/schema.py,sha256=9S0RuFBiydsDy4kATy2BBsXJ9aWHILW0ja_q9F4kxb0,2872
|
|
13
|
+
clearskies/security_header.py,sha256=suV3PMGFFJzMIsfDiT4t1sArkLVGzepyoftY0ddBWkM,431
|
|
14
|
+
clearskies/test_base.py,sha256=Nw6qwsPMOx-QT_6wXn6f9P4BcA7OeGrs83IC2naNMYY,205
|
|
15
|
+
clearskies/typing.py,sha256=Kme9es5c_lw4qQCbCL7lKXtDemVl0_qBy7jxKIu4yyg,378
|
|
16
|
+
clearskies/validator.py,sha256=nGFwe74LMJnEO7r2mgwd_V25bLpxUDH7IMolm-zk-3w,1332
|
|
3
17
|
clearskies/authentication/__init__.py,sha256=MxXNCWhKbha7TPu_MAyssfTdOCEDSNBwzshEHx8gfHo,525
|
|
4
18
|
clearskies/authentication/authentication.py,sha256=N-g2qNDGuJaSlMwc_SRwsjAuqOMLI2nKfUzSCF7HOFo,1240
|
|
5
19
|
clearskies/authentication/authorization.py,sha256=3XEOUlQx9XeRPpNEk4GCa-xWafrz-3Xd0T1PCSFuVxY,570
|
|
@@ -8,6 +22,7 @@ clearskies/authentication/jwks.py,sha256=V_Kgcb0peoPRqEej-Ii1GiPF3qoed_ub0nuc_Rx
|
|
|
8
22
|
clearskies/authentication/public.py,sha256=GSNl4X4fnB25BZoXSo8nqL0iZCa9rzfvPfIsJ2Y34B4,84
|
|
9
23
|
clearskies/authentication/secret_bearer.py,sha256=JoGBD2s7MubidFi1L0hyB_A4V3w5n1LKsokLiT44fBc,17590
|
|
10
24
|
clearskies/autodoc/__init__.py,sha256=JRUAmd0he8iGlgiZvxewLMIXJqnOFEdvlaKAtHpC2lo,124
|
|
25
|
+
clearskies/autodoc/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
26
|
clearskies/autodoc/formats/__init__.py,sha256=3rhoLKmEwT6PljaHvOl9qdeMIXyD7PQBZbqZKy5Mb5I,56
|
|
12
27
|
clearskies/autodoc/formats/oai3_json/__init__.py,sha256=tbbOZWkX9ZWj4BM3arHrlmqy4ZrScmIv2bazadbQt1w,142
|
|
13
28
|
clearskies/autodoc/formats/oai3_json/oai3_json.py,sha256=-LViw86zpPAgAEnC42KuobccvFATRg-j8ZEd8BiTYFA,2964
|
|
@@ -15,13 +30,12 @@ clearskies/autodoc/formats/oai3_json/oai3_schema_resolver.py,sha256=5gifJ36dyWEe
|
|
|
15
30
|
clearskies/autodoc/formats/oai3_json/parameter.py,sha256=h9bHXxqJhUc7NRQCZF6RnIPuaY9BA6V_xzYNnsplXlc,1110
|
|
16
31
|
clearskies/autodoc/formats/oai3_json/request.py,sha256=WHEWQvhuhkw82V4YS6GwDN4y8Qy7QDSn9awJEhwLmWU,2939
|
|
17
32
|
clearskies/autodoc/formats/oai3_json/response.py,sha256=ou06oFQtaAR70qIvIoAe4QzohWiACzhCwlW73oM5Dvg,778
|
|
33
|
+
clearskies/autodoc/formats/oai3_json/test.json,sha256=DdMvSUbaTEAyWtX_RDxEFR82kK9pCCTeFUghQwHjB3s,59848
|
|
18
34
|
clearskies/autodoc/formats/oai3_json/schema/__init__.py,sha256=VJiDueMdGfJoVQVt9SXIE_-uPghSXtCzpTXuqPaaiRw,173
|
|
19
35
|
clearskies/autodoc/formats/oai3_json/schema/array.py,sha256=1VOrMC_i1JSu1Gw2cqQ7uVDhSk-xNm25io7oBQL9PZM,310
|
|
20
36
|
clearskies/autodoc/formats/oai3_json/schema/default.py,sha256=BhwQebdIaK6rrATu6yZxPU3bqVmd4LFKTTlydJVl644,484
|
|
21
37
|
clearskies/autodoc/formats/oai3_json/schema/enum.py,sha256=7qkpYWXPwbkgkoHPAowMIHJeGNb81qQmTmIIdc5yJbA,265
|
|
22
38
|
clearskies/autodoc/formats/oai3_json/schema/object.py,sha256=HkLg3A6cTwV9h3QiXPpoVG7bH8U-aKFzp7nyGClGBgQ,1073
|
|
23
|
-
clearskies/autodoc/formats/oai3_json/test.json,sha256=DdMvSUbaTEAyWtX_RDxEFR82kK9pCCTeFUghQwHjB3s,59848
|
|
24
|
-
clearskies/autodoc/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
39
|
clearskies/autodoc/request/__init__.py,sha256=-L1hZ70QKn0yzXJtpQS741lbcYXA4i0xQnkebKDjzsA,303
|
|
26
40
|
clearskies/autodoc/request/header.py,sha256=TCeRyFFqcgNN8o9vEmc0JTxs7vRlMHnlhs7zsYfShRM,104
|
|
27
41
|
clearskies/autodoc/request/json_body.py,sha256=qURg3_4fQA9ZUVeR_T0g-RZ8seFIrI0ME-s4PzosfGE,108
|
|
@@ -52,7 +66,6 @@ clearskies/backends/backend.py,sha256=xjQGzLtj4de7rVp1m_Aa_HdrHwQUdg-P_32Bb0y2tq
|
|
|
52
66
|
clearskies/backends/cursor_backend.py,sha256=lMnkHATU2Fxr0ihgrVnvI9IVnUPxNfjzpkdJIok2mXY,14360
|
|
53
67
|
clearskies/backends/memory_backend.py,sha256=fXgbFcTvbZeKHs4CsI_yNsofHSjWqZqY9QWI7uJzVws,34260
|
|
54
68
|
clearskies/backends/secrets_backend.py,sha256=r1k7YfZ7AKMsN2wWwx939QKeYWgh6PVkdiKayzPBDv0,4275
|
|
55
|
-
clearskies/column.py,sha256=_VkvfD_6d4brTkChUbevJe9e7sla8ovsiJ5cH1evoH4,52070
|
|
56
69
|
clearskies/columns/__init__.py,sha256=a__-1hv-aMV3RU0Sd-BEkfItSJaG51EF2VeRQoTdka8,1990
|
|
57
70
|
clearskies/columns/audit.py,sha256=0BBpBFsxz6JBWDPoyCb73EDJnN95pj1TXtTZqbT1qKU,7628
|
|
58
71
|
clearskies/columns/belongs_to_id.py,sha256=10yImEA5xgA547kPIfRajcNwlCfXF9QTvai0-fBFxG0,17828
|
|
@@ -77,7 +90,7 @@ clearskies/columns/has_many.py,sha256=Frd1LQRiAyh0o2GVrJBlztuaAOAAF_7FzgDt0ZyuRP
|
|
|
77
90
|
clearskies/columns/has_many_self.py,sha256=9EG4A7i3W4atOsHPbEKIahoU0QgWohbRFIA29dBOSxg,2403
|
|
78
91
|
clearskies/columns/has_one.py,sha256=8cwfNmAFO1DdfBsZ1scpc3LwLoSUHWR_zPn4T-DN0Mg,396
|
|
79
92
|
clearskies/columns/integer.py,sha256=z4o0t13h7MC9vGxsr3fo0_TLHHSZB2uSqE_QDDUakt8,4650
|
|
80
|
-
clearskies/columns/json.py,sha256=
|
|
93
|
+
clearskies/columns/json.py,sha256=oJc6UZcOCJAPrIwecYVQ69Mi7FvX8w9seYiBdk2YtTw,3723
|
|
81
94
|
clearskies/columns/many_to_many_ids.py,sha256=kkLfb14EKInkkV5xVM9sXTgf0PLmIQlDOJNRIRlzLCY,14265
|
|
82
95
|
clearskies/columns/many_to_many_ids_with_data.py,sha256=FhXPvAtHtBCne-bcwURQplm374t7tVLcEIicb40LpYg,12017
|
|
83
96
|
clearskies/columns/many_to_many_models.py,sha256=CMrkyja0FWXh5BwlZMLZ5ltl6I5Avpi3K78C3SOgV40,7345
|
|
@@ -105,7 +118,7 @@ clearskies/configs/config.py,sha256=Mw9wnPzEekHGfmNFH9f2vJ3BOPx3l1ktxwZc95flyQg,
|
|
|
105
118
|
clearskies/configs/datetime.py,sha256=jRYXwLeTUqh8FNwWq_0yYoSH8YU9NEhYhuQScr56nTg,653
|
|
106
119
|
clearskies/configs/datetime_or_callable.py,sha256=81YCDk0g5cIxdXxgem1Ei6m7gUI213Cfryp3GyBfpD4,799
|
|
107
120
|
clearskies/configs/endpoint.py,sha256=NEDthtdPzejAot7yzUjC01PvQJR9BIyk5YnWXCi1w9I,759
|
|
108
|
-
clearskies/configs/endpoint_list.py,sha256=
|
|
121
|
+
clearskies/configs/endpoint_list.py,sha256=9xtXmZpdOh7uk9Sm3MF9xi1_N-n2DZ-F4s0zrNfEKng,1200
|
|
109
122
|
clearskies/configs/float.py,sha256=3870-DkoXCyeOSwUGa69BzhG4XI_tNfei5cX-q1b1UQ,585
|
|
110
123
|
clearskies/configs/float_or_callable.py,sha256=lIOg20Xw0AOB0k3I7f0b98srVgMWQKcyM4aWRT0tUI4,708
|
|
111
124
|
clearskies/configs/integer.py,sha256=d6uoQaUoE01rrWOsxYl1vHG_raUFmB0AUOgoCWwOVC0,584
|
|
@@ -136,17 +149,17 @@ clearskies/configs/url.py,sha256=dx02oiwt8ua5Kv30dJFE0ekJ6Zgz3lcPq9-UNIblI9s,775
|
|
|
136
149
|
clearskies/configs/validators.py,sha256=aAvf5dgncR8OP7_M7QUNhsHau4wAdPiXw9wNARRAYNY,1346
|
|
137
150
|
clearskies/configs/writeable_model_column.py,sha256=ZwroRcvmNznggtNMSZiAmKAvllcV9LDWZSB-J330Lxg,319
|
|
138
151
|
clearskies/configs/writeable_model_columns.py,sha256=D8E4aQRg1MX8-TM8lkyrWE-G_YoX2eerX4KLszgk0hA,323
|
|
139
|
-
clearskies/configurable.py,sha256=FFkKwlQk17KOLnZiTsTF3hrCu2WxRSuuddNNhz9aySY,3049
|
|
140
152
|
clearskies/contexts/__init__.py,sha256=f7XVUq2UKlDH6fjmcUWk6lbe9p_OaGpZ5ZjM6CuwTGQ,247
|
|
141
153
|
clearskies/contexts/cli.py,sha256=Hzh8vgkLoCn2Zx8AQIoLen4fMDPIvZqtSLfEcg_CPKc,2639
|
|
142
154
|
clearskies/contexts/context.py,sha256=S1iqSfV2gPnXz20-8AJU9QWh6IKa56jEV11g99iZO-o,3663
|
|
143
155
|
clearskies/contexts/wsgi.py,sha256=rJCfBZhyvPyRduyY9-ctvoQMcQXwRqRGwldidiUQWBY,3111
|
|
144
156
|
clearskies/contexts/wsgi_ref.py,sha256=BnV2hhusu5Hkd1cFLGXEn7COWS23u1NH9BDgAWlgX_M,2747
|
|
145
|
-
clearskies/decorators.py,sha256=I91l4Iwe2swzkZPWUWywmIV2LfTBlw9IWmUfspKm3yY,1040
|
|
146
157
|
clearskies/di/__init__.py,sha256=uJ1NkACEIaot7ALr3M6vQ55Pe9By_s_1z52ssAnw28E,466
|
|
147
158
|
clearskies/di/additional_config.py,sha256=65INxw8aqTZQsyaKPj-aQmd6FBe4_4DwibXGgWYBy14,5139
|
|
148
159
|
clearskies/di/additional_config_auto_import.py,sha256=XYw0Kcnp6hp-ee-c0YjiATwJvRb2E82xk9PuoX9dGRY,758
|
|
149
160
|
clearskies/di/di.py,sha256=USmVkNJ7D5vDfQZiWaJ0M9hBNMZFyo8rkL_m3K2I35w,45433
|
|
161
|
+
clearskies/di/injectable.py,sha256=TTgqhx494470I61-88BUQmHmevfat-wXVseKl8pQOEk,852
|
|
162
|
+
clearskies/di/injectable_properties.py,sha256=yJP0J7l7tjG2soyXtrfDgktE7M8tQHaP-55Cmtq0b7M,6466
|
|
150
163
|
clearskies/di/inject/__init__.py,sha256=plEkWId-VyhvqX5KM2HhdCqi7_ZJzPmFz69cPAo812Y,643
|
|
151
164
|
clearskies/di/inject/by_class.py,sha256=dUA_ZseLZWT30wnkg272rWwe5FzUpr0gCMMQP_HFahc,796
|
|
152
165
|
clearskies/di/inject/by_name.py,sha256=oEfzeotUXPbUAiBrkE7i19nD2ISk59EEwCH3pcgSmqA,639
|
|
@@ -158,17 +171,12 @@ clearskies/di/inject/requests.py,sha256=GCfPWEZKrL7uergQB-ZYF235GKG4FAYy5WngRhIO
|
|
|
158
171
|
clearskies/di/inject/secrets.py,sha256=zK7ZJJwZS4l13OVlbBs8ESL8yMxa6jDa4_tiLUvUTdY,418
|
|
159
172
|
clearskies/di/inject/utcnow.py,sha256=3OAzR82k0yEfQ65bJ-4Q7gCZH-Y_viucPJQtfcHu_AA,365
|
|
160
173
|
clearskies/di/inject/uuid.py,sha256=ncXvVNevj6CCwxh1r1IGojEPZaOuHnRjYT7B69RTVhs,400
|
|
161
|
-
clearskies/di/injectable.py,sha256=TTgqhx494470I61-88BUQmHmevfat-wXVseKl8pQOEk,852
|
|
162
|
-
clearskies/di/injectable_properties.py,sha256=yJP0J7l7tjG2soyXtrfDgktE7M8tQHaP-55Cmtq0b7M,6466
|
|
163
174
|
clearskies/di/test_module/__init__.py,sha256=7YHQF7JHP0FdI7GdEGANSZ_t1EISQYhUNm1wqOg0NKw,88
|
|
164
|
-
clearskies/di/test_module/another_module/__init__.py,sha256=8SRmHPDepLKGWTUSc1ucDF6U8mJPsNDsBDmBQCpzPWo,35
|
|
165
175
|
clearskies/di/test_module/module_class.py,sha256=I_-wnMuHfbsvti-7d2Z4bXnr6deo__uvww9nds9qrlE,46
|
|
166
|
-
clearskies/
|
|
167
|
-
clearskies/endpoint.py,sha256=6ihZzygVvGnBkl7IExoLbiiEPza15ULsFVtgFimZDUQ,49062
|
|
168
|
-
clearskies/endpoint_group.py,sha256=evY4LbxbDj2yc_f3U4XRsci-GpWMrxOeCdoSegPSQ1o,12598
|
|
176
|
+
clearskies/di/test_module/another_module/__init__.py,sha256=8SRmHPDepLKGWTUSc1ucDF6U8mJPsNDsBDmBQCpzPWo,35
|
|
169
177
|
clearskies/endpoints/__init__.py,sha256=payWNEivwmxsT-pWqNkzHisSbyNjB7oq7_I5QIQL_XA,750
|
|
170
178
|
clearskies/endpoints/advanced_search.py,sha256=c1fj81nohHGqe56t00o6kLN3XIh3kfy-aKy_C1pxwgw,21835
|
|
171
|
-
clearskies/endpoints/callable.py,sha256=
|
|
179
|
+
clearskies/endpoints/callable.py,sha256=3YrO9voTmwtWlrGTqu8B64sdgEn7eXElsb3KLk-reV4,13960
|
|
172
180
|
clearskies/endpoints/create.py,sha256=mk57WLexX_raAdHJJNGAYgydgkud_3VvcaMWTj8jOlQ,9015
|
|
173
181
|
clearskies/endpoints/delete.py,sha256=ZKBsmpx2QC4hVKWyXkdq3tkW-BkH9uvgyTQAfuS4Bzc,5278
|
|
174
182
|
clearskies/endpoints/get.py,sha256=kV7dLrj3Ph06hhyvmestqydKoNnp_32nFmxvjnh-fVc,10132
|
|
@@ -178,7 +186,6 @@ clearskies/endpoints/restful_api.py,sha256=FjNYg4-qeDjjOSc8QPPFQ74SW4b_84zyQ38ck
|
|
|
178
186
|
clearskies/endpoints/schema.py,sha256=aMFd8WMRUD_rv3bkEbfPh31u0tAW9bchF0SVhHtqTW8,7418
|
|
179
187
|
clearskies/endpoints/simple_search.py,sha256=ruifcR3efacuWm-mD3Lratunl122tHmv9TW7HVgX2P0,9710
|
|
180
188
|
clearskies/endpoints/update.py,sha256=4c26WDA9Pv8p5xOosK76vxENUxXVahY3H0y1yySfUks,7855
|
|
181
|
-
clearskies/environment.py,sha256=LV7XztYYUZhaL8zWXi2EC-u6DLrCPxJTeUzmCy7p-ZA,3703
|
|
182
189
|
clearskies/exceptions/__init__.py,sha256=eFCYGp2Pk21kKibGJvJfh2tcn_oxm4wCkR-SbWUp_EI,691
|
|
183
190
|
clearskies/exceptions/authentication.py,sha256=VlNS0Aq2_6LbG0jiE8jULpS54jNW8a8px0gPrK3EZCc,42
|
|
184
191
|
clearskies/exceptions/authorization.py,sha256=14JuU5zLEf2sv82VNxsJt7dGSwfP-t3Pvf_6QZuacfA,41
|
|
@@ -194,31 +201,27 @@ clearskies/functional/string.py,sha256=ZnkOjx8nxqZq2TV0CIb-Kz4onGoyekTX_WkLJM6XT
|
|
|
194
201
|
clearskies/functional/validations.py,sha256=cPYOTwWomlQrPvqPP_Jdlds7zZ5H9GABCP5pnGzC9T4,2821
|
|
195
202
|
clearskies/input_outputs/__init__.py,sha256=9qeKJULw3MQ3zqkgBZice5d7qqRgsP3y-wkhWO2Y9vM,362
|
|
196
203
|
clearskies/input_outputs/cli.py,sha256=_r9TNj0Z_8gDw0U_NJECuyLE89CxrHxVpXG6wT_Tt0w,6025
|
|
197
|
-
clearskies/input_outputs/exceptions/__init__.py,sha256=3KiM3KaMYEKoToqCCQ4_no2n0W5ROqeBC0sI2Ix4P6w,82
|
|
198
|
-
clearskies/input_outputs/exceptions/cli_input_error.py,sha256=kOFU8aLTLmeTL_AKDshxMu8_ufildg6p8ndhE1xHfb0,41
|
|
199
|
-
clearskies/input_outputs/exceptions/cli_not_found.py,sha256=JBBuZA9ZwdkPhd3a0qaGgEPQrxh1fehy4R3ZaV2gWXU,39
|
|
200
204
|
clearskies/input_outputs/headers.py,sha256=WjDwV3RppIpPtt5QdgdjYJfIO9ufCEpwJLEn4vLypZI,1616
|
|
201
205
|
clearskies/input_outputs/input_output.py,sha256=W5h8a9XFEqwi3h6v17okblz8sOozUj-mMt4JQyTQUJM,5963
|
|
202
206
|
clearskies/input_outputs/programmatic.py,sha256=gfsNFIfiF5cvxi1aS9SgArcKYUgkL5gyxjCMQLwgivY,1711
|
|
203
207
|
clearskies/input_outputs/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
204
208
|
clearskies/input_outputs/wsgi.py,sha256=94tgWxiwpwvJA9G4nG-hCHteg0pq9pIDCVhnheZuAQc,2544
|
|
205
|
-
clearskies/
|
|
206
|
-
clearskies/py
|
|
209
|
+
clearskies/input_outputs/exceptions/__init__.py,sha256=3KiM3KaMYEKoToqCCQ4_no2n0W5ROqeBC0sI2Ix4P6w,82
|
|
210
|
+
clearskies/input_outputs/exceptions/cli_input_error.py,sha256=kOFU8aLTLmeTL_AKDshxMu8_ufildg6p8ndhE1xHfb0,41
|
|
211
|
+
clearskies/input_outputs/exceptions/cli_not_found.py,sha256=JBBuZA9ZwdkPhd3a0qaGgEPQrxh1fehy4R3ZaV2gWXU,39
|
|
207
212
|
clearskies/query/__init__.py,sha256=ISF80_cG3rd574sRTdKKPxAdlSjtQh_ClXKKs_MSSSo,277
|
|
208
213
|
clearskies/query/condition.py,sha256=9RJrYya1Kfzx0L_BMDKQhYkN9dB7NAq5kRK5mz51YdY,8624
|
|
209
214
|
clearskies/query/join.py,sha256=4lrDUQzck7klKY_VYkc4SVK95SVwyy3SVTvasnsAEyc,4713
|
|
210
215
|
clearskies/query/query.py,sha256=t9tV67CeI6I1u5Uhu6KPT_qiFjvLc3GnwVM2acbXuAU,6088
|
|
211
216
|
clearskies/query/sort.py,sha256=c-EtIkjg3kLjwSTdXD7sfyx-mNUhAepUV-2izprh3iY,754
|
|
212
|
-
clearskies/schema.py,sha256=9S0RuFBiydsDy4kATy2BBsXJ9aWHILW0ja_q9F4kxb0,2872
|
|
213
217
|
clearskies/secrets/__init__.py,sha256=WauemayzKCr-guvMu6wCL4hQUIbkDJFuNKEm8Rd6cUs,136
|
|
218
|
+
clearskies/secrets/akeyless.py,sha256=IUI4RYD-XdNQvyhpuElnw_O74ZY4tJUUtCHmd0dArUI,7158
|
|
219
|
+
clearskies/secrets/secrets.py,sha256=TYN0T7XjmvETtSacDKEkyGGO9kDFCoPl5A7FNkvyNj4,1593
|
|
214
220
|
clearskies/secrets/additional_configs/__init__.py,sha256=cFCrbtKF5nuR061S2y1iKZp349x-y8Srdwe3VZbfSFU,1119
|
|
215
221
|
clearskies/secrets/additional_configs/mysql_connection_dynamic_producer.py,sha256=CnIiXLVQdUnUey3dbCTXuNNP7Mmw1gjjNjZiBtfgGto,2757
|
|
216
222
|
clearskies/secrets/additional_configs/mysql_connection_dynamic_producer_via_ssh_cert_bastion.py,sha256=N8ruxrTNhvYlp3cYXq6V78KPPr4n40LM7QoXHvD8IZg,6235
|
|
217
|
-
clearskies/secrets/akeyless.py,sha256=IUI4RYD-XdNQvyhpuElnw_O74ZY4tJUUtCHmd0dArUI,7158
|
|
218
223
|
clearskies/secrets/exceptions/__init__.py,sha256=j-SLHD-DL0CT4cZXibD9kXHk63JEl_UKX6xL_nq1EfE,32
|
|
219
224
|
clearskies/secrets/exceptions/not_found.py,sha256=_lZwovDrd18dUHDop5pF4mhexBPNr126xF2gOLA2-EA,36
|
|
220
|
-
clearskies/secrets/secrets.py,sha256=TYN0T7XjmvETtSacDKEkyGGO9kDFCoPl5A7FNkvyNj4,1593
|
|
221
|
-
clearskies/security_header.py,sha256=suV3PMGFFJzMIsfDiT4t1sArkLVGzepyoftY0ddBWkM,431
|
|
222
225
|
clearskies/security_headers/__init__.py,sha256=JUpc4Y8dNBinDQAkP7OOABR7N787-lRR23boSWmY6Us,285
|
|
223
226
|
clearskies/security_headers/cache_control.py,sha256=n_fcN4JPfHH8oCC6iSdBaDcAw-5JgPjZQWbD_lMg6qQ,2251
|
|
224
227
|
clearskies/security_headers/cors.py,sha256=zhTLo1FiCwSTgDOYURz7RB0XqLeP456A8mcP_mHBd48,1831
|
|
@@ -226,9 +229,6 @@ clearskies/security_headers/csp.py,sha256=jA0ms1X6w52W86-RXcW6dblI_RL7DlrjKt57gc
|
|
|
226
229
|
clearskies/security_headers/hsts.py,sha256=_2EjHgH-OdQ24NF4eWhIi71wcXz2u2K5Q1wwR4NOTe0,732
|
|
227
230
|
clearskies/security_headers/x_content_type_options.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
228
231
|
clearskies/security_headers/x_frame_options.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
229
|
-
clearskies/test_base.py,sha256=Nw6qwsPMOx-QT_6wXn6f9P4BcA7OeGrs83IC2naNMYY,205
|
|
230
|
-
clearskies/typing.py,sha256=Kme9es5c_lw4qQCbCL7lKXtDemVl0_qBy7jxKIu4yyg,378
|
|
231
|
-
clearskies/validator.py,sha256=nGFwe74LMJnEO7r2mgwd_V25bLpxUDH7IMolm-zk-3w,1332
|
|
232
232
|
clearskies/validators/__init__.py,sha256=Hz0L5Y7EkeK4Px6WcdQ3ku6VqUGpLHX0ZWwCpT1ts1U,1248
|
|
233
233
|
clearskies/validators/after_column.py,sha256=6qFBodmcrVELDAdvc7w300RDIBFQlsgAmAIJ2-Gv6n4,2366
|
|
234
234
|
clearskies/validators/before_column.py,sha256=fDXhgPwGvnjk1Xy6iwebE8q--BeD48uu3cVGpRGTSBc,528
|
|
@@ -245,7 +245,7 @@ clearskies/validators/minimum_value.py,sha256=Vz0e_9U5KYqBGqfrVBOtPiVtmNPWwFEGPA
|
|
|
245
245
|
clearskies/validators/required.py,sha256=f8VE9sbvIorTIC0q_77DyDfDjAJYFJs-uTgJkAwLxX4,1362
|
|
246
246
|
clearskies/validators/timedelta.py,sha256=nFEHefllfMZsguJoSdeWzaBsxBDZfMZoIdt5jZxeg0g,1932
|
|
247
247
|
clearskies/validators/unique.py,sha256=DZA7dbLucYDShtr1bVP2pnmbzciIEMvYSrTjOKCQ4vM,1029
|
|
248
|
-
clear_skies-2.0.
|
|
249
|
-
clear_skies-2.0.
|
|
250
|
-
clear_skies-2.0.
|
|
251
|
-
clear_skies-2.0.
|
|
248
|
+
clear_skies-2.0.6.dist-info/METADATA,sha256=iAEVdgzoX18doFgGU4a1QBkLUd-312suknzwdUW7dzQ,2113
|
|
249
|
+
clear_skies-2.0.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
250
|
+
clear_skies-2.0.6.dist-info/licenses/LICENSE,sha256=3Ehd0g3YOpCj8sqj0Xjq5qbOtjjgk9qzhhD9YjRQgOA,1053
|
|
251
|
+
clear_skies-2.0.6.dist-info/RECORD,,
|
clearskies/columns/json.py
CHANGED
|
@@ -69,14 +69,16 @@ class Json(Column):
|
|
|
69
69
|
|
|
70
70
|
"""
|
|
71
71
|
|
|
72
|
+
setable = clearskies.configs.Any(default=None) # type: ignore
|
|
73
|
+
default = clearskies.configs.Any(default=None) # type: ignore
|
|
72
74
|
is_searchable = configs.Boolean(default=False)
|
|
73
75
|
_descriptor_config_map = None
|
|
74
76
|
|
|
75
77
|
@clearskies.decorators.parameters_to_properties
|
|
76
78
|
def __init__(
|
|
77
79
|
self,
|
|
78
|
-
default: dict[str, Any] | None = None,
|
|
79
|
-
setable: dict[str, Any] | Callable[..., dict[str, Any]] | None = None,
|
|
80
|
+
default: dict[str, Any] | list[Any] | None = None,
|
|
81
|
+
setable: dict[str, Any] | list[Any] | Callable[..., dict[str, Any]] | None = None,
|
|
80
82
|
is_readable: bool = True,
|
|
81
83
|
is_writeable: bool = True,
|
|
82
84
|
is_temporary: bool = False,
|
|
@@ -11,6 +11,7 @@ if TYPE_CHECKING:
|
|
|
11
11
|
class EndpointList(config.Config):
|
|
12
12
|
def __set__(self, instance, value: list[EndpointBase]):
|
|
13
13
|
if not isinstance(value, list):
|
|
14
|
+
error_prefix = self._error_prefix(instance)
|
|
14
15
|
raise TypeError(
|
|
15
16
|
f"{error_prefix} attempt to set a value of type '{value.__class__.__name__}' to a parameter that requries a list of endpoints."
|
|
16
17
|
)
|
clearskies/endpoint_group.py
CHANGED
|
@@ -240,8 +240,6 @@ class EndpointGroup(
|
|
|
240
240
|
cors_header: SecurityHeader = None # type: ignore
|
|
241
241
|
has_cors: bool = False
|
|
242
242
|
endpoints_initialized = False
|
|
243
|
-
external_casing = "snake_case"
|
|
244
|
-
internal_casing = "snake_case"
|
|
245
243
|
|
|
246
244
|
@clearskies.decorators.parameters_to_properties
|
|
247
245
|
def __init__(
|
clearskies/endpoints/callable.py
CHANGED
|
@@ -248,8 +248,8 @@ class Callable(Endpoint):
|
|
|
248
248
|
model_class: type[clearskies.model.Model] | None = None,
|
|
249
249
|
readable_column_names: list[str] = [],
|
|
250
250
|
writeable_column_names: list[str] = [],
|
|
251
|
-
input_schema: Schema | None = None,
|
|
252
|
-
output_schema: Schema | None = None,
|
|
251
|
+
input_schema: type[Schema] | None = None,
|
|
252
|
+
output_schema: type[Schema] | None = None,
|
|
253
253
|
input_validation_callable: CallableType | None = None,
|
|
254
254
|
return_standard_response: bool = True,
|
|
255
255
|
return_records: bool = False,
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.3
|
|
2
|
-
Name: clear-skies
|
|
3
|
-
Version: 2.0.4
|
|
4
|
-
Summary: A framework for building backends in the cloud
|
|
5
|
-
License: MIT
|
|
6
|
-
Author: Conor Mancone
|
|
7
|
-
Author-email: cmancone@gmail.com
|
|
8
|
-
Requires-Python: >=3.11,<4.0
|
|
9
|
-
Classifier: Development Status :: 5 - Production/Stable
|
|
10
|
-
Classifier: Intended Audience :: Developers
|
|
11
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
12
|
-
Classifier: Programming Language :: Python :: 3
|
|
13
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
14
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
15
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
16
|
-
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
|
|
17
|
-
Provides-Extra: jwcrypto
|
|
18
|
-
Provides-Extra: mysql
|
|
19
|
-
Provides-Extra: secrets
|
|
20
|
-
Requires-Dist: akeyless (>=4.0.0,<5.0.0) ; extra == "secrets"
|
|
21
|
-
Requires-Dist: akeyless-cloud-id (>=0.2.3,<0.3.0) ; extra == "secrets"
|
|
22
|
-
Requires-Dist: dateparser (>=1.1.8,<2.0.0)
|
|
23
|
-
Requires-Dist: jwcrypto (>=1.5.6,<2.0.0) ; extra == "jwcrypto"
|
|
24
|
-
Requires-Dist: pymysql (>=1.1.0,<2.0.0) ; extra == "mysql"
|
|
25
|
-
Requires-Dist: requests (>=2.31.0,<3.0.0)
|
|
26
|
-
Requires-Dist: typing-extensions (>=4.12.0,<5.0.0) ; python_version == "3.10"
|
|
27
|
-
Requires-Dist: wrapt (>=1.16.0,<2.0.0)
|
|
28
|
-
Project-URL: Repository, https://github.com/clearskies-py/clearskies
|
|
29
|
-
Description-Content-Type: text/markdown
|
|
30
|
-
|
|
31
|
-
# clearskies
|
|
32
|
-
|
|
33
|
-
clearskies is a very opinionated Python framework intended for developing microservices in the cloud via declarative programming principles. It is mainly intended for backend services and so is designed for RESTful API endpoints, queue listeners, scheduled tasks, and the like.
|
|
34
|
-
|
|
35
|
-
[https://clearskies.info](https://clearskies.info)
|
|
36
|
-
|
|
File without changes
|