everysk-lib 1.10.0__cp312-cp312-macosx_11_0_arm64.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.
Files changed (137) hide show
  1. everysk/__init__.py +30 -0
  2. everysk/_version.py +683 -0
  3. everysk/api/__init__.py +61 -0
  4. everysk/api/api_requestor.py +167 -0
  5. everysk/api/api_resources/__init__.py +23 -0
  6. everysk/api/api_resources/api_resource.py +371 -0
  7. everysk/api/api_resources/calculation.py +779 -0
  8. everysk/api/api_resources/custom_index.py +42 -0
  9. everysk/api/api_resources/datastore.py +81 -0
  10. everysk/api/api_resources/file.py +42 -0
  11. everysk/api/api_resources/market_data.py +223 -0
  12. everysk/api/api_resources/parser.py +66 -0
  13. everysk/api/api_resources/portfolio.py +43 -0
  14. everysk/api/api_resources/private_security.py +42 -0
  15. everysk/api/api_resources/report.py +65 -0
  16. everysk/api/api_resources/report_template.py +39 -0
  17. everysk/api/api_resources/tests.py +115 -0
  18. everysk/api/api_resources/worker_execution.py +64 -0
  19. everysk/api/api_resources/workflow.py +65 -0
  20. everysk/api/api_resources/workflow_execution.py +93 -0
  21. everysk/api/api_resources/workspace.py +42 -0
  22. everysk/api/http_client.py +63 -0
  23. everysk/api/tests.py +32 -0
  24. everysk/api/utils.py +262 -0
  25. everysk/config.py +451 -0
  26. everysk/core/_tests/serialize/test_json.py +336 -0
  27. everysk/core/_tests/serialize/test_orjson.py +295 -0
  28. everysk/core/_tests/serialize/test_pickle.py +48 -0
  29. everysk/core/cloud_function/main.py +78 -0
  30. everysk/core/cloud_function/tests.py +86 -0
  31. everysk/core/compress.py +245 -0
  32. everysk/core/datetime/__init__.py +12 -0
  33. everysk/core/datetime/calendar.py +144 -0
  34. everysk/core/datetime/date.py +424 -0
  35. everysk/core/datetime/date_expression.py +299 -0
  36. everysk/core/datetime/date_mixin.py +1475 -0
  37. everysk/core/datetime/date_settings.py +30 -0
  38. everysk/core/datetime/datetime.py +713 -0
  39. everysk/core/exceptions.py +435 -0
  40. everysk/core/fields.py +1176 -0
  41. everysk/core/firestore.py +555 -0
  42. everysk/core/fixtures/_settings.py +29 -0
  43. everysk/core/fixtures/other/_settings.py +18 -0
  44. everysk/core/fixtures/user_agents.json +88 -0
  45. everysk/core/http.py +691 -0
  46. everysk/core/lists.py +92 -0
  47. everysk/core/log.py +709 -0
  48. everysk/core/number.py +37 -0
  49. everysk/core/object.py +1469 -0
  50. everysk/core/redis.py +1021 -0
  51. everysk/core/retry.py +51 -0
  52. everysk/core/serialize.py +674 -0
  53. everysk/core/sftp.py +414 -0
  54. everysk/core/signing.py +53 -0
  55. everysk/core/slack.py +127 -0
  56. everysk/core/string.py +199 -0
  57. everysk/core/tests.py +240 -0
  58. everysk/core/threads.py +199 -0
  59. everysk/core/undefined.py +74 -0
  60. everysk/core/unittests.py +73 -0
  61. everysk/core/workers.py +241 -0
  62. everysk/sdk/__init__.py +23 -0
  63. everysk/sdk/base.py +98 -0
  64. everysk/sdk/brutils/cnpj.py +373 -0
  65. everysk/sdk/brutils/cnpj_pd.py +42 -0
  66. everysk/sdk/engines/__init__.py +26 -0
  67. everysk/sdk/engines/cache.py +185 -0
  68. everysk/sdk/engines/compliance.py +37 -0
  69. everysk/sdk/engines/cryptography.py +69 -0
  70. everysk/sdk/engines/expression.cpython-312-darwin.so +0 -0
  71. everysk/sdk/engines/expression.pyi +53 -0
  72. everysk/sdk/engines/helpers.cpython-312-darwin.so +0 -0
  73. everysk/sdk/engines/helpers.pyi +26 -0
  74. everysk/sdk/engines/lock.py +120 -0
  75. everysk/sdk/engines/market_data.py +244 -0
  76. everysk/sdk/engines/settings.py +19 -0
  77. everysk/sdk/entities/__init__.py +23 -0
  78. everysk/sdk/entities/base.py +784 -0
  79. everysk/sdk/entities/base_list.py +131 -0
  80. everysk/sdk/entities/custom_index/base.py +209 -0
  81. everysk/sdk/entities/custom_index/settings.py +29 -0
  82. everysk/sdk/entities/datastore/base.py +160 -0
  83. everysk/sdk/entities/datastore/settings.py +17 -0
  84. everysk/sdk/entities/fields.py +375 -0
  85. everysk/sdk/entities/file/base.py +215 -0
  86. everysk/sdk/entities/file/settings.py +63 -0
  87. everysk/sdk/entities/portfolio/base.py +248 -0
  88. everysk/sdk/entities/portfolio/securities.py +241 -0
  89. everysk/sdk/entities/portfolio/security.py +580 -0
  90. everysk/sdk/entities/portfolio/settings.py +97 -0
  91. everysk/sdk/entities/private_security/base.py +226 -0
  92. everysk/sdk/entities/private_security/settings.py +17 -0
  93. everysk/sdk/entities/query.py +603 -0
  94. everysk/sdk/entities/report/base.py +214 -0
  95. everysk/sdk/entities/report/settings.py +23 -0
  96. everysk/sdk/entities/script.py +310 -0
  97. everysk/sdk/entities/secrets/base.py +128 -0
  98. everysk/sdk/entities/secrets/script.py +119 -0
  99. everysk/sdk/entities/secrets/settings.py +17 -0
  100. everysk/sdk/entities/settings.py +48 -0
  101. everysk/sdk/entities/tags.py +174 -0
  102. everysk/sdk/entities/worker_execution/base.py +307 -0
  103. everysk/sdk/entities/worker_execution/settings.py +62 -0
  104. everysk/sdk/entities/workflow_execution/base.py +113 -0
  105. everysk/sdk/entities/workflow_execution/settings.py +32 -0
  106. everysk/sdk/entities/workspace/base.py +99 -0
  107. everysk/sdk/entities/workspace/settings.py +27 -0
  108. everysk/sdk/settings.py +67 -0
  109. everysk/sdk/tests.py +105 -0
  110. everysk/sdk/worker_base.py +47 -0
  111. everysk/server/__init__.py +9 -0
  112. everysk/server/applications.py +63 -0
  113. everysk/server/endpoints.py +516 -0
  114. everysk/server/example_api.py +69 -0
  115. everysk/server/middlewares.py +80 -0
  116. everysk/server/requests.py +62 -0
  117. everysk/server/responses.py +119 -0
  118. everysk/server/routing.py +64 -0
  119. everysk/server/settings.py +36 -0
  120. everysk/server/tests.py +36 -0
  121. everysk/settings.py +98 -0
  122. everysk/sql/__init__.py +9 -0
  123. everysk/sql/connection.py +208 -0
  124. everysk/sql/model.py +376 -0
  125. everysk/sql/query.py +393 -0
  126. everysk/sql/row_factory.py +63 -0
  127. everysk/sql/settings.py +45 -0
  128. everysk/sql/utils.py +129 -0
  129. everysk/tests.py +23 -0
  130. everysk/utils.py +81 -0
  131. everysk/version.py +15 -0
  132. everysk_lib-1.10.0.dist-info/.gitignore +5 -0
  133. everysk_lib-1.10.0.dist-info/METADATA +326 -0
  134. everysk_lib-1.10.0.dist-info/RECORD +137 -0
  135. everysk_lib-1.10.0.dist-info/WHEEL +6 -0
  136. everysk_lib-1.10.0.dist-info/licenses/LICENSE.txt +9 -0
  137. everysk_lib-1.10.0.dist-info/top_level.txt +2 -0
everysk/utils.py ADDED
@@ -0,0 +1,81 @@
1
+ ###############################################################################
2
+ #
3
+ # (C) Copyright 2023 EVERYSK TECHNOLOGIES
4
+ #
5
+ # This is an unpublished work containing confidential and proprietary
6
+ # information of EVERYSK TECHNOLOGIES. Disclosure, use, or reproduction
7
+ # without authorization of EVERYSK TECHNOLOGIES is prohibited.
8
+ #
9
+ ###############################################################################
10
+ from typing import Any, Generator
11
+
12
+ ###############################################################################
13
+ # Public functions Implementation
14
+ ###############################################################################
15
+ def bool_convert(value: Any) -> bool:
16
+ """
17
+ Convert any of these to True: 'y', 'yes', 'true', 'on', '1'
18
+ Convert any of these to Fale: 'n', 'no', 'false', 'off', '0'
19
+
20
+ Args:
21
+ value (Any): The value to be converted to a boolean
22
+
23
+ Returns:
24
+ Boolean: indicating if the value is either True or False
25
+
26
+ Raises:
27
+ ValueError: if value is none of these presented above.
28
+
29
+ Example:
30
+ >>> from everysk.utils import bool_convert
31
+ >>> bool_convert('y')
32
+ >>> True
33
+
34
+ >>> bool_convert('n')
35
+ >>> False
36
+
37
+ >>> bool_convert('a')
38
+ >>> ValueError: Invalid truth value 'a'
39
+ """
40
+ value = str(value).lower()
41
+ if value in ('y', 'yes', 'true', 'on', '1'):
42
+ value = True
43
+ elif value in ('n', 'no', 'false', 'off', '0'):
44
+ value = False
45
+ else:
46
+ raise ValueError(f"Invalid truth value '{value}'.")
47
+
48
+ return value
49
+
50
+ def search_key_on_dict(search_key: str, value: Any) -> Generator:
51
+ """
52
+ Search for key recursive on value.
53
+ The first value need to be a dict for this function work properly.
54
+
55
+ Args:
56
+ search_key (str): The key that must be found.
57
+ value (Any): The item where the key must be found.
58
+
59
+ Yields:
60
+ Generator: The generator with all corresponding values found by the key.
61
+
62
+ Example:
63
+ >>> from everysk.utils import search_key_on_dict
64
+ >>> data = {
65
+ >>> ... "name" : "John Doe",
66
+ >>> ... "age" : 32
67
+ >>> }
68
+ >>> search_key_on_dict("name", data)
69
+ >>> John Doe
70
+ """
71
+ if hasattr(value, 'items'):
72
+ for key, val in value.items():
73
+ if key == search_key:
74
+ yield val
75
+ if isinstance(val, dict):
76
+ for result in search_key_on_dict(search_key, val):
77
+ yield result
78
+ elif isinstance(val, list):
79
+ for item in val:
80
+ for result in search_key_on_dict(search_key, item):
81
+ yield result
everysk/version.py ADDED
@@ -0,0 +1,15 @@
1
+ ###############################################################################
2
+ #
3
+ # (C) Copyright 2023 EVERYSK TECHNOLOGIES
4
+ #
5
+ # This is an unpublished work containing confidential and proprietary
6
+ # information of EVERYSK TECHNOLOGIES. Disclosure, use, or reproduction
7
+ # without authorization of EVERYSK TECHNOLOGIES is prohibited.
8
+ #
9
+ ###############################################################################
10
+ from typing import Final, LiteralString
11
+
12
+ __all__ = ("__version__", "version")
13
+ # the version will be changed on build
14
+ version: Final[LiteralString] = "$VERSION"
15
+ __version__: Final[LiteralString] = version
@@ -0,0 +1,5 @@
1
+ # https://stackoverflow.com/a/932982
2
+ # To ignore all content in this folder, because here will be the credentials
3
+ *
4
+ # Except this file for git keep track of this empty dir
5
+ !.gitignore
@@ -0,0 +1,326 @@
1
+ Metadata-Version: 2.4
2
+ Name: everysk-lib
3
+ Version: 1.10.0
4
+ Summary: Generic lib to share python code on Everysk.
5
+ License-Expression: LicenseRef-Proprietary
6
+ Project-URL: Homepage, https://everysk.com/
7
+ Keywords: python,development,lib
8
+ Classifier: Development Status :: 5 - Production/Stable
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Topic :: Software Development :: Build Tools
11
+ Classifier: Programming Language :: Python :: 3.11
12
+ Requires-Python: >=3.11
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE.txt
15
+ Requires-Dist: python-dateutil<=3.0.0,>=2.8.2
16
+ Requires-Dist: holidays==0.51
17
+ Requires-Dist: tzdata<=2025.2,>=2024.1
18
+ Provides-Extra: requests
19
+ Requires-Dist: certifi==2025.10.5; extra == "requests"
20
+ Requires-Dist: charset_normalizer==3.4.4; extra == "requests"
21
+ Requires-Dist: idna==3.11; extra == "requests"
22
+ Requires-Dist: urllib3==2.6.3; extra == "requests"
23
+ Requires-Dist: requests==2.32.5; extra == "requests"
24
+ Provides-Extra: firestore
25
+ Requires-Dist: certifi==2025.10.5; extra == "firestore"
26
+ Requires-Dist: charset-normalizer==3.3.2; extra == "firestore"
27
+ Requires-Dist: idna==3.6; extra == "firestore"
28
+ Requires-Dist: urllib3==2.6.3; extra == "firestore"
29
+ Requires-Dist: requests==2.32.4; extra == "firestore"
30
+ Requires-Dist: pyasn1==0.5.1; extra == "firestore"
31
+ Requires-Dist: pyasn1-modules==0.3.0; extra == "firestore"
32
+ Requires-Dist: cachetools==5.3.2; extra == "firestore"
33
+ Requires-Dist: rsa==4.9; extra == "firestore"
34
+ Requires-Dist: google-auth==2.28.1; extra == "firestore"
35
+ Requires-Dist: googleapis-common-protos==1.62.0; extra == "firestore"
36
+ Requires-Dist: grpcio==1.60.1; extra == "firestore"
37
+ Requires-Dist: grpcio-status==1.60.1; extra == "firestore"
38
+ Requires-Dist: google-api-core[grpc]==2.17.1; extra == "firestore"
39
+ Requires-Dist: google-cloud-core==2.4.1; extra == "firestore"
40
+ Requires-Dist: proto-plus==1.23.0; extra == "firestore"
41
+ Requires-Dist: protobuf==4.25.8; extra == "firestore"
42
+ Requires-Dist: google-cloud-firestore==2.15.0; extra == "firestore"
43
+ Provides-Extra: redis
44
+ Requires-Dist: hiredis==3.3.0; extra == "redis"
45
+ Requires-Dist: redis==7.0.0; extra == "redis"
46
+ Provides-Extra: tasks
47
+ Requires-Dist: certifi==2025.10.5; extra == "tasks"
48
+ Requires-Dist: charset-normalizer==3.3.2; extra == "tasks"
49
+ Requires-Dist: idna==3.6; extra == "tasks"
50
+ Requires-Dist: urllib3==2.6.3; extra == "tasks"
51
+ Requires-Dist: requests==2.32.4; extra == "tasks"
52
+ Requires-Dist: pyasn1==0.5.1; extra == "tasks"
53
+ Requires-Dist: pyasn1-modules==0.3.0; extra == "tasks"
54
+ Requires-Dist: cachetools==5.3.2; extra == "tasks"
55
+ Requires-Dist: rsa==4.9; extra == "tasks"
56
+ Requires-Dist: google-auth==2.28.1; extra == "tasks"
57
+ Requires-Dist: googleapis-common-protos==1.62.0; extra == "tasks"
58
+ Requires-Dist: grpcio==1.60.1; extra == "tasks"
59
+ Requires-Dist: grpcio-status==1.60.1; extra == "tasks"
60
+ Requires-Dist: google-api-core[grpc]==2.17.1; extra == "tasks"
61
+ Requires-Dist: google-cloud-core==2.4.1; extra == "tasks"
62
+ Requires-Dist: proto-plus==1.23.0; extra == "tasks"
63
+ Requires-Dist: protobuf==4.25.8; extra == "tasks"
64
+ Requires-Dist: grpc-google-iam-v1==0.13.0; extra == "tasks"
65
+ Requires-Dist: google-cloud-tasks==2.16.1; extra == "tasks"
66
+ Provides-Extra: flask
67
+ Requires-Dist: MarkupSafe==2.1.5; extra == "flask"
68
+ Requires-Dist: blinker==1.8.2; extra == "flask"
69
+ Requires-Dist: click==8.1.7; extra == "flask"
70
+ Requires-Dist: itsdangerous==2.2.0; extra == "flask"
71
+ Requires-Dist: Jinja2==3.1.6; extra == "flask"
72
+ Requires-Dist: Werkzeug==3.0.3; extra == "flask"
73
+ Requires-Dist: flask==3.0.3; extra == "flask"
74
+ Provides-Extra: starlette
75
+ Requires-Dist: idna==3.10; extra == "starlette"
76
+ Requires-Dist: sniffio==1.3.1; extra == "starlette"
77
+ Requires-Dist: typing-extensions==4.15.0; extra == "starlette"
78
+ Requires-Dist: anyio==4.9.0; extra == "starlette"
79
+ Requires-Dist: certifi==2025.10.5; extra == "starlette"
80
+ Requires-Dist: h11==0.16.0; extra == "starlette"
81
+ Requires-Dist: httpcore==1.0.9; extra == "starlette"
82
+ Requires-Dist: hpack==4.1.0; extra == "starlette"
83
+ Requires-Dist: hyperframe==6.1.0; extra == "starlette"
84
+ Requires-Dist: h2==4.3.0; extra == "starlette"
85
+ Requires-Dist: httpx==0.28.1; extra == "starlette"
86
+ Requires-Dist: MarkupSafe==3.0.2; extra == "starlette"
87
+ Requires-Dist: jinja2==3.1.6; extra == "starlette"
88
+ Requires-Dist: itsdangerous==2.2.0; extra == "starlette"
89
+ Requires-Dist: python-multipart==0.0.20; extra == "starlette"
90
+ Requires-Dist: pyyaml==6.0.3; extra == "starlette"
91
+ Requires-Dist: starlette==0.49.1; extra == "starlette"
92
+ Provides-Extra: httpx
93
+ Requires-Dist: idna==3.10; extra == "httpx"
94
+ Requires-Dist: sniffio==1.3.1; extra == "httpx"
95
+ Requires-Dist: typing-extensions==4.15.0; extra == "httpx"
96
+ Requires-Dist: anyio==4.9.0; extra == "httpx"
97
+ Requires-Dist: certifi==2025.10.5; extra == "httpx"
98
+ Requires-Dist: h11==0.16.0; extra == "httpx"
99
+ Requires-Dist: httpcore==1.0.9; extra == "httpx"
100
+ Requires-Dist: hpack==4.1.0; extra == "httpx"
101
+ Requires-Dist: hyperframe==6.1.0; extra == "httpx"
102
+ Requires-Dist: h2==4.3.0; extra == "httpx"
103
+ Requires-Dist: httpx==0.28.1; extra == "httpx"
104
+ Provides-Extra: paramiko
105
+ Requires-Dist: bcrypt==4.2.0; extra == "paramiko"
106
+ Requires-Dist: pycparser==2.22; extra == "paramiko"
107
+ Requires-Dist: cffi==1.17.1; extra == "paramiko"
108
+ Requires-Dist: cryptography==44.0.1; extra == "paramiko"
109
+ Requires-Dist: pynacl==1.5.0; extra == "paramiko"
110
+ Requires-Dist: paramiko==3.5.0; extra == "paramiko"
111
+ Provides-Extra: everysk-orjson
112
+ Requires-Dist: everysk-orjson==3.11.3; extra == "everysk-orjson"
113
+ Provides-Extra: expression
114
+ Requires-Dist: lark==1.2.2; extra == "expression"
115
+ Requires-Dist: numpy==1.26.4; extra == "expression"
116
+ Requires-Dist: pandas==2.1.4; extra == "expression"
117
+ Provides-Extra: postgresql
118
+ Requires-Dist: psycopg-binary==3.3.0; extra == "postgresql"
119
+ Requires-Dist: psycopg-pool==3.3.0; extra == "postgresql"
120
+ Requires-Dist: psycopg==3.3.0; extra == "postgresql"
121
+ Dynamic: license-file
122
+
123
+
124
+ # Everysk Library
125
+
126
+ | | |
127
+ | --- | --- |
128
+ | Testing | [![CI - Test](https://github.com/Everysk/everysk-lib/actions/workflows/coverage.yml/badge.svg)](https://github.com/Everysk/everysk-lib/actions/workflows/coverage.yml) [![Security Checks](https://github.com/Everysk/everysk-lib/actions/workflows/security-checks.yml/badge.svg)](https://github.com/Everysk/everysk-lib/actions/workflows/security-checks.yml) |
129
+ | Package | [![PyPI Latest Release](https://img.shields.io/pypi/v/everysk-lib.svg)](https://pypi.org/project/everysk-lib/) |
130
+
131
+
132
+
133
+ The **Everysk Library** is a one-stop solution designed to help our teams and partners streamline workflows and maximize productivity.
134
+
135
+ Many projects at Everysk rely on multiple **endpoints**, **engines**, and **utilities** to automate workflows, handle entities such as portfolios, datastores, reports, and files, and perform complex calculations. Adopting and maintaining each of these components individually can be both time-consuming and expensive.
136
+
137
+ To address this challenge, Everysk developed the Everysk Library: a unified Python library that bundles these capabilities into a single, convenient package.
138
+
139
+ By consolidating essential functionalities — ranging from portfolio creation to workflow automation — Everysk Lib greatly simplifies implementation and ongoing maintenance. This all-in-one toolkit ensures you have everything you need to build powerful, scalable solutions across a variety of Everysk projects.
140
+
141
+ <br>
142
+
143
+ ## Table of Contents
144
+
145
+ - [Module Structure](#module-structure)
146
+ - [Installation](#installation)
147
+ - [Running Tests](#running-tests)
148
+ - [Running Tests with coverage](#running-tests-with-coverage)
149
+ - [Contributing](#contributing)
150
+ - [License](#license)
151
+
152
+ ## Module Structure
153
+
154
+ Below we have the main directories that you will be working with.
155
+
156
+ ```mermaid
157
+ flowchart TB
158
+ EveryskLibrary(["Everysk Library"])
159
+ SDKDir(["sdk"])
160
+ CoreDir(["core"])
161
+ ServerDir(["server"])
162
+ ApiDir(["api"])
163
+ EveryskLibrary --> SDKDir
164
+ EveryskLibrary --> CoreDir
165
+ EveryskLibrary --> ServerDir
166
+ EveryskLibrary --> ApiDir
167
+ ```
168
+
169
+ <br>
170
+
171
+ ## Installation
172
+
173
+ To install the **Everysk library**, you will need to use pip's `install` command:
174
+
175
+ ```bash
176
+ pip install everysk-lib
177
+ ```
178
+
179
+ ### Verifying the Installation
180
+
181
+ After installing the library, it's a good practice to verify if the installation was successful. Here is how to achieve this:
182
+
183
+ #### 1. Open a terminal
184
+
185
+ #### 2. Start the Python interpreter by typing `python` and pressing `Enter`
186
+
187
+ #### 3. In the Python interpreter, type the following command then press `Enter`:
188
+
189
+ ```python
190
+ import everysk
191
+ ```
192
+
193
+ If the library has been installed correctly, this command should complete without any errors. If the library is not installed or there's a problem with the installation, Python will raise a `ModuleNotFoundError`
194
+
195
+ <br>
196
+
197
+ ## Documentation
198
+
199
+ The main documentation of the Everysk Library can be founded here: [Everysk Library Documentation](docs/README.md)
200
+
201
+ <br>
202
+
203
+ ## Running Tests
204
+
205
+ This section provides instructions on how to run tests for the project. There are two scenarios, the first one is running tests in a development environment and the second one is running tests after the library has been installed from PyPI.
206
+
207
+ ### Running Tests in Development Environment
208
+
209
+ In a development environment you can use the provided shell script to run the tests. The script sets up the necessary environment and then run the tests. To execute the tests, open a bash terminal and run the following command.
210
+
211
+ ```bash
212
+ ./run.sh tests
213
+ ```
214
+
215
+ ### Running Tests After the Library is Installed
216
+
217
+ After the library has been installed in your project from PyPI, you can start running tests using Python's built-in unittest module. To run tests use the following command:
218
+
219
+
220
+ ```bash
221
+ python3 -m unittest everysk.core.tests
222
+ ```
223
+
224
+ The command uses Python's unittest module as mentioned above as a script, which then runs the test in the `everysk.core.tests` package.
225
+
226
+ <br>
227
+
228
+ ## Running Tests with coverage
229
+
230
+ Code coverage us a way of measuring how many lines of code are executed while the automated tests are running.
231
+
232
+ To run tests along with a coverage report, you can use the provided shell script. The script will not only run the tests but also generate a coverage report that shows the percentage of code that was executed during the tests.
233
+
234
+ This is useful to identify sections of your code that are not being tested and may need additional tests.
235
+
236
+ #### 1. Open a terminal in your Visual Studio Code environment.
237
+
238
+ #### 2. Run the following command.
239
+
240
+ ```bash
241
+ ./run.sh coverage
242
+ ```
243
+
244
+ This command executes the `run.sh` script with the `coverage` argument. The report will be displayed in the terminal after the script completed the tests.
245
+
246
+ **Remember:** a high coverage percentage is generally good, but 100% coverage does not ensures that your code is free from bugs or any other problem that might occur in your code. The full coverage just means that all the lines in your code were executed during the tests.
247
+
248
+ <br>
249
+
250
+ ## Contributing
251
+
252
+ Contributions are always welcome and greatly appreciated!
253
+
254
+ Go to the repository [link](https://github.com/Everysk/everysk-lib) and click on the `Fork` button to create your own copy of the everysk library.
255
+
256
+ Then clone the project in your own local machine by running the command below or using the **GitHub Desktop**.
257
+
258
+ ```bash
259
+ git clone https://github.com/<your-username>/everysk-lib.git everysk-yourusername
260
+ ```
261
+
262
+ This section creates a directory called `everysk-yourusername` to center all your code.
263
+
264
+ After that you can change the directory by:
265
+
266
+ ```bash
267
+ cd everysk-yourusername
268
+ ```
269
+
270
+ Create the **upstream** repository which will refer to the main repository that you just forked.
271
+
272
+ ```bash
273
+ git remote add upstream https://github.com/Everysk/everysk-lib.git
274
+ ```
275
+
276
+ Now run the following commands to make sure that your clone is up-to-date with main everysk repository
277
+
278
+ ```bash
279
+ git checkout main
280
+ git pull upstream main
281
+ ```
282
+
283
+ Shortly after, create a new branch to add your code
284
+
285
+ ```bash
286
+ git checkout -b brand-new-feature
287
+ ```
288
+
289
+ The command above will automatically switch to this newly created branch. At this moment your are able to make your modifications to the code and commit locally as you progress.
290
+
291
+ After all the code changes, you can submit your contribution by pushing the changes to your fork on GitHub:
292
+
293
+ ```bash
294
+ git push origin brand-new-feature
295
+ ```
296
+
297
+ The command above ensures that all the modifications that you've made are up-to-date with your current branch.
298
+
299
+ At the end of this process you will need to make a **Pull Request** to the main branch.
300
+
301
+ To achieve this, go to the GitHub page of the project and click on the `Pull requests` tab, then click on `New pull request` button.
302
+
303
+ This will open a new section used to compare branches, now choose your branch for merging into the main branch and hit the `Create pull request` button.
304
+
305
+ <br>
306
+
307
+ ## License
308
+
309
+ (C) Copyright 2025 EVERYSK TECHNOLOGIES
310
+
311
+ This is an unpublished work containing confidential and proprietary
312
+ information of EVERYSK TECHNOLOGIES. Disclosure, use, or reproduction
313
+ without authorization of EVERYSK TECHNOLOGIES is prohibited.
314
+
315
+ Date: Jan 2025
316
+
317
+ Contact: contact@everysk.com
318
+
319
+ URL: https://everysk.com/
320
+
321
+
322
+ <br>
323
+ <hr>
324
+ <br>
325
+
326
+ [Back to the top](#everysk-library)
@@ -0,0 +1,137 @@
1
+ everysk/config.py,sha256=PKwYhzgBUIQ2m_cS5muBRWssZa4I3B6D5Qa9eSqAu18,16653
2
+ everysk/version.py,sha256=q8j2yDrdm4lEtGtOIt4tY4TUlctwQYJJcVqscDabikA,617
3
+ everysk/_version.py,sha256=_OPcym8X5j0fiafJLlKp8ADhMP5pHKqD2YySbH9f1PY,24501
4
+ everysk/__init__.py,sha256=JeZGK9kmTaBRR6H4et-3UYE6x8D7xsFtrTnJ_tQXG_Q,1039
5
+ everysk/utils.py,sha256=nejrDn5n75YBk3BinEiDY5JhhdB7BaHX_9wpJ20RvXs,2654
6
+ everysk/settings.py,sha256=Z_wPLDcAxjd6gW2lH6J8n6Q2j-x3V_AJGJmR5NapzBo,4008
7
+ everysk/tests.py,sha256=MlZ4_IXk639-tyTtmdWWMJD98bPK0eunRFCPZopj2fs,884
8
+ everysk/core/serialize.py,sha256=8P5C7V98tB9vAQBEdu0NqMt8lktsD-Ol5REpTG1vNlw,25155
9
+ everysk/core/signing.py,sha256=vImkFEiunqD-oO3e9Oi88z0x0jEEfO1lDIbC9RYxTn8,1956
10
+ everysk/core/lists.py,sha256=Z8ED7r0w-Bl4hLlOVmBaaYdHOnCZvhaigxv9USzZcCQ,3317
11
+ everysk/core/fields.py,sha256=I_CvDe0NKNW7zbYpy0Pf2ZLIetDl2p2XLxDmmGX7XHg,44209
12
+ everysk/core/object.py,sha256=9XMSPDlgLtGTKJLVimRIND4a7U1e_rZrERJGZw2j_lQ,53924
13
+ everysk/core/log.py,sha256=qFRW9bO6jaELwrJ0MIaEUm2-uYFIyTbH2bQ3j0XpPio,30239
14
+ everysk/core/number.py,sha256=Al_9LLu7hj_4fTLPTiN3dzQvxctmMxB5i9I4Z4X5Lro,1204
15
+ everysk/core/unittests.py,sha256=ujGqGHCUAI25P4UgwHn9GpZAMBdqZ-lxxGERrckthIM,3289
16
+ everysk/core/retry.py,sha256=wLU0fNKP7cNYKkYxMTjR--YFYM0ahXWP-39O_FObwfo,1897
17
+ everysk/core/threads.py,sha256=CcL4Nv2Zzdxt1xjo0CbLSttSU29xHgSRiWF_JXr3GAA,7167
18
+ everysk/core/redis.py,sha256=HrG58dc_3EHnti2sBaijcyN8Hq4u3p1zst6-CSK9ySQ,36664
19
+ everysk/core/compress.py,sha256=TRk-ME_UYfD5OQyhISYvwAZLT7IYfjbqWHYEgOuyaFU,10858
20
+ everysk/core/http.py,sha256=9aKkh-M3Sfsg0tZLK_BWnmyZ7AuBdACq4pgy_qZSrXI,27171
21
+ everysk/core/undefined.py,sha256=sNvP9qJJi3TINPSJiIWjqKz4o5DNBBYparoTRrDtJ_0,2757
22
+ everysk/core/exceptions.py,sha256=HTMKauc7vSeP77UqgPGw6rmwhEqWAKcGS0wk4oofgEY,14275
23
+ everysk/core/sftp.py,sha256=01_iDxqhcAO3FFKUp-8myV7qtf3I-Mi_cLZ6KrAfsGw,15600
24
+ everysk/core/string.py,sha256=K1BRlRNuhqlI7gdqOi40hjTHuxm1fF-RLqIAwm74eHc,5456
25
+ everysk/core/workers.py,sha256=alPhC1hEhI-I1l1Vnt0OrpxPDfi7R-xodo_qjJRVHvk,9037
26
+ everysk/core/tests.py,sha256=qrfAfUDmgCvBn99X73fL5MUTo1P33gq0ftP5CTJetCc,14491
27
+ everysk/core/slack.py,sha256=r9QH6RRe74Jz4-8XWLqbYq21msIlsVuC4fr_VUMFZPE,4394
28
+ everysk/core/firestore.py,sha256=S5NWH9CS0by_Xk19UPX_455nM05Y-UG-rExgQDTf5zY,21567
29
+ everysk/core/_tests/serialize/test_orjson.py,sha256=VSwkwv_omT4D_o38Ldnbw0Mj-hLYQfa0loEwYQ9C5q8,12415
30
+ everysk/core/_tests/serialize/test_pickle.py,sha256=zMha6SBxUCPlnd6_kORpoRR22rgOx0oMlwLgtX3eVp8,1880
31
+ everysk/core/_tests/serialize/test_json.py,sha256=zyTtL1pNoP_3MoHBGqkwGBOOCl9n79C34O4TytIc-tk,13279
32
+ everysk/core/datetime/__init__.py,sha256=l2kh9_5M3oe63nHgGhD1tHLkG99z_gTQCyx6dCAs1Ec,584
33
+ everysk/core/datetime/calendar.py,sha256=SBpLb-Lr1HPqJSQzXWxeT7FjwgU6S71y_PMdfYeozNw,4414
34
+ everysk/core/datetime/date_expression.py,sha256=Vr69v6xEpFodRfZyJJ-NYo7ysoQGMbrvlYZmNDi_CkA,12970
35
+ everysk/core/datetime/date_settings.py,sha256=WhN8YJFrgFmQeqpos3BQCnehpTkZ4VmZ03jqnrmuyms,977
36
+ everysk/core/datetime/datetime.py,sha256=p2APDVo0qdNsa478dpsxl6nwc7-m3cYyiVZ5Zz16r98,30136
37
+ everysk/core/datetime/date.py,sha256=SjBAxi7Z46T1PI8J0hsYpLPlm2Aro4IdkXuUx6y39Ps,16843
38
+ everysk/core/datetime/date_mixin.py,sha256=ID7AgYUfDMmrfa9naBxR-mmUNzrpuf3Hi_JGBIFESLA,65856
39
+ everysk/core/cloud_function/tests.py,sha256=vSQEJtc7Qxvd1etGNVaPzXKrxm1CF6bkw1hBmc-6W-g,3745
40
+ everysk/core/cloud_function/main.py,sha256=6LjmMe-u_j1uCsaoUGh_VYBHdN5lIkQ3ofGQjbu8Dn0,2571
41
+ everysk/core/fixtures/_settings.py,sha256=SfUQJp-0Pp8u8o9YAa8Negj0sx0dxSe9cNhbTVNqTcM,1204
42
+ everysk/core/fixtures/user_agents.json,sha256=XDxTqtyXgE0wdCxv0fLHlbx4DtWQOFPnCvivB6oln18,10361
43
+ everysk/core/fixtures/other/_settings.py,sha256=RODZ0bvGGWWXhdQ05unMoSM5GVlGSCM8lzmjfHjvyeo,822
44
+ everysk/server/responses.py,sha256=q6h2hSrVwWUMd9MFUJrlycKwXf3vBAdtcAB7Q-OzLaI,3922
45
+ everysk/server/applications.py,sha256=y0gKA0jyN6V6m1__-mGWKCuPChnEn-6J93T4MnTxY3U,2961
46
+ everysk/server/example_api.py,sha256=ss3Rbycv-4wz2yb08wL6ocaILuzC6-mTTT1-Ccsi5w8,2591
47
+ everysk/server/__init__.py,sha256=lXZAWXrI2tlzw9uvJyThaWnksZqdbemQ2tqe-e7wUiU,413
48
+ everysk/server/middlewares.py,sha256=NlCgCC5V0-nGlobVVpL1dcUjsDJVzfS4jTUVQEuSqbQ,3574
49
+ everysk/server/routing.py,sha256=tHmmokv8msPY37T9F9_lovLZ9NP8bC8G_kxV92aM-tg,2422
50
+ everysk/server/settings.py,sha256=C9nM3PYZQOKjq9KB2DB4ojGkkTJtj5pslWrUdMGYEwk,1309
51
+ everysk/server/tests.py,sha256=caw6jaXM0xjdi7Y10JpqUTCyUrUmKpG3uxigLcVRdew,1885
52
+ everysk/server/requests.py,sha256=YBs7AfLhqi1CXYAbYcBlboej-7ukOrdNA1W40U8TlrY,2463
53
+ everysk/server/endpoints.py,sha256=6sDHTPVcx7gH-Vup8SI7IeCtUgzET2yEfnmdWaB-5wc,20322
54
+ everysk/sdk/worker_base.py,sha256=31zDyLtttU25h2kNbwk4yn0tTxHaIc_Ysq5Grm9A9d8,1555
55
+ everysk/sdk/__init__.py,sha256=29vdTawyABE748i_4wFeavjhed92t9ZXOT2uqriIEmk,974
56
+ everysk/sdk/settings.py,sha256=S9l3ZwC6jZwTvr_bnQtvwXJSKFsRF7yKj2btptd3abs,3147
57
+ everysk/sdk/tests.py,sha256=pZPSxu2roMCLFWHhnZFCSlA4nv_mFkwqNBkDsVfZ8GU,7611
58
+ everysk/sdk/base.py,sha256=aOhguqj-WfyHYm_qO5G675JdF5iJKf6x0Abt4jYKb_8,3668
59
+ everysk/sdk/brutils/cnpj.py,sha256=Dh3zcBiQoWm8gI5mV_-dv4a35Z0D8lSMGDcbCkdk3DE,12852
60
+ everysk/sdk/brutils/cnpj_pd.py,sha256=7NwIbIq2zupneAblxs2caspzNcdQcwdkDMyAGvgw7SU,1524
61
+ everysk/sdk/engines/compliance.py,sha256=Kd2buYlcKfUHEGmeZrGgT2JOnC7p12UOlDwFS69ssEM,1432
62
+ everysk/sdk/engines/helpers.pyi,sha256=CIcomtg79QWisRscba-Trs0X4tOlMT1gxykZjM90KYA,482
63
+ everysk/sdk/engines/cache.py,sha256=uCFfBVfEyjHRxTNiPXMFehPWaq8k0DbQ50f40JHt4Qg,6580
64
+ everysk/sdk/engines/__init__.py,sha256=1v06RoWC4qfxkfUdbQGF3yCuskXjrvbb_yF_6XCpO5E,1153
65
+ everysk/sdk/engines/cryptography.py,sha256=y07mfKbNDK86j4CnfmqqdL2KWBf0s6WN7xjuL-iS6g4,2111
66
+ everysk/sdk/engines/lock.py,sha256=rPFY3e2hrKiRyFE0iHAuMad7Cv0KQBJsF9SbZcx43D0,4709
67
+ everysk/sdk/engines/market_data.py,sha256=lyMl_IOAEobFzzo6Jrtxa9ht95BJEmTUR6bXkLGaZLM,9426
68
+ everysk/sdk/engines/settings.py,sha256=xTxOvPLk_4MXO1VzG78Dbawhu4wE7nmXchWoxVF1X0w,1139
69
+ everysk/sdk/engines/expression.pyi,sha256=ghE_B4tua8hqo7IahSWxl_5fJ_ONF8RVMgSM4Hf_NpU,1265
70
+ everysk/sdk/engines/expression.cpython-312-darwin.so,sha256=SHnsseOWnePuAcyhuX6z5WaTnsH_X5c7jJckkrdHEh4,4911088
71
+ everysk/sdk/engines/helpers.cpython-312-darwin.so,sha256=n1pROdFxwGsTDFHbOil9DD7Y0MJDX9yHY-zQ2i0zluw,1304192
72
+ everysk/sdk/entities/tags.py,sha256=n_hLlbCvhL6Bl0QlvfU4dSRVvwK-MuvRWa1tt2dL9xk,6189
73
+ everysk/sdk/entities/fields.py,sha256=t8W_sMvw7VZpA48HSh_SSW3H1dtF0P6xnZbqELc72xo,13087
74
+ everysk/sdk/entities/query.py,sha256=cCxsAWF01nLXlRHq8RsGoXLlffKf-QaPPfRvf22FPdg,24077
75
+ everysk/sdk/entities/base_list.py,sha256=1Rg9vmQn99Y2tHX-jb4FuQ7I6hv7pt47iJ9H9f9nT2A,4326
76
+ everysk/sdk/entities/__init__.py,sha256=0zk3iqwmcCYtdhxK0LpwPJONRat_F6K2aDmB65xCHJo,983
77
+ everysk/sdk/entities/settings.py,sha256=9jNyAPQy6vbdcT3-BWpwYjR0oHl104Drzc-h_V__rfA,2336
78
+ everysk/sdk/entities/script.py,sha256=_yYsqHgSnEzcmmB9CUJDHPcnlSz8Lgur7I35laqMDIo,14335
79
+ everysk/sdk/entities/base.py,sha256=p0oiWs2cUwzop84sE7fuQ5z-ONsuHfkKLj7uZy3LzFs,29298
80
+ everysk/sdk/entities/workflow_execution/settings.py,sha256=Acefis-m7TJmDKxP2OL7B_oZ5qVH-ij2T_XKmfaAwhk,1807
81
+ everysk/sdk/entities/workflow_execution/base.py,sha256=aY0Vzv2KkfHCLO6GTBLnj-iM2wlVwawYAQpvMD59xDw,4065
82
+ everysk/sdk/entities/worker_execution/settings.py,sha256=qDEwWBFpmBamIA_imPZlNPTbYK87cLUoedyuGT4VheE,2933
83
+ everysk/sdk/entities/worker_execution/base.py,sha256=j8xVyDe3ncHRxXcsCnTJeJPZBPtYtH7Jg-W0sF4Cm3w,11059
84
+ everysk/sdk/entities/file/settings.py,sha256=gDTLsbAvVoVdRLoQD1gkDYIJuKZUCdgS0AQv1pilEXM,2198
85
+ everysk/sdk/entities/file/base.py,sha256=gInM4XUvW1qxopVf7iDek76pGeo9on4U1gEo_JpGZSw,7951
86
+ everysk/sdk/entities/secrets/settings.py,sha256=rN6QUdRO86e_5_Gg_nByKGRSrrNfKfv-PjjAPGh6OGg,910
87
+ everysk/sdk/entities/secrets/script.py,sha256=kg2T4ptBhy_R4tPYq50_JBCNSgsdjKQzVzvzFNLcYaI,4038
88
+ everysk/sdk/entities/secrets/base.py,sha256=On9tvQFQN4sENArlABKktc3mqx4kynaVpxCnuYAi5Bk,4410
89
+ everysk/sdk/entities/private_security/settings.py,sha256=Lgcl_olxdUztYrVs7_tQ4WLlZtqk2IgPtdKZfIQ8o-E,875
90
+ everysk/sdk/entities/private_security/base.py,sha256=nfVEPAhNjw160WMIrvHtdKVtuve0e6-9UNiRPzxVgTo,7860
91
+ everysk/sdk/entities/workspace/settings.py,sha256=i2VFTCaIaza_wmWdAAkFeHMhVAv8fA-YafRVQbuYiuY,1314
92
+ everysk/sdk/entities/workspace/base.py,sha256=yzAUXcowINxi2Kiavzh_7YOq70HOkHaqqPqUh_PGBi4,3180
93
+ everysk/sdk/entities/datastore/settings.py,sha256=OpZB-iE5EEYdRUqHFUqB3vOat3g3gbJL_7AJauEVcXo,744
94
+ everysk/sdk/entities/datastore/base.py,sha256=LjdXQnNC3aLuRq6lzg02B9CLULl_0veGO0vPkaz0kvI,6101
95
+ everysk/sdk/entities/portfolio/security.py,sha256=qrLu1c17GxvYcihH6ShhhU910hNvm7hO90Eg2rr0yBs,23818
96
+ everysk/sdk/entities/portfolio/securities.py,sha256=xIqUZqKydEwUxKmN4gxwMBAm-tZdMfJV7D4dIjIHr5k,10396
97
+ everysk/sdk/entities/portfolio/settings.py,sha256=9D0JGMBpUFnWKfDoFM0PAoPktuPOWCaMlkr_ebqGm7E,3264
98
+ everysk/sdk/entities/portfolio/base.py,sha256=cJCmoBWPRh_uf2BWI3p4PXBUNG9oXN4M71hG6b0xaUY,9595
99
+ everysk/sdk/entities/report/settings.py,sha256=85ONLliZtH2o033RMAC-gtBPzCEvmquBu5Se1GJGkss,1023
100
+ everysk/sdk/entities/report/base.py,sha256=QuvGUsp9Ws9M3Lys4WzwBlhmQZEN1fSAbpd2K5YNR9o,8289
101
+ everysk/sdk/entities/custom_index/settings.py,sha256=UIxh-REVo22yCzF-ZFrAv2csjOaWDNgbzPOQhheEXrA,1473
102
+ everysk/sdk/entities/custom_index/base.py,sha256=bqo1scuCgztWSbcT8YygwV6LwqmJMLvP-edBfWhhkVA,7353
103
+ everysk/api/http_client.py,sha256=fatK_bpL5XE_mqF83J8pXqKYSVOVCsDWvAe2XDQTOi0,2441
104
+ everysk/api/__init__.py,sha256=nD4G5flQ8gbgmIVk7Ap-dktnJdiIMj45QnKxMKAPeAA,2250
105
+ everysk/api/api_requestor.py,sha256=CwrHz6fefK3Mmepoy3lU3GjuHqzluT6WyVrn5Yru2s8,5904
106
+ everysk/api/utils.py,sha256=kjXhJOudf1lnzAG1FGJeCKPcsSkuMApDq4AsnmVrVHM,9121
107
+ everysk/api/tests.py,sha256=XioWMj_E8KXsEnVPvLYJ0Lqq15tPiK5QSFYIPCS5fac,1337
108
+ everysk/api/api_resources/worker_execution.py,sha256=F6-b_-MsTz3qc7oylsl-aPWEnLtkH2enzwUKMI8ZHeA,2792
109
+ everysk/api/api_resources/report_template.py,sha256=w2_E5mlID1hX269FFfoyw79sxxzcVe5Mxf7DkLwof7s,1307
110
+ everysk/api/api_resources/workflow_execution.py,sha256=i2KFfnQaNE1SGZDboJ5Z3UcdADJryNYRBRFq3ygbeW8,4257
111
+ everysk/api/api_resources/calculation.py,sha256=c5DU2aZqPNoM9IECHePZmHXoDvCy9t-HytlBztA7zRw,36405
112
+ everysk/api/api_resources/__init__.py,sha256=1AO8dA1ldznHZhnSQr5Wk2xMgLnGKEH_rmTmpiF-kvE,1267
113
+ everysk/api/api_resources/parser.py,sha256=wRmk91IIVOGZlfvjoEEwG91abc7TzxeJwKdtF-NBzoA,2751
114
+ everysk/api/api_resources/api_resource.py,sha256=ZkOlg5M_B9vCT0ZA_e73xoPw85R7nfJ2kpl2ubqgq60,14306
115
+ everysk/api/api_resources/private_security.py,sha256=xiQJ7Pu_7NGzIieHy_N-M-9hOzn8l80oSgcYximzuYQ,1421
116
+ everysk/api/api_resources/file.py,sha256=aScRxvEtT71E6mVQyC_A1ngG_dPHR1MUL7jbKSOLnn4,1386
117
+ everysk/api/api_resources/market_data.py,sha256=0PXlkyabvspi6_TuK9BJ1_6oAZld6UEsPSppTeCcDZM,9333
118
+ everysk/api/api_resources/workflow.py,sha256=AvQLgXo_iZZDpTujkBtuxDcEGs_ZgQgkdkFxCQxK8_s,2510
119
+ everysk/api/api_resources/workspace.py,sha256=8OsBf7BfQc80COIZbeBz0o4bBCxb-oSfZ7OUPbHM9Ws,1453
120
+ everysk/api/api_resources/tests.py,sha256=vadZLN0oxvY2QbWPJWBCrW_93009_fqLhg0YkklLOhk,5108
121
+ everysk/api/api_resources/portfolio.py,sha256=51_rOn92-tNo28fcryFoQ0Q69iPNK3FN7dE106G3h7c,1501
122
+ everysk/api/api_resources/report.py,sha256=FBEh4uEXd_OxE4BJmrQnbC9nBjGGSYt33HsKvQvsVL8,2529
123
+ everysk/api/api_resources/datastore.py,sha256=ZFXkON1DH6M-Kui6nViwitH7L8vACRq1PKFLr8NtLdM,3250
124
+ everysk/api/api_resources/custom_index.py,sha256=Lk5ms54MLPs-vlKwkw-kyDjyFwsk-AD3OOYa-HHRc48,1382
125
+ everysk/sql/row_factory.py,sha256=FEtB4d12ACT3Bp6g2k_Ty2p2HpTkPoVqODUS1_kSXys,1936
126
+ everysk/sql/query.py,sha256=yO2EoGoUoGace_9BNKN8jeyFV30yCrAhefAvGHqIFE4,14174
127
+ everysk/sql/__init__.py,sha256=lXZAWXrI2tlzw9uvJyThaWnksZqdbemQ2tqe-e7wUiU,413
128
+ everysk/sql/model.py,sha256=syHHTTS4JRTj_2Mu9ugmMu4b6qUY12t3VgfE3hSxYIc,14559
129
+ everysk/sql/connection.py,sha256=PujKm1i5gAvxU_FVT7IDuMb38D52dII52Gk8RI0vC_0,7928
130
+ everysk/sql/utils.py,sha256=Hbk9INEcz12FoBeDvHh9qh0dTSmTCWAn_S1anJOJb1o,4327
131
+ everysk/sql/settings.py,sha256=g5ZVm4Y3fhWGeXgTW6D309waGRBx2S6Ima4nY6ByTZw,2103
132
+ everysk_lib-1.10.0.dist-info/RECORD,,
133
+ everysk_lib-1.10.0.dist-info/WHEEL,sha256=V1loQ6TpxABu1APUg0MoTRBOzSKT5xVc3skizX-ovCU,136
134
+ everysk_lib-1.10.0.dist-info/.gitignore,sha256=0A1r9HzLhR7IQ1rGPjbaW5HC6oIQ7xzVYZ1z1ZaVfmw,183
135
+ everysk_lib-1.10.0.dist-info/top_level.txt,sha256=1s1Lfhd4gXolqzkh-ay3yy-EZKPiKnJfbZwx2fybxyk,14
136
+ everysk_lib-1.10.0.dist-info/METADATA,sha256=3RpbivKO8Wqlqgq4RdNPdHLCy_k-7Iv-b4clbVSWhK8,13081
137
+ everysk_lib-1.10.0.dist-info/licenses/LICENSE.txt,sha256=Q5YxWA62m0TsmpEmHeoRHg4oPu_8ektkZ3FWWm1pQWo,311
@@ -0,0 +1,6 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.9.0)
3
+ Root-Is-Purelib: false
4
+ Tag: cp312-cp312-macosx_11_0_arm64
5
+ Generator: delocate 0.13.0
6
+
@@ -0,0 +1,9 @@
1
+ (C) Copyright 2025 EVERYSK TECHNOLOGIES
2
+
3
+ This is an unpublished work containing confidential and proprietary
4
+ information of EVERYSK TECHNOLOGIES. Disclosure, use, or reproduction
5
+ without authorization of EVERYSK TECHNOLOGIES is prohibited.
6
+
7
+ Date: Jan 2025
8
+ Contact: contact@everysk.com
9
+ URL: https://everysk.com/
@@ -0,0 +1,2 @@
1
+ dummy
2
+ everysk