Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

URL-encoded kwargs are infinitely duplicated in query params (v3.7.0 regression for arrays) #2218

Closed
Assignees
nejch
Labels
@nejch

Description

@nejch

Description of the problem, including code/CLI snippet

With#1699 we added array params for query params in GET requests. But GitLab also returns that param, URL-encoded, in thenext URL which we then follow in listing endpoints. Because one is URL-encoded and the other isn't, the param gets added at the end of the query again. Withlist() calls this happens over and over again and causes 502 due to super long query strings eventually.

minimal reproduction:

importgitlabgl=gitlab.Gitlab()gl.enable_debug()projects=gl.projects.list(topics=["python"],per_page=1,iterator=True)forprojectinprojects:# watch the `send` URL grow continuously until triggering 502pass

Expected Behavior

If a kwarg/param (URL-encoded or not) that we provide is already in the provided URL, it should never be duplicated when we construct the final request URL.

Actual Behavior

http_request() and requests can't tell if our kwargs match those already in the URL params and they get duplicated to oblivion, causing 502 once the URL query is too long for the server.

Specifications

  • python-gitlab version: v3.7.0
  • API version you are using (v3/v4): v4
  • Gitlab server version (or gitlab.com): all

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions


    [8]ページ先頭

    ©2009-2025 Movatter.jp