pointblank 0.15.0__py3-none-any.whl → 0.16.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/column.py CHANGED
@@ -268,9 +268,12 @@ def col(
268
268
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
269
269
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
270
270
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
271
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
272
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
271
273
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
272
274
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
273
275
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
276
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
274
277
  - [`col_exists()`](`pointblank.Validate.col_exists`)
275
278
 
276
279
  If specifying a single column with certainty (you have the exact name), `col()` is not necessary
@@ -568,9 +571,12 @@ def starts_with(text: str, case_sensitive: bool = False) -> StartsWith:
568
571
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
569
572
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
570
573
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
574
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
575
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
571
576
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
572
577
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
573
578
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
579
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
574
580
  - [`col_exists()`](`pointblank.Validate.col_exists`)
575
581
 
576
582
  The `starts_with()` selector function doesn't need to be used in isolation. Read the next
@@ -727,9 +733,12 @@ def ends_with(text: str, case_sensitive: bool = False) -> EndsWith:
727
733
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
728
734
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
729
735
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
736
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
737
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
730
738
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
731
739
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
732
740
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
741
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
733
742
  - [`col_exists()`](`pointblank.Validate.col_exists`)
734
743
 
735
744
  The `ends_with()` selector function doesn't need to be used in isolation. Read the next section
@@ -887,9 +896,12 @@ def contains(text: str, case_sensitive: bool = False) -> Contains:
887
896
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
888
897
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
889
898
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
899
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
900
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
890
901
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
891
902
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
892
903
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
904
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
893
905
  - [`col_exists()`](`pointblank.Validate.col_exists`)
894
906
 
895
907
  The `contains()` selector function doesn't need to be used in isolation. Read the next section
@@ -1047,9 +1059,12 @@ def matches(pattern: str, case_sensitive: bool = False) -> Matches:
1047
1059
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
1048
1060
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
1049
1061
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
1062
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
1063
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
1050
1064
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
1051
1065
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
1052
1066
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
1067
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
1053
1068
  - [`col_exists()`](`pointblank.Validate.col_exists`)
1054
1069
 
1055
1070
  The `matches()` selector function doesn't need to be used in isolation. Read the next section
@@ -1189,9 +1204,12 @@ def everything() -> Everything:
1189
1204
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
1190
1205
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
1191
1206
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
1207
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
1208
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
1192
1209
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
1193
1210
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
1194
1211
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
1212
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
1195
1213
  - [`col_exists()`](`pointblank.Validate.col_exists`)
1196
1214
 
1197
1215
  The `everything()` selector function doesn't need to be used in isolation. Read the next section
@@ -1341,9 +1359,12 @@ def first_n(n: int, offset: int = 0) -> FirstN:
1341
1359
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
1342
1360
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
1343
1361
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
1362
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
1363
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
1344
1364
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
1345
1365
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
1346
1366
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
1367
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
1347
1368
  - [`col_exists()`](`pointblank.Validate.col_exists`)
1348
1369
 
1349
1370
  The `first_n()` selector function doesn't need to be used in isolation. Read the next section
@@ -1497,9 +1518,12 @@ def last_n(n: int, offset: int = 0) -> LastN:
1497
1518
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
1498
1519
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
1499
1520
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
1521
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
1522
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
1500
1523
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
1501
1524
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
1502
1525
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
1526
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
1503
1527
  - [`col_exists()`](`pointblank.Validate.col_exists`)
1504
1528
 
1505
1529
  The `last_n()` selector function doesn't need to be used in isolation. Read the next section for
@@ -289,6 +289,16 @@ Validate(data: 'FrameT | Any', tbl_name: 'str | None' = None, label: 'str | None
289
289
  - Vietnamese (`"vi"`)
290
290
  - Indonesian (`"id"`)
291
291
  - Ukrainian (`"uk"`)
292
+ - Bulgarian (`"bg"`)
293
+ - Croatian (`"hr"`)
294
+ - Estonian (`"et"`)
295
+ - Hungarian (`"hu"`)
296
+ - Irish (`"ga"`)
297
+ - Latvian (`"lv"`)
298
+ - Lithuanian (`"lt"`)
299
+ - Maltese (`"mt"`)
300
+ - Slovak (`"sk"`)
301
+ - Slovenian (`"sl"`)
292
302
  - Hebrew (`"he"`)
293
303
  - Thai (`"th"`)
294
304
  - Persian (`"fa"`)
@@ -6907,9 +6917,12 @@ col(exprs: 'str | ColumnSelector | ColumnSelectorNarwhals') -> 'Column | ColumnL
6907
6917
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
6908
6918
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
6909
6919
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
6920
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
6921
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
6910
6922
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
6911
6923
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
6912
6924
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
6925
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
6913
6926
  - [`col_exists()`](`pointblank.Validate.col_exists`)
6914
6927
 
6915
6928
  If specifying a single column with certainty (you have the exact name), `col()` is not necessary
@@ -7191,9 +7204,12 @@ starts_with(text: 'str', case_sensitive: 'bool' = False) -> 'StartsWith'
7191
7204
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
7192
7205
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
7193
7206
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
7207
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
7208
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
7194
7209
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
7195
7210
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
7196
7211
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
7212
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
7197
7213
  - [`col_exists()`](`pointblank.Validate.col_exists`)
7198
7214
 
7199
7215
  The `starts_with()` selector function doesn't need to be used in isolation. Read the next
@@ -7341,9 +7357,12 @@ ends_with(text: 'str', case_sensitive: 'bool' = False) -> 'EndsWith'
7341
7357
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
7342
7358
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
7343
7359
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
7360
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
7361
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
7344
7362
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
7345
7363
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
7346
7364
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
7365
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
7347
7366
  - [`col_exists()`](`pointblank.Validate.col_exists`)
7348
7367
 
7349
7368
  The `ends_with()` selector function doesn't need to be used in isolation. Read the next section
@@ -7492,9 +7511,12 @@ contains(text: 'str', case_sensitive: 'bool' = False) -> 'Contains'
7492
7511
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
7493
7512
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
7494
7513
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
7514
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
7515
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
7495
7516
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
7496
7517
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
7497
7518
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
7519
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
7498
7520
  - [`col_exists()`](`pointblank.Validate.col_exists`)
7499
7521
 
7500
7522
  The `contains()` selector function doesn't need to be used in isolation. Read the next section
@@ -7643,9 +7665,12 @@ matches(pattern: 'str', case_sensitive: 'bool' = False) -> 'Matches'
7643
7665
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
7644
7666
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
7645
7667
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
7668
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
7669
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
7646
7670
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
7647
7671
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
7648
7672
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
7673
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
7649
7674
  - [`col_exists()`](`pointblank.Validate.col_exists`)
7650
7675
 
7651
7676
  The `matches()` selector function doesn't need to be used in isolation. Read the next section
@@ -7776,9 +7801,12 @@ everything() -> 'Everything'
7776
7801
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
7777
7802
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
7778
7803
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
7804
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
7805
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
7779
7806
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
7780
7807
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
7781
7808
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
7809
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
7782
7810
  - [`col_exists()`](`pointblank.Validate.col_exists`)
7783
7811
 
7784
7812
  The `everything()` selector function doesn't need to be used in isolation. Read the next section
@@ -7919,9 +7947,12 @@ first_n(n: 'int', offset: 'int' = 0) -> 'FirstN'
7919
7947
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
7920
7948
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
7921
7949
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
7950
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
7951
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
7922
7952
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
7923
7953
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
7924
7954
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
7955
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
7925
7956
  - [`col_exists()`](`pointblank.Validate.col_exists`)
7926
7957
 
7927
7958
  The `first_n()` selector function doesn't need to be used in isolation. Read the next section
@@ -8066,9 +8097,12 @@ last_n(n: 'int', offset: 'int' = 0) -> 'LastN'
8066
8097
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
8067
8098
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
8068
8099
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
8100
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
8101
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
8069
8102
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
8070
8103
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
8071
8104
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
8105
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
8072
8106
  - [`col_exists()`](`pointblank.Validate.col_exists`)
8073
8107
 
8074
8108
  The `last_n()` selector function doesn't need to be used in isolation. Read the next section for
@@ -8699,11 +8733,15 @@ get_step_report(self, i: 'int', columns_subset: 'str | list[str] | Column | None
8699
8733
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
8700
8734
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
8701
8735
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
8736
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
8737
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
8702
8738
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
8703
8739
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
8704
8740
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
8741
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
8705
8742
  - [`col_vals_expr()`](`pointblank.Validate.col_vals_expr`)
8706
8743
  - [`conjointly()`](`pointblank.Validate.conjointly`)
8744
+ - [`prompt()`](`pointblank.Validate.prompt`)
8707
8745
  - [`rows_complete()`](`pointblank.Validate.rows_complete`)
8708
8746
 
8709
8747
  The [`rows_distinct()`](`pointblank.Validate.rows_distinct`) validation step will produce a
@@ -9040,11 +9078,15 @@ get_data_extracts(self, i: 'int | list[int] | None' = None, frame: 'bool' = Fals
9040
9078
  - [`col_vals_outside()`](`pointblank.Validate.col_vals_outside`)
9041
9079
  - [`col_vals_in_set()`](`pointblank.Validate.col_vals_in_set`)
9042
9080
  - [`col_vals_not_in_set()`](`pointblank.Validate.col_vals_not_in_set`)
9081
+ - [`col_vals_increasing()`](`pointblank.Validate.col_vals_increasing`)
9082
+ - [`col_vals_decreasing()`](`pointblank.Validate.col_vals_decreasing`)
9043
9083
  - [`col_vals_null()`](`pointblank.Validate.col_vals_null`)
9044
9084
  - [`col_vals_not_null()`](`pointblank.Validate.col_vals_not_null`)
9045
9085
  - [`col_vals_regex()`](`pointblank.Validate.col_vals_regex`)
9086
+ - [`col_vals_within_spec()`](`pointblank.Validate.col_vals_within_spec`)
9046
9087
  - [`col_vals_expr()`](`pointblank.Validate.col_vals_expr`)
9047
9088
  - [`conjointly()`](`pointblank.Validate.conjointly`)
9089
+ - [`prompt()`](`pointblank.Validate.prompt`)
9048
9090
 
9049
9091
  An extracted row for these validation methods means that a test unit failed for that row in
9050
9092
  the validation step.
@@ -11036,6 +11078,36 @@ connect_to_table(connection_string: 'str') -> 'Any'
11036
11078
  pip install 'ibis-framework[duckdb]' # for DuckDB
11037
11079
  pip install 'ibis-framework[postgres]' # for PostgreSQL
11038
11080
  ```
11081
+ See Also
11082
+ --------
11083
+ print_database_tables : List all available tables in a database for discovery
11084
+
11085
+
11086
+ print_database_tables(connection_string: 'str') -> 'list[str]'
11087
+
11088
+ List all tables in a database from a connection string.
11089
+
11090
+ The `print_database_tables()` function connects to a database and returns a list of all
11091
+ available tables. This is particularly useful for discovering what tables exist in a database
11092
+ before connecting to a specific table with `connect_to_table(). The function automatically
11093
+ filters out temporary Ibis tables (memtables) to show only user tables. It supports all database
11094
+ backends available through Ibis, including DuckDB, SQLite, PostgreSQL, MySQL, BigQuery, and
11095
+ Snowflake.
11096
+
11097
+ Parameters
11098
+ ----------
11099
+ connection_string
11100
+ A database connection string *without* the `::table_name` suffix. Example:
11101
+ `"duckdb:///path/to/database.ddb"`.
11102
+
11103
+ Returns
11104
+ -------
11105
+ list[str]
11106
+ List of table names, excluding temporary Ibis tables.
11107
+
11108
+ See Also
11109
+ --------
11110
+ connect_to_table : Connect to a database table with full connection string documentation
11039
11111
 
11040
11112
 
11041
11113