We are very excited to release the first version! While it is still under development, we can see it getting closer and closer to being production-ready. π
What's Changed
- Add CODEOWNERS file by @reyang in #2
- Basic setup for the project by @ralf0131 in #1
- Add FOSSA scanning workflow by @opentelemetrybot in #4
- feat: prototype injection by @y1yang0 in #7
- Add ossf-scorecard scanning workflow by @opentelemetrybot in #13
- chore: add basic CI pipeline by @123liuziming in #12
- Add Renovate configuration by @opentelemetrybot in #19
- feat: support semconv for http by @123liuziming in #15
- docs: update CONTRIBUTING.md and add MAINTAINERS.md by @kakkoyun in #20
- chore: upgrade actions/setup-go by @RomainMuller in #22
- chore: transform PNG diagrams to mermaid by @RomainMuller in #21
- feat: support semconv for net by @123liuziming in #16
- feat(linter): Establish pedantic linting by @kakkoyun in #26
- chore(ci): Update the conventional commit labeler to prevent false positives because of permissions by @kakkoyun in #24
- docs: add implementation detail document by @y1yang0 in #14
- docs: user experience design brief by @RomainMuller in #11
- chore(ci): Add minimum token permissions for all github workflow files by @opentelemetrybot in #32
- chore(doc): Standardize maintainer/approver/etc listings by @trask in #31
- feat: add overall instrument skeleton by @y1yang0 in #30
- feat: tests improvements by @pdelewski in #33
- feat: find project's dependencies by @y1yang0 in #34
- Sort contributor listings and remove affiliation from emeriti by @opentelemetrybot in #36
- feat: match hook rules with found dependencies by @y1yang0 in #35
- feat: add instrumenter for gathering telemetry data by @123liuziming in #23
- chore: consolidate hook dir by @y1yang0 in #37
- feat: introduce hook dependencies via otel.runtime.go by @y1yang0 in #38
- feat: new otel version subcommand by @y1yang0 in #40
- feat: custom error handling by @y1yang0 in #41
- feat: sync new dependencies to go.mod by @y1yang0 in #39
- refactor: simplify error handling chain by @y1yang0 in #42
- chore(ci): add check typos by @Rinai-R in #45
- chore(ci): add markdownlint for markdown formatting check by @Whitea029 in #44
- feat: instrument.load matched rules from setup phase by @y1yang0 in #43
- chore: Add minimum token permissions for all github workflow files by @opentelemetrybot in #48
- feat: match the rules with compile command in instrument phase by @y1yang0 in #46
- chore: refactor CLI baseline using
github.com/urfave/cli/v2by @RomainMuller in #49 - chore(ci): enabling tests again by @pdelewski in #53
- chore(deps): pin dependencies by @renovate[bot] in #55
- chore(deps): update actions/checkout digest to 08eba0b by @renovate[bot] in #56
- chore(deps): update ossf/scorecard-action action to v2.4.2 by @renovate[bot] in #58
- fix(deps): update github.com/open-telemetry/opentelemetry-go-compile-instrumentation/pkg digest to 31d19f6 by @renovate[bot] in #57
- chore(deps): update crate-ci/typos action to v1.36.2 by @renovate[bot] in #63
- chore(deps): update codecov/codecov-action action to v5.5.1 by @renovate[bot] in #62
- chore(deps): update actions/setup-go action to v5.5.0 by @renovate[bot] in #61
- chore(deps): update actions/checkout action to v4.3.0 by @renovate[bot] in #60
- feat: instrument the package by @y1yang0 in #50
- chore(deps): update github/codeql-action action to v3.30.5 by @renovate[bot] in #70
- chore(deps): update fossas/fossa-action action to v1.7.0 by @renovate[bot] in #69
- chore(deps): update crate-ci/typos action to v1.36.3 by @renovate[bot] in #66
- fix(deps): update module github.com/stretchr/testify to v1.11.1 by @renovate[bot] in #71
- fix(deps): update github.com/open-telemetry/opentelemetry-go-compile-instrumentation/pkg digest to 5b38220 by @renovate[bot] in #59
- fix(deps): update github.com/open-telemetry/opentelemetry-go-compile-instrumentation/pkg digest to 9dda369 by @renovate[bot] in #73
- fix(deps): update module golang.org/x/mod to v0.28.0 by @renovate[bot] in #72
- chore: auto-sync api.tmpl and pkg/inst/context.go by @y1yang0 in #68
- chore: allow renovatebot to update all deps at once by @y1yang0 in #81
- fix: rework renovate bot by @y1yang0 in #84
- refactor: differentiate between Wrapf and Newf by @y1yang0 in #67
- fix(deps): update github.com/open-telemetry/opentelemetry-go-compile-instrumentation/pkg digest to 880bb08 by @renovate[bot] in #85
- chore(deps): update all patch versions by @renovate[bot] in #86
- fix(deps): update github.com/open-telemetry/opentelemetry-go-compile-instrumentation/pkg digest to e9ac730 by @renovate[bot] in #87
- chore: update all non-major dependencies at once by @y1yang0 in #89
- fix(deps): update github.com/open-telemetry/opentelemetry-go-compile-instrumentation/pkg digest to a5ba44c by @renovate[bot] in #90
- refactor: limit visibility to necessary fields and constants by @y1yang0 in #92
- chore(renovate): include digest updates as well by @y1yang0 in #94
- feat: instrument struct by @y1yang0 in #83
- chore(deps): update github/codeql-action action to v4 by @renovate[bot] in #100
- feat: instrument func with receiver type by @y1yang0 in #105
- feat: propagate otel trace context from caller goroutine by @y1yang0 in #98
- chore: replace hook module path with extracted dir by @y1yang0 in #106
- docs: Add getting started document by @kakkoyun in #109
- chore(deps): update actions/upload-artifact action to v5 by @renovate[bot] in #110
- feat: add version to instrumentation rules by @y1yang0 in #107
- chore(test): adding match tests by @pdelewski in #116
- chore: update README.md by @y1yang0 in #114
- feat: allow specifying only the minimal version by @y1yang0 in #118
- fix: interface conversion: HookContext is nil, not *HookContextImpl by @y1yang0 in #122
- feat: Adding gRPC demo app by @pdelewski in #121
- chore: optimize performance-critical tjump by @y1yang0 in #119
- chore(demo): Add HTTP demo by @kakkoyun in #124
- chore(build): Fix Go 1.25 build errors and support Go 1.24+ by @kakkoyun in #127
- fix: removing macos-13 from unit tests matrix as it is deprecated by @pdelewski in #130
- chore(demo): Adding grpc protobufs by @pdelewski in #129
- fix(deps): update module google.golang.org/grpc to v1.64.1 [security] by @renovate[bot] in #123
- chore(deps): bump golang.org/x/net from 0.26.0 to 0.38.0 in /demo/grpc/client by @dependabot[bot] in #131
- chore(build): Enhance Makefile by @kakkoyun in #125
- chore: add http integration test by @y1yang0 in #132
- chore(ci): Add action checks, ensure consistency w/ local checks by @kakkoyun in #126
- chore(tests): Introduce directories and build tags for different type of tests by @kakkoyun in #134
- feat(tool): automatically generate go:linkname directives for hook fu⦠by @txabman42 in #120
- chore: abstract newline comments pattern into ast.LineComments helper by @txabman42 in #139
- chore: optimize import pkg order by @yuluo-yx in #140
- chore(ci): Add Go license header checker by @kakkoyun in #137
- chore(deps): update golangci/golangci-lint-action action to v9 by @renovate[bot] in #141
- refactor: parallelize dependency matching in matchDeps by @txabman42 in #138
- fix: fix make help bug by @yuluo-yx in #143
- fix: ast.FindFuncDecl finds wrong target func by @y1yang0 in #147
- chore(ci): optimize license header by @yuluo-yx in #144
- chore(demo): add observability infrastructure by @kakkoyun in #128
- chore(deps): pin dependencies by @renovate[bot] in #148
- fix: cannot use _ as value or type by @y1yang0 in #150
- chore(test): add grcp integration test by @pdelewski in #135
- fix(test): Make the error output human readible by @kakkoyun in #155
- fix(scripts): Ignore .otel-build directories by @kakkoyun in #154
- chore(golangci-lint): Make formatter more consistent by @kakkoyun in #157
- fix: setup command by @pdelewski in #158
- chore(rules): Add validate() to rules by @txabman42 in #167
- chore(ci): refactor markdown lint ci by @yuluo-yx in #165
- fix: labels apply to both Issues and PRs by @y1yang0 in #174
- feat: Build HookContextImpl object from AST nodes instead of hard-coding by @yuluo-yx in #166
- chore: add pr and issue tmpl by @yuluo-yx in #177
- chore: optimize makfile target by @yuluo-yx in #178
- chore: simplify command actions by @y1yang0 in #151
- fix: listBuildPlan cmd better error message by @pdelewski in #180
- chore: consolidate all project quality tools into single directory by @y1yang0 in #173
- chore(ci): Add CI action for OTel weaver to check registry diff by @yuluo-yx in #149
- refactor: extract repeated type assertions into util.AssertType by @y1yang0 in #187
- chore(.github): Fix PR template by @kakkoyun in #189
- chore(ci): Simplify and unify the actions by @kakkoyun in #188
- chore(ci): Unify the Done checks by @kakkoyun in #190
- chore: flatten trampoline-jump-if at AST-level by @y1yang0 in #184
- chore(tests): Improve instrument integration tests by @txabman42 in #146
- chore(tool): format generated debugging files by @y1yang0 in #191
- refactor: Build _printStack from AST nodes instead of hard-coding available by @yuluo-yx in #193
- fix: pass receiver to HookContextImpl literal by @y1yang0 in #199
- fix(deps): update all non-major versions by @renovate[bot] in #103
- chore(deps): update actions/checkout action to v6 by @renovate[bot] in #197
- fix(deps): update module github.com/google/go-github/v70 to v79 by @renovate[bot] in #172
- chore(ci): unify done job format to auto-pass when skipped by @kakkoyun in #200
- feat: support generic funcs by @txabman42 in #185
- chore(ci): Remove exhaustive from mandatory checks by @kakkoyun in #206
- chore(ci): Add path-filter as an action to make sure required workflows always triggered by @kakkoyun in #204
- chore(deps): update actions/github-script action to v8 by @renovate[bot] in #198
- fix(deps): update all non-major versions by @renovate[bot] in #213
- refactor: consolidate trampoline signature creation by @y1yang0 in #208
- chore(ci): Improve target dependencies and make sure we have proto dependecies by @kakkoyun in #205
- chore(demo): Improve demo convinience target by @kakkoyun in #207
- feat(instrumentation): Add HTTP instrumentation by @kakkoyun in #156
- fix(deps): update module github.com/google/go-github/v79 to v80 by @renovate[bot] in #220
- fix(deps): update all non-major versions by @renovate[bot] in #219
- fix(deps): update all non-major versions to ac0fa4a by @renovate[bot] in #222
- feat: support non-root build paths by @txabman42 in #209
- chore(tests): Make codecov work for pkg and tool independently by @txabman42 in #227
- feat: support cgo by @txabman42 in #216
- fix: unexpected generic type: *dst.Ellipsis by @y1yang0 in #231
- chore(deps): update actions/setup-go action to v6 by @renovate[bot] in #229
- chore(deps): update actions/upload-artifact action to v6 by @renovate[bot] in #236
- feat(instrumentation): Add gRPC instrumentation by @kakkoyun in #226
- feat: support multi build by @txabman42 in #237
- chore(test): add context propagation test by @txabman42 in #238
- fix: nil pointer dereference caused by underscore-ignored parameter by @y1yang0 in #239
- chore: add txabman42 as approver by @txabman42 in #244
- fix: correctly pass variadic arguments by @y1yang0 in #242
- fix: ensure consistency between setup and instrumentation phase properly by @y1yang0 in #246
- fix: go build with trimmed path prefix by @y1yang0 in #249
New Contributors
- @reyang made their first contribution in #2
- @ralf0131 made their first contribution in #1
- @opentelemetrybot made their first contribution in #4
- @y1yang0 made their first contribution in #7
- @123liuziming made their first contribution in #12
- @kakkoyun made their first contribution in #20
- @RomainMuller made their first contribution in #22
- @trask made their first contribution in #31
- @pdelewski made their first contribution in #33
- @Rinai-R made their first contribution in #45
- @Whitea029 made their first contribution in #44
- @renovate[bot] made their first contribution in #55
- @dependabot[bot] made their first contribution in #131
- @txabman42 made their first contribution in #120
- @yuluo-yx made their first contribution in #140
Full Changelog: https://github.com/open-telemetry/opentelemetry-go-compile-instrumentation/commits/v0.1.0