Skip to content

Commit c6fc36e

Browse files
authored
next-* swap part 1 (#46279)
* next-* swap * trigger core pipeline * Revert "trigger core pipeline" This reverts commit ec225c9. * reformat * tyhis * upstream * pylint * topx * Disable common false-positive pylint rules in test and samples pylintrc test_pylintrc: disable attribute-defined-outside-init, unused-variable, too-many-public-methods, bare-except, import-error samples_pylintrc: disable unused-variable, import-error, no-name-in-module, name-too-long, unused-argument * pylint * updates * we were not binding next-* versions which can cause conflicts with generated code***
1 parent cd89c59 commit c6fc36e

9 files changed

Lines changed: 39 additions & 22 deletions

File tree

doc/analyze_check_versions.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ This table is to clarify the currently pinned version of tools we run in CI and
55

66
| Tool | Current Version | Next Version | Next Version Merge Date |
77
|------|-----------------|--------------|-------------------------|
8-
Pylint | 3.2.7 | 4.0.4 | 2026-04-13 |
9-
Pylint Guidelines Checker | 0.5.7 | 0.5.7 | 2026-04-13 |
10-
MyPy | 1.18.1 | 1.19.1 | 2026-04-13 |
11-
Pyright | 1.1.405 | 1.1.407 | 2026-04-13 |
8+
Pylint | 4.0.4 | 4.0.4 | 2026-07-13 |
9+
Pylint Guidelines Checker | 0.5.7 | 0.5.7 | 2026-07-13 |
10+
MyPy | 1.19.1 | 1.19.1 | 2026-07-13 |
11+
Pyright | 1.1.407 | 1.1.407 | 2026-07-13 |
1212
Sphinx | 8.2.0 | N/A | N/A |
1313
Black | 24.4.0 | N/A | N/A |

eng/apiview_reqs.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
astroid==3.3.8
1+
astroid==4.0.4
22
charset-normalizer==3.4.1
33
dill==0.3.9
44
isodate==0.6.1
@@ -7,7 +7,7 @@ lazy-object-proxy==1.10.0
77
mccabe==0.7.0
88
pkginfo==1.12.1.2
99
platformdirs==4.3.6
10-
pylint==3.3.6
10+
pylint==4.0.4
1111
azure-pylint-guidelines-checker==0.5.7
1212
six==1.17.0
1313
tomli==2.2.1

eng/samples_pylintrc

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,13 @@ load-plugins=pylint_guidelines_checker
2020
# too-many-arguments: Due to the nature of the CLI many commands have large arguments set which reflect in large arguments set in corresponding methods.
2121
# Let's black deal with bad-continuation
2222

23-
# Added disables from super-with-arguments and do-not-import-asyncio for samples
24-
disable=useless-object-inheritance,missing-docstring,locally-disabled,fixme,cyclic-import,too-many-arguments,invalid-name,duplicate-code,too-few-public-methods,consider-using-f-string,super-with-arguments,redefined-builtin,import-outside-toplevel,client-suffix-needed,unnecessary-dunder-call,unnecessary-ellipsis,client-paging-methods-use-list,consider-using-max-builtin,too-many-lines,possibly-used-before-assignment,do-not-hardcode-dedent,arguments-differ,signature-differs,deprecated-class,too-many-positional-arguments,do-not-import-asyncio
23+
# Added disables from super-with-arguments and do-not-import-asyncio for samples
24+
# unused-variable: Sample code snippets show object creation without always using the result
25+
# import-error: Namespace package resolution causes false positives for cross-library imports
26+
# no-name-in-module: Namespace package resolution causes false positives for cross-library imports
27+
# name-too-long: Descriptive async sample method names often exceed 40 chars
28+
# unused-argument: Samples demonstrating interface conformance may have unused params
29+
disable=useless-object-inheritance,missing-docstring,locally-disabled,fixme,cyclic-import,too-many-arguments,invalid-name,duplicate-code,too-few-public-methods,consider-using-f-string,super-with-arguments,redefined-builtin,import-outside-toplevel,client-suffix-needed,unnecessary-dunder-call,unnecessary-ellipsis,client-paging-methods-use-list,consider-using-max-builtin,too-many-lines,possibly-used-before-assignment,do-not-hardcode-dedent,arguments-differ,signature-differs,deprecated-class,too-many-positional-arguments,do-not-import-asyncio,unused-variable,import-error,no-name-in-module,name-too-long,unused-argument
2530

2631

2732
[FORMAT]

eng/test_pylintrc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,12 @@ load-plugins=pylint_guidelines_checker
2121
# Let's black deal with bad-continuation
2222

2323
# Added disables from super-with-arguments and client formatting rules for tests
24-
disable=useless-object-inheritance,missing-docstring,locally-disabled,fixme,cyclic-import,too-many-arguments,invalid-name,duplicate-code,too-few-public-methods,consider-using-f-string,super-with-arguments,redefined-builtin,import-outside-toplevel,client-suffix-needed,unnecessary-dunder-call,unnecessary-ellipsis,client-paging-methods-use-list,consider-using-max-builtin,too-many-lines,possibly-used-before-assignment,do-not-hardcode-dedent,arguments-differ,signature-differs,deprecated-class,too-many-positional-arguments,missing-client-constructor-parameter-credential,missing-client-constructor-parameter-kwargs,unapproved-client-method-name-prefix,client-method-has-more-than-5-positional-arguments,client-method-missing-type-annotations,client-method-missing-kwargs,client-method-name-no-double-underscore,client-method-missing-tracing-decorator,client-method-missing-tracing-decorator-async,client-incorrect-naming-convention,specify-parameter-names-in-call,protected-access,name-too-long,missing-function-docstring,missing-class-docstring,missing-module-docstring,docstring-missing-param,docstring-missing-type,docstring-missing-return,docstring-missing-rtype,docstring-should-be-keyword,docstring-admonition-needs-newline,docstring-keyword-should-match-keyword-only,docstring-type-do-not-use-class,do-not-import-asyncio,config-missing-kwargs-in-policy,client-method-should-not-use-static-method,file-needs-copyright-header,async-client-bad-name,connection-string-should-not-be-constructor-param,package-name-incorrect,naming-mismatch,enum-must-be-uppercase,enum-must-inherit-case-insensitive-enum-meta,client-accepts-api-version-keyword,non-abstract-transport-import,delete-operation-wrong-return-type,networking-import-outside-azure-core-transport,no-raise-with-traceback,no-legacy-azure-core-http-response-import,do-not-import-legacy-six,no-typing-import-in-type-check,do-not-use-legacy-typing,do-not-log-raised-errors,invalid-use-of-overload,do-not-log-exceptions-if-not-debug,do-not-hardcode-connection-verify,singleton-comparison
24+
# attribute-defined-outside-init: Test _setup() methods commonly define instance attributes outside __init__
25+
# unused-variable: Tests exercise APIs and capture return values without always asserting on them
26+
# too-many-public-methods: Test classes naturally have many test methods
27+
# bare-except: Test _setup/_teardown cleanup should not fail the test run
28+
# import-error: Namespace package resolution causes false positives for cross-library imports
29+
disable=useless-object-inheritance,missing-docstring,locally-disabled,fixme,cyclic-import,too-many-arguments,invalid-name,duplicate-code,too-few-public-methods,consider-using-f-string,super-with-arguments,redefined-builtin,import-outside-toplevel,client-suffix-needed,unnecessary-dunder-call,unnecessary-ellipsis,client-paging-methods-use-list,consider-using-max-builtin,too-many-lines,possibly-used-before-assignment,do-not-hardcode-dedent,arguments-differ,signature-differs,deprecated-class,too-many-positional-arguments,missing-client-constructor-parameter-credential,missing-client-constructor-parameter-kwargs,unapproved-client-method-name-prefix,client-method-has-more-than-5-positional-arguments,client-method-missing-type-annotations,client-method-missing-kwargs,client-method-name-no-double-underscore,client-method-missing-tracing-decorator,client-method-missing-tracing-decorator-async,client-incorrect-naming-convention,specify-parameter-names-in-call,protected-access,name-too-long,missing-function-docstring,missing-class-docstring,missing-module-docstring,docstring-missing-param,docstring-missing-type,docstring-missing-return,docstring-missing-rtype,docstring-should-be-keyword,docstring-admonition-needs-newline,docstring-keyword-should-match-keyword-only,docstring-type-do-not-use-class,do-not-import-asyncio,config-missing-kwargs-in-policy,client-method-should-not-use-static-method,file-needs-copyright-header,async-client-bad-name,connection-string-should-not-be-constructor-param,package-name-incorrect,naming-mismatch,enum-must-be-uppercase,enum-must-inherit-case-insensitive-enum-meta,client-accepts-api-version-keyword,non-abstract-transport-import,delete-operation-wrong-return-type,networking-import-outside-azure-core-transport,no-raise-with-traceback,no-legacy-azure-core-http-response-import,do-not-import-legacy-six,no-typing-import-in-type-check,do-not-use-legacy-typing,do-not-log-raised-errors,invalid-use-of-overload,do-not-log-exceptions-if-not-debug,do-not-hardcode-connection-verify,singleton-comparison,attribute-defined-outside-init,unused-variable,too-many-public-methods,bare-except,import-error
2530

2631

2732
[FORMAT]

eng/tools/azure-sdk-tools/azpysdk/mypy.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
from ci_tools.logging import logger
1414

1515
PYTHON_VERSION = "3.10"
16-
MYPY_VERSION = "1.18.1"
16+
MYPY_VERSION = "1.19.1"
17+
NEXT_MYPY_VERSION = "1.19.1"
1718
ADDITIONAL_LOCKED_DEPENDENCIES = [
1819
"types-chardet==5.0.4.6",
1920
"types-requests==2.31.0.6",
@@ -69,7 +70,7 @@ def run(self, args: argparse.Namespace) -> int:
6970
try:
7071
if args.next:
7172
# use latest version of mypy
72-
install_into_venv(executable, ["mypy"] + additional_requirements, package_dir)
73+
install_into_venv(executable, [f"mypy=={NEXT_MYPY_VERSION}"] + additional_requirements, package_dir)
7374
else:
7475
install_into_venv(executable, [f"mypy=={MYPY_VERSION}"] + additional_requirements, package_dir)
7576
except CalledProcessError as e:

eng/tools/azure-sdk-tools/azpysdk/pylint.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
from ci_tools.logging import logger, run_logged
1414

1515
REPO_ROOT = discover_repo_root()
16-
PYLINT_VERSION = "3.2.7"
16+
PYLINT_VERSION = "4.0.4"
17+
NEXT_PYLINT_VERSION = "4.0.4"
1718

1819

1920
class pylint(Check):
@@ -91,7 +92,7 @@ def run(self, args: argparse.Namespace) -> int:
9192
try:
9293
if args.next:
9394
# use latest version of pylint
94-
install_into_venv(executable, ["pylint"], package_dir)
95+
install_into_venv(executable, [f"pylint=={NEXT_PYLINT_VERSION}"], package_dir)
9596
else:
9697
install_into_venv(executable, [f"pylint=={PYLINT_VERSION}"], package_dir)
9798
except CalledProcessError as e:

eng/tools/azure-sdk-tools/azpysdk/pyright.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414

1515
from ci_tools.logging import logger
1616

17-
PYRIGHT_VERSION = "1.1.405"
17+
PYRIGHT_VERSION = "1.1.407"
18+
NEXT_PYRIGHT_VERSION = "1.1.407"
1819
REPO_ROOT = discover_repo_root()
1920

2021

@@ -90,7 +91,7 @@ def run(self, args: argparse.Namespace) -> int:
9091
try:
9192
if args.next:
9293
# use latest version of pyright
93-
install_into_venv(executable, ["pyright"], package_dir)
94+
install_into_venv(executable, [f"pyright=={NEXT_PYRIGHT_VERSION}"], package_dir)
9495
else:
9596
install_into_venv(executable, [f"pyright=={PYRIGHT_VERSION}"], package_dir)
9697
except CalledProcessError as e:

eng/tools/azure-sdk-tools/azpysdk/sphinx.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,13 @@
1919

2020
# dependencies
2121
SPHINX_VERSION = "8.2.0"
22+
NEXT_SPHINX_VERSION = "8.2.0"
2223
SPHINX_RTD_THEME_VERSION = "3.0.2"
24+
NEXT_SPHINX_RTD_THEME_VERSION = "3.0.2"
2325
MYST_PARSER_VERSION = "4.0.1"
26+
NEXT_MYST_PARSER_VERSION = "4.0.1"
2427
SPHINX_CONTRIB_JQUERY_VERSION = "4.1"
28+
NEXT_SPHINX_CONTRIB_JQUERY_VERSION = "4.1"
2529

2630
RST_EXTENSION_FOR_INDEX = """
2731
@@ -257,10 +261,10 @@ def run(self, args: argparse.Namespace) -> int:
257261
install_into_venv(
258262
executable,
259263
[
260-
"sphinx",
261-
"sphinx_rtd_theme",
262-
"myst_parser",
263-
"sphinxcontrib-jquery",
264+
f"sphinx=={NEXT_SPHINX_VERSION}",
265+
f"sphinx_rtd_theme=={NEXT_SPHINX_RTD_THEME_VERSION}",
266+
f"myst_parser=={NEXT_MYST_PARSER_VERSION}",
267+
f"sphinxcontrib-jquery=={NEXT_SPHINX_CONTRIB_JQUERY_VERSION}",
264268
],
265269
package_dir,
266270
)

eng/tox/tox.ini

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ commands =
9595

9696
[testenv:pylint]
9797
description=Lints a package with pylint (version {[testenv:pylint]pylint_version})
98-
pylint_version=3.2.7
98+
pylint_version=4.0.4
9999
skipsdist = true
100100
skip_install = true
101101
usedevelop = false
@@ -165,7 +165,7 @@ commands =
165165

166166
[testenv:mypy]
167167
description=Typechecks a package with mypy (version {[testenv:mypy]mypy_version})
168-
mypy_version=1.18.1
168+
mypy_version=1.19.1
169169
skipsdist = true
170170
skip_install = true
171171
usedevelop = true
@@ -217,7 +217,7 @@ commands =
217217

218218
[testenv:pyright]
219219
description=Typechecks a package with pyright (version {[testenv:pyright]pyright_version})
220-
pyright_version=1.1.405
220+
pyright_version=1.1.407
221221
skipsdist = true
222222
skip_install = true
223223
usedevelop = true

0 commit comments

Comments
 (0)