ConfigParser DuplicateOptionError HTTP_PROXY eta http_proxy-rekin
Ulertu zergatik HTTP_PROXY eta http_proxy elkarrekin egon daitezkeen Linux ingurune batean, baina hala ere DuplicateOptionError sortzen duten ConfigParser-en balio lehenetsi gisa erabiltzean.
Maiuskulak eta minuskulak bereizten dituen ingurune batean, HTTP_PROXY eta http_proxy izen desberdinak izan daitezke. ConfigParser-ek aukeren izenak minuskulara bihurtzen ditu normalean, beraz biak balio lehenetsietan sartzeak aukera bikoiztu bakarra bihur ditzake.
Beraz, <dict> aipatzen duen errore bat ConfigParser(defaults=os.environ)-tik etor daiteke, proxyrako konexiorik saiatu aurretik.
Aplikazioak nahita maiuskularekiko sentikorrak diren ingurune-izenak behar baditu parser honetan, ezarri normalizazio-politika kargatu aurretik:
import configparser
import os
settings = configparser.ConfigParser(interpolation=None)
settings.optionxform = str
settings.read_dict({'DEFAULT': dict(os.environ)})Horrela bi idazkerak bereizita mantentzen dira. Bilaketek eta geroago irakurtzen den edozein konfiguraziok politika hori jarraitzen dute orain. Interpolazioa desgaitzeak ingurune-balioetako ehuneko ikurrak interpolazio-sintaxi gisa tratatzea ere eragozten du.
Aplikazioak maiuskulekiko sentikorra ez den konfigurazioa behar badu, hautatu nahi diren ingurune-sarrerak espresuki eta konpondu idazkera gatazkatsuak bezero horren proxy-arauen arabera parserrari eman aurretik.
strict=False aldatzeak bikoiztuak onartzen ditu, baina ez du zehazten zein proxy-balio gatazkatsu erabili behar duen aplikazioak. Nahi gabeko ingurune-idazkera bat kentzea egokia izan daiteke parserra kontrolatzen ez duzunean; zehaztu lehenengo beheragoko bezeroak zein balio behar duen.