fix(ci): fix black/ruff failures, add CoC and PR template
- Fix Python formatting (sync no longer strips blank lines from .py files) - Remove test_community_build.py (tests private sync module) - Fix ruff warnings in test files - Add CODE_OF_CONDUCT.md - Add .github/PULL_REQUEST_TEMPLATE.md Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -12,6 +12,7 @@ from typing import Any
|
||||
|
||||
from plugins.directus.client import DirectusClient
|
||||
|
||||
|
||||
def _parse_json_param(value: Any, param_name: str = "parameter") -> Any:
|
||||
"""Parse a parameter that may be a JSON string or already a native type."""
|
||||
if value is None:
|
||||
@@ -27,6 +28,7 @@ def _parse_json_param(value: Any, param_name: str = "parameter") -> Any:
|
||||
raise ValueError(f"Invalid JSON in '{param_name}': {e}")
|
||||
return value
|
||||
|
||||
|
||||
def get_tool_specifications() -> list[dict[str, Any]]:
|
||||
"""Return tool specifications for ToolGenerator (12 tools)"""
|
||||
return [
|
||||
@@ -301,10 +303,12 @@ def get_tool_specifications() -> list[dict[str, Any]]:
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
# =====================
|
||||
# HANDLER FUNCTIONS
|
||||
# =====================
|
||||
|
||||
|
||||
async def list_items(
|
||||
client: DirectusClient,
|
||||
collection: str,
|
||||
@@ -340,6 +344,7 @@ async def list_items(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def get_item(
|
||||
client: DirectusClient, collection: str, id: str, fields: list[str] | None = None
|
||||
) -> str:
|
||||
@@ -354,6 +359,7 @@ async def get_item(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def create_item(
|
||||
client: DirectusClient, collection: str, data: dict[str, Any], fields: list[str] | None = None
|
||||
) -> str:
|
||||
@@ -375,6 +381,7 @@ async def create_item(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def create_items(
|
||||
client: DirectusClient,
|
||||
collection: str,
|
||||
@@ -400,6 +407,7 @@ async def create_items(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def update_item(
|
||||
client: DirectusClient,
|
||||
collection: str,
|
||||
@@ -421,6 +429,7 @@ async def update_item(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def update_items(
|
||||
client: DirectusClient,
|
||||
collection: str,
|
||||
@@ -450,6 +459,7 @@ async def update_items(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def delete_item(client: DirectusClient, collection: str, id: str) -> str:
|
||||
"""Delete an item."""
|
||||
try:
|
||||
@@ -460,6 +470,7 @@ async def delete_item(client: DirectusClient, collection: str, id: str) -> str:
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def delete_items(client: DirectusClient, collection: str, keys: list[str]) -> str:
|
||||
"""Delete multiple items."""
|
||||
try:
|
||||
@@ -472,6 +483,7 @@ async def delete_items(client: DirectusClient, collection: str, keys: list[str])
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def search_items(
|
||||
client: DirectusClient,
|
||||
collection: str,
|
||||
@@ -495,6 +507,7 @@ async def search_items(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def aggregate_items(
|
||||
client: DirectusClient,
|
||||
collection: str,
|
||||
@@ -520,6 +533,7 @@ async def aggregate_items(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def export_items(
|
||||
client: DirectusClient,
|
||||
collection: str,
|
||||
@@ -556,6 +570,7 @@ async def export_items(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2)
|
||||
|
||||
|
||||
async def import_items(client: DirectusClient, collection: str, data: list[dict[str, Any]]) -> str:
|
||||
"""Import items into a collection."""
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user