Skip to content

Commit

Permalink
move further modules to internals
Browse files Browse the repository at this point in the history
  • Loading branch information
RobinL committed May 20, 2024
1 parent 2f8964f commit 1c02a03
Show file tree
Hide file tree
Showing 36 changed files with 78 additions and 1,064 deletions.
1,038 changes: 26 additions & 1,012 deletions docs/topic_guides/comparisons/choosing_comparators.ipynb

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions scripts/generate_dialect_comparison_docs.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
import inspect
from pathlib import Path

from splink.comparison import Comparison
from splink.comparison_level import ComparisonLevel
from splink.internals.comparison import Comparison
from splink.internals.comparison_level import ComparisonLevel
from splink.dialect_base import DialectBase

# could always pick this up dynamically,
Expand Down
8 changes: 4 additions & 4 deletions splink/comparison_library.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@

from typing import Any, Iterable, List, Optional, Union

from . import comparison_level_library as cll
from .comparison_creator import ComparisonCreator
from .comparison_level_creator import ComparisonLevelCreator
from .comparison_level_library import CustomLevel, DateMetricType
from .internals import comparison_level_library as cll
from splink.internals.comparison_creator import ComparisonCreator
from splink.internals.comparison_level_creator import ComparisonLevelCreator
from splink.internals.comparison_level_library import CustomLevel, DateMetricType
from .misc import ensure_is_iterable


Expand Down
8 changes: 4 additions & 4 deletions splink/comparison_template_library.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

from typing import List, Type, Union

from . import comparison_level_library as cll
from .internals import comparison_level_library as cll
from splink.internals.column_expression import ColumnExpression
from .comparison_creator import ComparisonCreator
from .comparison_level_creator import ComparisonLevelCreator
from .comparison_level_library import DateMetricType
from splink.internals.comparison_creator import ComparisonCreator
from splink.internals.comparison_level_creator import ComparisonLevelCreator
from splink.internals.comparison_level_library import DateMetricType
from .misc import ensure_is_iterable

# alternatively we could stick an inheritance layer in these, just for typing:
Expand Down
2 changes: 1 addition & 1 deletion splink/dialects.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from typing import TYPE_CHECKING, Type, TypeVar, final

if TYPE_CHECKING:
from .comparison_level_library import (
from splink.internals.comparison_level_library import (
AbsoluteTimeDifferenceLevel,
ArrayIntersectLevel,
)
Expand Down
4 changes: 2 additions & 2 deletions splink/em_training_session.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
probability_two_random_records_match_iteration_chart,
)

from .comparison import Comparison
from .comparison_level import ComparisonLevel
from splink.internals.comparison import Comparison
from splink.internals.comparison_level import ComparisonLevel
from .comparison_vector_values import compute_comparison_vector_values_sql
from .constants import LEVEL_NOT_OBSERVED_TEXT
from .database_api import DatabaseAPISubClass
Expand Down
4 changes: 2 additions & 2 deletions splink/expectation_maximisation.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@

import pandas as pd

from .comparison import Comparison
from .comparison_level import ComparisonLevel
from splink.internals.comparison import Comparison
from splink.internals.comparison_level import ComparisonLevel
from .constants import LEVEL_NOT_OBSERVED_TEXT
from .database_api import DatabaseAPISubClass
from .input_column import InputColumn
Expand Down
4 changes: 2 additions & 2 deletions splink/comparison.py → splink/internals/comparison.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
from typing import TYPE_CHECKING, Any, List, Optional

from .comparison_level import ComparisonLevel, _default_m_values, _default_u_values
from .misc import dedupe_preserving_order, join_list_with_commas_final_and
from splink.misc import dedupe_preserving_order, join_list_with_commas_final_and

# https://stackoverflow.com/questions/39740632/python-type-hinting-without-cyclic-imports
if TYPE_CHECKING:
from .settings import ColumnInfoSettings
from splink.settings import ColumnInfoSettings


class Comparison:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
from splink.internals.column_expression import ColumnExpression
from .comparison import Comparison
from .comparison_level_creator import ComparisonLevelCreator
from .exceptions import SplinkException
from splink.exceptions import SplinkException


class ComparisonCreator(ABC):
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,16 @@
from sqlglot.optimizer.normalize import normalize
from sqlglot.optimizer.simplify import simplify

from .constants import LEVEL_NOT_OBSERVED_TEXT
from .input_column import InputColumn
from .misc import (
from splink.constants import LEVEL_NOT_OBSERVED_TEXT
from splink.input_column import InputColumn
from splink.misc import (
dedupe_preserving_order,
interpolate,
join_list_with_commas_final_and,
match_weight_to_bayes_factor,
)
from .parse_sql import get_columns_used_from_sql
from .sql_transform import sqlglot_tree_signature
from splink.parse_sql import get_columns_used_from_sql
from splink.sql_transform import sqlglot_tree_signature

logger = logging.getLogger(__name__)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

from .comparison_creator import ComparisonLevelCreator
from .comparison_level import ComparisonLevel
from .dialects import SplinkDialect
from splink.dialects import SplinkDialect


def _ensure_is_comparison_level_creator(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

from splink.internals.column_expression import ColumnExpression
from .comparison_level import ComparisonLevel
from .dialects import SplinkDialect
from splink.dialects import SplinkDialect


class ComparisonLevelCreator(ABC):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
# import composition functions for export
from .comparison_level_composition import And, Not, Or # NOQA: F401
from .comparison_level_creator import ComparisonLevelCreator
from .comparison_level_sql import great_circle_distance_km_sql
from .dialects import SplinkDialect
from splink.comparison_level_sql import great_circle_distance_km_sql
from splink.dialects import SplinkDialect

# type aliases:
T = TypeVar("T", bound=ComparisonLevelCreator)
Expand Down
4 changes: 2 additions & 2 deletions splink/linker.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@
render_splink_cluster_studio_html,
)

from .comparison import Comparison
from .comparison_level import ComparisonLevel
from splink.internals.comparison import Comparison
from splink.internals.comparison_level import ComparisonLevel
from .comparison_vector_distribution import (
comparison_vector_distribution_sql,
)
Expand Down
2 changes: 1 addition & 1 deletion splink/m_u_records_to_parameters.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import logging
from typing import Any, Dict, List

from .comparison_level import ComparisonLevel
from splink.internals.comparison_level import ComparisonLevel
from .constants import LEVEL_NOT_OBSERVED_TEXT

logger = logging.getLogger(__name__)
Expand Down
2 changes: 1 addition & 1 deletion splink/predict.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import logging
from typing import List

from .comparison import Comparison
from splink.internals.comparison import Comparison
from .input_column import InputColumn
from .misc import prob_to_bayes_factor, prob_to_match_weight
from .settings import CoreModelSettings, Settings
Expand Down
4 changes: 2 additions & 2 deletions splink/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
)
from splink.internals.charts import m_u_parameters_chart, match_weights_chart

from .comparison import Comparison
from .comparison_level import ComparisonLevel
from splink.internals.comparison import Comparison
from splink.internals.comparison_level import ComparisonLevel
from .input_column import InputColumn
from .misc import dedupe_preserving_order, prob_to_bayes_factor, prob_to_match_weight
from .parse_sql import get_columns_used_from_sql
Expand Down
2 changes: 1 addition & 1 deletion splink/settings_creator.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
from splink.internals.blocking_rule_creator import BlockingRuleCreator
from splink.internals.blocking_rule_creator_utils import to_blocking_rule_creator

from .comparison_creator import ComparisonCreator
from splink.internals.comparison_creator import ComparisonCreator
from .comparison_library import CustomComparison
from .settings import Settings

Expand Down
2 changes: 1 addition & 1 deletion splink/settings_validation/log_invalid_columns.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import sqlglot
import sqlglot.expressions

from ..comparison import Comparison
from splink.internals.comparison import Comparison
from ..parse_sql import parse_columns_in_sql
from .settings_column_cleaner import (
SettingsColumnCleaner,
Expand Down
2 changes: 1 addition & 1 deletion splink/waterfall_chart.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from copy import deepcopy
from typing import Any, Dict

from .comparison import Comparison
from splink.internals.comparison import Comparison
from .misc import prob_to_bayes_factor


Expand Down
4 changes: 2 additions & 2 deletions tests/literal_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@

import pytest

from splink.comparison_creator import ComparisonCreator
from splink.comparison_level_creator import ComparisonLevelCreator
from splink.internals.comparison_creator import ComparisonCreator
from splink.internals.comparison_level_creator import ComparisonLevelCreator


class ComparisonLevelTestSpec:
Expand Down
2 changes: 1 addition & 1 deletion tests/test_columns_selected.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

import pandas as pd

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
from splink.duckdb.database_api import DuckDBAPI
from splink.linker import Linker

Expand Down
2 changes: 1 addition & 1 deletion tests/test_comparison_level.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from pytest import mark, raises

from splink.comparison_level import ComparisonLevel
from splink.internals.comparison_level import ComparisonLevel

from .decorator import mark_with_dialects_excluding

Expand Down
2 changes: 1 addition & 1 deletion tests/test_comparison_level_composition.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import pandas as pd
import pytest

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
from splink.input_column import _get_dialect_quotes

from .decorator import mark_with_dialects_excluding
Expand Down
2 changes: 1 addition & 1 deletion tests/test_comparison_level_lib.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import pandas as pd

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll

from .decorator import mark_with_dialects_excluding

Expand Down
2 changes: 1 addition & 1 deletion tests/test_compound_comparison_levels.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import pandas as pd

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
import splink.comparison_library as cl
from splink.duckdb.database_api import DuckDBAPI
from splink.linker import Linker
Expand Down
2 changes: 1 addition & 1 deletion tests/test_date_levels_and_comparisons.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import pytest

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
import splink.comparison_library as cl
import splink.comparison_template_library as ctl
from splink.internals.column_expression import ColumnExpression
Expand Down
2 changes: 1 addition & 1 deletion tests/test_disable_tf_exact_match_detection.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import pandas as pd
import pytest

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
from splink import DuckDBAPI, Linker, SettingsCreator


Expand Down
2 changes: 1 addition & 1 deletion tests/test_full_example_duckdb.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import pyarrow.parquet as pq
import pytest

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
import splink.comparison_library as cl
from splink.blocking_analysis import count_comparisons_from_blocking_rule
from splink.duckdb.database_api import DuckDBAPI
Expand Down
2 changes: 1 addition & 1 deletion tests/test_full_example_spark.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import pytest
from pyspark.sql.types import StringType, StructField, StructType

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
import splink.comparison_library as cl
from splink.exploratory import completeness_chart, profile_columns
from splink.linker import Linker
Expand Down
2 changes: 1 addition & 1 deletion tests/test_km_distance_level.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import pandas as pd

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
import splink.comparison_library as cl
from splink.duckdb.database_api import DuckDBAPI
from splink.linker import Linker
Expand Down
2 changes: 1 addition & 1 deletion tests/test_new_comparison_levels.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import pandas as pd
import pytest

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
import splink.comparison_library as cl
import splink.comparison_template_library as ctl
from splink.internals.column_expression import ColumnExpression
Expand Down
2 changes: 1 addition & 1 deletion tests/test_new_db_api.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import os

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
import splink.comparison_library as cl
from splink import block_on
from splink.blocking_analysis import (
Expand Down
2 changes: 1 addition & 1 deletion tests/test_regex_param.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import pandas as pd
import pytest

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
from splink.internals.column_expression import ColumnExpression

from .decorator import mark_with_dialects_excluding
Expand Down
2 changes: 1 addition & 1 deletion tests/test_spark_udfs.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import pandas as pd

import splink.comparison_level_library as cll
import splink.internals.comparison_level_library as cll
from splink.linker import Linker
from tests.decorator import mark_with_dialects_including

Expand Down

0 comments on commit 1c02a03

Please sign in to comment.