diff --git a/eng/pipelines/templates/steps/analyze.yml b/eng/pipelines/templates/steps/analyze.yml index 7db54dc80cc1..c9296287987b 100644 --- a/eng/pipelines/templates/steps/analyze.yml +++ b/eng/pipelines/templates/steps/analyze.yml @@ -89,14 +89,14 @@ steps: condition: and(succeededOrFailed(), ne(variables['Skip.VerifySdist'],'true')) inputs: scriptPath: 'scripts/devops_tasks/dispatch_tox.py' - arguments: '"$(TargetingString)" --service=${{parameters.ServiceDirectory}} --toxenv=verifysdist ${{ parameters.AdditionalTestArgs }}' + arguments: '"$(TargetingString)" --disable-compatibility-filter --service=${{parameters.ServiceDirectory}} --toxenv=verifysdist ${{ parameters.AdditionalTestArgs }}' - task: PythonScript@0 displayName: 'Verify whl' condition: and(succeededOrFailed(), ne(variables['Skip.VerifyWhl'],'true')) inputs: scriptPath: 'scripts/devops_tasks/dispatch_tox.py' - arguments: '"$(TargetingString)" --service=${{parameters.ServiceDirectory}} --toxenv=verifywhl ${{ parameters.AdditionalTestArgs }}' + arguments: '"$(TargetingString)" --disable-compatibility-filter --service=${{parameters.ServiceDirectory}} --toxenv=verifywhl ${{ parameters.AdditionalTestArgs }}' - template: run_mypy.yml parameters: @@ -123,7 +123,7 @@ steps: displayName: 'Run Keyword Validation Check' inputs: scriptPath: 'scripts/devops_tasks/dispatch_tox.py' - arguments: '"$(TargetingString)" --service=${{parameters.ServiceDirectory}} --toxenv=verify_keywords ${{ parameters.AdditionalTestArgs }}' + arguments: '"$(TargetingString)" --disable-compatibility-filter --service=${{parameters.ServiceDirectory}} --toxenv=verify_keywords ${{ parameters.AdditionalTestArgs }}' condition: and(succeededOrFailed(), ne(variables['Skip.KeywordCheck'],'true')) - template: ../steps/run_bandit.yml diff --git a/eng/pipelines/templates/steps/run_bandit.yml b/eng/pipelines/templates/steps/run_bandit.yml index 246bc32b2b2a..9c9f88bee7f5 100644 --- a/eng/pipelines/templates/steps/run_bandit.yml +++ b/eng/pipelines/templates/steps/run_bandit.yml @@ -17,6 +17,7 @@ steps: --mark_arg="${{ parameters.TestMarkArgument }}" --service="${{ parameters.ServiceDirectory }}" --toxenv="bandit" + --disable-compatibility-filter --disablecov ${{ parameters.AdditionalTestArgs }} env: ${{ parameters.EnvVars }} diff --git a/eng/pipelines/templates/steps/run_black.yml b/eng/pipelines/templates/steps/run_black.yml index 0f28f4ed3f31..95ca1b15f900 100644 --- a/eng/pipelines/templates/steps/run_black.yml +++ b/eng/pipelines/templates/steps/run_black.yml @@ -14,6 +14,7 @@ steps: "$(TargetingString)" --service="${{ parameters.ServiceDirectory }}" --checks="black" + --disable-compatibility-filter --filter-type="Omit_management" ${{ parameters.AdditionalTestArgs }} env: diff --git a/eng/pipelines/templates/steps/run_breaking_changes.yml b/eng/pipelines/templates/steps/run_breaking_changes.yml index 31796638c800..a5d5ded508a6 100644 --- a/eng/pipelines/templates/steps/run_breaking_changes.yml +++ b/eng/pipelines/templates/steps/run_breaking_changes.yml @@ -14,6 +14,7 @@ steps: --mark_arg="${{ parameters.TestMarkArgument }}" --service="${{ parameters.ServiceDirectory }}" --toxenv="breaking" + --disable-compatibility-filter --disablecov env: ${{ parameters.EnvVars }} condition: and(succeededOrFailed(), ne(variables['Skip.BreakingChanges'],'true')) \ No newline at end of file diff --git a/eng/pipelines/templates/steps/run_mypy.yml b/eng/pipelines/templates/steps/run_mypy.yml index 1e95cb799946..5490f7c6f000 100644 --- a/eng/pipelines/templates/steps/run_mypy.yml +++ b/eng/pipelines/templates/steps/run_mypy.yml @@ -17,6 +17,7 @@ steps: --service="${{ parameters.ServiceDirectory }}" --checks="mypy" --disablecov + --disable-compatibility-filter ${{ parameters.AdditionalTestArgs }} env: TOX_PIP_IMPL: "uv" diff --git a/eng/pipelines/templates/steps/run_pylint.yml b/eng/pipelines/templates/steps/run_pylint.yml index 2c3b0a52dff1..7b8f1deb27fa 100644 --- a/eng/pipelines/templates/steps/run_pylint.yml +++ b/eng/pipelines/templates/steps/run_pylint.yml @@ -15,6 +15,7 @@ steps: "$(TargetingString)" --service="${{ parameters.ServiceDirectory }}" --checks="pylint" + --disable-compatibility-filter --filter-type="Omit_management" ${{ parameters.AdditionalTestArgs }} env: diff --git a/eng/pipelines/templates/steps/run_pyright.yml b/eng/pipelines/templates/steps/run_pyright.yml index 1a26ed13ea35..f59a90cc20d8 100644 --- a/eng/pipelines/templates/steps/run_pyright.yml +++ b/eng/pipelines/templates/steps/run_pyright.yml @@ -17,6 +17,7 @@ steps: --mark_arg="${{ parameters.TestMarkArgument }}" --service="${{ parameters.ServiceDirectory }}" --toxenv="pyright" + --disable-compatibility-filter --disablecov ${{ parameters.AdditionalTestArgs }} condition: and(succeededOrFailed(), ne(variables['Skip.Pyright'],'true')) @@ -30,6 +31,7 @@ steps: --mark_arg="${{ parameters.TestMarkArgument }}" --service="${{ parameters.ServiceDirectory }}" --toxenv="verifytypes" + --disable-compatibility-filter --disablecov ${{ parameters.AdditionalTestArgs }} condition: and(succeededOrFailed(), ne(variables['Skip.Verifytypes'],'true')) diff --git a/eng/scripts/dispatch_checks.py b/eng/scripts/dispatch_checks.py index 83f58877790a..498e7194cc9c 100644 --- a/eng/scripts/dispatch_checks.py +++ b/eng/scripts/dispatch_checks.py @@ -318,6 +318,13 @@ def handler(signum, frame): help="Maximum number of concurrent checks (default: number of CPU cores).", ) + parser.add_argument( + "--disable-compatibility-filter", + dest="disable_compatibility_filter", + action="store_true", + help="Flag to disable compatibility filter while discovering packages.", + ) + args = parser.parse_args() configure_logging(args) @@ -340,7 +347,7 @@ def handler(signum, frame): args.filter_type = "Build" compatibility_filter = False else: - compatibility_filter = True + compatibility_filter = not args.disable_compatibility_filter targeted_packages = discover_targeted_packages( args.glob_string, target_dir, "", args.filter_type, compatibility_filter diff --git a/eng/tools/azure-sdk-tools/ci_tools/build.py b/eng/tools/azure-sdk-tools/ci_tools/build.py index df98ab699d27..26ac6fcfd15a 100644 --- a/eng/tools/azure-sdk-tools/ci_tools/build.py +++ b/eng/tools/azure-sdk-tools/ci_tools/build.py @@ -161,7 +161,7 @@ def build() -> None: target_dir, args.package_filter_string, filter_type="Build", - compatibility_filter=True, + compatibility_filter=False, include_inactive=args.inactive, ) diff --git a/scripts/devops_tasks/dispatch_tox.py b/scripts/devops_tasks/dispatch_tox.py index 57dbe283e3d9..b3fa2d1c86af 100644 --- a/scripts/devops_tasks/dispatch_tox.py +++ b/scripts/devops_tasks/dispatch_tox.py @@ -114,6 +114,13 @@ help="Location to generate any output files(if any). For e.g. apiview stub file", ) + parser.add_argument( + "--disable-compatibility-filter", + dest="disable_compatibility_filter", + action="store_true", + help="Flag to disable compatibility filter while discovering packages.", + ) + args = parser.parse_args() configure_logging(args) @@ -132,7 +139,7 @@ args.filter_type = "Build" compatibility_filter = False else: - compatibility_filter = True + compatibility_filter = not args.disable_compatibility_filter targeted_packages = discover_targeted_packages( args.glob_string, target_dir, "", args.filter_type, compatibility_filter