dbt-common 0.1.1__py3-none-any.whl → 0.1.5__py3-none-any.whl

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.
dbt_common/semver.py CHANGED
@@ -87,14 +87,18 @@ class VersionSpecifier(VersionSpecification):
87
87
 
88
88
  if not skip_matcher:
89
89
  matcher = self.matcher
90
- return "{}{}.{}.{}{}{}".format(matcher, self.major, self.minor, self.patch, prerelease, build)
90
+ return "{}{}.{}.{}{}{}".format(
91
+ matcher, self.major, self.minor, self.patch, prerelease, build
92
+ )
91
93
 
92
94
  @classmethod
93
95
  def from_version_string(cls, version_string):
94
96
  match = _VERSION_REGEX.match(version_string)
95
97
 
96
98
  if not match:
97
- raise dbt_common.exceptions.base.SemverError(f'"{version_string}" is not a valid semantic version.')
99
+ raise dbt_common.exceptions.base.SemverError(
100
+ f'"{version_string}" is not a valid semantic version.'
101
+ )
98
102
 
99
103
  matched = {k: v for k, v in match.groupdict().items() if v is not None}
100
104
 
@@ -154,15 +158,22 @@ class VersionSpecifier(VersionSpecification):
154
158
  return -1
155
159
  # else is equal and will fall through
156
160
 
157
- equal = (self.matcher == Matchers.GREATER_THAN_OR_EQUAL and other.matcher == Matchers.LESS_THAN_OR_EQUAL) or (
158
- self.matcher == Matchers.LESS_THAN_OR_EQUAL and other.matcher == Matchers.GREATER_THAN_OR_EQUAL
161
+ equal = (
162
+ self.matcher == Matchers.GREATER_THAN_OR_EQUAL
163
+ and other.matcher == Matchers.LESS_THAN_OR_EQUAL
164
+ ) or (
165
+ self.matcher == Matchers.LESS_THAN_OR_EQUAL
166
+ and other.matcher == Matchers.GREATER_THAN_OR_EQUAL
159
167
  )
160
168
  if equal:
161
169
  return 0
162
170
 
163
171
  lt = (
164
172
  (self.matcher == Matchers.LESS_THAN and other.matcher == Matchers.LESS_THAN_OR_EQUAL)
165
- or (other.matcher == Matchers.GREATER_THAN and self.matcher == Matchers.GREATER_THAN_OR_EQUAL)
173
+ or (
174
+ other.matcher == Matchers.GREATER_THAN
175
+ and self.matcher == Matchers.GREATER_THAN_OR_EQUAL
176
+ )
166
177
  or (self.is_upper_bound and other.is_lower_bound)
167
178
  )
168
179
  if lt:
@@ -170,7 +181,10 @@ class VersionSpecifier(VersionSpecification):
170
181
 
171
182
  gt = (
172
183
  (other.matcher == Matchers.LESS_THAN and self.matcher == Matchers.LESS_THAN_OR_EQUAL)
173
- or (self.matcher == Matchers.GREATER_THAN and other.matcher == Matchers.GREATER_THAN_OR_EQUAL)
184
+ or (
185
+ self.matcher == Matchers.GREATER_THAN
186
+ and other.matcher == Matchers.GREATER_THAN_OR_EQUAL
187
+ )
174
188
  or (self.is_lower_bound and other.is_upper_bound)
175
189
  )
176
190
  if gt:
@@ -340,7 +354,9 @@ class VersionRange:
340
354
 
341
355
  class UnboundedVersionSpecifier(VersionSpecifier):
342
356
  def __init__(self, *args, **kwargs) -> None:
343
- super().__init__(matcher=Matchers.EXACT, major=None, minor=None, patch=None, prerelease=None, build=None)
357
+ super().__init__(
358
+ matcher=Matchers.EXACT, major=None, minor=None, patch=None, prerelease=None, build=None
359
+ )
344
360
 
345
361
  def __str__(self):
346
362
  return "*"
@@ -451,5 +467,7 @@ def filter_installable(versions: List[str], install_prerelease: bool) -> List[st
451
467
  installable.append(version)
452
468
  installable_dict[str(version)] = version_string
453
469
  sorted_installable = sorted(installable)
454
- sorted_installable_original_versions = [str(installable_dict.get(str(version))) for version in sorted_installable]
470
+ sorted_installable_original_versions = [
471
+ str(installable_dict.get(str(version))) for version in sorted_installable
472
+ ]
455
473
  return sorted_installable_original_versions
dbt_common/tests.py ADDED
@@ -0,0 +1,15 @@
1
+ _TEST_CACHING_ENABLED: bool = False
2
+
3
+
4
+ def test_caching_enabled() -> bool:
5
+ return _TEST_CACHING_ENABLED
6
+
7
+
8
+ def enable_test_caching() -> None:
9
+ global _TEST_CACHING_ENABLED
10
+ _TEST_CACHING_ENABLED = True
11
+
12
+
13
+ def disable_test_caching() -> None:
14
+ global _TEST_CACHING_ENABLED
15
+ _TEST_CACHING_ENABLED = False
dbt_common/ui.py CHANGED
@@ -58,7 +58,8 @@ def red(text: str) -> str:
58
58
 
59
59
 
60
60
  def line_wrap_message(msg: str, subtract: int = 0, dedent: bool = True, prefix: str = "") -> str:
61
- """
61
+ """Line wrap a message to a given printer width.
62
+
62
63
  Line wrap the given message to PRINTER_WIDTH - {subtract}. Convert double
63
64
  newlines to newlines and avoid calling textwrap.fill() on them (like
64
65
  markdown)
@@ -8,7 +8,9 @@ import requests
8
8
 
9
9
 
10
10
  def connection_exception_retry(fn, max_attempts: int, attempt: int = 0):
11
- """Attempts to run a function that makes an external call, if the call fails
11
+ """Handle connection retries gracefully.
12
+
13
+ Attempts to run a function that makes an external call, if the call fails
12
14
  on a Requests exception or decompression issue (ReadError), it will be tried
13
15
  up to 5 more times. All exceptions that Requests explicitly raises inherit from
14
16
  requests.exceptions.RequestException. See https://github.com/dbt-labs/dbt-core/issues/4579
dbt_common/utils/dict.py CHANGED
@@ -37,11 +37,15 @@ def _merge(a, b):
37
37
  return to_return
38
38
 
39
39
 
40
- # http://stackoverflow.com/questions/20656135/python-deep-merge-dictionary-data
41
40
  def deep_merge(*args):
42
- """
43
- >>> dbt_common.utils.deep_merge({'a': 1, 'b': 2, 'c': 3}, {'a': 2}, {'a': 3, 'b': 1}) # noqa
41
+ """Deep merge dictionaries.
42
+
43
+ Example:
44
+ >>> dbt_common.utils.deep_merge(
45
+ ... {"a": 1, "b": 2, "c": 3}, {"a": 2}, {"a": 3, "b": 1}
46
+ ... ) # noqa
44
47
  {'a': 3, 'b': 1, 'c': 3}
48
+ From: http://stackoverflow.com/questions/20656135/python-deep-merge-dictionary-data
45
49
  """
46
50
  if len(args) == 0:
47
51
  return None
@@ -93,14 +97,17 @@ def _deep_map_render(
93
97
  else:
94
98
  container_types: Tuple[Type[Any], ...] = (list, dict)
95
99
  ok_types = container_types + atomic_types
96
- raise DbtConfigError("in _deep_map_render, expected one of {!r}, got {!r}".format(ok_types, type(value)))
100
+ raise DbtConfigError(
101
+ "in _deep_map_render, expected one of {!r}, got {!r}".format(ok_types, type(value))
102
+ )
97
103
 
98
104
  return ret
99
105
 
100
106
 
101
107
  def deep_map_render(func: Callable[[Any, Tuple[Union[str, int], ...]], Any], value: Any) -> Any:
102
- """This function renders a nested dictionary derived from a yaml
103
- file. It is used to render dbt_project.yml, profiles.yml, and
108
+ """This function renders a nested dictionary derived from a yaml file.
109
+
110
+ It is used to render dbt_project.yml, profiles.yml, and
104
111
  schema files.
105
112
 
106
113
  It maps the function func() onto each non-container value in 'value'
@@ -9,7 +9,7 @@ import sys
9
9
 
10
10
  DECIMALS: Tuple[Type[Any], ...]
11
11
  try:
12
- import cdecimal # typing: ignore
12
+ import cdecimal # type: ignore
13
13
  except ImportError:
14
14
  DECIMALS = (decimal.Decimal,)
15
15
  else:
@@ -24,7 +24,9 @@ def md5(string, charset="utf-8"):
24
24
 
25
25
 
26
26
  class JSONEncoder(json.JSONEncoder):
27
- """A 'custom' json encoder that does normal json encoder things, but also
27
+ """A 'custom' json encoder.
28
+
29
+ A 'custom' json encoder that does normal json encoder things, but also
28
30
  handles `Decimal`s and `Undefined`s. Decimals can lose precision because
29
31
  they get converted to floats. Undefined's are serialized to an empty string
30
32
  """
@@ -1,7 +1,10 @@
1
1
  import concurrent.futures
2
2
  from contextlib import contextmanager
3
+ from contextvars import ContextVar
3
4
  from typing import Protocol, Optional
4
5
 
6
+ from dbt_common.context import get_invocation_context, reliably_get_invocation_var
7
+
5
8
 
6
9
  class ConnectingExecutor(concurrent.futures.Executor):
7
10
  def submit_connected(self, adapter, conn_name, func, *args, **kwargs):
@@ -20,9 +23,13 @@ class SingleThreadedExecutor(ConnectingExecutor):
20
23
  if len(args) >= 2:
21
24
  self, fn, *args = args
22
25
  elif not args:
23
- raise TypeError("descriptor 'submit' of 'SingleThreadedExecutor' object needs an argument")
26
+ raise TypeError(
27
+ "descriptor 'submit' of 'SingleThreadedExecutor' object needs an argument"
28
+ )
24
29
  else:
25
- raise TypeError("submit expected at least 1 positional argument, got %d" % (len(args) - 1))
30
+ raise TypeError(
31
+ "submit expected at least 1 positional argument, got %d" % (len(args) - 1)
32
+ )
26
33
  fut = concurrent.futures.Future()
27
34
  try:
28
35
  result = fn(*args, **kwargs)
@@ -56,8 +63,17 @@ class HasThreadingConfig(Protocol):
56
63
  threads: Optional[int]
57
64
 
58
65
 
66
+ def _thread_initializer(invocation_context: ContextVar) -> None:
67
+ invocation_var = reliably_get_invocation_var()
68
+ invocation_var.set(invocation_context)
69
+
70
+
59
71
  def executor(config: HasThreadingConfig) -> ConnectingExecutor:
60
72
  if config.args.single_threaded:
61
73
  return SingleThreadedExecutor()
62
74
  else:
63
- return MultiThreadedExecutor(max_workers=config.threads)
75
+ return MultiThreadedExecutor(
76
+ max_workers=config.threads,
77
+ initializer=_thread_initializer,
78
+ initargs=(get_invocation_context(),),
79
+ )
@@ -1,11 +1,20 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dbt-common
3
- Version: 0.1.1
3
+ Version: 0.1.5
4
4
  Summary: The shared common utilities that dbt-core and adapter implementations use
5
+ Project-URL: Homepage, https://github.com/dbt-labs/dbt-common
6
+ Project-URL: Repository, https://github.com/dbt-labs/dbt-common.git
7
+ Project-URL: Issues, https://github.com/dbt-labs/dbt-common/issues
8
+ Project-URL: Changelog, https://github.com/dbt-labs/dbt-common/blob/main/CHANGELOG.md
5
9
  Author-email: dbt Labs <info@dbtlabs.com>
10
+ Maintainer-email: dbt Labs <info@dbtlabs.com>
6
11
  License-Expression: Apache-2.0
7
12
  License-File: LICENSE
8
- Classifier: Development Status :: 4 - Beta
13
+ Classifier: Development Status :: 2 - Pre-Alpha
14
+ Classifier: License :: OSI Approved :: Apache Software License
15
+ Classifier: Operating System :: MacOS :: MacOS X
16
+ Classifier: Operating System :: Microsoft :: Windows
17
+ Classifier: Operating System :: POSIX :: Linux
9
18
  Classifier: Programming Language :: Python
10
19
  Classifier: Programming Language :: Python :: 3.8
11
20
  Classifier: Programming Language :: Python :: 3.9
@@ -25,6 +34,28 @@ Requires-Dist: protobuf>=4.0.0
25
34
  Requires-Dist: python-dateutil~=2.0
26
35
  Requires-Dist: requests<3.0.0
27
36
  Requires-Dist: typing-extensions~=4.4
37
+ Provides-Extra: build
38
+ Requires-Dist: check-wheel-contents; extra == 'build'
39
+ Requires-Dist: twine; extra == 'build'
40
+ Requires-Dist: wheel; extra == 'build'
41
+ Provides-Extra: lint
42
+ Requires-Dist: black~=23.3; extra == 'lint'
43
+ Requires-Dist: flake8; extra == 'lint'
44
+ Requires-Dist: flake8-docstrings; extra == 'lint'
45
+ Requires-Dist: flake8-pyproject; extra == 'lint'
46
+ Requires-Dist: mypy~=1.3; extra == 'lint'
47
+ Requires-Dist: pytest~=7.3; extra == 'lint'
48
+ Requires-Dist: types-jinja2~=2.11; extra == 'lint'
49
+ Requires-Dist: types-jsonschema~=4.17; extra == 'lint'
50
+ Requires-Dist: types-protobuf~=4.24.0; extra == 'lint'
51
+ Requires-Dist: types-python-dateutil~=2.8; extra == 'lint'
52
+ Requires-Dist: types-pyyaml~=6.0; extra == 'lint'
53
+ Requires-Dist: types-requests; extra == 'lint'
54
+ Provides-Extra: test
55
+ Requires-Dist: hypothesis~=6.87; extra == 'test'
56
+ Requires-Dist: pytest-cov~=4.1; extra == 'test'
57
+ Requires-Dist: pytest-xdist~=3.2; extra == 'test'
58
+ Requires-Dist: pytest~=7.3; extra == 'test'
28
59
  Description-Content-Type: text/markdown
29
60
 
30
61
  ## Understanding dbt-common
@@ -0,0 +1,60 @@
1
+ dbt_common/__about__.py,sha256=P4QVYS_PjOFh5NqXToCnBO5ztkaEXiPmgf0LfaGzTcM,18
2
+ dbt_common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
+ dbt_common/constants.py,sha256=DJIVuTBl5OZpjdFINHon8MNj_XT-Rrp41dAoAuQL2QI,38
4
+ dbt_common/context.py,sha256=XaxjooEU8uHp61TZqZ9jGmKtjjQm81nxJnSjdJmEo8E,1453
5
+ dbt_common/dataclass_schema.py,sha256=CRSQQmzY4QIBzL54aomPT34o3u8T6Zu6W1XZmWfKs-A,5254
6
+ dbt_common/helper_types.py,sha256=jW5Yv0Gwx4M14IEX4RID7k4s0hJiKHIzU8CxACQ1Y7k,3491
7
+ dbt_common/invocation.py,sha256=Zw8jRPn75oi2VrUD6qGvaCDtSyIfqm5pJlPpRjs3s1E,202
8
+ dbt_common/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
+ dbt_common/semver.py,sha256=2zoZYCQ7PfswqslT2NHuMGgPGMuMuX-yRThVoqfDWQU,13954
10
+ dbt_common/tests.py,sha256=6lC_JuRtoYO6cbAF8-R5aTM4HtQiM_EH8X5m_97duGY,315
11
+ dbt_common/ui.py,sha256=P7ZkhLLgjTjChR_ZZvTiWU3H_AyRjgU12-EoC44-1o0,2495
12
+ dbt_common/clients/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
+ dbt_common/clients/_jinja_blocks.py,sha256=xoJK9Y0F93U2PKfT_3SJbBopCGYCtl7LiwKuylXnrEE,12947
14
+ dbt_common/clients/agate_helper.py,sha256=n5Q0_gJPbBhFvjd286NGYGlcTtdEExYmIT3968lppyg,9124
15
+ dbt_common/clients/jinja.py,sha256=i6VQ94FU4F6ZCQLHTxNSeGHmvyYSIe34nDhNkH6wO08,18502
16
+ dbt_common/clients/system.py,sha256=05h3d99xTNLBIUfaQau6atou_YVwqsNZ2dCOLPRngOs,19513
17
+ dbt_common/contracts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
+ dbt_common/contracts/constraints.py,sha256=hyqTW2oPB1dfXWW388LWnL-EFdqTpQciKISH3CeLkro,1267
19
+ dbt_common/contracts/util.py,sha256=RZpeEExSKdyFwTq7MM3rd1ZkAf11C7I-bgppUJ6SXOg,741
20
+ dbt_common/contracts/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
+ dbt_common/contracts/config/base.py,sha256=jWLf6SBUy7wngYs0Z5Zmx1O1v86XRueYaABlZ0W2Bxc,8356
22
+ dbt_common/contracts/config/materialization.py,sha256=rahC72qZ0-jB8oPwxyPooZXc5NJ-smg74g2HnGOMj34,256
23
+ dbt_common/contracts/config/metadata.py,sha256=X47-tEA8q2ZfSMcYv0godUwTSVjt8NI77tD4NqdgM0c,1877
24
+ dbt_common/contracts/config/properties.py,sha256=K8Ut_q4U6pPY1ZJoFKEA6FUCLR1zb2kFa4Jb4bYb0-0,2194
25
+ dbt_common/events/README.md,sha256=CSwVajoxCAqOug2UCnXldH1EUK7Kjf3rcq7z9ACjrss,3023
26
+ dbt_common/events/__init__.py,sha256=av08vfpxo0ek7PqZNtMxY8FODJ3xwph4ehRxgInx4LA,383
27
+ dbt_common/events/base_types.py,sha256=E--Fl-KMdJd_UZCN93AuLxnJcQoys2MJjiJxkV03HpM,5448
28
+ dbt_common/events/contextvars.py,sha256=cJaN6FyGUG8CZIclX9D7GgnuWi5eZcPI2GjrnHpEurQ,3050
29
+ dbt_common/events/event_handler.py,sha256=jfi0PyqIOGnXCG9HEa0VIVULqNvXs1RYmAg0b50ChQs,1385
30
+ dbt_common/events/event_manager.py,sha256=ZXJ-N4NsfQTnkEpvuedTjHD8Gt8DgYHbz601eTVCm-o,2175
31
+ dbt_common/events/event_manager_client.py,sha256=etDlUv-3iIwM5IXXuzc1cmQID2fHOXw8dE9snp39-jk,1014
32
+ dbt_common/events/format.py,sha256=x1RWDZ8G7ZMHmxdld6Q4VXca4kvnhiQOIaQXkC6Uo0Q,1609
33
+ dbt_common/events/functions.py,sha256=TfHUn8nfosEGfIik4pyDDnJDI0HrQ899eH9DiVdINJQ,4756
34
+ dbt_common/events/helpers.py,sha256=CfsWwNDjsLJkPIgOtAfuLEnZ3rGUKeYsH8aDtCW12OA,410
35
+ dbt_common/events/interfaces.py,sha256=hEDeDoB0FW2RYHVZBG7gebEt_mUVBzkn1yPubpaxs-s,147
36
+ dbt_common/events/logger.py,sha256=6LLH8aLoRziFLBmwu-TCR5-EMpBtD28pSaL0FmKpeGA,6159
37
+ dbt_common/events/types.proto,sha256=SujcfPOPAfyHzeRXkn9_uKEDeQ-andSW1pI6fpWpQdo,1885
38
+ dbt_common/events/types.py,sha256=Bq-EvKQ8IPcRLwf_ukjfqjpYvakOcg4RzOL2zbPttbM,3538
39
+ dbt_common/events/types_pb2.py,sha256=5DHt8X_ejqOuRiP-GrnVw8wDFUOTfBRlZQ2In1L1LOw,5569
40
+ dbt_common/exceptions/__init__.py,sha256=X_Uw7BxOzXev_9JMYfs5Cm-_i_Qf2PJim8_-dDJI7Y8,361
41
+ dbt_common/exceptions/base.py,sha256=uuI_2y_BQrjCyjHKR2pWeCica1dyoo1cc4e1Tq0de7M,7583
42
+ dbt_common/exceptions/cache.py,sha256=0z4fBcdNZMAR41YbPRo2GN0__xAMaYs8Uc-t3hjmVio,2532
43
+ dbt_common/exceptions/connection.py,sha256=rXLJXUdLhyXP3CUUyiqWN2DDO5-0Pn1ChX3OIR7pxKk,176
44
+ dbt_common/exceptions/contracts.py,sha256=i2PKRqda1Pq_Sro9FA22W7FTGklhBAGl6__nimR5_qI,527
45
+ dbt_common/exceptions/events.py,sha256=j83szhbqmK3ITZR_xwA2dYTNaPcGF_lN_kQar6dQgjQ,317
46
+ dbt_common/exceptions/jinja.py,sha256=PzVUB1MFf8x81bQHTwFIGw3PyrGZzWYw04eotI4CqtI,3124
47
+ dbt_common/exceptions/macros.py,sha256=2nujJrtpWHnhBwcyhcOmeVaEzILh3W9gtyP6vVpkA0o,3301
48
+ dbt_common/exceptions/system.py,sha256=w7zCilpKTiKwj0BwqVgJZy6SqiCpH61ZzvOfGnYaeoI,1549
49
+ dbt_common/utils/__init__.py,sha256=8PNb_A9zm2YfYMa0GsM-pAyJy3Iu0FUtWKvCs8kFhD0,549
50
+ dbt_common/utils/casting.py,sha256=TVWHO5ct-foNBH-pj4vDZ84jVU-hPQll52X9YSjz2Zs,605
51
+ dbt_common/utils/connection.py,sha256=J5zxWFpGHpUbe-F04S9bVLLO3HLvHB6INOkAey0k76c,1373
52
+ dbt_common/utils/dict.py,sha256=unI-kJs2yvw7ic2U71-6H8koVRknkb0jCk7W_FCq6_I,4014
53
+ dbt_common/utils/encoding.py,sha256=6_kSY2FvGNYMg7oX7PrbvVioieydih3Kl7Ii802LaHI,1705
54
+ dbt_common/utils/executor.py,sha256=W-DtjSPdbnm5bssT3EUo6SbGVi3VePD4LcvgKH1NhZM,2414
55
+ dbt_common/utils/formatting.py,sha256=JUn5rzJ-uajs9wPCN0-f2iRFY1pOJF5YjTD9dERuLoc,165
56
+ dbt_common/utils/jinja.py,sha256=XNfZHuZhLM_R_yPmzYojPm6bF7QOoxIjSWrkJRw6wks,965
57
+ dbt_common-0.1.5.dist-info/METADATA,sha256=EUQG5E4N0_IWbAqrYj3gjoA6Fq2LD0tguh-qzyzb7pI,3648
58
+ dbt_common-0.1.5.dist-info/WHEEL,sha256=TJPnKdtrSue7xZ_AVGkp9YXcvDrobsjBds1du3Nx6dc,87
59
+ dbt_common-0.1.5.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
60
+ dbt_common-0.1.5.dist-info/RECORD,,
@@ -1,58 +0,0 @@
1
- dbt_common/__about__.py,sha256=I4WU5JcKZjfggPiNIoGDFxUDB05Ym1xFhbC3J_MjilA,18
2
- dbt_common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- dbt_common/constants.py,sha256=DJIVuTBl5OZpjdFINHon8MNj_XT-Rrp41dAoAuQL2QI,38
4
- dbt_common/dataclass_schema.py,sha256=zMRDZtQNCG8Uumkwl-Ojyz1GS6a8-M3Ao8KnHftS11A,5214
5
- dbt_common/helper_types.py,sha256=MtUGSf9Y-oNpn1Jc9vklaPy9pesspcD_5rd61ypdavU,3408
6
- dbt_common/invocation.py,sha256=Zw8jRPn75oi2VrUD6qGvaCDtSyIfqm5pJlPpRjs3s1E,202
7
- dbt_common/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- dbt_common/semver.py,sha256=XbHdH2tFki4Q8yT7ckLHwai81PeQJdBwI9VDSyz6e0w,13728
9
- dbt_common/ui.py,sha256=VOg6UjBu7nZT9Hwh-x9BO9SV31oy0O8Vhc_lDp6Gyhk,2449
10
- dbt_common/clients/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- dbt_common/clients/_jinja_blocks.py,sha256=S6eq3e5ltCZldy1rDdFGhti3r4YH62HL5mdS-0qvu30,12708
12
- dbt_common/clients/agate_helper.py,sha256=4IbqTeydUtbLFzRGewIBJT-dIyJ73N4-EhALM9dpIyg,8962
13
- dbt_common/clients/jinja.py,sha256=LohcOC5LXWxxIi4kIkyLU0qWMIrtEs6KPCHEwRDhXrY,17068
14
- dbt_common/clients/system.py,sha256=qfaComRdfGd6DH_Pmr7_h712VbW2s7t-0Yf2EZeAVA8,19156
15
- dbt_common/contracts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- dbt_common/contracts/constraints.py,sha256=J0K8jXZVEsDr1Gx0o8rcZOt-OlbQg8Be1f2SNv0tZF8,1235
17
- dbt_common/contracts/util.py,sha256=aY467o47I_D5fkjmigRpSgeBDVgwp-RY7Vm5oNLItt0,197
18
- dbt_common/contracts/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
- dbt_common/contracts/config/base.py,sha256=NToWEwX_BLgQ-4tLP7Cp98mSc94f6BltAcPL41OLJJw,8215
20
- dbt_common/contracts/config/materialization.py,sha256=rahC72qZ0-jB8oPwxyPooZXc5NJ-smg74g2HnGOMj34,256
21
- dbt_common/contracts/config/metadata.py,sha256=X47-tEA8q2ZfSMcYv0godUwTSVjt8NI77tD4NqdgM0c,1877
22
- dbt_common/contracts/config/properties.py,sha256=K8Ut_q4U6pPY1ZJoFKEA6FUCLR1zb2kFa4Jb4bYb0-0,2194
23
- dbt_common/events/README.md,sha256=CSwVajoxCAqOug2UCnXldH1EUK7Kjf3rcq7z9ACjrss,3023
24
- dbt_common/events/__init__.py,sha256=g1rrUqYJvW4YBXCQDDoy5NAV-jrd_hvkG04mqq6YozA,377
25
- dbt_common/events/base_types.py,sha256=1YeXxX710WgPn3dYeJu9Y_pZmB_ah6za3QHn6xdkx8g,5402
26
- dbt_common/events/contextvars.py,sha256=cJaN6FyGUG8CZIclX9D7GgnuWi5eZcPI2GjrnHpEurQ,3050
27
- dbt_common/events/event_handler.py,sha256=VHOBhW0U0e7jntlnnUP7DnwUMDln01TrVbqSvZu33U8,1383
28
- dbt_common/events/event_manager.py,sha256=BVAdFZDCRTpp6DnuiRJIHguAnHz2ltMfxKlE63vdfEI,2125
29
- dbt_common/events/event_manager_client.py,sha256=etDlUv-3iIwM5IXXuzc1cmQID2fHOXw8dE9snp39-jk,1014
30
- dbt_common/events/format.py,sha256=ZM4pvDymmFD_fFvqA88_k324yyxPKrArm1MDbd6TzQ8,1595
31
- dbt_common/events/functions.py,sha256=MD6sjViUa2MEtOF6uS2RXvXmcY2u_XxVPaIi_GMe7AA,4911
32
- dbt_common/events/helpers.py,sha256=CfsWwNDjsLJkPIgOtAfuLEnZ3rGUKeYsH8aDtCW12OA,410
33
- dbt_common/events/interfaces.py,sha256=hEDeDoB0FW2RYHVZBG7gebEt_mUVBzkn1yPubpaxs-s,147
34
- dbt_common/events/logger.py,sha256=6gnhSUzc9vdoKGtX4IhX4_AxsgYnRSePAcjhiH9tH8A,6074
35
- dbt_common/events/types.proto,sha256=SujcfPOPAfyHzeRXkn9_uKEDeQ-andSW1pI6fpWpQdo,1885
36
- dbt_common/events/types.py,sha256=iZNkyo06qzvjpz6410bMDQX8d4-u81s_fJ6Ntkooqco,3507
37
- dbt_common/events/types_pb2.py,sha256=_psYn-CrmxlzQ_ZaD8VMslljS7UNkHxA_gpUFM1taDU,6253
38
- dbt_common/exceptions/__init__.py,sha256=X_Uw7BxOzXev_9JMYfs5Cm-_i_Qf2PJim8_-dDJI7Y8,361
39
- dbt_common/exceptions/base.py,sha256=6AXcAVBE0GaAy7ON3ex8SbJ_rTcIsNBbC0Wa05qselg,7489
40
- dbt_common/exceptions/cache.py,sha256=sLKCXqqCzY_2qfXGgMGfSsVhCkd8S_wyp8a9FLy5dsw,2468
41
- dbt_common/exceptions/connection.py,sha256=gkSpPHolAArs1vwmm5JDFbc9LmI4NAqmU7z8cSIvZio,188
42
- dbt_common/exceptions/contracts.py,sha256=i2PKRqda1Pq_Sro9FA22W7FTGklhBAGl6__nimR5_qI,527
43
- dbt_common/exceptions/events.py,sha256=j83szhbqmK3ITZR_xwA2dYTNaPcGF_lN_kQar6dQgjQ,317
44
- dbt_common/exceptions/jinja.py,sha256=_9jogdMk7Kgz8nq7-q8MoaA4_xeiXTP6_ip0EkVUPyg,3109
45
- dbt_common/exceptions/macros.py,sha256=S_QkeeHyf4YuI1HRc0SaS0OyKSq1soNsDgBnQzOgaZ0,3247
46
- dbt_common/exceptions/system.py,sha256=w7zCilpKTiKwj0BwqVgJZy6SqiCpH61ZzvOfGnYaeoI,1549
47
- dbt_common/utils/__init__.py,sha256=8PNb_A9zm2YfYMa0GsM-pAyJy3Iu0FUtWKvCs8kFhD0,549
48
- dbt_common/utils/casting.py,sha256=TVWHO5ct-foNBH-pj4vDZ84jVU-hPQll52X9YSjz2Zs,605
49
- dbt_common/utils/connection.py,sha256=9ql_eSgqis7rTnEsxq8zfIq2W4Qi-7krTaWw9VjfQ38,1330
50
- dbt_common/utils/dict.py,sha256=Q5m4f6EQVBVR_TXUZVp4TABVVwi99Nozyk-Op-bDKdo,3923
51
- dbt_common/utils/encoding.py,sha256=vlBHFEF7Zwsxv46iyT9pMxbFBpWeFbtkVqxd4_Uo6t4,1677
52
- dbt_common/utils/executor.py,sha256=oZ0ESn_35L_uA6UeV2HvTrEi2Knr8IwLJbxt3xwE9-8,1956
53
- dbt_common/utils/formatting.py,sha256=JUn5rzJ-uajs9wPCN0-f2iRFY1pOJF5YjTD9dERuLoc,165
54
- dbt_common/utils/jinja.py,sha256=XNfZHuZhLM_R_yPmzYojPm6bF7QOoxIjSWrkJRw6wks,965
55
- dbt_common-0.1.1.dist-info/METADATA,sha256=wSgcx0pSzY3GTrv2ZqQOXeN8NmvbkZ37w4wuEY6N-3Q,2130
56
- dbt_common-0.1.1.dist-info/WHEEL,sha256=TJPnKdtrSue7xZ_AVGkp9YXcvDrobsjBds1du3Nx6dc,87
57
- dbt_common-0.1.1.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
58
- dbt_common-0.1.1.dist-info/RECORD,,