fan-tools

View on PyPIReverse Dependencies (3)

4.4.0 fan_tools-4.4.0-py2.py3-none-any.whl

Wheel Details

Project: fan-tools
Version: 4.4.0
Filename: fan_tools-4.4.0-py2.py3-none-any.whl
Download: [link]
Size: 71605
MD5: e775eeece868f1a9f8a2787454df5c89
SHA256: 0d49ff6d216180018d4d3578b26e02eeab70df76f38593736dbd2972030a7f83
Uploaded: 2024-10-03 17:25:57 +0000

dist-info

METADATA

Metadata-Version: 2.1
Name: fan-tools
Version: 4.4.0
Summary: Various python stuff: testing, aio helpers, etc
Author-Email: cybergrind <cybergind+pypi[at]gmail.com>
Project-Url: github, http://github.com/micro-fan/fan_tools
Keywords: asyncio,testing
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: MacOS
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: POSIX
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Utilities
Requires-Dist: pyyaml (>=3.12)
Requires-Dist: typing-extensions (>=4.4)
Requires-Dist: aiopg; extra == "aio-utils"
Requires-Dist: psycopg2-binary; extra == "aio-utils"
Requires-Dist: djangorestframework (~=3.12.0); extra == "doc-utils"
Requires-Dist: docutils; extra == "doc-utils"
Requires-Dist: rest-framework-dyn-serializer (~=1.3.1); extra == "doc-utils"
Requires-Dist: fan-tools[logging]; extra == "gcloud-backup"
Requires-Dist: google-cloud-storage; extra == "gcloud-backup"
Requires-Dist: python-gitlab (==1.0.2); extra == "gitlab-monitoring"
Requires-Dist: pillow; extra == "image-utils"
Requires-Dist: opentelemetry-exporter-jaeger-thrift; extra == "jaeger"
Requires-Dist: python-json-logger (==0.1.7); extra == "logging"
Requires-Dist: safe-logger (>=1.2.1); extra == "logging"
Requires-Dist: starlette; extra == "monitoring"
Requires-Dist: opentelemetry-instrumentation-django; extra == "otel"
Requires-Dist: opentelemetry-instrumentation-psycopg2; extra == "otel"
Requires-Dist: boto3; extra == "s3-backup"
Requires-Dist: fan-tools[logging]; extra == "s3-backup"
Provides-Extra: aio-utils
Provides-Extra: doc-utils
Provides-Extra: gcloud-backup
Provides-Extra: gitlab-monitoring
Provides-Extra: image-utils
Provides-Extra: jaeger
Provides-Extra: logging
Provides-Extra: monitoring
Provides-Extra: otel
Provides-Extra: s3-backup
Description-Content-Type: text/markdown
License-File: LICENSE
[Description omitted; length: 17070 characters]

WHEEL

Wheel-Version: 1.0
Generator: hatchling 1.12.2
Root-Is-Purelib: true
Tag: py2-none-any
Tag: py3-none-any

RECORD

Path Digest Size
fan_tools/__init__.py sha256=InNcW39AQlbUx3PpoxuF6xnZKAe_54-QIQah4mmoE7Y 22
fan_tools/aio_utils.py sha256=uhAXEgx6EzAbWSZyVhM9MOb80KxYw1IO7inExQqZlbg 2769
fan_tools/const.py sha256=ksjz-3xD5BXYFCiOqzwWD2w0RyygP1732sBjlMk4PbU 509
fan_tools/container_utils.py sha256=V5bvrVMJ7nH2_IGe3KSIBl3BqI5MbnAkQi4dktqd9Ow 3646
fan_tools/file_utils.py sha256=KYkK7SFSHDFZsHjH-5TNAmX906Z1Qmbfqz8U6IKvAvw 1935
fan_tools/image_utils.py sha256=AMwOzCyR4ROYuu8lZnEgyJIdNeKn3lf8TNrcIDvcy4E 3806
fan_tools/metrics.py sha256=r_Ps2Caq-AGCf_OSmwQlbaARyOrcC1uv7cmNxtknbaA 1077
fan_tools/monitoring.py sha256=bO-mOfl22F4douWt25GgWY7v9C63azD2nl6g_zmkHfg 494
fan_tools/profiler.py sha256=NAQV0LLgSfAZRmY6j46E67mG21Dq99gdYChtN9cpEbU 1650
fan_tools/sentry.py sha256=x_DMhEOOmlKXEhkk9HjzkWeUzMvTs2pBme-ulNPZHE0 816
fan_tools/unix.py sha256=yVOfKutjWnbTjzdLGUonzhmeI7lPqv1_EPBjNlhPFJA 5984
fan_tools/aws/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
fan_tools/aws/lambda_cleanup.py sha256=Ph62yrU3asyMXlu1tBlnQMT7-epb_6u7guoZFBBC0dQ 4262
fan_tools/backup/__init__.py sha256=WFVZa2zT6uP_A2SFAzywxvjCesvTlBY1YyXv_6qIZTo 2763
fan_tools/backup/gcloud.py sha256=6mq825o8exd4PTS-Rzqu4JSyGHlKwzlyqRroOo_V-ro 813
fan_tools/backup/s3.py sha256=76c2lPt0AtrVH5vDzS19zHhAvWxQbxIeo23Uuyo4ZG0 1309
fan_tools/backup/utils.py sha256=Gf7BRQ8tUQl6D5PPWL-cRsIq62XUW4i8gSYqh22MZ6A 2841
fan_tools/django/__init__.py sha256=s9aEd8798eq1oJq-N6EtpjpXRgptMRi0Z4cZhhoa8mA 1066
fan_tools/django/fields.py sha256=ZEE4YUo8ZuAsV7oF6f9zi0dEWd0evTMfP7XeTfBLE0s 138
fan_tools/django/log_requests.py sha256=ce1o-gV9fOEQJ-DYr1a1h6a5l36j6ihe5lAuDeZti5s 1923
fan_tools/django/mail.py sha256=l9BRlEm7k54P2Zmxk5blLHdolOGAi8HQy7PHiWQslxg 1604
fan_tools/django/models.py sha256=yWhHR3MCfIS0exI-9yXJFcwtbad--J0zWh_N0WW1Ti4 750
fan_tools/django/url.py sha256=zjDC1SKSlF1AWNP24Os_uPPC96_CRWlJ1UhFwheCCto 142
fan_tools/django/contrib/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
fan_tools/django/contrib/postgres/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
fan_tools/django/contrib/postgres/indexes.py sha256=dvx8FDlhXahRzQQxBmVO3ALy9vy_3I7YdKR5kVAd_GE 2678
fan_tools/django/contrib/postgres/models.py sha256=oYX763IGxS8fI10TioEZYc4UAYstQM5VUHKrP9-HguE 1172
fan_tools/django/contrib/postgres/operations.py sha256=LdZilmDH7b8jIXxpJ8kRS12gyHsbn9sx2rb3EvpNJlY 157
fan_tools/django/contrib/postgres/fields/__init__.py sha256=PAQDPbkCm31scJXrusovm5Vh_TMYAiuo4pcp6-P2TgU 41
fan_tools/django/contrib/postgres/fields/ltree.py sha256=GGdPfRNjxBg6QHkTYiRNiGDHkzyriqmhIatJ2FWac1U 2177
fan_tools/django/core/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
fan_tools/django/core/management.py sha256=OnVBDdnB1xuvHiw1dKp93C2y1qYomYjlmFodjJ5gTSw 890
fan_tools/django/db/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
fan_tools/django/db/pgfields.py sha256=9uP8cfQZfVkgefic8J2gCY_FnOgJK_yDdUnTOolJmiM 526
fan_tools/django/db/utils.py sha256=DTSN66TUDl49ZbRZuD9c6nNK7TnG0goXBwlZAudJZ4M 311
fan_tools/doc_utils/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
fan_tools/doc_utils/fan_sphinx/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
fan_tools/doc_utils/fan_sphinx/dyn.py sha256=vaeKDp2SLJa5JyRRTvHpNDtjbDq7sfl6dX3XYUx2kwo 3218
fan_tools/doc_utils/fan_sphinx/dyn_json.py sha256=OmyoQJ_tlN3twTnA8aTLRPCnuFhYDHX0_2ytvkWbnyQ 5627
fan_tools/doc_utils/fan_sphinx/dyn_serializer.py sha256=c3hSZ7mhDeotomyEw_cpqkONIL9RxK85CPA8lIIbYFY 5585
fan_tools/doc_utils/fan_sphinx/http_log.py sha256=85EGiMx6eIXWMVDCiDDfcj0UAfUaaTJQrw6pYA3hEUo 1708
fan_tools/doc_utils/fan_sphinx/init.py sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs 1
fan_tools/doc_utils/fan_sphinx/parse_mixin.py sha256=2GGkQnQEh7EjULEQhCm3JoBLO8e7gyUJtjK8xqj1HsU 634
fan_tools/drf/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
fan_tools/drf/asserts.py sha256=gwLg5spjyMCHpTpHuBVnzk1DgqK3_3wY6CC8y09bhew 344
fan_tools/drf/filters.py sha256=CHEjy9-3J2-V1CHYNZ063AG6gDmQZt3-2rU3lNPT5FU 2787
fan_tools/drf/handlers.py sha256=im-S562i4FFCGI5l8rWTxESnTMMzn8KUECRuBq3y06Y 1100
fan_tools/drf/pagination.py sha256=pbGD7V3NeTS1p-7b322SCKihf6KuIZMcbIg9Qmsr4fY 787
fan_tools/drf/renderers.py sha256=7-U5pSpl5FkscfQZJOnttDRXOiI8S4zoOZZ9IhpsLyk 764
fan_tools/drf/serializers.py sha256=Dnp71-FQVx7bi5JXkP7d6TR9O_r2_EDdKHirroMr6Dk 1158
fan_tools/drf/validation.py sha256=w5kvP7PrzFfUEj_9SQDasuzgSPIoCvTB-8lqrYebHYk 3770
fan_tools/fan_logging/__init__.py sha256=E5PgQb28T7OIsyJNhwEwtlmvUc5mSDOTURSSAzg0c30 4107
fan_tools/fan_logging/handlers.py sha256=wMD4oIlSMiNCsAiwDllxfof8GE1Tu8yER_Z3iomJ_54 11054
fan_tools/generic/controller.py sha256=0aeW9FamAshGYK06lvJ0RzwQND_7BV8LejkIj2HJWXs 10895
fan_tools/generic/debug.py sha256=wcKfD92hfc90OnjJMleDTJ5mv34YyPXLytoAB-NjwRw 2457
fan_tools/mon_server/__init__.py sha256=H1D7oDYdxYtnb_DzaocMZmRW614jDOLvFYGJg8RmZzQ 2389
fan_tools/mon_server/certs.py sha256=dLylFgqeyPJuZOZeQU6MqnGA1SOoMXZNHmphapi0Aas 1427
fan_tools/mon_server/gitlab_runners.py sha256=hlIt0QHoSQQL6O7AKTeeGa37QfVlaw8dYbcU8m5lOi4 1285
fan_tools/mon_server/tests/__init__.py sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs 1
fan_tools/otel/__init__.py sha256=rMUQs7XZmhb7KIlyPVQHfQw1fmVJ6iWa6fWMhx9AexM 1843
fan_tools/otel/django.py sha256=o6pzRvpESPJLXfrGxPv_0isSk21-9bPhkFVZsalz1ms 1032
fan_tools/otel/jaeger_tracing.py sha256=6k_JX-03d9v-7kYc8PefHxYUsokZ1ZKqrWy5e1fEXRk 1047
fan_tools/otel/log.py sha256=w3tmxKdvytTsk-Hb6mDzT66T9ruPEe0Mgrztw4u-DMg 1578
fan_tools/python/__init__.py sha256=4j_RAr_14xN8Lpx7NgQ5iBE7LNWQOh0f7jLptMZuhjk 5025
fan_tools/python/decorators.py sha256=Ub0nmBHWAl25tH-2g3fTxBsIY1xmQZYLotZFLeBCl9Q 4896
fan_tools/scripts/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
fan_tools/scripts/fan_ci_script.py sha256=6qBcDU2weIpi_TefEH8ZvtkqykUyAXLfYzoTwZ2pnqs 2169
fan_tools/scripts/fan_env_yaml.py sha256=VqtbKC4bIGtzWt2RClFYrH39ZKqMYDsUhc99ujF2hag 1176
fan_tools/scripts/fan_tools_wait.py sha256=Tw8X4HSYjLu7oJpvXeWR0syC5JD2B45Rcl3LdP8pPgQ 633
fan_tools/scripts/run_filebeat.py sha256=ZfFsPM89PEZSYZkPiXFZ1jnsX-e3sIOGVKSKAX3aTDw 1464
fan_tools/testing/__init__.py sha256=BeLwP51xCUX9KNnVKklXE74G_5-XFdFnBk4L2jaa0jY 290
fan_tools/testing/meta.py sha256=fThMyqjaf09uoweIo1FbW_kQ9O0MrJLuGXh5dIrhlhA 1175
fan_tools/testing/drf/__init__.py sha256=eoxbEBDU6J3BfKJlPajUmY9lgJdHowfxHtgNB80FdHE 1452
fan_tools/testing/drf/base.py sha256=v_3tkUS7Sv6w9vEOl2NUB_MNJcp9yUsJ9duuCL3Hta4 7432
fan_tools/testing/drf/proxy.py sha256=GXG8VXpcMpl75oBOerV7CGSM_yvMwfdyDvhBYDm5ZyY 1669
fan_tools-4.4.0.dist-info/METADATA sha256=AP9yCum1gfvEJurN4min6OC4__41CRXTUfOdG4gw81Y 19516
fan_tools-4.4.0.dist-info/WHEEL sha256=3c4nLKpREKE5rhHFpZb1Uq66zgxvSvplqeRLQYroJ9M 105
fan_tools-4.4.0.dist-info/entry_points.txt sha256=kO7-C4yTksWeRpwBIXGPzoRjgmiQDw7ieuwvHdjQEtE 320
fan_tools-4.4.0.dist-info/licenses/LICENSE sha256=pEbyGaq-NmeFBES71fEbfpMYibTV2_O8B0_gDyXxEkw 1057
fan_tools-4.4.0.dist-info/RECORD

entry_points.txt

doc_serializer = fan_tools.doc_utils.fan_sphinx.dyn:main
fan_ci_script = fan_tools.scripts.fan_ci_script:main
fan_env_yaml = fan_tools.scripts.fan_env_yaml:main
fan_s3_backup = fan_tools.backup.s3:main
fan_wait = fan_tools.scripts.fan_tools_wait:main
run_filebeat = fan_tools.scripts.run_filebeat:main