pointblank 0.9.6__tar.gz → 0.11.0__tar.gz
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-0.9.6 → pointblank-0.11.0}/.github/workflows/ci-docs.yaml +5 -1
- {pointblank-0.9.6 → pointblank-0.11.0}/.github/workflows/ci-tests.yaml +2 -6
- {pointblank-0.9.6 → pointblank-0.11.0}/.gitignore +3 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/Makefile +1 -1
- {pointblank-0.9.6 → pointblank-0.11.0}/PKG-INFO +49 -3
- {pointblank-0.9.6 → pointblank-0.11.0}/README.md +45 -1
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/_extensions/machow/interlinks/interlinks.lua +183 -26
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/_quarto.yml +12 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank_logo.svg +160 -12
- pointblank-0.11.0/docs/assets/posit-logo-black.svg +1 -0
- pointblank-0.11.0/docs/assets/vhs/cli-cicd-workflows.gif +0 -0
- pointblank-0.11.0/docs/assets/vhs/cli-cicd-workflows.tape +51 -0
- pointblank-0.11.0/docs/assets/vhs/cli-complete-workflow.gif +0 -0
- pointblank-0.11.0/docs/assets/vhs/cli-complete-workflow.tape +59 -0
- pointblank-0.11.0/docs/assets/vhs/cli-data-exploration.gif +0 -0
- pointblank-0.11.0/docs/assets/vhs/cli-data-exploration.tape +43 -0
- pointblank-0.11.0/docs/assets/vhs/cli-essential-validations.gif +0 -0
- pointblank-0.11.0/docs/assets/vhs/cli-essential-validations.tape +43 -0
- pointblank-0.11.0/docs/assets/vhs/cli-getting-started.gif +0 -0
- pointblank-0.11.0/docs/assets/vhs/cli-getting-started.tape +43 -0
- pointblank-0.11.0/docs/blog/lets-workshop-together/index.qmd +35 -0
- pointblank-0.11.0/docs/blog/validation-libs-2025/index.qmd +726 -0
- pointblank-0.11.0/docs/demos/07-validation-with-actions/index.qmd +115 -0
- pointblank-0.11.0/docs/demos/08-validation-with-final-actions/index.qmd +113 -0
- pointblank-0.11.0/docs/demos/check-for-freshness/index.qmd +87 -0
- pointblank-0.11.0/docs/demos/cli-interactive/index.qmd +141 -0
- pointblank-0.11.0/docs/demos/custom-validation-specially/index.qmd +93 -0
- pointblank-0.11.0/docs/demos/img/validation_with_actions.png +0 -0
- pointblank-0.11.0/docs/demos/img/validation_with_final_actions.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/index.qmd +29 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/index.qmd +64 -0
- pointblank-0.11.0/docs/scripts/post-render.py +365 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/styles.css +63 -25
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/actions.qmd +33 -57
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/assertions.qmd +32 -49
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/briefs.qmd +56 -77
- pointblank-0.11.0/docs/user-guide/cli.qmd +229 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/col-summary-tbl.qmd +9 -11
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/column-selection-patterns.qmd +31 -47
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/draft-validation.qmd +43 -70
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/expressions.qmd +19 -23
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/extracts.qmd +61 -67
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/index.qmd +10 -14
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/installation.qmd +30 -2
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/missing-vals-tbl.qmd +7 -10
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/preprocessing.qmd +27 -12
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/preview.qmd +13 -20
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/schema-validation.qmd +49 -53
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/segmentation.qmd +32 -26
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/step-reports.qmd +30 -34
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/sundering.qmd +40 -47
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/thresholds.qmd +3 -4
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/validation-methods.qmd +48 -76
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/validation-overview.qmd +4 -8
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/__init__.py +4 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/_constants.py +4 -0
- pointblank-0.11.0/pointblank/_datascan_utils.py +65 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/_utils.py +126 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/_utils_html.py +40 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/assistant.py +1 -3
- pointblank-0.11.0/pointblank/cli.py +2737 -0
- pointblank-0.11.0/pointblank/compare.py +27 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/api-docs.txt +518 -125
- pointblank-0.11.0/pointblank/datascan.py +570 -0
- pointblank-0.11.0/pointblank/scan_profile.py +321 -0
- pointblank-0.11.0/pointblank/scan_profile_stats.py +180 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/schema.py +14 -3
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/validate.py +1425 -202
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank.egg-info/PKG-INFO +49 -3
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank.egg-info/SOURCES.txt +46 -0
- pointblank-0.11.0/pointblank.egg-info/entry_points.txt +2 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank.egg-info/requires.txt +3 -1
- {pointblank-0.9.6 → pointblank-0.11.0}/pyproject.toml +17 -5
- pointblank-0.11.0/tests/tbl_files/parquet_data/data_a.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/parquet_data/data_b.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/parquet_data/subdir/nested_data.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/partitioned_sales/status=cancelled/0.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/partitioned_sales/status=delivered/0.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/partitioned_sales/status=pending/0.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/partitioned_sales/status=returned/0.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/partitioned_sales/status=shipped/0.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/partitioned_small_table/f=high/0.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/partitioned_small_table/f=low/0.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/partitioned_small_table/f=mid/0.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/taxi_part_01.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/taxi_part_02.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/taxi_part_03.parquet +0 -0
- pointblank-0.11.0/tests/tbl_files/taxi_sample.parquet +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test__utils.py +19 -0
- pointblank-0.11.0/tests/test_cli.py +1764 -0
- pointblank-0.11.0/tests/test_compare.py +15 -0
- pointblank-0.11.0/tests/test_datascan.py +289 -0
- pointblank-0.11.0/tests/test_meta.py +31 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test_schema.py +35 -15
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test_validate.py +2900 -119
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.ar.md +43 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.de.md +43 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.es.md +43 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.fr.md +43 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.hi.md +43 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.it.md +43 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.ja.md +43 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.ko.md +43 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.nl.md +44 -1
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.pt-BR.md +43 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/translations/README.zh-CN.md +43 -0
- pointblank-0.9.6/pointblank/datascan.py +0 -1211
- pointblank-0.9.6/tests/test_datascan.py +0 -251
- {pointblank-0.9.6 → pointblank-0.11.0}/.github/CODE_OF_CONDUCT.md +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/.github/ISSUE_TEMPLATE/bug.md +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/.github/ISSUE_TEMPLATE/feature.md +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/.github/ISSUE_TEMPLATE/question.md +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/.github/SECURITY.md +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/.github/workflows/code-checks.yaml +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/.pre-commit-config.yaml +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/.vscode/settings.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/CITATION.cff +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/CONTRIBUTING.md +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/LICENSE +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/data_raw/game_revenue.csv +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/data_raw/global_sales.csv +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/data_raw/global_sales_dataset.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/data_raw/nycflights.csv +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/data_raw/small_table.csv +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/data_raw/x-01-parquet.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/data_raw/x-02-duckdb.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/data_raw/x-03-sqlite.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/.gitignore +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/_extensions/machow/interlinks/.gitignore +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/_extensions/machow/interlinks/_extension.yml +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/fav-logo.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.de.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.es.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.fr.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.it.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.ja.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.ko.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.nl.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.pt-BR.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-sales-data.zh-CN.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-step-report.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/pointblank-tabular-report.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/validation-table-diagram.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/assets/validation-test-units.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/all-about-actions/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/intro-pointblank/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/intro-pointblank/pointblank-localized.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/intro-pointblank/step_report.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/intro-pointblank/validation-table-diagram.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/intro-pointblank/validation-test-units.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/overhauled-user-guide/advanced-in-sidebar.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/overhauled-user-guide/breadth-and-depth.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/overhauled-user-guide/explanation-of-visual.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/overhauled-user-guide/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/overhauled-user-guide/links-in-guide.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/overhauled-user-guide/segments.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/overhauled-user-guide/step-report.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/overhauled-user-guide/validation-three-things.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/blog/pointblank_blog_logo.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/01-starter/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/02-advanced/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/03-data-extracts/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/04-sundered-data/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/05-step-report-column-check/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/06-step-report-schema-check/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/apply-checks-to-several-columns/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/check-row-column-counts/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/checks-for-missing/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/col-vals-custom-expr/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/column-selector-functions/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/comparisons-across-columns/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/data/game_revenue.parquet +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/expect-no-duplicate-rows/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/expect-no-duplicate-values/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/expect-text-pattern/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/failure-thresholds/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/img/advanced_validation.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/img/data_extracts.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/img/starter_validation.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/img/step_report_column_schema.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/img/step_report_column_values.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/img/sundered_data.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/mutate-table-in-step/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/numeric-comparisons/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/schema-check/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/set-membership/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/demos/using-parquet-data/index.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/docs/user-guide/langs.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/images/pointblank-tabular-report.png +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/images/pointblank_logo.svg +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/_constants_docs.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/_constants_translations.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/_interrogation.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/_typing.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/_utils_check_args.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/actions.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/column.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/game_revenue-duckdb.zip +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/game_revenue.zip +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/global_sales-duckdb.zip +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/global_sales.zip +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/nycflights-duckdb.zip +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/nycflights.zip +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/polars-api-docs.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/small_table-duckdb.zip +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/data/small_table.zip +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/draft.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/tf.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank/thresholds.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank.egg-info/dependency_links.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/pointblank.egg-info/top_level.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/setup.cfg +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/__init__.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/manual_tests/schema_step_reports.qmd +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_datascan/test_col_summary_tbl_duckdb_snap/col_summary_html_duckdb.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_datascan/test_col_summary_tbl_pandas_snap/col_summary_html_pandas.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_datascan/test_col_summary_tbl_polars_snap/col_summary_html_polars.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_comprehensive_validation_report_html_snap/comprehensive_validation_report.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_01/schema_step_report_01-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_01_1/schema_step_report_01-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_01_2/schema_step_report_01-2.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_01_3/schema_step_report_01-3.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_02/schema_step_report_02-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_02_1/schema_step_report_02-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_02_2/schema_step_report_02-2.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_02_3/schema_step_report_02-3.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_03/schema_step_report_03-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_03_1/schema_step_report_03-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_03_2/schema_step_report_03-2.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_03_3/schema_step_report_03-3.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_04/schema_step_report_04-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_05/schema_step_report_05-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_06/schema_step_report_06-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_07/schema_step_report_07-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_08/schema_step_report_08-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_09/schema_step_report_09-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_10/schema_step_report_10-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_11/schema_step_report_11-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_12/schema_step_report_12-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_13/schema_step_report_13-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_14/schema_step_report_14-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_14_1/schema_step_report_14-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_15/schema_step_report_15-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_15_1/schema_step_report_15-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_16/schema_step_report_16-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_16_1/schema_step_report_16-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_17/schema_step_report_17-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_17_1/schema_step_report_17-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_18/schema_step_report_18-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_18_1/schema_step_report_18-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_19/schema_step_report_19-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_19_1/schema_step_report_19-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_20/schema_step_report_20-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_20_1/schema_step_report_20-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_21/schema_step_report_21-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_21_1/schema_step_report_21-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_21_2/schema_step_report_21-2.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_21_3/schema_step_report_21-3.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_22/schema_step_report_22-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_22_1/schema_step_report_22-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_23/schema_step_report_23-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_23_1/schema_step_report_23-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_24/schema_step_report_24-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_24_1/schema_step_report_24-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_24_2/schema_step_report_24-2.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_24_3/schema_step_report_24-3.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_25/schema_step_report_25-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_25_1/schema_step_report_25-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_25_2/schema_step_report_25-2.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_25_3/schema_step_report_25-3.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_25_4/schema_step_report_25-4.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_step_report_25_5/schema_step_report_25-5.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_01-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_02-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_03-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_04-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_05-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_06-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_07-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_08-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_09-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_10-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_11-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_12-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_13-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_14-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_14-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_15-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_15-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_16-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_16-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_17-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_17-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_18-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_18-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_19-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_19-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_20-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_20-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_21-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_21-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_21-2.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_21-3.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_22-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_22-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_23-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_23-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_24-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_24-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_24-2.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_24-3.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_25-0.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_25-1.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_25-2.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_25-3.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_25-4.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_get_schema_validation_info/schema_info_25-5.txt +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_no_interrogation_validation_report_html_snap/no_interrogation_validation_report.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_no_steps_validation_report_html_snap/no_steps_validation_report.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_briefs_global_local_html/validation_report_briefs_global_local.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_briefs_html/validation_report_with_briefs.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_interrogate_snap/tbl_duckdb/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_interrogate_snap/tbl_parquet/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_interrogate_snap/tbl_pd/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_interrogate_snap/tbl_pl/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_interrogate_snap/tbl_sqlite/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_no_interrogate_snap/tbl_duckdb/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_no_interrogate_snap/tbl_parquet/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_no_interrogate_snap/tbl_pd/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_no_interrogate_snap/tbl_pl/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_no_interrogate_snap/tbl_sqlite/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_segments_html/duckdb/validation_report_segments.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_segments_html/pandas/validation_report_segments.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_segments_html/polars/validation_report_segments.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_segments_with_pre_html/polars/validation_report_segments_with_pre.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_segments_with_pre_html/validation_report_segments_with_pre.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_use_fields_snap/tbl_duckdb/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_use_fields_snap/tbl_parquet/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_use_fields_snap/tbl_pd/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_use_fields_snap/tbl_pl/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_report_use_fields_snap/tbl_sqlite/validation_report.json +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_with_selector_helper_functions_no_match_snap/tbl_memtable_variable_names/selector_helper_functions_no_match.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_with_selector_helper_functions_no_match_snap/tbl_pd_variable_names/selector_helper_functions_no_match.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/snapshots/test_validate/test_validation_with_selector_helper_functions_no_match_snap/tbl_pl_variable_names/selector_helper_functions_no_match.html +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_dates_times_text.ddb +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_dates_times_text.parquet +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_dates_times_text.sqlite +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_true_dates_times.ddb +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_xyz.ddb +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_xyz.parquet +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_xyz.sqlite +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_xyz_missing.ddb +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_xyz_missing.parquet +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/tbl_files/tbl_xyz_missing.sqlite +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test__interrogation.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test__utils_check_args.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test_actions.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test_assistant.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test_column.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test_draft.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test_tf.py +0 -0
- {pointblank-0.9.6 → pointblank-0.11.0}/tests/test_thresholds.py +0 -0
|
@@ -14,13 +14,17 @@ jobs:
|
|
|
14
14
|
- uses: actions/checkout@v4
|
|
15
15
|
- uses: actions/setup-python@v5
|
|
16
16
|
with:
|
|
17
|
-
python-version: "3.
|
|
17
|
+
python-version: "3.11"
|
|
18
18
|
- name: Install dependencies
|
|
19
19
|
run: |
|
|
20
20
|
python -m pip install -e .
|
|
21
21
|
python -m pip install ".[docs]"
|
|
22
22
|
python -m pip install ibis-framework[duckdb]
|
|
23
23
|
python -m pip install pins
|
|
24
|
+
python -m pip install pandera
|
|
25
|
+
python -m pip install patito
|
|
26
|
+
python -m pip install validoopsie
|
|
27
|
+
python -m pip install dataframely
|
|
24
28
|
- name: Set up Quarto
|
|
25
29
|
uses: quarto-dev/quarto-actions/setup@v2
|
|
26
30
|
- name: Build docs
|
|
@@ -24,12 +24,8 @@ jobs:
|
|
|
24
24
|
uses: actions/setup-python@v5
|
|
25
25
|
with:
|
|
26
26
|
python-version: ${{ matrix.python-version }}
|
|
27
|
-
- name: Install
|
|
28
|
-
|
|
29
|
-
pip install -e '.[dev]'
|
|
30
|
-
- name: Install test dependencies
|
|
31
|
-
run: |
|
|
32
|
-
pip install pytest pytest-rerunfailures pytest-randomly pytest-xdist pytest-cov pytest-snapshot pandas polars ibis-framework[duckdb,mysql,postgres,sqlite]>=9.5.0 chatlas requests shiny
|
|
27
|
+
- name: Install uv
|
|
28
|
+
uses: astral-sh/setup-uv@v5
|
|
33
29
|
- name: pytest unit tests
|
|
34
30
|
run: |
|
|
35
31
|
make test
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pointblank
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.11.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
|
|
@@ -43,9 +43,11 @@ License-File: LICENSE
|
|
|
43
43
|
Requires-Dist: commonmark>=0.9.1
|
|
44
44
|
Requires-Dist: importlib-metadata
|
|
45
45
|
Requires-Dist: great_tables>=0.17.0
|
|
46
|
-
Requires-Dist: narwhals>=1.
|
|
46
|
+
Requires-Dist: narwhals>=1.41.0
|
|
47
47
|
Requires-Dist: typing_extensions>=3.10.0.0
|
|
48
48
|
Requires-Dist: requests>=2.31.0
|
|
49
|
+
Requires-Dist: click>=8.0.0
|
|
50
|
+
Requires-Dist: rich>=13.0.0
|
|
49
51
|
Provides-Extra: pd
|
|
50
52
|
Requires-Dist: pandas>=2.2.3; extra == "pd"
|
|
51
53
|
Provides-Extra: pl
|
|
@@ -84,7 +86,7 @@ Dynamic: license-file
|
|
|
84
86
|
|
|
85
87
|
<div align="center">
|
|
86
88
|
|
|
87
|
-
<a href="https://posit-dev.github.io/pointblank/"><img src="https://posit-dev.github.io/pointblank/assets/pointblank_logo.svg" width="
|
|
89
|
+
<a href="https://posit-dev.github.io/pointblank/"><img src="https://posit-dev.github.io/pointblank/assets/pointblank_logo.svg" width="85%"/></a>
|
|
88
90
|
|
|
89
91
|
_Data validation made beautiful and powerful_
|
|
90
92
|
|
|
@@ -98,6 +100,7 @@ _Data validation made beautiful and powerful_
|
|
|
98
100
|
[](https://codecov.io/gh/posit-dev/pointblank)
|
|
99
101
|
[](https://www.repostatus.org/#active)
|
|
100
102
|
[](https://posit-dev.github.io/pointblank/)
|
|
103
|
+
[](https://deepwiki.com/posit-dev/pointblank)
|
|
101
104
|
|
|
102
105
|
[](https://github.com/posit-dev/pointblank/graphs/contributors)
|
|
103
106
|
[](https://discord.com/invite/YH7CybCNCQ)
|
|
@@ -232,6 +235,49 @@ validation.get_step_report(i=3).show("browser") # Get failing records from step
|
|
|
232
235
|
|
|
233
236
|
<br>
|
|
234
237
|
|
|
238
|
+
## Command Line Interface (CLI)
|
|
239
|
+
|
|
240
|
+
Pointblank includes a powerful CLI utility called `pb` that lets you run data validation workflows directly from the command line. Perfect for CI/CD pipelines, scheduled data quality checks, or quick validation tasks.
|
|
241
|
+
|
|
242
|
+
<div align="center">
|
|
243
|
+
<img src="https://posit-dev.github.io/pointblank/assets/vhs/cli-complete-workflow.gif" width="800px">
|
|
244
|
+
</div>
|
|
245
|
+
|
|
246
|
+
**Explore Your Data**
|
|
247
|
+
|
|
248
|
+
```bash
|
|
249
|
+
# Get a quick preview of your data
|
|
250
|
+
pb preview small_table
|
|
251
|
+
|
|
252
|
+
# Check for missing values
|
|
253
|
+
pb missing small_table
|
|
254
|
+
|
|
255
|
+
# Generate column summaries
|
|
256
|
+
pb scan small_table
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
**Run Essential Validations**
|
|
260
|
+
|
|
261
|
+
```bash
|
|
262
|
+
# Check for duplicate rows
|
|
263
|
+
pb validate-simple small_table --check rows-distinct
|
|
264
|
+
|
|
265
|
+
# Verify no null values
|
|
266
|
+
pb validate-simple small_table --check col-vals-not-null --column a
|
|
267
|
+
|
|
268
|
+
# Extract failing data for debugging
|
|
269
|
+
pb validate-simple small_table --check col-vals-gt --column a --value 5 --show-extract
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
**Integrate with CI/CD**
|
|
273
|
+
|
|
274
|
+
```bash
|
|
275
|
+
# Use exit codes for automation (0 = pass, 1 = fail)
|
|
276
|
+
pb validate-simple small_table --check rows-distinct && echo "✅ Quality checks passed"
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
Learn more in our [CLI documentation](https://posit-dev.github.io/pointblank/user-guide/cli.html).
|
|
280
|
+
|
|
235
281
|
## Features That Set Pointblank Apart
|
|
236
282
|
|
|
237
283
|
- **Complete validation workflow** - From data access to validation to reporting in a single pipeline
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
|
|
3
|
-
<a href="https://posit-dev.github.io/pointblank/"><img src="https://posit-dev.github.io/pointblank/assets/pointblank_logo.svg" width="
|
|
3
|
+
<a href="https://posit-dev.github.io/pointblank/"><img src="https://posit-dev.github.io/pointblank/assets/pointblank_logo.svg" width="85%"/></a>
|
|
4
4
|
|
|
5
5
|
_Data validation made beautiful and powerful_
|
|
6
6
|
|
|
@@ -14,6 +14,7 @@ _Data validation made beautiful and powerful_
|
|
|
14
14
|
[](https://codecov.io/gh/posit-dev/pointblank)
|
|
15
15
|
[](https://www.repostatus.org/#active)
|
|
16
16
|
[](https://posit-dev.github.io/pointblank/)
|
|
17
|
+
[](https://deepwiki.com/posit-dev/pointblank)
|
|
17
18
|
|
|
18
19
|
[](https://github.com/posit-dev/pointblank/graphs/contributors)
|
|
19
20
|
[](https://discord.com/invite/YH7CybCNCQ)
|
|
@@ -148,6 +149,49 @@ validation.get_step_report(i=3).show("browser") # Get failing records from step
|
|
|
148
149
|
|
|
149
150
|
<br>
|
|
150
151
|
|
|
152
|
+
## Command Line Interface (CLI)
|
|
153
|
+
|
|
154
|
+
Pointblank includes a powerful CLI utility called `pb` that lets you run data validation workflows directly from the command line. Perfect for CI/CD pipelines, scheduled data quality checks, or quick validation tasks.
|
|
155
|
+
|
|
156
|
+
<div align="center">
|
|
157
|
+
<img src="https://posit-dev.github.io/pointblank/assets/vhs/cli-complete-workflow.gif" width="800px">
|
|
158
|
+
</div>
|
|
159
|
+
|
|
160
|
+
**Explore Your Data**
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
# Get a quick preview of your data
|
|
164
|
+
pb preview small_table
|
|
165
|
+
|
|
166
|
+
# Check for missing values
|
|
167
|
+
pb missing small_table
|
|
168
|
+
|
|
169
|
+
# Generate column summaries
|
|
170
|
+
pb scan small_table
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
**Run Essential Validations**
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
# Check for duplicate rows
|
|
177
|
+
pb validate-simple small_table --check rows-distinct
|
|
178
|
+
|
|
179
|
+
# Verify no null values
|
|
180
|
+
pb validate-simple small_table --check col-vals-not-null --column a
|
|
181
|
+
|
|
182
|
+
# Extract failing data for debugging
|
|
183
|
+
pb validate-simple small_table --check col-vals-gt --column a --value 5 --show-extract
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
**Integrate with CI/CD**
|
|
187
|
+
|
|
188
|
+
```bash
|
|
189
|
+
# Use exit codes for automation (0 = pass, 1 = fail)
|
|
190
|
+
pb validate-simple small_table --check rows-distinct && echo "✅ Quality checks passed"
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
Learn more in our [CLI documentation](https://posit-dev.github.io/pointblank/user-guide/cli.html).
|
|
194
|
+
|
|
151
195
|
## Features That Set Pointblank Apart
|
|
152
196
|
|
|
153
197
|
- **Complete validation workflow** - From data access to validation to reporting in a single pipeline
|
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
local inventory = {} -- sphinx inventories
|
|
2
|
+
local autolink -- set in Meta
|
|
3
|
+
local autolink_ignore_token = "qd-no-link"
|
|
4
|
+
|
|
5
|
+
local function _debug_log(text, debug)
|
|
6
|
+
if debug then
|
|
7
|
+
quarto.log.warning(text)
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
|
|
1
11
|
local function read_inv_text(filename)
|
|
2
12
|
-- read file
|
|
3
13
|
local file = io.open(filename, "r")
|
|
@@ -11,16 +21,16 @@ local function read_inv_text(filename)
|
|
|
11
21
|
local project = str:match("# Project: (%S+)")
|
|
12
22
|
local version = str:match("# Version: (%S+)")
|
|
13
23
|
|
|
14
|
-
local data = {project = project, version = version, items = {}}
|
|
24
|
+
local data = { project = project, version = version, items = {} }
|
|
15
25
|
|
|
16
26
|
local ptn_data =
|
|
17
27
|
"^" ..
|
|
18
|
-
"(.-)%s+" ..
|
|
19
|
-
"([%S:]-):" ..
|
|
20
|
-
"([%S]+)%s+" ..
|
|
21
|
-
"(%-?%d+)%s+" ..
|
|
22
|
-
"(%S*)%s+" ..
|
|
23
|
-
"(.-)\r?$"
|
|
28
|
+
"(.-)%s+" .. -- name
|
|
29
|
+
"([%S:]-):" .. -- domain
|
|
30
|
+
"([%S]+)%s+" .. -- role
|
|
31
|
+
"(%-?%d+)%s+" .. -- priority
|
|
32
|
+
"(%S*)%s+" .. -- uri
|
|
33
|
+
"(.-)\r?$" -- dispname
|
|
24
34
|
|
|
25
35
|
|
|
26
36
|
-- Iterate through each line in the file content
|
|
@@ -48,7 +58,6 @@ local function read_inv_text(filename)
|
|
|
48
58
|
end
|
|
49
59
|
|
|
50
60
|
local function read_json(filename)
|
|
51
|
-
|
|
52
61
|
local file = io.open(filename, "r")
|
|
53
62
|
if file == nil then
|
|
54
63
|
return nil
|
|
@@ -66,7 +75,6 @@ local function read_inv_text_or_json(base_name)
|
|
|
66
75
|
-- TODO: refactors so we don't just close the file immediately
|
|
67
76
|
io.close(file)
|
|
68
77
|
json = read_inv_text(base_name .. ".txt")
|
|
69
|
-
|
|
70
78
|
else
|
|
71
79
|
json = read_json(base_name .. ".json")
|
|
72
80
|
end
|
|
@@ -74,10 +82,8 @@ local function read_inv_text_or_json(base_name)
|
|
|
74
82
|
return json
|
|
75
83
|
end
|
|
76
84
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
local function lookup(search_object)
|
|
80
|
-
|
|
85
|
+
-- each inventory has entries: project, version, items
|
|
86
|
+
local function lookup(search_object, debug)
|
|
81
87
|
local results = {}
|
|
82
88
|
for _, inv in ipairs(inventory) do
|
|
83
89
|
for _, item in ipairs(inv.items) do
|
|
@@ -98,7 +104,7 @@ local function lookup(search_object)
|
|
|
98
104
|
goto continue
|
|
99
105
|
else
|
|
100
106
|
if search_object.domain or item.domain == "py" then
|
|
101
|
-
|
|
107
|
+
table.insert(results, item)
|
|
102
108
|
end
|
|
103
109
|
|
|
104
110
|
goto continue
|
|
@@ -112,23 +118,24 @@ local function lookup(search_object)
|
|
|
112
118
|
return results[1]
|
|
113
119
|
end
|
|
114
120
|
if #results > 1 then
|
|
115
|
-
|
|
121
|
+
_debug_log("Found multiple matches for " .. search_object.name .. ", using the first match.", debug)
|
|
116
122
|
return results[1]
|
|
117
123
|
end
|
|
118
124
|
if #results == 0 then
|
|
119
|
-
|
|
125
|
+
_debug_log("Found no matches for object:\n", debug)
|
|
126
|
+
_debug_log(search_object, debug)
|
|
120
127
|
end
|
|
121
128
|
|
|
122
129
|
return nil
|
|
123
130
|
end
|
|
124
131
|
|
|
125
|
-
local function mysplit
|
|
132
|
+
local function mysplit(inputstr, sep)
|
|
126
133
|
if sep == nil then
|
|
127
|
-
|
|
134
|
+
sep = "%s"
|
|
128
135
|
end
|
|
129
|
-
local t={}
|
|
130
|
-
for str in string.gmatch(inputstr, "([^"..sep.."]+)") do
|
|
131
|
-
|
|
136
|
+
local t = {}
|
|
137
|
+
for str in string.gmatch(inputstr, "([^" .. sep .. "]+)") do
|
|
138
|
+
table.insert(t, str)
|
|
132
139
|
end
|
|
133
140
|
return t
|
|
134
141
|
end
|
|
@@ -140,7 +147,84 @@ local function normalize_role(role)
|
|
|
140
147
|
return role
|
|
141
148
|
end
|
|
142
149
|
|
|
143
|
-
local function
|
|
150
|
+
local function copy_replace(original, key, new_value)
|
|
151
|
+
-- First create a copy of the table
|
|
152
|
+
local copy = {}
|
|
153
|
+
for k, v in pairs(original) do
|
|
154
|
+
copy[k] = v
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
-- Then replace the specific value
|
|
158
|
+
copy[key] = new_value
|
|
159
|
+
|
|
160
|
+
return copy
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
local function contains(list, value)
|
|
164
|
+
-- check if list contains a value
|
|
165
|
+
for i, v in ipairs(list) do
|
|
166
|
+
if v == value then
|
|
167
|
+
return true
|
|
168
|
+
end
|
|
169
|
+
end
|
|
170
|
+
return false
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
local function flatten_alias_list(list)
|
|
174
|
+
-- flatten a list of lists into a single list,
|
|
175
|
+
-- where each entry has the form {key, subvalue}}
|
|
176
|
+
-- e.g.
|
|
177
|
+
-- input: {key1 = {subval1, subval2}, key2 = subval3}
|
|
178
|
+
-- output: {{key1, subval1}, {key1, subval2}, {key2, subval3}}
|
|
179
|
+
local flat = {}
|
|
180
|
+
for key, sublist in pairs(list) do
|
|
181
|
+
if type(sublist) == "table" then
|
|
182
|
+
for _, subvalue in ipairs(sublist) do
|
|
183
|
+
table.insert(flat, { key, subvalue })
|
|
184
|
+
end
|
|
185
|
+
else
|
|
186
|
+
table.insert(flat, { key, sublist })
|
|
187
|
+
end
|
|
188
|
+
end
|
|
189
|
+
return flat
|
|
190
|
+
end
|
|
191
|
+
|
|
192
|
+
local function prepend_aliases(flat_aliases)
|
|
193
|
+
-- if str up to first period starts with an alias, then
|
|
194
|
+
-- replace it with the full name.
|
|
195
|
+
-- For example, suppose we have the alias quartodoc -> qd
|
|
196
|
+
-- e.g. qd.Auto -> quartodoc.Auto
|
|
197
|
+
-- e.g. qda.Auto -> qda.Auto
|
|
198
|
+
|
|
199
|
+
local new_inv = {}
|
|
200
|
+
new_inv["project"] = "aliases"
|
|
201
|
+
new_inv["version"] = "0.0.9999" -- I have not begun to think about version...
|
|
202
|
+
new_inv["items"] = {}
|
|
203
|
+
|
|
204
|
+
for _, name_pair in pairs(flat_aliases) do
|
|
205
|
+
local full = name_pair[1]
|
|
206
|
+
local alias = name_pair[2]
|
|
207
|
+
for _, inv in ipairs(inventory) do
|
|
208
|
+
for _, item in ipairs(inv.items) do
|
|
209
|
+
if string.sub(item.name, 1, string.len(full) + 1) == (full .. ".") then
|
|
210
|
+
-- replace full .. "." with alias .. "."
|
|
211
|
+
local prefix
|
|
212
|
+
if not alias or pandoc.utils.stringify(alias) == "" then
|
|
213
|
+
prefix = ""
|
|
214
|
+
else
|
|
215
|
+
-- TODO: ensure alias doesn't end with period
|
|
216
|
+
prefix = pandoc.utils.stringify(alias) .. "."
|
|
217
|
+
end
|
|
218
|
+
local new_name = prefix .. string.sub(item.name, string.len(full) + 2)
|
|
219
|
+
table.insert(new_inv.items, copy_replace(item, "name", new_name))
|
|
220
|
+
end
|
|
221
|
+
end
|
|
222
|
+
end
|
|
223
|
+
end
|
|
224
|
+
table.insert(inventory, new_inv)
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
local function build_search_object(str, debug)
|
|
144
228
|
local starts_with_colon = str:sub(1, 1) == ":"
|
|
145
229
|
local search = {}
|
|
146
230
|
if starts_with_colon then
|
|
@@ -163,7 +247,7 @@ local function build_search_object(str)
|
|
|
163
247
|
search.role = normalize_role(t[3])
|
|
164
248
|
search.name = t[4]:match("%%60(.*)%%60")
|
|
165
249
|
else
|
|
166
|
-
|
|
250
|
+
_debug_log("couldn't parse this link: " .. str, debug)
|
|
167
251
|
return {}
|
|
168
252
|
end
|
|
169
253
|
else
|
|
@@ -171,7 +255,7 @@ local function build_search_object(str)
|
|
|
171
255
|
end
|
|
172
256
|
|
|
173
257
|
if search.name == nil then
|
|
174
|
-
|
|
258
|
+
_debug_log("couldn't parse this link: " .. str, debug)
|
|
175
259
|
return {}
|
|
176
260
|
end
|
|
177
261
|
|
|
@@ -220,7 +304,60 @@ function Link(link)
|
|
|
220
304
|
return link
|
|
221
305
|
end
|
|
222
306
|
|
|
223
|
-
|
|
307
|
+
function Code(code)
|
|
308
|
+
if (not autolink) or contains(code.classes, autolink_ignore_token) then
|
|
309
|
+
return code
|
|
310
|
+
end
|
|
311
|
+
|
|
312
|
+
-- allow text for lookup to be simple function call
|
|
313
|
+
-- and also support shortened syntax (~~ prefix)
|
|
314
|
+
-- e.g. my_func() -> my_func
|
|
315
|
+
-- e.g. a.b.call() -> a.b.call
|
|
316
|
+
-- e.g. ~~my_func() -> my_func
|
|
317
|
+
local text
|
|
318
|
+
|
|
319
|
+
-- detect and remove shortening syntax (~~ prefix)
|
|
320
|
+
local is_shortened = code.text:sub(1, 2) == "~~"
|
|
321
|
+
local is_short_dot = code.text:sub(1, 3) == "~~."
|
|
322
|
+
local unprefixed = code.text:gsub("^~~%.?", "")
|
|
323
|
+
if unprefixed:match("%(%s*%)") then
|
|
324
|
+
text = unprefixed:gsub("%(%s*%)", "")
|
|
325
|
+
else
|
|
326
|
+
text = unprefixed
|
|
327
|
+
end
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
-- return code.attr
|
|
331
|
+
local search = build_search_object("%60" .. text .. "%60")
|
|
332
|
+
local item = lookup(search)
|
|
333
|
+
|
|
334
|
+
-- determine replacement, used if no link text specified ----
|
|
335
|
+
if item == nil then
|
|
336
|
+
code.text = unprefixed
|
|
337
|
+
return code
|
|
338
|
+
end
|
|
339
|
+
|
|
340
|
+
-- shorten text if shortening syntax used
|
|
341
|
+
if is_shortened then
|
|
342
|
+
-- keep text after last period (.)
|
|
343
|
+
local split = mysplit(unprefixed, ".")
|
|
344
|
+
if #split > 0 then
|
|
345
|
+
local new_name = split[#split]
|
|
346
|
+
if is_short_dot then
|
|
347
|
+
-- if shortened with dot, keep the dot
|
|
348
|
+
new_name = "." .. new_name
|
|
349
|
+
end
|
|
350
|
+
code.text = new_name
|
|
351
|
+
else
|
|
352
|
+
code.text = unprefixed
|
|
353
|
+
end
|
|
354
|
+
end
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
return pandoc.Link(code, item.uri:gsub("%$$", search.name))
|
|
358
|
+
end
|
|
359
|
+
|
|
360
|
+
local function fixup_json(json, prefix, attach)
|
|
224
361
|
for _, item in ipairs(json.items) do
|
|
225
362
|
item.uri = prefix .. item.uri
|
|
226
363
|
end
|
|
@@ -232,6 +369,23 @@ return {
|
|
|
232
369
|
Meta = function(meta)
|
|
233
370
|
local json
|
|
234
371
|
local prefix
|
|
372
|
+
local aliases
|
|
373
|
+
|
|
374
|
+
-- set globals from config
|
|
375
|
+
if meta.interlinks and meta.interlinks.autolink then
|
|
376
|
+
autolink = true
|
|
377
|
+
else
|
|
378
|
+
autolink = false
|
|
379
|
+
end
|
|
380
|
+
|
|
381
|
+
local aliases
|
|
382
|
+
if meta.interlinks and meta.interlinks.aliases then
|
|
383
|
+
aliases = meta.interlinks.aliases
|
|
384
|
+
else
|
|
385
|
+
aliases = {}
|
|
386
|
+
end
|
|
387
|
+
|
|
388
|
+
-- process sources
|
|
235
389
|
if meta.interlinks and meta.interlinks.sources then
|
|
236
390
|
for k, v in pairs(meta.interlinks.sources) do
|
|
237
391
|
local base_name = quarto.project.offset .. "/_inv/" .. k .. "_objects"
|
|
@@ -246,9 +400,12 @@ return {
|
|
|
246
400
|
if json ~= nil then
|
|
247
401
|
fixup_json(json, "/")
|
|
248
402
|
end
|
|
403
|
+
|
|
404
|
+
prepend_aliases(flatten_alias_list(aliases))
|
|
249
405
|
end
|
|
250
406
|
},
|
|
251
407
|
{
|
|
252
|
-
Link = Link
|
|
408
|
+
Link = Link,
|
|
409
|
+
Code = Code
|
|
253
410
|
}
|
|
254
411
|
}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
project:
|
|
2
2
|
type: website
|
|
3
|
+
post-render: scripts/post-render.py
|
|
4
|
+
resources:
|
|
5
|
+
- "assets/**"
|
|
3
6
|
|
|
4
7
|
format:
|
|
5
8
|
html:
|
|
@@ -19,6 +22,9 @@ filters:
|
|
|
19
22
|
|
|
20
23
|
interlinks:
|
|
21
24
|
fast: true
|
|
25
|
+
autolink: true
|
|
26
|
+
aliases:
|
|
27
|
+
pointblank: [null, pb]
|
|
22
28
|
sources:
|
|
23
29
|
numpy:
|
|
24
30
|
url: https://numpy.org/doc/stable/
|
|
@@ -57,6 +63,7 @@ website:
|
|
|
57
63
|
contents:
|
|
58
64
|
- user-guide/index.qmd
|
|
59
65
|
- user-guide/installation.qmd
|
|
66
|
+
- user-guide/cli.qmd
|
|
60
67
|
- section: "Validation Plan"
|
|
61
68
|
contents:
|
|
62
69
|
- user-guide/validation-overview.qmd
|
|
@@ -83,6 +90,9 @@ website:
|
|
|
83
90
|
- user-guide/preview.qmd
|
|
84
91
|
- user-guide/col-summary-tbl.qmd
|
|
85
92
|
- user-guide/missing-vals-tbl.qmd
|
|
93
|
+
page-footer:
|
|
94
|
+
left: 'Proudly supported by <a href="https://www.posit.co/" class="no-icon"><img src="/assets/posit-logo-black.svg" alt="Posit" width="80" style="padding-left: 3px;vertical-align:text-top;"></a>'
|
|
95
|
+
right: "© 2024–2025 Posit Software, PBC."
|
|
86
96
|
|
|
87
97
|
html-table-processing: none
|
|
88
98
|
|
|
@@ -203,6 +213,8 @@ quartodoc:
|
|
|
203
213
|
- name: missing_vals_tbl
|
|
204
214
|
- name: assistant
|
|
205
215
|
- name: load_dataset
|
|
216
|
+
- name: get_data_path
|
|
217
|
+
- name: connect_to_table
|
|
206
218
|
- title: Utility Functions
|
|
207
219
|
desc: >
|
|
208
220
|
The *Utility Functions* group contains functions that are useful accessing metadata about
|