bigframes 1.42.0__tar.gz → 2.0.0.dev0__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-1.42.0/bigframes.egg-info → bigframes-2.0.0.dev0}/PKG-INFO +28 -3
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/README.rst +24 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/_config/bigquery_options.py +13 -14
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/clients.py +47 -16
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/constants.py +17 -12
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/aggregate_compiler.py +49 -45
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/ibis_types.py +2 -1
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/reshape/tile.py +45 -7
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/functions/_function_client.py +11 -1
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/functions/_function_session.py +30 -44
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/llm.py +23 -541
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/loader.py +2 -7
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/aggregations.py +4 -2
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/blob.py +1 -1
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/pandas/__init__.py +9 -4
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/__init__.py +21 -16
- bigframes-2.0.0.dev0/bigframes/session/bigquery_session.py +171 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/clients.py +17 -45
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/version.py +2 -2
- {bigframes-1.42.0 → bigframes-2.0.0.dev0/bigframes.egg-info}/PKG-INFO +28 -3
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes.egg-info/SOURCES.txt +3 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes.egg-info/requires.txt +2 -2
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/setup.py +3 -2
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/conftest.py +9 -3
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/functions/test_managed_function.py +43 -5
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/functions/test_remote_function.py +286 -137
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/test_location.py +75 -35
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/bigquery/test_json.py +11 -55
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/blob/test_properties.py +1 -4
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/functions/test_remote_function.py +157 -102
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/conftest.py +0 -58
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_core.py +0 -21
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_llm.py +2 -260
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_register.py +1 -10
- bigframes-2.0.0.dev0/tests/system/small/test_bq_sessions.py +80 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_dataframe.py +2 -3
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_pandas.py +169 -79
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_progress_bar.py +13 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_series.py +18 -21
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_session.py +10 -31
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/_config/test_bigquery_options.py +7 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/functions/test_remote_function.py +9 -3
- bigframes-2.0.0.dev0/tests/unit/test_clients.py +67 -0
- bigframes-2.0.0.dev0/tests/unit/test_daemon.py +42 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_pandas.py +51 -6
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/frame.py +4 -4
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/reshape/tile.py +14 -7
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/series.py +5 -4
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/version.py +2 -2
- bigframes-1.42.0/tests/unit/test_clients.py +0 -49
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/LICENSE +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/MANIFEST.in +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/_config/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/_config/compute_options.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/_config/display_options.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/_config/experiment_options.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/_config/sampling_options.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/_operations/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/_operations/approx_agg.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/_operations/array.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/_operations/datetime.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/_operations/geo.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/_operations/json.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/_operations/search.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/_operations/sql.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/bigquery/_operations/struct.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/blob/_functions.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/array_value.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/bigframe_node.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/block_transforms.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/blocks.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/api.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/compiled.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/compiler.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/concat.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/constants.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/default_ordering.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/explode.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/googlesql/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/googlesql/abc.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/googlesql/datatype.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/googlesql/expression.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/googlesql/function.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/googlesql/query.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/polars/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/polars/compiler.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/scalar_op_compiler.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/compile/schema_translator.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/convert.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/eval.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/explode.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/expression.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/global_session.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/groupby/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/groupby/aggs.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/groupby/dataframe_group_by.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/groupby/series_group_by.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/guid.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/identifiers.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/indexers.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/indexes/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/indexes/base.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/indexes/multi.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/join_def.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/local_data.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/log_adapter.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/nodes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/ordering.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/pruning.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/reshape/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/reshape/api.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/reshape/concat.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/reshape/encoding.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/reshape/merge.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/rewrite/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/rewrite/identifiers.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/rewrite/implicit_align.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/rewrite/legacy_align.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/rewrite/order.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/rewrite/pruning.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/rewrite/slices.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/rewrite/timedeltas.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/scalar.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/schema.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/slices.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/sql.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/tools/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/tools/datetimes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/tree_properties.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/utils.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/validations.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/window/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/core/window_spec.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/dataframe.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/dtypes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/enums.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/exceptions.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/features.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/formatting_helpers.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/functions/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/functions/_utils.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/functions/function.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/functions/function_template.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/geopandas/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/geopandas/geoseries.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/base.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/cluster.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/compose.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/core.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/decomposition.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/ensemble.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/forecasting.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/globals.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/imported.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/impute.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/linear_model.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/metrics/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/metrics/_metrics.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/metrics/pairwise.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/model_selection.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/pipeline.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/preprocessing.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/remote.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/sql.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/ml/utils.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/_matplotlib/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/_matplotlib/core.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/_matplotlib/hist.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/_op_converters.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/ai.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/array_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/base.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/base_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/blob_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/bool_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/comparison_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/date_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/datetime_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/datetimes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/distance_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/frequency_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/generic_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/geo_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/json_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/lists.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/numeric_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/numpy_op_maps.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/plotting.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/remote_function_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/semantics.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/string_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/strings.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/struct_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/structs.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/time_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/timedelta_ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/operations/type.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/pandas/core/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/pandas/core/api.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/pandas/core/tools/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/pandas/core/tools/timedeltas.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/pandas/io/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/pandas/io/api.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/py.typed +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/series.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/_io/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/_io/bigquery/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/_io/bigquery/read_gbq_table.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/_io/pandas.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/environment.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/executor.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/loader.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/metrics.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/planner.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/temp_storage.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/time.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/session/validation.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/streaming/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes/streaming/dataframe.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes.egg-info/dependency_links.txt +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes.egg-info/not-zip-safe +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/bigframes.egg-info/top_level.txt +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/pyproject.toml +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/setup.cfg +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/README.md +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/config.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/q1.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/q10.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/q2.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/q3.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/q4.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/q5.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/q6.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/q7.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/groupby/q8.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/join/config.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/join/q1.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/join/q2.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/join/q3.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/join/q4.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/join/q5.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/sort/config.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/db_benchmark/sort/q1.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/config.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q1.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q10.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q11.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q12.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q13.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q14.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q15.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q16.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q17.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q18.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q19.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q2.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q20.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q21.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q22.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q3.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q4.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q5.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q6.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q7.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q8.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/tpch/q9.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/benchmark/utils.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/hockey_players.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/hockey_players.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/json.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/json_schema.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/matrix_2by3.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/matrix_2by3.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/matrix_3by4.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/matrix_3by4.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/nested.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/nested_schema.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/nested_structs.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/nested_structs_schema.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/penguins.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/penguins_schema.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/people.csv +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/repeated.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/repeated_schema.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/scalars.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/scalars_schema.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/time_series.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/time_series_schema.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/urban_areas.jsonl +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/data/urban_areas_schema.json +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/blob/test_function.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/functions/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/ml/test_cluster.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/ml/test_compose.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/ml/test_core.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/ml/test_decomposition.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/ml/test_ensemble.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/ml/test_forecasting.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/ml/test_linear_model.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/ml/test_model_selection.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/ml/test_pipeline.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/operations/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/operations/conftest.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/operations/test_ai.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/operations/test_semantics.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/test_dataframe.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/test_dataframe_io.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/test_session.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/large/test_streaming.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/load/conftest.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/load/test_large_tables.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/load/test_llm.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/bigquery/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/bigquery/test_approx_agg.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/bigquery/test_array.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/bigquery/test_datetime.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/bigquery/test_geo.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/bigquery/test_sql.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/bigquery/test_struct.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/bigquery/test_vector_search.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/blob/test_io.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/blob/test_urls.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/core/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/core/test_convert.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/core/test_indexers.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/functions/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/geopandas/test_geoseries.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_cluster.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_decomposition.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_ensemble.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_forecasting.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_imported.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_impute.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_linear_model.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_metrics.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_metrics_pairwise.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_model_selection.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_preprocessing.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_remote.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/ml/test_utils.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/test_ai.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/test_dates.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/test_datetimes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/test_lists.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/test_plotting.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/test_semantics.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/test_strings.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/test_struct.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/operations/test_timedeltas.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/regression/test_issue355_merge_after_filter.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_dataframe_io.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_encryption.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_groupby.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_index.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_index_io.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_ipython.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_multiindex.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_null_index.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_numpy.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_pandas_options.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_scalar.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_series_io.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_unordered.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/small/test_window.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/system/utils.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/_config/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/_config/test_experiment_options.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/_config/test_threaded_options.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/bigquery/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/bigquery/test_json.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/compile/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/compile/googlesql/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/compile/googlesql/test_expression.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/compile/googlesql/test_function.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/compile/googlesql/test_query.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_bf_utils.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_blocks.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_dtypes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_expression.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_indexes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_log_adapter.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_rewrite.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_slices.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_sql.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/core/test_windowspec.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/functions/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/functions/test_function_template.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/functions/test_remote_function_utils.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/ml/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/ml/test_api_primitives.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/ml/test_compose.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/ml/test_forecasting.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/ml/test_golden_sql.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/ml/test_pipeline.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/ml/test_sql.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/operations/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/polars_session.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/resources.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/session/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/session/test_clients.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/session/test_io_bigquery.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/session/test_io_pandas.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/session/test_read_gbq_table.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/session/test_session.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/session/test_time.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_constants.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_dataframe.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_dataframe_io.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_features.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_formatting_helpers.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_local_engine.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_notebook.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_planner.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_series.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/tests/unit/test_series_io.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/constants.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/cpython/LICENSE +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/cpython/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/cpython/_pprint.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/db_benchmark/LICENSE +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/db_benchmark/METADATA +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/db_benchmark/README.md +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/db_benchmark/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/db_benchmark/groupby_queries.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/db_benchmark/join_queries.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/db_benchmark/sort_queries.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/geopandas/LICENSE.txt +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/geopandas/geoseries.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/google_cloud_bigquery/LICENSE +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/google_cloud_bigquery/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/google_cloud_bigquery/_pandas_helpers.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/google_cloud_bigquery/tests/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/google_cloud_bigquery/tests/unit/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/google_cloud_bigquery/tests/unit/test_pandas_helpers.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/LICENSE.txt +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/README.md +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/bigquery/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/bigquery/backend.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/bigquery/client.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/bigquery/converter.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/bigquery/datatypes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/bigquery/udf/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/bigquery/udf/core.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/bigquery/udf/find.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/bigquery/udf/rewrite.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/sql/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/sql/compilers/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/sql/compilers/base.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/sql/compilers/bigquery/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/sql/datatypes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/backends/sql/rewrites.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/annotations.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/bases.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/caching.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/collections.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/deferred.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/dispatch.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/egraph.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/exceptions.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/graph.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/grounds.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/numeric.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/patterns.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/selectors.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/temporal.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/common/typing.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/config.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/api.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/builders.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/datashape.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/datatypes/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/datatypes/cast.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/datatypes/core.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/datatypes/parse.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/datatypes/value.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/decompile.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/format.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/analytic.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/arrays.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/core.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/generic.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/geospatial.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/histograms.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/json.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/logical.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/maps.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/numeric.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/reductions.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/relations.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/sortkeys.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/strings.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/structs.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/subqueries.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/temporal.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/udf.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/operations/window.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/rewrites.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/rules.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/schema.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/sql.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/arrays.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/binary.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/core.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/dataframe_interchange.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/generic.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/geospatial.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/groupby.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/joins.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/json.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/logical.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/maps.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/numeric.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/pretty.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/relations.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/strings.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/structs.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/temporal.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/temporal_windows.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/typing.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/types/uuid.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/expr/visualize.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/formats/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/formats/numpy.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/formats/pandas.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/formats/polars.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/formats/pyarrow.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/selectors.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/ibis/util.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/AUTHORS.md +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/LICENSE +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/README.md +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/_config/config.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/arrays/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/arrays/arrow/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/arrays/arrow/accessors.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/arrays/datetimelike.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/common.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/computation/align.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/computation/common.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/computation/engines.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/computation/eval.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/computation/expr.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/computation/ops.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/computation/parsing.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/computation/scope.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/config_init.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/dtypes/inference.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/generic.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/groupby/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/indexes/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/indexes/accessor.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/indexes/base.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/indexes/multi.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/indexing.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/reshape/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/reshape/concat.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/reshape/encoding.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/reshape/merge.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/strings/accessor.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/tools/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/tools/datetimes.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/tools/timedeltas.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/window/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/core/window/rolling.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/io/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/io/common.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/io/gbq.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/io/parquet.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/io/parsers/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/io/parsers/readers.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/io/pickle.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/pandas/_typing.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/plotting/_core.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/util/_exceptions.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/pandas/util/_validators.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/py.typed +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/COPYING +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/base.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/cluster/_kmeans.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/compose/_column_transformer.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/decomposition/_pca.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/ensemble/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/ensemble/_forest.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/impute/_base.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/linear_model/_base.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/linear_model/_logistic.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/metrics/_classification.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/metrics/_ranking.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/metrics/_regression.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/metrics/pairwise.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/model_selection/_split.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/model_selection/_validation.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/pipeline.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/preprocessing/_data.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/preprocessing/_discretization.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/preprocessing/_encoder.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/preprocessing/_label.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/sklearn/preprocessing/_polynomial.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/LICENSE +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/METADATA +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/README.md +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/TPC-EULA.txt +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q1.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q10.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q11.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q12.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q13.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q14.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q15.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q16.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q17.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q18.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q19.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q2.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q20.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q21.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q22.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q3.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q4.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q5.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q6.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q7.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q8.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/queries/q9.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q1.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q10.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q11.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q12.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q13.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q14.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q15.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q16.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q17.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q18.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q19.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q2.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q20.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q21.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q22.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q3.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q4.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q5.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q6.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q7.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q8.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/tpch/sql_queries/q9.sql +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/xgboost/LICENSE +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/xgboost/__init__.py +0 -0
- {bigframes-1.42.0 → bigframes-2.0.0.dev0}/third_party/bigframes_vendored/xgboost/sklearn.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: bigframes
|
|
3
|
-
Version:
|
|
3
|
+
Version: 2.0.0.dev0
|
|
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
|
|
@@ -20,6 +20,7 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
20
20
|
Classifier: Operating System :: OS Independent
|
|
21
21
|
Classifier: Topic :: Internet
|
|
22
22
|
Requires-Python: >=3.9
|
|
23
|
+
Description-Content-Type: text/x-rst
|
|
23
24
|
License-File: LICENSE
|
|
24
25
|
Requires-Dist: cloudpickle>=2.0.0
|
|
25
26
|
Requires-Dist: fsspec>=2023.3.0
|
|
@@ -28,7 +29,7 @@ Requires-Dist: geopandas>=0.12.2
|
|
|
28
29
|
Requires-Dist: google-auth<3.0dev,>=2.15.0
|
|
29
30
|
Requires-Dist: google-cloud-bigtable>=2.24.0
|
|
30
31
|
Requires-Dist: google-cloud-pubsub>=2.21.4
|
|
31
|
-
Requires-Dist: google-cloud-bigquery[bqstorage,pandas]>=3.
|
|
32
|
+
Requires-Dist: google-cloud-bigquery[bqstorage,pandas]>=3.31.0
|
|
32
33
|
Requires-Dist: google-cloud-functions>=1.12.0
|
|
33
34
|
Requires-Dist: google-cloud-bigquery-connection>=1.12.0
|
|
34
35
|
Requires-Dist: google-cloud-iam>=2.12.1
|
|
@@ -37,7 +38,7 @@ Requires-Dist: google-cloud-storage>=2.0.0
|
|
|
37
38
|
Requires-Dist: jellyfish<1.1.2,>=0.8.9
|
|
38
39
|
Requires-Dist: numpy>=1.24.0
|
|
39
40
|
Requires-Dist: pandas>=1.5.3
|
|
40
|
-
Requires-Dist: pandas-gbq>=0.26.
|
|
41
|
+
Requires-Dist: pandas-gbq>=0.26.1
|
|
41
42
|
Requires-Dist: pyarrow>=15.0.2
|
|
42
43
|
Requires-Dist: pydata-google-auth>=1.8.2
|
|
43
44
|
Requires-Dist: requests>=2.27.1
|
|
@@ -88,6 +89,30 @@ powered by the BigQuery engine.
|
|
|
88
89
|
BigQuery DataFrames is an open-source package. You can run
|
|
89
90
|
``pip install --upgrade bigframes`` to install the latest version.
|
|
90
91
|
|
|
92
|
+
⚠️ Warning: Breaking Changes in BigQuery DataFrames v2.0
|
|
93
|
+
--------------------------------------------------------
|
|
94
|
+
|
|
95
|
+
Version 2.0 introduces breaking changes for improved security and performance. Key default behaviors have changed, including
|
|
96
|
+
|
|
97
|
+
* **Large Results (>10GB):** The default value for ``allow_large_results`` has changed to ``False``.
|
|
98
|
+
Methods like ``to_pandas()`` will now fail if the query result's compressed data size exceeds 10GB,
|
|
99
|
+
unless large results are explicitly permitted.
|
|
100
|
+
* **Remote Function Security:** The library no longer automatically lets the Compute Engine default service
|
|
101
|
+
account become the identity of the Cloud Run functions. If that is desired, it has to be indicated by passing
|
|
102
|
+
``cloud_function_service_account="default"``. And network ingress now defaults to ``"internal-only"``.
|
|
103
|
+
* **@remote_function Argument Passing:** Arguments other than ``input_types``, ``output_type``, and ``dataset``
|
|
104
|
+
to ``remote_function`` must now be passed using keyword syntax, as positional arguments are no longer supported.
|
|
105
|
+
* **Endpoint Connections:** Automatic fallback to locational endpoints in certain regions is removed.
|
|
106
|
+
* **LLM Updates (Gemini Integration):** Integrations now default to the ``gemini-2.0-flash-001`` model.
|
|
107
|
+
PaLM2 support has been removed; please migrate any existing PaLM2 usage to Gemini. **Note:** The current default
|
|
108
|
+
model will be removed in Version 3.0.
|
|
109
|
+
|
|
110
|
+
**Important:** If you are not ready to adapt to these changes, please pin your dependency to a version less than 2.0
|
|
111
|
+
(e.g., ``bigframes==1.42.0``) to avoid disruption.
|
|
112
|
+
|
|
113
|
+
To learn about these changes and how to migrate to version 2.0, see the
|
|
114
|
+
`updated introduction guide <https://cloud.google.com/bigquery/docs/bigquery-dataframes-introduction>`_.
|
|
115
|
+
|
|
91
116
|
.. |GA| image:: https://img.shields.io/badge/support-GA-gold.svg
|
|
92
117
|
:target: https://github.com/googleapis/google-cloud-python/blob/main/README.rst#general-availability
|
|
93
118
|
.. |pypi| image:: https://img.shields.io/pypi/v/bigframes.svg
|
|
@@ -12,6 +12,30 @@ powered by the BigQuery engine.
|
|
|
12
12
|
BigQuery DataFrames is an open-source package. You can run
|
|
13
13
|
``pip install --upgrade bigframes`` to install the latest version.
|
|
14
14
|
|
|
15
|
+
⚠️ Warning: Breaking Changes in BigQuery DataFrames v2.0
|
|
16
|
+
--------------------------------------------------------
|
|
17
|
+
|
|
18
|
+
Version 2.0 introduces breaking changes for improved security and performance. Key default behaviors have changed, including
|
|
19
|
+
|
|
20
|
+
* **Large Results (>10GB):** The default value for ``allow_large_results`` has changed to ``False``.
|
|
21
|
+
Methods like ``to_pandas()`` will now fail if the query result's compressed data size exceeds 10GB,
|
|
22
|
+
unless large results are explicitly permitted.
|
|
23
|
+
* **Remote Function Security:** The library no longer automatically lets the Compute Engine default service
|
|
24
|
+
account become the identity of the Cloud Run functions. If that is desired, it has to be indicated by passing
|
|
25
|
+
``cloud_function_service_account="default"``. And network ingress now defaults to ``"internal-only"``.
|
|
26
|
+
* **@remote_function Argument Passing:** Arguments other than ``input_types``, ``output_type``, and ``dataset``
|
|
27
|
+
to ``remote_function`` must now be passed using keyword syntax, as positional arguments are no longer supported.
|
|
28
|
+
* **Endpoint Connections:** Automatic fallback to locational endpoints in certain regions is removed.
|
|
29
|
+
* **LLM Updates (Gemini Integration):** Integrations now default to the ``gemini-2.0-flash-001`` model.
|
|
30
|
+
PaLM2 support has been removed; please migrate any existing PaLM2 usage to Gemini. **Note:** The current default
|
|
31
|
+
model will be removed in Version 3.0.
|
|
32
|
+
|
|
33
|
+
**Important:** If you are not ready to adapt to these changes, please pin your dependency to a version less than 2.0
|
|
34
|
+
(e.g., ``bigframes==1.42.0``) to avoid disruption.
|
|
35
|
+
|
|
36
|
+
To learn about these changes and how to migrate to version 2.0, see the
|
|
37
|
+
`updated introduction guide <https://cloud.google.com/bigquery/docs/bigquery-dataframes-introduction>`_.
|
|
38
|
+
|
|
15
39
|
.. |GA| image:: https://img.shields.io/badge/support-GA-gold.svg
|
|
16
40
|
:target: https://github.com/googleapis/google-cloud-python/blob/main/README.rst#general-availability
|
|
17
41
|
.. |pypi| image:: https://img.shields.io/pypi/v/bigframes.svg
|
|
@@ -89,7 +89,7 @@ class BigQueryOptions:
|
|
|
89
89
|
kms_key_name: Optional[str] = None,
|
|
90
90
|
skip_bq_connection_check: bool = False,
|
|
91
91
|
*,
|
|
92
|
-
allow_large_results: bool =
|
|
92
|
+
allow_large_results: bool = False,
|
|
93
93
|
ordering_mode: Literal["strict", "partial"] = "strict",
|
|
94
94
|
client_endpoints_override: Optional[dict] = None,
|
|
95
95
|
):
|
|
@@ -258,7 +258,8 @@ class BigQueryOptions:
|
|
|
258
258
|
|
|
259
259
|
@property
|
|
260
260
|
def use_regional_endpoints(self) -> bool:
|
|
261
|
-
"""Flag to connect to regional API endpoints
|
|
261
|
+
"""Flag to connect to regional API endpoints for BigQuery API and
|
|
262
|
+
BigQuery Storage API.
|
|
262
263
|
|
|
263
264
|
.. note::
|
|
264
265
|
Use of regional endpoints is a feature in Preview and available only
|
|
@@ -267,18 +268,16 @@ class BigQueryOptions:
|
|
|
267
268
|
"us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3"
|
|
268
269
|
and "us-west4".
|
|
269
270
|
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
``europe-west3
|
|
275
|
-
``
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
to provide weaker promise on the request remaining within the location
|
|
281
|
-
during transit) ``europe-west3-bigquery.googleapis.com`` would be used.
|
|
271
|
+
Requires that ``location`` is set. For [supported regions](https://cloud.google.com/bigquery/docs/regional-endpoints),
|
|
272
|
+
for example ``europe-west3``, you need to specify
|
|
273
|
+
``location='europe-west3'`` and ``use_regional_endpoints=True``, and
|
|
274
|
+
then BigQuery DataFrames would connect to the BigQuery endpoint
|
|
275
|
+
``bigquery.europe-west3.rep.googleapis.com``. For not supported regions,
|
|
276
|
+
for example ``asia-northeast1``, when you specify
|
|
277
|
+
``location='asia-northeast1'`` and ``use_regional_endpoints=True``,
|
|
278
|
+
the global endpoint ``bigquery.googleapis.com`` would be used, which
|
|
279
|
+
does not promise any guarantee on the request remaining within the
|
|
280
|
+
location during transit.
|
|
282
281
|
|
|
283
282
|
Returns:
|
|
284
283
|
bool:
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
from __future__ import annotations
|
|
18
18
|
|
|
19
19
|
import logging
|
|
20
|
+
import textwrap
|
|
20
21
|
import time
|
|
21
22
|
from typing import cast, Optional
|
|
22
23
|
|
|
@@ -28,21 +29,46 @@ from google.iam.v1 import iam_policy_pb2, policy_pb2
|
|
|
28
29
|
logger = logging.getLogger(__name__)
|
|
29
30
|
|
|
30
31
|
|
|
31
|
-
def
|
|
32
|
-
|
|
32
|
+
def get_canonical_bq_connection_id(
|
|
33
|
+
connection_id: str, default_project: str, default_location: str
|
|
33
34
|
) -> str:
|
|
34
|
-
"""
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
35
|
+
"""
|
|
36
|
+
Retrieve the full connection id of the form
|
|
37
|
+
<PROJECT_NUMBER/PROJECT_ID>.<LOCATION>.<CONNECTION_ID>.
|
|
38
|
+
Use default project, location or connection_id when any of them are missing.
|
|
39
|
+
"""
|
|
40
|
+
|
|
41
|
+
if "/" in connection_id:
|
|
42
|
+
fields = connection_id.split("/")
|
|
43
|
+
if (
|
|
44
|
+
len(fields) == 6
|
|
45
|
+
and fields[0] == "projects"
|
|
46
|
+
and fields[2] == "locations"
|
|
47
|
+
and fields[4] == "connections"
|
|
48
|
+
):
|
|
49
|
+
return ".".join((fields[1], fields[3], fields[5]))
|
|
50
|
+
else:
|
|
51
|
+
if connection_id.count(".") == 2:
|
|
52
|
+
return connection_id
|
|
53
|
+
|
|
54
|
+
if connection_id.count(".") == 1:
|
|
55
|
+
return f"{default_project}.{connection_id}"
|
|
56
|
+
|
|
57
|
+
if connection_id.count(".") == 0:
|
|
58
|
+
return f"{default_project}.{default_location}.{connection_id}"
|
|
59
|
+
|
|
60
|
+
raise ValueError(
|
|
61
|
+
textwrap.dedent(
|
|
62
|
+
f"""
|
|
63
|
+
Invalid connection id format: {connection_id}.
|
|
64
|
+
Only the following formats are supported:
|
|
65
|
+
<project-id>.<location>.<connection-id>,
|
|
66
|
+
<location>.<connection-id>,
|
|
67
|
+
<connection-id>,
|
|
68
|
+
projects/<project-id>/locations/<location>/connections/<connection-id>
|
|
69
|
+
"""
|
|
70
|
+
).strip()
|
|
71
|
+
)
|
|
46
72
|
|
|
47
73
|
|
|
48
74
|
class BqConnectionManager:
|
|
@@ -80,7 +106,7 @@ class BqConnectionManager:
|
|
|
80
106
|
)
|
|
81
107
|
if service_account_id:
|
|
82
108
|
logger.info(
|
|
83
|
-
f"
|
|
109
|
+
f"BQ connection {project_id}.{location}.{connection_id} already exists"
|
|
84
110
|
)
|
|
85
111
|
else:
|
|
86
112
|
connection_name, service_account_id = self._create_bq_connection(
|
|
@@ -90,9 +116,14 @@ class BqConnectionManager:
|
|
|
90
116
|
f"Created BQ connection {connection_name} with service account id: {service_account_id}"
|
|
91
117
|
)
|
|
92
118
|
service_account_id = cast(str, service_account_id)
|
|
119
|
+
|
|
93
120
|
# Ensure IAM role on the BQ connection
|
|
94
121
|
# https://cloud.google.com/bigquery/docs/reference/standard-sql/remote-functions#grant_permission_on_function
|
|
95
|
-
|
|
122
|
+
try:
|
|
123
|
+
self._ensure_iam_binding(project_id, service_account_id, iam_role)
|
|
124
|
+
except google.api_core.exceptions.PermissionDenied as ex:
|
|
125
|
+
ex.message = f"Failed ensuring IAM binding (role={iam_role}, service-account={service_account_id}). {ex.message}"
|
|
126
|
+
raise
|
|
96
127
|
|
|
97
128
|
# Introduce retries to accommodate transient errors like:
|
|
98
129
|
# (1) Etag mismatch,
|
|
@@ -96,22 +96,27 @@ REP_ENABLED_BIGQUERY_LOCATIONS = frozenset(
|
|
|
96
96
|
}
|
|
97
97
|
)
|
|
98
98
|
|
|
99
|
-
|
|
100
|
-
LEP_ENABLED_BIGQUERY_LOCATIONS = frozenset(
|
|
99
|
+
REP_NOT_ENABLED_BIGQUERY_LOCATIONS = frozenset(
|
|
101
100
|
ALL_BIGQUERY_LOCATIONS - REP_ENABLED_BIGQUERY_LOCATIONS
|
|
102
101
|
)
|
|
103
102
|
|
|
104
|
-
|
|
103
|
+
LOCATION_NEEDED_FOR_REP_MESSAGE = textwrap.dedent(
|
|
105
104
|
"""
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
locations
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
105
|
+
Must set location to use regional endpoints.
|
|
106
|
+
You can do it via bigframaes.pandas.options.bigquery.location.
|
|
107
|
+
The supported locations can be found at
|
|
108
|
+
https://cloud.google.com/bigquery/docs/regional-endpoints#supported-locations.
|
|
109
|
+
"""
|
|
110
|
+
).strip()
|
|
111
|
+
|
|
112
|
+
REP_NOT_SUPPORTED_MESSAGE = textwrap.dedent(
|
|
113
|
+
"""
|
|
114
|
+
Support for regional endpoints for BigQuery and BigQuery Storage APIs may
|
|
115
|
+
not be available in the location {location}. For the supported APIs and
|
|
116
|
+
locations see https://cloud.google.com/bigquery/docs/regional-endpoints.
|
|
117
|
+
If you have the (deprecated) locational endpoints enabled in your project
|
|
118
|
+
(which requires your project to be allowlisted), you can override the
|
|
119
|
+
endpoints directly by doing the following:
|
|
115
120
|
bigframes.pandas.options.bigquery.client_endpoints_override = {{
|
|
116
121
|
"bqclient": "https://{location}-bigquery.googleapis.com",
|
|
117
122
|
"bqconnectionclient": "{location}-bigqueryconnection.googleapis.com",
|
|
@@ -360,69 +360,73 @@ def _(
|
|
|
360
360
|
if isinstance(op.bins, int):
|
|
361
361
|
col_min = _apply_window_if_present(x.min(), window)
|
|
362
362
|
col_max = _apply_window_if_present(x.max(), window)
|
|
363
|
+
adj = (col_max - col_min) * 0.001
|
|
363
364
|
bin_width = (col_max - col_min) / op.bins
|
|
364
365
|
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
case_expr = x < (col_min + (this_bin + 1) * bin_width)
|
|
371
|
-
out = out.when(
|
|
372
|
-
case_expr,
|
|
373
|
-
compile_ibis_types.literal_to_ibis_scalar(
|
|
374
|
-
this_bin, force_dtype=pd.Int64Dtype()
|
|
375
|
-
),
|
|
366
|
+
for this_bin in range(op.bins):
|
|
367
|
+
if op.labels is False:
|
|
368
|
+
value = compile_ibis_types.literal_to_ibis_scalar(
|
|
369
|
+
this_bin,
|
|
370
|
+
force_dtype=pd.Int64Dtype(),
|
|
376
371
|
)
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
372
|
+
elif isinstance(op.labels, typing.Iterable):
|
|
373
|
+
value = compile_ibis_types.literal_to_ibis_scalar(
|
|
374
|
+
list(op.labels)[this_bin],
|
|
375
|
+
force_dtype=pd.StringDtype(storage="pyarrow"),
|
|
376
|
+
)
|
|
377
|
+
else:
|
|
378
|
+
left_adj = adj if this_bin == 0 and op.right else 0
|
|
379
|
+
right_adj = adj if this_bin == op.bins - 1 and not op.right else 0
|
|
384
380
|
|
|
385
|
-
|
|
386
|
-
|
|
381
|
+
left = col_min + this_bin * bin_width - left_adj
|
|
382
|
+
right = col_min + (this_bin + 1) * bin_width + right_adj
|
|
387
383
|
|
|
388
384
|
if op.right:
|
|
389
|
-
|
|
390
|
-
{
|
|
391
|
-
"left_exclusive": left_edge,
|
|
392
|
-
"right_inclusive": right_edge,
|
|
393
|
-
}
|
|
385
|
+
value = ibis_types.struct(
|
|
386
|
+
{"left_exclusive": left, "right_inclusive": right}
|
|
394
387
|
)
|
|
395
388
|
else:
|
|
396
|
-
|
|
397
|
-
{
|
|
398
|
-
"left_inclusive": left_edge,
|
|
399
|
-
"right_exclusive": right_edge,
|
|
400
|
-
}
|
|
389
|
+
value = ibis_types.struct(
|
|
390
|
+
{"left_inclusive": left, "right_exclusive": right}
|
|
401
391
|
)
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
case_expr = x < (col_min + (this_bin + 1) * bin_width)
|
|
408
|
-
out = out.when(case_expr, interval_struct)
|
|
392
|
+
if this_bin == op.bins - 1:
|
|
393
|
+
case_expr = x.notnull()
|
|
394
|
+
else:
|
|
395
|
+
if op.right:
|
|
396
|
+
case_expr = x <= (col_min + (this_bin + 1) * bin_width)
|
|
409
397
|
else:
|
|
410
|
-
|
|
398
|
+
case_expr = x < (col_min + (this_bin + 1) * bin_width)
|
|
399
|
+
out = out.when(case_expr, value)
|
|
411
400
|
else: # Interpret as intervals
|
|
412
|
-
for interval in op.bins:
|
|
401
|
+
for this_bin, interval in enumerate(op.bins):
|
|
413
402
|
left = compile_ibis_types.literal_to_ibis_scalar(interval[0])
|
|
414
403
|
right = compile_ibis_types.literal_to_ibis_scalar(interval[1])
|
|
415
404
|
if op.right:
|
|
416
405
|
condition = (x > left) & (x <= right)
|
|
417
|
-
interval_struct = ibis_types.struct(
|
|
418
|
-
{"left_exclusive": left, "right_inclusive": right}
|
|
419
|
-
)
|
|
420
406
|
else:
|
|
421
407
|
condition = (x >= left) & (x < right)
|
|
422
|
-
|
|
423
|
-
|
|
408
|
+
|
|
409
|
+
if op.labels is False:
|
|
410
|
+
value = compile_ibis_types.literal_to_ibis_scalar(
|
|
411
|
+
this_bin,
|
|
412
|
+
force_dtype=pd.Int64Dtype(),
|
|
424
413
|
)
|
|
425
|
-
|
|
414
|
+
elif isinstance(op.labels, typing.Iterable):
|
|
415
|
+
value = compile_ibis_types.literal_to_ibis_scalar(
|
|
416
|
+
list(op.labels)[this_bin],
|
|
417
|
+
force_dtype=pd.StringDtype(storage="pyarrow"),
|
|
418
|
+
)
|
|
419
|
+
else:
|
|
420
|
+
if op.right:
|
|
421
|
+
value = ibis_types.struct(
|
|
422
|
+
{"left_exclusive": left, "right_inclusive": right}
|
|
423
|
+
)
|
|
424
|
+
else:
|
|
425
|
+
value = ibis_types.struct(
|
|
426
|
+
{"left_inclusive": left, "right_exclusive": right}
|
|
427
|
+
)
|
|
428
|
+
|
|
429
|
+
out = out.when(condition, value)
|
|
426
430
|
return out.end()
|
|
427
431
|
|
|
428
432
|
|
|
@@ -388,7 +388,8 @@ def literal_to_ibis_scalar(
|
|
|
388
388
|
# Ibis has bug for casting nulltype to geospatial, so we perform intermediate cast first
|
|
389
389
|
geotype = ibis_dtypes.GeoSpatial(geotype="geography", srid=4326, nullable=True)
|
|
390
390
|
return bigframes_vendored.ibis.literal(None, geotype)
|
|
391
|
-
|
|
391
|
+
|
|
392
|
+
ibis_dtype = bigframes_dtype_to_ibis_dtype(force_dtype) if force_dtype else None
|
|
392
393
|
|
|
393
394
|
if pd.api.types.is_list_like(literal):
|
|
394
395
|
if validate:
|
|
@@ -20,6 +20,7 @@ import bigframes_vendored.constants as constants
|
|
|
20
20
|
import bigframes_vendored.pandas.core.reshape.tile as vendored_pandas_tile
|
|
21
21
|
import pandas as pd
|
|
22
22
|
|
|
23
|
+
import bigframes.constants
|
|
23
24
|
import bigframes.core.expression as ex
|
|
24
25
|
import bigframes.core.ordering as order
|
|
25
26
|
import bigframes.core.utils as utils
|
|
@@ -41,15 +42,37 @@ def cut(
|
|
|
41
42
|
right: typing.Optional[bool] = True,
|
|
42
43
|
labels: typing.Union[typing.Iterable[str], bool, None] = None,
|
|
43
44
|
) -> bigframes.series.Series:
|
|
44
|
-
if
|
|
45
|
+
if (
|
|
46
|
+
labels is not None
|
|
47
|
+
and labels is not False
|
|
48
|
+
and not isinstance(labels, typing.Iterable)
|
|
49
|
+
):
|
|
50
|
+
raise ValueError(
|
|
51
|
+
"Bin labels must either be False, None or passed in as a list-like argument"
|
|
52
|
+
)
|
|
53
|
+
if (
|
|
54
|
+
isinstance(labels, typing.Iterable)
|
|
55
|
+
and len(list(labels)) > 0
|
|
56
|
+
and not isinstance(list(labels)[0], str)
|
|
57
|
+
):
|
|
45
58
|
raise NotImplementedError(
|
|
46
|
-
"
|
|
47
|
-
"
|
|
59
|
+
"When using an iterable for labels, only iterables of strings are supported "
|
|
60
|
+
f"but found {type(list(labels)[0])}. {constants.FEEDBACK_LINK}"
|
|
48
61
|
)
|
|
49
62
|
|
|
63
|
+
if x.size == 0:
|
|
64
|
+
raise ValueError("Cannot cut empty array.")
|
|
65
|
+
|
|
50
66
|
if isinstance(bins, int):
|
|
51
67
|
if bins <= 0:
|
|
52
68
|
raise ValueError("`bins` should be a positive integer.")
|
|
69
|
+
if isinstance(labels, typing.Iterable):
|
|
70
|
+
labels = tuple(labels)
|
|
71
|
+
if len(labels) != bins:
|
|
72
|
+
raise ValueError(
|
|
73
|
+
f"Bin labels({len(labels)}) must be same as the value of bins({bins})"
|
|
74
|
+
)
|
|
75
|
+
|
|
53
76
|
op = agg_ops.CutOp(bins, right=right, labels=labels)
|
|
54
77
|
return x._apply_window_op(op, window_spec=window_specs.unbound())
|
|
55
78
|
elif isinstance(bins, typing.Iterable):
|
|
@@ -58,6 +81,7 @@ def cut(
|
|
|
58
81
|
bins = tuple((bin.left.item(), bin.right.item()) for bin in bins)
|
|
59
82
|
# To maintain consistency with pandas' behavior
|
|
60
83
|
right = True
|
|
84
|
+
labels = None
|
|
61
85
|
elif len(list(bins)) == 0:
|
|
62
86
|
as_index = pd.IntervalIndex.from_tuples(list(bins))
|
|
63
87
|
bins = tuple()
|
|
@@ -66,6 +90,7 @@ def cut(
|
|
|
66
90
|
bins = tuple(bins)
|
|
67
91
|
# To maintain consistency with pandas' behavior
|
|
68
92
|
right = True
|
|
93
|
+
labels = None
|
|
69
94
|
elif pd.api.types.is_number(list(bins)[0]):
|
|
70
95
|
bins_list = list(bins)
|
|
71
96
|
as_index = pd.IntervalIndex.from_breaks(bins_list)
|
|
@@ -81,11 +106,24 @@ def cut(
|
|
|
81
106
|
raise ValueError("`bins` iterable should contain tuples or numerics.")
|
|
82
107
|
|
|
83
108
|
if as_index.is_overlapping:
|
|
84
|
-
raise ValueError("Overlapping IntervalIndex is not accepted.")
|
|
85
|
-
|
|
86
|
-
|
|
109
|
+
raise ValueError("Overlapping IntervalIndex is not accepted.") # TODO: test
|
|
110
|
+
|
|
111
|
+
if isinstance(labels, typing.Iterable):
|
|
112
|
+
labels = tuple(labels)
|
|
113
|
+
if len(labels) != len(as_index):
|
|
114
|
+
raise ValueError(
|
|
115
|
+
f"Bin labels({len(labels)}) must be same as the number of bin edges"
|
|
116
|
+
f"({len(as_index)})"
|
|
117
|
+
)
|
|
118
|
+
|
|
119
|
+
if len(as_index) == 0:
|
|
120
|
+
dtype = agg_ops.CutOp(bins, right=right, labels=labels).output_type()
|
|
87
121
|
return bigframes.series.Series(
|
|
88
|
-
[pd.NA] * len(x),
|
|
122
|
+
[pd.NA] * len(x),
|
|
123
|
+
dtype=dtype,
|
|
124
|
+
name=x.name,
|
|
125
|
+
index=x.index,
|
|
126
|
+
session=x._session,
|
|
89
127
|
)
|
|
90
128
|
else:
|
|
91
129
|
op = agg_ops.CutOp(bins, right=right, labels=labels)
|
|
@@ -196,6 +196,7 @@ class FunctionClient:
|
|
|
196
196
|
name,
|
|
197
197
|
packages,
|
|
198
198
|
is_row_processor,
|
|
199
|
+
bq_connection_id,
|
|
199
200
|
*,
|
|
200
201
|
capture_references=False,
|
|
201
202
|
):
|
|
@@ -273,12 +274,21 @@ class FunctionClient:
|
|
|
273
274
|
udf_code = textwrap.dedent(inspect.getsource(func))
|
|
274
275
|
udf_code = udf_code[udf_code.index("def") :]
|
|
275
276
|
|
|
277
|
+
with_connection_clause = (
|
|
278
|
+
(
|
|
279
|
+
f"WITH CONNECTION `{self._gcp_project_id}.{self._bq_location}.{self._bq_connection_id}`"
|
|
280
|
+
)
|
|
281
|
+
if bq_connection_id
|
|
282
|
+
else ""
|
|
283
|
+
)
|
|
284
|
+
|
|
276
285
|
create_function_ddl = (
|
|
277
286
|
textwrap.dedent(
|
|
278
287
|
f"""
|
|
279
288
|
CREATE OR REPLACE FUNCTION {persistent_func_id}({','.join(bq_function_args)})
|
|
280
289
|
RETURNS {bq_function_return_type}
|
|
281
290
|
LANGUAGE python
|
|
291
|
+
{with_connection_clause}
|
|
282
292
|
OPTIONS ({managed_function_options_str})
|
|
283
293
|
AS r'''
|
|
284
294
|
__UDF_PLACE_HOLDER__
|
|
@@ -365,7 +375,7 @@ class FunctionClient:
|
|
|
365
375
|
is_row_processor=False,
|
|
366
376
|
vpc_connector=None,
|
|
367
377
|
memory_mib=1024,
|
|
368
|
-
ingress_settings="
|
|
378
|
+
ingress_settings="internal-only",
|
|
369
379
|
):
|
|
370
380
|
"""Create a cloud function from the given user defined function."""
|
|
371
381
|
|