diff --git a/ext/oboe_metal/src/oboe.i b/ext/oboe_metal/src/oboe.i new file mode 100644 index 0000000..65cf60a --- /dev/null +++ b/ext/oboe_metal/src/oboe.i @@ -0,0 +1,29 @@ +%module oboe +%{ +#include "oboe_api.h" +#include "oboe_debug.h" +%} +%include "stdint.i" +%include "std_string.i" + +%newobject Metadata::copy; +%newobject Metadata::fromString; +%newobject Metadata::createEvent; +%newobject Metadata::makeRandom; + +%newobject Context::startTrace; +%newobject Context::createEntry; +%newobject Context::createEvent; +%newobject Context::createExit; +%newobject Context::copy; + +%newobject Event::startTrace; +%newobject Event::getMetadata; + +%apply int *OUTPUT { int *do_metrics, int *do_sample, int *sample_rate, int *sample_source, int *type, int *auth, int *status}; +%apply double *OUTPUT { double *bucket_rate, double *bucket_cap}; +%apply std::string *OUTPUT { std::string *status_msg, std::string *auth_msg}; +%apply unsigned int& OUTPUT { unsigned int& counter, unsigned int& rate, unsigned int& source }; + +%include "oboe_debug.h" +%include "oboe_api.h" diff --git a/solarwinds_apm.gemspec b/solarwinds_apm.gemspec index f0bdd90..9b77aa1 100644 --- a/solarwinds_apm.gemspec +++ b/solarwinds_apm.gemspec @@ -48,10 +48,7 @@ Gem::Specification.new do |s| # OTEL dependencies s.add_dependency('opentelemetry-instrumentation-all', '>= 0.31.0') s.add_dependency('opentelemetry-sdk', '>= 1.2.0') - - # this still gives a warning, would have to be pinned to a minor version - # but that is not necessary and may restrict other gems - s.add_dependency('json', '~> 2.0') + s.add_dependency('json') s.required_ruby_version = '>= 2.7.0' s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }