Title: fix(cli): make 'timeout', 'per_page' and 'page' type explicit by thomasgl-orange · Pull Request #1862 · python-gitlab/python-gitlab · GitHub
Open Graph Title: fix(cli): make 'timeout', 'per_page' and 'page' type explicit by thomasgl-orange · Pull Request #1862 · python-gitlab/python-gitlab
X Title: fix(cli): make 'timeout', 'per_page' and 'page' type explicit by thomasgl-orange · Pull Request #1862 · python-gitlab/python-gitlab
Description: This PR is mainly for fixing handling of --timeout / GITLAB_TIMEOUT. Before: $ docker run -it --rm python-gitlab:latest --timeout=10 project get --id gitlab-org/gitlab Impossible to get object (Timeout value connect was 10, but it must be an int, float or None.) $ docker run -it --rm -e GITLAB_TIMEOUT=10 python-gitlab:latest project get --id gitlab-org/gitlab Impossible to get object (Timeout value connect was 10, but it must be an int, float or None.) After (with bbb7df5): $ docker run -it --rm python-gitlab:latest --timeout 10 project get --id gitlab-org/gitlab id: 278964 path: gitlab $ docker run -it --rm -e GITLAB_TIMEOUT=10 python-gitlab:latest project get --id gitlab-org/gitlab id: 278964 path: gitlab $ docker run -it --rm python-gitlab:latest --timeout xxx project get --id gitlab-org/gitlab usage: gitlab [--version] [-v] [-d] [-c CONFIG_FILE] [-g GITLAB] [-o {json,legacy,yaml}] [-f FIELDS] [--server-url SERVER_URL] [--ssl-verify SSL_VERIFY] [--timeout TIMEOUT] [--api-version API_VERSION] [--per-page PER_PAGE] [--pagination PAGINATION] [--order-by ORDER_BY] [--user-agent USER_AGENT] [--private-token PRIVATE_TOKEN | --oauth-token OAUTH_TOKEN | --job-token JOB_TOKEN] gitlab: error: argument --timeout: invalid int value: 'xxx' $ docker run -it --rm -e GITLAB_TIMEOUT=xxx python-gitlab:latest project get --id gitlab-org/gitlab usage: gitlab [--version] [-v] [-d] [-c CONFIG_FILE] [-g GITLAB] [-o {json,legacy,yaml}] [-f FIELDS] [--server-url SERVER_URL] [--ssl-verify SSL_VERIFY] [--timeout TIMEOUT] [--api-version API_VERSION] [--per-page PER_PAGE] [--pagination PAGINATION] [--order-by ORDER_BY] [--user-agent USER_AGENT] [--private-token PRIVATE_TOKEN | --oauth-token OAUTH_TOKEN | --job-token JOB_TOKEN] gitlab: error: argument --timeout: invalid int value: 'xxx' The 2nd commit (d493a5e) is less a fix, it's more to make things coherent for these two other int arguments. It improves handling of non-int values, I think. Before: $ docker run -it --rm -e GITLAB_PER_PAGE=xxx python-gitlab:latest project list Impossible to list objects (400: per_page is invalid) $ docker run -it --rm python-gitlab:latest --per-page xxx project list Impossible to list objects (400: per_page is invalid) $ docker run -it --rm python-gitlab:latest --per-page 2 project list --page xxx Impossible to list objects (400: page is invalid) After (with d493a5e): $ docker run -it --rm -e GITLAB_PER_PAGE=xxx python-gitlab:latest project list usage: gitlab [--version] [-v] [-d] [-c CONFIG_FILE] [-g GITLAB] [-o {json,legacy,yaml}] [-f FIELDS] [--server-url SERVER_URL] [--ssl-verify SSL_VERIFY] [--timeout TIMEOUT] [--api-version API_VERSION] [--per-page PER_PAGE] [--pagination PAGINATION] [--order-by ORDER_BY] [--user-agent USER_AGENT] [--private-token PRIVATE_TOKEN | --oauth-token OAUTH_TOKEN | --job-token JOB_TOKEN] gitlab: error: argument --per-page: invalid int value: 'xxx' $ docker run -it --rm python-gitlab:latest --per-page xxx project list usage: gitlab [--version] [-v] [-d] [-c CONFIG_FILE] [-g GITLAB] [-o {json,legacy,yaml}] [-f FIELDS] [--server-url SERVER_URL] [--ssl-verify SSL_VERIFY] [--timeout TIMEOUT] [--api-version API_VERSION] [--per-page PER_PAGE] [--pagination PAGINATION] [--order-by ORDER_BY] [--user-agent USER_AGENT] [--private-token PRIVATE_TOKEN | --oauth-token OAUTH_TOKEN | --job-token JOB_TOKEN] gitlab: error: argument --per-page: invalid int value: 'xxx' $ docker run -it --rm python-gitlab:latest --per-page 2 project list --page xxx usage: gitlab project list [-h] [--sudo SUDO] [--archived ARCHIVED] [--id-after ID_AFTER] [--id-before ID_BEFORE] [--last-activity-after LAST_ACTIVITY_AFTER] [--last-activity-before LAST_ACTIVITY_BEFORE] [--membership MEMBERSHIP] [--min-access-level MIN_ACCESS_LEVEL] [--order-by ORDER_BY] [--owned OWNED] [--repository-checksum-failed REPOSITORY_CHECKSUM_FAILED] [--repository-storage REPOSITORY_STORAGE] [--search-namespaces SEARCH_NAMESPACES] [--search SEARCH] [--simple SIMPLE] [--sort SORT] [--starred STARRED] [--statistics STATISTICS] [--topic TOPIC] [--visibility VISIBILITY] [--wiki-checksum-failed WIKI_CHECKSUM_FAILED] [--with-custom-attributes WITH_CUSTOM_ATTRIBUTES] [--with-issues-enabled WITH_ISSUES_ENABLED] [--with-merge-requests-enabled WITH_MERGE_REQUESTS_ENABLED] [--with-programming-language WITH_PROGRAMMING_LANGUAGE] [--page PAGE] [--per-page PER_PAGE] [--all] gitlab project list: error: argument --page: invalid int value: 'xxx' Note: all tests/examples above are run after rebuilding a container as documented in the README, so it seems to be with Python 3.10 (on Alpine).
Open Graph Description: This PR is mainly for fixing handling of --timeout / GITLAB_TIMEOUT. Before: $ docker run -it --rm python-gitlab:latest --timeout=10 project get --id gitlab-org/gitlab Impossible to get object (Tim...
X Description: This PR is mainly for fixing handling of --timeout / GITLAB_TIMEOUT. Before: $ docker run -it --rm python-gitlab:latest --timeout=10 project get --id gitlab-org/gitlab Impossible to get object (Tim...
Opengraph URL: https://github.com/python-gitlab/python-gitlab/pull/1862
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/checks(.:format) |
| route-controller | pull_requests |
| route-action | checks |
| fetch-nonce | v2:5a9465e4-b81c-af76-659b-4d6b778b7e02 |
| current-catalog-service-hash | 87dc3bc62d9b466312751bfd5f889726f4f1337bdff4e8be7da7c93d6c00a25a |
| request-id | B7D0:F5443:80AF2DE:B02EE77:697398FF |
| html-safe-nonce | 1a1ddf21274e8b8099db8b9fd39cbc22904f58bff6b4287b1892cd966148e42b |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCN0QwOkY1NDQzOjgwQUYyREU6QjAyRUU3Nzo2OTczOThGRiIsInZpc2l0b3JfaWQiOiI1NjQ5NDgzNjkxMTM1ODU5MTkiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 334b1262ef4b68e82dbd631f489524cb00831f5639d2d4923d436ecdf27303ad |
| hovercard-subject-tag | pull_request:831927717 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,checks,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/python-gitlab/python-gitlab/pull/1862/checks |
| twitter:image | https://avatars.githubusercontent.com/u/6212720?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/6212720?s=400&v=4 |
| og:image:alt | This PR is mainly for fixing handling of --timeout / GITLAB_TIMEOUT. Before: $ docker run -it --rm python-gitlab:latest --timeout=10 project get --id gitlab-org/gitlab Impossible to get object (Tim... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 2050cdbbbbb4ed55fd8fdf9b956111480f540c8aea2ae70cb27cdafc585f54a8 |
| turbo-cache-control | no-preview |
| go-import | github.com/python-gitlab/python-gitlab git https://github.com/python-gitlab/python-gitlab.git |
| octolytics-dimension-user_id | 28886265 |
| octolytics-dimension-user_login | python-gitlab |
| octolytics-dimension-repository_id | 8077625 |
| octolytics-dimension-repository_nwo | python-gitlab/python-gitlab |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 8077625 |
| octolytics-dimension-repository_network_root_nwo | python-gitlab/python-gitlab |
| turbo-body-classes | logged-out env-production page-responsive full-width full-width-p-0 |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | db1779077eea7e25848d6e8f2461754c9e48f3ec |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width