VorTECHsa / VorTECHsa/python-sdk

Make the version check configurable

Open
#566 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
25
Forks
12
Avg merge
20h 47m
Merged PRs (30d)
2

Description

Is your feature request related to a problem? Please describe.
_warn_user_if_sdk_version_outdated() hits https://pypi.python.org/pypi/vortexasdk/json on every create_client(), and the URL is hardcoded. On corporate machines public PyPI may be blocked and proxied through an internal mirror, so this check fails (or trips egress alerts) on every run.

Describe the solution you'd like
A way to point the version check at an internal mirror, or turn it off. Artifactory/Nexus proxies serve the same /pypi/<pkg>/json, so redirecting it returns identical data and the feature keeps working — just without public egress (verified against our internal Artifactory mirror: same release list and latest version as pypi.org).

Env vars are probably the most practical, since the check runs on the implicit default_client() path where there's nowhere to pass arguments:

  • VORTEXASDK_PYPI_URL — base URL for the check
  • VORTEXASDK_DISABLE_VERSION_CHECK — skip it entirely

Describe alternatives you've considered

  • Params on create_client() (e.g. pypi_url=, check_version=False) — cleaner API, but only helps callers who invoke it directly; most usage likely goes through default_client().

Additional context
#126 (which introduced the check) originally called for a toggle to turn the check on/off, but #198 shipped without one.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating _warn_user_if_sdk_version_outdated() and the create_client() and default_client() paths that invoke it. Check how the current hardcoded PyPI URL is used, then verify that the requested environment variables can redirect the check or disable it without affecting normal client creation.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
65/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.