ddtrace 0.46.0 → 0.47.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +52 -12
  3. data/.circleci/images/primary/{Dockerfile-jruby-9.2 → Dockerfile-jruby-9.2-latest} +2 -1
  4. data/.circleci/images/primary/Dockerfile-jruby-9.2.0.0 +73 -0
  5. data/.circleci/images/primary/Dockerfile-truffleruby-21.0.0 +73 -0
  6. data/.github/workflows/create-next-milestone.yml +2 -2
  7. data/.rubocop_todo.yml +3 -2
  8. data/.simplecov +6 -0
  9. data/Appraisals +1 -1
  10. data/CHANGELOG.md +83 -1
  11. data/Gemfile +19 -4
  12. data/LICENSE-3rdparty.csv +2 -0
  13. data/docker-compose.yml +75 -7
  14. data/docs/GettingStarted.md +61 -8
  15. data/lib/ddtrace/configuration.rb +92 -23
  16. data/lib/ddtrace/configuration/options.rb +2 -4
  17. data/lib/ddtrace/context_provider.rb +0 -2
  18. data/lib/ddtrace/contrib/active_record/configuration/resolver.rb +97 -26
  19. data/lib/ddtrace/contrib/aws/services.rb +1 -0
  20. data/lib/ddtrace/contrib/configurable.rb +63 -39
  21. data/lib/ddtrace/contrib/configuration/resolver.rb +70 -5
  22. data/lib/ddtrace/contrib/configuration/resolvers/pattern_resolver.rb +19 -17
  23. data/lib/ddtrace/contrib/configuration/settings.rb +7 -6
  24. data/lib/ddtrace/contrib/elasticsearch/patcher.rb +1 -0
  25. data/lib/ddtrace/contrib/extensions.rb +26 -3
  26. data/lib/ddtrace/contrib/httpclient/instrumentation.rb +12 -16
  27. data/lib/ddtrace/contrib/httpclient/patcher.rb +5 -2
  28. data/lib/ddtrace/contrib/httprb/instrumentation.rb +12 -17
  29. data/lib/ddtrace/contrib/httprb/patcher.rb +5 -2
  30. data/lib/ddtrace/contrib/patcher.rb +8 -5
  31. data/lib/ddtrace/contrib/presto/patcher.rb +5 -2
  32. data/lib/ddtrace/contrib/rails/patcher.rb +6 -2
  33. data/lib/ddtrace/contrib/redis/configuration/resolver.rb +11 -4
  34. data/lib/ddtrace/contrib/resque/integration.rb +1 -1
  35. data/lib/ddtrace/ext/runtime.rb +2 -0
  36. data/lib/ddtrace/patcher.rb +23 -1
  37. data/lib/ddtrace/pin.rb +5 -9
  38. data/lib/ddtrace/runtime/cgroup.rb +1 -1
  39. data/lib/ddtrace/runtime/container.rb +25 -27
  40. data/lib/ddtrace/runtime/identity.rb +8 -0
  41. data/lib/ddtrace/sync_writer.rb +5 -2
  42. data/lib/ddtrace/tracer.rb +6 -4
  43. data/lib/ddtrace/transport/http.rb +14 -5
  44. data/lib/ddtrace/transport/http/adapters/net.rb +18 -4
  45. data/lib/ddtrace/transport/http/builder.rb +5 -1
  46. data/lib/ddtrace/transport/http/env.rb +8 -0
  47. data/lib/ddtrace/transport/io/response.rb +1 -3
  48. data/lib/ddtrace/transport/io/traces.rb +6 -0
  49. data/lib/ddtrace/transport/traces.rb +15 -1
  50. data/lib/ddtrace/utils/compression.rb +27 -0
  51. data/lib/ddtrace/utils/object_set.rb +41 -0
  52. data/lib/ddtrace/utils/only_once.rb +40 -0
  53. data/lib/ddtrace/utils/sequence.rb +17 -0
  54. data/lib/ddtrace/utils/string_table.rb +45 -0
  55. data/lib/ddtrace/utils/time.rb +7 -0
  56. data/lib/ddtrace/vendor/multipart-post/LICENSE +11 -0
  57. data/lib/ddtrace/vendor/multipart-post/multipart.rb +12 -0
  58. data/lib/ddtrace/vendor/multipart-post/multipart/post.rb +8 -0
  59. data/lib/ddtrace/vendor/multipart-post/multipart/post/composite_read_io.rb +116 -0
  60. data/lib/ddtrace/vendor/multipart-post/multipart/post/multipartable.rb +57 -0
  61. data/lib/ddtrace/vendor/multipart-post/multipart/post/parts.rb +135 -0
  62. data/lib/ddtrace/vendor/multipart-post/multipart/post/version.rb +9 -0
  63. data/lib/ddtrace/vendor/multipart-post/net/http/post/multipart.rb +32 -0
  64. data/lib/ddtrace/version.rb +1 -1
  65. data/lib/ddtrace/workers/async.rb +3 -3
  66. data/lib/ddtrace/workers/loop.rb +14 -3
  67. data/lib/ddtrace/workers/queue.rb +1 -0
  68. data/lib/ddtrace/workers/trace_writer.rb +1 -0
  69. data/lib/ddtrace/writer.rb +4 -1
  70. metadata +21 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 765c02ea39ee5565a83c8b818f27c7dae9c4bc1a0f0dfeed188484e726b80d8a
4
- data.tar.gz: 64abc2a7449f61b4f6b121a8ca3f9e4fc2a3a515842ed737d57b5441ab631300
2
+ SHA1:
3
+ metadata.gz: 9cf1ef2c94e28df64fe5d26a43c3cfb1c31cc9be
4
+ data.tar.gz: a7daf78f76f691e785946f0e3f2763b424cd6127
5
5
  SHA512:
6
- metadata.gz: 3b4b88acb48e5a1cf9b6f52280d06ecc8d1ab0b1ba3e09c1649d4b5e42a2d2fac9056be0d4c339c4fac3bc944401b2e142a6f4f99f01e16d6c3f9f52cce6b305
7
- data.tar.gz: 5564b83b67f0b0ae9df7b93f038b4e25fe53de21aea237695b0522e6af06eb22cd957444ab8d05c7d9b4a597676ece5fa6da7cb9a5080a0f372056b6927d1596
6
+ metadata.gz: 3d4f7408c4ef0b587c3a078cb29b5165a43cbb03bb204b72d04a989de1567cd0ff9ae8c7c0649f6269a531a4041c156970fc0470c7f124b208f7a98435c942e8
7
+ data.tar.gz: a8e0484124bc54ef8c69e3af13f6f06e8b0070223a6316922e38d2df2d97004d306f3d205babfdfe876dad6f76c69ccfba77ffc5de58c7bb6fc441856f85df60
data/.circleci/config.yml CHANGED
@@ -21,6 +21,10 @@ test_containers:
21
21
  description: Jit enabled?
22
22
  type: boolean
23
23
  default: false
24
+ resource_class_to_use:
25
+ description: Resource class to use
26
+ type: string
27
+ default: medium
24
28
  - &container_base_environment
25
29
  BUNDLE_GEMFILE: /app/Gemfile
26
30
  JRUBY_OPTS: --dev # Faster JVM startup: https://github.com/jruby/jruby/wiki/Improving-startup-time#use-the---dev-flag
@@ -46,7 +50,8 @@ test_containers:
46
50
  - POSTGRES_DB=postgres
47
51
  - &postgres_port 5432
48
52
  - &container_presto
49
- image: prestosql/presto
53
+ # Move to trinodb/trino after https://github.com/treasure-data/presto-client-ruby/issues/64 is resolved.
54
+ image: starburstdata/presto:332-e.9
50
55
  - &presto_port 8080
51
56
  - &container_mysql
52
57
  image: mysql:5.6
@@ -133,6 +138,7 @@ orbs:
133
138
  jobs:
134
139
  build:
135
140
  <<: *test_job_default
141
+ resource_class: <<parameters.resource_class_to_use>>
136
142
  steps:
137
143
  - checkout
138
144
  - restore_cache:
@@ -434,10 +440,20 @@ job_configuration:
434
440
  image: marcotc/docker-library:ddtrace_rb_3.0.0
435
441
  jit: true
436
442
  # JRuby
437
- - &config-jruby-9_2
443
+ - &config-jruby-9_2_0_0 # Oldest supported version
444
+ <<: *filters_all_branches_and_tags
445
+ ruby_version: 'jruby-9.2.0.0'
446
+ image: marcotc/docker-library:ddtrace_rb_jruby_9_2_0_0
447
+ - &config-jruby-9_2-latest # More recent release of 9.2
448
+ <<: *filters_all_branches_and_tags
449
+ ruby_version: 'jruby-9.2-latest'
450
+ image: marcotc/docker-library:ddtrace_rb_jruby_9_2_11_1
451
+ # TruffleRuby
452
+ - &config-truffleruby-21_0_0
438
453
  <<: *filters_all_branches_and_tags
439
- ruby_version: 'jruby-9.2'
440
- image: marcotc/docker-library:ddtrace_rb_jruby_9_2
454
+ ruby_version: 'truffleruby-21.0.0'
455
+ image: ivoanjo/docker-library:ddtrace_rb_truffleruby_21_0_0
456
+ resource_class_to_use: large
441
457
 
442
458
  workflows:
443
459
  version: 2
@@ -461,7 +477,9 @@ workflows:
461
477
  - test-2.6
462
478
  - test-2.7
463
479
  - test-3.0
464
- - test-jruby-9.2
480
+ - test-jruby-9.2.0.0
481
+ - test-jruby-9.2-latest
482
+ # soon™️ - test-truffleruby-21.0.0
465
483
  - orb/changelog:
466
484
  <<: *config-2_7
467
485
  name: changelog
@@ -605,13 +623,31 @@ workflows:
605
623
  - build-3.0-jit
606
624
  # JRuby
607
625
  - orb/build:
608
- <<: *config-jruby-9_2
609
- name: build-jruby-9.2
626
+ <<: *config-jruby-9_2_0_0
627
+ name: build-jruby-9.2.0.0
628
+ - orb/test:
629
+ <<: *config-jruby-9_2_0_0
630
+ name: test-jruby-9.2.0.0
631
+ requires:
632
+ - build-jruby-9.2.0.0
633
+ - orb/build:
634
+ <<: *config-jruby-9_2-latest
635
+ name: build-jruby-9.2-latest
610
636
  - orb/test:
611
- <<: *config-jruby-9_2
612
- name: test-jruby-9.2
637
+ <<: *config-jruby-9_2-latest
638
+ name: test-jruby-9.2-latest
613
639
  requires:
614
- - build-jruby-9.2
640
+ - build-jruby-9.2-latest
641
+ # TruffleRuby
642
+ # soon™️
643
+ # - orb/build:
644
+ # <<: *config-truffleruby-21_0_0
645
+ # name: build-truffleruby-21.0.0
646
+ # - orb/test:
647
+ # <<: *config-truffleruby-21_0_0
648
+ # name: test-truffleruby-21.0.0
649
+ # requires:
650
+ # - build-truffleruby-21.0.0
615
651
  # Release jobs
616
652
  - "deploy prerelease Gem":
617
653
  <<: *filters_all_branches_and_tags
@@ -627,7 +663,9 @@ workflows:
627
663
  - test-2.7
628
664
  - test-3.0
629
665
  - test-3.0-jit
630
- - test-jruby-9.2
666
+ - test-jruby-9.2.0.0
667
+ - test-jruby-9.2-latest
668
+ # soon™️ - test-truffleruby-21.0.0
631
669
  - "deploy release":
632
670
  <<: *filters_only_release_tags
633
671
  requires:
@@ -642,4 +680,6 @@ workflows:
642
680
  - test-2.7
643
681
  - test-3.0
644
682
  - test-3.0-jit
645
- - test-jruby-9.2
683
+ - test-jruby-9.2.0.0
684
+ - test-jruby-9.2-latest
685
+ # soon™️ - test-truffleruby-21.0.0
@@ -16,7 +16,8 @@ RUN set -ex; \
16
16
  locales sudo openssh-client ca-certificates tar gzip parallel \
17
17
  net-tools netcat unzip zip bzip2 gnupg curl wget \
18
18
  tzdata rsync vim \
19
- build-essential; \
19
+ build-essential \
20
+ shared-mime-info; \
20
21
  rm -rf /var/lib/apt/lists/*;
21
22
 
22
23
  # Set timezone to UTC by default
@@ -0,0 +1,73 @@
1
+ # Current version: https://github.com/cpuguy83/docker-jruby/blob/db08637839406420a254a9c825d94994cded5021/9000/jre/Dockerfile
2
+ FROM jruby:9.2.0.0
3
+
4
+ # Make apt non-interactive
5
+ RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
6
+ && echo 'DPkg::Options "--force-confnew";' >> /etc/apt/apt.conf.d/90circleci
7
+
8
+ ENV DEBIAN_FRONTEND=noninteractive
9
+
10
+ # Install required packages
11
+ RUN set -ex; \
12
+ apt-get update; \
13
+ mkdir -p /usr/share/man/man1; \
14
+ apt-get install -y --no-install-recommends \
15
+ git mercurial xvfb \
16
+ locales sudo openssh-client ca-certificates tar gzip parallel \
17
+ net-tools netcat unzip zip bzip2 gnupg curl wget \
18
+ tzdata rsync vim \
19
+ build-essential; \
20
+ rm -rf /var/lib/apt/lists/*;
21
+
22
+ # Set timezone to UTC by default
23
+ RUN ln -sf /usr/share/zoneinfo/Etc/UTC /etc/localtime
24
+
25
+ # Set language
26
+ RUN locale-gen en_US.UTF-8
27
+ ENV LANG en_US.UTF-8
28
+ ENV LANGUAGE en_US:en
29
+
30
+ # Install jq
31
+ RUN JQ_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/jq-latest" \
32
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/jq $JQ_URL \
33
+ && chmod +x /usr/bin/jq \
34
+ && jq --version
35
+
36
+ # Install Docker
37
+ RUN set -ex \
38
+ && export DOCKER_VERSION=$(curl --silent --fail --retry 3 https://download.docker.com/linux/static/stable/x86_64/ | grep -o -e 'docker-[.0-9]*-ce\.tgz' | sort -r | head -n 1) \
39
+ && DOCKER_URL="https://download.docker.com/linux/static/stable/x86_64/${DOCKER_VERSION}" \
40
+ && echo Docker URL: $DOCKER_URL \
41
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/docker.tgz "${DOCKER_URL}" \
42
+ && ls -lha /tmp/docker.tgz \
43
+ && tar -xz -C /tmp -f /tmp/docker.tgz \
44
+ && mv /tmp/docker/* /usr/bin \
45
+ && rm -rf /tmp/docker /tmp/docker.tgz \
46
+ && which docker \
47
+ && (docker version || true)
48
+
49
+ # Install Docker Compose
50
+ RUN COMPOSE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/docker-compose-latest" \
51
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/docker-compose $COMPOSE_URL \
52
+ && chmod +x /usr/bin/docker-compose \
53
+ && docker-compose version
54
+
55
+ # Install Dockerize
56
+ RUN DOCKERIZE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/dockerize-latest.tar.gz" \
57
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/dockerize-linux-amd64.tar.gz $DOCKERIZE_URL \
58
+ && tar -C /usr/local/bin -xzvf /tmp/dockerize-linux-amd64.tar.gz \
59
+ && rm -rf /tmp/dockerize-linux-amd64.tar.gz \
60
+ && dockerize --version
61
+
62
+ # Install RubyGems
63
+ RUN gem update --system
64
+ RUN mkdir -p "$GEM_HOME" && chmod -R 777 "$GEM_HOME"
65
+ ENV BUNDLE_SILENCE_ROOT_WARNING 1
66
+
67
+ # Ensure JRuby is available when running "bash --login"
68
+ RUN echo "export PATH=/opt/jruby/bin:$BUNDLE_BIN:\$PATH" >> ~/.profile
69
+
70
+ RUN mkdir /app
71
+ WORKDIR /app
72
+
73
+ CMD ["bin", "bash", "--login"]
@@ -0,0 +1,73 @@
1
+ FROM flavorjones/truffleruby:21.0.0-buster
2
+
3
+ # Make apt non-interactive
4
+ RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
5
+ && echo 'DPkg::Options "--force-confnew";' >> /etc/apt/apt.conf.d/90circleci
6
+
7
+ ENV DEBIAN_FRONTEND=noninteractive
8
+
9
+ # Install required packages
10
+ RUN set -ex; \
11
+ apt-get update; \
12
+ mkdir -p /usr/share/man/man1; \
13
+ apt-get install -y --no-install-recommends \
14
+ git mercurial xvfb \
15
+ locales sudo openssh-client ca-certificates tar gzip parallel \
16
+ net-tools netcat unzip zip bzip2 gnupg curl wget \
17
+ tzdata rsync vim; \
18
+ rm -rf /var/lib/apt/lists/*;
19
+
20
+ # Set timezone to UTC by default
21
+ RUN ln -sf /usr/share/zoneinfo/Etc/UTC /etc/localtime
22
+
23
+ # Set language
24
+ RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen
25
+ RUN locale-gen en_US.UTF-8
26
+ ENV LANG en_US.UTF-8
27
+ ENV LANGUAGE en_US:en
28
+
29
+ # Install jq
30
+ RUN JQ_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/jq-latest" \
31
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/jq $JQ_URL \
32
+ && chmod +x /usr/bin/jq \
33
+ && jq --version
34
+
35
+ # Install Docker
36
+ RUN set -ex \
37
+ && export DOCKER_VERSION=$(curl --silent --fail --retry 3 https://download.docker.com/linux/static/stable/x86_64/ | grep -o -e 'docker-[.0-9]*-ce\.tgz' | sort -r | head -n 1) \
38
+ && DOCKER_URL="https://download.docker.com/linux/static/stable/x86_64/${DOCKER_VERSION}" \
39
+ && echo Docker URL: $DOCKER_URL \
40
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/docker.tgz "${DOCKER_URL}" \
41
+ && ls -lha /tmp/docker.tgz \
42
+ && tar -xz -C /tmp -f /tmp/docker.tgz \
43
+ && mv /tmp/docker/* /usr/bin \
44
+ && rm -rf /tmp/docker /tmp/docker.tgz \
45
+ && which docker \
46
+ && (docker version || true)
47
+
48
+ # Install Docker Compose
49
+ RUN COMPOSE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/docker-compose-latest" \
50
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/docker-compose $COMPOSE_URL \
51
+ && chmod +x /usr/bin/docker-compose \
52
+ && docker-compose version
53
+
54
+ # Install Dockerize
55
+ RUN DOCKERIZE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/dockerize-latest.tar.gz" \
56
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/dockerize-linux-amd64.tar.gz $DOCKERIZE_URL \
57
+ && tar -C /usr/local/bin -xzvf /tmp/dockerize-linux-amd64.tar.gz \
58
+ && rm -rf /tmp/dockerize-linux-amd64.tar.gz \
59
+ && dockerize --version
60
+
61
+ # Install RubyGems
62
+ RUN gem update --system
63
+ RUN mkdir -p "$GEM_HOME" && chmod -R 777 "$GEM_HOME"
64
+
65
+ # Upgrade RubyGems and Bundler
66
+ RUN gem update --system
67
+ RUN gem install bundler
68
+ ENV BUNDLE_SILENCE_ROOT_WARNING 1
69
+
70
+ RUN mkdir /app
71
+ WORKDIR /app
72
+
73
+ CMD ["/bin/sh"]
@@ -9,11 +9,11 @@ jobs:
9
9
  steps:
10
10
  - name: Get next minor version
11
11
  id: semvers
12
- uses: WyriHaximus/github-action-next-semvers@0.1.0
12
+ uses: WyriHaximus/github-action-next-semvers@b135abb108d66990a85e18623d906404f4350ce4
13
13
  with:
14
14
  version: ${{ github.event.milestone.title }}
15
15
  - name: Create next milestone
16
- uses: WyriHaximus/github-action-create-milestone@0.1.0
16
+ uses: WyriHaximus/github-action-create-milestone@ab85332e3150ec018daf497a0f761fe69d52bc7d
17
17
  with:
18
18
  title: ${{ steps.semvers.outputs.minor }}
19
19
  env:
data/.rubocop_todo.yml CHANGED
@@ -86,10 +86,9 @@ Lint/MissingCopEnableDirective:
86
86
  - 'test/contrib/rails/errors_test.rb'
87
87
  - 'test/tracer_test.rb'
88
88
 
89
- # Offense count: 25
89
+ # Offense count: 24
90
90
  Lint/MissingSuper:
91
91
  Exclude:
92
- - 'lib/ddtrace/contrib/active_record/configuration/resolver.rb'
93
92
  - 'lib/ddtrace/contrib/grpc/datadog_interceptor.rb'
94
93
  - 'lib/ddtrace/opentracer/scope.rb'
95
94
  - 'lib/ddtrace/opentracer/span.rb'
@@ -371,6 +370,8 @@ RSpec/VerifiedDoubles:
371
370
  - 'spec/ddtrace/transport/io/traces_spec.rb'
372
371
  - 'spec/ddtrace/transport/parcel_spec.rb'
373
372
  - 'spec/ddtrace/transport/traces_spec.rb'
373
+ - 'spec/ddtrace/utils/object_set_spec.rb'
374
+ - 'spec/ddtrace/utils/string_table_spec.rb'
374
375
  - 'spec/ddtrace/worker_spec.rb'
375
376
  - 'spec/ddtrace/workers/async_spec.rb'
376
377
  - 'spec/ddtrace/workers/loop_spec.rb'
data/.simplecov CHANGED
@@ -1,3 +1,9 @@
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/'
data/Appraisals CHANGED
@@ -901,7 +901,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
901
901
  gem 'pg', platform: :ruby
902
902
  gem 'activerecord-jdbcpostgresql-adapter', '>= 60.2', platform: :jruby
903
903
  gem 'presto-client', '>= 0.5.14'
904
- gem 'qless'
904
+ gem 'qless', (RUBY_PLATFORM == 'java' ? '0.10.0' : '>= 0') # Newer releases require `rusage`, which is not available for JRuby
905
905
  gem 'racecar', '>= 0.3.5'
906
906
  gem 'rack'
907
907
  gem 'rack-test'
data/CHANGELOG.md CHANGED
@@ -2,6 +2,55 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.47.0] - 2021-03-29
6
+
7
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.47.0
8
+
9
+ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.46.0...v0.47.0
10
+
11
+ ### Added
12
+
13
+ - Document support for httpx integration ([#1396][]) ([@HoneyryderChuck][])
14
+ - Schemas to list of supported AWS services ([#1415][]) ([@tomgi][])
15
+ - Branch test coverage report ([#1343][])
16
+
17
+ ### Changed
18
+
19
+ - **BREAKING** Separate Resolver configuration and resolution steps ([#1319][])
20
+
21
+ ### ActiveRecord `describes` configuration now supports partial matching
22
+
23
+ Partial matching of connection fields (adapter, username, host, port, database) is now allowed. Previously, only an exact match of connections fields would be considered matching. This should help greatly simplify database configuration matching, as you will only need to provide enough fields to correctly separate your distinct database connections.
24
+
25
+ If you have a `c.use active_record, describe:` statement in your application that is currently not matching any connections, you might start seeing them match after this release.
26
+
27
+ `c.use active_record, describe:` statements that are currently matching a connection will continue to match that same connection.
28
+
29
+ You can refer to the [expanded ActiveSupport documentation for details on how to use the new partial matchers and configuration code examples](https://github.com/DataDog/dd-trace-rb/blob/0794be4cd455caf32e7a9c8f79d80a4b77c4087a/docs/GettingStarted.md#active-record).
30
+
31
+ ### `Datadog::Contrib::Configuration::Resolver` interface changed
32
+
33
+ The interface for `Datadog::Contrib::Configuration::Resolver` has changed: custom configuration resolvers that inherit from ``Datadog::Contrib::Configuration::Resolver`` will need be changed to fulfill the new interface. See [code documentation for `Datadog::Contrib::Configuration::Resolver` for specific API requirements](https://github.com/DataDog/dd-trace-rb/blob/0794be4cd455caf32e7a9c8f79d80a4b77c4087a/lib/ddtrace/contrib/configuration/resolver.rb).
34
+
35
+
36
+ - Remove type check from ThreadLocalContext#local. ([#1399][]) ([@orekyuu][])
37
+
38
+ ### Fixed
39
+
40
+ - Support for JRuby 9.2.0.0 ([#1409][])
41
+ - Failed integration message ([#1394][]) ([@e1senh0rn][])
42
+ - Addressed "warning: instance variable [@components][] not initialized" ([#1419][])
43
+ - Close /proc/self/cgroup file after reading ([#1414][])
44
+ - Improve internal "only once" behavior across the tracer ([#1398][])
45
+ - Increase thread-safety during tracer initialization ([#1418][])
46
+
47
+ ### Refactored
48
+
49
+ - Use MINIMUM_VERSION in resque compatible? check ([#1426][]) ([@mriddle][])
50
+ - Lint fixes for Rubocop 1.12.0 release ([#1430][])
51
+ - Internal tracer improvements ([#1403][])
52
+ - Improvements to test suite & CI ([#1334][], [#1379][], [#1393][], [#1406][], [#1408][], [#1412][], [#1417][], [#1420][], [#1422][], [#1427][], [#1428][], [#1431][], [#1432][])
53
+
5
54
  ## [0.46.0] - 2021-03-03
6
55
 
7
56
  Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.46.0
@@ -1583,7 +1632,8 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
1583
1632
 
1584
1633
  Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
1585
1634
 
1586
- [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.46.0...master
1635
+ [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.47.0...master
1636
+ [0.47.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.46.0...v0.47.0
1587
1637
  [0.46.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.45.0...v0.46.0
1588
1638
  [0.45.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.44.0...v0.45.0
1589
1639
  [0.44.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.43.0...v0.44.0
@@ -2192,6 +2242,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2192
2242
  [#1311]: https://github.com/DataDog/dd-trace-rb/issues/1311
2193
2243
  [#1317]: https://github.com/DataDog/dd-trace-rb/issues/1317
2194
2244
  [#1318]: https://github.com/DataDog/dd-trace-rb/issues/1318
2245
+ [#1319]: https://github.com/DataDog/dd-trace-rb/issues/1319
2195
2246
  [#1320]: https://github.com/DataDog/dd-trace-rb/issues/1320
2196
2247
  [#1321]: https://github.com/DataDog/dd-trace-rb/issues/1321
2197
2248
  [#1323]: https://github.com/DataDog/dd-trace-rb/issues/1323
@@ -2199,9 +2250,11 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2199
2250
  [#1326]: https://github.com/DataDog/dd-trace-rb/issues/1326
2200
2251
  [#1331]: https://github.com/DataDog/dd-trace-rb/issues/1331
2201
2252
  [#1332]: https://github.com/DataDog/dd-trace-rb/issues/1332
2253
+ [#1334]: https://github.com/DataDog/dd-trace-rb/issues/1334
2202
2254
  [#1336]: https://github.com/DataDog/dd-trace-rb/issues/1336
2203
2255
  [#1341]: https://github.com/DataDog/dd-trace-rb/issues/1341
2204
2256
  [#1342]: https://github.com/DataDog/dd-trace-rb/issues/1342
2257
+ [#1343]: https://github.com/DataDog/dd-trace-rb/issues/1343
2205
2258
  [#1346]: https://github.com/DataDog/dd-trace-rb/issues/1346
2206
2259
  [#1347]: https://github.com/DataDog/dd-trace-rb/issues/1347
2207
2260
  [#1350]: https://github.com/DataDog/dd-trace-rb/issues/1350
@@ -2219,14 +2272,39 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2219
2272
  [#1374]: https://github.com/DataDog/dd-trace-rb/issues/1374
2220
2273
  [#1377]: https://github.com/DataDog/dd-trace-rb/issues/1377
2221
2274
  [#1378]: https://github.com/DataDog/dd-trace-rb/issues/1378
2275
+ [#1379]: https://github.com/DataDog/dd-trace-rb/issues/1379
2222
2276
  [#1380]: https://github.com/DataDog/dd-trace-rb/issues/1380
2223
2277
  [#1381]: https://github.com/DataDog/dd-trace-rb/issues/1381
2278
+ [#1393]: https://github.com/DataDog/dd-trace-rb/issues/1393
2279
+ [#1394]: https://github.com/DataDog/dd-trace-rb/issues/1394
2280
+ [#1396]: https://github.com/DataDog/dd-trace-rb/issues/1396
2281
+ [#1398]: https://github.com/DataDog/dd-trace-rb/issues/1398
2282
+ [#1399]: https://github.com/DataDog/dd-trace-rb/issues/1399
2283
+ [#1403]: https://github.com/DataDog/dd-trace-rb/issues/1403
2284
+ [#1406]: https://github.com/DataDog/dd-trace-rb/issues/1406
2285
+ [#1408]: https://github.com/DataDog/dd-trace-rb/issues/1408
2286
+ [#1409]: https://github.com/DataDog/dd-trace-rb/issues/1409
2287
+ [#1412]: https://github.com/DataDog/dd-trace-rb/issues/1412
2288
+ [#1414]: https://github.com/DataDog/dd-trace-rb/issues/1414
2289
+ [#1415]: https://github.com/DataDog/dd-trace-rb/issues/1415
2290
+ [#1417]: https://github.com/DataDog/dd-trace-rb/issues/1417
2291
+ [#1418]: https://github.com/DataDog/dd-trace-rb/issues/1418
2292
+ [#1419]: https://github.com/DataDog/dd-trace-rb/issues/1419
2293
+ [#1420]: https://github.com/DataDog/dd-trace-rb/issues/1420
2294
+ [#1422]: https://github.com/DataDog/dd-trace-rb/issues/1422
2295
+ [#1426]: https://github.com/DataDog/dd-trace-rb/issues/1426
2296
+ [#1427]: https://github.com/DataDog/dd-trace-rb/issues/1427
2297
+ [#1428]: https://github.com/DataDog/dd-trace-rb/issues/1428
2298
+ [#1430]: https://github.com/DataDog/dd-trace-rb/issues/1430
2299
+ [#1431]: https://github.com/DataDog/dd-trace-rb/issues/1431
2300
+ [#1432]: https://github.com/DataDog/dd-trace-rb/issues/1432
2224
2301
  [@AdrianLC]: https://github.com/AdrianLC
2225
2302
  [@Azure7111]: https://github.com/Azure7111
2226
2303
  [@BabyGroot]: https://github.com/BabyGroot
2227
2304
  [@DocX]: https://github.com/DocX
2228
2305
  [@EpiFouloux]: https://github.com/EpiFouloux
2229
2306
  [@EvNomad]: https://github.com/EvNomad
2307
+ [@HoneyryderChuck]: https://github.com/HoneyryderChuck
2230
2308
  [@JamesHarker]: https://github.com/JamesHarker
2231
2309
  [@Jared-Prime]: https://github.com/Jared-Prime
2232
2310
  [@Joas1988]: https://github.com/Joas1988
@@ -2255,6 +2333,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2255
2333
  [@callumj]: https://github.com/callumj
2256
2334
  [@cjford]: https://github.com/cjford
2257
2335
  [@ck3g]: https://github.com/ck3g
2336
+ [@components]: https://github.com/components
2258
2337
  [@cswatt]: https://github.com/cswatt
2259
2338
  [@dasch]: https://github.com/dasch
2260
2339
  [@dim]: https://github.com/dim
@@ -2262,6 +2341,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2262
2341
  [@djmb]: https://github.com/djmb
2263
2342
  [@dorner]: https://github.com/dorner
2264
2343
  [@drcapulet]: https://github.com/drcapulet
2344
+ [@e1senh0rn]: https://github.com/e1senh0rn
2265
2345
  [@elyalvarado]: https://github.com/elyalvarado
2266
2346
  [@ericmustin]: https://github.com/ericmustin
2267
2347
  [@erict-square]: https://github.com/erict-square
@@ -2295,11 +2375,13 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2295
2375
  [@mdehoog]: https://github.com/mdehoog
2296
2376
  [@mdross95]: https://github.com/mdross95
2297
2377
  [@michaelkl]: https://github.com/michaelkl
2378
+ [@mriddle]: https://github.com/mriddle
2298
2379
  [@mstruve]: https://github.com/mstruve
2299
2380
  [@mustela]: https://github.com/mustela
2300
2381
  [@nic-lan]: https://github.com/nic-lan
2301
2382
  [@noma4i]: https://github.com/noma4i
2302
2383
  [@norbertnytko]: https://github.com/norbertnytko
2384
+ [@orekyuu]: https://github.com/orekyuu
2303
2385
  [@palin]: https://github.com/palin
2304
2386
  [@pj0tr]: https://github.com/pj0tr
2305
2387
  [@psycholein]: https://github.com/psycholein