Intent
Route every platform (including macOS) through the releases.stackql.io proxy and send a pystackql/{version} User-Agent so pulls are attributable in Analytics Engine.
Current state
- Linux/Windows already use the proxy.
- macOS uses
storage.googleapis.com/stackql-public-releases/... (GCS bucket) - bypasses the proxy. requests.get sends the default python-requests/x UA.- Download logic is duplicated in
utils/download.py and utils/helpers.py.
Changes (apply to both files, or dedupe to one)
# Darwin URL-return'https://storage.googleapis.com/stackql-public-releases/latest/stackql_darwin_multiarch.pkg'+return'https://releases.stackql.io/stackql/latest/stackql_darwin_multiarch.pkg'# request (set version-stamped UA; import from wherever the package version is defined)-r=requests.get(url, stream=True)
+r=requests.get(url, stream=True, headers={"User-Agent": f"pystackql/{__version__}"})Acceptance
Intent
Route every platform (including macOS) through the
releases.stackql.ioproxy and send apystackql/{version}User-Agent so pulls are attributable in Analytics Engine.Current state
storage.googleapis.com/stackql-public-releases/...(GCS bucket) - bypasses the proxy.requests.getsends the defaultpython-requests/xUA.utils/download.pyandutils/helpers.py.Changes (apply to both files, or dedupe to one)
Acceptance
releases.stackql.iopystackql/<version>