recce-nightly 1.10.0.20250625__py3-none-any.whl → 1.30.0.20251221__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.
Potentially problematic release.
This version of recce-nightly might be problematic. Click here for more details.
- recce/VERSION +1 -1
- recce/__init__.py +5 -0
- recce/adapter/dbt_adapter/__init__.py +343 -245
- recce/apis/check_api.py +20 -14
- recce/apis/check_events_api.py +353 -0
- recce/apis/check_func.py +5 -5
- recce/apis/run_func.py +32 -3
- recce/artifact.py +76 -3
- recce/cli.py +705 -82
- recce/config.py +2 -2
- recce/connect_to_cloud.py +1 -1
- recce/core.py +3 -3
- recce/data/404/index.html +2 -0
- recce/data/404.html +2 -22
- recce/data/__next.@lineage.!KHNsb3Qp.__PAGE__.txt +7 -0
- recce/data/__next.@lineage.!KHNsb3Qp.txt +4 -0
- recce/data/__next.__PAGE__.txt +6 -0
- recce/data/__next._full.txt +32 -0
- recce/data/__next._head.txt +8 -0
- recce/data/__next._index.txt +14 -0
- recce/data/__next._tree.txt +8 -0
- recce/data/_next/static/chunks/025a7e3e3f9f40ae.js +1 -0
- recce/data/_next/static/chunks/0ce56d67ef5779ca.js +4 -0
- recce/data/_next/static/chunks/1a6a78780155dac7.js +48 -0
- recce/data/_next/static/chunks/1de8485918b9182a.css +2 -0
- recce/data/_next/static/chunks/1e4b1b50d1e34993.js +1 -0
- recce/data/_next/static/chunks/206d5d181e4c738e.js +1 -0
- recce/data/_next/static/chunks/2c357efc34c5b859.js +25 -0
- recce/data/_next/static/chunks/2e9d95d2d48c479c.js +1 -0
- recce/data/_next/static/chunks/2f016dc4a3edad2e.js +2 -0
- recce/data/_next/static/chunks/313251962d698f7c.js +1 -0
- recce/data/_next/static/chunks/3a9f021f38eb5574.css +1 -0
- recce/data/_next/static/chunks/40079da8d2b8f651.js +1 -0
- recce/data/_next/static/chunks/4599182bffb64661.js +38 -0
- recce/data/_next/static/chunks/4e62f6e184173580.js +1 -0
- recce/data/_next/static/chunks/5c4dfb0d09eaa401.js +1 -0
- recce/data/_next/static/chunks/69e4f06ccfdfc3ac.js +1 -0
- recce/data/_next/static/chunks/6b206cb4707d6bee.js +1 -0
- recce/data/_next/static/chunks/6d8557f062aa4386.css +1 -0
- recce/data/_next/static/chunks/7fbe3650bd83b6b5.js +1 -0
- recce/data/_next/static/chunks/83fa823a825674f6.js +1 -0
- recce/data/_next/static/chunks/848a6c9b5f55f7ed.js +1 -0
- recce/data/_next/static/chunks/859462b0858aef88.css +2 -0
- recce/data/_next/static/chunks/923964f18c87d0f1.css +1 -0
- recce/data/_next/static/chunks/939390f911895d7c.js +48 -0
- recce/data/_next/static/chunks/99a9817237a07f43.js +1 -0
- recce/data/_next/static/chunks/9fed8b4b2b924054.js +5 -0
- recce/data/_next/static/chunks/b6949f6c5892110c.js +1 -0
- recce/data/_next/static/chunks/b851a1d3f8149828.js +1 -0
- recce/data/_next/static/chunks/c734f9ad957de0b4.js +1 -0
- recce/data/_next/static/chunks/cdde321b0ec75717.js +2 -0
- recce/data/_next/static/chunks/d0f91117d77ff844.css +1 -0
- recce/data/_next/static/chunks/d6c8667911c2500f.js +1 -0
- recce/data/_next/static/chunks/da8dab68c02752cf.js +74 -0
- recce/data/_next/static/chunks/dc074049c9d12d97.js +109 -0
- recce/data/_next/static/chunks/ee7f1a8227342421.js +1 -0
- recce/data/_next/static/chunks/fa2f4e56c2fccc73.js +1 -0
- recce/data/_next/static/chunks/turbopack-1fad664f62979b93.js +3 -0
- recce/data/_next/static/media/favicon.a8d38d84.ico +0 -0
- recce/data/_next/static/media/montserrat-cyrillic-800-normal.d80d830d.woff2 +0 -0
- recce/data/_next/static/media/{montserrat-cyrillic-800-normal.bd5c9f50.woff → montserrat-cyrillic-800-normal.f9d58125.woff} +0 -0
- recce/data/_next/static/media/montserrat-cyrillic-ext-800-normal.076c2a93.woff2 +0 -0
- recce/data/_next/static/media/montserrat-latin-800-normal.cde454cc.woff2 +0 -0
- recce/data/_next/static/media/{montserrat-latin-800-normal.fc315020.woff → montserrat-latin-800-normal.d5761935.woff} +0 -0
- recce/data/_next/static/media/montserrat-latin-ext-800-normal.40ec0659.woff2 +0 -0
- recce/data/_next/static/media/{montserrat-latin-ext-800-normal.2e5381b2.woff → montserrat-latin-ext-800-normal.b671449b.woff} +0 -0
- recce/data/_next/static/media/{montserrat-vietnamese-800-normal.20c545e6.woff → montserrat-vietnamese-800-normal.9f7b8541.woff} +0 -0
- recce/data/_next/static/media/montserrat-vietnamese-800-normal.f9eb854e.woff2 +0 -0
- recce/data/_next/static/nX-Uz0AH6Tc6hIQUFGqaB/_buildManifest.js +11 -0
- recce/data/_next/static/nX-Uz0AH6Tc6hIQUFGqaB/_clientMiddlewareManifest.json +1 -0
- recce/data/_not-found/__next._full.txt +24 -0
- recce/data/_not-found/__next._head.txt +8 -0
- recce/data/_not-found/__next._index.txt +13 -0
- recce/data/_not-found/__next._not-found.__PAGE__.txt +5 -0
- recce/data/_not-found/__next._not-found.txt +4 -0
- recce/data/_not-found/__next._tree.txt +6 -0
- recce/data/_not-found/index.html +2 -0
- recce/data/_not-found/index.txt +24 -0
- recce/data/auth_callback.html +1 -1
- recce/data/checks/__next.@lineage.__DEFAULT__.txt +7 -0
- recce/data/checks/__next._full.txt +39 -0
- recce/data/checks/__next._head.txt +8 -0
- recce/data/checks/__next._index.txt +14 -0
- recce/data/checks/__next._tree.txt +8 -0
- recce/data/checks/__next.checks.__PAGE__.txt +10 -0
- recce/data/checks/__next.checks.txt +4 -0
- recce/data/checks/index.html +2 -0
- recce/data/checks/index.txt +39 -0
- recce/data/index.html +2 -27
- recce/data/index.txt +32 -8
- recce/data/lineage/__next.@lineage.__DEFAULT__.txt +7 -0
- recce/data/lineage/__next._full.txt +39 -0
- recce/data/lineage/__next._head.txt +8 -0
- recce/data/lineage/__next._index.txt +14 -0
- recce/data/lineage/__next._tree.txt +8 -0
- recce/data/lineage/__next.lineage.__PAGE__.txt +10 -0
- recce/data/lineage/__next.lineage.txt +4 -0
- recce/data/lineage/index.html +2 -0
- recce/data/lineage/index.txt +39 -0
- recce/data/query/__next.@lineage.__DEFAULT__.txt +7 -0
- recce/data/query/__next._full.txt +37 -0
- recce/data/query/__next._head.txt +8 -0
- recce/data/query/__next._index.txt +14 -0
- recce/data/query/__next._tree.txt +8 -0
- recce/data/query/__next.query.__PAGE__.txt +9 -0
- recce/data/query/__next.query.txt +4 -0
- recce/data/query/index.html +2 -0
- recce/data/query/index.txt +37 -0
- recce/event/CONFIG.bak +1 -0
- recce/event/__init__.py +9 -8
- recce/event/collector.py +6 -2
- recce/event/track.py +10 -0
- recce/github.py +1 -1
- recce/mcp_server.py +725 -0
- recce/models/check.py +433 -15
- recce/models/types.py +61 -2
- recce/pull_request.py +1 -1
- recce/run.py +37 -17
- recce/server.py +216 -21
- recce/state/__init__.py +31 -0
- recce/state/cloud.py +644 -0
- recce/state/const.py +26 -0
- recce/state/local.py +56 -0
- recce/state/state.py +119 -0
- recce/state/state_loader.py +174 -0
- recce/summary.py +25 -3
- recce/tasks/dataframe.py +63 -1
- recce/tasks/query.py +40 -3
- recce/tasks/rowcount.py +4 -1
- recce/tasks/schema.py +4 -1
- recce/tasks/utils.py +147 -0
- recce/tasks/valuediff.py +85 -57
- recce/util/api_token.py +11 -2
- recce/util/breaking.py +10 -1
- recce/util/cll.py +1 -2
- recce/util/cloud/__init__.py +15 -0
- recce/util/cloud/base.py +115 -0
- recce/util/cloud/check_events.py +190 -0
- recce/util/cloud/checks.py +242 -0
- recce/util/io.py +2 -2
- recce/util/lineage.py +19 -18
- recce/util/perf_tracking.py +85 -0
- recce/util/recce_cloud.py +254 -5
- recce/util/startup_perf.py +121 -0
- recce/yaml/__init__.py +2 -2
- {recce_nightly-1.10.0.20250625.dist-info → recce_nightly-1.30.0.20251221.dist-info}/METADATA +91 -71
- recce_nightly-1.30.0.20251221.dist-info/RECORD +183 -0
- {recce_nightly-1.10.0.20250625.dist-info → recce_nightly-1.30.0.20251221.dist-info}/WHEEL +1 -2
- recce/data/_next/static/abCX3x3UoIdRLEDWxx4xd/_buildManifest.js +0 -1
- recce/data/_next/static/chunks/181-acc61ddada3bc0ca.js +0 -43
- recce/data/_next/static/chunks/1bff33f1-1ef85cf5e658a751.js +0 -1
- recce/data/_next/static/chunks/217-879a84d70f7a907c.js +0 -2
- recce/data/_next/static/chunks/29e3cc0d-60045b2e47aa3916.js +0 -1
- recce/data/_next/static/chunks/36e1c10d-8e7be4a6c1f6ab2d.js +0 -1
- recce/data/_next/static/chunks/3998a672-03adacad07b346ac.js +0 -1
- recce/data/_next/static/chunks/3a92ee20-1081c360214f9602.js +0 -1
- recce/data/_next/static/chunks/42-cd3c06533f5fd47c.js +0 -9
- recce/data/_next/static/chunks/450c323b-fd94e7ffaa4a5efa.js +0 -1
- recce/data/_next/static/chunks/47d8844f-929aed9b1c73a905.js +0 -1
- recce/data/_next/static/chunks/608-3b079b544e5d5f5e.js +0 -15
- recce/data/_next/static/chunks/6dc81886-adbfa45836061d79.js +0 -1
- recce/data/_next/static/chunks/7a8a3e83-edf6dc64b5d5f0a5.js +0 -1
- recce/data/_next/static/chunks/7f27ae6c-d5f0438edd5c2a5b.js +0 -1
- recce/data/_next/static/chunks/86730205-cfb14e3f051bab35.js +0 -1
- recce/data/_next/static/chunks/8d700b6a.8bb140898499c512.js +0 -1
- recce/data/_next/static/chunks/92-607cd1af83c41f43.js +0 -1
- recce/data/_next/static/chunks/9746af58-a42b7d169cacadf0.js +0 -1
- recce/data/_next/static/chunks/a30376cd-de84559016d7e133.js +0 -1
- recce/data/_next/static/chunks/app/_not-found/page-01ed58b7f971d311.js +0 -1
- recce/data/_next/static/chunks/app/layout-177a410a97e0d018.js +0 -1
- recce/data/_next/static/chunks/app/page-da6e046a8235dbfc.js +0 -1
- recce/data/_next/static/chunks/b63b1b3f-4282bdcf459e075c.js +0 -1
- recce/data/_next/static/chunks/bbda5537-9ec25eb1dd62348a.js +0 -1
- recce/data/_next/static/chunks/c132bf7d-08cb668a789d6afd.js +0 -1
- recce/data/_next/static/chunks/ce84277d-2e5d1d46910cf052.js +0 -1
- recce/data/_next/static/chunks/febdd86e-c6b525341634b860.js +0 -54
- recce/data/_next/static/chunks/fee69bc6-2dbccaf9b90474e6.js +0 -1
- recce/data/_next/static/chunks/framework-ded83d71b51ce901.js +0 -1
- recce/data/_next/static/chunks/main-app-39061b0166c47f55.js +0 -1
- recce/data/_next/static/chunks/main-b5b3ae20a1405261.js +0 -1
- recce/data/_next/static/chunks/pages/_app-437c455677d62394.js +0 -1
- recce/data/_next/static/chunks/pages/_error-e7650df18ca04bde.js +0 -1
- recce/data/_next/static/chunks/webpack-7b49d5ba7e3a434d.js +0 -1
- recce/data/_next/static/css/17a96168e3a9db13.css +0 -1
- recce/data/_next/static/css/1b121dc4d36aeb4d.css +0 -3
- recce/data/_next/static/css/35c6679a098e1e34.css +0 -1
- recce/data/_next/static/css/951e2e0eea2d4a5b.css +0 -14
- recce/data/_next/static/media/montserrat-cyrillic-800-normal.22628180.woff2 +0 -0
- recce/data/_next/static/media/montserrat-cyrillic-ext-800-normal.94a63aea.woff2 +0 -0
- recce/data/_next/static/media/montserrat-latin-800-normal.6f8fa298.woff2 +0 -0
- recce/data/_next/static/media/montserrat-latin-ext-800-normal.013b84f9.woff2 +0 -0
- recce/data/_next/static/media/montserrat-vietnamese-800-normal.c0035377.woff2 +0 -0
- recce/data/_next/static/media/reload-image.79aabb7d.svg +0 -4
- recce/state.py +0 -786
- recce_nightly-1.10.0.20250625.dist-info/RECORD +0 -154
- recce_nightly-1.10.0.20250625.dist-info/top_level.txt +0 -2
- tests/__init__.py +0 -0
- tests/adapter/__init__.py +0 -0
- tests/adapter/dbt_adapter/__init__.py +0 -0
- tests/adapter/dbt_adapter/conftest.py +0 -17
- tests/adapter/dbt_adapter/dbt_test_helper.py +0 -298
- tests/adapter/dbt_adapter/test_dbt_adapter.py +0 -25
- tests/adapter/dbt_adapter/test_dbt_cll.py +0 -384
- tests/adapter/dbt_adapter/test_selector.py +0 -202
- tests/tasks/__init__.py +0 -0
- tests/tasks/conftest.py +0 -4
- tests/tasks/test_histogram.py +0 -129
- tests/tasks/test_lineage.py +0 -55
- tests/tasks/test_preset_checks.py +0 -64
- tests/tasks/test_profile.py +0 -397
- tests/tasks/test_query.py +0 -151
- tests/tasks/test_row_count.py +0 -135
- tests/tasks/test_schema.py +0 -122
- tests/tasks/test_top_k.py +0 -77
- tests/tasks/test_valuediff.py +0 -85
- tests/test_cli.py +0 -133
- tests/test_config.py +0 -43
- tests/test_connect_to_cloud.py +0 -82
- tests/test_core.py +0 -29
- tests/test_dbt.py +0 -36
- tests/test_pull_request.py +0 -130
- tests/test_server.py +0 -104
- tests/test_state.py +0 -134
- tests/test_summary.py +0 -65
- /recce/data/_next/static/chunks/{polyfills-42372ed130431b0a.js → a6dad97d9634a72d.js} +0 -0
- /recce/data/_next/static/media/{montserrat-cyrillic-ext-800-normal.e6e0d8d0.woff → montserrat-cyrillic-ext-800-normal.a4fa76b5.woff} +0 -0
- /recce/data/_next/static/{abCX3x3UoIdRLEDWxx4xd → nX-Uz0AH6Tc6hIQUFGqaB}/_ssgManifest.js +0 -0
- {recce_nightly-1.10.0.20250625.dist-info → recce_nightly-1.30.0.20251221.dist-info}/entry_points.txt +0 -0
- {recce_nightly-1.10.0.20250625.dist-info → recce_nightly-1.30.0.20251221.dist-info}/licenses/LICENSE +0 -0
{recce_nightly-1.10.0.20250625.dist-info → recce_nightly-1.30.0.20251221.dist-info}/METADATA
RENAMED
|
@@ -1,76 +1,70 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: recce-nightly
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.30.0.20251221
|
|
4
4
|
Summary: Environment diff tool for dbt
|
|
5
|
-
Home-page: https://github.com/InfuseAI/recce
|
|
6
|
-
Author: InfuseAI Dev Team
|
|
7
|
-
Author-email: dev@infuseai.io
|
|
8
5
|
Project-URL: Bug Tracker, https://github.com/InfuseAI/recce/issues
|
|
6
|
+
Project-URL: Homepage, https://github.com/InfuseAI/recce
|
|
7
|
+
Author-email: InfuseAI Dev Team <dev@infuseai.io>
|
|
8
|
+
License: Apache-2.0
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Classifier: Development Status :: 4 - Beta
|
|
11
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
12
|
+
Classifier: Operating System :: OS Independent
|
|
9
13
|
Classifier: Programming Language :: Python :: 3.9
|
|
10
14
|
Classifier: Programming Language :: Python :: 3.10
|
|
11
15
|
Classifier: Programming Language :: Python :: 3.11
|
|
12
16
|
Classifier: Programming Language :: Python :: 3.12
|
|
13
17
|
Classifier: Programming Language :: Python :: 3.13
|
|
14
|
-
Classifier: License :: OSI Approved :: Apache Software License
|
|
15
|
-
Classifier: Operating System :: OS Independent
|
|
16
|
-
Classifier: Development Status :: 4 - Beta
|
|
17
18
|
Requires-Python: >=3.9
|
|
18
|
-
Description-Content-Type: text/markdown
|
|
19
|
-
License-File: LICENSE
|
|
20
19
|
Requires-Dist: boto3
|
|
21
|
-
Requires-Dist: requests>=2.28.1
|
|
22
|
-
Requires-Dist: ruamel.yaml>=0.18.6
|
|
23
20
|
Requires-Dist: click>=7.1
|
|
24
|
-
Requires-Dist: deepdiff<
|
|
25
|
-
Requires-Dist: portalocker
|
|
21
|
+
Requires-Dist: deepdiff<9.0,>=7.0
|
|
26
22
|
Requires-Dist: fastapi
|
|
23
|
+
Requires-Dist: gitpython
|
|
27
24
|
Requires-Dist: itsdangerous
|
|
28
|
-
Requires-Dist: uvicorn
|
|
29
|
-
Requires-Dist: pydantic
|
|
30
25
|
Requires-Dist: jinja2
|
|
26
|
+
Requires-Dist: packaging
|
|
27
|
+
Requires-Dist: portalocker
|
|
28
|
+
Requires-Dist: py-markdown-table
|
|
29
|
+
Requires-Dist: pydantic
|
|
30
|
+
Requires-Dist: pygithub
|
|
31
|
+
Requires-Dist: python-dateutil
|
|
32
|
+
Requires-Dist: python-multipart
|
|
33
|
+
Requires-Dist: pytz
|
|
31
34
|
Requires-Dist: requests>=2.28.1
|
|
32
35
|
Requires-Dist: rich>=12.0.0
|
|
36
|
+
Requires-Dist: ruamel-yaml>=0.18.6
|
|
33
37
|
Requires-Dist: sentry-sdk
|
|
38
|
+
Requires-Dist: sqlglot<28.0,>=27.29.0
|
|
39
|
+
Requires-Dist: uvicorn
|
|
34
40
|
Requires-Dist: watchdog
|
|
35
41
|
Requires-Dist: websockets
|
|
36
|
-
Requires-Dist: py-markdown-table
|
|
37
|
-
Requires-Dist: python-dateutil
|
|
38
|
-
Requires-Dist: python-multipart
|
|
39
|
-
Requires-Dist: GitPython
|
|
40
|
-
Requires-Dist: PyGithub
|
|
41
|
-
Requires-Dist: sqlglot
|
|
42
42
|
Provides-Extra: dev
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist:
|
|
45
|
-
Requires-Dist:
|
|
46
|
-
Requires-Dist:
|
|
47
|
-
Requires-Dist:
|
|
48
|
-
Requires-Dist:
|
|
49
|
-
Requires-Dist:
|
|
50
|
-
Requires-Dist: pytest-
|
|
51
|
-
Requires-Dist:
|
|
52
|
-
Requires-Dist:
|
|
53
|
-
Requires-Dist:
|
|
54
|
-
Requires-Dist:
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
Dynamic: license-file
|
|
62
|
-
Dynamic: project-url
|
|
63
|
-
Dynamic: provides-extra
|
|
64
|
-
Dynamic: requires-dist
|
|
65
|
-
Dynamic: requires-python
|
|
66
|
-
Dynamic: summary
|
|
43
|
+
Requires-Dist: black>=25.1.0; extra == 'dev'
|
|
44
|
+
Requires-Dist: dbt-duckdb; extra == 'dev'
|
|
45
|
+
Requires-Dist: flake8>=7.2.0; extra == 'dev'
|
|
46
|
+
Requires-Dist: httpx; extra == 'dev'
|
|
47
|
+
Requires-Dist: isort>=6.0.1; extra == 'dev'
|
|
48
|
+
Requires-Dist: pandas; extra == 'dev'
|
|
49
|
+
Requires-Dist: pre-commit>=4.2.0; extra == 'dev'
|
|
50
|
+
Requires-Dist: pytest-asyncio<1.0,>=0.23; extra == 'dev'
|
|
51
|
+
Requires-Dist: pytest-cov; extra == 'dev'
|
|
52
|
+
Requires-Dist: pytest-flake8; extra == 'dev'
|
|
53
|
+
Requires-Dist: pytest-mypy; extra == 'dev'
|
|
54
|
+
Requires-Dist: pytest>=4.6; extra == 'dev'
|
|
55
|
+
Requires-Dist: tox; extra == 'dev'
|
|
56
|
+
Requires-Dist: tox-uv; extra == 'dev'
|
|
57
|
+
Requires-Dist: twine; extra == 'dev'
|
|
58
|
+
Provides-Extra: mcp
|
|
59
|
+
Requires-Dist: mcp>=1.0.0; (python_version >= '3.10') and extra == 'mcp'
|
|
60
|
+
Description-Content-Type: text/markdown
|
|
67
61
|
|
|
68
62
|
<p align="center">
|
|
69
|
-
<a href="https://
|
|
63
|
+
<a href="https://reccehq.com">
|
|
70
64
|
<picture>
|
|
71
|
-
<source media="(prefers-color-scheme: dark)" srcset="https://
|
|
72
|
-
<source media="(prefers-color-scheme: light)" srcset="https://
|
|
73
|
-
<img alt="Recce: DataRecce.io" src="https://
|
|
65
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://reccehq.com/assets/images/recce-logo-stacked.avif">
|
|
66
|
+
<source media="(prefers-color-scheme: light)" srcset="https://reccehq.com/assets/images/recce-logo-stacked.avif">
|
|
67
|
+
<img alt="Recce: DataRecce.io" src="https://reccehq.com/assets/images/recce-logo-stacked.avif" width="200" style="display: block; margin: 0 auto 20px;">
|
|
74
68
|
</picture>
|
|
75
69
|
</a>
|
|
76
70
|
</p>
|
|
@@ -94,29 +88,56 @@ Dynamic: summary
|
|
|
94
88
|
</p>
|
|
95
89
|
|
|
96
90
|
## Trust, Verify, Ship
|
|
91
|
+
|
|
97
92
|
Cut dbt review time by 90% and ship accurate data fast
|
|
98
93
|
|
|
99
94
|
Recce gives data teams a faster, more reliable way to understand, review, and ship changes without all the guesswork or manual overhead.
|
|
100
95
|
|
|
101
96
|
## Quick Start
|
|
97
|
+
|
|
98
|
+
### Installation
|
|
99
|
+
|
|
100
|
+
Recce offers two packages to fit different use cases:
|
|
101
|
+
|
|
102
|
+
**For full local development and Recce Cloud features:**
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
pip install -U recce
|
|
106
|
+
recce server
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
**For CI/CD artifact uploads only (lightweight):**
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
pip install -U recce-cloud
|
|
113
|
+
recce-cloud upload
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
The `recce-cloud` package is a lightweight CLI tool designed specifically for CI/CD environments where you only need to upload dbt artifacts to Recce Cloud. It has minimal dependencies and installs faster than the full `recce` package.
|
|
117
|
+
|
|
118
|
+
### Getting Started
|
|
119
|
+
|
|
102
120
|
You can launch Recce in any dbt project in just two commands:
|
|
103
121
|
|
|
104
|
-
```
|
|
122
|
+
```bash
|
|
105
123
|
# cd into your dbt project
|
|
106
124
|
pip install -U recce
|
|
107
125
|
recce server
|
|
108
126
|
```
|
|
109
|
-
|
|
127
|
+
|
|
128
|
+
(Note: while recce is not version spsecific, `dbt-core` is currently [not compatible with Python 3.13](https://docs.getdbt.com/faqs/Core/install-python-compatibility). Please make sure to use Python 3.10 - 3.12.)
|
|
129
|
+
|
|
130
|
+
This starts Recce locally, where you can explore lineage and run queries. To unlock the full set of diffing tools, such as data comparisons and impact checks, you'll need to prepare two environments to compare against. You can follow our [Getting Started](https://docs.reccehq.com/get-started/) and [5-minute Jaffle Shop tutorial](https://docs.reccehq.com/get-started-jaffle-shop/) to try it out step-by-step.
|
|
110
131
|
|
|
111
132
|
## What You Get
|
|
112
133
|
|
|
113
134
|
Recce gives you a clear, fast way to understand what your data changes are doing and why they matter. It helps you catch problems early, verify metrics, and share your findings with others, all as part of your normal workflow.
|
|
114
135
|
|
|
115
|
-
<a href="https://pr46.demo.
|
|
136
|
+
<a href="https://pr46.demo.reccehq.com/"><img width="1347" alt="readme" src="https://github.com/user-attachments/assets/773e4c3a-0a15-49e0-8d1b-38a55af17cb0" /></a>
|
|
116
137
|
|
|
117
|
-
<a href="https://
|
|
138
|
+
<a href="https://reccehq.com"><img src="https://docs.reccehq.com/assets/images/1-whats-recce/diff-readme2.png" style="width: 100%; max-width: 600px; display: block; margin: 0 auto 20px;" alt="Model and column level diff"/></a>
|
|
118
139
|
|
|
119
|
-
<a href="https://
|
|
140
|
+
<a href="https://reccehq.com"><img src="https://docs.reccehq.com/assets/images/1-whats-recce/checklist-readme3.png" style="width: 100%; max-width: 600px; display: block; margin: 0 auto 20px;" alt="Checklist for collaboration"/></a>
|
|
120
141
|
|
|
121
142
|
### Using Recce for Impact Assessment in dbt PR Review
|
|
122
143
|
|
|
@@ -127,18 +148,17 @@ Recce gives you a clear, fast way to understand what your data changes are doing
|
|
|
127
148
|
- (`Recce Cloud`) Automatically sync Check status between Recce Instances
|
|
128
149
|
- (`Recce Cloud`) Block PR merging until all Recce Checks have been approved
|
|
129
150
|
|
|
130
|
-
Read more about using
|
|
131
|
-
the Recce blog.
|
|
151
|
+
Read more about using Recce on our [blog](https://blog.reccehq.com).
|
|
132
152
|
|
|
133
153
|
### What’s Included
|
|
134
154
|
|
|
135
|
-
- [Lineage and impact mapping](https://docs.
|
|
136
|
-
- Metric and data comparisons: Use [Profile, Value, Top-K, and Histogram Diffs](https://docs.
|
|
137
|
-
- [Query diff](https://docs.
|
|
138
|
-
- [Checklist for reviews and approvals](https://docs.
|
|
139
|
-
- Secure by design: Recce is [SOC 2 compliant](https://trust.
|
|
155
|
+
- [Lineage and impact mapping](https://docs.reccehq.com/features/lineage/): Quickly see which models and columns are affected by a change. Navigate lineage down to the column level, and spot breaking changes with clear visual cues.
|
|
156
|
+
- Metric and data comparisons: Use [Profile, Value, Top-K, and Histogram Diffs](https://docs.reccehq.com/features/lineage/#node-details) to compare results before and after changes. Validate things like row counts, category distributions, and numeric ranges without writing extra SQL.
|
|
157
|
+
- [Query diff](https://docs.reccehq.com/features/query/): Write and compare any two queries side by side. This is helpful when validating fixes or reviewing changes with teammates.
|
|
158
|
+
- [Checklist for reviews and approvals](https://docs.reccehq.com/features/checklist/): Turn your validation steps into a checklist. Add notes, rerun checks, and share the results with reviewers or stakeholders. In Recce Cloud, checklists can sync automatically and even block PRs until checks are approved.
|
|
159
|
+
- Secure by design: Recce is [SOC 2 compliant](https://trust.reccehq.com/) to meet enterprise security standards. It runs locally or in your private environment, and your data stays in your warehouse.
|
|
140
160
|
|
|
141
|
-
👉 Want to dive deeper? Check out the [full documentation](https://docs.
|
|
161
|
+
👉 Want to dive deeper? Check out the [full documentation](https://docs.reccehq.com/).
|
|
142
162
|
|
|
143
163
|
## Recce Cloud
|
|
144
164
|
|
|
@@ -150,26 +170,26 @@ Ready to collaborate and move faster as a team? Recce Cloud adds real-time colla
|
|
|
150
170
|
- Launch demo links from your CI with full context
|
|
151
171
|
|
|
152
172
|
Recce Cloud is a hosted version of Recce that standardizes your workflow, keeps teams aligned, and reduces errors—so you can ship data changes with confidence.
|
|
153
|
-
👉 [View Pricing and Plans](https://
|
|
173
|
+
👉 [View Pricing and Plans](https://reccehq.com/pricing)
|
|
154
174
|
|
|
155
175
|
## Community & Support
|
|
156
176
|
|
|
157
|
-
Here's where you can get in touch with the Recce team and find support:
|
|
177
|
+
Here's where you can get in touch with the Recce team and find support, add a subscribe to our newsletter option as well:
|
|
158
178
|
|
|
159
|
-
- [
|
|
160
|
-
|
|
161
|
-
-
|
|
179
|
+
- [chat on our website](https://reccehq.com/). We welcome you to start a chat or drop us a note. Our team monitors the chat box and will follow up soon.
|
|
180
|
+
- [Our discord](https://discord.com/invite/VpwXRC34jz)
|
|
181
|
+
- [dbt Slack](https://www.getdbt.com/community/join-the-community) in the [#tools-recce](https://getdbt.slack.com/archives/C05C28V7CPP) channel
|
|
182
|
+
- Email us [help@reccehq.com](mailto:help@reccehq.com)
|
|
162
183
|
|
|
163
|
-
If you believe you have found a bug, or there is some missing functionality in Recce, please open
|
|
164
|
-
a [GitHub Issue](https://github.com/DataRecce/recce/issues).
|
|
184
|
+
If you believe you have found a bug on our open source, or there is some missing functionality in Recce, please open a [GitHub Issue](https://github.com/DataRecce/recce/issues).
|
|
165
185
|
|
|
166
186
|
## Recce on the web
|
|
167
187
|
|
|
168
188
|
You can follow along with news about Recce and blogs from our team in the following places:
|
|
169
189
|
|
|
170
|
-
- [
|
|
190
|
+
- [RecceHQ.com](https://reccehq.com/)
|
|
171
191
|
- [LinkedIn](https://www.linkedin.com/company/datarecce)
|
|
172
|
-
- [
|
|
192
|
+
- [Blog](https://blog.reccehq.com/)
|
|
173
193
|
- [@datarecce](https://x.com/DataRecce) on Twitter/X
|
|
174
194
|
- [@DataRecce@mastodon.social](https://mastodon.social/@DataRecce) on Mastodon
|
|
175
195
|
- [@datarecce.bsky.social](https://bsky.app/profile/datarecce.bsky.social) on BlueSky
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
recce/VERSION,sha256=9izsnSUBqid_33HZ0DBeqsxiw1PQui05hbqXaxu7Ucw,16
|
|
2
|
+
recce/__init__.py,sha256=gT5G7sJ78C1GHAWr4pna6UvVNxPKs29_EgFS_ia3DT4,2554
|
|
3
|
+
recce/artifact.py,sha256=zksgrKEONdMmBRgM59gzf6srsr0As_UADZTQrWfC2cE,9759
|
|
4
|
+
recce/cli.py,sha256=TY2l_BKVVe_bdr0t0J5xEfo-N3irbTHCuspVB0yTDs8,61119
|
|
5
|
+
recce/config.py,sha256=noWimlOdGHAtBhNoApK5gRTQMwNPmUGAmZu39MV7szo,4697
|
|
6
|
+
recce/connect_to_cloud.py,sha256=CT7ELcVCTNa9ukSp_gMrJ0Av2UCUpF9H03tIk9y7U-4,4768
|
|
7
|
+
recce/core.py,sha256=Fph2kodFqzXy3cob80M9-nPVcv-Xxzme-E-bKFJ4cBQ,10754
|
|
8
|
+
recce/diff.py,sha256=L2_bzQ3__PO-0aeir8PHF8FvSOUmQ8WcDXgML1-mHdY,748
|
|
9
|
+
recce/exceptions.py,sha256=SclQ678GrHGjw7p_ZFJ3vZaL_yMU5xABeIAm2u_W2bk,592
|
|
10
|
+
recce/git.py,sha256=8Eg-6NzL-KjA3rT-ibbAyaCwGlzV0JqH3yGikrJNMDA,2344
|
|
11
|
+
recce/github.py,sha256=vIwHTpB8YWEUcHQlW0nToUUKmGGO0NcmB_Q5RvxQLLE,7438
|
|
12
|
+
recce/mcp_server.py,sha256=0CRfMaPOgxV_Fji4EWy6vBgg0SpCV0o7xUnpGTnGaKQ,31560
|
|
13
|
+
recce/pull_request.py,sha256=dLHsdiMtL4NC6Vkwp8Mq4baJmnqbm19lfiDti9MREN0,3850
|
|
14
|
+
recce/run.py,sha256=_PQeeCQDWqAyTQdEoydzY5_hfEg7d6-WH5quCZzkGvo,14616
|
|
15
|
+
recce/server.py,sha256=x_6YK-8qb6aaGSmBMhq-CUxTcEDxnT04U2USrecHUNs,28605
|
|
16
|
+
recce/summary.py,sha256=JRQxHLdeCUomGXmeyt9oOydosaKtlR0jGywI5xlocno,20245
|
|
17
|
+
recce/adapter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
18
|
+
recce/adapter/base.py,sha256=T_JNeLHgiHSaegw-DbrvHOaYjMyZcjj2Qtg5cWh_fco,3548
|
|
19
|
+
recce/adapter/sqlmesh_adapter.py,sha256=IU3N-F6ToDoO7_bV5vsG8pmTuDcbFtewTIuCxedTaRM,5046
|
|
20
|
+
recce/adapter/dbt_adapter/__init__.py,sha256=IsmxDxiammhZrwPB6M7mL56gRotr4UySbn3ZW8Vw9oE,68041
|
|
21
|
+
recce/adapter/dbt_adapter/dbt_version.py,sha256=M7aedZIWslXnJsryK8Ki4OL_t2oAKxy4uE2pRwfWIkk,1228
|
|
22
|
+
recce/apis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
23
|
+
recce/apis/check_api.py,sha256=bNqzZmH1O9l3NFzmcKs9NEqM0O8wQHUd1xLI5gCOtew,6479
|
|
24
|
+
recce/apis/check_events_api.py,sha256=_NCL-JMHVtc7WnWi5TsGctitRQhw55x0C20shiixEbM,10561
|
|
25
|
+
recce/apis/check_func.py,sha256=inDJc1WL_HdDEKUWU3fjQ5YT7DI9o3oJBtifNhBF3Uo,4219
|
|
26
|
+
recce/apis/run_api.py,sha256=eOaxOxXDkH59uqGCd4blld7edavUx7JU_DCd2WAYrL8,3416
|
|
27
|
+
recce/apis/run_func.py,sha256=8twHQxbc75RTMcdSUEH4bLn1Lu6JGpdZ9Ap6BtqH_Sc,9015
|
|
28
|
+
recce/data/404.html,sha256=UVNZXi99MpSwgO_vtvgSvamUFMztzZOcsuHPzMDZR-k,26886
|
|
29
|
+
recce/data/__next.@lineage.!KHNsb3Qp.__PAGE__.txt,sha256=aBQtd8X9kTehIIGJranZKTIU4FmHdyllSmLZ3dDtdTo,1268
|
|
30
|
+
recce/data/__next.@lineage.!KHNsb3Qp.txt,sha256=-HntdvSmiL0r_eX1h1QXLmOcblb0eUVznxNWTL67Uw8,434
|
|
31
|
+
recce/data/__next.__PAGE__.txt,sha256=uIPnIZNdKBxZ7kM_lJeVQTQQAZGwUNplOu2n9eRr9tE,430
|
|
32
|
+
recce/data/__next._full.txt,sha256=2yv9-t12KqNsZ4VNce7Y4_cj0ndS-Ez6gWKXx3Q2ZWU,10155
|
|
33
|
+
recce/data/__next._head.txt,sha256=bwlMRNh8v9PVquYO1AJmVfA9liNOA0ORjXHmGBZMQLU,1088
|
|
34
|
+
recce/data/__next._index.txt,sha256=ckQvSQcHluZ3xmn6eqizq6g6Dn0KVUSs56xsO-6EHyQ,8070
|
|
35
|
+
recce/data/__next._tree.txt,sha256=214v8neRplMPJ9WCQmIS72_pqXEY92rJbkd_0Lfqmqo,900
|
|
36
|
+
recce/data/auth_callback.html,sha256=H-XfdlAFiw5VU2RpKBVQbwh1AIqJrPHrFA0S09nNJZA,94779
|
|
37
|
+
recce/data/favicon.ico,sha256=B2mBumUOnzvUrXrqNkrc5QfdDXjzEXRcWkWur0fJ6sM,2565
|
|
38
|
+
recce/data/index.html,sha256=BbCH-R30b2FPtUiz3HlfN9YAXF0Bh3xYoTRlWLE-5Rc,28941
|
|
39
|
+
recce/data/index.txt,sha256=2yv9-t12KqNsZ4VNce7Y4_cj0ndS-Ez6gWKXx3Q2ZWU,10155
|
|
40
|
+
recce/data/404/index.html,sha256=UVNZXi99MpSwgO_vtvgSvamUFMztzZOcsuHPzMDZR-k,26886
|
|
41
|
+
recce/data/_next/static/chunks/025a7e3e3f9f40ae.js,sha256=rOc8WokLfdpWrnNxuIq_fq4tfP0VP8DwzBMJZ43H-50,174692
|
|
42
|
+
recce/data/_next/static/chunks/0ce56d67ef5779ca.js,sha256=0aOpQ4EQOrCPh9lQAZiVJLE-Q7zVgU3kJuKhnUvt1y0,93091
|
|
43
|
+
recce/data/_next/static/chunks/1a6a78780155dac7.js,sha256=CdOegRmpUUNCCqhVrkNljexLd1jM8W6gPiUyN5OJ0PA,172887
|
|
44
|
+
recce/data/_next/static/chunks/1de8485918b9182a.css,sha256=rt7z52vPIrlyx9aKsNuh8bEjVTU-C7m7m3uztp0zD-I,15538
|
|
45
|
+
recce/data/_next/static/chunks/1e4b1b50d1e34993.js,sha256=Ars9KX22w8WR2FdA8jg9Es7en-aeCZozcep40cLj550,29737
|
|
46
|
+
recce/data/_next/static/chunks/206d5d181e4c738e.js,sha256=Rs3VpgT5XONFfJQ_Z-P6BbU2OgbTB9Yp7lcBcMjVF3I,20116
|
|
47
|
+
recce/data/_next/static/chunks/2c357efc34c5b859.js,sha256=_7ZIusm3-Klwk6lOmKPUlPdxraCNw1lUA-lUU7lH0Ps,405348
|
|
48
|
+
recce/data/_next/static/chunks/2e9d95d2d48c479c.js,sha256=FKL5fPCCvJ1bUnDx721jrS4VIgNQZXn0TQcgvR0biko,27948
|
|
49
|
+
recce/data/_next/static/chunks/2f016dc4a3edad2e.js,sha256=wuHBAbH8qRPC3bMZSco9NpI0FHtqxym6MWmHxy5Qu6k,84376
|
|
50
|
+
recce/data/_next/static/chunks/313251962d698f7c.js,sha256=yIGfATfAvt9D9pzZm6EB2woCKQbFSB4Px3qqXoHIU24,440
|
|
51
|
+
recce/data/_next/static/chunks/3a9f021f38eb5574.css,sha256=SXXGi5Mue-CmYS4h6GKVgCwCAwb1JP9YIH0KP5rOO3I,12396
|
|
52
|
+
recce/data/_next/static/chunks/40079da8d2b8f651.js,sha256=NQi4p_6u2WaQQUU_BYpaEboqhAK26_8uR_Ga71gEpaE,15512
|
|
53
|
+
recce/data/_next/static/chunks/4599182bffb64661.js,sha256=f_pkryuB1c4EkOzDjSrcvTAjzgA1qrc-zpV_j_CXy4I,80248
|
|
54
|
+
recce/data/_next/static/chunks/4e62f6e184173580.js,sha256=3zVhR6h7yw16S5Fku4Be8kBm8SbK5hTvqwBDt3WXHMY,29737
|
|
55
|
+
recce/data/_next/static/chunks/5c4dfb0d09eaa401.js,sha256=0bySikUAHpLgNOi_9c7Kp7mZi3xkGw2NwRoWZqXO-oY,7219
|
|
56
|
+
recce/data/_next/static/chunks/69e4f06ccfdfc3ac.js,sha256=bDd7rdLQ3l0ERP_R75iC6KJr9LOQBX-4Lh-QW0aVvmE,12881
|
|
57
|
+
recce/data/_next/static/chunks/6b206cb4707d6bee.js,sha256=B-Ep9aZyeBH1zA7l1yXk9gjdOsFgki_zqe3GUPgd-BM,440
|
|
58
|
+
recce/data/_next/static/chunks/6d8557f062aa4386.css,sha256=MlgjxPGfcm3dWpwn8RZQaP4YtoIUW6M62XKopFlYtis,2957
|
|
59
|
+
recce/data/_next/static/chunks/7fbe3650bd83b6b5.js,sha256=w7mKQG-6o4Pv504eL56DSdqlL0-tdpMcNpTZFwwTpmA,4951
|
|
60
|
+
recce/data/_next/static/chunks/83fa823a825674f6.js,sha256=ZB-GXtRvNiziwDOzRWAzeuNSXATAF4XF-LFdNJSQAJY,30746
|
|
61
|
+
recce/data/_next/static/chunks/848a6c9b5f55f7ed.js,sha256=R699K85Acm9as9890ypfbrU9NVCiShRlpjJ40Ra2VXY,1273
|
|
62
|
+
recce/data/_next/static/chunks/859462b0858aef88.css,sha256=uSRJVK5WQZu_EXy-BtMLYkQVU8ies8oeGYhRSe9SH-c,8572
|
|
63
|
+
recce/data/_next/static/chunks/923964f18c87d0f1.css,sha256=vB4QbU4MAeW0I6PF1Wm-yglXwXrX6xf-ru7hFk1EnuY,1799
|
|
64
|
+
recce/data/_next/static/chunks/939390f911895d7c.js,sha256=JEBd-3jSCEieJgBGrFV4inCMf9ZRYORqG5hirMPtZ9s,172887
|
|
65
|
+
recce/data/_next/static/chunks/99a9817237a07f43.js,sha256=RKul9jIW0h5M7cizGBxy6V0sHKUbEiyl4JgTiL0Zca8,29737
|
|
66
|
+
recce/data/_next/static/chunks/9fed8b4b2b924054.js,sha256=6T4ZIAjWJDZNU4e-TH8oppnTWAVkMTvVSYNYgaXYHbI,1785127
|
|
67
|
+
recce/data/_next/static/chunks/a6dad97d9634a72d.js,sha256=CXPB1kyIrcjjyVBBDLWLKI9yEY1ZZbeASUON648vloM,112594
|
|
68
|
+
recce/data/_next/static/chunks/b6949f6c5892110c.js,sha256=3JV0fQPqn7OL5eIqzH2pmsUybKesfC12yrmecIJGZPM,1468
|
|
69
|
+
recce/data/_next/static/chunks/b851a1d3f8149828.js,sha256=ac6TuzYwbEpdg_gWMXJWUWY4XPCstxworyodlyPV5pM,119839
|
|
70
|
+
recce/data/_next/static/chunks/c734f9ad957de0b4.js,sha256=fz3ogjk1Wan2duSu7T73mfR5qQZva8Z4MneBkWGNK4M,283
|
|
71
|
+
recce/data/_next/static/chunks/cdde321b0ec75717.js,sha256=Ckh6S8wwqwqbPDaNWd6ENOz9jLLncR7vqpTae3ifpuQ,10305
|
|
72
|
+
recce/data/_next/static/chunks/d0f91117d77ff844.css,sha256=JcMeYq6PYzPIXv6t2e8xoHD2JVVqN49CMDvI5LsmO1o,561
|
|
73
|
+
recce/data/_next/static/chunks/d6c8667911c2500f.js,sha256=sJIIcsWr5TtcfnPnHatN5D_xf0gQRjTAp0GAKoJ5VjU,213907
|
|
74
|
+
recce/data/_next/static/chunks/da8dab68c02752cf.js,sha256=W5O2UV7KaITUdjMHrsAi9xR598guQFHTFY6n26Fw1Is,922023
|
|
75
|
+
recce/data/_next/static/chunks/dc074049c9d12d97.js,sha256=p0gCbQdt2nkL7pxaqL-o6N7zewVGcRkZRBq20L6yVTI,114172
|
|
76
|
+
recce/data/_next/static/chunks/ee7f1a8227342421.js,sha256=buyZVNJX310ZivnAKsznX0rERLhPwvp7CtycV-HEoSU,1389
|
|
77
|
+
recce/data/_next/static/chunks/fa2f4e56c2fccc73.js,sha256=C4Z3H0SGkujIdNYOdeg6mldZ5j8lUb_8nwj0FYqSjJE,440
|
|
78
|
+
recce/data/_next/static/chunks/turbopack-1fad664f62979b93.js,sha256=H5AKpg3wN8ADKK07g97Kz5KBFZn55Yh-hpy9QgsYYRA,9910
|
|
79
|
+
recce/data/_next/static/media/favicon.a8d38d84.ico,sha256=B2mBumUOnzvUrXrqNkrc5QfdDXjzEXRcWkWur0fJ6sM,2565
|
|
80
|
+
recce/data/_next/static/media/montserrat-cyrillic-800-normal.d80d830d.woff2,sha256=6XlujeGVTucujV3iPSa7j1d9S5A6uuH-EduJBCeVFu8,11180
|
|
81
|
+
recce/data/_next/static/media/montserrat-cyrillic-800-normal.f9d58125.woff,sha256=XiXifLCW_CfSR4eNCIxDzi3Cg59f6L34ARTHrw-hoDA,10924
|
|
82
|
+
recce/data/_next/static/media/montserrat-cyrillic-ext-800-normal.076c2a93.woff2,sha256=9hQT0vu2HmOb21Pk5Ht7bydZU7QIsY7rCyAPtm1VxM8,12144
|
|
83
|
+
recce/data/_next/static/media/montserrat-cyrillic-ext-800-normal.a4fa76b5.woff,sha256=lpODDPTBtDBAla5_gN_MO8RAFRT1bUJQ1XsBGNN3LHA,12036
|
|
84
|
+
recce/data/_next/static/media/montserrat-latin-800-normal.cde454cc.woff2,sha256=uoJvuEwulhV4rfOgi1d4uHkF1EQ0RdHVbYT58VfV6ks,19012
|
|
85
|
+
recce/data/_next/static/media/montserrat-latin-800-normal.d5761935.woff,sha256=JvnmESYLcsQ0Z9Cgq09WxQaOxDHkHZ4wiPp0EXyghtg,20660
|
|
86
|
+
recce/data/_next/static/media/montserrat-latin-ext-800-normal.40ec0659.woff2,sha256=Wfbr63GhTGTtxTjrp4oBDBye9oCmalWew89LDRLbGos,33624
|
|
87
|
+
recce/data/_next/static/media/montserrat-latin-ext-800-normal.b671449b.woff,sha256=1UdAsVT5LZ__hVWZ8WuyQ16miAO5eVOIV0Qy1FCS17c,41688
|
|
88
|
+
recce/data/_next/static/media/montserrat-vietnamese-800-normal.9f7b8541.woff,sha256=IOzp6YFKpjBM18q3jyRJYrgPJpNGDnEehwa3vyleQ6s,7328
|
|
89
|
+
recce/data/_next/static/media/montserrat-vietnamese-800-normal.f9eb854e.woff2,sha256=JPFJw2_X2Eih976ylPgpqHZJJxgdMAL3sCAhKV51-P0,7900
|
|
90
|
+
recce/data/_next/static/nX-Uz0AH6Tc6hIQUFGqaB/_buildManifest.js,sha256=lHbgr9P52mimTm7FhjEZH9PqymLJ9aN351F_6aieWeo,219
|
|
91
|
+
recce/data/_next/static/nX-Uz0AH6Tc6hIQUFGqaB/_clientMiddlewareManifest.json,sha256=T1PNoYwrqgwDVLtfmj7L5e0Sq02OEbqHPC8RFhICuUU,2
|
|
92
|
+
recce/data/_next/static/nX-Uz0AH6Tc6hIQUFGqaB/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
|
|
93
|
+
recce/data/_not-found/__next._full.txt,sha256=PhoZBUQXVR-EJoamdjd_VnOeZR3IHXCe-eX48FC7VxM,8614
|
|
94
|
+
recce/data/_not-found/__next._head.txt,sha256=L1xYhymj_nSVAZANl4F9LC0Qnzau5XvbqDbYgC6tqBk,1139
|
|
95
|
+
recce/data/_not-found/__next._index.txt,sha256=IoXf-ZyL5uMNoSWvPmj4UCyJVgG-AjtDcp51qqHFivA,4952
|
|
96
|
+
recce/data/_not-found/__next._not-found.__PAGE__.txt,sha256=HDQGlUGx1MSwbXXopa8tZ6iFfN5L3OrTHFrp0dYdbeE,1450
|
|
97
|
+
recce/data/_not-found/__next._not-found.txt,sha256=-HntdvSmiL0r_eX1h1QXLmOcblb0eUVznxNWTL67Uw8,434
|
|
98
|
+
recce/data/_not-found/__next._tree.txt,sha256=Py_I7xg2Os5-P_depVVbM4M4ExR2banEWCyc58RgREA,711
|
|
99
|
+
recce/data/_not-found/index.html,sha256=UVNZXi99MpSwgO_vtvgSvamUFMztzZOcsuHPzMDZR-k,26886
|
|
100
|
+
recce/data/_not-found/index.txt,sha256=PhoZBUQXVR-EJoamdjd_VnOeZR3IHXCe-eX48FC7VxM,8614
|
|
101
|
+
recce/data/checks/__next.@lineage.__DEFAULT__.txt,sha256=z2Tao33BxSgm0G4gLlXXb8IwjcOddo2lAygJDt3aims,1268
|
|
102
|
+
recce/data/checks/__next._full.txt,sha256=tyKoVY7ibQA_gEXyU72P4OJVVJiC-k1vPryZJKvsfw0,11516
|
|
103
|
+
recce/data/checks/__next._head.txt,sha256=bwlMRNh8v9PVquYO1AJmVfA9liNOA0ORjXHmGBZMQLU,1088
|
|
104
|
+
recce/data/checks/__next._index.txt,sha256=ckQvSQcHluZ3xmn6eqizq6g6Dn0KVUSs56xsO-6EHyQ,8070
|
|
105
|
+
recce/data/checks/__next._tree.txt,sha256=coPsVGETp_po-RBaDJFYXgY9bMmgisHXmCWjJAQCCCY,906
|
|
106
|
+
recce/data/checks/__next.checks.__PAGE__.txt,sha256=ojalvfcOvRniwMf0gfvG1upkS9UIKd830vbvGDDHMiw,1559
|
|
107
|
+
recce/data/checks/__next.checks.txt,sha256=-HntdvSmiL0r_eX1h1QXLmOcblb0eUVznxNWTL67Uw8,434
|
|
108
|
+
recce/data/checks/index.html,sha256=oDz2mkzPpC5VIXCDM9vuXhLMbo3CrutkVhrhpDnPURM,32214
|
|
109
|
+
recce/data/checks/index.txt,sha256=tyKoVY7ibQA_gEXyU72P4OJVVJiC-k1vPryZJKvsfw0,11516
|
|
110
|
+
recce/data/imgs/reload-image.svg,sha256=l-jdOsD0OBCpFrVYh1ubO8oajafPuPNs6MYnbanO7K0,840
|
|
111
|
+
recce/data/imgs/feedback/thumbs-down.png,sha256=q9KVIbaZku1TWkYHuleYlO-b6HsTApYh3St5xNHMGMg,10695
|
|
112
|
+
recce/data/imgs/feedback/thumbs-up.png,sha256=VF3BH8bmYEqcSsMDJO57xMqW4t6crCXUXaMlOPgI_OE,10556
|
|
113
|
+
recce/data/lineage/__next.@lineage.__DEFAULT__.txt,sha256=z2Tao33BxSgm0G4gLlXXb8IwjcOddo2lAygJDt3aims,1268
|
|
114
|
+
recce/data/lineage/__next._full.txt,sha256=Pwd-r45GCsScEKzLgpdzT7JoWWAqkKvJhrkiVFaeGaA,11518
|
|
115
|
+
recce/data/lineage/__next._head.txt,sha256=bwlMRNh8v9PVquYO1AJmVfA9liNOA0ORjXHmGBZMQLU,1088
|
|
116
|
+
recce/data/lineage/__next._index.txt,sha256=ckQvSQcHluZ3xmn6eqizq6g6Dn0KVUSs56xsO-6EHyQ,8070
|
|
117
|
+
recce/data/lineage/__next._tree.txt,sha256=7XFDaJbeDAMO8SIS_Fu9OE8CT2DHwCDt6Sw3NIaV5BE,908
|
|
118
|
+
recce/data/lineage/__next.lineage.__PAGE__.txt,sha256=PrqEITviikmQUs-1AYIdbs0ZnlsUeDWTI4Bn-nUam0I,1559
|
|
119
|
+
recce/data/lineage/__next.lineage.txt,sha256=-HntdvSmiL0r_eX1h1QXLmOcblb0eUVznxNWTL67Uw8,434
|
|
120
|
+
recce/data/lineage/index.html,sha256=IQHrmSA39ozDaUYY1h8wqkx7tf0spFuwPoDBpLlIleU,30935
|
|
121
|
+
recce/data/lineage/index.txt,sha256=Pwd-r45GCsScEKzLgpdzT7JoWWAqkKvJhrkiVFaeGaA,11518
|
|
122
|
+
recce/data/logo/recce-logo-white.png,sha256=y3re8iEucJnMUkAkRS2CjWHTlOydyvgWdWjuQKcXDbk,46923
|
|
123
|
+
recce/data/query/__next.@lineage.__DEFAULT__.txt,sha256=z2Tao33BxSgm0G4gLlXXb8IwjcOddo2lAygJDt3aims,1268
|
|
124
|
+
recce/data/query/__next._full.txt,sha256=2cJV-j3R92S-QrSKHRCWrnljVejmNeIXbJVF_nBXcTM,11183
|
|
125
|
+
recce/data/query/__next._head.txt,sha256=bwlMRNh8v9PVquYO1AJmVfA9liNOA0ORjXHmGBZMQLU,1088
|
|
126
|
+
recce/data/query/__next._index.txt,sha256=ckQvSQcHluZ3xmn6eqizq6g6Dn0KVUSs56xsO-6EHyQ,8070
|
|
127
|
+
recce/data/query/__next._tree.txt,sha256=_00IyHkY6CKCkdzvxDunD2RhbqWJKqGE9iZK4B5fMQU,904
|
|
128
|
+
recce/data/query/__next.query.__PAGE__.txt,sha256=SYFe-etxmHi7st8Ehx4jjxD9LSbFr1qA-1vHSZmpM-I,1260
|
|
129
|
+
recce/data/query/__next.query.txt,sha256=-HntdvSmiL0r_eX1h1QXLmOcblb0eUVznxNWTL67Uw8,434
|
|
130
|
+
recce/data/query/index.html,sha256=meq1LXgVUXae41qH6m6c7Q2227zepWwtYGmvjHcU-B0,69114
|
|
131
|
+
recce/data/query/index.txt,sha256=2cJV-j3R92S-QrSKHRCWrnljVejmNeIXbJVF_nBXcTM,11183
|
|
132
|
+
recce/event/CONFIG,sha256=w8_AVcNu_JF-t8lNmjOqtsXbeOawMzpEhkISaMlm-iU,48
|
|
133
|
+
recce/event/CONFIG.bak,sha256=bs3XW12lptHahbwPpu0ibjLsgqlFK0j9UtjbA0IoTec,25
|
|
134
|
+
recce/event/SENTRY_DNS,sha256=nWXZevLC4qDScvNtjs329X13oxqvtFI_Kiu6cfCDOBA,83
|
|
135
|
+
recce/event/__init__.py,sha256=UKo0U0OZTkWsr7QBnCwXOHu7XtY0dhYPRTXuCsX8uIw,8847
|
|
136
|
+
recce/event/collector.py,sha256=6Vvcz9zejNNMytZ_K0HFV_kN6-S5B-SUOglBrlSPBo8,5884
|
|
137
|
+
recce/event/track.py,sha256=3wBzpB8l2gtnDzjh-wJatmLeBbtnP0q-BLQZQVQ23sM,5310
|
|
138
|
+
recce/models/__init__.py,sha256=F7cgALtdWnwv37R0eEgKZ_yBsMwxWnUfo3jAZ3u6qyU,209
|
|
139
|
+
recce/models/check.py,sha256=dSXnPZIUD8z8xy8Z9csSLxVQSOcqjfftqJLxTDw7GoA,16515
|
|
140
|
+
recce/models/run.py,sha256=QK2gvOWvko9YYhd2NLs3BPt5l4MSCZGwpzTAiqx9zJw,1161
|
|
141
|
+
recce/models/types.py,sha256=K8oWuYueqY2C7pKu65wSCaKMglPvtBH5DUkGrSYfFPk,6700
|
|
142
|
+
recce/state/__init__.py,sha256=V1FRPTQJUz-uwI3Cn8wDa5Z9bueVs86MR_1Ti4RGfPc,650
|
|
143
|
+
recce/state/cloud.py,sha256=7a6g9FXPVfq-beHQ8I7STlRMR2Y_peMJnlqysmeM7OY,25987
|
|
144
|
+
recce/state/const.py,sha256=5XwGWEv4RhGucgl1RHWg_67gVY7fV0-jsbZPpfnOCTs,828
|
|
145
|
+
recce/state/local.py,sha256=bZIkl7cAfyYaGgYEr3uD_JLrtwlHBnu8_o1Qz2djQzw,1920
|
|
146
|
+
recce/state/state.py,sha256=EKx4h0unxjC-dt2EGYFUyjKijotKHbE_wdS5AWBEq1k,3645
|
|
147
|
+
recce/state/state_loader.py,sha256=i4mw0nQ75uwB-O42HZvbYSJFkfSW7ak5mIhfapX5vi4,5965
|
|
148
|
+
recce/tasks/__init__.py,sha256=b553AtDHjYROgmMePv_Hv_X3fjh4iEn11gzzpUJz6_o,610
|
|
149
|
+
recce/tasks/core.py,sha256=JFYa1CfgOiRPQ7KVTwMuxJjhMB-pvCwB-xezVt-h3RU,4080
|
|
150
|
+
recce/tasks/dataframe.py,sha256=F9tOIjdJA_mkgzGmqdzfSfmhpJhdDb9DYYpWXAuBOyE,5868
|
|
151
|
+
recce/tasks/histogram.py,sha256=SMdSznzrBdAFvAbhsoUGAK9o0QUMYy00IVbamUVTpBk,13601
|
|
152
|
+
recce/tasks/lineage.py,sha256=_PbY0ZkDr620U8V2olqoX_T9XA0-G8ILt_6m1Q5TfBs,541
|
|
153
|
+
recce/tasks/profile.py,sha256=gMgms9qvdDsihh2aSC6LvCm9ggah4Oq3xjvmCh_exrU,11352
|
|
154
|
+
recce/tasks/query.py,sha256=NBNYRVgrc84NC12bq_daCPQ5HwMknPI_BQzMVsdqH98,14782
|
|
155
|
+
recce/tasks/rowcount.py,sha256=WZ1vNI0YJ40G-DBgx2apjNAhoQg1bvzrtBpUZFou1Nc,9908
|
|
156
|
+
recce/tasks/schema.py,sha256=s7CsmUoKNDx-WM87X_cCOpKieKxqEZITFzQTEq3ZckU,2432
|
|
157
|
+
recce/tasks/top_k.py,sha256=vY3VCBmg61E8I4V-9-hJOv5RCYCmhxl6sHiKR9Zv7eE,5521
|
|
158
|
+
recce/tasks/utils.py,sha256=xuU_5ZfQEZdSnNgxBJPsd-1sZfrraeKSRco7hhy4RKU,4966
|
|
159
|
+
recce/tasks/valuediff.py,sha256=IV2SOBeGMGHMGatmJQe12-Rfjp9y9B9qXaOndCR_EfM,18837
|
|
160
|
+
recce/util/__init__.py,sha256=cDvL3WT32cJR9CUPIJmibwJoyYcB3ZaKBFbOZDyvqP8,95
|
|
161
|
+
recce/util/api_token.py,sha256=iLS3VzLlsTfbXBLDoPPelmVlj6UdcEtGmfxdFQxXXSg,3223
|
|
162
|
+
recce/util/breaking.py,sha256=QMVq2l2fR7gNT4-n4kdhFTPf2NFev-jzecBSw_AwqFg,13086
|
|
163
|
+
recce/util/cache.py,sha256=QB6wzxe0M3jNTwP0M27Ys8F2hF-oda4-LyXXG9THuZQ,646
|
|
164
|
+
recce/util/cll.py,sha256=p8BrsG_1Lm-jXO8n4ulUgFw13C4mN0WjCXZbihDxQrs,13253
|
|
165
|
+
recce/util/io.py,sha256=UTUDncG4habAZZSZ1Y7i7Zpzu6FBtsfWI3y96k-0zkc,3495
|
|
166
|
+
recce/util/lineage.py,sha256=0XXOO05eJ3GPUNX9V9GBQS2iRFXxWZJoJbV7w-jQ0t8,2470
|
|
167
|
+
recce/util/logger.py,sha256=6UgLFkRiur9jJfu2ZRdo4LUvMw4f75V-l-1HT1-sgKo,747
|
|
168
|
+
recce/util/onboarding_state.py,sha256=kwFirKlfXdl5WFkR_nmilqGKFyELNcSPMqYq-by35fk,1991
|
|
169
|
+
recce/util/perf_tracking.py,sha256=FjhrdbbXIgybxS_oPpFsJ9VUDR93d7bUs8VNNqpXNxw,2483
|
|
170
|
+
recce/util/pydantic_model.py,sha256=KumKuyCjbTzEMsKLE4-b-eZfp0gLhYDdmVtw1-hxiJw,587
|
|
171
|
+
recce/util/recce_cloud.py,sha256=fTYOX8_ihvjovlnfPIl2sS-H72JD7v75--OwxDhISK4,18598
|
|
172
|
+
recce/util/singleton.py,sha256=1cU99I0f9tjuMQLMJyLsK1oK3fZJMsO5-TbRHAMXqds,627
|
|
173
|
+
recce/util/startup_perf.py,sha256=SU5yGG6R-U6VYWcbFtzxzNpfzbBqEgwLoQlj5H0E3vU,3764
|
|
174
|
+
recce/util/cloud/__init__.py,sha256=RIaTM5FZSUj1U4pVTJqvzUQxIdPZK-Re1i_vOwi3ECE,335
|
|
175
|
+
recce/util/cloud/base.py,sha256=vGeQK8YZD-bPTwA9mYuaND5qUnd1HZpXeTaoJ0oixXU,3717
|
|
176
|
+
recce/util/cloud/check_events.py,sha256=o8TibA0XxaPUajJaeS5tSafnDn7NdFfmwWILGMW4I5I,6303
|
|
177
|
+
recce/util/cloud/checks.py,sha256=4hxJpPZHzv3w2fEGXXo3PYMhDFPOE77fhqalaHCnpFI,7289
|
|
178
|
+
recce/yaml/__init__.py,sha256=PAym5akbtL24Ag7VR7EW8SS2VINNaJU06esbfe-ek-U,1328
|
|
179
|
+
recce_nightly-1.30.0.20251221.dist-info/METADATA,sha256=1i7otiJHb8NYrmZzVr34Qigiqez-1giWo0Jq_SWS_Uw,10253
|
|
180
|
+
recce_nightly-1.30.0.20251221.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
181
|
+
recce_nightly-1.30.0.20251221.dist-info/entry_points.txt,sha256=oqoY_IiwIqXbgrIsPnlqUqao2eiIeP2dprowkOlmeyg,40
|
|
182
|
+
recce_nightly-1.30.0.20251221.dist-info/licenses/LICENSE,sha256=CQjjMy9aYPhfe8xG_bcpIfKtNkdxLZ5IOb8oPygtUhY,11343
|
|
183
|
+
recce_nightly-1.30.0.20251221.dist-info/RECORD,,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
self.__BUILD_MANIFEST={__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/_error":["static/chunks/pages/_error-e7650df18ca04bde.js"],sortedPages:["/_app","/_error"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|