What's Changed
- chore(deps): bump golang.org/x/crypto from 0.49.0 to 0.52.0 in /test/bench/scenarios/largeidle by @dependabot[bot] in #691
- chore(deps): bump golang.org/x/crypto from 0.45.0 to 0.52.0 in /test/apps/mongoclient by @dependabot[bot] in #692
- chore(deps): bump golang.org/x/crypto from 0.48.0 to 0.52.0 in /test/apps/ginserver by @dependabot[bot] in #694
- chore(semconv): add local OTel Weaver registry for the emitted telemetry contract by @NameHaibinZhang in #696
- chore(ci): report benchmark workflow failures by @kakkoyun in #697
- chore(semconv): add Weaver registry groups for grpc, database/sql, redis, kafka, k8s, openai, mongo by @NameHaibinZhang in #701
- feat(instrumentation): add Anthropic Go SDK instrumentation (non-streaming) by @pradhyum6144 in #689
- fix(runtime): route OTel SDK errors through the package logger by @txabman42 in #713
- feat: enable propagatos by @txabman42 in #714
- fix(runtime): handle SIGTERM for graceful shutdown by @Jay2006sawant in #716
- chore: add CodeQL scanning by @fmutlu68 in #536
- docs: update external configuration guide for shipped otelc pin flow by @ADITYA-CODE-SOURCE in #730
- test: skip container-based tests when Docker is not available by @nycanshu in #735
- chore: add auto-regenerate bundle workflow and improve conflict guidance by @NameHaibinZhang in #737
- fix(instrument): no-op call rules on files without matching calls by @Jay2006sawant in #733
- chore(deps): bump google.golang.org/grpc from 1.82.0 to 1.82.1 in /test/apps/grpcclient by @dependabot[bot] in #741
- chore(config): migrate Renovate config by @renovate[bot] in #698
- fix(instrument): avoid _ignoredParam name collision in generated sign… by @Anshumancanrock in #738
- chore: enable golangci-lint modernize by @amazingakai in #747
- fix(instrumentation): preserve openai request and response bodies on preview read errors by @ADITYA-CODE-SOURCE in #720
- fix(build): quote the registry path in lint-schema by @pradhyum6144 in #750
- docs(schemas): add telemetry contracts for the remaining instrumentations by @pradhyum6144 in #751
- test(mongo): add unit tests for BeforeConnect and BeforeNewClient hooks by @vignesh2027 in #769
- chore: add complex demo apps and integration tests by @Aryanbhargava18 in #763
- test(grpc/client): cover HandleRPC payload and error paths by @vignesh2027 in #781
- chore: add complex demo apps for HTTP+SQL and gRPC+SQL propagation by @Aryanbhargava18 in #782
- chore(bundle): add git merge driver to stop otelc-bundle.tgz rebase conflicts by @NameHaibinZhang in #784
- test(database/sql): cover ClickHouse, Oracle, and LegacyParseDSN DSN parsing by @Anshumancanrock in #785
- chore: add complex demo apps for HTTP+Kafka and gRPC+Kafka propagation by @Aryanbhargava18 in #791
- fix(tool): reject malformed version ranges in instrumentation rules by @ADITYA-CODE-SOURCE in #722
- test(integration): cover instrumentation env var filtering by @AkshitBhandariCodes in #800
- feat(pkg): add linodego v2 compile-time instrumentation by @cxdy in #710
- chore: add AI usage and authorship checklist to PR template by @amazingakai in #810
- fix(instrumentation/openai): make provider name detection deterministic by @Satya900 in #825
- docs(config): document runtime instrumentation env vars by @dobbydobap in #856
- fix(instrumentation/gin): gin instrumentation cannot be disabled at runtime by @om7057 in #840
- docs: add README for anthropic-sdk-go instrumentation by @shivv23 in #821
- feat(instrumentation): record gen_ai.client.operation.duration for an… by @malladinagarjuna2 in #775
- test(grpc/server): cover HandleRPC payload and error paths by @vignesh2027 in #776
- fix(database/sql): recognize "sqlite" driver alias in db.system.name by @Satya900 in #830
- feat(pkg): add aws-sdk-go-v2 client instrumentation by @Thorleon in #707
- fix(net/http/server): satisfy http.Pusher so HTTP/2 server push works by @PRAteek-singHWY in #795
- test(tool): add unit tests to raise tool module coverage by @NameHaibinZhang in #893
- fix(imports): check return error of file.Close() in WriteFile by @vedant21-oss in #853
- docs(log): document sdk/trace build-graph requirement for log/slog and logrus correlation by @hanshal101 in #845
- fix(testutil): replace fixed sleep in WaitForSpanFlush with span polling by @mohanakatari119-bit in #463
- fix(ast): check return error of file.Close() in WriteFile by @vedant21-oss in #844
- docs(docs): fix otelc demo path in getting-started and net/http README typo by @ParvikaShekhawat in #774
- refactor(util): remove util.WriteFile in favor of os.WriteFile by @vedant21-oss in #884
- fix(instrument): write nil through the pointer in SetParam/SetReturnVal by @Anshumancanrock in #731
- docs: mention Git line-ending setup for Windows/WSL contributors by @bhuvan-somisetty in #855
- fix(test): normalize AST spacing in golden tests to fix Go 1.25+ and CRLF flakiness by @Aryanbhargava18 in #764
- fix(setup): close file handle on stale lock verification in tryAcquire by @vedant21-oss in #927
- test: fix Windows test failures due to POSIX shell assumptions by @vishalmore90 in #921
- fix(instrumentation): remove duplicate command name suffix in redis query statement by @vishalmore90 in #919
- chore: regenerate otelc-bundle.tgz by @darccio in #933
- fix(deps): update all dependencies (major) by @renovate[bot] in #902
- fix(tool/setup): close file handle when bundle extraction copy fails by @bhuvan-somisetty in #860
- fix(deps): update all dependencies by @renovate[bot] in #901
- fix(ci): run behavior tests when instrumentation rule YAML changes by @Harsh63870 in #863
- fix(kafka): handle invalid UTF-8 message keys by @Modo-me in #936
- chore(demo): update greeter.proto mount path of k6-grpc by @s4s7 in #898
- fix(net/http): server spans missing http.route and named only by method by @Anshumancanrock in #915
- feat(instrumentation/mongo): add mongo driver v2 support by @markcottrell in #858
- test(latestlibbuild): shard app builds across two CI jobs to avoid ti… by @NameHaibinZhang in #943
- test(ex): cover Fatal and Fatalf exit paths by @vignesh2027 in #928
- chore(deps): bump google.golang.org/grpc from 1.81.1 to 1.82.1 in /instrumentation/go.mongodb.org/mongo-driver/v2/mongo by @dependabot[bot] in #942
- test(tool): add unit tests to raise tool module coverage by @shivv23 in #930
- fix(pkg): handle nil client options in MongoDB client hooks by @Labreo in #946
- chore(test): add multi-process e2e for HTTP→SQL propagation by @sanjana2505006 in #931
- chore(deps): bump google.golang.org/grpc from 1.81.1 to 1.82.1 in /instrumentation/github.com/aws/aws-sdk-go-v2 by @dependabot[bot] in #937
- fix(database/sql): IPv6 DSNs drop server.port and corrupt server.address by @Anshumancanrock in #938
- docs(readme): fix otecl path for demo app by @Muneeb-Ahmad-404 in #953
- docs: update stale cmd/gotel references to cmd/otelc in CONTRIBUTING.md by @Labreo in #952
- fix(genai): record error for HTTP 4xx+ responses in OpenAI and Anthropic middleware by @shivv23 in #889
- fix(setup): use atomic write for storing matched rules in SetupPhase.store by @vedant21-oss in #941
- fix(instrumentation): add missing span.RecordError() calls by @ipsitapp8 in #823
- fix(runtime): make OTEL_LOG_LEVEL case-insensitive and trim whitespace by @bhuvan-somisetty in #895
- fix(tool): forward trimpath when resolving import archives by @ADITYA-CODE-SOURCE in #944
- docs: fix OTEL_EXPORTER_OTLP_PROTOCOL default and document missing runtime env vars by @thisisvaishnav in #914
- fix(tool): check file.Close error handling in ImportConfig and AST WriteFile by @vedant21-oss in #909
- chore(test): add multi-process e2e for gRPC→SQL propagation by @sanjana2505006 in #948
- fix(ci): scope unit coverage uploads to their own flag by @om7057 in #857
- fix(tool): preserve spaces in CGO build-plan directories by @ADITYA-CODE-SOURCE in #929
- fix(tool): handle os.Getwd error to prevent silent empty path fallback by @sudo-muneeb in #867
- fix(instrumentation): add missing span.RecordError() in gRPC stats handlers by @shivv23 in #850
- test(tool/ast): add unit test coverage for generic receiver matching and stripGenericTypes by @bhuvan-somisetty in #841
- fix(instrumentation/openai): skip span creation when model is empty by @Satya900 in #866
- test(e2e): assert client span is the trace root in dbclient propagation tests by @vizansh in #963
- test(apps/grpcserverdbclient): bind gRPC frontend to loopback instead of all interfaces by @vizansh in #964
- fix(instrumentation): flush final SSE chunk on stream close without trailing newline by @om7057 in #828
- fix(tool/internal/ast): avoid panic in typename.matches for unsupported AST node types by @vedant21-oss in #957
- fix(ci): propagate unit and E2E coverage job failures by @ADITYA-CODE-SOURCE in #956
- test(kafka/consumer): cover headerCarrier Set and Keys by @Anshumancanrock in #819
- fix(tool/instrument): safely handle non-value AST nodes in decl rules by @bhuvan-somisetty in #816
- fix(tool): struct rules match non-struct types and add fields to the wrong struct by @dobbydobap in #887
- fix(tool): implement where.file.has_directive filter by @Aryanbhargava18 in #762
- fix(tool): resolve canFlattenTJump false positives on unrelated identifier matches by @Aryanbhargava18 in #883
- test(hook): add unit tests for MockHookContext in pkg/hook/hooktest by @vizansh in #836
- refactor: resolve module dirs in a deterministic sorted order by @vedant21-oss in #972
- test(log): assert CRLF line ending preservation in BeforeLogOutput by @SatyamPandey-07 in #814
- fix(toolexec): avoid in-place slice mutation in stripCompleteFlag by @darkraider01 in #988
- fix(tool): allow importcfg lines larger than bufio scanner limit by @shivv23 in #932
- fix(sdk/trace): make GLS span tracker capacity limits deterministic and observable by @bhuvan-somisetty in #911
- fix: certain import patterns were not properly identified by @hannahkm in #878
- fix(instrumentation): use numeric status for openai error.type by @Anshumancanrock in #976
- refactor(tool/rule): central registry of valid selectors and modifiers by @Harsh63870 in #854
- refactor(tool/internal/ast): simplify tokenize in directive.go by eliminating redundant strings.Builder error checks by @vedant21-oss in #998
- fix(tool): handle unchecked error return values in setup package test files by @vishalmore90 in #1006
- test(integration): assert server span is the trace root in propagation tests by @SatyamPandey-07 in #1020
- fix(tool/internal/setup): sort moduleDirs in generatePinnedProjects and getBackupFiles for deterministic order by @vedant21-oss in #986
- fix(setup): warn when version-gated rules skip due to unresolved dep … by @Harsh63870 in #874
- fix(tool/internal/instrument): resolve file rule path directly to prevent filename suffix collision by @vedant21-oss in #1040
- chore(instrumentation/openai): de-duplicate v1/v2/v3 streaming reader logic by @om7057 in #990
- fix(tool): resolve canFlattenTJump panic on unnamed HookContext parameter by @vishalmore90 in #789
- chore(test): add multi-process e2e for HTTP→Kafka propagation by @sanjana2505006 in #1000
- feat(tool): add instrumentation manifest generator by @ADITYA-CODE-SOURCE in #999
- test(testutil): increase cross-process span-flush timeout to 15s by @singhshresth26 in #977
- fix(tool/instrument): remap blank identifier receiver in collectArguments by @om7057 in #799
- fix(pkg): ensure afterTxInstrumentation calls instrumentEnd when tx is nil by @vishalmore90 in #838
- feat(ci): add local coverage gate by @SatyamPandey-07 in #896
- docs: list aws-sdk-go-v2, linodego, and logging instrumentations in Supported Libraries by @ipsitapp8 in #1030
- fix: prevent collisions in synthetic params/returns by @hannahkm in #1035
- fix(tool/internal/instrument): validate valueSpec.Values length in parseValueExpr by @vedant21-oss in #987
- refactor(instrumentation/kafka): extract duplicate headerCarrier to s… by @ipsitapp8 in #847
- fix(tool/instrument): resolve undefined idx in collectArguments blank-receiver branch by @bhuvan-somisetty in #904
- fix(ci): trigger Makefile checks on workflow changes by @ADITYA-CODE-SOURCE in #1063
- fix(genai): set error.type on transport failures by @Anshumancanrock in #1018
- refactor(tool): unify import path alias deduction by @vedant21-oss in #1059
- fix(tool/cmd/otelc): allow profile-path sibling directories sharing build-temp prefix by @SatyamPandey-07 in #1052
- fix(runtime): flush telemetry on shutdown without terminating the process by @Anshumancanrock in #759
- test(setup): cover Pin, pinLocked, AutoPin, prepareVendoredBuild by @malladinagarjuna2 in #760
- docs(config): document run-time instrumentation environment variables by @ayush-bothra in #811
- test(database/sql): run dsnparse/semconv unit tests in CI by @Anshumancanrock in #992
- test(instrument): cover receiver type parameter extraction by @vignesh2027 in #1099
- fix(tool/internal/ast): return standard zero-value token.Position for unmapped nodes in FindPosition by @vedant21-oss in #1010
- test(instrument): cover trampoline jump point discovery by @vignesh2027 in #1111
- fix(tool): sort replace directives in syncDeps for deterministic go.mod updates by @vedant21-oss in #1124
- fix(instrumentation/redis): redact AUTH and HELLO credentials from db.query.text by @ipsitapp8 in #1101
- chore(test): add multi-process e2e for HTTP→OpenAI GenAI client propagation (#1107) by @abhishekkamble12 in #1120
- fix(tool/internal/instrument): prevent nil pointer panic on bodyless functions in directive and raw rules by @vedant21-oss in #1102
- fix(tool/internal/instrument): sort file keys in instrument() for deterministic error reporting by @darkraider01 in #1072
- fix(tool): parse +incompatible and build metadata in module cache paths by @Labreo in #1097
- feat: populate more template variables for directive rule by @hannahkm in #729
- fix(net/http): end spans after instrumentation is disabled by @SSOHEB in #1094
- chore: replace panic() with log.Fatal() in test mocks by @kehach07 in #1141
- chore(tool): consolidate ex package tests into error_test.go by @darkraider01 in #1142
- fix(tool/internal/setup): guard against GOWORK="off" in getBackupFiles by @vedant21-oss in #1117
- test(k8s.io/client-go): replace context.TODO() with t.Context() by @kehach07 in #1139
- feat: support function template variables for injected code by @hannahkm in #1140
- fix(instrumentation/k8s.io/client-go): forward original object on OnDelete by @om7057 in #1049
- fix(tool/instrument): recover generic receiver constraints in trampoline generation by @om7057 in #1122
- chore(deps): bump github.com/moby/go-archive from 0.2.0 to 0.3.0 in /test by @dependabot[bot] in #1164
- test(linode): cover code-generator AST helper functions by @vignesh2027 in #1036
- fix(tool): exclude OS junk files from otelc bundle archive by @ipsitapp8 in #1165
- chore(ci): use shared OSSF Scorecard workflow by @opentelemetrybot in #1103
- fix(tool/internal/instrument): strip build-ignore tag per line, not by substring by @darkraider01 in #1095
- test(anthropic): cover genai semconv attribute constructors by @vignesh2027 in #1034
- test(util): cover the fatal paths in assert.go by @vignesh2027 in #1100
- fix(tool/internal/instrument): skip directive rule injection when no function matches by @darkraider01 in #1045
- chore(test): add multi-process e2e for gRPC→Kafka propagation by @sanjana2505006 in #1105
- chore(tool): unexport rule schema identifiers with no cross-package use by @darkraider01 in #1151
- chore(tool): consolidate instrument package tests into per-source-file pairing by @darkraider01 in #1163
- chore(tool): consolidate ast package tests into per-source-file pairing by @darkraider01 in #1159
- chore(tool): consolidate profile package tests into profile_test.go by @darkraider01 in #1161
- chore(tool): consolidate setup package tests into per-source-file pairing by @darkraider01 in #1162
- chore(tool): consolidate util package tests into per-source-file pairing by @darkraider01 in #1160
- fix(tool/internal/instrument): handle invalid regex pattern gracefully in insertRaw (#1166) by @vedant21-oss in #1180
- fix(tool): centralize rule file name matching by @ADITYA-CODE-SOURCE in #1179
- chore(tool): unexport setup package identifiers with no cross-package use by @darkraider01 in #1150
- chore(tool): unexport internal identifiers with no cross-package use by @darkraider01 in #1146
- chore(tool): addition of
govulncheckscanning in ci workflows by @atharvamhaske in #806 - feat(tool): add struct_literal selector and set_fields modifier by @rarguelloF in #1031
- fix(tool/internal/setup): ensure deterministic rule load order by @shivv23 in #1155
- fix(deps): update all dependencies by @renovate[bot] in #1110
- refactor(tool): name the GOWORK off sentinel by @ADITYA-CODE-SOURCE in #1066
- feat(tool/internal/rule): validate replace and wrap expression syntax in InstDeclRule by @vedant21-oss in #1077
- chore(tool): unexport ast package identifiers with no cross-package use by @darkraider01 in #1149
- fix(tool/internal/instrument): rewrite only the targeted name of a multi-name declaration by @darkraider01 in #1046
- fix(tool/internal/instrument): normalize composite types in checkHookDecl by @bhuvan-somisetty in #1130
- fix(redis): redact AUTH/HELLO credentials in db.query.text by @Anshumancanrock in #1092
- fix(tool): reject invalid manifest version ranges by @ADITYA-CODE-SOURCE in #1185
- fix(ci): propagate change detection failures by @ADITYA-CODE-SOURCE in #1182
- feat(tool): enforce test file naming conventions in CI by @darkraider01 in #1190
- docs(tool): document HookContext accessor panics for generic targets by @darkraider01 in #1191
- chore(test): add multi-process e2e for HTTP→Anthropic GenAI client pr… by @sanjana2505006 in #1138
- chore(tool): consolidate tool tests into per-source-file pairing by @y1yang0 in #1189
- feat: apply template variables to wrap_call by @hannahkm in #1168
- fix(instrumentation/mongo): stop injected CommandMonitor from overriding a user's Monitor by @bhuvan-somisetty in #1158
- fix(tool): prevent vet failures for instrumented cgo packages by @rarguelloF in #1193
- fix(instrumentation/kafka-go): mark async producer spans and log otherwise-invisible async failures by @bhuvan-somisetty in #1178
- doc(docs): Add footnote to clarify zero runtime overhead by @dhruv-ahuja in #1205
New Contributors
- @Jay2006sawant made their first contribution in #716
- @nycanshu made their first contribution in #735
- @Anshumancanrock made their first contribution in #738
- @vignesh2027 made their first contribution in #769
- @Aryanbhargava18 made their first contribution in #763
- @AkshitBhandariCodes made their first contribution in #800
- @cxdy made their first contribution in #710
- @Satya900 made their first contribution in #825
- @dobbydobap made their first contribution in #856
- @om7057 made their first contribution in #840
- @shivv23 made their first contribution in #821
- @malladinagarjuna2 made their first contribution in #775
- @Thorleon made their first contribution in #707
- @PRAteek-singHWY made their first contribution in #795
- @vedant21-oss made their first contribution in #853
- @hanshal101 made their first contribution in #845
- @mohanakatari119-bit made their first contribution in #463
- @ParvikaShekhawat made their first contribution in #774
- @bhuvan-somisetty made their first contribution in #855
- @vishalmore90 made their first contribution in #921
- @Harsh63870 made their first contribution in #863
- @Modo-me made their first contribution in #936
- @s4s7 made their first contribution in #898
- @markcottrell made their first contribution in #858
- @Labreo made their first contribution in #946
- @sanjana2505006 made their first contribution in #931
- @Muneeb-Ahmad-404 made their first contribution in #953
- @ipsitapp8 made their first contribution in #823
- @thisisvaishnav made their first contribution in #914
- @sudo-muneeb made their first contribution in #867
- @vizansh made their first contribution in #963
- @darkraider01 made their first contribution in #988
- @singhshresth26 made their first contribution in #977
- @ayush-bothra made their first contribution in #811
- @abhishekkamble12 made their first contribution in #1120
- @SSOHEB made their first contribution in #1094
- @kehach07 made their first contribution in #1141
- @atharvamhaske made their first contribution in #806
- @rarguelloF made their first contribution in #1031
- @dhruv-ahuja made their first contribution in #1205
Full Changelog: v1.0.1...v1.1.0