Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Move the embedded HTTP server headers out of ext/include

Aperta
#4,332 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

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
Refactoring
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
cpp
Ambito
build-system

Direzione di ricerca

Inizia tracciando gli include di ext/test/http/socket_tools_test.cc, dei test degli exporter elencati e di examples/http/server.h, quindi esamina i target test_common ed ext. La destinazione non è ancora stata definita: confronta test_common con un target server dedicato. Il lavoro è completato quando gli header sono stati spostati fuori da ext/include, tutti i target elencati continuano a compilare e la gestione di Winsock rimane corretta per entrambi i sistemi di build.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

do-not-stale triage/accepted

ext/include/opentelemetry/ext/http/server/http_server.h and socket_tools.h are an embedded HTTP server used by tests and by the http example. They sit under ext/include beside the user facing client headers, which makes them look like part of the public surface even though nothing supported points at them.

#4327 replaced the *.h glob in the ext_common component with an explicit manifest and left both out, so the package no longer installs them. That fixes the packaging side. The files are still in a public looking location, and @dbarker asked for a follow up so the move itself does not get lost.

What uses them today
  • ext/test/http/socket_tools_test.cc
  • ext/test/http/curl_http_test.cc
  • ext/test/w3c_tracecontext_http_test_server/main.cc
  • exporters/otlp/test/otlp_http_exporter_test.cc
  • exporters/otlp/test/otlp_http_log_record_exporter_test.cc
  • exporters/zipkin/test/zipkin_exporter_test.cc
  • examples/http/server.h

Everything except the example is a test. That list is the full transitive closure over the include graph on main, so nothing under functional/ is involved.

What a move would settle

Each of those targets now links ws2_32 on Windows for itself, because #4327 took that link off the opentelemetry_ext interface once the headers stopped shipping. On the Bazel side //ext:headers still globs the whole include tree, so its -DEFAULTLIB:Ws2_32.lib linkopt is still load bearing and stays. Moving the files gives both build systems the same story: a server target that owns its own Winsock dependency, and an ext target that is only the HTTP client.

test_common is one candidate, though the http example is not a test, so a small dedicated target may fit better. Happy to take this on once there is a preferred destination.

Lingua principale
C++
Stelle
1.4k
Fork
640
Merge medio
1g 10h
PR unite (30g)
74

Preparare l'ambiente

Apri in Codespaces

Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di open-telemetry/opentelemetry-cpp

Tutte le issue di open-telemetry/opentelemetry-cpp

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.