[{"data":1,"prerenderedAt":345},["ShallowReactive",2],{"repo-pylint-dev-pylint-en":3,"i18n-pylint-dev-pylint-en":342},{"mirrorPool":4,"detail":13,"relatedProjects":243},[5,9],{"key":6,"label":7,"base":8,"type":6},"github","mirror.github","https:\u002F\u002Fgithub.com\u002F",{"key":10,"label":11,"base":12,"type":10},"auto-proxy","mirror.autoProxy","https:\u002F\u002Fgithub.xxlab.tech\u002F",{"owner":14,"repo":15,"repoId":16,"repoUrl":17,"starCount":18,"language":19,"description":20,"languages":21,"screenshots":25,"homepage":26,"pushedAt":27,"ownerAvatar":28,"ownerName":14,"ownerBio":29,"lastSyncTime":30,"lastReleaseTime":31,"tags":32,"license":40,"category":41,"subgroup":42,"releases":43},"pylint-dev","pylint",47671127,"https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint",5739,"Python","It's not just a linter that annoys you!",{"Python":22,"Mermaid":23,"HTML":24},99.3,0.6,0,[],"https:\u002F\u002Fpylint.readthedocs.io\u002Fen\u002Flatest\u002F","2026-10-20","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F121692054?v=4","An organization that focuses on pylint and its ecosystem","2026-10-20T10:24:49.053083+00:00","2026-10-11T07:41:22Z",[33,34,35,36,37,38,39],"closember","code-quality","hacktoberfest","linter","pep8","static-analysis","static-code-analysis","GPL-2.0","development","代码质量工具",[44,72,100,122,143,169,193,218],{"tag":45,"publishAt":31,"semVer":46,"prerelease":50,"assets":51},"v4.1.3",[47,48,49],4,1,3,false,[52,57,62,67],{"fileName":53,"sizeMb":54,"sha256":55,"downloadCount":47,"originUrl":56},"pylint-4.1.3-py3-none-any.whl",0.56,"a85357cae24f33ad8d86c8f3daaa92c600ae4012b54a57299cee76000e9364cf","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.3\u002Fpylint-4.1.3-py3-none-any.whl",{"fileName":58,"sizeMb":59,"sha256":60,"downloadCount":49,"originUrl":61},"pylint-4.1.3.tar.gz",1.67,"9928603068edfa0d1a3c167f174b099d4b97c3db75d32d0fcdd029770b4713a9","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.3\u002Fpylint-4.1.3.tar.gz",{"fileName":63,"sizeMb":64,"sha256":65,"downloadCount":49,"originUrl":66},"v4.1.3.tar.gz",1.6,"80ef0e2a2b2c553faf93d835d858451bac9a3b87b84fbb65de6b2635bbcd57f5","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.3\u002Fv4.1.3.tar.gz",{"fileName":68,"sizeMb":69,"sha256":70,"downloadCount":49,"originUrl":71},"v4.1.3.zip",3.08,"d04377765faf8057baf566a5e7b28bb4c16ebd0be2db00a68641b7261efe8e8d","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.3\u002Fv4.1.3.zip",{"tag":73,"publishAt":74,"semVer":75,"prerelease":50,"assets":77},"v4.1.2","2026-10-02T22:13:57Z",[47,48,76],2,[78,83,89,94],{"fileName":79,"sizeMb":54,"sha256":80,"downloadCount":81,"originUrl":82},"pylint-4.1.2-py3-none-any.whl","e34c8636edc7d60a2eaadca4ad6c18a49e202361987a26e81b2a17fa92be28e1",6,"https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.2\u002Fpylint-4.1.2-py3-none-any.whl",{"fileName":84,"sizeMb":85,"sha256":86,"downloadCount":87,"originUrl":88},"pylint-4.1.2.tar.gz",1.66,"235f13dc418c0041c649b42a5c35c99f2ffc6ca8b6a7574958eac5335906a68a",5,"https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.2\u002Fpylint-4.1.2.tar.gz",{"fileName":90,"sizeMb":91,"sha256":92,"downloadCount":47,"originUrl":93},"v4.1.2.tar.gz",1.59,"e158b119b717ebd50365b8f571f7f78fb555da5b168b49ce029ac77d7bd68e8b","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.2\u002Fv4.1.2.tar.gz",{"fileName":95,"sizeMb":96,"sha256":97,"downloadCount":98,"originUrl":99},"v4.1.2.zip",3.05,"23aa58761512fe8a966d9297482a9f2698b6faca769b66440298308ff6c26ded",7,"https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.2\u002Fv4.1.2.zip",{"tag":101,"publishAt":102,"semVer":103,"prerelease":50,"assets":104},"v4.1.1","2026-09-29T21:09:11Z",[47,48,48],[105,109,114,118],{"fileName":106,"sizeMb":54,"sha256":107,"downloadCount":81,"originUrl":108},"pylint-4.1.1-py3-none-any.whl","84901850af1c67240afbe7b0ef696b7ab391ed4838e4ffc48511661026ebc565","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.1\u002Fpylint-4.1.1-py3-none-any.whl",{"fileName":110,"sizeMb":85,"sha256":111,"downloadCount":112,"originUrl":113},"pylint-4.1.1.tar.gz","47538540de0a563ff0b6cb781330944b0c9c1a130986ad1c183116ed37ec4538",11,"https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.1\u002Fpylint-4.1.1.tar.gz",{"fileName":115,"sizeMb":91,"sha256":116,"downloadCount":47,"originUrl":117},"v4.1.1.tar.gz","ba0eecd67523e801eeb2f33dcc56e2ca3adadda0728fbee1957f2826a5f0a939","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.1\u002Fv4.1.1.tar.gz",{"fileName":119,"sizeMb":96,"sha256":120,"downloadCount":47,"originUrl":121},"v4.1.1.zip","636edf5db1f50013e9154e5e1644cfdb10460a9d6b5a6427ce0514c9d2b66319","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.1\u002Fv4.1.1.zip",{"tag":123,"publishAt":124,"semVer":125,"prerelease":50,"assets":126},"v4.1.0","2026-09-29T20:00:00Z",[47,48,24],[127,131,135,139],{"fileName":128,"sizeMb":54,"sha256":129,"downloadCount":47,"originUrl":130},"pylint-4.1.0-py3-none-any.whl","74ab6cd63a1022ad187bb665973c788f8db88cf76c7fe2de616a6a6962b15fa1","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.0\u002Fpylint-4.1.0-py3-none-any.whl",{"fileName":132,"sizeMb":85,"sha256":133,"downloadCount":81,"originUrl":134},"pylint-4.1.0.tar.gz","ff14f4cf5401b8d2345350925a3c3ee23ddc6d4201a8ba510682a6dc6794be64","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.0\u002Fpylint-4.1.0.tar.gz",{"fileName":136,"sizeMb":91,"sha256":137,"downloadCount":76,"originUrl":138},"v4.1.0.tar.gz","05c4c1f38a0ff699556d02a38b40c3748f84866ebf22b27bb97f40a63de8c207","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.0\u002Fv4.1.0.tar.gz",{"fileName":140,"sizeMb":96,"sha256":141,"downloadCount":49,"originUrl":142},"v4.1.0.zip","ee12aa35a991a7ead2fddad7ae699a88670f3c2dd8fbb74390a5a0c75e3f4a38","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.1.0\u002Fv4.1.0.zip",{"tag":144,"publishAt":145,"semVer":146,"prerelease":50,"assets":148},"v4.0.10","2026-09-29T15:47:29Z",[47,24,147],10,[149,154,159,164],{"fileName":150,"sizeMb":151,"sha256":152,"downloadCount":47,"originUrl":153},"pylint-4.0.10-py3-none-any.whl",0.52,"c259421f734e6262407b6a421a26f9513b13ac2c5ac2c160775c1658afb57fea","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.10\u002Fpylint-4.0.10-py3-none-any.whl",{"fileName":155,"sizeMb":156,"sha256":157,"downloadCount":87,"originUrl":158},"pylint-4.0.10.tar.gz",1.53,"bf19280b10f2185bfbc898a28ac0b85c958af2e6d684a94984e12d3ac975d9f4","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.10\u002Fpylint-4.0.10.tar.gz",{"fileName":160,"sizeMb":161,"sha256":162,"downloadCount":49,"originUrl":163},"v4.0.10.tar.gz",1.46,"5b5c5c555ab40280948d42ecc480b555e2d2b7d53d1c69c8f6ab23527755f404","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.10\u002Fv4.0.10.tar.gz",{"fileName":165,"sizeMb":166,"sha256":167,"downloadCount":47,"originUrl":168},"v4.0.10.zip",2.79,"7c3e0cb92f0e1794fc9a6caf1db9b97f98efaf785566c12232859e815bda84de","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.10\u002Fv4.0.10.zip",{"tag":170,"publishAt":171,"semVer":172,"prerelease":50,"assets":174},"v4.0.9","2026-09-23T15:25:58Z",[47,24,173],9,[175,179,184,188],{"fileName":176,"sizeMb":151,"sha256":177,"downloadCount":173,"originUrl":178},"pylint-4.0.9-py3-none-any.whl","c4ba5bbaf1e70ecf05f08cd7d6091ea04824b79a2b2d9f5b10dc25fc34cb1124","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.9\u002Fpylint-4.0.9-py3-none-any.whl",{"fileName":180,"sizeMb":156,"sha256":181,"downloadCount":182,"originUrl":183},"pylint-4.0.9.tar.gz","6f1305780229ae720e89b8aff2b3ff857cbb268fbab98c8b586960267667ad34",12,"https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.9\u002Fpylint-4.0.9.tar.gz",{"fileName":185,"sizeMb":161,"sha256":186,"downloadCount":47,"originUrl":187},"v4.0.9.tar.gz","bfdb87a67df29e72208485f33dab20df9f67d6d5843240f5d759179f20fdff60","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.9\u002Fv4.0.9.tar.gz",{"fileName":189,"sizeMb":190,"sha256":191,"downloadCount":47,"originUrl":192},"v4.0.9.zip",2.78,"5fd7217dd45b86156c8a976e515241d1d564f6392ce28557d696da5ed71470df","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.9\u002Fv4.0.9.zip",{"tag":194,"publishAt":195,"semVer":196,"prerelease":50,"assets":198},"v4.0.8","2026-08-29T12:21:15Z",[47,24,197],8,[199,204,208,212],{"fileName":200,"sizeMb":151,"sha256":201,"downloadCount":202,"originUrl":203},"pylint-4.0.8-py3-none-any.whl","3341c08c0aabaa4adc71516de0969f3ba5c692b56c75af4dcb4d242823fbe363",15,"https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.8\u002Fpylint-4.0.8-py3-none-any.whl",{"fileName":205,"sizeMb":156,"sha256":206,"downloadCount":202,"originUrl":207},"pylint-4.0.8.tar.gz","1c1b2128bde5ff5e966801413080b6384d42a5782718d528c906dbb6beab94ed","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.8\u002Fpylint-4.0.8.tar.gz",{"fileName":209,"sizeMb":161,"sha256":210,"downloadCount":98,"originUrl":211},"v4.0.8.tar.gz","f086a62970bcfb4e3fb81c84d956588620a14f76d7d8a8b647ee6131692b9a41","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.8\u002Fv4.0.8.tar.gz",{"fileName":213,"sizeMb":214,"sha256":215,"downloadCount":216,"originUrl":217},"v4.0.8.zip",2.77,"2a31af5951f38ec1d70fc2efe16755dae5fbb872056b0c384ed1f7d72455aa35",13,"https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.8\u002Fv4.0.8.zip",{"tag":219,"publishAt":220,"semVer":221,"prerelease":50,"assets":222},"v4.0.7","2026-08-09T19:12:32Z",[47,24,98],[223,229,234,239],{"fileName":224,"sizeMb":225,"sha256":226,"downloadCount":227,"originUrl":228},"pylint-4.0.7-py3-none-any.whl",0.51,"be4a3111557a614411ed1fc89347ce4a8e1013a59e1f33d11485227a02e3304d",14,"https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.7\u002Fpylint-4.0.7-py3-none-any.whl",{"fileName":230,"sizeMb":231,"sha256":232,"downloadCount":182,"originUrl":233},"pylint-4.0.7.tar.gz",1.52,"9b2d1d15791c84b77a4fe2aafe8f0d9570717e2dea06d53b19c105cf60275a52","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.7\u002Fpylint-4.0.7.tar.gz",{"fileName":235,"sizeMb":236,"sha256":237,"downloadCount":81,"originUrl":238},"v4.0.7.tar.gz",1.45,"873c24916da67ed1150f93f288fb68e770002bf13be79e86eb9e83bae0008af7","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.7\u002Fv4.0.7.tar.gz",{"fileName":240,"sizeMb":214,"sha256":241,"downloadCount":197,"originUrl":242},"v4.0.7.zip","df1a032e3c4121a8c344529e4de7c70558495f0082f87ce0edb1e174d72be39a","https:\u002F\u002Fgithub.com\u002Fpylint-dev\u002Fpylint\u002Freleases\u002Fdownload\u002Fv4.0.7\u002Fv4.0.7.zip",[244,267,284,299,314,330],{"owner":245,"repo":246,"repoId":247,"category":41,"subgroup":42,"language":248,"tags":249,"starCount":256,"ownerUid":257,"latestTag":258,"platforms":259,"lastReleaseTime":264,"downloadCount":265,"description":266},"astral-sh","ruff",523043277,"Rust",[36,37,250,251,246,252,253,38,39,254,255],"python","python3","rust","rustpython","style-guide","styleguide",50317,115962839,"0.17.3",[260,261,262,263],"windows","mac","linux","other","2026-10-27T00:35:07Z",19882,"Ruff is an extremely fast Python linter and code formatter written in Rust, replacing Flake8, isort, Black, and more with a single tool, ideal for large projects and CI.",{"owner":268,"repo":269,"repoId":270,"category":41,"subgroup":42,"language":271,"tags":272,"starCount":277,"ownerUid":278,"latestTag":279,"platforms":280,"lastReleaseTime":281,"downloadCount":282,"description":283},"koalaman","shellcheck",6731432,"Haskell",[273,274,275,36,276,38],"bash","developer-tools","haskell","shell",40127,2818758,"v0.11.0",[261,262,263],"2025-08-04T00:27:19Z",13712912,"A GPLv3 static analysis tool for shell scripts that provides warnings and suggestions for bash\u002Fsh scripts, helping identify syntax issues, semantic problems, and potential pitfalls.",{"owner":285,"repo":286,"repoId":287,"category":41,"subgroup":42,"language":288,"tags":289,"starCount":292,"ownerUid":293,"latestTag":294,"platforms":295,"lastReleaseTime":296,"downloadCount":297,"description":298},"AlDanial","cloc",42029482,"Perl",[286,290,291],"count-lines","programming-language",23574,1459933,"v2.10",[260],"2026-07-04T19:26:14Z",18787,"Counts blank lines, comment lines, and physical lines of source code in many programming languages.",{"owner":300,"repo":301,"repoId":302,"category":41,"subgroup":42,"language":303,"tags":304,"starCount":307,"ownerUid":308,"latestTag":309,"platforms":310,"lastReleaseTime":311,"downloadCount":312,"description":313},"realm","SwiftLint",35732214,"Swift",[34,35,36,305,38,306],"linting","swift",19748,7575099,"0.65.1",[260,261,262,263],"2026-08-21T20:29:47Z",519979,"A tool to enforce Swift style and conventions, based on SwiftSyntax.",{"owner":315,"repo":316,"repoId":317,"category":41,"subgroup":42,"language":318,"tags":319,"starCount":323,"ownerUid":324,"latestTag":325,"platforms":326,"lastReleaseTime":327,"downloadCount":328,"description":329},"golangci","golangci-lint",132145189,"Go",[320,321,322,316,36],"ci","go","golang",19443,35628013,"v2.15.0",[260,261,262,263],"2026-10-16T11:33:37Z",780,"A fast Go linter runner that runs linters in parallel, uses caching, supports YAML configuration, integrates with major IDEs, and includes over a hundred linters.",{"owner":331,"repo":332,"repoId":333,"category":41,"subgroup":42,"language":19,"tags":334,"starCount":335,"ownerUid":336,"latestTag":337,"platforms":338,"lastReleaseTime":339,"downloadCount":340,"description":341},"microsoft","pyright",175129788,[],15689,6154722,"1.1.414",[263],"2026-09-09T20:40:05Z",1107,"Pyright is Microsoft's full-featured static type checker for Python, designed for high performance on large codebases, available as a command-line tool and VS Code extension.",{"description":343,"readmeHtml":344},"Pylint is a static code analyzer for Python that checks errors, enforces coding standards, finds code smells, and suggests refactoring without running the code.","\u003Ch2 id=\"project-overview\">Project Overview\u003C\u002Fh2>\u003Cp>Pylint is a static code analyzer for Python that analyzes source without executing it, checking for errors, enforcing coding standards, finding code smells, and suggesting refactoring. Built on its internal code representation astroid, it infers actual values and finds more issues even in code without complete type annotations. Pylint is highly configurable, supports plugins for custom checks, and ships with pyreverse for class diagrams and symilar for duplicate code detection.\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Item\u003C\u002Fth>\n\u003Cth>Value\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>Language\u003C\u002Ftd>\n\u003Ctd>Python\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Runtime\u003C\u002Ftd>\n\u003Ctd>Python 3.11+\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Type\u003C\u002Ftd>\n\u003Ctd>Static code analyzer\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>License\u003C\u002Ftd>\n\u003Ctd>GPL-2.0\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Cblockquote>\n\u003Cp>A deep checker that finds errors and smells without running your code.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch2 id=\"key-features\">Key Features\u003C\u002Fh2>\u003Cul>\n\u003Cli>\u003Cstrong>Error checking\u003C\u002Fstrong>: finds potential errors without running the code\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Standards enforcement\u003C\u002Fstrong>: enforces team coding standards\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Smell detection\u003C\u002Fstrong>: identifies code smells like duplication and long functions\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Type inference\u003C\u002Fstrong>: infers actual values via astroid even without full type annotations\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Refactoring advice\u003C\u002Fstrong>: offers actionable improvement suggestions\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Plugin ecosystem\u003C\u002Fstrong>: supports custom plugins plus ready-made ones like pylint-django\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Bundled tools\u003C\u002Fstrong>: includes pyreverse for diagrams and symilar for duplicate code\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Highly configurable\u003C\u002Fstrong>: individual checks can be enabled or disabled\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"target-audience\">Target Audience\u003C\u002Fh2>\u003Cul>\n\u003Cli>Python developers\u003C\u002Fli>\n\u003Cli>Legacy project maintainers\u003C\u002Fli>\n\u003Cli>Code quality owners\u003C\u002Fli>\n\u003Cli>Open-source maintainers\u003C\u002Fli>\n\u003Cli>Teams needing deep static analysis\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"quick-start\">Quick Start\u003C\u002Fh2>\u003Col>\n\u003Cli>Install Pylint\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cdiv class=\"code-block\">\u003Cpre>\u003Ccode class=\"hljs language-bash\">pip install pylint\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\u003Col start=\"2\">\n\u003Cli>Check a file or project\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cdiv class=\"code-block\">\u003Cpre>\u003Ccode class=\"hljs language-bash\">pylint mymodule.py\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\u003Col start=\"3\">\n\u003Cli>For legacy projects start with errors only\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cdiv class=\"code-block\">\u003Cpre>\u003Ccode class=\"hljs language-bash\">pylint --errors-only mymodule.py\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\u003Col start=\"4\">\n\u003Cli>Gradually enable more check categories in configuration as priorities evolve\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch2 id=\"core-advantages\">Core Advantages\u003C\u002Fh2>\u003Cul>\n\u003Cli>\u003Cstrong>Strong inference\u003C\u002Fstrong>: finds deep issues without requiring complete type annotations\u003C\u002Fli>\n\u003Cli>\u003Cstrong>More thorough\u003C\u002Fstrong>: covers more checks than most linters\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Extensible\u003C\u002Fstrong>: plugin mechanism supports custom checks for internal libraries\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"system-requirements\">System Requirements\u003C\u002Fh2>\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Item\u003C\u002Fth>\n\u003Cth>Requirement\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>OS\u003C\u002Ftd>\n\u003Ctd>Linux, macOS, Windows\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Runtime\u003C\u002Ftd>\n\u003Ctd>Python 3.11 or later\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Spell checking\u003C\u002Ftd>\n\u003Ctd>needs pylint[spelling] and the enchant library\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Ch2 id=\"notes\">Notes\u003C\u002Fh2>\u003Cul>\n\u003Cli>\u003Cstrong>Gradual adoption\u003C\u002Fstrong>: start legacy projects with \u003Ccode>--errors-only\u003C\u002Fcode>, then widen the checks\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Speed tradeoff\u003C\u002Fstrong>: deep inference is slower; complement with fast tools like ruff\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Third-party libs\u003C\u002Fstrong>: some libraries need matching pylint plugins for full support\u003C\u002Fli>\n\u003C\u002Ful>\n",1793229079571]