indexdigest

View on PyPIReverse Dependencies (0)

1.6.0 indexdigest-1.6.0-py3-none-any.whl

Wheel Details

Project: indexdigest
Version: 1.6.0
Filename: indexdigest-1.6.0-py3-none-any.whl
Download: [link]
Size: 73556
MD5: 6db4a0aa24955d31c33e399c05bd5366
SHA256: 1a996512ae34ccc6d28f9d3e244982493191392090fb6d864330767e8dabc64d
Uploaded: 2023-09-13 11:27:15 +0000

dist-info

METADATA

Metadata-Version: 2.1
Name: indexdigest
Version: 1.6.0
Summary: Analyses your database queries and schema and suggests indices and schema improvements
Author: Maciej Brencz
Author-Email: maciej.brencz[at]gmail.com
Home-Page: https://github.com/macbre/index-digest
License: MIT
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: Topic :: Database
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Requires-Python: >=3.8
Requires-Dist: docopt (==0.6.2)
Requires-Dist: PyYAML (==6.0.1)
Requires-Dist: mysqlclient (==2.2.0)
Requires-Dist: sql-metadata (==2.8.0)
Requires-Dist: termcolor (==2.3.0)
Requires-Dist: yamlordereddictloader (==0.4.0)
Requires-Dist: coverage (==6.5.0); extra == "dev"
Requires-Dist: coveralls (==3.3.1); extra == "dev"
Requires-Dist: pylint (==2.17.5); extra == "dev"
Requires-Dist: pytest (==7.4.2); extra == "dev"
Requires-Dist: pytest-cov (==4.1.0); extra == "dev"
Requires-Dist: twine (==4.0.2); extra == "dev"
Provides-Extra: dev
Description-Content-Type: text/markdown
License-File: LICENSE
[Description omitted; length: 24494 characters]

WHEEL

Wheel-Version: 1.0
Generator: bdist_wheel (0.41.2)
Root-Is-Purelib: true
Tag: py3-none-any

RECORD

Path Digest Size
indexdigest/__init__.py sha256=t9SyL2FVwh5hYHNTvprISYSVMandnVG7Wx9b4Ve6zmA 53
indexdigest/database.py sha256=ENyGOtll4wi61Hgb0y0UeeZUazE0kA0b5EGc45F6DUI 11355
indexdigest/schema.py sha256=A-1C6EXVdjJTjtBCbmZRiWLinbqyLSvZZT-lZnvukhM 5335
indexdigest/utils.py sha256=Oslo2DuNALupLDejJZjWTc_7HqlZaRhwWUl-HOTe2xA 3136
indexdigest/cli/__init__.py sha256=S4XDd0IJ1ZDrjA1VR_R5zUSZFADSORfq-FJLrS9aBzw 298
indexdigest/cli/add_linter.py sha256=SJpb8GYUTZbWR5oiGM1WKr9VgKsJTW33OCvY-DAwmP8 3938
indexdigest/cli/script.py sha256=ky0NGtSCvCDQIQP0Lf8BV1i7aA6_ixGF8iqvIXwrID4 8414
indexdigest/formatters/__init__.py sha256=xnp3DezX0ribrOgquw2wBf_piBaur8epfiE14A4RPkk 163
indexdigest/formatters/plain.py sha256=b4GrSQ4rC8zQtwSVOi1jbjFJP-KILSthQNCqTHtV1YI 1944
indexdigest/formatters/syslog.py sha256=M4VxVql-0mKKYHhnfaMC4Ch1OUWsR8pmh0mFdSoNG6Q 1420
indexdigest/formatters/yaml.py sha256=e37SemoDTEYEWUd9qMztLL8_3k_2Lw5JTK9G9kLTMMM 1301
indexdigest/linters/__init__.py sha256=v8m3ZpD2EoNHboebIp-KcZMT7bMCZI_jaR2Hgbz8NQA 1608
indexdigest/linters/linter_0002_not_used_indices.py sha256=UQFlO0tGlgFF7RnjRAcRQYIAhdEfqU0wza1wm1DN2vo 1293
indexdigest/linters/linter_0004_redundant_indices.py sha256=BU1gXMvPXzZFMrXUaR6VESxQQgxe4sA8cUpx-U4Iu1Y 2015
indexdigest/linters/linter_0006_not_used_columns_and_tables.py sha256=I3ET4CjAMO3gNoEtR6ncXTxaGTEYPW3bgnigLIyQdTs 3664
indexdigest/linters/linter_0019_queries_not_using_indices.py sha256=n2BpXdU5BYf4QpulI3WJJyFHaIm0GlydXm-dkDhgvEw 1730
indexdigest/linters/linter_0020_filesort_temporary_table.py sha256=MOUQOVyE95BO0QII0AFZCGWT7nYU5g5Imds8qgvas0M 2962
indexdigest/linters/linter_0026_full_table_scan.py sha256=nkA6Lhs7OI7-eqb4KY77f-sxDxljm2BShxwK61xyb8E 1550
indexdigest/linters/linter_0027_selects_with_like.py sha256=PBR2mfJ9i8CLT4-ABlKEczunm0rkcm82xLVDeAzj5Ow 1469
indexdigest/linters/linter_0028_data_not_updated_recently.py sha256=3n_dEzRiJ3HYtK4s-eRmeUFa-3sMT8XalFUCOmT_xnY 2088
indexdigest/linters/linter_0028_data_too_old.py sha256=ZDJKegHiXU0kKL55WXy6D2d5il6BnJZQEsNo1Wu3giY 3207
indexdigest/linters/linter_0031_low_cardinality_index.py sha256=KCPfK-TzBCzBpA3P4fwg-8xeuHwX80cS-0Loyt8POD0 3006
indexdigest/linters/linter_0032_utf_latin_columns.py sha256=xxNC8sSSnm8p75x3lF6TxwFBUjcc0zGfKPRz8_2rRF4 1670
indexdigest/linters/linter_0034_missing_primary_index.py sha256=2VT7V-Q0pBldweRzPc-IYs6Id71dlF_wuyrP23e_PBA 1093
indexdigest/linters/linter_0036_use_innodb.py sha256=sSu4nxNx7HmJqOVLVnjey1y7P_hVAmvWBUpgVauIJmc 970
indexdigest/linters/linter_0070_insert_ignore.py sha256=bD4M6ARDTd858Uii2_Dvw6JBJY1kUTtuu4GMKVmtDf8 1936
indexdigest/linters/linter_0074_single_column.py sha256=Fchjf8zoa5dbJXozOM5aUsowOk7h1mJOGFd71yPZbXQ 656
indexdigest/linters/linter_0075_test_tables.py sha256=AgB0QuWPrHcBHrfh7PJtOEVuh-Y8rlN17ZIpfcNlkj4 875
indexdigest/linters/linter_0089_empty_tables.py sha256=7b_92efQWLhmrn7MMvrzGLDaFa-Ov05fi38lXQcqzkY 818
indexdigest/linters/linter_0092_select_star.py sha256=7vgQp2NxHAjlHZylysZqsRS6B56CziXmSSL-3G68Kvk 1456
indexdigest/linters/linter_0093_having_clause.py sha256=MqJL_j9wW1DvnJ85EjGTbGCSNR_2ju-QuJU4utoMMbw 1246
indexdigest/linters/linter_0094_generic_primary_key.py sha256=IdZl39CexdUJR-4P4bggeEh8nZzLRHqR8uG_wKYLTXk 1109
indexdigest/linters/linter_0118_high_offset_selects.py sha256=UalpXPcGQKod2H1GultBAaXg-g_3EOZOSfo9DdXFb04 1211
indexdigest/linters/linter_0164_empty_database.py sha256=OFpfDRl6woMJNje1vb10X32KB5CbLP5PZt8kLeNgAbY 1083
indexdigest/test/__init__.py sha256=dZC1NeKTUIn_QKV0zd4QRKuKFYra_v_U3YwTFBphZ0w 4133
indexdigest/test/test_0004_redundant_indices_core.py sha256=gPpOAaZP4DwSEq6EiUb2cZBOmdHGfujS31ZP1TjYXic 1196
indexdigest/test/test_0089_handle_sql_errors.py sha256=567t-jhxSdckiBLDMvvQH0t_LGkfFZ_5je-n_4ROEo4 1052
indexdigest/test/test_0107_schema_partitions.py sha256=g3BJHz77KmCUQxmuYNXrZ6RXBHxdaUO860zoYOZ8Zog 357
indexdigest/test/test_schema.py sha256=w4qaSj-LHfxbQQCj4r0DB0KB4N-mrdGR3DNHXHzMSaQ 301
indexdigest/test/cli/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
indexdigest/test/cli/test_script.py sha256=G0zDxXXu_gIQYR2AS_WspcFNs1GwpTzbpc7-WEXM3e4 3793
indexdigest/test/core/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
indexdigest/test/core/test_columns.py sha256=4_ngDo6a53nhVbYZ6BhN8HG5bcxRh04bysF26wlHXQU 2190
indexdigest/test/core/test_database.py sha256=mDL8T_QPpeI16sa5SsS52kZWRxrfozgvgqx79Ok7Eik 12012
indexdigest/test/core/test_indices.py sha256=XFMYtP1B1r6uR8wfhX1VtyEhhYWlj_iOrwpSmkT3xI4 2893
indexdigest/test/core/test_query.py sha256=LEMYZTmygdbhz4DE0WOEjtUou_gc7FMaryj47uvhQi0 4240
indexdigest/test/core/test_utils.py sha256=JGAmKEsowF8qvbjCKrOwakq3VV46aRTsibnUmUIVlEE 1838
indexdigest/test/formatters/__init__.py sha256=_X1xvB6vME64IlGhb1CzUvFCqqIkiUabBMtJ_gn1NVU 1168
indexdigest/test/formatters/test_plain.py sha256=cI1vLJcKLkYkVk6qidTDFvRRm7Pb8kTsbxzt6TZm4Vc 1313
indexdigest/test/formatters/test_syslog.py sha256=RLgi7hsu-208lElJDWNajsMfiVx_lyZD1P4-DZ_p0Ow 1569
indexdigest/test/formatters/test_yaml.py sha256=BvibZa3nnq8K-F2edzSqywMfv7-EnM27DV3_cTQ4SfE 1138
indexdigest/test/linters/__init__.py sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU 0
indexdigest/test/linters/test_0002_not_used_indices.py sha256=R5LITAOD8FC8sFfzCgh9uZ5_4-Cp_f9cScOZVf7l9vg 853
indexdigest/test/linters/test_0004_redundant_indices.py sha256=9eHI6RiOniRfk8b2fsWvw8Bcr8uJYG_5jdodRkZkQeg 2193
indexdigest/test/linters/test_0006_not_used_columns_and_tables.py sha256=5eUhDlqUAQSw4rGTWuN7gNDEObKZSu4QVo6EhS0C_80 3679
indexdigest/test/linters/test_0019_queries_not_using_indices.py sha256=PDq1wOEt0b3BB2NW7YSRKtYu8T7WVE5U9fzHWd98O38 1997
indexdigest/test/linters/test_0020_big_table.py sha256=gDsWDd9jYMwUcyI_wi6KKI41f_xe_b2gkzjeoDi75GI 2611
indexdigest/test/linters/test_0026_full_table_scan.py sha256=2WdmeaJ84NOM-Rer4_MjL2bU0NYRpQaE4szp67wJB0k 1089
indexdigest/test/linters/test_0027_selects_with_like.py sha256=TfVzqFQVUShjgoWNOlqhJBXJm12chSMHSuKjMhlws9U 2068
indexdigest/test/linters/test_0028_data_not_updated_recently.py sha256=q7iJSrYxIU_AqX7_FLwFGU-pfev7RrKW-01ESb_A3EQ 1948
indexdigest/test/linters/test_0028_data_too_old.py sha256=aPyqXWktQsP43JbLop8-uuNHD7AyxB2V-oCm8_nEGdU 1747
indexdigest/test/linters/test_0031_low_cardinality_index.py sha256=jh0IzDidxUuCCMcJtpm0-xW3nJl-D0MQThEtcqF1ofk 1584
indexdigest/test/linters/test_0032_utf_latin_columns.py sha256=sIcg1C2__d1gHRK64GSFvmYX6NW5zIR3BJLkz4TY2rQ 2860
indexdigest/test/linters/test_0034_missing_primary_index.py sha256=3ii0Titzt6dB8DldVqu_LoHLom6HihKAxN2GpJxS3KU 1050
indexdigest/test/linters/test_0036_use_innodb.py sha256=F_lPym1CPQhl3d0s-gDw343BfOIOOQKrKnbcq0qgIFM 730
indexdigest/test/linters/test_0070_insert_ignore.py sha256=DFb25-PbFmsYMewtinDyvlYBkKYqJnXWpskW4EAFHkc 2546
indexdigest/test/linters/test_0074_single_column.py sha256=A24VidHcYAqxf7KGyHK49qEaniIhOcZBeagMixQRd0k 659
indexdigest/test/linters/test_0075_test_tables.py sha256=fTMtI_2v_KqLDr_7UpegkpWp7ps0M8xXT262mJvH6KM 1560
indexdigest/test/linters/test_0089_empty_tables.py sha256=C5fYPeFGlB09_7YIQJWiAqEU7eWK8cG14gMF0EfotxA 828
indexdigest/test/linters/test_0092_select_star.py sha256=nuL8z3qVwyWsJIQ9F6Aj57GOPvJoTMnFfAU_KG1FkCs 1853
indexdigest/test/linters/test_0093_having_clause.py sha256=3I1C2TTp27W9KeWq9Jd8SZt7HFD1FcyCln3jKginW4g 2121
indexdigest/test/linters/test_0094_generic_primary_key.py sha256=gPfiSn7FM8psZWrixQwx8uq4BJGVA-KHtMdJyyErrWE 779
indexdigest/test/linters/test_0118_high_offset_selects.py sha256=GvOV7fI8ljzUuJmfowZvyPJfe6oPY7KsLet7xMslOco 1279
indexdigest/test/linters/test_0164_empty_database.py sha256=rmFJMxh91WrrDFVGGfNeNTMa6W7IWRrK3Y55-2TbW14 584
indexdigest-1.6.0.dist-info/LICENSE sha256=pMoyurMnb2E3MZw_0Xyg81uBmgbkH7NPAldQ9-niBis 1070
indexdigest-1.6.0.dist-info/METADATA sha256=B7CH7pFIFCABLOGLlczlb-wMQ4R46M3NTbj7d2G5Lys 25907
indexdigest-1.6.0.dist-info/WHEEL sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A 92
indexdigest-1.6.0.dist-info/entry_points.txt sha256=TK6aUORbqLRfvi7B5-HkQA-wYMrcZO-LXxr4DOSlKjA 106
indexdigest-1.6.0.dist-info/top_level.txt sha256=W5oLSbOBCoYb2QyrvaXRyPppBTHI5zp8-wGFikd0iZ8 12
indexdigest-1.6.0.dist-info/RECORD

top_level.txt

indexdigest

entry_points.txt

add_linter = indexdigest.cli.add_linter:main
index_digest = indexdigest.cli.script:main