Skip to content

Commit 75dada6

Browse files
committed
Fix CI issues
1 parent 479056e commit 75dada6

File tree

5 files changed

+15
-12
lines changed

5 files changed

+15
-12
lines changed

.github/workflows/code-style.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ jobs:
3535
- run: pip install ".[dev]"
3636
- run: pip install ".[pandas]"
3737
- run: pip install ".[gds]"
38+
- run: pip install ".[snowflake]"
3839

3940
- name: Check code style
4041
run: cd ${GITHUB_WORKSPACE} && ./scripts/checkstyle.sh

.github/workflows/unit-tests.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ jobs:
4242
- run: pip install ".[pandas]"
4343
- run: pip install ".[neo4j]"
4444
- run: pip install ".[gds]"
45+
- run: pip install ".[snowflake]"
4546

4647
- name: Run tests
4748
run: pytest tests/

python-wrapper/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ requires-python = ">=3.9"
4242
[project.optional-dependencies]
4343
dev = [
4444
"ruff==0.11.8",
45-
"mypy==1.15.0",
45+
"mypy==1.17.1",
4646
"pytest==8.3.4",
4747
"selenium==4.32.0",
4848
"ipykernel==6.29.5",

python-wrapper/src/neo4j_viz/gds.py

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import warnings
44
from itertools import chain
5-
from typing import Optional
5+
from typing import Optional, cast
66
from uuid import uuid4
77

88
import pandas as pd
@@ -81,31 +81,32 @@ def from_gds(
8181
"""
8282
node_properties_from_gds = G.node_properties()
8383
assert isinstance(node_properties_from_gds, pd.Series)
84-
actual_node_properties = node_properties_from_gds.to_dict()
84+
actual_node_properties: dict[str, list[str]] = cast(dict[str, list[str]], node_properties_from_gds.to_dict())
8585
all_actual_node_properties = list(chain.from_iterable(actual_node_properties.values()))
8686

8787
if size_property is not None:
8888
if size_property not in all_actual_node_properties:
8989
raise ValueError(f"There is no node property '{size_property}' in graph '{G.name()}'")
9090

91+
node_properties_by_label_sets: dict[str, set[str]] = dict()
9192
if additional_node_properties is None:
92-
node_properties_by_label = {k: set(v) for k, v in actual_node_properties.items()}
93+
node_properties_by_label_sets = {k: set(v) for k, v in actual_node_properties.items()}
9394
else:
9495
for prop in additional_node_properties:
9596
if prop not in all_actual_node_properties:
9697
raise ValueError(f"There is no node property '{prop}' in graph '{G.name()}'")
9798

98-
node_properties_by_label = {}
9999
for label, props in actual_node_properties.items():
100-
node_properties_by_label[label] = {
100+
node_properties_by_label_sets[label] = {
101101
prop for prop in actual_node_properties[label] if prop in additional_node_properties
102102
}
103103

104104
if size_property is not None:
105-
for label, props in node_properties_by_label.items():
106-
props.add(size_property)
105+
# For some reason mypy are unable to understand that this is dict[str, set[str]]
106+
for label, props in node_properties_by_label_sets.items(): # type: ignore
107+
props.add(size_property) # type: ignore
107108

108-
node_properties_by_label = {k: list(v) for k, v in node_properties_by_label.items()}
109+
node_properties_by_label = {k: list(v) for k, v in node_properties_by_label_sets.items()}
109110

110111
node_count = G.node_count()
111112
if node_count > max_node_count:
@@ -148,7 +149,7 @@ def from_gds(
148149
if size_property is not None:
149150
if "size" in all_actual_node_properties and size_property != "size":
150151
node_props_df.rename(columns={"size": "__size"}, inplace=True)
151-
if size_property not in additional_node_properties:
152+
if additional_node_properties is not None and size_property not in additional_node_properties:
152153
node_props_df.rename(columns={size_property: "size"}, inplace=True)
153154
else:
154155
node_props_df["size"] = node_props_df[size_property]

python-wrapper/src/neo4j_viz/snowflake.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -246,11 +246,11 @@ def to_lower(value: str) -> str:
246246
class VizRelationshipTableConfig(BaseModel, extra="forbid"):
247247
sourceTable: VizNodeTable
248248
targetTable: VizNodeTable
249-
orientation: LowercaseOrientation | None = Orientation.NATURAL
249+
orientation: Optional[LowercaseOrientation] = Orientation.NATURAL
250250

251251

252252
class VizProjectConfig(BaseModel, extra="forbid"):
253-
defaultTablePrefix: str | None = None
253+
defaultTablePrefix: Optional[str] = None
254254
nodeTables: list[VizNodeTable]
255255
relationshipTables: dict[VizRelationshipTable, VizRelationshipTableConfig]
256256

0 commit comments

Comments
 (0)