collate-data-diff 0.11.6__tar.gz → 0.11.8__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.
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/PKG-INFO +5 -3
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/snowflake.py +1 -1
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/pyproject.toml +25 -23
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/LICENSE +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/README.md +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/__init__.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/__main__.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/abcs/__init__.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/abcs/compiler.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/abcs/database_types.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/cloud/__init__.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/cloud/data_source.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/cloud/datafold_api.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/config.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/__init__.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/_connect.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/base.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/bigquery.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/clickhouse.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/databricks.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/duckdb.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/mssql.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/mysql.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/oracle.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/postgresql.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/presto.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/redshift.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/trino.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/databases/vertica.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/dbt.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/dbt_config_validators.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/dbt_parser.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/diff_tables.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/errors.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/format.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/hashdiff_tables.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/info_tree.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/joindiff_tables.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/lexicographic_space.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/parse_time.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/py.typed +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/queries/__init__.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/queries/api.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/queries/ast_classes.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/queries/base.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/queries/extras.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/query_utils.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/schema.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/table_segment.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/thread_utils.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/tracking.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/utils.py +0 -0
- {collate_data_diff-0.11.6 → collate_data_diff-0.11.8}/data_diff/version.py +0 -0
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: collate-data-diff
|
|
3
|
-
Version: 0.11.
|
|
3
|
+
Version: 0.11.8
|
|
4
4
|
Summary: Command-line tool and Python library to efficiently diff rows across two different databases.
|
|
5
5
|
License: MIT
|
|
6
|
+
License-File: LICENSE
|
|
6
7
|
Author: Collate
|
|
7
8
|
Author-email: info@getcollate.io
|
|
8
9
|
Requires-Python: >=3.8.0,<4.0
|
|
@@ -19,6 +20,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
19
20
|
Classifier: Programming Language :: Python :: 3.11
|
|
20
21
|
Classifier: Programming Language :: Python :: 3.12
|
|
21
22
|
Classifier: Programming Language :: Python :: 3.13
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
22
24
|
Classifier: Topic :: Database :: Database Engines/Servers
|
|
23
25
|
Classifier: Typing :: Typed
|
|
24
26
|
Provides-Extra: all-dbs
|
|
@@ -52,7 +54,7 @@ Requires-Dist: psycopg2 ; extra == "postgresql" or extra == "redshift" or extra
|
|
|
52
54
|
Requires-Dist: pydantic (>=1.10.12)
|
|
53
55
|
Requires-Dist: pyodbc (>=4.0.39) ; extra == "mssql" or extra == "all-dbs"
|
|
54
56
|
Requires-Dist: rich
|
|
55
|
-
Requires-Dist: snowflake-connector-python (>=3.
|
|
57
|
+
Requires-Dist: snowflake-connector-python (>=3.15.0,<4.0.0) ; (python_version >= "3.9") and (extra == "snowflake" or extra == "all-dbs")
|
|
56
58
|
Requires-Dist: tabulate (>=0.9.0)
|
|
57
59
|
Requires-Dist: toml (>=0.10.2)
|
|
58
60
|
Requires-Dist: trino (>=0.314.0) ; extra == "trino" or extra == "all-dbs"
|
|
@@ -143,7 +143,7 @@ class Snowflake(Database):
|
|
|
143
143
|
|
|
144
144
|
# If a private key is used, read it from the specified path and pass it as "private_key" to the connector.
|
|
145
145
|
if key_bytes:
|
|
146
|
-
if "password" in kw and
|
|
146
|
+
if "password" in kw and kw.get("password") not in {"", None}:
|
|
147
147
|
raise ConnectError("Cannot use password and key at the same time")
|
|
148
148
|
if kw.get("private_key_passphrase"):
|
|
149
149
|
encoded_passphrase = kw.get("private_key_passphrase").encode()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "collate-data-diff"
|
|
3
|
-
version = "0.11.
|
|
3
|
+
version = "0.11.8"
|
|
4
4
|
description = "Command-line tool and Python library to efficiently diff rows across two different databases."
|
|
5
5
|
authors = ["Collate <info@getcollate.io>", "Datafold <data-diff@datafold.com>"]
|
|
6
6
|
license = "MIT"
|
|
@@ -32,7 +32,9 @@ mysql-connector-python = [
|
|
|
32
32
|
{version=">=9.1", python = ">=3.9", optional=true}
|
|
33
33
|
]
|
|
34
34
|
psycopg2 = {version="*", optional=true}
|
|
35
|
-
snowflake-connector-python =
|
|
35
|
+
snowflake-connector-python = [
|
|
36
|
+
{version = ">=3.15.0,<4.0.0", python = ">=3.9", optional=true}
|
|
37
|
+
]
|
|
36
38
|
cryptography = {version="*", optional=true}
|
|
37
39
|
trino = {version=">=0.314.0", optional=true}
|
|
38
40
|
presto-python-client = {version="*", optional=true}
|
|
@@ -50,27 +52,6 @@ typing-extensions = ">=4.0.1"
|
|
|
50
52
|
attrs = ">=23.1.0"
|
|
51
53
|
mashumaro = {version = ">=2.9,<3.11.0", extras = ["msgpack"]}
|
|
52
54
|
|
|
53
|
-
[tool.poetry.dev-dependencies]
|
|
54
|
-
parameterized = "*"
|
|
55
|
-
unittest-parallel = "*"
|
|
56
|
-
preql = ">=0.2.19"
|
|
57
|
-
mysql-connector-python = [
|
|
58
|
-
{version=">=8.0.29", python = "<3.9"},
|
|
59
|
-
{version=">=9.1", python = ">=3.9"}
|
|
60
|
-
]
|
|
61
|
-
psycopg2 = "*"
|
|
62
|
-
snowflake-connector-python = ">=3.13.1,<4.0.0"
|
|
63
|
-
cryptography = "*"
|
|
64
|
-
trino = ">=0.314.0"
|
|
65
|
-
presto-python-client = ">=0.8.3"
|
|
66
|
-
clickhouse-driver = "*"
|
|
67
|
-
vertica-python = "*"
|
|
68
|
-
duckdb = ">=0.9.0"
|
|
69
|
-
dbt-core = ">=1.0.0"
|
|
70
|
-
ruff = ">=0.1.4"
|
|
71
|
-
# google-cloud-bigquery = "*"
|
|
72
|
-
# databricks-sql-connector = "*"
|
|
73
|
-
|
|
74
55
|
[tool.poetry.extras]
|
|
75
56
|
# When adding, update also: README + dev deps just above
|
|
76
57
|
preql = ["preql"]
|
|
@@ -93,6 +74,27 @@ all-dbs = [
|
|
|
93
74
|
|
|
94
75
|
[tool.poetry.group.dev.dependencies]
|
|
95
76
|
pre-commit = ">=3.5.0"
|
|
77
|
+
parameterized = "*"
|
|
78
|
+
unittest-parallel = "*"
|
|
79
|
+
preql = ">=0.2.19"
|
|
80
|
+
mysql-connector-python = [
|
|
81
|
+
{version=">=8.0.29", python = "<3.9"},
|
|
82
|
+
{version=">=9.1", python = ">=3.9"}
|
|
83
|
+
]
|
|
84
|
+
psycopg2 = "*"
|
|
85
|
+
snowflake-connector-python = [
|
|
86
|
+
{version=">=3.13.1,<4.0.0", python = ">=3.9"}
|
|
87
|
+
]
|
|
88
|
+
cryptography = "*"
|
|
89
|
+
trino = ">=0.314.0"
|
|
90
|
+
presto-python-client = ">=0.8.3"
|
|
91
|
+
clickhouse-driver = "*"
|
|
92
|
+
vertica-python = "*"
|
|
93
|
+
duckdb = ">=0.9.0"
|
|
94
|
+
dbt-core = ">=1.0.0"
|
|
95
|
+
ruff = ">=0.1.4"
|
|
96
|
+
# google-cloud-bigquery = "*"
|
|
97
|
+
# databricks-sql-connector = "*"
|
|
96
98
|
|
|
97
99
|
[build-system]
|
|
98
100
|
requires = ["poetry-core>=1.0.0"]
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|