bigframes 2.0.0.dev0__tar.gz → 2.2.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.
- {bigframes-2.0.0.dev0/third_party/bigframes_vendored/google_cloud_bigquery → bigframes-2.2.0}/LICENSE +118 -0
- {bigframes-2.0.0.dev0/bigframes.egg-info → bigframes-2.2.0}/PKG-INFO +9 -6
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/README.rst +1 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/_config/bigquery_options.py +2 -2
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/_config/experiment_options.py +31 -0
- bigframes-2.2.0/bigframes/_tools/__init__.py +19 -0
- bigframes-2.2.0/bigframes/_tools/strings.py +66 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/__init__.py +7 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/_operations/geo.py +122 -45
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/blob/_functions.py +4 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/clients.py +22 -10
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/array_value.py +27 -16
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/bigframe_node.py +2 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/blocks.py +22 -25
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/api.py +10 -6
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/compiled.py +80 -60
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/compiler.py +55 -57
- bigframes-2.2.0/bigframes/core/compile/configs.py +36 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/googlesql/query.py +14 -5
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/polars/compiler.py +7 -14
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/scalar_op_compiler.py +14 -2
- bigframes-2.2.0/bigframes/core/compile/sqlglot/__init__.py +18 -0
- bigframes-2.2.0/bigframes/core/compile/sqlglot/compiler.py +168 -0
- bigframes-2.2.0/bigframes/core/compile/sqlglot/scalar_compiler.py +33 -0
- bigframes-2.2.0/bigframes/core/compile/sqlglot/sqlglot_ir.py +147 -0
- bigframes-2.2.0/bigframes/core/compile/sqlglot/sqlglot_types.py +84 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/groupby/dataframe_group_by.py +39 -14
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/groupby/series_group_by.py +31 -15
- bigframes-2.2.0/bigframes/core/local_data.py +458 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/log_adapter.py +34 -17
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/nodes.py +160 -97
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/rewrite/__init__.py +15 -4
- bigframes-2.2.0/bigframes/core/rewrite/fold_row_count.py +44 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/rewrite/order.py +27 -9
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/rewrite/pruning.py +59 -63
- bigframes-2.2.0/bigframes/core/rewrite/scan_reduction.py +62 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/rewrite/slices.py +16 -3
- bigframes-2.2.0/bigframes/core/rewrite/windows.py +45 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/schema.py +11 -4
- bigframes-2.2.0/bigframes/core/sequences.py +105 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/sql.py +20 -4
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/utils.py +7 -79
- bigframes-2.2.0/bigframes/core/window/__init__.py +17 -0
- bigframes-2.2.0/bigframes/core/window/ordering.py +86 -0
- bigframes-2.2.0/bigframes/core/window/rolling.py +185 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/window_spec.py +57 -9
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/dataframe.py +155 -26
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/dtypes.py +56 -18
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/functions/_function_client.py +5 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/functions/_function_session.py +29 -10
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/functions/function.py +0 -2
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/geopandas/geoseries.py +5 -17
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/base.py +8 -14
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/core.py +35 -2
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/decomposition.py +166 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/globals.py +1 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/imported.py +19 -16
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/llm.py +105 -101
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/loader.py +2 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/remote.py +8 -13
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/sql.py +31 -14
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/utils.py +24 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/__init__.py +2 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/ai.py +4 -4
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/blob.py +31 -30
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/geo_ops.py +11 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/semantics.py +5 -5
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/strings.py +1 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/pandas/__init__.py +2 -2
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/series.py +160 -14
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/__init__.py +301 -247
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/_io/bigquery/__init__.py +4 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/_io/bigquery/read_gbq_table.py +49 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/_io/pandas.py +4 -49
- bigframes-2.0.0.dev0/bigframes/session/temp_storage.py → bigframes-2.2.0/bigframes/session/anonymous_dataset.py +13 -7
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/bigquery_session.py +9 -12
- bigframes-2.0.0.dev0/bigframes/session/executor.py → bigframes-2.2.0/bigframes/session/bq_caching_executor.py +134 -269
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/clients.py +31 -0
- bigframes-2.2.0/bigframes/session/executor.py +169 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/loader.py +314 -178
- bigframes-2.2.0/bigframes/session/local_scan_executor.py +66 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/metrics.py +26 -25
- bigframes-2.2.0/bigframes/session/read_api_execution.py +108 -0
- bigframes-2.2.0/bigframes/session/semi_executor.py +33 -0
- bigframes-2.2.0/bigframes/session/temporary_storage.py +32 -0
- bigframes-2.2.0/bigframes/testing/__init__.py +19 -0
- bigframes-2.0.0.dev0/tests/unit/resources.py → bigframes-2.2.0/bigframes/testing/mocks.py +10 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/version.py +2 -2
- {bigframes-2.0.0.dev0 → bigframes-2.2.0/bigframes.egg-info}/PKG-INFO +9 -6
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes.egg-info/SOURCES.txt +41 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes.egg-info/requires.txt +7 -5
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/setup.py +5 -6
- bigframes-2.2.0/tests/data/ratings.jsonl +20 -0
- bigframes-2.2.0/tests/data/ratings_schema.json +17 -0
- bigframes-2.2.0/tests/data/scalars.jsonl +9 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/conftest.py +38 -7
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/blob/test_function.py +6 -12
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/functions/test_managed_function.py +43 -21
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/ml/test_decomposition.py +46 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/ml/test_linear_model.py +2 -2
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/test_dataframe_io.py +1 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/test_session.py +8 -43
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/load/test_large_tables.py +5 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/bigquery/test_geo.py +179 -63
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/bigquery/test_json.py +1 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/bigquery/test_struct.py +2 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/blob/test_io.py +22 -9
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/blob/test_properties.py +16 -18
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/geopandas/test_geoseries.py +32 -2
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_llm.py +185 -144
- bigframes-2.2.0/tests/system/small/ml/test_multimodal_llm.py +70 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/test_datetimes.py +31 -16
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_bq_sessions.py +6 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_dataframe.py +101 -37
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_dataframe_io.py +166 -11
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_encryption.py +2 -32
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_groupby.py +5 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_index.py +0 -8
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_index_io.py +10 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_multiindex.py +5 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_null_index.py +6 -4
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_series.py +45 -15
- bigframes-2.2.0/tests/system/small/test_series_io.py +116 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_session.py +489 -343
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_unordered.py +5 -7
- bigframes-2.2.0/tests/system/small/test_window.py +397 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/utils.py +0 -11
- bigframes-2.2.0/tests/unit/_tools/__init__.py +19 -0
- bigframes-2.2.0/tests/unit/_tools/test_strings.py +149 -0
- bigframes-2.2.0/tests/unit/core/compile/sqlglot/compiler_session.py +76 -0
- bigframes-2.2.0/tests/unit/core/compile/sqlglot/conftest.py +112 -0
- bigframes-2.2.0/tests/unit/core/compile/sqlglot/snapshots/test_compile_readlocal/test_compile_readlocal/out.sql +171 -0
- bigframes-2.2.0/tests/unit/core/compile/sqlglot/snapshots/test_compile_readlocal/test_compile_readlocal_w_json_df/out.sql +4 -0
- bigframes-2.2.0/tests/unit/core/compile/sqlglot/snapshots/test_compile_readlocal/test_compile_readlocal_w_lists_df/out.sql +41 -0
- bigframes-2.2.0/tests/unit/core/compile/sqlglot/snapshots/test_compile_readlocal/test_compile_readlocal_w_nested_structs_df/out.sql +19 -0
- bigframes-2.2.0/tests/unit/core/compile/sqlglot/snapshots/test_compile_readlocal/test_compile_readlocal_w_structs_df/out.sql +21 -0
- bigframes-2.2.0/tests/unit/core/compile/sqlglot/test_compile_readlocal.py +55 -0
- bigframes-2.2.0/tests/unit/core/compile/sqlglot/test_sqlglot_types.py +64 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/test_bf_utils.py +1 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/test_blocks.py +2 -4
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/test_dtypes.py +17 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/test_log_adapter.py +48 -1
- bigframes-2.2.0/tests/unit/core/test_sql.py +185 -0
- bigframes-2.2.0/tests/unit/functions/__init__.py +13 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/functions/test_remote_function.py +4 -5
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/ml/test_compose.py +15 -14
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/ml/test_golden_sql.py +60 -6
- bigframes-2.2.0/tests/unit/ml/test_matrix_factorization.py +182 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/session/test_io_bigquery.py +12 -11
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/session/test_io_pandas.py +2 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/session/test_read_gbq_table.py +2 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/session/test_session.py +53 -44
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/session/test_time.py +2 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_dataframe.py +8 -9
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_dataframe_io.py +4 -4
- bigframes-2.2.0/tests/unit/test_local_data.py +46 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_local_engine.py +2 -14
- bigframes-2.2.0/tests/unit/test_sequences.py +55 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_series_io.py +4 -4
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/constants.py +5 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/geopandas/geoseries.py +57 -6
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/bigquery/__init__.py +2 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/sql/compilers/base.py +11 -5
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/sql/compilers/bigquery/__init__.py +9 -4
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/api.py +1 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/datatypes/__init__.py +0 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/datatypes/core.py +0 -9
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/datatypes/value.py +14 -9
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/arrays.py +2 -2
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/generic.py +1 -22
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/geospatial.py +12 -12
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/json.py +0 -18
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/relations.py +1 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/generic.py +43 -12
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/groupby/__init__.py +24 -3
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/io/parsers/readers.py +1 -1
- bigframes-2.2.0/third_party/bigframes_vendored/sklearn/decomposition/_mf.py +95 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q11.py +1 -1
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/version.py +2 -2
- bigframes-2.0.0.dev0/bigframes/core/local_data.py +0 -75
- bigframes-2.0.0.dev0/bigframes/core/window/__init__.py +0 -97
- bigframes-2.0.0.dev0/tests/data/scalars.jsonl +0 -9
- bigframes-2.0.0.dev0/tests/system/small/test_series_io.py +0 -35
- bigframes-2.0.0.dev0/tests/system/small/test_window.py +0 -190
- bigframes-2.0.0.dev0/tests/unit/core/test_sql.py +0 -123
- bigframes-2.0.0.dev0/third_party/bigframes_vendored/ibis/expr/datatypes/parse.py +0 -211
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/MANIFEST.in +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/_config/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/_config/compute_options.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/_config/display_options.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/_config/sampling_options.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/_operations/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/_operations/approx_agg.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/_operations/array.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/_operations/datetime.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/_operations/json.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/_operations/search.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/_operations/sql.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/bigquery/_operations/struct.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/constants.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/block_transforms.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/aggregate_compiler.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/concat.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/constants.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/default_ordering.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/explode.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/googlesql/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/googlesql/abc.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/googlesql/datatype.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/googlesql/expression.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/googlesql/function.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/ibis_types.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/polars/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/compile/schema_translator.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/convert.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/eval.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/explode.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/expression.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/global_session.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/groupby/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/groupby/aggs.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/guid.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/identifiers.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/indexers.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/indexes/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/indexes/base.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/indexes/multi.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/join_def.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/ordering.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/pruning.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/reshape/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/reshape/api.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/reshape/concat.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/reshape/encoding.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/reshape/merge.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/reshape/tile.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/rewrite/identifiers.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/rewrite/implicit_align.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/rewrite/legacy_align.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/rewrite/timedeltas.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/scalar.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/slices.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/tools/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/tools/datetimes.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/tree_properties.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/core/validations.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/enums.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/exceptions.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/features.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/formatting_helpers.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/functions/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/functions/_utils.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/functions/function_template.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/geopandas/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/cluster.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/compose.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/ensemble.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/forecasting.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/impute.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/linear_model.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/metrics/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/metrics/_metrics.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/metrics/pairwise.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/model_selection.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/pipeline.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/ml/preprocessing.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/_matplotlib/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/_matplotlib/core.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/_matplotlib/hist.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/_op_converters.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/aggregations.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/array_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/base.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/base_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/blob_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/bool_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/comparison_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/date_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/datetime_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/datetimes.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/distance_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/frequency_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/generic_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/json_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/lists.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/numeric_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/numpy_op_maps.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/plotting.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/remote_function_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/string_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/struct_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/structs.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/time_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/timedelta_ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/operations/type.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/pandas/core/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/pandas/core/api.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/pandas/core/tools/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/pandas/core/tools/timedeltas.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/pandas/io/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/pandas/io/api.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/py.typed +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/_io/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/environment.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/planner.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/time.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/session/validation.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/streaming/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes/streaming/dataframe.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes.egg-info/dependency_links.txt +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes.egg-info/not-zip-safe +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/bigframes.egg-info/top_level.txt +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/pyproject.toml +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/setup.cfg +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/README.md +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/config.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/q1.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/q10.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/q2.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/q3.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/q4.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/q5.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/q6.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/q7.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/groupby/q8.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/join/config.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/join/q1.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/join/q2.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/join/q3.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/join/q4.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/join/q5.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/sort/config.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/db_benchmark/sort/q1.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/config.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q1.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q10.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q11.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q12.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q13.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q14.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q15.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q16.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q17.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q18.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q19.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q2.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q20.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q21.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q22.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q3.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q4.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q5.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q6.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q7.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q8.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/tpch/q9.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/benchmark/utils.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/hockey_players.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/hockey_players.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/json.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/json_schema.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/matrix_2by3.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/matrix_2by3.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/matrix_3by4.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/matrix_3by4.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/nested.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/nested_schema.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/nested_structs.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/nested_structs_schema.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/penguins.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/penguins_schema.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/people.csv +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/repeated.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/repeated_schema.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/scalars_schema.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/time_series.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/time_series_schema.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/urban_areas.jsonl +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/data/urban_areas_schema.json +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/functions/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/functions/test_remote_function.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/ml/test_cluster.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/ml/test_compose.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/ml/test_core.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/ml/test_ensemble.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/ml/test_forecasting.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/ml/test_model_selection.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/ml/test_pipeline.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/operations/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/operations/conftest.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/operations/test_ai.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/operations/test_semantics.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/test_dataframe.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/test_location.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/large/test_streaming.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/load/conftest.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/load/test_llm.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/bigquery/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/bigquery/test_approx_agg.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/bigquery/test_array.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/bigquery/test_datetime.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/bigquery/test_sql.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/bigquery/test_vector_search.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/blob/test_urls.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/core/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/core/test_convert.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/core/test_indexers.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/functions/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/functions/test_remote_function.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/conftest.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_cluster.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_core.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_decomposition.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_ensemble.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_forecasting.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_imported.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_impute.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_linear_model.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_metrics.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_metrics_pairwise.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_model_selection.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_preprocessing.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_register.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_remote.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/ml/test_utils.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/test_ai.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/test_dates.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/test_lists.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/test_plotting.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/test_semantics.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/test_strings.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/test_struct.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/operations/test_timedeltas.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/regression/test_issue355_merge_after_filter.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_ipython.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_numpy.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_pandas.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_pandas_options.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_progress_bar.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/system/small/test_scalar.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/_config/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/_config/test_bigquery_options.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/_config/test_experiment_options.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/_config/test_threaded_options.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/bigquery/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/bigquery/test_json.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/compile/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/compile/googlesql/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/compile/googlesql/test_expression.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/compile/googlesql/test_function.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/compile/googlesql/test_query.py +0 -0
- {bigframes-2.0.0.dev0/tests/unit/functions → bigframes-2.2.0/tests/unit/core/compile/sqlglot}/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/test_expression.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/test_indexes.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/test_rewrite.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/test_slices.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/core/test_windowspec.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/functions/test_function_template.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/functions/test_remote_function_utils.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/ml/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/ml/test_api_primitives.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/ml/test_forecasting.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/ml/test_pipeline.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/ml/test_sql.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/operations/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/polars_session.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/session/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/session/test_clients.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_clients.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_constants.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_daemon.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_features.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_formatting_helpers.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_notebook.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_pandas.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_planner.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/tests/unit/test_series.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/cpython/LICENSE +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/cpython/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/cpython/_pprint.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/db_benchmark/LICENSE +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/db_benchmark/METADATA +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/db_benchmark/README.md +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/db_benchmark/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/db_benchmark/groupby_queries.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/db_benchmark/join_queries.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/db_benchmark/sort_queries.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/geopandas/LICENSE.txt +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0/third_party/bigframes_vendored/google_cloud_bigquery}/LICENSE +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/google_cloud_bigquery/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/google_cloud_bigquery/_pandas_helpers.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/google_cloud_bigquery/tests/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/google_cloud_bigquery/tests/unit/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/google_cloud_bigquery/tests/unit/test_pandas_helpers.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/LICENSE.txt +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/README.md +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/bigquery/backend.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/bigquery/client.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/bigquery/converter.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/bigquery/datatypes.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/bigquery/udf/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/bigquery/udf/core.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/bigquery/udf/find.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/bigquery/udf/rewrite.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/sql/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/sql/compilers/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/sql/datatypes.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/backends/sql/rewrites.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/annotations.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/bases.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/caching.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/collections.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/deferred.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/dispatch.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/egraph.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/exceptions.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/graph.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/grounds.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/numeric.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/patterns.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/selectors.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/temporal.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/common/typing.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/config.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/builders.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/datashape.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/datatypes/cast.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/decompile.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/format.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/analytic.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/arrays.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/core.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/generic.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/geospatial.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/histograms.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/json.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/logical.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/maps.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/numeric.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/reductions.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/relations.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/sortkeys.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/strings.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/structs.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/subqueries.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/temporal.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/udf.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/operations/window.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/rewrites.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/rules.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/schema.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/sql.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/binary.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/core.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/dataframe_interchange.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/groupby.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/joins.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/logical.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/maps.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/numeric.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/pretty.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/strings.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/structs.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/temporal.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/temporal_windows.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/typing.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/types/uuid.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/expr/visualize.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/formats/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/formats/numpy.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/formats/pandas.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/formats/polars.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/formats/pyarrow.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/selectors.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/ibis/util.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/AUTHORS.md +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/LICENSE +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/README.md +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/_config/config.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/arrays/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/arrays/arrow/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/arrays/arrow/accessors.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/arrays/datetimelike.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/common.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/computation/align.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/computation/common.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/computation/engines.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/computation/eval.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/computation/expr.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/computation/ops.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/computation/parsing.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/computation/scope.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/config_init.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/dtypes/inference.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/frame.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/indexes/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/indexes/accessor.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/indexes/base.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/indexes/multi.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/indexing.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/reshape/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/reshape/concat.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/reshape/encoding.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/reshape/merge.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/reshape/tile.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/series.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/strings/accessor.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/tools/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/tools/datetimes.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/tools/timedeltas.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/window/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/core/window/rolling.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/io/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/io/common.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/io/gbq.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/io/parquet.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/io/parsers/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/io/pickle.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/pandas/_typing.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/plotting/_core.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/util/_exceptions.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/pandas/util/_validators.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/py.typed +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/COPYING +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/base.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/cluster/_kmeans.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/compose/_column_transformer.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/decomposition/_pca.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/ensemble/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/ensemble/_forest.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/impute/_base.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/linear_model/_base.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/linear_model/_logistic.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/metrics/_classification.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/metrics/_ranking.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/metrics/_regression.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/metrics/pairwise.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/model_selection/_split.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/model_selection/_validation.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/pipeline.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/preprocessing/_data.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/preprocessing/_discretization.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/preprocessing/_encoder.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/preprocessing/_label.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/sklearn/preprocessing/_polynomial.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/LICENSE +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/METADATA +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/README.md +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/TPC-EULA.txt +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q1.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q10.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q12.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q13.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q14.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q15.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q16.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q17.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q18.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q19.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q2.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q20.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q21.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q22.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q3.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q4.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q5.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q6.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q7.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q8.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/queries/q9.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q1.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q10.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q11.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q12.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q13.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q14.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q15.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q16.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q17.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q18.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q19.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q2.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q20.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q21.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q22.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q3.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q4.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q5.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q6.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q7.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q8.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/tpch/sql_queries/q9.sql +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/xgboost/LICENSE +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/xgboost/__init__.py +0 -0
- {bigframes-2.0.0.dev0 → bigframes-2.2.0}/third_party/bigframes_vendored/xgboost/sklearn.py +0 -0
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
Files: All files not covered by another license. Notably: the bigframes module,
|
|
2
|
+
tests/*, bigframes_vendored.google_cloud_bigquery module,
|
|
3
|
+
bigframes_vendored.ibis module, and bigframes_vendored.xgboost module.
|
|
1
4
|
|
|
2
5
|
Apache License
|
|
3
6
|
Version 2.0, January 2004
|
|
@@ -200,3 +203,118 @@
|
|
|
200
203
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
201
204
|
See the License for the specific language governing permissions and
|
|
202
205
|
limitations under the License.
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
Files: For the bigframes_vendored.cpython module.
|
|
210
|
+
|
|
211
|
+
PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
|
|
212
|
+
|
|
213
|
+
1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and the Individual or Organization ("Licensee") accessing and otherwise using this software ("Python") in source or binary form and its associated documentation.
|
|
214
|
+
2. Subject to the terms and conditions of this License Agreement, PSF hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use Python alone or in any derivative version, provided, however, that PSF's License Agreement and PSF's notice of copyright , i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Python Software Foundation All Rights Reserved" are retained in Python alone or in any derivative version prepared by Licensee.
|
|
215
|
+
3. In the event Licensee prepares a derivative work that is based on or incorporates Python or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to Python.
|
|
216
|
+
4. PSF is making Python available to Licensee on an "AS IS" basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.
|
|
217
|
+
5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
|
|
218
|
+
6. This License Agreement will automatically terminate upon a material breach of its terms and conditions.
|
|
219
|
+
7. Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between PSF and Licensee. This License Agreement does not grant permission to use PSF trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party.
|
|
220
|
+
8. By copying, installing or otherwise using Python, Licensee agrees to be bound by the terms and conditions of this License Agreement.
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
Files: for the bigframes_vendored.geopandas module.
|
|
225
|
+
|
|
226
|
+
Copyright (c) 2013-2022, GeoPandas developers.
|
|
227
|
+
All rights reserved.
|
|
228
|
+
|
|
229
|
+
Redistribution and use in source and binary forms, with or without
|
|
230
|
+
modification, are permitted provided that the following conditions are met:
|
|
231
|
+
|
|
232
|
+
* Redistributions of source code must retain the above copyright notice, this
|
|
233
|
+
list of conditions and the following disclaimer.
|
|
234
|
+
* Redistributions in binary form must reproduce the above copyright notice,
|
|
235
|
+
this list of conditions and the following disclaimer in the documentation
|
|
236
|
+
and/or other materials provided with the distribution.
|
|
237
|
+
* Neither the name of GeoPandas nor the names of its contributors may
|
|
238
|
+
be used to endorse or promote products derived from this software without
|
|
239
|
+
specific prior written permission.
|
|
240
|
+
|
|
241
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
242
|
+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
243
|
+
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
244
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
|
245
|
+
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
246
|
+
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
247
|
+
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
248
|
+
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
249
|
+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
250
|
+
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
Files: The bigframes_vendored.pandas module.
|
|
255
|
+
|
|
256
|
+
BSD 3-Clause License
|
|
257
|
+
|
|
258
|
+
Copyright (c) 2008-2011, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
|
|
259
|
+
All rights reserved.
|
|
260
|
+
|
|
261
|
+
Copyright (c) 2011-2023, Open source contributors.
|
|
262
|
+
|
|
263
|
+
Redistribution and use in source and binary forms, with or without
|
|
264
|
+
modification, are permitted provided that the following conditions are met:
|
|
265
|
+
|
|
266
|
+
* Redistributions of source code must retain the above copyright notice, this
|
|
267
|
+
list of conditions and the following disclaimer.
|
|
268
|
+
|
|
269
|
+
* Redistributions in binary form must reproduce the above copyright notice,
|
|
270
|
+
this list of conditions and the following disclaimer in the documentation
|
|
271
|
+
and/or other materials provided with the distribution.
|
|
272
|
+
|
|
273
|
+
* Neither the name of the copyright holder nor the names of its
|
|
274
|
+
contributors may be used to endorse or promote products derived from
|
|
275
|
+
this software without specific prior written permission.
|
|
276
|
+
|
|
277
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
278
|
+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
279
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
280
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
281
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
282
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
283
|
+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
284
|
+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
285
|
+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
286
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
Files: The bigframes_vendored.sklearn module.
|
|
291
|
+
|
|
292
|
+
BSD 3-Clause License
|
|
293
|
+
|
|
294
|
+
Copyright (c) 2007-2023 The scikit-learn developers.
|
|
295
|
+
All rights reserved.
|
|
296
|
+
|
|
297
|
+
Redistribution and use in source and binary forms, with or without
|
|
298
|
+
modification, are permitted provided that the following conditions are met:
|
|
299
|
+
|
|
300
|
+
* Redistributions of source code must retain the above copyright notice, this
|
|
301
|
+
list of conditions and the following disclaimer.
|
|
302
|
+
|
|
303
|
+
* Redistributions in binary form must reproduce the above copyright notice,
|
|
304
|
+
this list of conditions and the following disclaimer in the documentation
|
|
305
|
+
and/or other materials provided with the distribution.
|
|
306
|
+
|
|
307
|
+
* Neither the name of the copyright holder nor the names of its
|
|
308
|
+
contributors may be used to endorse or promote products derived from
|
|
309
|
+
this software without specific prior written permission.
|
|
310
|
+
|
|
311
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
312
|
+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
313
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
314
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
315
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
316
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
317
|
+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
318
|
+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
319
|
+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
320
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: bigframes
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.2.0
|
|
4
4
|
Summary: BigQuery DataFrames -- scalable analytics and machine learning with BigQuery
|
|
5
5
|
Home-page: https://github.com/googleapis/python-bigquery-dataframes
|
|
6
6
|
Author: Google LLC
|
|
@@ -26,22 +26,23 @@ Requires-Dist: cloudpickle>=2.0.0
|
|
|
26
26
|
Requires-Dist: fsspec>=2023.3.0
|
|
27
27
|
Requires-Dist: gcsfs>=2023.3.0
|
|
28
28
|
Requires-Dist: geopandas>=0.12.2
|
|
29
|
-
Requires-Dist: google-auth<3.
|
|
29
|
+
Requires-Dist: google-auth<3.0,>=2.15.0
|
|
30
30
|
Requires-Dist: google-cloud-bigtable>=2.24.0
|
|
31
31
|
Requires-Dist: google-cloud-pubsub>=2.21.4
|
|
32
32
|
Requires-Dist: google-cloud-bigquery[bqstorage,pandas]>=3.31.0
|
|
33
|
+
Requires-Dist: google-cloud-bigquery-storage<3.0.0,>=2.30.0
|
|
33
34
|
Requires-Dist: google-cloud-functions>=1.12.0
|
|
34
35
|
Requires-Dist: google-cloud-bigquery-connection>=1.12.0
|
|
35
36
|
Requires-Dist: google-cloud-iam>=2.12.1
|
|
36
37
|
Requires-Dist: google-cloud-resource-manager>=1.10.3
|
|
37
38
|
Requires-Dist: google-cloud-storage>=2.0.0
|
|
38
|
-
Requires-Dist: jellyfish<1.1.2,>=0.8.9
|
|
39
39
|
Requires-Dist: numpy>=1.24.0
|
|
40
40
|
Requires-Dist: pandas>=1.5.3
|
|
41
41
|
Requires-Dist: pandas-gbq>=0.26.1
|
|
42
42
|
Requires-Dist: pyarrow>=15.0.2
|
|
43
43
|
Requires-Dist: pydata-google-auth>=1.8.2
|
|
44
44
|
Requires-Dist: requests>=2.27.1
|
|
45
|
+
Requires-Dist: shapely>=1.8.5
|
|
45
46
|
Requires-Dist: sqlglot>=23.6.3
|
|
46
47
|
Requires-Dist: tabulate>=0.9
|
|
47
48
|
Requires-Dist: ipywidgets>=7.7.1
|
|
@@ -49,30 +50,31 @@ Requires-Dist: humanize>=4.6.0
|
|
|
49
50
|
Requires-Dist: matplotlib>=3.7.1
|
|
50
51
|
Requires-Dist: db-dtypes>=1.4.2
|
|
51
52
|
Requires-Dist: atpublic<6,>=2.3
|
|
52
|
-
Requires-Dist: parsy<3,>=2
|
|
53
53
|
Requires-Dist: python-dateutil<3,>=2.8.2
|
|
54
54
|
Requires-Dist: pytz>=2022.7
|
|
55
55
|
Requires-Dist: toolz<2,>=0.11
|
|
56
56
|
Requires-Dist: typing-extensions<5,>=4.5.0
|
|
57
57
|
Requires-Dist: rich<14,>=12.4.4
|
|
58
58
|
Provides-Extra: tests
|
|
59
|
+
Requires-Dist: freezegun; extra == "tests"
|
|
60
|
+
Requires-Dist: pytest-snapshot; extra == "tests"
|
|
59
61
|
Provides-Extra: polars
|
|
60
62
|
Requires-Dist: polars>=1.7.0; extra == "polars"
|
|
61
63
|
Provides-Extra: scikit-learn
|
|
62
64
|
Requires-Dist: scikit-learn>=1.2.2; extra == "scikit-learn"
|
|
63
65
|
Provides-Extra: dev
|
|
64
66
|
Requires-Dist: pytest; extra == "dev"
|
|
65
|
-
Requires-Dist: pytest-mock; extra == "dev"
|
|
66
67
|
Requires-Dist: pre-commit; extra == "dev"
|
|
67
68
|
Requires-Dist: nox; extra == "dev"
|
|
68
69
|
Requires-Dist: google-cloud-testutils; extra == "dev"
|
|
69
70
|
Provides-Extra: all
|
|
71
|
+
Requires-Dist: freezegun; extra == "all"
|
|
70
72
|
Requires-Dist: google-cloud-testutils; extra == "all"
|
|
71
73
|
Requires-Dist: nox; extra == "all"
|
|
72
74
|
Requires-Dist: polars>=1.7.0; extra == "all"
|
|
73
75
|
Requires-Dist: pre-commit; extra == "all"
|
|
74
76
|
Requires-Dist: pytest; extra == "all"
|
|
75
|
-
Requires-Dist: pytest-
|
|
77
|
+
Requires-Dist: pytest-snapshot; extra == "all"
|
|
76
78
|
Requires-Dist: scikit-learn>=1.2.2; extra == "all"
|
|
77
79
|
|
|
78
80
|
BigQuery DataFrames
|
|
@@ -102,6 +104,7 @@ Version 2.0 introduces breaking changes for improved security and performance. K
|
|
|
102
104
|
``cloud_function_service_account="default"``. And network ingress now defaults to ``"internal-only"``.
|
|
103
105
|
* **@remote_function Argument Passing:** Arguments other than ``input_types``, ``output_type``, and ``dataset``
|
|
104
106
|
to ``remote_function`` must now be passed using keyword syntax, as positional arguments are no longer supported.
|
|
107
|
+
* **@udf Argument Passing:** Arguments ``dataset`` and ``name`` to ``udf`` are now mandatory.
|
|
105
108
|
* **Endpoint Connections:** Automatic fallback to locational endpoints in certain regions is removed.
|
|
106
109
|
* **LLM Updates (Gemini Integration):** Integrations now default to the ``gemini-2.0-flash-001`` model.
|
|
107
110
|
PaLM2 support has been removed; please migrate any existing PaLM2 usage to Gemini. **Note:** The current default
|
|
@@ -25,6 +25,7 @@ Version 2.0 introduces breaking changes for improved security and performance. K
|
|
|
25
25
|
``cloud_function_service_account="default"``. And network ingress now defaults to ``"internal-only"``.
|
|
26
26
|
* **@remote_function Argument Passing:** Arguments other than ``input_types``, ``output_type``, and ``dataset``
|
|
27
27
|
to ``remote_function`` must now be passed using keyword syntax, as positional arguments are no longer supported.
|
|
28
|
+
* **@udf Argument Passing:** Arguments ``dataset`` and ``name`` to ``udf`` are now mandatory.
|
|
28
29
|
* **Endpoint Connections:** Automatic fallback to locational endpoints in certain regions is removed.
|
|
29
30
|
* **LLM Updates (Gemini Integration):** Integrations now default to the ``gemini-2.0-flash-001`` model.
|
|
30
31
|
PaLM2 support has been removed; please migrate any existing PaLM2 usage to Gemini. **Note:** The current default
|
|
@@ -21,7 +21,6 @@ import warnings
|
|
|
21
21
|
|
|
22
22
|
import google.api_core.exceptions
|
|
23
23
|
import google.auth.credentials
|
|
24
|
-
import jellyfish
|
|
25
24
|
|
|
26
25
|
import bigframes.constants
|
|
27
26
|
import bigframes.enums
|
|
@@ -37,6 +36,7 @@ UNKNOWN_LOCATION_MESSAGE = "The location '{location}' is set to an unknown value
|
|
|
37
36
|
|
|
38
37
|
|
|
39
38
|
def _get_validated_location(value: Optional[str]) -> Optional[str]:
|
|
39
|
+
import bigframes._tools.strings
|
|
40
40
|
|
|
41
41
|
if value is None or value in bigframes.constants.ALL_BIGQUERY_LOCATIONS:
|
|
42
42
|
return value
|
|
@@ -53,7 +53,7 @@ def _get_validated_location(value: Optional[str]) -> Optional[str]:
|
|
|
53
53
|
|
|
54
54
|
possibility = min(
|
|
55
55
|
bigframes.constants.ALL_BIGQUERY_LOCATIONS,
|
|
56
|
-
key=lambda item:
|
|
56
|
+
key=lambda item: bigframes._tools.strings.levenshtein_distance(location, item),
|
|
57
57
|
)
|
|
58
58
|
# There are many layers before we get to (possibly) the user's code:
|
|
59
59
|
# -> bpd.options.bigquery.location = "us-central-1"
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
+
from typing import Optional
|
|
15
16
|
import warnings
|
|
16
17
|
|
|
17
18
|
import bigframes.exceptions as bfe
|
|
@@ -26,6 +27,9 @@ class ExperimentOptions:
|
|
|
26
27
|
self._semantic_operators: bool = False
|
|
27
28
|
self._ai_operators: bool = False
|
|
28
29
|
self._blob: bool = False
|
|
30
|
+
self._blob_display: bool = True
|
|
31
|
+
self._blob_display_width: Optional[int] = None
|
|
32
|
+
self._blob_display_height: Optional[int] = None
|
|
29
33
|
|
|
30
34
|
@property
|
|
31
35
|
def semantic_operators(self) -> bool:
|
|
@@ -67,3 +71,30 @@ class ExperimentOptions:
|
|
|
67
71
|
)
|
|
68
72
|
warnings.warn(msg, category=bfe.PreviewWarning)
|
|
69
73
|
self._blob = value
|
|
74
|
+
|
|
75
|
+
@property
|
|
76
|
+
def blob_display(self) -> bool:
|
|
77
|
+
"""Whether to display the blob content in notebook DataFrame preview. Default True."""
|
|
78
|
+
return self._blob_display
|
|
79
|
+
|
|
80
|
+
@blob_display.setter
|
|
81
|
+
def blob_display(self, value: bool):
|
|
82
|
+
self._blob_display = value
|
|
83
|
+
|
|
84
|
+
@property
|
|
85
|
+
def blob_display_width(self) -> Optional[int]:
|
|
86
|
+
"""Width in pixels that the blob constrained to."""
|
|
87
|
+
return self._blob_display_width
|
|
88
|
+
|
|
89
|
+
@blob_display_width.setter
|
|
90
|
+
def blob_display_width(self, value: Optional[int]):
|
|
91
|
+
self._blob_display_width = value
|
|
92
|
+
|
|
93
|
+
@property
|
|
94
|
+
def blob_display_height(self) -> Optional[int]:
|
|
95
|
+
"""Height in pixels that the blob constrained to."""
|
|
96
|
+
return self._blob_display_height
|
|
97
|
+
|
|
98
|
+
@blob_display_height.setter
|
|
99
|
+
def blob_display_height(self, value: Optional[int]):
|
|
100
|
+
self._blob_display_height = value
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Copyright 2025 Google LLC
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
"""_tools is a collection of helper functions with minimal dependencies.
|
|
16
|
+
|
|
17
|
+
Please keep the dependencies used in this subpackage to a minimum to avoid the
|
|
18
|
+
risk of circular dependencies.
|
|
19
|
+
"""
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# Copyright 2025 Google LLC
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
"""Helper methods for processing strings with minimal dependencies.
|
|
16
|
+
|
|
17
|
+
Please keep the dependencies used in this subpackage to a minimum to avoid the
|
|
18
|
+
risk of circular dependencies.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
import numpy
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
def levenshtein_distance(left: str, right: str) -> int:
|
|
25
|
+
"""Compute the edit distance between two strings.
|
|
26
|
+
|
|
27
|
+
This is the minumum number of substitutions, insertions, deletions
|
|
28
|
+
to get from left string to right string. See:
|
|
29
|
+
https://en.wikipedia.org/wiki/Levenshtein_distance
|
|
30
|
+
"""
|
|
31
|
+
# TODO(tswast): accelerate with numba (if available) if we end up using this
|
|
32
|
+
# function in contexts other than when raising an exception or there are too
|
|
33
|
+
# many values to compare even in that context.
|
|
34
|
+
|
|
35
|
+
distances0 = numpy.zeros(len(right) + 1)
|
|
36
|
+
distances1 = numpy.zeros(len(right) + 1)
|
|
37
|
+
|
|
38
|
+
# Maximum distance is to drop all characters and then add the other string.
|
|
39
|
+
distances0[:] = range(len(right) + 1)
|
|
40
|
+
|
|
41
|
+
for left_index in range(len(left)):
|
|
42
|
+
# Calculate distance from distances0 to distances1.
|
|
43
|
+
|
|
44
|
+
# Edit distance is to delete (i + 1) chars from left to match empty right
|
|
45
|
+
distances1[0] = left_index + 1
|
|
46
|
+
# "ab"
|
|
47
|
+
for right_index in range(len(right)):
|
|
48
|
+
left_char = left[left_index]
|
|
49
|
+
right_char = right[right_index]
|
|
50
|
+
|
|
51
|
+
deletion_cost = distances0[right_index + 1] + 1
|
|
52
|
+
insertion_cost = distances1[right_index] + 1
|
|
53
|
+
if left_char == right_char:
|
|
54
|
+
substitution_cost = distances0[right_index]
|
|
55
|
+
else:
|
|
56
|
+
substitution_cost = distances0[right_index] + 1
|
|
57
|
+
|
|
58
|
+
distances1[right_index + 1] = min(
|
|
59
|
+
deletion_cost, insertion_cost, substitution_cost
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
temp = distances0
|
|
63
|
+
distances0 = distances1
|
|
64
|
+
distances1 = temp
|
|
65
|
+
|
|
66
|
+
return distances0[len(right)]
|
|
@@ -27,7 +27,12 @@ from bigframes.bigquery._operations.datetime import (
|
|
|
27
27
|
unix_millis,
|
|
28
28
|
unix_seconds,
|
|
29
29
|
)
|
|
30
|
-
from bigframes.bigquery._operations.geo import
|
|
30
|
+
from bigframes.bigquery._operations.geo import (
|
|
31
|
+
st_area,
|
|
32
|
+
st_difference,
|
|
33
|
+
st_distance,
|
|
34
|
+
st_intersection,
|
|
35
|
+
)
|
|
31
36
|
from bigframes.bigquery._operations.json import (
|
|
32
37
|
json_extract,
|
|
33
38
|
json_extract_array,
|
|
@@ -49,6 +54,7 @@ __all__ = [
|
|
|
49
54
|
# geo ops
|
|
50
55
|
"st_area",
|
|
51
56
|
"st_difference",
|
|
57
|
+
"st_distance",
|
|
52
58
|
"st_intersection",
|
|
53
59
|
# json ops
|
|
54
60
|
"json_set",
|
|
@@ -14,8 +14,11 @@
|
|
|
14
14
|
|
|
15
15
|
from __future__ import annotations
|
|
16
16
|
|
|
17
|
+
from typing import Union
|
|
18
|
+
|
|
19
|
+
import shapely # type: ignore
|
|
20
|
+
|
|
17
21
|
from bigframes import operations as ops
|
|
18
|
-
import bigframes.dtypes
|
|
19
22
|
import bigframes.geopandas
|
|
20
23
|
import bigframes.series
|
|
21
24
|
|
|
@@ -25,7 +28,9 @@ https://cloud.google.com/bigquery/docs/reference/standard-sql/geography_function
|
|
|
25
28
|
"""
|
|
26
29
|
|
|
27
30
|
|
|
28
|
-
def st_area(
|
|
31
|
+
def st_area(
|
|
32
|
+
series: Union[bigframes.series.Series, bigframes.geopandas.GeoSeries],
|
|
33
|
+
) -> bigframes.series.Series:
|
|
29
34
|
"""
|
|
30
35
|
Returns the area in square meters covered by the polygons in the input
|
|
31
36
|
`GEOGRAPHY`.
|
|
@@ -85,6 +90,10 @@ def st_area(series: bigframes.series.Series) -> bigframes.series.Series:
|
|
|
85
90
|
4 0.0
|
|
86
91
|
dtype: Float64
|
|
87
92
|
|
|
93
|
+
Args:
|
|
94
|
+
series (bigframes.pandas.Series | bigframes.geopandas.GeoSeries):
|
|
95
|
+
A series containing geography objects.
|
|
96
|
+
|
|
88
97
|
Returns:
|
|
89
98
|
bigframes.pandas.Series:
|
|
90
99
|
Series of float representing the areas.
|
|
@@ -95,7 +104,12 @@ def st_area(series: bigframes.series.Series) -> bigframes.series.Series:
|
|
|
95
104
|
|
|
96
105
|
|
|
97
106
|
def st_difference(
|
|
98
|
-
series: bigframes.series.Series,
|
|
107
|
+
series: Union[bigframes.series.Series, bigframes.geopandas.GeoSeries],
|
|
108
|
+
other: Union[
|
|
109
|
+
bigframes.series.Series,
|
|
110
|
+
bigframes.geopandas.GeoSeries,
|
|
111
|
+
shapely.geometry.base.BaseGeometry,
|
|
112
|
+
],
|
|
99
113
|
) -> bigframes.series.Series:
|
|
100
114
|
"""
|
|
101
115
|
Returns a `GEOGRAPHY` that represents the point set difference of
|
|
@@ -166,44 +180,23 @@ def st_difference(
|
|
|
166
180
|
5 None
|
|
167
181
|
dtype: geometry
|
|
168
182
|
|
|
169
|
-
We can also check difference of single shapely geometries:
|
|
170
|
-
|
|
171
|
-
>>> polygon_s1 = bigframes.geopandas.GeoSeries(
|
|
172
|
-
... [
|
|
173
|
-
... Polygon([(0, 0), (10, 0), (10, 10), (0, 0)])
|
|
174
|
-
... ]
|
|
175
|
-
... )
|
|
176
|
-
>>> polygon_s2 = bigframes.geopandas.GeoSeries(
|
|
177
|
-
... [
|
|
178
|
-
... Polygon([(4, 2), (6, 2), (8, 6), (4, 2)])
|
|
179
|
-
... ]
|
|
180
|
-
... )
|
|
181
|
-
|
|
182
|
-
>>> polygon_s1
|
|
183
|
-
0 POLYGON ((0 0, 10 0, 10 10, 0 0))
|
|
184
|
-
dtype: geometry
|
|
185
|
-
|
|
186
|
-
>>> polygon_s2
|
|
187
|
-
0 POLYGON ((4 2, 6 2, 8 6, 4 2))
|
|
188
|
-
dtype: geometry
|
|
189
|
-
|
|
190
|
-
>>> bbq.st_difference(polygon_s1, polygon_s2)
|
|
191
|
-
0 POLYGON ((0 0, 10 0, 10 10, 0 0), (8 6, 6 2, 4...
|
|
192
|
-
dtype: geometry
|
|
193
|
-
|
|
194
183
|
Additionally, we can check difference of a GeoSeries against a single shapely geometry:
|
|
195
184
|
|
|
196
|
-
>>>
|
|
197
|
-
|
|
198
|
-
1
|
|
199
|
-
2
|
|
200
|
-
|
|
201
|
-
|
|
185
|
+
>>> polygon = Polygon([(0, 0), (10, 0), (10, 10), (0, 0)])
|
|
186
|
+
>>> bbq.st_difference(s1, polygon)
|
|
187
|
+
0 POLYGON ((1.97082 2.00002, 0 2, 0 0, 1.97082 2...
|
|
188
|
+
1 POLYGON ((1.97082 2.00002, 0 2, 0 0, 1.97082 2...
|
|
189
|
+
2 GEOMETRYCOLLECTION EMPTY
|
|
190
|
+
3 LINESTRING (0.99265 1.00781, 0 2)
|
|
191
|
+
4 POINT (0 1)
|
|
202
192
|
dtype: geometry
|
|
203
193
|
|
|
204
194
|
Args:
|
|
205
|
-
|
|
206
|
-
|
|
195
|
+
series (bigframes.pandas.Series | bigframes.geopandas.GeoSeries):
|
|
196
|
+
A series containing geography objects.
|
|
197
|
+
other (bigframes.pandas.Series | bigframes.geopandas.GeoSeries | shapely.Geometry):
|
|
198
|
+
The series or geometric object to subtract from the geography
|
|
199
|
+
objects in ``series``.
|
|
207
200
|
|
|
208
201
|
Returns:
|
|
209
202
|
bigframes.series.Series:
|
|
@@ -213,8 +206,90 @@ def st_difference(
|
|
|
213
206
|
return series._apply_binary_op(other, ops.geo_st_difference_op)
|
|
214
207
|
|
|
215
208
|
|
|
209
|
+
def st_distance(
|
|
210
|
+
series: Union[bigframes.series.Series, bigframes.geopandas.GeoSeries],
|
|
211
|
+
other: Union[
|
|
212
|
+
bigframes.series.Series,
|
|
213
|
+
bigframes.geopandas.GeoSeries,
|
|
214
|
+
shapely.geometry.base.BaseGeometry,
|
|
215
|
+
],
|
|
216
|
+
*,
|
|
217
|
+
use_spheroid: bool = False,
|
|
218
|
+
) -> bigframes.series.Series:
|
|
219
|
+
"""
|
|
220
|
+
Returns the shortest distance in meters between two non-empty
|
|
221
|
+
``GEOGRAPHY`` objects.
|
|
222
|
+
|
|
223
|
+
**Examples:**
|
|
224
|
+
|
|
225
|
+
>>> import bigframes as bpd
|
|
226
|
+
>>> import bigframes.bigquery as bbq
|
|
227
|
+
>>> import bigframes.geopandas
|
|
228
|
+
>>> from shapely.geometry import Polygon, LineString, Point
|
|
229
|
+
>>> bpd.options.display.progress_bar = None
|
|
230
|
+
|
|
231
|
+
We can check two GeoSeries against each other, row by row.
|
|
232
|
+
|
|
233
|
+
>>> s1 = bigframes.geopandas.GeoSeries(
|
|
234
|
+
... [
|
|
235
|
+
... Point(0, 0),
|
|
236
|
+
... Point(0.00001, 0),
|
|
237
|
+
... Point(0.00002, 0),
|
|
238
|
+
... ],
|
|
239
|
+
... )
|
|
240
|
+
>>> s2 = bigframes.geopandas.GeoSeries(
|
|
241
|
+
... [
|
|
242
|
+
... Point(0.00001, 0),
|
|
243
|
+
... Point(0.00003, 0),
|
|
244
|
+
... Point(0.00005, 0),
|
|
245
|
+
... ],
|
|
246
|
+
... )
|
|
247
|
+
|
|
248
|
+
>>> bbq.st_distance(s1, s2, use_spheroid=True)
|
|
249
|
+
0 1.113195
|
|
250
|
+
1 2.22639
|
|
251
|
+
2 3.339585
|
|
252
|
+
dtype: Float64
|
|
253
|
+
|
|
254
|
+
We can also calculate the distance of each geometry and a single shapely geometry:
|
|
255
|
+
|
|
256
|
+
>>> bbq.st_distance(s2, Point(0.00001, 0))
|
|
257
|
+
0 0.0
|
|
258
|
+
1 2.223902
|
|
259
|
+
2 4.447804
|
|
260
|
+
dtype: Float64
|
|
261
|
+
|
|
262
|
+
Args:
|
|
263
|
+
series (bigframes.pandas.Series | bigframes.geopandas.GeoSeries):
|
|
264
|
+
A series containing geography objects.
|
|
265
|
+
other (bigframes.pandas.Series | bigframes.geopandas.GeoSeries | shapely.Geometry):
|
|
266
|
+
The series or geometric object to calculate the distance in meters
|
|
267
|
+
to form the geography objects in ``series``.
|
|
268
|
+
use_spheroid (optional, default ``False``):
|
|
269
|
+
Determines how this function measures distance. If ``use_spheroid``
|
|
270
|
+
is False, the function measures distance on the surface of a perfect
|
|
271
|
+
sphere. If ``use_spheroid`` is True, the function measures distance
|
|
272
|
+
on the surface of the `WGS84 spheroid
|
|
273
|
+
<https://cloud.google.com/bigquery/docs/geospatial-data>`_. The
|
|
274
|
+
default value of ``use_spheroid`` is False.
|
|
275
|
+
|
|
276
|
+
Returns:
|
|
277
|
+
bigframes.pandas.Series:
|
|
278
|
+
The Series (elementwise) of the smallest distance between
|
|
279
|
+
each aligned geometry with other.
|
|
280
|
+
"""
|
|
281
|
+
return series._apply_binary_op(
|
|
282
|
+
other, ops.GeoStDistanceOp(use_spheroid=use_spheroid)
|
|
283
|
+
)
|
|
284
|
+
|
|
285
|
+
|
|
216
286
|
def st_intersection(
|
|
217
|
-
series: bigframes.series.Series,
|
|
287
|
+
series: Union[bigframes.series.Series, bigframes.geopandas.GeoSeries],
|
|
288
|
+
other: Union[
|
|
289
|
+
bigframes.series.Series,
|
|
290
|
+
bigframes.geopandas.GeoSeries,
|
|
291
|
+
shapely.geometry.base.BaseGeometry,
|
|
292
|
+
],
|
|
218
293
|
) -> bigframes.series.Series:
|
|
219
294
|
"""
|
|
220
295
|
Returns a `GEOGRAPHY` that represents the point set intersection of the two
|
|
@@ -284,18 +359,20 @@ def st_intersection(
|
|
|
284
359
|
|
|
285
360
|
We can also do intersection of each geometry and a single shapely geometry:
|
|
286
361
|
|
|
287
|
-
>>> bbq.st_intersection(s1,
|
|
362
|
+
>>> bbq.st_intersection(s1, Polygon([(0, 0), (1, 1), (0, 1)]))
|
|
288
363
|
0 POLYGON ((0 0, 0.99954 1, 0 1, 0 0))
|
|
289
|
-
1
|
|
290
|
-
2
|
|
291
|
-
3
|
|
292
|
-
4
|
|
364
|
+
1 POLYGON ((0 0, 0.99954 1, 0 1, 0 0))
|
|
365
|
+
2 LINESTRING (0 0, 0.99954 1)
|
|
366
|
+
3 GEOMETRYCOLLECTION EMPTY
|
|
367
|
+
4 POINT (0 1)
|
|
293
368
|
dtype: geometry
|
|
294
369
|
|
|
295
370
|
Args:
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
371
|
+
series (bigframes.pandas.Series | bigframes.geopandas.GeoSeries):
|
|
372
|
+
A series containing geography objects.
|
|
373
|
+
other (bigframes.pandas.Series | bigframes.geopandas.GeoSeries | shapely.Geometry):
|
|
374
|
+
The series or geometric object to intersect with the geography
|
|
375
|
+
objects in ``series``.
|
|
299
376
|
|
|
300
377
|
Returns:
|
|
301
378
|
bigframes.geopandas.GeoSeries:
|
|
@@ -69,7 +69,7 @@ class TransformFunction:
|
|
|
69
69
|
def _create_udf(self):
|
|
70
70
|
"""Create Python UDF in BQ. Return name of the UDF."""
|
|
71
71
|
udf_name = str(
|
|
72
|
-
self._session.
|
|
72
|
+
self._session._anon_dataset_manager.generate_unique_resource_id()
|
|
73
73
|
)
|
|
74
74
|
|
|
75
75
|
func_body = inspect.getsource(self._func)
|
|
@@ -102,6 +102,9 @@ AS r\"\"\"
|
|
|
102
102
|
def udf(self):
|
|
103
103
|
"""Create and return the UDF object."""
|
|
104
104
|
udf_name = self._create_udf()
|
|
105
|
+
|
|
106
|
+
# TODO(b/404605969): remove cleanups when UDF fixes dataset deletion.
|
|
107
|
+
self._session._function_session._update_temp_artifacts(udf_name, "")
|
|
105
108
|
return self._session.read_gbq_function(udf_name)
|
|
106
109
|
|
|
107
110
|
|