dcs-sdk 1.5.1__tar.gz → 1.5.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/PKG-INFO +2 -2
  2. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/README.md +1 -1
  3. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/sybase.py +5 -15
  4. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/__version__.py +1 -1
  5. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/table.py +12 -14
  6. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/pyproject.toml +1 -1
  7. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/__init__.py +0 -0
  8. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/__main__.py +0 -0
  9. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/abcs/__init__.py +0 -0
  10. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/abcs/compiler.py +0 -0
  11. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/abcs/database_types.py +0 -0
  12. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/config.py +0 -0
  13. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/__init__.py +0 -0
  14. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/_connect.py +0 -0
  15. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/base.py +0 -0
  16. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/bigquery.py +0 -0
  17. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/clickhouse.py +0 -0
  18. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/databricks.py +0 -0
  19. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/duckdb.py +0 -0
  20. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/mssql.py +0 -0
  21. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/mysql.py +0 -0
  22. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/oracle.py +0 -0
  23. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/postgresql.py +0 -0
  24. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/presto.py +0 -0
  25. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/redshift.py +0 -0
  26. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/snowflake.py +0 -0
  27. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/trino.py +0 -0
  28. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/databases/vertica.py +0 -0
  29. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/diff_tables.py +0 -0
  30. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/errors.py +0 -0
  31. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/format.py +0 -0
  32. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/hashdiff_tables.py +0 -0
  33. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/info_tree.py +0 -0
  34. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/joindiff_tables.py +0 -0
  35. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/lexicographic_space.py +0 -0
  36. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/parse_time.py +0 -0
  37. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/py.typed +0 -0
  38. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/queries/__init__.py +0 -0
  39. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/queries/api.py +0 -0
  40. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/queries/ast_classes.py +0 -0
  41. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/queries/base.py +0 -0
  42. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/queries/extras.py +0 -0
  43. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/query_utils.py +0 -0
  44. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/schema.py +0 -0
  45. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/table_segment.py +0 -0
  46. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/thread_utils.py +0 -0
  47. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/utils.py +0 -0
  48. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/data_diff/version.py +0 -0
  49. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/__init__.py +0 -0
  50. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/__main__.py +0 -0
  51. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/cli/__init__.py +0 -0
  52. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/cli/cli.py +0 -0
  53. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/__init__.py +0 -0
  54. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/config/__init__.py +0 -0
  55. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/config/config_loader.py +0 -0
  56. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/data_diff/__init__.py +0 -0
  57. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/data_diff/data_differ.py +0 -0
  58. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/rules/__init__.py +0 -0
  59. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/rules/rules_mappping.py +0 -0
  60. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/rules/rules_repository.py +0 -0
  61. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/rules/schema_rules.py +0 -0
  62. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/__init__.py +0 -0
  63. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/serializer.py +0 -0
  64. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/similarity_score/__init__.py +0 -0
  65. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/similarity_score/base_provider.py +0 -0
  66. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/similarity_score/cosine_similarity_provider.py +0 -0
  67. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/similarity_score/jaccard_provider.py +0 -0
  68. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/similarity_score/levenshtein_distance_provider.py +0 -0
  69. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/themes.py +0 -0
  70. {dcs_sdk-1.5.1 → dcs_sdk-1.5.3}/dcs_sdk/sdk/utils/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: dcs-sdk
3
- Version: 1.5.1
3
+ Version: 1.5.3
4
4
  Summary: SDK for DataChecks
5
5
  Author: Waterdip Labs
6
6
  Author-email: hello@waterdip.ai
@@ -60,7 +60,7 @@ Requires-Dist: vertica-python (>=1.4.0) ; extra == "vertica" or extra == "all-db
60
60
  Description-Content-Type: text/markdown
61
61
 
62
62
  <h1 align="center">
63
- DCS SDK v1.5.1
63
+ DCS SDK v1.5.3
64
64
  </h1>
65
65
 
66
66
  > SDK for DataChecks
@@ -1,5 +1,5 @@
1
1
  <h1 align="center">
2
- DCS SDK v1.5.1
2
+ DCS SDK v1.5.3
3
3
  </h1>
4
4
 
5
5
  > SDK for DataChecks
@@ -488,10 +488,10 @@ class Sybase(ThreadedDatabase):
488
488
 
489
489
  conn_dict["host"] = host or server
490
490
  try:
491
- logger.debug(f"Attempting FreeTDS connection with config: {conn_dict}")
491
+ logger.debug("Attempting FreeTDS connection..")
492
492
  self._conn = self._sybase.connect(**conn_dict)
493
493
  self._conn.timeout = max_query_timeout
494
- logger.info(f"Successfully connected to Sybase using FreeTDS: {conn_dict}")
494
+ logger.info("Successfully connected to Sybase using FreeTDS")
495
495
  return self._conn
496
496
  except Exception as e:
497
497
  error_msg = f"Failed to connect to Sybase with FreeTDS: {str(e)}"
@@ -565,23 +565,13 @@ class Sybase(ThreadedDatabase):
565
565
  final_config.update(ase_config)
566
566
 
567
567
  try:
568
- logger.debug(f"Attempting connection with config: {final_config}")
568
+ logger.debug(f"Attempting connection..")
569
569
  self._conn = self._sybase.connect(**final_config)
570
570
  self._conn.timeout = max_query_timeout
571
- logger.info(
572
- f"Successfully connected to Sybase using: "
573
- f"driver={driver}, "
574
- f"{attempt['key']}={attempt['value']}, "
575
- f"port_config={port_config}, "
576
- f"ase_config={ase_config}"
577
- )
571
+ logger.info(f"Successfully connected to Sybase using: driver={driver}")
578
572
  return self._conn
579
573
  except Exception as e:
580
- error_msg = (
581
- f"Failed with {attempt['key']}={attempt['value']}, "
582
- f"port_config={port_config}, "
583
- f"ase_config={ase_config}: {str(e)}"
584
- )
574
+ error_msg = "Failed to connect to sybase"
585
575
  logger.debug(error_msg)
586
576
  errors.append(error_msg)
587
577
  continue
@@ -12,4 +12,4 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
- __version__ = "1.5.1"
15
+ __version__ = "1.5.3"
@@ -240,31 +240,29 @@ def differ_rows(
240
240
  table_data.append(obj)
241
241
  pk_value = tuple(column_values[col] for col in pk_key_cols)
242
242
 
243
+ if sign == "-" and pk_value in exclusive_source_set:
244
+ if pk_value not in seen_ex_source and (limit is None or len(exclusive_to_source) < limit):
245
+ masked_obj = apply_masking(obj, src_masking_cols, masking_character)
246
+ exclusive_to_source.append(masked_obj)
247
+ seen_ex_source.add(pk_value)
248
+
249
+ if sign == "+" and pk_value in exclusive_target_set:
250
+ if pk_value not in seen_ex_target and (limit is None or len(exclusive_to_target) < limit):
251
+ masked_obj = apply_masking(obj, tgt_masking_cols, masking_character)
252
+ exclusive_to_target.append(masked_obj)
253
+ seen_ex_target.add(pk_value)
254
+
243
255
  if sign == "-" and pk_value in source_duplicates:
244
256
  total_source_duplicates += 1
245
257
  if limit is None or len(duplicates_in_source) < limit:
246
258
  masked_obj = apply_masking(obj, src_masking_cols, masking_character)
247
259
  duplicates_in_source.append(masked_obj)
248
- continue
249
260
 
250
261
  if sign == "+" and pk_value in target_duplicates:
251
262
  total_target_duplicates += 1
252
263
  if limit is None or len(duplicates_in_target) < limit:
253
264
  masked_obj = apply_masking(obj, tgt_masking_cols, masking_character)
254
265
  duplicates_in_target.append(masked_obj)
255
- continue
256
-
257
- if sign == "-" and pk_value in exclusive_source_set:
258
- if pk_value not in seen_ex_source and (limit is None or len(exclusive_to_source) < limit):
259
- masked_obj = apply_masking(obj, src_masking_cols, masking_character)
260
- exclusive_to_source.append(masked_obj)
261
- seen_ex_source.add(pk_value)
262
-
263
- elif sign == "+" and pk_value in exclusive_target_set:
264
- if pk_value not in seen_ex_target and (limit is None or len(exclusive_to_target) < limit):
265
- masked_obj = apply_masking(obj, tgt_masking_cols, masking_character)
266
- exclusive_to_target.append(masked_obj)
267
- seen_ex_target.add(pk_value)
268
266
 
269
267
  if pk_value in diff_pks_to_collect:
270
268
  if pk_value not in diff_records_dict:
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "dcs-sdk"
3
- version = "1.5.1"
3
+ version = "1.5.3"
4
4
  description = "SDK for DataChecks"
5
5
  authors = ["Waterdip Labs <hello@waterdip.ai>"]
6
6
  readme = "README.md"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes