diff options
author | John L. Villalovos <john@sodarock.com> | 2021-12-20 14:24:17 -0800 |
---|---|---|
committer | John L. Villalovos <john@sodarock.com> | 2021-12-20 14:24:17 -0800 |
commit | 702e41dd0674e76b292d9ea4f559c86f0a99edfe (patch) | |
tree | 7af846efbabb09e7941d599503ae658f37dea6f7 /gitlab/utils.py | |
parent | ccefe80f150eb50176e52b8c9f5b4d0bdb4f5b43 (diff) | |
download | gitlab-702e41dd0674e76b292d9ea4f559c86f0a99edfe.tar.gz |
fix: stop encoding '.' to '%2E'jlvillal/leave_dot
Forcing the encoding of '.' to '%2E' causes issues. It also goes
against the RFC:
https://datatracker.ietf.org/doc/html/rfc3986.html#section-2.3
From the RFC:
For consistency, percent-encoded octets in the ranges of ALPHA
(%41-%5A and %61-%7A), DIGIT (%30-%39), hyphen (%2D), period (%2E),
underscore (%5F), or tilde (%7E) should not be created by URI
producers...
Closes #1006
Related #1356
Related #1561
BREAKING CHANGE: stop encoding '.' to '%2E'. This could potentially be
a breaking change for users who have incorrectly configured GitLab
servers which don't handle period '.' characters correctly.
Diffstat (limited to 'gitlab/utils.py')
-rw-r--r-- | gitlab/utils.py | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/gitlab/utils.py b/gitlab/utils.py index 220a8c9..a1dcb45 100644 --- a/gitlab/utils.py +++ b/gitlab/utils.py @@ -16,7 +16,7 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. from typing import Any, Callable, Dict, Optional -from urllib.parse import quote, urlparse +from urllib.parse import quote import requests @@ -60,11 +60,5 @@ def clean_str_id(id: str) -> str: return quote(id, safe="") -def sanitized_url(url: str) -> str: - parsed = urlparse(url) - new_path = parsed.path.replace(".", "%2E") - return parsed._replace(path=new_path).geturl() - - def remove_none_from_dict(data: Dict[str, Any]) -> Dict[str, Any]: return {k: v for k, v in data.items() if v is not None} |