Skip to content

Commit 6835d8e

Browse files
authored
enable ruff d103 (kornia#3096)
* RUFF: D417 * Add doc strings for missing arguments detected * RUFF: Fix some improper doc string formats. * Fix typo. * Non-functional change: * Don't download during doc test to avoid flaky failure * RUFF: Minimally address D103 * Fix incorrect clamp
1 parent 5be66ca commit 6835d8e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+143
-19
lines changed

conftest.py

+10
Original file line numberDiff line numberDiff line change
@@ -71,16 +71,19 @@ def get_test_dtypes() -> dict[str, torch.dtype]:
7171

7272
@pytest.fixture()
7373
def device(device_name) -> torch.device:
74+
"""Return device for testing."""
7475
return TEST_DEVICES[device_name]
7576

7677

7778
@pytest.fixture()
7879
def dtype(dtype_name) -> torch.dtype:
80+
"""Return dtype for testing."""
7981
return TEST_DTYPES[dtype_name]
8082

8183

8284
@pytest.fixture()
8385
def torch_optimizer(optimizer_backend):
86+
"""Return torch optimizer."""
8487
if not optimizer_backend:
8588
return lambda x: x
8689

@@ -102,6 +105,7 @@ def torch_optimizer(optimizer_backend):
102105

103106

104107
def pytest_generate_tests(metafunc):
108+
"""Generate tests."""
105109
device_names = None
106110
dtype_names = None
107111
optimizer_backends_names = None
@@ -151,6 +155,7 @@ def pytest_generate_tests(metafunc):
151155

152156

153157
def pytest_collection_modifyitems(config, items):
158+
"""Collect test options."""
154159
if config.getoption("--runslow"):
155160
# --runslow given in cli: do not skip slow tests
156161
return
@@ -162,6 +167,7 @@ def pytest_collection_modifyitems(config, items):
162167

163168

164169
def pytest_addoption(parser):
170+
"""Add options."""
165171
parser.addoption("--device", action="store", default="cpu")
166172
parser.addoption("--dtype", action="store", default="float32")
167173
parser.addoption("--optimizer", action="store", default="inductor")
@@ -188,6 +194,7 @@ def forward(self, x):
188194

189195

190196
def pytest_sessionstart(session):
197+
"""Start pytest session."""
191198
try:
192199
_setup_torch_compile()
193200
except RuntimeError as ex:
@@ -248,6 +255,7 @@ def _get_gpu_info() -> dict[str, str]:
248255

249256

250257
def pytest_report_header(config):
258+
"""Return report header."""
251259
try:
252260
import accelerate
253261

@@ -292,6 +300,7 @@ def pytest_report_header(config):
292300

293301
@pytest.fixture(autouse=True)
294302
def add_doctest_deps(doctest_namespace):
303+
"""Add dependencies for doctests."""
295304
doctest_namespace["np"] = np
296305
doctest_namespace["torch"] = torch
297306
doctest_namespace["kornia"] = kornia
@@ -305,6 +314,7 @@ def add_doctest_deps(doctest_namespace):
305314

306315
@pytest.fixture(scope="session")
307316
def data(request):
317+
"""Return loaded data."""
308318
url = {
309319
"loftr_homo": f"https://github.com/kornia/data_test/blob/{sha}/loftr_outdoor_and_homography_data.pt?raw=true",
310320
"loftr_fund": f"https://github.com/kornia/data_test/blob/{sha}/loftr_indoor_and_fundamental_data.pt?raw=true",

kornia/augmentation/auto/autoaugment/ops.py

+14
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222

2323
def shear_x(probability: float, magnitude: int) -> OperationBase:
24+
"""Return ShearX op."""
2425
magnitudes = linspace(-0.3, 0.3, 11) * 180.0
2526
return ShearX(
2627
None,
@@ -31,6 +32,7 @@ def shear_x(probability: float, magnitude: int) -> OperationBase:
3132

3233

3334
def shear_y(probability: float, magnitude: int) -> OperationBase:
35+
"""Return ShearY op."""
3436
magnitudes = linspace(-0.3, 0.3, 11) * 180.0
3537
return ShearY(
3638
None,
@@ -41,6 +43,7 @@ def shear_y(probability: float, magnitude: int) -> OperationBase:
4143

4244

4345
def translate_x(probability: float, magnitude: int) -> OperationBase:
46+
"""Return TranslateX op."""
4447
magnitudes = linspace(-0.5, 0.5, 11)
4548
return TranslateX(
4649
None,
@@ -51,6 +54,7 @@ def translate_x(probability: float, magnitude: int) -> OperationBase:
5154

5255

5356
def translate_y(probability: float, magnitude: int) -> OperationBase:
57+
"""Return TranslateY op."""
5458
magnitudes = linspace(-0.5, 0.5, 11)
5559
return TranslateY(
5660
None,
@@ -61,6 +65,7 @@ def translate_y(probability: float, magnitude: int) -> OperationBase:
6165

6266

6367
def rotate(probability: float, magnitude: int) -> OperationBase:
68+
"""Return rotate op."""
6469
magnitudes = linspace(-30, 30, 11)
6570
return Rotate(
6671
None,
@@ -71,48 +76,57 @@ def rotate(probability: float, magnitude: int) -> OperationBase:
7176

7277

7378
def auto_contrast(probability: float, _: int) -> OperationBase:
79+
"""Return AutoConstrast op."""
7480
return AutoContrast(probability)
7581

7682

7783
def invert(probability: float, _: int) -> OperationBase:
84+
"""Return invert op."""
7885
return Invert(probability)
7986

8087

8188
def equalize(probability: float, _: int) -> OperationBase:
89+
"""Return equalize op."""
8290
return Equalize(probability)
8391

8492

8593
def solarize(probability: float, magnitude: int) -> OperationBase:
94+
"""Return solarize op."""
8695
magnitudes = linspace(0, 255, 11) / 255.0
8796
return Solarize(None, probability, magnitude_range=(magnitudes[magnitude].item(), magnitudes[magnitude + 1].item()))
8897

8998

9099
def posterize(probability: float, magnitude: int) -> OperationBase:
100+
"""Return posterize op."""
91101
magnitudes = linspace(4, 8, 11)
92102
return Posterize(
93103
None, probability, magnitude_range=(magnitudes[magnitude].item(), magnitudes[magnitude + 1].item())
94104
)
95105

96106

97107
def contrast(probability: float, magnitude: int) -> OperationBase:
108+
"""Return contrast op."""
98109
magnitudes = linspace(0.1, 1.9, 11)
99110
return Contrast(None, probability, magnitude_range=(magnitudes[magnitude].item(), magnitudes[magnitude + 1].item()))
100111

101112

102113
def brightness(probability: float, magnitude: int) -> OperationBase:
114+
"""Return brightness op."""
103115
magnitudes = linspace(0.1, 1.9, 11)
104116
return Brightness(
105117
None, probability, magnitude_range=(magnitudes[magnitude].item(), magnitudes[magnitude + 1].item())
106118
)
107119

108120

109121
def sharpness(probability: float, magnitude: int) -> OperationBase:
122+
"""Return sharpness op."""
110123
magnitudes = linspace(0.1, 1.9, 11)
111124
return Sharpness(
112125
None, probability, magnitude_range=(magnitudes[magnitude].item(), magnitudes[magnitude + 1].item())
113126
)
114127

115128

116129
def color(probability: float, magnitude: int) -> OperationBase:
130+
"""Return color op."""
117131
magnitudes = linspace(0.1, 1.9, 11)
118132
return Saturate(None, probability, magnitude_range=(magnitudes[magnitude].item(), magnitudes[magnitude + 1].item()))

kornia/augmentation/auto/rand_augment/ops.py

+15
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222

2323
def shear_x(min_mag: float, max_mag: float) -> OperationBase:
24+
"""Return ShearX op."""
2425
if min_mag != -max_mag:
2526
raise ValueError(
2627
f"{ShearX.__name__} is a symmetric operation that `- min_mag == max_mag`. Got [{min_mag}, {max_mag}]"
@@ -29,6 +30,7 @@ def shear_x(min_mag: float, max_mag: float) -> OperationBase:
2930

3031

3132
def shear_y(min_mag: float, max_mag: float) -> OperationBase:
33+
"""Return ShearY op."""
3234
if min_mag != -max_mag:
3335
raise ValueError(
3436
f"{ShearY.__name__} is a symmetric operation that `- min_mag == max_mag`. Got [{min_mag}, {max_mag}]"
@@ -37,6 +39,7 @@ def shear_y(min_mag: float, max_mag: float) -> OperationBase:
3739

3840

3941
def translate_x(min_mag: float, max_mag: float) -> OperationBase:
42+
"""Return TranslateX op."""
4043
if min_mag != -max_mag:
4144
raise ValueError(
4245
f"{TranslateX.__name__} is a symmetric operation that `- min_mag == max_mag`. Got [{min_mag}, {max_mag}]"
@@ -45,6 +48,7 @@ def translate_x(min_mag: float, max_mag: float) -> OperationBase:
4548

4649

4750
def translate_y(min_mag: float, max_mag: float) -> OperationBase:
51+
"""Return TranslateY op."""
4852
if min_mag != -max_mag:
4953
raise ValueError(
5054
f"{TranslateY.__name__} is a symmetric operation that `- min_mag == max_mag`. Got [{min_mag}, {max_mag}]"
@@ -53,6 +57,7 @@ def translate_y(min_mag: float, max_mag: float) -> OperationBase:
5357

5458

5559
def rotate(min_mag: float, max_mag: float) -> OperationBase:
60+
"""Return rotate op."""
5661
if min_mag != -max_mag:
5762
raise ValueError(
5863
f"{Rotate.__name__} is a symmetric operation that `- min_mag == max_mag`. Got [{min_mag}, {max_mag}]"
@@ -61,40 +66,50 @@ def rotate(min_mag: float, max_mag: float) -> OperationBase:
6166

6267

6368
def auto_contrast(min_mag: float, max_mag: float) -> OperationBase:
69+
"""Return AutoConstrast op."""
6470
return AutoContrast(1.0)
6571

6672

6773
def invert(min_mag: float, max_mag: float) -> OperationBase:
74+
"""Return invert op."""
6875
return Invert(1.0)
6976

7077

7178
def equalize(min_mag: float, max_mag: float) -> OperationBase:
79+
"""Return equalize op."""
7280
return Equalize(1.0)
7381

7482

7583
def solarize(min_mag: float, max_mag: float) -> OperationBase:
84+
"""Return solarize op."""
7685
return Solarize(None, 1.0, magnitude_range=(min_mag, max_mag))
7786

7887

7988
def solarize_add(min_mag: float, max_mag: float) -> OperationBase:
89+
"""Return SolarizeAdd op."""
8090
return SolarizeAdd(None, 1.0, magnitude_range=(min_mag, max_mag))
8191

8292

8393
def posterize(min_mag: float, max_mag: float) -> OperationBase:
94+
"""Return posterize op."""
8495
return Posterize(None, 1.0, magnitude_range=(min_mag, max_mag))
8596

8697

8798
def contrast(min_mag: float, max_mag: float) -> OperationBase:
99+
"""Return contrast op."""
88100
return Contrast(None, 1.0, magnitude_range=(min_mag, max_mag))
89101

90102

91103
def brightness(min_mag: float, max_mag: float) -> OperationBase:
104+
"""Return brightness op."""
92105
return Brightness(None, 1.0, magnitude_range=(min_mag, max_mag))
93106

94107

95108
def sharpness(min_mag: float, max_mag: float) -> OperationBase:
109+
"""Return sharpness op."""
96110
return Sharpness(None, 1.0, magnitude_range=(min_mag, max_mag))
97111

98112

99113
def color(min_mag: float, max_mag: float) -> OperationBase:
114+
"""Return color op."""
100115
return Saturate(None, 1.0, magnitude_range=(min_mag, max_mag))

kornia/augmentation/container/ops.py

+1
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,7 @@ def f(*args: P.args, **kwargs: P.kwargs) -> Tensor:
172172

173173

174174
def get_geometric_only_param(module: "K.container.ImageSequentialBase", param: List[ParamItem]) -> List[ParamItem]:
175+
"""Return geometry param."""
175176
named_modules = module.get_forward_sequence(param)
176177

177178
res: List[ParamItem] = []

kornia/contrib/extract_patches.py

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414

1515

1616
def create_padding_tuple(padding: PadType, unpadding: bool = False) -> FullPadType:
17+
"""Create argument for padding op."""
1718
padding = cast(TuplePadType, _pair(padding))
1819

1920
if len(padding) not in [2, 4]:

kornia/contrib/models/efficient_vit/backbone.py

+8
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ def forward(self, x: torch.Tensor) -> dict[str, torch.Tensor]:
139139

140140

141141
def efficientvit_backbone_b0(**kwargs: dict[str, Any]) -> EfficientViTBackbone:
142+
"""Create EfficientViT B0."""
142143
backbone = EfficientViTBackbone(
143144
width_list=[8, 16, 32, 64, 128],
144145
depth_list=[1, 2, 2, 2, 2],
@@ -149,6 +150,7 @@ def efficientvit_backbone_b0(**kwargs: dict[str, Any]) -> EfficientViTBackbone:
149150

150151

151152
def efficientvit_backbone_b1(**kwargs: dict[str, Any]) -> EfficientViTBackbone:
153+
"""Create EfficientViT B1."""
152154
backbone = EfficientViTBackbone(
153155
width_list=[16, 32, 64, 128, 256],
154156
depth_list=[1, 2, 3, 3, 4],
@@ -159,6 +161,7 @@ def efficientvit_backbone_b1(**kwargs: dict[str, Any]) -> EfficientViTBackbone:
159161

160162

161163
def efficientvit_backbone_b2(**kwargs: dict[str, Any]) -> EfficientViTBackbone:
164+
"""Create EfficientViT B2."""
162165
backbone = EfficientViTBackbone(
163166
width_list=[24, 48, 96, 192, 384],
164167
depth_list=[1, 3, 4, 4, 6],
@@ -169,6 +172,7 @@ def efficientvit_backbone_b2(**kwargs: dict[str, Any]) -> EfficientViTBackbone:
169172

170173

171174
def efficientvit_backbone_b3(**kwargs: dict[str, Any]) -> EfficientViTBackbone:
175+
"""Create EfficientViT B3."""
172176
backbone = EfficientViTBackbone(
173177
width_list=[32, 64, 128, 256, 512],
174178
depth_list=[1, 4, 6, 6, 9],
@@ -307,6 +311,7 @@ def forward(self, x: torch.Tensor) -> dict[str, torch.Tensor]:
307311

308312

309313
def efficientvit_backbone_l0(**kwargs: dict[str, Any]) -> EfficientViTLargeBackbone:
314+
"""Create EfficientViT L0."""
310315
backbone = EfficientViTLargeBackbone(
311316
width_list=[32, 64, 128, 256, 512],
312317
depth_list=[1, 1, 1, 4, 4],
@@ -316,6 +321,7 @@ def efficientvit_backbone_l0(**kwargs: dict[str, Any]) -> EfficientViTLargeBackb
316321

317322

318323
def efficientvit_backbone_l1(**kwargs: dict[str, Any]) -> EfficientViTLargeBackbone:
324+
"""Create EfficientViT L."""
319325
backbone = EfficientViTLargeBackbone(
320326
width_list=[32, 64, 128, 256, 512],
321327
depth_list=[1, 1, 1, 6, 6],
@@ -325,6 +331,7 @@ def efficientvit_backbone_l1(**kwargs: dict[str, Any]) -> EfficientViTLargeBackb
325331

326332

327333
def efficientvit_backbone_l2(**kwargs: dict[str, Any]) -> EfficientViTLargeBackbone:
334+
"""Create EfficientViT L2."""
328335
backbone = EfficientViTLargeBackbone(
329336
width_list=[32, 64, 128, 256, 512],
330337
depth_list=[1, 2, 2, 8, 8],
@@ -334,6 +341,7 @@ def efficientvit_backbone_l2(**kwargs: dict[str, Any]) -> EfficientViTLargeBackb
334341

335342

336343
def efficientvit_backbone_l3(**kwargs: dict[str, Any]) -> EfficientViTLargeBackbone:
344+
"""Create EfficientViT L3."""
337345
backbone = EfficientViTLargeBackbone(
338346
width_list=[64, 128, 256, 512, 1024],
339347
depth_list=[1, 2, 2, 8, 8],

kornia/contrib/models/efficient_vit/nn/act.py

+1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222

2323
def build_act(name: Optional[str], **kwargs: dict[str, Any]) -> Union[nn.Module, None]:
24+
"""Return activation op."""
2425
if name in REGISTERED_ACT_DICT:
2526
act_cls = REGISTERED_ACT_DICT[name]
2627
args = build_kwargs_from_config(kwargs, act_cls)

kornia/contrib/models/efficient_vit/nn/norm.py

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ def forward(self, x: torch.Tensor) -> torch.Tensor:
2525

2626

2727
def build_norm(name: str = "bn2d", num_features: Optional[int] = None, **kwargs: Any) -> Optional[nn.Module]:
28+
"""Return norm op."""
2829
if name in ["ln", "ln2d"]:
2930
kwargs["normalized_shape"] = num_features
3031
else:

kornia/contrib/models/efficient_vit/utils/list.py

+2
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,14 @@
77

88

99
def val2list(x: Union[list[Any], tuple[Any, ...], Any], repeat_time: int = 1) -> list[Any]:
10+
"""Convert value to list."""
1011
if isinstance(x, (list, tuple)):
1112
return list(x)
1213
return [x for _ in range(repeat_time)]
1314

1415

1516
def val2tuple(x: Union[list[Any], tuple[Any, ...], Any], min_len: int = 1, idx_repeat: int = -1) -> tuple[Any, ...]:
17+
"""Convert value to tuple."""
1618
x = val2list(x)
1719

1820
# repeat elements if necessary

kornia/contrib/models/efficient_vit/utils/network.py

+2
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99

1010
def get_same_padding(kernel_size: Union[int, tuple[int, ...]]) -> Union[int, tuple[int, ...]]:
11+
"""Return padding values."""
1112
if isinstance(kernel_size, (tuple,)):
1213
return tuple([get_same_padding(ks) for ks in kernel_size]) # type: ignore
1314

@@ -16,6 +17,7 @@ def get_same_padding(kernel_size: Union[int, tuple[int, ...]]) -> Union[int, tup
1617

1718

1819
def build_kwargs_from_config(config: dict[str, Any], target_func: Any) -> dict[str, Any]:
20+
"""Return kwargs from config object."""
1921
valid_keys = list(signature(target_func).parameters)
2022
kwargs = {}
2123
for key, value in config.items():

kornia/contrib/object_detection.py

+1
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None:
4242

4343

4444
def results_from_detections(*args: Any, **kwargs: Any) -> list[ObjectDetectorResultBase]:
45+
"""Return detector results."""
4546
warnings.warn(
4647
"results_from_detections is deprecated and will be removed in v0.8.0. "
4748
"Use kornia.models.detection.results_from_detections instead.",

0 commit comments

Comments
 (0)