clear-skies 1.22.17__py3-none-any.whl → 1.22.19__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.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: clear-skies
3
- Version: 1.22.17
3
+ Version: 1.22.19
4
4
  Summary: A framework for building backends in the cloud
5
5
  Home-page: https://github.com/cmancone/clearskies
6
6
  License: MIT
@@ -46,7 +46,7 @@ clearskies/autodoc/schema/object.py,sha256=GJ5zLw2CzhezQiNuIhVgRyk0esXqfHD5fxZrc
46
46
  clearskies/autodoc/schema/password.py,sha256=Ptj8OeddAL4h69KWqZ6ubZ2awR13xdDIrNe2N0T1jic,196
47
47
  clearskies/autodoc/schema/string.py,sha256=oxZPCxYYhWnNHdbtwD3QuniStbj8XbBBpDTFXgPR1VU,244
48
48
  clearskies/backends/__init__.py,sha256=ATNzuDYREx-VBWemPmG95FR8EzO2X0--7tkErUuF9Qc,832
49
- clearskies/backends/api_backend.py,sha256=6LIae0aIfVTye9n-WYxkUkyTZohSAnStkBwRfPn0lg8,15091
49
+ clearskies/backends/api_backend.py,sha256=3a7geSrqMWEE3lIgeG9LmH3QlcFFoL96AHyNS0Kf1Es,15175
50
50
  clearskies/backends/api_get_only_backend.py,sha256=KfFF72l31KBK--90lIkDqE5gcTnolSkShUqNaaWZ_gc,1690
51
51
  clearskies/backends/backend.py,sha256=fkL-De0MUdzcS2JG_spSUQZIVL9oRFvaL6SP26JPpcI,7399
52
52
  clearskies/backends/cursor_backend.py,sha256=VntlPS6z6bnZOC3XRJ-WFf5gK3pFUhH_qJpnZn8hl9U,11278
@@ -163,7 +163,7 @@ clearskies/input_outputs/cli.py,sha256=ar2TeW-24BdCRbw9JFilZyJlZ2Qg34uwluutKx1XK
163
163
  clearskies/input_outputs/exceptions/__init__.py,sha256=bc5Tc1XBZnqA1fKbk7pk5hyx102vqx3sDE19E03xGk4,82
164
164
  clearskies/input_outputs/exceptions/cli_input_error.py,sha256=kOFU8aLTLmeTL_AKDshxMu8_ufildg6p8ndhE1xHfb0,41
165
165
  clearskies/input_outputs/exceptions/cli_not_found.py,sha256=JBBuZA9ZwdkPhd3a0qaGgEPQrxh1fehy4R3ZaV2gWXU,39
166
- clearskies/input_outputs/input_output.py,sha256=TyhiHfPzQzjN9lW6hCnrGil-_M_vlICn7uVZvEPFwZI,4666
166
+ clearskies/input_outputs/input_output.py,sha256=pqf_KRcnbjCJyvQjUEX90FXPh56iEff9kn-K_xNByXI,5081
167
167
  clearskies/input_outputs/wsgi.py,sha256=9p82eJP5FUAI6jbIojvydG3_9gncX7vcUACQMyRN9x4,3142
168
168
  clearskies/input_requirements/__init__.py,sha256=cciSC614VlYsCeTBX69ZCBU6QByT8NNlzWu_n2SVieY,2106
169
169
  clearskies/input_requirements/after.py,sha256=TXy8bIVz_77a8oJuohPwoM5E--AOVWsOSjjh5PpA2Ys,1544
@@ -207,7 +207,7 @@ clearskies/tests/simple_api/models/__init__.py,sha256=nUA0W6fgXw_Bxa9CudkaDkC80t
207
207
  clearskies/tests/simple_api/models/status.py,sha256=PEhPbaQh5qdUNHp8O0gz91LOLENAEBtqSaHxUPXchaM,699
208
208
  clearskies/tests/simple_api/models/user.py,sha256=5_P4Tp1tTdX7PkMJ__epPM5MA7JAeVYGas69vcWloLc,819
209
209
  clearskies/tests/simple_api/users_api.py,sha256=KYXCgEofDxHeRdQK67txN5oYUPvxxmB8JTku7L-apk4,2344
210
- clear_skies-1.22.17.dist-info/LICENSE,sha256=3Ehd0g3YOpCj8sqj0Xjq5qbOtjjgk9qzhhD9YjRQgOA,1053
211
- clear_skies-1.22.17.dist-info/METADATA,sha256=FrDzoVin5njD_n8BwJSkfIE2za9cKltGlgiaf5rMv8s,1920
212
- clear_skies-1.22.17.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
213
- clear_skies-1.22.17.dist-info/RECORD,,
210
+ clear_skies-1.22.19.dist-info/LICENSE,sha256=3Ehd0g3YOpCj8sqj0Xjq5qbOtjjgk9qzhhD9YjRQgOA,1053
211
+ clear_skies-1.22.19.dist-info/METADATA,sha256=X7eq13iRb73f0VbjhGXm3k4q_awYn82aAGIAIjVhB7E,1920
212
+ clear_skies-1.22.19.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
213
+ clear_skies-1.22.19.dist-info/RECORD,,
@@ -256,6 +256,8 @@ class ApiBackend(Backend):
256
256
  return backend_data
257
257
  # also, APIs tend to have a different format for dates than SQL
258
258
  if isinstance(column, DateTime):
259
+ if column.name not in backend_data:
260
+ return backend_data
259
261
  as_date = (
260
262
  backend_data[column.name].isoformat()
261
263
  if type(backend_data[column.name]) != str
@@ -140,13 +140,20 @@ class InputOutput(ABC):
140
140
  def get_request_header(self, header_name, silent=True):
141
141
  pass
142
142
 
143
- @abstractmethod
143
+ def _parse_query_parameters(self):
144
+ if self._query_parameters is None:
145
+ self._query_parameters = {
146
+ key: val[0] if len(val) == 1 else val
147
+ for (key, val) in urllib.parse.parse_qs(self.get_query_string()).items()
148
+ }
149
+
144
150
  def get_query_parameter(self, key):
145
- pass
151
+ self._parse_query_parameters()
152
+ return self._query_parameters[key] if key in self._query_parameters else None
146
153
 
147
- @abstractmethod
148
154
  def get_query_parameters(self):
149
- pass
155
+ self._parse_query_parameters()
156
+ return self._query_parameters
150
157
 
151
158
  @abstractmethod
152
159
  def get_client_ip(self):