GeezerVison is showing github.com — Get rid of all custom URL encoding · Issue #1356 · python-gitlab/python-gitlab
Get rid of all custom URL encoding #1356DescriptionSee also #1336, #1080, #1079.
On the other hand, need to check #1006 and the current state of
|
# Requests assumes that `.` should not be encoded as %2E and will make |
|
# changes to urls using this encoding. Using a prepped request we can |
|
# get the desired behavior. |
|
# The Requests behavior is right but it seems that web servers don't |
|
# always agree with this decision (this is the case with a default |
|
# gitlab installation) |
|
req = requests.Request(verb, url, json=json, data=data, params=params, **opts) |
|
prepped = self.session.prepare_request(req) |
|
prepped.url = utils.sanitized_url(prepped.url) |
|
settings = self.session.merge_environment_settings( |
|
prepped.url, {}, streamed, verify, None |
|
) |
If proxies handle it differently maybe an additional arg for e.g. encode_xyz=True might help.
gitlab/utils.py: return id.replace("/", "%2F").replace("#", "%23")
gitlab/utils.py: return value.replace("/", "%2F")
gitlab/utils.py: new_path = parsed.path.replace(".", "%2E")
gitlab/v4/objects/branches.py: id = self.get_id().replace("/", "%2F")
gitlab/v4/objects/branches.py: id = self.get_id().replace("/", "%2F")
gitlab/v4/objects/features.py: path = "%s/%s" % (self.path, name.replace("/", "%2F"))
gitlab/v4/objects/files.py: self.file_path = self.file_path.replace("/", "%2F")
gitlab/v4/objects/files.py: file_path = self.get_id().replace("/", "%2F")
gitlab/v4/objects/files.py: file_path = file_path.replace("/", "%2F")
gitlab/v4/objects/files.py: file_path = new_data.pop("file_path").replace("/", "%2F")
gitlab/v4/objects/files.py: file_path = file_path.replace("/", "%2F")
gitlab/v4/objects/files.py: path = "%s/%s" % (self.path, file_path.replace("/", "%2F"))
gitlab/v4/objects/files.py: file_path = file_path.replace("/", "%2F").replace(".", "%2E")
gitlab/v4/objects/files.py: file_path = file_path.replace("/", "%2F").replace(".", "%2E")
gitlab/v4/objects/repositories.py: submodule = submodule.replace("/", "%2F") # .replace('.', '%2E')
gitlab/v4/objects/tags.py: id = self.get_id().replace("/", "%2F")
Reacted by Max Wittig, Chris Peterson, John Villalovos and darkdragon-001 Activityoux commented on Jul 8, 2021 Hi, I made a pullrequest to fix the lazy object deletion (fix #1494): #1541
Let me know if you need any action from me. added 7 commits that reference this issue on Jan 8, 2022This issue will close once commit 8c17afa is merged into the 'main' branch.8c17afa This issue will close once commit 2a209c3 is merged into the 'main' branch.2a209c3 This issue will close once commit d99848c is merged into the 'main' branch.d99848c This issue will close once commit 96e04a5 is merged into the 'main' branch.96e04a5 This issue will close once commit ca85f93 is merged into the 'main' branch.ca85f93 This issue will close once commit 94dd1e0 is merged into the 'main' branch.94dd1e0 This issue will close once commit 3d49e5e is merged into the 'main' branch.3d49e5e locked as resolved and limited conversation to collaborators on Jan 9, 2023
MetadataMetadataDevelopmentNo branches or pull requestsIssue actions
|