Add nonProxyHosts to ProxyConfiguration
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- java
- Ambito
- api, backend, networking
Direzione di ricerca
Inizia individuando ProxyConfiguration e ClientConfigurations, quindi traccia il percorso di ProxySelector attraverso il livello Dialogue fino ai client HTTP sottostanti. Esamina la configurazione del proxy esistente e il comportamento dell’API prima di risolvere le interazioni tra il formato dell’elenco, le regole di corrispondenza, CIDR, SOCKS, mesh e l’aggiornamento DNS. Il lavoro è completo quando è possibile configurare host senza proxy e le richieste corrispondenti bypassano il proxy senza compromettere le configurazioni esistenti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
There isn't currently a way to specify non-proxy hosts for conjure generated clients. This is an FR to add a configuration field for explicitly configuring no-proxy hosts (separate from #3166, which would pull from environment)
Add a new nonProxyHosts field to ProxyConfiguration, and change ClientConfigurations to produce a new ProxySelector that matches on the provided non-proxy hosts in order to determine whether to indicate passthrough or proxy. Since the ProxySelector is passed through the Dialogue layer to the underlying hc clients, no modifications should be needed for https outside c-j-r and the associated api.
While this should be a straightforward change, there are a number of things to discuss:
- How should backcompat and rollout be handled? Since this is an additive change, it will not break compat with existing configuration. However, if a service were to have picked up non-proxy-hosts configuration via discovery and then roll back to a non-supported version, the proxy settings could either silently break or error out.
- The first use cases will be with static non-proxy hosts that are introduced programmatically, which makes this a bit less of a concern.
- Should the nonProxyHosts be a List or a String?
- Using a List would be less confusing for end users, and would elide discussion around whether the string should be delimited by commas (no_proxy envvar) or pipe characters (java).
- Should CIDR blocks be supported?
- Initial implementation could just not support this and error out instead.
- Should domain suffix matching require explicit asterisks like in the Java case?
- It would probably make more sense to make this behave more like the no-proxy envvar and suffix match even without wildcards.
- How should socks proxies and mesh be handled?
- The best option might be to error out on configurations with a socks proxy or mesh is used with nonProxyHosts.
Some further investigation is required to determine how no-proxy will interact with Dialogue's custom DNS refreshing. Initial impression is that it should work with hostnames, but it probably won't work with IPs matching resolved hostnames (instead of other IPs), since the DNS resolution happens after the ProxySelector callback.
- Lingua principale
- Java
- Stelle
- 96
- Fork
- 95
- Merge medio
- 8m
- PR unite (30g)
- 55
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di palantir/conjure-java-runtime
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 50/100
palantir/conjure-java-runtime#3166 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
palantir/conjure-java-runtime#2490 · 3 reazioni ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
palantir/conjure-java-runtime#2248 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
palantir/conjure-java-runtime#2131 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 42/100
palantir/conjure-java-runtime#1882 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di palantir/conjure-java-runtime
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
micronaut-projects/micronaut-redis#844 ·
I maintainer di solito rispondono entro 4 giorni
-
ai-driven-fuzzing bug claude Major
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
linagora/tmail-backend#2862 ·
I maintainer di solito rispondono entro 1 giorno
-
ai-driven-fuzzing bug claude Minor
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
linagora/twake-calendar-side-service#1435 ·
I maintainer di solito rispondono entro 1 giorno
-
Poetry updater rejects OR (||) Python constraints in PyprojectPreparer#update_python_requirementApertaL: python L: ruby:bundler
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
dependabot/dependabot-core#16819 ·
I maintainer di solito rispondono entro 1 giorno
-
[Bug] Auto-trusted serialization allow list skips array component classesForse già presa @Icesource l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno