pointblank 0.15.0__py3-none-any.whl → 0.17.0__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.
- pointblank/__init__.py +2 -0
- pointblank/_constants.py +25 -1
- pointblank/_constants_translations.py +2361 -2
- pointblank/_interrogation.py +24 -0
- pointblank/_typing.py +37 -9
- pointblank/_utils.py +0 -355
- pointblank/_utils_llms_txt.py +661 -0
- pointblank/column.py +24 -0
- pointblank/data/api-docs.txt +336 -3
- pointblank/validate.py +2551 -926
- pointblank/yaml.py +10 -2
- {pointblank-0.15.0.dist-info → pointblank-0.17.0.dist-info}/METADATA +9 -4
- {pointblank-0.15.0.dist-info → pointblank-0.17.0.dist-info}/RECORD +17 -16
- {pointblank-0.15.0.dist-info → pointblank-0.17.0.dist-info}/WHEEL +0 -0
- {pointblank-0.15.0.dist-info → pointblank-0.17.0.dist-info}/entry_points.txt +0 -0
- {pointblank-0.15.0.dist-info → pointblank-0.17.0.dist-info}/licenses/LICENSE +0 -0
- {pointblank-0.15.0.dist-info → pointblank-0.17.0.dist-info}/top_level.txt +0 -0
pointblank/yaml.py
CHANGED
|
@@ -189,11 +189,14 @@ def _process_python_expressions(
|
|
|
189
189
|
|
|
190
190
|
Examples
|
|
191
191
|
--------
|
|
192
|
-
>>> _process_python_expressions({"python": "pl.scan_csv('data.csv').head(10)"})
|
|
193
192
|
# Returns the result of the Python expression
|
|
193
|
+
>>> import polars as pl
|
|
194
|
+
>>> expr = _process_python_expressions({"python": "pl.scan_csv('data.csv').head(10)"})
|
|
195
|
+
>>> assert isinstance(expr, pl.LazyFrame)
|
|
194
196
|
|
|
195
|
-
>>> _process_python_expressions({"python": "import polars as pl\\npl.scan_csv('data.csv')"})
|
|
196
197
|
# Returns the result of multiline Python code
|
|
198
|
+
>>> expr = _process_python_expressions({"python": "import polars as pl\\npl.scan_csv('data.csv')"})
|
|
199
|
+
>>> assert isinstance(expr, pl.LazyFrame)
|
|
197
200
|
"""
|
|
198
201
|
if isinstance(value, dict):
|
|
199
202
|
# Handle python: block syntax
|
|
@@ -233,11 +236,16 @@ class YAMLValidator:
|
|
|
233
236
|
"col_vals_not_null": "col_vals_not_null",
|
|
234
237
|
"col_vals_null": "col_vals_null",
|
|
235
238
|
"col_vals_expr": "col_vals_expr",
|
|
239
|
+
"col_vals_increasing": "col_vals_increasing",
|
|
240
|
+
"col_vals_decreasing": "col_vals_decreasing",
|
|
241
|
+
"col_vals_within_spec": "col_vals_within_spec",
|
|
236
242
|
"rows_distinct": "rows_distinct",
|
|
237
243
|
"rows_complete": "rows_complete",
|
|
238
244
|
"col_count_match": "col_count_match",
|
|
239
245
|
"row_count_match": "row_count_match",
|
|
240
246
|
"col_schema_match": "col_schema_match",
|
|
247
|
+
"tbl_match": "tbl_match",
|
|
248
|
+
"prompt": "prompt",
|
|
241
249
|
"conjointly": "conjointly",
|
|
242
250
|
"specially": "specially",
|
|
243
251
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pointblank
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.17.0
|
|
4
4
|
Summary: Find out if your data is what you think it is.
|
|
5
5
|
Author-email: Richard Iannone <riannone@me.com>
|
|
6
6
|
License: MIT License
|
|
@@ -42,7 +42,7 @@ Description-Content-Type: text/markdown
|
|
|
42
42
|
License-File: LICENSE
|
|
43
43
|
Requires-Dist: commonmark>=0.9.1
|
|
44
44
|
Requires-Dist: importlib-metadata
|
|
45
|
-
Requires-Dist: great_tables>=0.
|
|
45
|
+
Requires-Dist: great_tables>=0.20.0
|
|
46
46
|
Requires-Dist: narwhals>=2.0.1
|
|
47
47
|
Requires-Dist: typing_extensions>=3.10.0.0
|
|
48
48
|
Requires-Dist: requests>=2.31.0
|
|
@@ -95,11 +95,16 @@ Requires-Dist: openpyxl>=3.0.0; extra == "docs"
|
|
|
95
95
|
Requires-Dist: duckdb<1.3.3,>=1.2.0; extra == "docs"
|
|
96
96
|
Dynamic: license-file
|
|
97
97
|
|
|
98
|
+
> [!TIP]
|
|
99
|
+
> **📺 Featured Talk: ['Making Things Nice in Python'](https://www.youtube.com/watch?v=J6e2BKjHyPg)**
|
|
100
|
+
>
|
|
101
|
+
> Discover how Pointblank and Great Tables (used in this library) prioritize user experience in Python package design. I go over why convenient options, extensive documentation, and thoughtful API decisions is better for everyone (even when they challenge conventional Python patterns/practices).
|
|
102
|
+
|
|
98
103
|
<div align="center">
|
|
99
104
|
|
|
100
105
|
<a href="https://posit-dev.github.io/pointblank/"><img src="https://posit-dev.github.io/pointblank/assets/pointblank_logo.svg" width="85%"/></a>
|
|
101
106
|
|
|
102
|
-
_Data validation
|
|
107
|
+
_Data validation toolkit for assessing and monitoring data quality._
|
|
103
108
|
|
|
104
109
|
[](https://pypi.python.org/pypi/pointblank)
|
|
105
110
|
[](https://pypi.org/project/pointblank/#history)
|
|
@@ -453,7 +458,7 @@ Click the following headings to see some video demonstrations of the CLI:
|
|
|
453
458
|
- **Practical outputs**: Get exactly what you need: counts, extracts, summaries, or full reports
|
|
454
459
|
- **Flexible deployment**: Use in notebooks, scripts, or data pipelines
|
|
455
460
|
- **Customizable**: Tailor validation steps and reporting to your specific needs
|
|
456
|
-
- **Internationalization**: Reports can be generated in
|
|
461
|
+
- **Internationalization**: Reports can be generated in 40 languages, including English, Spanish, French, and German
|
|
457
462
|
|
|
458
463
|
## Documentation and Examples
|
|
459
464
|
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
pointblank/__init__.py,sha256=
|
|
2
|
-
pointblank/_constants.py,sha256=
|
|
3
|
-
pointblank/_constants_translations.py,sha256=
|
|
1
|
+
pointblank/__init__.py,sha256=SCEdSoGrPcyYblchEPOr41cThlidQL6ecd3byLhkJ5E,1998
|
|
2
|
+
pointblank/_constants.py,sha256=E4P3ZXHaXJtcstUQq7NzoK-N0464Njaueyz969WB7dk,103513
|
|
3
|
+
pointblank/_constants_translations.py,sha256=OjQV3gusKXdTuS3TeAHmhMf4Yxq67fWBnZs0EDtgNWI,407157
|
|
4
4
|
pointblank/_datascan_utils.py,sha256=EMfeabXm_ZsCUKPROB7rFhyOpjtRs8jcnZ_9nBtMyws,1750
|
|
5
|
-
pointblank/_interrogation.py,sha256=
|
|
5
|
+
pointblank/_interrogation.py,sha256=krI7fi6ZOnz9LEQ9s34cTw6whLkrsbJ2l7kUuxEhuUQ,115248
|
|
6
6
|
pointblank/_spec_utils.py,sha256=rOSbv0BTS4gbLk241R3VDgKXEHBED_WNimQiit5JkvI,28395
|
|
7
|
-
pointblank/_typing.py,sha256=
|
|
8
|
-
pointblank/_utils.py,sha256=
|
|
7
|
+
pointblank/_typing.py,sha256=cLF2D7UeqHR2J3WDebkWav6U4pA45zFYJxW-DWLga0E,1973
|
|
8
|
+
pointblank/_utils.py,sha256=5gQmQaunjsqs5_0PsTIiknnj_Y8uW8NydaDslmpXfSk,19483
|
|
9
9
|
pointblank/_utils_ai.py,sha256=-Eamr6vwDxhQbnB99zfumnfxbB552UUwXfXfCVkR2nM,31125
|
|
10
10
|
pointblank/_utils_check_args.py,sha256=rFEc1nbCN8ftsQQWVjCNWmQ2QmUDxkfgmoJclrZeTLs,5489
|
|
11
11
|
pointblank/_utils_html.py,sha256=uJWvS9JwQVEZgwsGmScA_u_EBRND75rzUvnJPalbRVs,3731
|
|
12
|
+
pointblank/_utils_llms_txt.py,sha256=KA101HVYPAZ0Ys7vXgckrzQmPwauFpkYtBbLvXa5nHM,22566
|
|
12
13
|
pointblank/actions.py,sha256=D6o9B2_ES9PNQg9HZwREacrrt-3A5bhdrBkL1UXz__s,18281
|
|
13
14
|
pointblank/assistant.py,sha256=BcbZIz-ooFSOPOVZg3JtBhWeT8MIH8OPLes5yC8DSzI,15895
|
|
14
15
|
pointblank/cli.py,sha256=hRVPdjU4dxZZ4XdWN2A7OEnsvWB15dXFPn-Chhi7tNs,229394
|
|
15
|
-
pointblank/column.py,sha256=
|
|
16
|
+
pointblank/column.py,sha256=k46yxEzoQZhYmZD1cOy1lDUHPTk3D1lC4Ye3yJ535FM,78617
|
|
16
17
|
pointblank/compare.py,sha256=kFd18CehHz7g-2MF1kSmJSdOoAP80q_9PaF6QzHC1ds,866
|
|
17
18
|
pointblank/datascan.py,sha256=xFhpcoLD16mJH_yhMm0NbCa5VUk5cz3iazn5RfNXlao,24710
|
|
18
19
|
pointblank/draft.py,sha256=j6uATRE3zVtBSiDj1G5JtwVdcjaIUzoCCPqiLuRSmV0,17817
|
|
@@ -21,9 +22,9 @@ pointblank/scan_profile_stats.py,sha256=qdzoGXB-zi2hmpA4mTz6LLTqMnb-NRG9ndxU9cxS
|
|
|
21
22
|
pointblank/schema.py,sha256=yir-2VNmHyNdH1vGpx3adqOXdvspJlMKhJmJQz4egqU,48794
|
|
22
23
|
pointblank/segments.py,sha256=RXp3lPr3FboVseadNqLgIeoMBh_mykrQSFp1WtV41Yg,5570
|
|
23
24
|
pointblank/thresholds.py,sha256=KhvCCB_rlUHq1RjZ6SxXZLVrolOn_D2Ppxb0ABnwCRw,25764
|
|
24
|
-
pointblank/validate.py,sha256=
|
|
25
|
-
pointblank/yaml.py,sha256=
|
|
26
|
-
pointblank/data/api-docs.txt,sha256=
|
|
25
|
+
pointblank/validate.py,sha256=ogpqPwDKTLhkYLhCFig1JVDhOmcCskcXZgObztARAZQ,895532
|
|
26
|
+
pointblank/yaml.py,sha256=B1iWeRUcWFM0OjmachPYWlCz2uHlSd3OHYoP_cqfuj8,63434
|
|
27
|
+
pointblank/data/api-docs.txt,sha256=yl2D69mES0gQX9xnJdUaQgzeu-kX9dSq7SgepUNGwuQ,623619
|
|
27
28
|
pointblank/data/game_revenue-duckdb.zip,sha256=tKIVx48OGLYGsQPS3h5AjA2Nyq_rfEpLCjBiFUWhagU,35880
|
|
28
29
|
pointblank/data/game_revenue.zip,sha256=7c9EvHLyi93CHUd4p3dM4CZ-GucFCtXKSPxgLojL32U,33749
|
|
29
30
|
pointblank/data/global_sales-duckdb.zip,sha256=2ok_cvJ1ZuSkXnw0R6_OkKYRTWhJ-jJEMq2VYsv5fqY,1336390
|
|
@@ -48,9 +49,9 @@ pointblank/data/validations/pandas_compatible.pkl,sha256=-85iBWKH_SYu8oq1752pAMK
|
|
|
48
49
|
pointblank/data/validations/preprocessing_functions.py,sha256=DudTuQVGzEnZb0UYBaPou08ad3dmdxfcOZuPMkdM6A0,1422
|
|
49
50
|
pointblank/data/validations/simple_preprocessing.json,sha256=2aBnY2fmrIwlIbEprzqxYoZtsJbQ8o0VBjnuDo_dTqo,1546
|
|
50
51
|
pointblank/data/validations/simple_preprocessing.pkl,sha256=Arp9DHWbZVYbaLR7Xg-poZyvOgplYaqAQoWD1DohiZw,6785
|
|
51
|
-
pointblank-0.
|
|
52
|
-
pointblank-0.
|
|
53
|
-
pointblank-0.
|
|
54
|
-
pointblank-0.
|
|
55
|
-
pointblank-0.
|
|
56
|
-
pointblank-0.
|
|
52
|
+
pointblank-0.17.0.dist-info/licenses/LICENSE,sha256=apLF-HWPNU7pT5bmf5KmZpD5Cklpy2u-BN_0xBoRMLY,1081
|
|
53
|
+
pointblank-0.17.0.dist-info/METADATA,sha256=HB440rwXkmZFJLu1B8VDAlmxKibagDRL5MF5HDlW_n8,22785
|
|
54
|
+
pointblank-0.17.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
55
|
+
pointblank-0.17.0.dist-info/entry_points.txt,sha256=GqqqOTOH8uZe22wLcvYjzpizqk_j4MNcUo2YM14ryCw,42
|
|
56
|
+
pointblank-0.17.0.dist-info/top_level.txt,sha256=-wHrS1SvV8-nhvc3w-PPYs1C1WtEc1pK-eGjubbCCKc,11
|
|
57
|
+
pointblank-0.17.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|