Skip to content

Commit 37e2725

Browse files
authored
[TIDY-FIRST] Fix isort for dbt-semantic-interfaces (#10394)
* Correct `isort` configuration to include dbt-semantic-interfaces as internal We thought we were already doing this. However, we accidentally missed the last `s` of `dbt-semantic-interfaces`, so imports from dbt-semantic-interfaces were not being identified as an internal package by isort. This fixes that. * Run isort using updated configs to mark `dbt-semantic-interfaces` as included
1 parent 37fd299 commit 37e2725

19 files changed

+72
-80
lines changed

.isort.cfg

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
[settings]
22
profile=black
33
extend_skip_glob=.github/*,third-party-stubs/*,scripts/*
4-
known_first_party=dbt,dbt_adapters,dbt_common,dbt_extractor,dbt_semantic_interface
4+
known_first_party=dbt,dbt_adapters,dbt_common,dbt_extractor,dbt_semantic_interfaces

core/dbt/artifacts/resources/v1/metric.py

+7-8
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,6 @@
22
from dataclasses import dataclass, field
33
from typing import Any, Dict, List, Literal, Optional
44

5-
from dbt_semantic_interfaces.references import MeasureReference, MetricReference
6-
from dbt_semantic_interfaces.type_enums import (
7-
ConversionCalculationType,
8-
MetricType,
9-
PeriodAggregation,
10-
TimeGranularity,
11-
)
12-
135
from dbt.artifacts.resources.base import GraphResource
146
from dbt.artifacts.resources.types import NodeType
157
from dbt.artifacts.resources.v1.components import DependsOn, RefArgs
@@ -19,6 +11,13 @@
1911
)
2012
from dbt_common.contracts.config.base import BaseConfig, CompareBehavior, MergeBehavior
2113
from dbt_common.dataclass_schema import dbtClassMixin
14+
from dbt_semantic_interfaces.references import MeasureReference, MetricReference
15+
from dbt_semantic_interfaces.type_enums import (
16+
ConversionCalculationType,
17+
MetricType,
18+
PeriodAggregation,
19+
TimeGranularity,
20+
)
2221

2322
"""
2423
The following classes are dataclasses which are used to construct the Metric

core/dbt/artifacts/resources/v1/saved_query.py

+3-4
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,6 @@
44
from dataclasses import dataclass, field
55
from typing import Any, Dict, List, Literal, Optional
66

7-
from dbt_semantic_interfaces.type_enums.export_destination_type import (
8-
ExportDestinationType,
9-
)
10-
117
from dbt.artifacts.resources.base import GraphResource
128
from dbt.artifacts.resources.types import NodeType
139
from dbt.artifacts.resources.v1.components import DependsOn, RefArgs
@@ -17,6 +13,9 @@
1713
)
1814
from dbt_common.contracts.config.base import BaseConfig, CompareBehavior, MergeBehavior
1915
from dbt_common.dataclass_schema import dbtClassMixin
16+
from dbt_semantic_interfaces.type_enums.export_destination_type import (
17+
ExportDestinationType,
18+
)
2019

2120

2221
@dataclass

core/dbt/artifacts/resources/v1/semantic_layer_components.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
from dataclasses import dataclass
22
from typing import List, Sequence, Tuple
33

4+
from dbt_common.dataclass_schema import dbtClassMixin
45
from dbt_semantic_interfaces.call_parameter_sets import FilterCallParameterSets
56
from dbt_semantic_interfaces.parsing.where_filter.where_filter_parser import (
67
WhereFilterParser,
78
)
89

9-
from dbt_common.dataclass_schema import dbtClassMixin
10-
1110

1211
@dataclass
1312
class WhereFilter(dbtClassMixin):

core/dbt/artifacts/resources/v1/semantic_model.py

+5-6
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22
from dataclasses import dataclass, field
33
from typing import Any, Dict, List, Optional, Sequence
44

5+
from dbt.artifacts.resources import SourceFileMetadata
6+
from dbt.artifacts.resources.base import GraphResource
7+
from dbt.artifacts.resources.v1.components import DependsOn, RefArgs
8+
from dbt_common.contracts.config.base import BaseConfig, CompareBehavior, MergeBehavior
9+
from dbt_common.dataclass_schema import dbtClassMixin
510
from dbt_semantic_interfaces.references import (
611
DimensionReference,
712
EntityReference,
@@ -17,12 +22,6 @@
1722
TimeGranularity,
1823
)
1924

20-
from dbt.artifacts.resources import SourceFileMetadata
21-
from dbt.artifacts.resources.base import GraphResource
22-
from dbt.artifacts.resources.v1.components import DependsOn, RefArgs
23-
from dbt_common.contracts.config.base import BaseConfig, CompareBehavior, MergeBehavior
24-
from dbt_common.dataclass_schema import dbtClassMixin
25-
2625
"""
2726
The classes in this file are dataclasses which are used to construct the Semantic
2827
Model node in dbt-core. Additionally, these classes need to at a minimum support

core/dbt/contracts/graph/metrics.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
from typing import Any, Dict, Iterator, List
22

3-
from dbt_semantic_interfaces.type_enums import MetricType
4-
53
from dbt.contracts.graph.manifest import Manifest, Metric
4+
from dbt_semantic_interfaces.type_enums import MetricType
65

76
DERIVED_METRICS = [MetricType.DERIVED, MetricType.RATIO]
87
BASE_METRICS = [MetricType.SIMPLE, MetricType.CUMULATIVE, MetricType.CONVERSION]

core/dbt/contracts/graph/semantic_manifest.py

+6-7
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
from dbt.constants import TIME_SPINE_MODEL_NAME
2+
from dbt.events.types import SemanticValidationFailure
3+
from dbt.exceptions import ParsingError
4+
from dbt_common.clients.system import write_file
5+
from dbt_common.events.base_types import EventLevel
6+
from dbt_common.events.functions import fire_event
17
from dbt_semantic_interfaces.implementations.metric import PydanticMetric
28
from dbt_semantic_interfaces.implementations.project_configuration import (
39
PydanticProjectConfiguration,
@@ -15,13 +21,6 @@
1521
SemanticManifestValidator,
1622
)
1723

18-
from dbt.constants import TIME_SPINE_MODEL_NAME
19-
from dbt.events.types import SemanticValidationFailure
20-
from dbt.exceptions import ParsingError
21-
from dbt_common.clients.system import write_file
22-
from dbt_common.events.base_types import EventLevel
23-
from dbt_common.events.functions import fire_event
24-
2524

2625
class SemanticManifest:
2726
def __init__(self, manifest) -> None:

core/dbt/contracts/graph/unparsed.py

+4-5
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,6 @@
44
from pathlib import Path
55
from typing import Any, Dict, List, Literal, Optional, Sequence, Union
66

7-
from dbt_semantic_interfaces.type_enums import (
8-
ConversionCalculationType,
9-
PeriodAggregation,
10-
)
11-
127
# trigger the PathEncoder
138
import dbt_common.helper_types # noqa:F401
149
from dbt import deprecations
@@ -42,6 +37,10 @@
4237
dbtClassMixin,
4338
)
4439
from dbt_common.exceptions import DbtInternalError
40+
from dbt_semantic_interfaces.type_enums import (
41+
ConversionCalculationType,
42+
PeriodAggregation,
43+
)
4544

4645

4746
@dataclass

core/dbt/parser/manifest.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@
1010
from typing import Any, Callable, Dict, List, Mapping, Optional, Set, Tuple, Type, Union
1111

1212
import msgpack
13-
from dbt_semantic_interfaces.enum_extension import assert_values_exhausted
14-
from dbt_semantic_interfaces.type_enums import MetricType
1513

1614
import dbt.deprecations
1715
import dbt.exceptions
@@ -119,6 +117,8 @@
119117
from dbt_common.events.types import Note
120118
from dbt_common.exceptions.base import DbtValidationError
121119
from dbt_common.helper_types import PathSet
120+
from dbt_semantic_interfaces.enum_extension import assert_values_exhausted
121+
from dbt_semantic_interfaces.type_enums import MetricType
122122

123123
PERF_INFO_FILE_NAME = "perf_info.json"
124124

core/dbt/parser/schema_yaml_readers.py

+9-10
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,5 @@
11
from typing import Any, Dict, List, Optional, Union
22

3-
from dbt_semantic_interfaces.type_enums import (
4-
AggregationType,
5-
ConversionCalculationType,
6-
DimensionType,
7-
EntityType,
8-
MetricType,
9-
PeriodAggregation,
10-
TimeGranularity,
11-
)
12-
133
from dbt.artifacts.resources import (
144
ConversionTypeParams,
155
CumulativeTypeParams,
@@ -67,6 +57,15 @@
6757
from dbt.parser.schemas import ParseResult, SchemaParser, YamlReader
6858
from dbt_common.dataclass_schema import ValidationError
6959
from dbt_common.exceptions import DbtInternalError
60+
from dbt_semantic_interfaces.type_enums import (
61+
AggregationType,
62+
ConversionCalculationType,
63+
DimensionType,
64+
EntityType,
65+
MetricType,
66+
PeriodAggregation,
67+
TimeGranularity,
68+
)
7069

7170

7271
def parse_where_filter(

tests/functional/metrics/test_metrics.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
import pytest
2-
from dbt_semantic_interfaces.type_enums.period_agg import PeriodAggregation
3-
from dbt_semantic_interfaces.type_enums.time_granularity import TimeGranularity
42

53
from dbt.artifacts.resources.v1.metric import CumulativeTypeParams, MetricTimeWindow
64
from dbt.cli.main import dbtRunner
75
from dbt.contracts.graph.manifest import Manifest
86
from dbt.exceptions import ParsingError
97
from dbt.tests.util import get_manifest, run_dbt
8+
from dbt_semantic_interfaces.type_enums.period_agg import PeriodAggregation
9+
from dbt_semantic_interfaces.type_enums.time_granularity import TimeGranularity
1010
from tests.functional.metrics.fixtures import (
1111
basic_metrics_yml,
1212
conversion_metric_yml,

tests/functional/saved_queries/test_configs.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import pytest
2-
from dbt_semantic_interfaces.type_enums.export_destination_type import (
3-
ExportDestinationType,
4-
)
52

63
from dbt.contracts.graph.manifest import Manifest
74
from dbt.tests.util import update_config_file
5+
from dbt_semantic_interfaces.type_enums.export_destination_type import (
6+
ExportDestinationType,
7+
)
88
from tests.functional.assertions.test_runner import dbtTestRunner
99
from tests.functional.configs.fixtures import BaseConfigProject
1010
from tests.functional.saved_queries.fixtures import (

tests/functional/saved_queries/test_saved_query_parsing.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33
from typing import List
44

55
import pytest
6-
from dbt_semantic_interfaces.type_enums.export_destination_type import (
7-
ExportDestinationType,
8-
)
96

107
from dbt.contracts.graph.manifest import Manifest
118
from dbt.tests.util import run_dbt, write_file
129
from dbt_common.events.base_types import BaseEvent
10+
from dbt_semantic_interfaces.type_enums.export_destination_type import (
11+
ExportDestinationType,
12+
)
1313
from tests.functional.assertions.test_runner import dbtTestRunner
1414
from tests.functional.saved_queries.fixtures import (
1515
saved_queries_with_defaults_yml,

tests/functional/semantic_models/test_semantic_model_parsing.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
from typing import List
22

33
import pytest
4-
from dbt_semantic_interfaces.type_enums.time_granularity import TimeGranularity
54

65
from dbt.contracts.graph.manifest import Manifest
76
from dbt.tests.util import write_file
87
from dbt_common.events.base_types import BaseEvent
8+
from dbt_semantic_interfaces.type_enums.time_granularity import TimeGranularity
99
from tests.functional.assertions.test_runner import dbtTestRunner
1010
from tests.functional.semantic_models.fixtures import (
1111
fct_revenue_sql,

tests/unit/contracts/graph/test_manifest.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99

1010
import freezegun
1111
import pytest
12-
from dbt_semantic_interfaces.type_enums import MetricType
1312

1413
import dbt.flags
1514
import dbt.version
@@ -42,6 +41,7 @@
4241
from dbt.flags import set_from_args
4342
from dbt.node_types import NodeType
4443
from dbt_common.events.functions import reset_metadata_vars
44+
from dbt_semantic_interfaces.type_enums import MetricType
4545
from tests.unit.utils import (
4646
MockDocumentation,
4747
MockGenerateMacro,

tests/unit/contracts/graph/test_nodes_parsed.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from dataclasses import replace
44

55
import pytest
6-
from dbt_semantic_interfaces.type_enums import MetricType
76
from hypothesis import given
87
from hypothesis.strategies import builds, lists
98

@@ -53,6 +52,7 @@
5352
)
5453
from dbt.node_types import AccessType, NodeType
5554
from dbt_common.dataclass_schema import ValidationError
55+
from dbt_semantic_interfaces.type_enums import MetricType
5656
from tests.unit.utils import (
5757
ContractTestCase,
5858
assert_fails_validation,

tests/unit/graph/test_nodes.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,6 @@
33
from typing import List
44

55
import pytest
6-
from dbt_semantic_interfaces.references import MeasureReference
7-
from dbt_semantic_interfaces.type_enums import (
8-
AggregationType,
9-
DimensionType,
10-
EntityType,
11-
)
126
from freezegun import freeze_time
137

148
from dbt.artifacts.resources import (
@@ -28,6 +22,12 @@
2822
ConstraintType,
2923
ModelLevelConstraint,
3024
)
25+
from dbt_semantic_interfaces.references import MeasureReference
26+
from dbt_semantic_interfaces.type_enums import (
27+
AggregationType,
28+
DimensionType,
29+
EntityType,
30+
)
3131
from tests.unit.fixtures import generic_test_node, model_node
3232

3333

tests/unit/test_semantic_layer_nodes_satisfy_protocols.py

+15-15
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,6 @@
22
from typing import Protocol, runtime_checkable
33

44
import pytest
5-
from dbt_semantic_interfaces.protocols import WhereFilter as WhereFilterProtocol
6-
from dbt_semantic_interfaces.protocols import dimension as DimensionProtocols
7-
from dbt_semantic_interfaces.protocols import entity as EntityProtocols
8-
from dbt_semantic_interfaces.protocols import measure as MeasureProtocols
9-
from dbt_semantic_interfaces.protocols import metadata as MetadataProtocols
10-
from dbt_semantic_interfaces.protocols import metric as MetricProtocols
11-
from dbt_semantic_interfaces.protocols import saved_query as SavedQueryProtocols
12-
from dbt_semantic_interfaces.protocols import semantic_model as SemanticModelProtocols
13-
from dbt_semantic_interfaces.type_enums import (
14-
AggregationType,
15-
DimensionType,
16-
EntityType,
17-
MetricType,
18-
TimeGranularity,
19-
)
205
from hypothesis import given
216
from hypothesis.strategies import builds, none, text
227

@@ -43,6 +28,21 @@
4328
)
4429
from dbt.contracts.graph.nodes import Metric, SavedQuery, SemanticModel
4530
from dbt.node_types import NodeType
31+
from dbt_semantic_interfaces.protocols import WhereFilter as WhereFilterProtocol
32+
from dbt_semantic_interfaces.protocols import dimension as DimensionProtocols
33+
from dbt_semantic_interfaces.protocols import entity as EntityProtocols
34+
from dbt_semantic_interfaces.protocols import measure as MeasureProtocols
35+
from dbt_semantic_interfaces.protocols import metadata as MetadataProtocols
36+
from dbt_semantic_interfaces.protocols import metric as MetricProtocols
37+
from dbt_semantic_interfaces.protocols import saved_query as SavedQueryProtocols
38+
from dbt_semantic_interfaces.protocols import semantic_model as SemanticModelProtocols
39+
from dbt_semantic_interfaces.type_enums import (
40+
AggregationType,
41+
DimensionType,
42+
EntityType,
43+
MetricType,
44+
TimeGranularity,
45+
)
4646

4747

4848
@runtime_checkable

tests/unit/utils/manifest.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
from typing import Any, Dict, List
22

33
import pytest
4-
from dbt_semantic_interfaces.type_enums import MetricType
54

65
from dbt.artifacts.resources import (
76
ExposureType,
@@ -43,6 +42,7 @@
4342
)
4443
from dbt.contracts.graph.unparsed import UnitTestInputFixture, UnitTestOutputFixture
4544
from dbt.node_types import NodeType
45+
from dbt_semantic_interfaces.type_enums import MetricType
4646

4747

4848
def make_model(

0 commit comments

Comments
 (0)