Skip to content

Conversation

@dylwil3
Copy link
Collaborator

@dylwil3 dylwil3 commented Jun 6, 2025

This involved slightly more code changes than usual for a stabilization - so maybe worth double-checking the logic!

I did verify by hand that the new stable behavior on the test fixture matches the old preview behavior, even after the internal refactor.

@dylwil3 dylwil3 added this to the v0.12 milestone Jun 6, 2025
@dylwil3 dylwil3 added rule Implementing or modifying a lint rule fixes Related to suggested fixes for violations labels Jun 6, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Jun 6, 2025

ruff-ecosystem results

Linter (stable)

ℹ️ ecosystem check detected linter changes. (+134 -155 violations, +0 -0 fixes in 6 projects; 49 projects unchanged)

apache/airflow (+77 -88 violations, +0 -0 fixes)

ruff check --no-cache --exit-zero --ignore RUF9 --no-fix --output-format concise --no-preview --select ALL

+ airflow-core/src/airflow/logging_config.py:38:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- airflow-core/src/airflow/logging_config.py:39:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ airflow-core/src/airflow/metrics/otel_logger.py:180:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- airflow-core/src/airflow/metrics/otel_logger.py:201:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ airflow-core/src/airflow/metrics/otel_logger.py:206:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- airflow-core/src/airflow/metrics/otel_logger.py:227:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ airflow-core/src/airflow/triggers/base.py:224:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- airflow-core/src/airflow/triggers/base.py:227:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ airflow-core/src/airflow/utils/retries.py:77:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- airflow-core/src/airflow/utils/retries.py:93:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ airflow-core/tests/unit/models/test_mappedoperator.py:463:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- airflow-core/tests/unit/models/test_mappedoperator.py:466:17: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ dev/breeze/src/airflow_breeze/global_constants.py:566:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- dev/breeze/src/airflow_breeze/global_constants.py:570:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ dev/breeze/src/airflow_breeze/utils/run_utils.py:465:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- dev/breeze/src/airflow_breeze/utils/run_utils.py:496:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ dev/breeze/src/airflow_breeze/utils/version_utils.py:20:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- dev/breeze/src/airflow_breeze/utils/version_utils.py:25:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ devel-common/src/tests_common/test_utils/api_client_helpers.py:62:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- devel-common/src/tests_common/test_utils/api_client_helpers.py:84:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- devel-common/src/tests_common/test_utils/logging_command_executor.py:105:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ devel-common/src/tests_common/test_utils/logging_command_executor.py:83:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ providers/amazon/src/airflow/providers/amazon/aws/executors/ecs/ecs_executor.py:308:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- providers/amazon/src/airflow/providers/amazon/aws/executors/ecs/ecs_executor.py:319:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- providers/amazon/src/airflow/providers/amazon/aws/executors/ecs/ecs_executor.py:320:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ providers/amazon/src/airflow/providers/amazon/aws/executors/ecs/utils.py:254:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- providers/amazon/src/airflow/providers/amazon/aws/executors/ecs/utils.py:258:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ providers/amazon/src/airflow/providers/amazon/aws/operators/emr.py:1277:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
... 137 additional changes omitted for project

apache/superset (+4 -4 violations, +0 -0 fixes)

ruff check --no-cache --exit-zero --ignore RUF9 --no-fix --output-format concise --no-preview --select ALL

+ superset/examples/helpers.py:128:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- superset/examples/helpers.py:140:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ superset/migrations/versions/2018-07-05_15-19_3dda56f1c4c6_migrate_num_period_compare_and_period_.py:112:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- superset/migrations/versions/2018-07-05_15-19_3dda56f1c4c6_migrate_num_period_compare_and_period_.py:129:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ tests/integration_tests/utils/hashing_tests.py:59:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- tests/integration_tests/utils/hashing_tests.py:60:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ tests/unit_tests/queries/query_object_test.py:103:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- tests/unit_tests/queries/query_object_test.py:104:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value

bokeh/bokeh (+43 -48 violations, +0 -0 fixes)

ruff check --no-cache --exit-zero --ignore RUF9 --no-fix --output-format concise --no-preview --select ALL

+ examples/server/app/clustering/main.py:82:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- examples/server/app/clustering/main.py:83:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/bokeh/core/has_props.py:314:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/bokeh/core/has_props.py:340:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/bokeh/core/has_props.py:342:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/bokeh/core/has_props.py:367:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/bokeh/core/serialization.py:386:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/bokeh/core/serialization.py:409:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/bokeh/core/serialization.py:438:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/bokeh/core/serialization.py:469:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/bokeh/core/serialization.py:530:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/bokeh/core/serialization.py:562:21: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/bokeh/core/serialization.py:572:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/bokeh/core/serialization.py:578:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/bokeh/core/serialization.py:710:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
... 76 additional changes omitted for project

latchbio/latch (+6 -11 violations, +0 -0 fixes)

+ src/latch/types/directory.py:127:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/latch/types/directory.py:129:17: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/latch/types/file.py:90:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/latch/types/file.py:92:17: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/latch_cli/centromere/utils.py:250:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/latch_cli/centromere/utils.py:253:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ src/latch_cli/snakemake/config/utils.py:281:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/latch_cli/snakemake/config/utils.py:291:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/latch_cli/snakemake/config/utils.py:304:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- src/latch_cli/snakemake/config/utils.py:309:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value
... 7 additional changes omitted for project

milvus-io/pymilvus (+1 -1 violations, +0 -0 fixes)

+ _version_helper.py:41:1: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- _version_helper.py:42:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value

zulip/zulip (+3 -3 violations, +0 -0 fixes)

ruff check --no-cache --exit-zero --ignore RUF9 --no-fix --output-format concise --no-preview --select ALL

+ zerver/lib/addressee.py:100:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- zerver/lib/addressee.py:141:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ zerver/tests/test_import_export.py:2374:13: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- zerver/tests/test_import_export.py:2377:17: RET503 Missing explicit `return` at the end of function able to return non-`None` value
+ zerver/tests/test_openapi.py:430:5: RET503 Missing explicit `return` at the end of function able to return non-`None` value
- zerver/tests/test_openapi.py:444:9: RET503 Missing explicit `return` at the end of function able to return non-`None` value

Changes by rule (1 rules affected)

code total + violation - violation + fix - fix
RET503 289 134 155 0 0

Linter (preview)

✅ ecosystem check detected no linter changes.

@ntBre ntBre force-pushed the brent/release-0.12.0 branch 3 times, most recently from 9252447 to 829acf4 Compare June 9, 2025 00:22
@dylwil3 dylwil3 force-pushed the dylan/stabilize-return-none branch from 4112464 to ed85b61 Compare June 9, 2025 19:48
Copy link
Contributor

@ntBre ntBre left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice, this looks right to me! Just one idea/question

@ntBre ntBre force-pushed the brent/release-0.12.0 branch from aaf6c9b to 96913d1 Compare June 10, 2025 20:44
@ntBre ntBre requested a review from AlexWaygood as a code owner June 10, 2025 20:44
@AlexWaygood AlexWaygood removed their request for review June 10, 2025 20:51
@ntBre ntBre force-pushed the brent/release-0.12.0 branch 2 times, most recently from 3ad0f1f to ff6fb14 Compare June 11, 2025 11:09
@ntBre ntBre mentioned this pull request Jun 11, 2025
2 tasks
@dylwil3 dylwil3 force-pushed the dylan/stabilize-return-none branch from ed85b61 to 6be65bb Compare June 12, 2025 16:00
@ntBre ntBre force-pushed the brent/release-0.12.0 branch from 351e674 to 4cfaa39 Compare June 12, 2025 16:01
@dylwil3 dylwil3 force-pushed the dylan/stabilize-return-none branch from 6be65bb to 5977a58 Compare June 12, 2025 16:09
@dylwil3 dylwil3 merged commit 6391de8 into brent/release-0.12.0 Jun 12, 2025
29 checks passed
@dylwil3 dylwil3 deleted the dylan/stabilize-return-none branch June 12, 2025 16:10
ntBre pushed a commit that referenced this pull request Jun 16, 2025
…xing `implicit-return` (`RET503`) (#18516)

This involved slightly more code changes than usual for a stabilization
- so maybe worth double-checking the logic!

I did verify by hand that the new stable behavior on the test fixture
matches the old preview behavior, even after the internal refactor.
ntBre pushed a commit that referenced this pull request Jun 17, 2025
…xing `implicit-return` (`RET503`) (#18516)

This involved slightly more code changes than usual for a stabilization
- so maybe worth double-checking the logic!

I did verify by hand that the new stable behavior on the test fixture
matches the old preview behavior, even after the internal refactor.
ntBre pushed a commit that referenced this pull request Jun 17, 2025
…xing `implicit-return` (`RET503`) (#18516)

This involved slightly more code changes than usual for a stabilization
- so maybe worth double-checking the logic!

I did verify by hand that the new stable behavior on the test fixture
matches the old preview behavior, even after the internal refactor.
carljm added a commit to MatthewMckee4/ruff that referenced this pull request Jun 17, 2025
…ence

* main: (71 commits)
  Bump 0.12.0 (astral-sh#18724)
  Revert "[ty] Offer "Did you mean...?" suggestions for unresolved `from` imports and unresolved attributes (astral-sh#18705)" (astral-sh#18721)
  [`flake8-return`] Stabilize only add `return None` at the end when fixing `implicit-return` (`RET503`) (astral-sh#18516)
  [`pyupgrade`] Stabilize `non-pep695-generic-function` (`UP047`) (astral-sh#18524)
  [`pyupgrade`] Stabilize `non-pep695-generic-class` (`UP046`) (astral-sh#18519)
  [`pandas-vet`] Deprecate `pandas-df-variable-name` (`PD901`) (astral-sh#18618)
  [`flake8-bandit`] Remove `suspicious-xmle-tree-usage` (`S320`) (astral-sh#18617)
  Stabilize `dataclass-enum` (`RUF049`) (astral-sh#18570)
  Stabilize `unnecessary-dict-index-lookup` (`PLR1733`) (astral-sh#18571)
  Remove rust-toolchain.toml from sdist (astral-sh#17925)
  Stabilize `starmap-zip` (`RUF058`) (astral-sh#18525)
  [`flake8-logging`] Stabilize `exc-info-outside-except-handler` (`LOG014`) (astral-sh#18517)
  [`pyupgrade`] Stabilize `non-pep604-annotation-optional` (`UP045`) and preview behavior for `non-pep604-annotation-union` (`UP007`) (astral-sh#18505)
  Stabilize `pytest-warns-too-broad` (`PT030`) (astral-sh#18568)
  Stabilize `for-loop-writes` (`FURB122`) (astral-sh#18565)
  Stabilize `pytest-warns-with-multiple-statements` (`PT031`) (astral-sh#18569)
  Stabilize `pytest-parameter-with-default-argument` (`PT028`) (astral-sh#18566)
  Stabilize `nan-comparison` (`PLW0177`) (astral-sh#18559)
  Stabilize `check-and-remove-from-set` (`FURB132`) (astral-sh#18560)
  Stabilize `unnecessary-round` (`RUF057`) (astral-sh#18563)
  ...
@ntBre ntBre mentioned this pull request Nov 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

fixes Related to suggested fixes for violations rule Implementing or modifying a lint rule

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants