ddtrace 0.43.0 → 0.48.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.circleci/config.yml +278 -139
- data/.circleci/images/primary/Dockerfile-2.0.0 +11 -1
- data/.circleci/images/primary/Dockerfile-2.1.10 +11 -1
- data/.circleci/images/primary/Dockerfile-2.2.10 +11 -1
- data/.circleci/images/primary/Dockerfile-2.3.8 +10 -0
- data/.circleci/images/primary/Dockerfile-2.4.6 +10 -0
- data/.circleci/images/primary/Dockerfile-2.5.6 +10 -0
- data/.circleci/images/primary/Dockerfile-2.6.4 +10 -0
- data/.circleci/images/primary/Dockerfile-2.7.0 +10 -0
- data/.circleci/images/primary/Dockerfile-3.0.0 +73 -0
- data/.circleci/images/primary/Dockerfile-jruby-9.2-latest +88 -0
- data/.circleci/images/primary/{Dockerfile-jruby-9.2 → Dockerfile-jruby-9.2.0.0} +1 -5
- data/.circleci/images/primary/Dockerfile-truffleruby-21.0.0 +73 -0
- data/.github/workflows/add-milestone-to-pull-requests.yml +1 -1
- data/.github/workflows/create-next-milestone.yml +2 -2
- data/.gitlab-ci.yml +18 -18
- data/.rubocop.yml +269 -7
- data/.rubocop_todo.yml +438 -0
- data/.simplecov +10 -1
- data/Appraisals +285 -15
- data/CHANGELOG.md +1243 -377
- data/Gemfile +65 -3
- data/LICENSE-3rdparty.csv +2 -0
- data/README.md +1 -0
- data/Rakefile +186 -29
- data/bin/ddtracerb +15 -0
- data/ddtrace.gemspec +7 -37
- data/docker-compose.yml +105 -7
- data/docs/DevelopmentGuide.md +28 -0
- data/docs/GettingStarted.md +208 -75
- data/docs/ProfilingDevelopment.md +88 -0
- data/integration/README.md +67 -0
- data/integration/apps/rack/.dockerignore +1 -0
- data/integration/apps/rack/.envrc.sample +1 -0
- data/integration/apps/rack/.gitignore +4 -0
- data/integration/apps/rack/.rspec +1 -0
- data/integration/apps/rack/Dockerfile +28 -0
- data/integration/apps/rack/Dockerfile-ci +11 -0
- data/integration/apps/rack/Gemfile +24 -0
- data/integration/apps/rack/README.md +93 -0
- data/integration/apps/rack/app/acme.rb +80 -0
- data/integration/apps/rack/app/datadog.rb +17 -0
- data/integration/apps/rack/bin/run +22 -0
- data/integration/apps/rack/bin/setup +17 -0
- data/integration/apps/rack/bin/test +24 -0
- data/integration/apps/rack/config.ru +6 -0
- data/integration/apps/rack/config/puma.rb +14 -0
- data/integration/apps/rack/config/unicorn.rb +23 -0
- data/integration/apps/rack/docker-compose.ci.yml +62 -0
- data/integration/apps/rack/docker-compose.yml +78 -0
- data/integration/apps/rack/script/build-images +38 -0
- data/integration/apps/rack/script/ci +50 -0
- data/integration/apps/rack/spec/integration/basic_spec.rb +10 -0
- data/integration/apps/rack/spec/spec_helper.rb +16 -0
- data/integration/apps/rack/spec/support/integration_helper.rb +22 -0
- data/integration/apps/rails-five/.dockerignore +1 -0
- data/integration/apps/rails-five/.env +3 -0
- data/integration/apps/rails-five/.envrc.sample +1 -0
- data/integration/apps/rails-five/.gitignore +30 -0
- data/integration/apps/rails-five/Dockerfile +25 -0
- data/integration/apps/rails-five/Dockerfile-ci +11 -0
- data/integration/apps/rails-five/Gemfile +104 -0
- data/integration/apps/rails-five/README.md +94 -0
- data/integration/apps/rails-five/Rakefile +6 -0
- data/integration/apps/rails-five/app/channels/application_cable/channel.rb +4 -0
- data/integration/apps/rails-five/app/channels/application_cable/connection.rb +4 -0
- data/integration/apps/rails-five/app/controllers/application_controller.rb +2 -0
- data/integration/apps/rails-five/app/controllers/basic_controller.rb +36 -0
- data/integration/apps/rails-five/app/controllers/concerns/.keep +0 -0
- data/integration/apps/rails-five/app/controllers/health_controller.rb +9 -0
- data/integration/apps/rails-five/app/controllers/jobs_controller.rb +12 -0
- data/integration/apps/rails-five/app/jobs/application_job.rb +2 -0
- data/integration/apps/rails-five/app/jobs/test_job.rb +12 -0
- data/integration/apps/rails-five/app/mailers/application_mailer.rb +4 -0
- data/integration/apps/rails-five/app/models/application_record.rb +3 -0
- data/integration/apps/rails-five/app/models/concerns/.keep +0 -0
- data/integration/apps/rails-five/app/models/test.rb +2 -0
- data/integration/apps/rails-five/app/views/layouts/mailer.html.erb +13 -0
- data/integration/apps/rails-five/app/views/layouts/mailer.text.erb +1 -0
- data/integration/apps/rails-five/bin/bundle +3 -0
- data/integration/apps/rails-five/bin/rails +9 -0
- data/integration/apps/rails-five/bin/rake +9 -0
- data/integration/apps/rails-five/bin/run +24 -0
- data/integration/apps/rails-five/bin/setup +27 -0
- data/integration/apps/rails-five/bin/spring +17 -0
- data/integration/apps/rails-five/bin/test +21 -0
- data/integration/apps/rails-five/bin/update +28 -0
- data/integration/apps/rails-five/config.ru +5 -0
- data/integration/apps/rails-five/config/application.rb +97 -0
- data/integration/apps/rails-five/config/boot.rb +4 -0
- data/integration/apps/rails-five/config/cable.yml +10 -0
- data/integration/apps/rails-five/config/credentials.yml.enc +1 -0
- data/integration/apps/rails-five/config/database.yml +28 -0
- data/integration/apps/rails-five/config/environment.rb +5 -0
- data/integration/apps/rails-five/config/environments/development.rb +51 -0
- data/integration/apps/rails-five/config/environments/production.rb +82 -0
- data/integration/apps/rails-five/config/environments/test.rb +43 -0
- data/integration/apps/rails-five/config/initializers/datadog.rb +18 -0
- data/integration/apps/rails-five/config/initializers/filter_parameter_logging.rb +4 -0
- data/integration/apps/rails-five/config/initializers/resque.rb +4 -0
- data/integration/apps/rails-five/config/initializers/rollbar.rb +5 -0
- data/integration/apps/rails-five/config/initializers/wrap_parameters.rb +14 -0
- data/integration/apps/rails-five/config/locales/en.yml +33 -0
- data/integration/apps/rails-five/config/puma.rb +24 -0
- data/integration/apps/rails-five/config/routes.rb +11 -0
- data/integration/apps/rails-five/config/spring.rb +6 -0
- data/integration/apps/rails-five/config/unicorn.rb +29 -0
- data/integration/apps/rails-five/db/migrate/20190927215052_create_tests.rb +11 -0
- data/integration/apps/rails-five/db/schema.rb +23 -0
- data/integration/apps/rails-five/db/seeds.rb +7 -0
- data/integration/apps/rails-five/docker-compose.ci.yml +98 -0
- data/integration/apps/rails-five/docker-compose.yml +100 -0
- data/integration/apps/rails-five/lib/tasks/.keep +0 -0
- data/integration/apps/rails-five/log/.keep +0 -0
- data/integration/apps/rails-five/public/robots.txt +1 -0
- data/integration/apps/rails-five/script/build-images +35 -0
- data/integration/apps/rails-five/script/ci +50 -0
- data/integration/apps/rails-five/spec/integration/basic_spec.rb +10 -0
- data/integration/apps/rails-five/spec/spec_helper.rb +16 -0
- data/integration/apps/rails-five/spec/support/integration_helper.rb +22 -0
- data/integration/apps/rails-five/storage/.keep +0 -0
- data/integration/apps/rails-five/tmp/.keep +0 -0
- data/integration/apps/rails-five/vendor/.keep +0 -0
- data/integration/apps/ruby/.dockerignore +1 -0
- data/integration/apps/ruby/.envrc.sample +1 -0
- data/integration/apps/ruby/.gitignore +2 -0
- data/integration/apps/ruby/Dockerfile +25 -0
- data/integration/apps/ruby/Dockerfile-ci +11 -0
- data/integration/apps/ruby/Gemfile +11 -0
- data/integration/apps/ruby/README.md +70 -0
- data/integration/apps/ruby/agent.yaml +3 -0
- data/integration/apps/ruby/app/datadog.rb +13 -0
- data/integration/apps/ruby/app/fibonacci.rb +58 -0
- data/integration/apps/ruby/bin/run +20 -0
- data/integration/apps/ruby/bin/setup +17 -0
- data/integration/apps/ruby/bin/test +21 -0
- data/integration/apps/ruby/docker-compose.ci.yml +51 -0
- data/integration/apps/ruby/docker-compose.yml +63 -0
- data/integration/apps/ruby/script/build-images +38 -0
- data/integration/apps/ruby/script/ci +50 -0
- data/integration/images/agent/Dockerfile +2 -0
- data/integration/images/agent/agent.yaml +3 -0
- data/integration/images/include/datadog/analyzer.rb +71 -0
- data/integration/images/include/datadog/demo_env.rb +101 -0
- data/integration/images/include/http-health-check +33 -0
- data/integration/images/ruby/2.0/Dockerfile +54 -0
- data/integration/images/ruby/2.1/Dockerfile +54 -0
- data/integration/images/ruby/2.2/Dockerfile +54 -0
- data/integration/images/ruby/2.3/Dockerfile +70 -0
- data/integration/images/ruby/2.4/Dockerfile +54 -0
- data/integration/images/ruby/2.5/Dockerfile +54 -0
- data/integration/images/ruby/2.6/Dockerfile +54 -0
- data/integration/images/ruby/2.7/Dockerfile +54 -0
- data/integration/images/ruby/3.0/Dockerfile +54 -0
- data/integration/images/wrk/Dockerfile +33 -0
- data/integration/images/wrk/scripts/entrypoint.sh +17 -0
- data/integration/images/wrk/scripts/scenarios/basic/default.lua +1 -0
- data/integration/images/wrk/scripts/scenarios/basic/fibonacci.lua +1 -0
- data/integration/script/build-images +43 -0
- data/lib/ddtrace.rb +9 -5
- data/lib/ddtrace/analytics.rb +2 -0
- data/lib/ddtrace/auto_instrument.rb +3 -0
- data/lib/ddtrace/auto_instrument_base.rb +6 -0
- data/lib/ddtrace/buffer.rb +4 -4
- data/lib/ddtrace/configuration.rb +121 -26
- data/lib/ddtrace/configuration/base.rb +1 -1
- data/lib/ddtrace/configuration/components.rb +87 -5
- data/lib/ddtrace/configuration/option_definition.rb +1 -3
- data/lib/ddtrace/configuration/options.rb +4 -7
- data/lib/ddtrace/configuration/settings.rb +48 -3
- data/lib/ddtrace/context.rb +5 -6
- data/lib/ddtrace/context_provider.rb +0 -1
- data/lib/ddtrace/contrib/action_cable/event.rb +1 -0
- data/lib/ddtrace/contrib/action_cable/integration.rb +7 -0
- data/lib/ddtrace/contrib/action_pack/action_controller/instrumentation.rb +1 -3
- data/lib/ddtrace/contrib/action_pack/integration.rb +7 -0
- data/lib/ddtrace/contrib/action_view/event.rb +1 -5
- data/lib/ddtrace/contrib/action_view/events/render_partial.rb +1 -0
- data/lib/ddtrace/contrib/action_view/events/render_template.rb +1 -0
- data/lib/ddtrace/contrib/action_view/integration.rb +7 -0
- data/lib/ddtrace/contrib/action_view/utils.rb +1 -1
- data/lib/ddtrace/contrib/active_record/configuration/makara_resolver.rb +30 -0
- data/lib/ddtrace/contrib/active_record/configuration/resolver.rb +107 -18
- data/lib/ddtrace/contrib/active_record/integration.rb +7 -0
- data/lib/ddtrace/contrib/active_record/utils.rb +68 -21
- data/lib/ddtrace/contrib/active_support/integration.rb +7 -1
- data/lib/ddtrace/contrib/active_support/notifications/event.rb +2 -1
- data/lib/ddtrace/contrib/active_support/notifications/subscriber.rb +1 -0
- data/lib/ddtrace/contrib/active_support/notifications/subscription.rb +9 -5
- data/lib/ddtrace/contrib/auto_instrument.rb +49 -0
- data/lib/ddtrace/contrib/aws/patcher.rb +1 -0
- data/lib/ddtrace/contrib/aws/services.rb +3 -0
- data/lib/ddtrace/contrib/configurable.rb +63 -39
- data/lib/ddtrace/contrib/configuration/resolver.rb +70 -5
- data/lib/ddtrace/contrib/configuration/resolvers/pattern_resolver.rb +20 -19
- data/lib/ddtrace/contrib/configuration/settings.rb +7 -6
- data/lib/ddtrace/contrib/cucumber/configuration/settings.rb +0 -10
- data/lib/ddtrace/contrib/cucumber/ext.rb +0 -2
- data/lib/ddtrace/contrib/cucumber/formatter.rb +5 -11
- data/lib/ddtrace/contrib/cucumber/integration.rb +5 -0
- data/lib/ddtrace/contrib/dalli/patcher.rb +0 -38
- data/lib/ddtrace/contrib/delayed_job/plugin.rb +0 -1
- data/lib/ddtrace/contrib/elasticsearch/patcher.rb +1 -0
- data/lib/ddtrace/contrib/elasticsearch/quantize.rb +3 -2
- data/lib/ddtrace/contrib/ethon/easy_patch.rb +11 -10
- data/lib/ddtrace/contrib/ethon/ext.rb +1 -0
- data/lib/ddtrace/contrib/excon/middleware.rb +2 -6
- data/lib/ddtrace/contrib/extensions.rb +53 -3
- data/lib/ddtrace/contrib/faraday/middleware.rb +1 -3
- data/lib/ddtrace/contrib/faraday/patcher.rb +0 -36
- data/lib/ddtrace/contrib/grape/endpoint.rb +37 -26
- data/lib/ddtrace/contrib/grape/ext.rb +1 -0
- data/lib/ddtrace/contrib/grape/patcher.rb +0 -42
- data/lib/ddtrace/contrib/grpc/datadog_interceptor.rb +8 -8
- data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +1 -0
- data/lib/ddtrace/contrib/grpc/patcher.rb +0 -36
- data/lib/ddtrace/contrib/http/circuit_breaker.rb +1 -3
- data/lib/ddtrace/contrib/http/instrumentation.rb +5 -5
- data/lib/ddtrace/contrib/httpclient/configuration/settings.rb +32 -0
- data/lib/ddtrace/contrib/httpclient/ext.rb +17 -0
- data/lib/ddtrace/contrib/httpclient/instrumentation.rb +147 -0
- data/lib/ddtrace/contrib/httpclient/integration.rb +43 -0
- data/lib/ddtrace/contrib/httpclient/patcher.rb +38 -0
- data/lib/ddtrace/contrib/httprb/instrumentation.rb +15 -21
- data/lib/ddtrace/contrib/httprb/patcher.rb +5 -2
- data/lib/ddtrace/contrib/mongodb/instrumentation.rb +2 -0
- data/lib/ddtrace/contrib/mongodb/subscribers.rb +2 -3
- data/lib/ddtrace/contrib/patchable.rb +18 -7
- data/lib/ddtrace/contrib/patcher.rb +9 -6
- data/lib/ddtrace/contrib/presto/patcher.rb +5 -2
- data/lib/ddtrace/contrib/qless/configuration/settings.rb +35 -0
- data/lib/ddtrace/contrib/qless/ext.rb +20 -0
- data/lib/ddtrace/contrib/qless/integration.rb +38 -0
- data/lib/ddtrace/contrib/qless/patcher.rb +35 -0
- data/lib/ddtrace/contrib/qless/qless_job.rb +73 -0
- data/lib/ddtrace/contrib/qless/tracer_cleaner.rb +33 -0
- data/lib/ddtrace/contrib/que/ext.rb +19 -19
- data/lib/ddtrace/contrib/que/tracer.rb +1 -1
- data/lib/ddtrace/contrib/racecar/event.rb +1 -0
- data/lib/ddtrace/contrib/rack/configuration/settings.rb +3 -3
- data/lib/ddtrace/contrib/rack/integration.rb +7 -0
- data/lib/ddtrace/contrib/rack/middlewares.rb +6 -11
- data/lib/ddtrace/contrib/rack/patcher.rb +1 -3
- data/lib/ddtrace/contrib/rack/request_queue.rb +6 -1
- data/lib/ddtrace/contrib/rails/auto_instrument_railtie.rb +10 -0
- data/lib/ddtrace/contrib/rails/patcher.rb +6 -2
- data/lib/ddtrace/contrib/rails/utils.rb +4 -0
- data/lib/ddtrace/contrib/rake/instrumentation.rb +4 -2
- data/lib/ddtrace/contrib/rake/integration.rb +1 -1
- data/lib/ddtrace/contrib/redis/configuration/resolver.rb +14 -5
- data/lib/ddtrace/contrib/redis/configuration/settings.rb +5 -0
- data/lib/ddtrace/contrib/redis/ext.rb +1 -0
- data/lib/ddtrace/contrib/redis/patcher.rb +20 -3
- data/lib/ddtrace/contrib/redis/quantize.rb +28 -0
- data/lib/ddtrace/contrib/redis/tags.rb +5 -1
- data/lib/ddtrace/contrib/redis/vendor/LICENSE +20 -0
- data/lib/ddtrace/contrib/redis/vendor/resolver.rb +6 -7
- data/lib/ddtrace/contrib/registry.rb +2 -2
- data/lib/ddtrace/contrib/resque/configuration/settings.rb +17 -1
- data/lib/ddtrace/contrib/resque/integration.rb +1 -1
- data/lib/ddtrace/contrib/resque/patcher.rb +4 -4
- data/lib/ddtrace/contrib/resque/resque_job.rb +24 -1
- data/lib/ddtrace/contrib/rest_client/request_patch.rb +1 -3
- data/lib/ddtrace/contrib/rspec/configuration/settings.rb +0 -10
- data/lib/ddtrace/contrib/rspec/example.rb +24 -10
- data/lib/ddtrace/contrib/rspec/ext.rb +0 -3
- data/lib/ddtrace/contrib/rspec/integration.rb +6 -1
- data/lib/ddtrace/contrib/rspec/patcher.rb +0 -2
- data/lib/ddtrace/contrib/sequel/utils.rb +5 -6
- data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +1 -0
- data/lib/ddtrace/contrib/shoryuken/tracer.rb +7 -4
- data/lib/ddtrace/contrib/sidekiq/server_tracer.rb +2 -7
- data/lib/ddtrace/contrib/sidekiq/tracing.rb +0 -1
- data/lib/ddtrace/contrib/sinatra/env.rb +1 -3
- data/lib/ddtrace/contrib/sinatra/headers.rb +1 -3
- data/lib/ddtrace/contrib/sinatra/tracer.rb +1 -3
- data/lib/ddtrace/contrib/sinatra/tracer_middleware.rb +5 -5
- data/lib/ddtrace/contrib/sneakers/ext.rb +11 -11
- data/lib/ddtrace/contrib/sneakers/tracer.rb +2 -4
- data/lib/ddtrace/contrib/status_code_matcher.rb +5 -3
- data/lib/ddtrace/correlation.rb +1 -0
- data/lib/ddtrace/diagnostics/environment_logger.rb +3 -2
- data/lib/ddtrace/distributed_tracing/headers/headers.rb +1 -0
- data/lib/ddtrace/distributed_tracing/headers/helpers.rb +1 -3
- data/lib/ddtrace/error.rb +2 -0
- data/lib/ddtrace/ext/ci.rb +43 -11
- data/lib/ddtrace/ext/distributed.rb +1 -1
- data/lib/ddtrace/ext/git.rb +0 -1
- data/lib/ddtrace/ext/http.rb +1 -1
- data/lib/ddtrace/ext/profiling.rb +52 -0
- data/lib/ddtrace/ext/runtime.rb +3 -1
- data/lib/ddtrace/ext/transport.rb +1 -0
- data/lib/ddtrace/forced_tracing.rb +2 -0
- data/lib/ddtrace/logger.rb +1 -1
- data/lib/ddtrace/metrics.rb +14 -6
- data/lib/ddtrace/opentracer/distributed_headers.rb +3 -0
- data/lib/ddtrace/opentracer/span.rb +2 -6
- data/lib/ddtrace/opentracer/thread_local_scope.rb +1 -0
- data/lib/ddtrace/patcher.rb +25 -4
- data/lib/ddtrace/pin.rb +8 -61
- data/lib/ddtrace/pipeline/span_filter.rb +1 -1
- data/lib/ddtrace/profiling.rb +54 -0
- data/lib/ddtrace/profiling/backtrace_location.rb +32 -0
- data/lib/ddtrace/profiling/buffer.rb +41 -0
- data/lib/ddtrace/profiling/collectors/stack.rb +253 -0
- data/lib/ddtrace/profiling/encoding/profile.rb +31 -0
- data/lib/ddtrace/profiling/event.rb +13 -0
- data/lib/ddtrace/profiling/events/stack.rb +102 -0
- data/lib/ddtrace/profiling/exporter.rb +23 -0
- data/lib/ddtrace/profiling/ext/cpu.rb +54 -0
- data/lib/ddtrace/profiling/ext/cthread.rb +134 -0
- data/lib/ddtrace/profiling/ext/forking.rb +97 -0
- data/lib/ddtrace/profiling/flush.rb +41 -0
- data/lib/ddtrace/profiling/pprof/builder.rb +121 -0
- data/lib/ddtrace/profiling/pprof/converter.rb +85 -0
- data/lib/ddtrace/profiling/pprof/message_set.rb +12 -0
- data/lib/ddtrace/profiling/pprof/payload.rb +18 -0
- data/lib/ddtrace/profiling/pprof/pprof.proto +212 -0
- data/lib/ddtrace/profiling/pprof/pprof_pb.rb +81 -0
- data/lib/ddtrace/profiling/pprof/stack_sample.rb +90 -0
- data/lib/ddtrace/profiling/pprof/string_table.rb +10 -0
- data/lib/ddtrace/profiling/pprof/template.rb +114 -0
- data/lib/ddtrace/profiling/preload.rb +3 -0
- data/lib/ddtrace/profiling/profiler.rb +28 -0
- data/lib/ddtrace/profiling/recorder.rb +87 -0
- data/lib/ddtrace/profiling/scheduler.rb +84 -0
- data/lib/ddtrace/profiling/tasks/setup.rb +77 -0
- data/lib/ddtrace/profiling/transport/client.rb +12 -0
- data/lib/ddtrace/profiling/transport/http.rb +122 -0
- data/lib/ddtrace/profiling/transport/http/api.rb +43 -0
- data/lib/ddtrace/profiling/transport/http/api/endpoint.rb +90 -0
- data/lib/ddtrace/profiling/transport/http/api/instance.rb +36 -0
- data/lib/ddtrace/profiling/transport/http/api/spec.rb +40 -0
- data/lib/ddtrace/profiling/transport/http/builder.rb +28 -0
- data/lib/ddtrace/profiling/transport/http/client.rb +33 -0
- data/lib/ddtrace/profiling/transport/http/response.rb +21 -0
- data/lib/ddtrace/profiling/transport/io.rb +30 -0
- data/lib/ddtrace/profiling/transport/io/client.rb +27 -0
- data/lib/ddtrace/profiling/transport/io/response.rb +16 -0
- data/lib/ddtrace/profiling/transport/parcel.rb +17 -0
- data/lib/ddtrace/profiling/transport/request.rb +15 -0
- data/lib/ddtrace/profiling/transport/response.rb +8 -0
- data/lib/ddtrace/propagation/grpc_propagator.rb +1 -0
- data/lib/ddtrace/propagation/http_propagator.rb +17 -2
- data/lib/ddtrace/quantization/http.rb +1 -0
- data/lib/ddtrace/runtime/cgroup.rb +2 -2
- data/lib/ddtrace/runtime/container.rb +32 -26
- data/lib/ddtrace/runtime/identity.rb +8 -0
- data/lib/ddtrace/sampler.rb +1 -1
- data/lib/ddtrace/sampling/rule_sampler.rb +4 -9
- data/lib/ddtrace/span.rb +7 -7
- data/lib/ddtrace/sync_writer.rb +12 -12
- data/lib/ddtrace/tasks/exec.rb +48 -0
- data/lib/ddtrace/tasks/help.rb +14 -0
- data/lib/ddtrace/tracer.rb +28 -5
- data/lib/ddtrace/transport/http.rb +15 -8
- data/lib/ddtrace/transport/http/adapters/net.rb +27 -8
- data/lib/ddtrace/transport/http/adapters/registry.rb +1 -0
- data/lib/ddtrace/transport/http/adapters/unix_socket.rb +2 -4
- data/lib/ddtrace/transport/http/builder.rb +7 -1
- data/lib/ddtrace/transport/http/env.rb +8 -0
- data/lib/ddtrace/transport/http/traces.rb +2 -3
- data/lib/ddtrace/transport/io.rb +1 -1
- data/lib/ddtrace/transport/io/client.rb +15 -8
- data/lib/ddtrace/transport/io/response.rb +1 -3
- data/lib/ddtrace/transport/io/traces.rb +6 -0
- data/lib/ddtrace/transport/parcel.rb +4 -0
- data/lib/ddtrace/transport/traces.rb +18 -1
- data/lib/ddtrace/utils/compression.rb +27 -0
- data/lib/ddtrace/utils/object_set.rb +41 -0
- data/lib/ddtrace/utils/only_once.rb +40 -0
- data/lib/ddtrace/utils/sequence.rb +17 -0
- data/lib/ddtrace/utils/string_table.rb +45 -0
- data/lib/ddtrace/utils/time.rb +32 -1
- data/lib/ddtrace/vendor/active_record/MIT-LICENSE +20 -0
- data/lib/ddtrace/vendor/multipart-post/LICENSE +11 -0
- data/lib/ddtrace/vendor/multipart-post/multipart.rb +12 -0
- data/lib/ddtrace/vendor/multipart-post/multipart/post.rb +8 -0
- data/lib/ddtrace/vendor/multipart-post/multipart/post/composite_read_io.rb +116 -0
- data/lib/ddtrace/vendor/multipart-post/multipart/post/multipartable.rb +57 -0
- data/lib/ddtrace/vendor/multipart-post/multipart/post/parts.rb +135 -0
- data/lib/ddtrace/vendor/multipart-post/multipart/post/version.rb +9 -0
- data/lib/ddtrace/vendor/multipart-post/net/http/post/multipart.rb +32 -0
- data/lib/ddtrace/version.rb +3 -1
- data/lib/ddtrace/workers.rb +5 -0
- data/lib/ddtrace/workers/async.rb +11 -3
- data/lib/ddtrace/workers/loop.rb +17 -3
- data/lib/ddtrace/workers/polling.rb +1 -0
- data/lib/ddtrace/workers/queue.rb +1 -0
- data/lib/ddtrace/workers/runtime_metrics.rb +21 -4
- data/lib/ddtrace/workers/trace_writer.rb +10 -10
- data/lib/ddtrace/writer.rb +7 -4
- metadata +224 -342
- data/lib/ddtrace/augmentation.rb +0 -13
- data/lib/ddtrace/augmentation/method_wrapper.rb +0 -20
- data/lib/ddtrace/augmentation/method_wrapping.rb +0 -38
- data/lib/ddtrace/augmentation/shim.rb +0 -102
- data/lib/ddtrace/contrib/rspec/example_group.rb +0 -61
- data/lib/ddtrace/monkey.rb +0 -58
data/.simplecov
CHANGED
@@ -1,13 +1,22 @@
|
|
1
|
+
# Enable branch coverage reporting.
|
2
|
+
# SimpleCov only supports branch coverage in
|
3
|
+
# Ruby >= 2.5.
|
4
|
+
SimpleCov.enable_coverage :branch if RUBY_VERSION >= '2.5.0'
|
5
|
+
|
6
|
+
# Categorize SimpleCov report, for easier reading
|
1
7
|
SimpleCov.add_group 'contrib', '/lib/ddtrace/contrib'
|
2
8
|
SimpleCov.add_group 'transport', '/lib/ddtrace/transport'
|
3
9
|
SimpleCov.add_group 'spec', '/spec/'
|
4
10
|
|
11
|
+
# Exclude code not maintained by this project
|
12
|
+
SimpleCov.add_filter %r{/vendor/}
|
13
|
+
|
5
14
|
SimpleCov.coverage_dir ENV.fetch('COVERAGE_DIR', 'coverage')
|
6
15
|
|
7
16
|
# Each test run requires its own unique command_name.
|
8
17
|
# When running `rake spec:test_name`, the test process doesn't have access to the
|
9
18
|
# rake task process, so we have come up with unique values ourselves.
|
10
|
-
#
|
19
|
+
#
|
11
20
|
# The current approach is to combine the ruby engine (ruby-2.7,jruby-9.2),
|
12
21
|
# program name (rspec/test), command line arguments (--pattern spec/**/*_spec.rb),
|
13
22
|
# and the loaded gemset.
|
data/Appraisals
CHANGED
@@ -39,7 +39,10 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
39
39
|
gem 'activerecord-mysql-adapter', platform: :ruby
|
40
40
|
gem 'activerecord-jdbcmysql-adapter', platform: :jruby
|
41
41
|
gem 'rack-cache', '1.7.1'
|
42
|
+
gem 'sqlite3', '~> 1.3.5'
|
42
43
|
gem 'lograge', '< 0.4'
|
44
|
+
gem 'makara', '< 0.5.0' # >= 0.5.0 contain Ruby 2.3+ syntax
|
45
|
+
gem 'safe_yaml' # Required for makara, as YAML.safe_load is not available in Ruby 2.0
|
43
46
|
end
|
44
47
|
|
45
48
|
appraise 'rails32-postgres' do
|
@@ -86,6 +89,8 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
86
89
|
gem 'excon'
|
87
90
|
gem 'hiredis'
|
88
91
|
gem 'http'
|
92
|
+
gem 'httpclient'
|
93
|
+
gem 'makara', '< 0.5.0' # >= 0.5.0 contain Ruby 2.3+ syntax
|
89
94
|
gem 'mongo', '< 2.5'
|
90
95
|
gem 'mysql2', '0.3.21', platform: :ruby
|
91
96
|
gem 'pg', '< 1.0', platform: :ruby
|
@@ -97,6 +102,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
97
102
|
gem 'rest-client'
|
98
103
|
gem 'resque', '< 2.0'
|
99
104
|
gem 'rspec', '>= 3.0.0'
|
105
|
+
gem 'safe_yaml' # Required for makara, as YAML.safe_load is not available in Ruby 2.0
|
100
106
|
gem 'sequel', '~> 4.0', '< 4.37'
|
101
107
|
gem 'sidekiq', '~> 3.5.4'
|
102
108
|
gem 'sinatra', '1.4.5'
|
@@ -105,6 +111,10 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
105
111
|
gem 'timers', '< 4.2'
|
106
112
|
gem 'typhoeus'
|
107
113
|
end
|
114
|
+
|
115
|
+
appraise 'core-old' do
|
116
|
+
gem 'dogstatsd-ruby', '~> 4'
|
117
|
+
end
|
108
118
|
end
|
109
119
|
elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
|
110
120
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.2.0')
|
@@ -135,7 +145,9 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
135
145
|
gem 'activerecord-mysql-adapter', platform: :ruby
|
136
146
|
gem 'activerecord-jdbcmysql-adapter', platform: :jruby
|
137
147
|
gem 'rack-cache', '1.7.1'
|
148
|
+
gem 'sqlite3', '~> 1.3.5'
|
138
149
|
gem 'lograge', '< 0.4'
|
150
|
+
gem 'makara', '< 0.5.0' # >= 0.5.0 contain Ruby 2.3+ syntax
|
139
151
|
end
|
140
152
|
|
141
153
|
appraise 'rails32-postgres' do
|
@@ -209,6 +221,8 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
209
221
|
gem 'excon'
|
210
222
|
gem 'hiredis'
|
211
223
|
gem 'http'
|
224
|
+
gem 'httpclient'
|
225
|
+
gem 'makara', '< 0.5.0' # >= 0.5.0 contain Ruby 2.3+ syntax
|
212
226
|
gem 'mongo', '< 2.5'
|
213
227
|
gem 'mysql2', '0.3.21', platform: :ruby
|
214
228
|
gem 'pg', '< 1.0', platform: :ruby
|
@@ -230,6 +244,10 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
230
244
|
gem 'timers', '< 4.2'
|
231
245
|
gem 'typhoeus'
|
232
246
|
end
|
247
|
+
|
248
|
+
appraise 'core-old' do
|
249
|
+
gem 'dogstatsd-ruby', '~> 4'
|
250
|
+
end
|
233
251
|
end
|
234
252
|
elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
|
235
253
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3.0')
|
@@ -260,6 +278,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
260
278
|
gem 'activerecord-mysql-adapter', platform: :ruby
|
261
279
|
gem 'activerecord-jdbcmysql-adapter', platform: :jruby
|
262
280
|
gem 'rack-cache', '1.7.1'
|
281
|
+
gem 'sqlite3', '~> 1.3.5'
|
263
282
|
gem 'lograge', '< 0.4'
|
264
283
|
end
|
265
284
|
|
@@ -334,6 +353,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
334
353
|
gem 'mysql2', '< 1', platform: :ruby
|
335
354
|
gem 'sprockets', '< 4'
|
336
355
|
gem 'lograge'
|
356
|
+
gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
|
337
357
|
end
|
338
358
|
|
339
359
|
appraise 'rails5-postgres' do
|
@@ -341,6 +361,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
341
361
|
gem 'pg', '< 1.0', platform: :ruby
|
342
362
|
gem 'sprockets', '< 4'
|
343
363
|
gem 'lograge'
|
364
|
+
gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
|
344
365
|
end
|
345
366
|
|
346
367
|
appraise 'rails5-postgres-redis' do
|
@@ -349,6 +370,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
349
370
|
gem 'redis', '>= 4.0.1'
|
350
371
|
gem 'sprockets', '< 4'
|
351
372
|
gem 'lograge'
|
373
|
+
gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
|
352
374
|
end
|
353
375
|
|
354
376
|
appraise 'rails5-postgres-redis-activesupport' do
|
@@ -357,6 +379,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
357
379
|
gem 'redis', '>= 4.0.1'
|
358
380
|
gem 'sprockets', '< 4'
|
359
381
|
gem 'lograge'
|
382
|
+
gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
|
360
383
|
end
|
361
384
|
|
362
385
|
appraise 'rails5-postgres-sidekiq' do
|
@@ -366,6 +389,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
366
389
|
gem 'activejob'
|
367
390
|
gem 'sprockets', '< 4'
|
368
391
|
gem 'lograge'
|
392
|
+
gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
|
369
393
|
end
|
370
394
|
|
371
395
|
appraise 'contrib' do
|
@@ -385,12 +409,15 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
385
409
|
gem 'excon'
|
386
410
|
gem 'faraday'
|
387
411
|
gem 'grape'
|
388
|
-
gem 'graphql', '
|
389
|
-
gem 'grpc', '~> 1.
|
412
|
+
gem 'graphql', '>= 1.12.0'
|
413
|
+
gem 'grpc', '~> 1.19.0' # Last version to support Ruby < 2.3 & google-protobuf < 3.7
|
390
414
|
gem 'hiredis'
|
391
415
|
gem 'http'
|
416
|
+
gem 'httpclient'
|
417
|
+
gem 'makara', '< 0.5.0' # >= 0.5.0 contain Ruby 2.3+ syntax
|
392
418
|
gem 'mongo', '>= 2.8.0'
|
393
419
|
gem 'mysql2', '< 0.5', platform: :ruby
|
420
|
+
gem 'qless'
|
394
421
|
gem 'racecar', '>= 0.3.5'
|
395
422
|
gem 'rack', '< 2.1.0' # Locked due to grape incompatibility: https://github.com/ruby-grape/grape/issues/1980
|
396
423
|
gem 'rack-test'
|
@@ -410,6 +437,10 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
410
437
|
gem 'typhoeus'
|
411
438
|
gem 'que', '>= 1.0.0.beta2'
|
412
439
|
end
|
440
|
+
|
441
|
+
appraise 'core-old' do
|
442
|
+
gem 'dogstatsd-ruby', '~> 4'
|
443
|
+
end
|
413
444
|
end
|
414
445
|
elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
|
415
446
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.4.0')
|
@@ -440,6 +471,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
440
471
|
gem 'activerecord-mysql-adapter', platform: :ruby
|
441
472
|
gem 'activerecord-jdbcmysql-adapter', platform: :jruby
|
442
473
|
gem 'rack-cache', '1.7.1'
|
474
|
+
gem 'sqlite3', '~> 1.3.5'
|
443
475
|
gem 'lograge', '< 0.4'
|
444
476
|
end
|
445
477
|
|
@@ -575,15 +607,18 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
575
607
|
gem 'excon'
|
576
608
|
gem 'faraday'
|
577
609
|
gem 'grape'
|
578
|
-
gem 'graphql'
|
610
|
+
gem 'graphql', '>= 1.12.0'
|
579
611
|
gem 'grpc'
|
580
612
|
gem 'google-protobuf', '~> 3.11.0' # Last version to support Ruby < 2.5
|
581
613
|
gem 'hiredis'
|
582
614
|
gem 'http'
|
615
|
+
gem 'httpclient'
|
616
|
+
gem 'makara'
|
583
617
|
gem 'mongo', '>= 2.8.0'
|
584
618
|
gem 'mysql2', '< 0.5', platform: :ruby
|
585
619
|
gem 'pg', platform: :ruby
|
586
620
|
gem 'presto-client', '>= 0.5.14'
|
621
|
+
gem 'qless'
|
587
622
|
gem 'racecar', '>= 0.3.5'
|
588
623
|
gem 'rack', '< 2.1.0' # Locked due to grape incompatibility: https://github.com/ruby-grape/grape/issues/1980
|
589
624
|
gem 'rack-test'
|
@@ -607,6 +642,10 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
607
642
|
appraise 'contrib-old' do
|
608
643
|
gem 'faraday', '0.17'
|
609
644
|
end
|
645
|
+
|
646
|
+
appraise 'core-old' do
|
647
|
+
gem 'dogstatsd-ruby', '~> 4'
|
648
|
+
end
|
610
649
|
end
|
611
650
|
elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
|
612
651
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.5.0')
|
@@ -678,15 +717,18 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
678
717
|
gem 'excon'
|
679
718
|
gem 'faraday'
|
680
719
|
gem 'grape'
|
681
|
-
gem 'graphql'
|
720
|
+
gem 'graphql', '>= 1.12.0'
|
682
721
|
gem 'grpc'
|
683
722
|
gem 'google-protobuf', '~> 3.11.0' # Last version to support Ruby < 2.5
|
684
723
|
gem 'hiredis'
|
685
724
|
gem 'http'
|
725
|
+
gem 'httpclient'
|
726
|
+
gem 'makara'
|
686
727
|
gem 'mongo', '>= 2.8.0'
|
687
728
|
gem 'mysql2', '< 0.5', platform: :ruby
|
688
729
|
gem 'pg', platform: :ruby
|
689
730
|
gem 'presto-client', '>= 0.5.14'
|
731
|
+
gem 'qless'
|
690
732
|
gem 'racecar', '>= 0.3.5'
|
691
733
|
gem 'rack'
|
692
734
|
gem 'rack-test'
|
@@ -710,6 +752,10 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
710
752
|
appraise 'contrib-old' do
|
711
753
|
gem 'faraday', '0.17'
|
712
754
|
end
|
755
|
+
|
756
|
+
appraise 'core-old' do
|
757
|
+
gem 'dogstatsd-ruby', '~> 4'
|
758
|
+
end
|
713
759
|
end
|
714
760
|
elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
715
761
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
|
@@ -719,6 +765,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
719
765
|
gem 'activerecord-jdbcmysql-adapter', platform: :jruby
|
720
766
|
gem 'sprockets', '< 4'
|
721
767
|
gem 'lograge'
|
768
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
722
769
|
end
|
723
770
|
|
724
771
|
appraise 'rails5-postgres' do
|
@@ -727,6 +774,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
727
774
|
gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
|
728
775
|
gem 'sprockets', '< 4'
|
729
776
|
gem 'lograge'
|
777
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
730
778
|
end
|
731
779
|
|
732
780
|
appraise 'rails5-postgres-redis' do
|
@@ -736,6 +784,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
736
784
|
gem 'redis', '>= 4.0.1'
|
737
785
|
gem 'sprockets', '< 4'
|
738
786
|
gem 'lograge'
|
787
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
739
788
|
end
|
740
789
|
|
741
790
|
appraise 'rails5-postgres-redis-activesupport' do
|
@@ -745,6 +794,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
745
794
|
gem 'redis', '>= 4.0.1'
|
746
795
|
gem 'sprockets', '< 4'
|
747
796
|
gem 'lograge'
|
797
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
748
798
|
end
|
749
799
|
|
750
800
|
appraise 'rails5-postgres-sidekiq' do
|
@@ -755,6 +805,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
755
805
|
gem 'activejob'
|
756
806
|
gem 'sprockets', '< 4'
|
757
807
|
gem 'lograge'
|
808
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
758
809
|
end
|
759
810
|
|
760
811
|
appraise 'rails6-mysql2' do
|
@@ -763,6 +814,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
763
814
|
gem 'activerecord-jdbcmysql-adapter', '>= 60', platform: :jruby # try remove >= 60
|
764
815
|
gem 'sprockets', '< 4'
|
765
816
|
gem 'lograge'
|
817
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
766
818
|
end
|
767
819
|
|
768
820
|
appraise 'rails6-postgres' do
|
@@ -771,6 +823,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
771
823
|
gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
|
772
824
|
gem 'sprockets', '< 4'
|
773
825
|
gem 'lograge'
|
826
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
774
827
|
end
|
775
828
|
|
776
829
|
appraise 'rails6-postgres-redis' do
|
@@ -780,6 +833,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
780
833
|
gem 'redis', '>= 4.0.1'
|
781
834
|
gem 'sprockets', '< 4'
|
782
835
|
gem 'lograge'
|
836
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
783
837
|
end
|
784
838
|
|
785
839
|
appraise 'rails6-postgres-redis-activesupport' do
|
@@ -789,6 +843,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
789
843
|
gem 'redis', '>= 4.0.1'
|
790
844
|
gem 'sprockets', '< 4'
|
791
845
|
gem 'lograge'
|
846
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
792
847
|
end
|
793
848
|
|
794
849
|
appraise 'rails6-postgres-sidekiq' do
|
@@ -799,6 +854,45 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
799
854
|
gem 'activejob'
|
800
855
|
gem 'sprockets', '< 4'
|
801
856
|
gem 'lograge'
|
857
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
858
|
+
end
|
859
|
+
|
860
|
+
appraise 'rails61-mysql2' do
|
861
|
+
gem 'rails', '~> 6.1.0'
|
862
|
+
gem 'mysql2', '~> 0.5', platform: :ruby
|
863
|
+
gem 'activerecord-jdbcmysql-adapter', '>= 61', platform: :jruby
|
864
|
+
gem 'sprockets', '< 4'
|
865
|
+
gem 'lograge', '~> 0.11'
|
866
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
867
|
+
end
|
868
|
+
|
869
|
+
appraise 'rails61-postgres' do
|
870
|
+
gem 'rails', '~> 6.1.0'
|
871
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
872
|
+
gem 'activerecord-jdbcpostgresql-adapter', '>= 61', platform: :jruby
|
873
|
+
gem 'sprockets', '< 4'
|
874
|
+
gem 'lograge', '~> 0.11'
|
875
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
876
|
+
end
|
877
|
+
|
878
|
+
appraise 'rails61-postgres-redis' do
|
879
|
+
gem 'rails', '~> 6.1.0'
|
880
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
881
|
+
gem 'activerecord-jdbcpostgresql-adapter', '>= 61', platform: :jruby
|
882
|
+
gem 'redis', '>= 4.2.5'
|
883
|
+
gem 'sprockets', '< 4'
|
884
|
+
gem 'lograge', '~> 0.11'
|
885
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
886
|
+
end
|
887
|
+
|
888
|
+
appraise 'rails61-postgres-sidekiq' do
|
889
|
+
gem 'rails', '~> 6.1.0'
|
890
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
891
|
+
gem 'activerecord-jdbcpostgresql-adapter', '>= 61', platform: :jruby
|
892
|
+
gem 'sidekiq', '>= 6.1.2'
|
893
|
+
gem 'sprockets', '< 4'
|
894
|
+
gem 'lograge', '~> 0.11'
|
895
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
802
896
|
end
|
803
897
|
|
804
898
|
appraise 'resque2-redis3' do
|
@@ -829,16 +923,20 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
829
923
|
gem 'excon'
|
830
924
|
gem 'faraday'
|
831
925
|
gem 'grape'
|
832
|
-
gem 'graphql'
|
926
|
+
gem 'graphql', '>= 1.12.0'
|
833
927
|
gem 'grpc', platform: :ruby
|
834
928
|
gem 'hiredis'
|
835
929
|
gem 'http'
|
930
|
+
gem 'httpclient'
|
931
|
+
gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
|
932
|
+
gem 'makara'
|
836
933
|
gem 'mongo', '>= 2.8.0'
|
837
|
-
gem 'mysql2', '<
|
838
|
-
gem 'activerecord-jdbcmysql-adapter', platform: :jruby
|
934
|
+
gem 'mysql2', '< 1', platform: :ruby
|
935
|
+
gem 'activerecord-jdbcmysql-adapter', '>= 60.2', platform: :jruby
|
839
936
|
gem 'pg', platform: :ruby
|
840
|
-
gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
|
937
|
+
gem 'activerecord-jdbcpostgresql-adapter', '>= 60.2', platform: :jruby
|
841
938
|
gem 'presto-client', '>= 0.5.14'
|
939
|
+
gem 'qless', (RUBY_PLATFORM == 'java' ? '0.10.0' : '>= 0') # Newer releases require `rusage`, which is not available for JRuby
|
842
940
|
gem 'racecar', '>= 0.3.5'
|
843
941
|
gem 'rack'
|
844
942
|
gem 'rack-test'
|
@@ -854,6 +952,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
854
952
|
gem 'sinatra'
|
855
953
|
gem 'sneakers', '>= 2.12.0'
|
856
954
|
gem 'sqlite3', '~> 1.4.1', platform: :ruby
|
955
|
+
gem 'jdbc-sqlite3', '>= 3.28', platform: :jruby
|
857
956
|
gem 'sucker_punch'
|
858
957
|
gem 'typhoeus'
|
859
958
|
gem 'que', '>= 1.0.0.beta2'
|
@@ -862,6 +961,10 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
862
961
|
appraise 'contrib-old' do
|
863
962
|
gem 'faraday', '0.17'
|
864
963
|
end
|
964
|
+
|
965
|
+
appraise 'core-old' do
|
966
|
+
gem 'dogstatsd-ruby', '~> 4'
|
967
|
+
end
|
865
968
|
elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
|
866
969
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
|
867
970
|
if RUBY_PLATFORM != 'java'
|
@@ -943,6 +1046,36 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
943
1046
|
gem 'lograge'
|
944
1047
|
end
|
945
1048
|
|
1049
|
+
appraise 'rails61-mysql2' do
|
1050
|
+
gem 'rails', '~> 6.1.0'
|
1051
|
+
gem 'mysql2', '~> 0.5', platform: :ruby
|
1052
|
+
gem 'sprockets', '< 4'
|
1053
|
+
gem 'lograge', '~> 0.11'
|
1054
|
+
end
|
1055
|
+
|
1056
|
+
appraise 'rails61-postgres' do
|
1057
|
+
gem 'rails', '~> 6.1.0'
|
1058
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1059
|
+
gem 'sprockets', '< 4'
|
1060
|
+
gem 'lograge', '~> 0.11'
|
1061
|
+
end
|
1062
|
+
|
1063
|
+
appraise 'rails61-postgres-redis' do
|
1064
|
+
gem 'rails', '~> 6.1.0'
|
1065
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1066
|
+
gem 'redis', '>= 4.2.5'
|
1067
|
+
gem 'sprockets', '< 4'
|
1068
|
+
gem 'lograge', '~> 0.11'
|
1069
|
+
end
|
1070
|
+
|
1071
|
+
appraise 'rails61-postgres-sidekiq' do
|
1072
|
+
gem 'rails', '~> 6.1.0'
|
1073
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1074
|
+
gem 'sidekiq', '>= 6.1.2'
|
1075
|
+
gem 'sprockets', '< 4'
|
1076
|
+
gem 'lograge', '~> 0.11'
|
1077
|
+
end
|
1078
|
+
|
946
1079
|
appraise 'resque2-redis3' do
|
947
1080
|
gem 'redis', '< 4.0'
|
948
1081
|
gem 'resque', '>= 2.0'
|
@@ -971,14 +1104,17 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
971
1104
|
gem 'excon'
|
972
1105
|
gem 'faraday'
|
973
1106
|
gem 'grape'
|
974
|
-
gem 'graphql'
|
1107
|
+
gem 'graphql', '>= 1.12.0'
|
975
1108
|
gem 'grpc'
|
976
1109
|
gem 'hiredis'
|
977
1110
|
gem 'http'
|
1111
|
+
gem 'httpclient'
|
1112
|
+
gem 'makara'
|
978
1113
|
gem 'mongo', '>= 2.8.0'
|
979
|
-
gem 'mysql2', '<
|
1114
|
+
gem 'mysql2', '< 1', platform: :ruby
|
980
1115
|
gem 'pg', platform: :ruby
|
981
1116
|
gem 'presto-client', '>= 0.5.14'
|
1117
|
+
gem 'qless'
|
982
1118
|
gem 'racecar', '>= 0.3.5'
|
983
1119
|
gem 'rack'
|
984
1120
|
gem 'rack-test'
|
@@ -1002,12 +1138,17 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
|
|
1002
1138
|
appraise 'contrib-old' do
|
1003
1139
|
gem 'faraday', '0.17'
|
1004
1140
|
end
|
1141
|
+
|
1142
|
+
appraise 'core-old' do
|
1143
|
+
gem 'dogstatsd-ruby', '~> 4'
|
1144
|
+
end
|
1005
1145
|
end
|
1006
|
-
elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
|
1146
|
+
elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION) \
|
1147
|
+
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.0.0')
|
1007
1148
|
if RUBY_PLATFORM != 'java'
|
1008
1149
|
appraise 'rails5-mysql2' do
|
1009
1150
|
gem 'rails', '~> 5.2.1'
|
1010
|
-
gem 'mysql2', '<
|
1151
|
+
gem 'mysql2', '< 1', platform: :ruby
|
1011
1152
|
gem 'sprockets', '< 4'
|
1012
1153
|
gem 'lograge'
|
1013
1154
|
end
|
@@ -1048,7 +1189,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
|
|
1048
1189
|
|
1049
1190
|
appraise 'rails6-mysql2' do
|
1050
1191
|
gem 'rails', '~> 6.0.0'
|
1051
|
-
gem 'mysql2', '<
|
1192
|
+
gem 'mysql2', '< 1', platform: :ruby
|
1052
1193
|
gem 'sprockets', '< 4'
|
1053
1194
|
gem 'lograge'
|
1054
1195
|
end
|
@@ -1087,6 +1228,36 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
|
|
1087
1228
|
gem 'lograge'
|
1088
1229
|
end
|
1089
1230
|
|
1231
|
+
appraise 'rails61-mysql2' do
|
1232
|
+
gem 'rails', '~> 6.1.0'
|
1233
|
+
gem 'mysql2', '~> 0.5', platform: :ruby
|
1234
|
+
gem 'sprockets', '< 4'
|
1235
|
+
gem 'lograge', '~> 0.11'
|
1236
|
+
end
|
1237
|
+
|
1238
|
+
appraise 'rails61-postgres' do
|
1239
|
+
gem 'rails', '~> 6.1.0'
|
1240
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1241
|
+
gem 'sprockets', '< 4'
|
1242
|
+
gem 'lograge', '~> 0.11'
|
1243
|
+
end
|
1244
|
+
|
1245
|
+
appraise 'rails61-postgres-redis' do
|
1246
|
+
gem 'rails', '~> 6.1.0'
|
1247
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1248
|
+
gem 'redis', '>= 4.2.5'
|
1249
|
+
gem 'sprockets', '< 4'
|
1250
|
+
gem 'lograge', '~> 0.11'
|
1251
|
+
end
|
1252
|
+
|
1253
|
+
appraise 'rails61-postgres-sidekiq' do
|
1254
|
+
gem 'rails', '~> 6.1.0'
|
1255
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1256
|
+
gem 'sidekiq', '>= 6.1.2'
|
1257
|
+
gem 'sprockets', '< 4'
|
1258
|
+
gem 'lograge', '~> 0.11'
|
1259
|
+
end
|
1260
|
+
|
1090
1261
|
appraise 'resque2-redis3' do
|
1091
1262
|
gem 'redis', '< 4.0'
|
1092
1263
|
gem 'resque', '>= 2.0'
|
@@ -1114,14 +1285,17 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
|
|
1114
1285
|
gem 'ethon'
|
1115
1286
|
gem 'excon'
|
1116
1287
|
gem 'grape'
|
1117
|
-
gem 'graphql'
|
1288
|
+
gem 'graphql', '>= 1.12.0'
|
1118
1289
|
gem 'grpc'
|
1119
1290
|
gem 'hiredis'
|
1120
1291
|
gem 'http'
|
1292
|
+
gem 'httpclient'
|
1293
|
+
gem 'makara'
|
1121
1294
|
gem 'mongo', '>= 2.8.0'
|
1122
|
-
gem 'mysql2', '<
|
1295
|
+
gem 'mysql2', '< 1', platform: :ruby
|
1123
1296
|
gem 'pg', platform: :ruby
|
1124
1297
|
gem 'presto-client', '>= 0.5.14'
|
1298
|
+
gem 'qless'
|
1125
1299
|
gem 'racecar', '>= 0.3.5'
|
1126
1300
|
gem 'rack'
|
1127
1301
|
gem 'rack-test'
|
@@ -1145,5 +1319,101 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
|
|
1145
1319
|
appraise 'contrib-old' do
|
1146
1320
|
gem 'faraday', '0.17'
|
1147
1321
|
end
|
1322
|
+
|
1323
|
+
appraise 'core-old' do
|
1324
|
+
gem 'dogstatsd-ruby', '~> 4'
|
1325
|
+
end
|
1326
|
+
end
|
1327
|
+
elsif Gem::Version.new('3.0.0') <= Gem::Version.new(RUBY_VERSION)
|
1328
|
+
appraise 'rails61-mysql2' do
|
1329
|
+
gem 'rails', '~> 6.1.0'
|
1330
|
+
gem 'mysql2', '~> 0.5', platform: :ruby
|
1331
|
+
gem 'sprockets', '< 4'
|
1332
|
+
gem 'lograge', '~> 0.11'
|
1333
|
+
end
|
1334
|
+
|
1335
|
+
appraise 'rails61-postgres' do
|
1336
|
+
gem 'rails', '~> 6.1.0'
|
1337
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1338
|
+
gem 'sprockets', '< 4'
|
1339
|
+
gem 'lograge', '~> 0.11'
|
1340
|
+
end
|
1341
|
+
|
1342
|
+
appraise 'rails61-postgres-redis' do
|
1343
|
+
gem 'rails', '~> 6.1.0'
|
1344
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1345
|
+
gem 'redis', '>= 4.2.5'
|
1346
|
+
gem 'sprockets', '< 4'
|
1347
|
+
gem 'lograge', '~> 0.11'
|
1348
|
+
end
|
1349
|
+
|
1350
|
+
appraise 'rails61-postgres-sidekiq' do
|
1351
|
+
gem 'rails', '~> 6.1.0'
|
1352
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1353
|
+
gem 'sidekiq', '>= 6.1.2'
|
1354
|
+
gem 'sprockets', '< 4'
|
1355
|
+
gem 'lograge', '~> 0.11'
|
1356
|
+
end
|
1357
|
+
|
1358
|
+
appraise 'resque2-redis3' do
|
1359
|
+
gem 'redis', '< 4.0'
|
1360
|
+
gem 'resque', '>= 2.0'
|
1361
|
+
end
|
1362
|
+
|
1363
|
+
appraise 'resque2-redis4' do
|
1364
|
+
gem 'redis', '>= 4.0'
|
1365
|
+
gem 'resque', '>= 2.0'
|
1366
|
+
end
|
1367
|
+
|
1368
|
+
(3..5).each { |v| gem_cucumber(v) }
|
1369
|
+
|
1370
|
+
appraise 'contrib' do
|
1371
|
+
gem 'actionpack'
|
1372
|
+
gem 'actionview'
|
1373
|
+
gem 'active_model_serializers', '>= 0.10.0'
|
1374
|
+
gem 'activerecord'
|
1375
|
+
gem 'aws-sdk'
|
1376
|
+
gem 'concurrent-ruby'
|
1377
|
+
gem 'cucumber'
|
1378
|
+
gem 'dalli'
|
1379
|
+
gem 'delayed_job'
|
1380
|
+
gem 'delayed_job_active_record'
|
1381
|
+
gem 'elasticsearch-transport'
|
1382
|
+
gem 'ethon'
|
1383
|
+
gem 'excon'
|
1384
|
+
gem 'grape'
|
1385
|
+
gem 'graphql', '>= 1.12.0'
|
1386
|
+
# gem 'grpc' # Pending 3.0 support by transient protobuf dependency https://github.com/protocolbuffers/protobuf/issues/7922
|
1387
|
+
gem 'hiredis'
|
1388
|
+
gem 'http'
|
1389
|
+
gem 'httpclient'
|
1390
|
+
gem 'makara', '>= 0.6.0.pre' # Ruby 3 requires >= 0.6.0, which is currently in pre-release: https://rubygems.org/gems/makara/versions
|
1391
|
+
gem 'mongo', '>= 2.8.0'
|
1392
|
+
gem 'mysql2', '>= 0.5.3', platform: :ruby
|
1393
|
+
gem 'pg', '>= 1.1', platform: :ruby
|
1394
|
+
gem 'presto-client', '>= 0.5.14'
|
1395
|
+
gem 'qless'
|
1396
|
+
# gem 'racecar', '>= 0.3.5' # Pending release of our fix: https://github.com/appsignal/rdkafka-ruby/pull/144
|
1397
|
+
gem 'rack'
|
1398
|
+
gem 'rack-test'
|
1399
|
+
gem 'rake', '>= 12.3'
|
1400
|
+
gem 'redis', '< 4.0'
|
1401
|
+
gem 'rest-client'
|
1402
|
+
gem 'resque'
|
1403
|
+
gem 'ruby-kafka', '>= 0.7.10'
|
1404
|
+
gem 'rspec', '>= 3.0.0'
|
1405
|
+
gem 'sequel'
|
1406
|
+
gem 'shoryuken'
|
1407
|
+
gem 'sidekiq'
|
1408
|
+
gem 'sinatra'
|
1409
|
+
gem 'sneakers', '>= 2.12.0'
|
1410
|
+
gem 'sqlite3', '>= 1.4.2'
|
1411
|
+
gem 'sucker_punch'
|
1412
|
+
gem 'typhoeus'
|
1413
|
+
gem 'que', '>= 1.0.0.beta2'
|
1414
|
+
end
|
1415
|
+
|
1416
|
+
appraise 'core-old' do
|
1417
|
+
gem 'dogstatsd-ruby', '~> 4'
|
1148
1418
|
end
|
1149
1419
|
end
|