Skip to content

Commit b5a9cc9

Browse files
Enforce ruff rules (RUF) (#290)
* Enforce ruff rule RUF027 RUF027 Possible f-string without an `f` prefix * Enforce ruff rule RUF013 RUF013 PEP 484 prohibits implicit `Optional` * Enforce ruff rule RUF022 RUF022 `__all__` is not sorted
1 parent ea3f90c commit b5a9cc9

8 files changed

Lines changed: 18 additions & 18 deletions

File tree

src/highdicom/__init__.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,9 @@
5858
from highdicom.version import __version__
5959

6060
__all__ = [
61+
'LUT',
62+
'UID',
63+
'VOILUT',
6164
'AlgorithmIdentificationSequence',
6265
'AnatomicalOrientationTypeValues',
6366
'ContentCreatorIdentificationCodeSequence',
@@ -66,7 +69,6 @@
6669
'DimensionOrganizationTypeValues',
6770
'IssuerOfIdentifier',
6871
'LateralityValues',
69-
'LUT',
7072
'ModalityLUT',
7173
'ModalityLUTTransformation',
7274
'PaletteColorLUT',
@@ -85,19 +87,18 @@
8587
'PresentationLUTTransformation',
8688
'ReferencedImageSequence',
8789
'RescaleTypeValues',
90+
'SOPClass',
8891
'SegmentedPaletteColorLUT',
8992
'SpecimenCollection',
9093
'SpecimenDescription',
9194
'SpecimenPreparationStep',
9295
'SpecimenProcessing',
9396
'SpecimenSampling',
9497
'SpecimenStaining',
95-
'SOPClass',
96-
'UID',
9798
'UniversalEntityIDTypeValues',
98-
'VOILUT',
9999
'VOILUTFunctionValues',
100100
'VOILUTTransformation',
101+
'__version__',
101102
'ann',
102103
'color',
103104
'frame',
@@ -111,5 +112,4 @@
111112
'spatial',
112113
'sr',
113114
'utils',
114-
'__version__',
115115
]

src/highdicom/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ def _copy_attribute(
264264
"""
265265
tag = tag_for_keyword(keyword)
266266
if tag is None:
267-
raise ValueError('No tag not found for keyword "{keyword}".')
267+
raise ValueError(f'No tag not found for keyword "{keyword}".')
268268
try:
269269
data_element = dataset[tag]
270270
logger.debug(f'copied attribute "{keyword}"')

src/highdicom/pr/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@
3737
'AdvancedBlending',
3838
'AdvancedBlendingPresentationState',
3939
'AnnotationUnitsValues',
40-
'BlendingModeValues',
4140
'BlendingDisplay',
4241
'BlendingDisplayInput',
42+
'BlendingModeValues',
4343
'ColorSoftcopyPresentationState',
4444
'GraphicAnnotation',
4545
'GraphicGroup',

src/highdicom/sc/sop.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ def __init__(
6969
patient_birth_date: Optional[str] = None,
7070
patient_sex: Union[str, PatientSexValues, None] = None,
7171
accession_number: Optional[str] = None,
72-
study_id: str = None,
72+
study_id: Optional[str] = None,
7373
study_date: Optional[Union[str, datetime.date]] = None,
7474
study_time: Optional[Union[str, datetime.time]] = None,
7575
referring_physician_name: Optional[Union[str, PersonName]] = None,

src/highdicom/seg/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,14 @@
2020

2121
__all__ = [
2222
'DimensionIndexSequence',
23-
'Segmentation',
24-
'segread',
2523
'SegmentAlgorithmTypeValues',
24+
'SegmentDescription',
25+
'Segmentation',
2626
'SegmentationFractionalTypeValues',
2727
'SegmentationTypeValues',
28-
'SegmentDescription',
2928
'SegmentsOverlapValues',
3029
'SpatialLocationsPreservedValues',
3130
'create_segmentation_pyramid',
31+
'segread',
3232
'utils',
3333
]

src/highdicom/sr/content.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1612,7 +1612,7 @@ def from_segmentation(
16121612
for frame_number in frame_numbers:
16131613
if frame_number < 1 or frame_number > number_of_frames:
16141614
raise ValueError(
1615-
'Value {frame_number} is not a valid frame number.'
1615+
f'Value {frame_number} is not a valid frame number.'
16161616
)
16171617
frame_index = frame_number - 1
16181618
item = segmentation.PerFrameFunctionalGroupsSequence[frame_index]

src/highdicom/sr/templates.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2572,7 +2572,7 @@ def __init__(
25722572
algorithm_id: Optional[AlgorithmIdentification] = None,
25732573
finding_sites: Optional[Sequence[FindingSite]] = None,
25742574
session: Optional[str] = None,
2575-
measurements: Sequence[Measurement] = None,
2575+
measurements: Optional[Sequence[Measurement]] = None,
25762576
qualitative_evaluations: Optional[
25772577
Sequence[QualitativeEvaluation]
25782578
] = None,
@@ -2969,7 +2969,7 @@ def __init__(
29692969
algorithm_id: Optional[AlgorithmIdentification] = None,
29702970
finding_sites: Optional[Sequence[FindingSite]] = None,
29712971
session: Optional[str] = None,
2972-
measurements: Sequence[Measurement] = None,
2972+
measurements: Optional[Sequence[Measurement]] = None,
29732973
qualitative_evaluations: Optional[
29742974
Sequence[QualitativeEvaluation]
29752975
] = None,
@@ -3079,7 +3079,7 @@ def __init__(
30793079
algorithm_id: Optional[AlgorithmIdentification] = None,
30803080
finding_sites: Optional[Sequence[FindingSite]] = None,
30813081
session: Optional[str] = None,
3082-
measurements: Sequence[Measurement] = None,
3082+
measurements: Optional[Sequence[Measurement]] = None,
30833083
qualitative_evaluations: Optional[
30843084
Sequence[QualitativeEvaluation]
30853085
] = None,
@@ -3235,7 +3235,7 @@ def __init__(
32353235
algorithm_id: Optional[AlgorithmIdentification] = None,
32363236
finding_sites: Optional[Sequence[FindingSite]] = None,
32373237
session: Optional[str] = None,
3238-
measurements: Sequence[Measurement] = None,
3238+
measurements: Optional[Sequence[Measurement]] = None,
32393239
qualitative_evaluations: Optional[
32403240
Sequence[QualitativeEvaluation]
32413241
] = None,
@@ -3519,7 +3519,7 @@ def __init__(
35193519
algorithm_id: Optional[AlgorithmIdentification] = None,
35203520
finding_sites: Optional[Sequence[FindingSite]] = None,
35213521
session: Optional[str] = None,
3522-
measurements: Sequence[Measurement] = None,
3522+
measurements: Optional[Sequence[Measurement]] = None,
35233523
qualitative_evaluations: Optional[
35243524
Sequence[QualitativeEvaluation]
35253525
] = None,

src/highdicom/sr/value_types.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ def _assert_value_type(
6060
6161
"""
6262
if not hasattr(dataset, 'ValueType'):
63-
raise AttributeError('Dataset is not an SR Content Item:\n{dataset}.')
63+
raise AttributeError(f'Dataset is not an SR Content Item:\n{dataset}.')
6464
if not dataset.ValueType == value_type.value:
6565
raise ValueError(
6666
'Dataset is not an SR Content Item with value type '

0 commit comments

Comments
 (0)