diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 427359befa73..101c6bdc13d1 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -16,16 +16,17 @@ # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.0.1 + rev: v6.0.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: check-yaml - repo: https://github.com/psf/black - rev: 22.3.0 + rev: 23.7.0 hooks: - id: black - repo: https://github.com/pycqa/flake8 - rev: 3.9.2 # version-scanner: ignore + rev: 6.1.0 # version-scanner: ignore hooks: - id: flake8 + args: [--config, packages/google-cloud-alloydb/.flake8] diff --git a/packages/db-dtypes/setup.py b/packages/db-dtypes/setup.py index b0008988d01d..a6005a83303f 100644 --- a/packages/db-dtypes/setup.py +++ b/packages/db-dtypes/setup.py @@ -33,7 +33,7 @@ "numpy >= 1.24.0, <= 2.2.6 ; python_version == '3.10'", "numpy >= 1.24.0 ; python_version != '3.10'", "packaging >= 24.2.0", - "pandas >= 1.5.3, < 3.0.0", + "pandas >= 1.5.3, < 4.0.0", "pyarrow >= 13.0.0", ] diff --git a/packages/db-dtypes/tests/compliance/json/conftest.py b/packages/db-dtypes/tests/compliance/json/conftest.py index 74870c4867d3..ec77cea48ac0 100644 --- a/packages/db-dtypes/tests/compliance/json/conftest.py +++ b/packages/db-dtypes/tests/compliance/json/conftest.py @@ -83,6 +83,13 @@ def data_missing_for_sorting(): return JSONArray._from_sequence([json.dumps({"b": 1}), None, json.dumps({"a": 4})]) +@pytest.fixture +def data_for_sorting(): + return JSONArray._from_sequence( + [json.dumps({"b": 1}), json.dumps({"c": 4}), json.dumps({"a": 2})] + ) + + @pytest.fixture def na_cmp(): """ diff --git a/packages/db-dtypes/tests/compliance/json/test_json_compliance.py b/packages/db-dtypes/tests/compliance/json/test_json_compliance.py index 49e4d8cdda42..63f8298d4213 100644 --- a/packages/db-dtypes/tests/compliance/json/test_json_compliance.py +++ b/packages/db-dtypes/tests/compliance/json/test_json_compliance.py @@ -232,6 +232,18 @@ def test_sort_values(self, data_for_sorting): def test_sort_values_frame(self, data_for_sorting): super().test_sort_values_frame(data_for_sorting) + @pytest.mark.skip(reason="BigQuery does not allow sort by a JSON-type column.") + def test_rank(self, data_for_sorting, ascending): + super().test_rank(data_for_sorting, ascending) + + @pytest.mark.skip(reason="BigQuery does not allow sort by a JSON-type column.") + def test_rank_method(self, data_for_sorting, method): + super().test_rank_method(data_for_sorting, method) + + @pytest.mark.skip(reason="BigQuery does not allow sort by a JSON-type column.") + def test_rank_missing(self, data_missing_for_sorting, na_option): + super().test_rank_missing(data_missing_for_sorting, na_option) + def test_argmax_argmin_no_skipna_notimplemented(self, data_missing_for_sorting): # This test was failing compliance checks because it attempted to match # a pytest regex match using an empty string (""), which pytest version