open-telemetry / build-tools

Building tools provided by OpenTelemetry
https://opentelemetry.io
Apache License 2.0
37 stars 54 forks source link

Add the semconvgen Library to PyPi (semantic-conventions package) #253

Open Kevin-Ngo opened 9 months ago

Kevin-Ngo commented 9 months ago
Oberon00 commented 9 months ago

Are we really sure we need this? We have enough compatibility problems and under-documentation with what Jinja templates can access. If we expose this, even more changes will be breaking changes.

At the moment, the issue claims that there are "some cases" where it would be useful. Please list some concrete use cases.

Kevin-Ngo commented 9 months ago

The cases that I can think of, and one that I want to use, is wanting access to the syntax validation that is present in the SemanticConvention model for the sake of making my own code generation script based off semantic conventions. I don't really need to use the CLI, so having access to the model via a library would make it so that users can use the model (SemanticConvention) and its out of the box syntax validation on the YAML files.

jsuereth commented 7 months ago

I don't think we're "stable" enough in semconv definition or YAML to expose this library. As part of the weaver project, I think we'll be formalizing the YAML a bit more and formalizing rules regarding, e.g. how to override attirbutes and such.

I'd be against folks depending on the state of things today outside of our hand-holding them through the binary we provide.

TL;DR: expect breaking python changes if you'r using it as a library.