8000 feat: Added additional parameter to project/group iteration search · python-gitlab/python-gitlab@0e44648 · GitHub
[go: up one dir, main page]

Skip to content

Commit 0e44648

Browse files
author
Cristiano Casella
committed
feat: Added additional parameter to project/group iteration search
1 parent e11d889 commit 0e44648

File tree

2 files changed

+32
-2
lines changed

2 files changed

+32
-2
lines changed

docs/gl_objects/iterations.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,13 @@ List iterations for a project's ancestor groups::
3131
List iterations for a group::
3232

3333
iterations = group.iterations.list()
34+
35+
Unavailable filters or filters conflicts::
36+
37+
In case you are trying to pass a parameter that is not supported or
38+
collides with a python keyword (i.e. `in`) you have to use the
39+
`query_parameters` argument:
40+
41+
```
42+
group.iterations.list(query_parameters={"in": "title"})
43+
```

gitlab/v4/objects/iterations.py

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,31 @@ class GroupIterationManager(ListMixin, RESTManager):
1616
_path = "/groups/{group_id}/iterations"
1717
_obj_cls = GroupIteration
1818
_from_parent_attrs = {"group_id": "id"}
19-
_list_filters = ("state", "search", "include_ancestors")
19+
# The "in" keyword collides with python's "in" keyword raising a SyntaxError.
20+
# For this reason, we have to use the query_parameters argument:
21+
# group.iterations.list(query_parameters={"in": "title"})
22+
_list_filters = (
23+
"include_ancestors",
24+
"include_descendants",
25+
"search",
26+
"state",
27+
"updated_after",
28+
"updated_before",
29+
)
2030

2131

2232
class ProjectIterationManager(ListMixin, RESTManager):
2333
_path = "/projects/{project_id}/iterations"
2434
_obj_cls = GroupIteration
2535
_from_parent_attrs = {"project_id": "id"}
26-
_list_filters = ("state", "search", "include_ancestors")
36+
# The "in" keyword collides with python's "in" keyword raising a SyntaxError.
37+
# For this reason, we have to use the query_parameters argument:
38+
# group.iterations.list(query_parameters={"in": "title"})
39+
_list_filters = (
40+
"include_ancestors",
41+
"include_descendants",
42+
"search",
43+
"state",
44+
"updated_after",
45+
"updated_before",
46+
)

0 commit comments

Comments
 (0)
0