pointblank 0.13.4__py3-none-any.whl → 0.14.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.
Files changed (36) hide show
  1. pointblank/__init__.py +4 -0
  2. pointblank/_constants.py +54 -0
  3. pointblank/_constants_translations.py +487 -2
  4. pointblank/_interrogation.py +182 -11
  5. pointblank/_utils.py +3 -3
  6. pointblank/_utils_ai.py +850 -0
  7. pointblank/cli.py +128 -115
  8. pointblank/column.py +1 -1
  9. pointblank/data/api-docs.txt +198 -13
  10. pointblank/data/validations/README.md +108 -0
  11. pointblank/data/validations/complex_preprocessing.json +54 -0
  12. pointblank/data/validations/complex_preprocessing.pkl +0 -0
  13. pointblank/data/validations/generate_test_files.py +127 -0
  14. pointblank/data/validations/multiple_steps.json +83 -0
  15. pointblank/data/validations/multiple_steps.pkl +0 -0
  16. pointblank/data/validations/narwhals_function.json +28 -0
  17. pointblank/data/validations/narwhals_function.pkl +0 -0
  18. pointblank/data/validations/no_preprocessing.json +83 -0
  19. pointblank/data/validations/no_preprocessing.pkl +0 -0
  20. pointblank/data/validations/pandas_compatible.json +28 -0
  21. pointblank/data/validations/pandas_compatible.pkl +0 -0
  22. pointblank/data/validations/preprocessing_functions.py +46 -0
  23. pointblank/data/validations/simple_preprocessing.json +57 -0
  24. pointblank/data/validations/simple_preprocessing.pkl +0 -0
  25. pointblank/datascan.py +4 -4
  26. pointblank/scan_profile.py +6 -6
  27. pointblank/schema.py +8 -82
  28. pointblank/thresholds.py +1 -1
  29. pointblank/validate.py +1233 -12
  30. {pointblank-0.13.4.dist-info → pointblank-0.14.0.dist-info}/METADATA +66 -8
  31. pointblank-0.14.0.dist-info/RECORD +55 -0
  32. pointblank-0.13.4.dist-info/RECORD +0 -39
  33. {pointblank-0.13.4.dist-info → pointblank-0.14.0.dist-info}/WHEEL +0 -0
  34. {pointblank-0.13.4.dist-info → pointblank-0.14.0.dist-info}/entry_points.txt +0 -0
  35. {pointblank-0.13.4.dist-info → pointblank-0.14.0.dist-info}/licenses/LICENSE +0 -0
  36. {pointblank-0.13.4.dist-info → pointblank-0.14.0.dist-info}/top_level.txt +0 -0
pointblank/__init__.py CHANGED
@@ -39,6 +39,8 @@ from pointblank.validate import (
39
39
  load_dataset,
40
40
  missing_vals_tbl,
41
41
  preview,
42
+ read_file,
43
+ write_file,
42
44
  )
43
45
  from pointblank.yaml import (
44
46
  validate_yaml,
@@ -66,6 +68,8 @@ __all__ = [
66
68
  "first_n",
67
69
  "last_n",
68
70
  "load_dataset",
71
+ "write_file",
72
+ "read_file",
69
73
  "get_data_path",
70
74
  "config",
71
75
  "connect_to_table",
pointblank/_constants.py CHANGED
@@ -40,6 +40,7 @@ ASSERTION_TYPE_METHOD_MAP = {
40
40
  "col_exists": "col_exists",
41
41
  "rows_distinct": "rows_distinct",
42
42
  "rows_complete": "rows_complete",
43
+ "prompt": "prompt",
43
44
  "col_schema_match": "col_schema_match",
44
45
  "row_count_match": "row_count_match",
45
46
  "col_count_match": "col_count_match",
@@ -81,6 +82,7 @@ ROW_BASED_VALIDATION_TYPES = [
81
82
  "col_vals_not_null",
82
83
  "col_vals_expr",
83
84
  "conjointly",
85
+ "prompt",
84
86
  ]
85
87
 
86
88
  IBIS_BACKENDS = [
@@ -174,10 +176,17 @@ REPORTING_LANGUAGES = [
174
176
  "ar",
175
177
  "hi",
176
178
  "el",
179
+ "id",
180
+ "uk",
181
+ "he",
182
+ "th",
183
+ "fa",
177
184
  ]
178
185
 
179
186
  RTL_LANGUAGES = [
180
187
  "ar",
188
+ "he",
189
+ "fa",
181
190
  ]
182
191
 
183
192
  SEVERITY_LEVEL_COLORS = {
@@ -371,6 +380,51 @@ SVG_ICONS_FOR_ASSERTION_TYPES = {
371
380
  </g>
372
381
  </g>
373
382
  </g>
383
+ </svg>""",
384
+ "prompt": """<?xml version="1.0" encoding="UTF-8"?>
385
+ <svg width="67px" height="67px" viewBox="0 0 67 67" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
386
+ <title>prompt</title>
387
+ <defs>
388
+ <radialGradient id="EyeCore" cx="50%" cy="50%" r="50%">
389
+ <stop offset="0%" style="stop-color:#ff0000;stop-opacity:1" />
390
+ <stop offset="70%" style="stop-color:#cc0000;stop-opacity:1" />
391
+ <stop offset="100%" style="stop-color:#990000;stop-opacity:1" />
392
+ </radialGradient>
393
+ <radialGradient id="EyeOuter" cx="50%" cy="50%" r="50%">
394
+ <stop offset="0%" style="stop-color:#ff3333;stop-opacity:0.8" />
395
+ <stop offset="50%" style="stop-color:#ff0000;stop-opacity:0.9" />
396
+ <stop offset="100%" style="stop-color:#660000;stop-opacity:1" />
397
+ </radialGradient>
398
+ <filter id="redGlow" color-interpolation-filters="sRGB">
399
+ <feGaussianBlur stdDeviation="2" result="coloredBlur"/>
400
+ <feMerge>
401
+ <feMergeNode in="coloredBlur"/>
402
+ <feMergeNode in="SourceGraphic"/>
403
+ </feMerge>
404
+ </filter>
405
+ </defs>
406
+ <g id="All-Icons" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
407
+ <g id="prompt" transform="translate(0.000000, 0.965517)">
408
+ <path d="M56.712234,1 C59.1975153,1 61.4475153,2.00735931 63.076195,3.63603897 C64.7048747,5.26471863 65.712234,7.51471863 65.712234,10 L65.712234,10 L65.712234,65 L10.712234,65 C8.22695259,65 5.97695259,63.9926407 4.34827294,62.363961 C2.71959328,60.7352814 1.71223397,58.4852814 1.71223397,56 L1.71223397,56 L1.71223397,10 C1.71223397,7.51471863 2.71959328,5.26471863 4.34827294,3.63603897 C5.97695259,2.00735931 8.22695259,1 10.712234,1 L10.712234,1 Z" id="rectangle" stroke="#333333" stroke-width="1" fill="#000000"></path>
409
+ <g id="eye" transform="translate(33.5, 33.5)">
410
+ <circle cx="0" cy="0" r="18" fill="#ff0000" opacity="0.3" filter="url(#redGlow)"/>
411
+ <circle cx="0" cy="0" r="15" fill="url(#EyeOuter)" stroke="#ff0000" stroke-width="1"/>
412
+ <circle cx="0" cy="0" r="12" fill="none" stroke="#ff6666" stroke-width="1.2" opacity="0.8"/>
413
+ <circle cx="0" cy="0" r="9" fill="url(#EyeCore)"/>
414
+ <circle cx="0" cy="0" r="6" fill="none" stroke="#ffcccc" stroke-width="0.8" opacity="0.6"/>
415
+ <circle cx="0" cy="0" r="3" fill="#000000" stroke="#ff0000" stroke-width="0.5"/>
416
+ <circle cx="0" cy="0" r="1" fill="#ff0000"/>
417
+ <rect x="-1" y="-8" width="2" height="6" fill="#ffffff" opacity="0.7" rx="1"/>
418
+ <rect x="-6" y="-2" width="4" height="1" fill="#ffffff" opacity="0.5" rx="0.5"/>
419
+ </g>
420
+ <g id="corner_brackets" stroke="#333333" stroke-width="1" fill="none" opacity="0.6">
421
+ <path d="M8,12 L8,8 L12,8"/>
422
+ <path d="M55,8 L59,8 L59,12"/>
423
+ <path d="M59,54 L59,58 L55,58"/>
424
+ <path d="M12,58 L8,58 L8,54"/>
425
+ </g>
426
+ </g>
427
+ </g>
374
428
  </svg>""",
375
429
  "col_schema_match": """<?xml version="1.0" encoding="UTF-8"?>
376
430
  <svg width="67px" height="67px" viewBox="0 0 67 67" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">