Skip to content

Commit fd42e71

Browse files
Martozarclaude
andcommitted
fix: resolve ty type-check errors in gooddata-pandas
- Convert Optional[X] to X | None (ruff UP045) in dataframe.py and result_convertor.py - Pass column_totals_indexes=[] to DataFrameMetadata in both Arrow paths (for_exec_def_arrow and for_arrow_table) - Suppress type errors for pre-existing issues in ChatResult call and AfmExecutionResponse constructor (gooddata_api_client now resolved as a workspace package, surfacing these pre-existing mismatches) - Remove unused type: ignore comment from __init__.py stub Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 89f5861 commit fd42e71

3 files changed

Lines changed: 12 additions & 8 deletions

File tree

packages/gooddata-pandas/src/gooddata_pandas/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from gooddata_pandas.arrow_convertor import convert_arrow_table_to_dataframe
88
except ImportError:
99

10-
def convert_arrow_table_to_dataframe(*args, **kwargs): # type: ignore[misc]
10+
def convert_arrow_table_to_dataframe(*args, **kwargs):
1111
raise ImportError("pyarrow is required for Arrow support. Install it with: pip install gooddata-pandas[arrow]")
1212

1313

packages/gooddata-pandas/src/gooddata_pandas/dataframe.py

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,8 @@ def for_created_visualization(
304304
pandas.DataFrame: A DataFrame instance.
305305
"""
306306
execution_definition = self._sdk.compute.build_exec_def_from_chat_result(
307-
created_visualizations_response, is_cancellable=is_cancellable
307+
created_visualizations_response, # type: ignore[invalid-argument-type]
308+
is_cancellable=is_cancellable,
308309
)
309310
return self.for_exec_def(
310311
exec_def=execution_definition,
@@ -401,10 +402,10 @@ def for_exec_def(
401402
def for_exec_def_arrow(
402403
self,
403404
exec_def: ExecutionDefinition,
404-
on_execution_submitted: Optional[Callable[[Execution], None]] = None,
405+
on_execution_submitted: Callable[[Execution], None] | None = None,
405406
self_destruct: bool = False,
406407
types_mapper: TypesMapper = TypesMapper.DEFAULT,
407-
custom_mapping: Optional[dict] = None,
408+
custom_mapping: dict | None = None,
408409
) -> tuple[pandas.DataFrame, DataFrameMetadata]:
409410
"""
410411
Creates a DataFrame from an execution definition using the Arrow IPC binary format.
@@ -456,6 +457,7 @@ def for_exec_def_arrow(
456457
primary_labels_from_index, primary_labels_from_columns = compute_primary_labels(table)
457458
metadata = DataFrameMetadata(
458459
row_totals_indexes=row_totals_indexes,
460+
column_totals_indexes=[],
459461
execution_response=exec_response,
460462
primary_labels_from_index=primary_labels_from_index,
461463
primary_labels_from_columns=primary_labels_from_columns,
@@ -465,10 +467,10 @@ def for_exec_def_arrow(
465467
def for_arrow_table(
466468
self,
467469
table: pa.Table,
468-
execution_response: Optional[BareExecutionResponse] = None,
470+
execution_response: BareExecutionResponse | None = None,
469471
self_destruct: bool = False,
470472
types_mapper: TypesMapper = TypesMapper.DEFAULT,
471-
custom_mapping: Optional[dict] = None,
473+
custom_mapping: dict | None = None,
472474
) -> tuple[pandas.DataFrame, DataFrameMetadata]:
473475
"""
474476
Creates a DataFrame from an already-obtained PyArrow Table.
@@ -508,6 +510,7 @@ def for_arrow_table(
508510
primary_labels_from_index, primary_labels_from_columns = compute_primary_labels(table)
509511
metadata = DataFrameMetadata(
510512
row_totals_indexes=row_totals_indexes,
513+
column_totals_indexes=[],
511514
execution_response=execution_response,
512515
primary_labels_from_index=primary_labels_from_index,
513516
primary_labels_from_columns=primary_labels_from_columns,
@@ -578,7 +581,8 @@ def for_exec_result_id(
578581
api_client=self._sdk.client,
579582
workspace_id=self._workspace_id,
580583
execution_response=models.AfmExecutionResponse(
581-
result_cache_metadata.execution_response, _check_type=False
584+
executionResponse=result_cache_metadata.execution_response, # type: ignore[invalid-argument-type]
585+
_check_type=False,
582586
),
583587
),
584588
result_cache_metadata=result_cache_metadata,

packages/gooddata-pandas/src/gooddata_pandas/result_convertor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -442,7 +442,7 @@ class DataFrameMetadata:
442442

443443
row_totals_indexes: list[list[int]]
444444
column_totals_indexes: list[list[int]]
445-
execution_response: Optional[BareExecutionResponse]
445+
execution_response: BareExecutionResponse | None
446446
primary_labels_from_index: dict[int, dict[str, str]]
447447
primary_labels_from_columns: dict[int, dict[str, str]]
448448

0 commit comments

Comments
 (0)