From 5c8dd83f02bddfd419761ce35fe42df2ebaeb6d2 Mon Sep 17 00:00:00 2001 From: Matt Blank Date: Wed, 9 Jul 2025 15:30:31 -0400 Subject: [PATCH 1/2] Handle expand query params as comma separated list --- src/merge/core/query_encoder.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/merge/core/query_encoder.py b/src/merge/core/query_encoder.py index 3183001d..559f93d5 100644 --- a/src/merge/core/query_encoder.py +++ b/src/merge/core/query_encoder.py @@ -24,6 +24,9 @@ def traverse_query_dict(dict_flat: Dict[str, Any], key_prefix: Optional[str] = N def single_query_encoder(query_key: str, query_value: Any) -> List[Tuple[str, Any]]: + # Special-case for 'expand' parameter: join lists into a comma-separated string + if query_key == "expand" and isinstance(query_value, list): + return [(query_key, ",".join(str(x) for x in query_value))] if isinstance(query_value, pydantic.BaseModel) or isinstance(query_value, dict): if isinstance(query_value, pydantic.BaseModel): obj_dict = query_value.dict(by_alias=True) From f99ac940958663a4aa6b10f22602318675acb51b Mon Sep 17 00:00:00 2001 From: jsklan Date: Wed, 23 Jul 2025 11:21:25 -0400 Subject: [PATCH 2/2] add query_encoder to fernignore --- .fernignore | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.fernignore b/.fernignore index 00097be7..3d51d3e2 100644 --- a/.fernignore +++ b/.fernignore @@ -7,4 +7,7 @@ LICENSE.md .github/workflows/semgrep.yml # Files that avoid breaking changes due to renames. -src/merge/resources/accounting/types/currency_enum.py \ No newline at end of file +src/merge/resources/accounting/types/currency_enum.py + +# File that encodes enum query params as comma separated lists by default +src/merge/core/query_encoder.py