diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3264a24..5627504 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,7 +8,7 @@ on: jobs: pylint: - uses: coatl-dev/workflows/.github/workflows/pylint.yml@92e51b14907b5aac1a8af1fcd9c2a1a5369dc47a # v7.0.32 + uses: coatl-dev/workflows/.github/workflows/pylint.yml@d7cf5f9059f9a5fa365b8c9e06ff63f5d968ddb0 # v7.1.0 with: path: src diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index e711f9d..cd559ab 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -17,12 +17,12 @@ jobs: uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Upload package to PyPI - uses: coatl-dev/actions/pypi-upload@283f0790110a211f3255faeda31417d81823fd02 # v7.1.1 + uses: coatl-dev/actions/pypi-upload@499c77f2bc6f909d372849058517ca2e39ce16d4 # v7.1.3 with: password: ${{ secrets.PYPI_API_TOKEN_JAVA_API_PKG }} - name: Upload stubs to PyPI - uses: coatl-dev/actions/pypi-upload@283f0790110a211f3255faeda31417d81823fd02 # v7.1.1 + uses: coatl-dev/actions/pypi-upload@499c77f2bc6f909d372849058517ca2e39ce16d4 # v7.1.3 with: python-version: '3.12' password: ${{ secrets.PYPI_API_TOKEN_JAVA_API_STUBS }} diff --git a/.github/workflows/tox.yml b/.github/workflows/tox.yml index fd4736d..fe59e43 100644 --- a/.github/workflows/tox.yml +++ b/.github/workflows/tox.yml @@ -5,10 +5,10 @@ on: jobs: tox-package: - uses: coatl-dev/workflows/.github/workflows/tox-docker.yml@92e51b14907b5aac1a8af1fcd9c2a1a5369dc47a # v7.0.32 + uses: coatl-dev/workflows/.github/workflows/tox-docker.yml@d7cf5f9059f9a5fa365b8c9e06ff63f5d968ddb0 # v7.1.0 tox-stubs: - uses: coatl-dev/workflows/.github/workflows/tox.yml@92e51b14907b5aac1a8af1fcd9c2a1a5369dc47a # v7.0.32 + uses: coatl-dev/workflows/.github/workflows/tox.yml@d7cf5f9059f9a5fa365b8c9e06ff63f5d968ddb0 # v7.1.0 with: python-versions: | 3.9 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index f9938de..28ee172 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -11,7 +11,7 @@ repos: - id: sort-all files: ^src/ - repo: https://github.com/bwhmather/ssort - rev: 0.17.0 + rev: 0.19.0 hooks: - id: ssort files: ^src/ @@ -23,8 +23,8 @@ repos: rev: 1.5.0 hooks: - id: unimport - files: ^src/ language_version: python3.12 + files: ^src/ - repo: https://github.com/PyCQA/isort rev: 10.0.0b1 hooks: @@ -42,16 +42,15 @@ repos: - id: docformatter files: ^src/ args: [--config, tox.ini] - language_version: python3.12 - repo: https://github.com/coatl-dev/flake8 rev: 5.0.4 hooks: - id: flake8 name: flake8-package + language_version: python3.12 files: ^src/ args: [--config, tox.ini] additional_dependencies: [pydoclint] - language_version: python3.12 - repo: https://github.com/PyCQA/flake8 rev: 7.4.1 hooks: diff --git a/.pylintrc b/.pylintrc index eef8ef4..dcef508 100644 --- a/.pylintrc +++ b/.pylintrc @@ -41,6 +41,13 @@ fail-on= # Specify a score threshold under which the program will exit with error. fail-under=10 +# The files to lint. The flag can also be omitted as pylint will try to lint +# any file passed as argument. This can be used to set files to a directory in +# a configuration file and invoke pylint by only typing pylint on the command +# line. Any file passed as argument will overwrite any file set in the +# configuration file. +files= + # Interpret the stdin as a python script, whose filename needs to be passed as # the module_or_package argument. #from-stdin= @@ -93,7 +100,7 @@ prefer-stubs=no # Minimum Python version to use for version dependent checks. Will default to # the version used to run pylint. -py-version=3.14 +py-version=3.15 # Discover python modules and packages in the file system subtree. recursive=no @@ -337,6 +344,10 @@ expected-line-ending-format= # Regexp for a line that is allowed to be longer than the limit. ignore-long-lines=^\s*(# )??$ +# Regexp for a part of a line that will not be counted when calculating the +# line length. +#ignore-pattern-in-long-lines= + # Number of spaces of indent required inside a hanging or continued line. indent-after-paren=4 @@ -389,6 +400,9 @@ import-graph= # to the given file (report RP0402 must not be disabled). int-import-graph= +# Force import order to recognize a module as part of a first party library. +known-first-party= + # Force import order to recognize a module as part of the standard # compatibility libraries. known-standard-library= @@ -505,9 +519,9 @@ evaluation=max(0, 0 if fatal else 10.0 - ((float(5 * error + warning + refactor msg-template= # Set the output format. Available formats are: 'text', 'parseable', -# 'colorized', 'json2' (improved json format), 'json' (old json format), msvs -# (visual studio) and 'github' (GitHub actions). You can also give a reporter -# class, e.g. mypackage.mymodule.MyReporterClass. +# 'colorized', 'json2' (improved json format), 'json' (old json format), 'msvs' +# (visual studio), 'github' (GitHub actions) and 'junit' (JUnit XML). You can +# also give a reporter class, e.g. mypackage.mymodule.MyReporterClass. #output-format= # Tells whether to display a full report or only the messages. @@ -531,7 +545,8 @@ ignore-imports=yes # Signatures are removed from the similarity computation ignore-signatures=yes -# Minimum lines number of a similarity. +# Minimum lines number of a similarity. Setting it to 0 will disable the check, +# but you should use disable=duplicate-code instead. min-similarity-lines=4 @@ -605,6 +620,12 @@ ignored-checks-for-mixins=no-member, # qualified names. ignored-classes=optparse.Values,thread._local,_thread._local,argparse.Namespace +# Couples of functions with side effects that are often believed to return +# something and the equivalent function that does return something, separated +# by a comma. Used to hint at the right function to use in the 'assignment- +# from-no-return' message. +known-side-effects-only-functions=reverse:reversed,sort:sorted + # Show a hint with possible names when a member name was not found. The aspect # of finding the hint is based on edit distance. missing-member-hint=yes