libddwaf 1.22.0.0.3 → 1.22.0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2c19fe23d75114bdddac92b7d521d1903ef123461b0232bb3c9f28c29434530a
4
- data.tar.gz: 3c3b6fa07d15ab2395c46923b9d349c8bfb1ce63e5a4e67a253ddf4f21ef3362
3
+ metadata.gz: 17e1bfe908662855aac5a61cc6b5f9ef05bc44322d0dff18e891f40ccf684ccc
4
+ data.tar.gz: 73b554d3cd9557e0250ec4702ef4fb6ad642444e8895a35039727ff5fe87935b
5
5
  SHA512:
6
- metadata.gz: 0e72093531d6e213c1ed79d63079d74be047c2f23407c6bbb0dc8ad0ff722a6d9b88b424b0284014d1d333c0485b71eb6292a7b0ac0bb245778a0fa26175507f
7
- data.tar.gz: 575e14f702f979b1eb40549c8fae4ddfd3f8508c0784f2ec774944bbd2c8091cca5b769767a1e6961e0fecad3a5e5bed54f7cad2a0a07de048138b49e247d0cf
6
+ metadata.gz: f5a20e693fed0549315aed276f4c1d38708ab72f87c0a96ecad46b24aad291259fc3d42950627f1304da5979233b72599b9066fae7202c1bc2a6a4868f3a3b6c
7
+ data.tar.gz: 887bf54e294f45916d93bb34bf20a0078d7f8b16af0618f270c570072e8d964f49dbe0122e733652c071ea0907b563e0a419c45359fb85add32b5b0f0fbd1c4a
@@ -105,6 +105,9 @@ module Datadog
105
105
  end
106
106
 
107
107
  def self.shared_lib_path
108
+ variant = "#{Datadog::AppSec::WAF::VERSION::BASE_STRING}-#{local_os}-#{local_cpu}"
109
+ libddwaf_dir = File.join(source_dir, "../../../../vendor/libddwaf/libddwaf-#{variant}")
110
+
108
111
  File.join(libddwaf_dir, 'lib', "libddwaf#{shared_lib_extname}")
109
112
  end
110
113
 
@@ -5,7 +5,7 @@ module Datadog
5
5
  BASE_STRING = '1.22.0'
6
6
  # NOTE: Every change to the `BASE_STRING` should be accompanied
7
7
  # by a reset of the patch version in the `STRING` below.
8
- STRING = "#{BASE_STRING}.0.3"
8
+ STRING = "#{BASE_STRING}.0.4"
9
9
  MINIMUM_RUBY_VERSION = '2.5'
10
10
  end
11
11
  end
data/libddwaf.gemspec CHANGED
@@ -1,40 +1,43 @@
1
- # coding: utf-8
2
-
3
- lib = File.expand_path('../lib', __FILE__)
1
+ lib = File.expand_path("../lib", __FILE__)
4
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
- require 'datadog/appsec/waf/version'
3
+ require "datadog/appsec/waf/version"
6
4
 
7
5
  Gem::Specification.new do |spec|
8
- spec.name = 'libddwaf'
9
- spec.version = Datadog::AppSec::WAF::VERSION::STRING
6
+ spec.name = "libddwaf"
7
+ spec.version = Datadog::AppSec::WAF::VERSION::STRING
10
8
  spec.required_ruby_version = [">= #{Datadog::AppSec::WAF::VERSION::MINIMUM_RUBY_VERSION}"]
11
- spec.required_rubygems_version = '>= 2.0.0'
12
- spec.authors = ['Datadog, Inc.']
13
- spec.email = ['dev@datadoghq.com']
9
+ spec.required_rubygems_version = ">= 2.0.0"
10
+ spec.authors = ["Datadog, Inc."]
11
+ spec.email = ["dev@datadoghq.com"]
14
12
 
15
- spec.summary = 'Datadog WAF'
16
- spec.description = <<-EOS.gsub(/^[\s]+/, '')
13
+ spec.summary = "Datadog WAF"
14
+ spec.description = <<-EOS.gsub(/^[\s]+/, "")
17
15
  libddwaf packages a WAF implementation in C++, exposed to Ruby
18
16
  EOS
19
17
 
20
- spec.homepage = 'https://github.com/DataDog/libddwaf-rb'
21
- spec.license = 'BSD-3-Clause'
18
+ spec.homepage = "https://github.com/DataDog/libddwaf-rb"
19
+ spec.license = "BSD-3-Clause"
22
20
 
23
21
  if spec.respond_to?(:metadata)
24
- spec.metadata['allowed_push_host'] = 'https://rubygems.org'
22
+ spec.metadata["allowed_push_host"] = "https://rubygems.org"
25
23
  else
26
- raise 'RubyGems 2.0 or newer is required to protect against public gem pushes.'
24
+ raise "RubyGems 2.0 or newer is required to protect against public gem pushes."
27
25
  end
28
26
 
29
- spec.files =
30
- `git ls-files -z`
31
- .split("\x0")
32
- .reject { |f| f.match(%r{^(spec|[.]circleci)/}) }
33
- .reject do |f|
34
- ['.dockerignore', '.env', '.rspec', '.rubocop.yml', '.rubocop_todo.yml',
35
- '.simplecov', 'Gemfile', 'Rakefile', 'docker-compose.yml'].include?(f)
36
- end
37
- spec.require_paths = ['lib']
38
-
39
- spec.add_dependency 'ffi', '~> 1.0'
27
+ libddwaf_version = Datadog::AppSec::WAF::VERSION::BASE_STRING
28
+
29
+ spec.files = ["libddwaf.gemspec"]
30
+ spec.files.concat(Dir.glob("lib/**/*.rb"))
31
+ spec.files.concat(Dir.glob("{vendor/rbs,sig}/**/*.rbs"))
32
+ spec.files.concat(Dir.glob("{README,CHANGELOG,LICENSE,NOTICE}*"))
33
+ spec.files.concat(%W[
34
+ vendor/libddwaf/libddwaf-#{libddwaf_version}-darwin-arm64/lib/libddwaf.dylib
35
+ vendor/libddwaf/libddwaf-#{libddwaf_version}-darwin-x86_64/lib/libddwaf.dylib
36
+ vendor/libddwaf/libddwaf-#{libddwaf_version}-linux-aarch64/lib/libddwaf.so
37
+ vendor/libddwaf/libddwaf-#{libddwaf_version}-linux-x86_64/lib/libddwaf.so
38
+ ])
39
+
40
+ spec.require_paths = ["lib"]
41
+
42
+ spec.add_dependency "ffi", "~> 1.0"
40
43
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: libddwaf
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.22.0.0.3
4
+ version: 1.22.0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Datadog, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-07-21 00:00:00.000000000 Z
11
+ date: 2025-07-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
@@ -33,26 +33,13 @@ executables: []
33
33
  extensions: []
34
34
  extra_rdoc_files: []
35
35
  files:
36
- - ".github/ISSUE_TEMPLATE/bug.md"
37
- - ".github/PULL_REQUEST_TEMPLATE.md"
38
- - ".github/actions/docker-build-ruby/Dockerfile"
39
- - ".github/actions/docker-build-ruby/Dockerfile.alpine"
40
- - ".github/actions/docker-build-ruby/Dockerfile.jruby"
41
- - ".github/actions/docker-build-ruby/action.yml"
42
- - ".github/workflows/lint.yml"
43
- - ".github/workflows/package.yml"
44
- - ".github/workflows/test.yml"
45
- - ".gitignore"
46
- - ".steepignore"
47
36
  - CHANGELOG.md
48
- - CONTRIBUTING.md
49
37
  - LICENSE
50
38
  - LICENSE-3rdparty.csv
51
39
  - LICENSE.Apache
52
40
  - LICENSE.BSD3
53
41
  - NOTICE
54
42
  - README.md
55
- - Steepfile
56
43
  - lib/datadog/appsec/waf.rb
57
44
  - lib/datadog/appsec/waf/context.rb
58
45
  - lib/datadog/appsec/waf/converter.rb
@@ -62,7 +49,6 @@ files:
62
49
  - lib/datadog/appsec/waf/version.rb
63
50
  - lib/libddwaf.rb
64
51
  - libddwaf.gemspec
65
- - shell.nix
66
52
  - sig/datadog/appsec/waf.rbs
67
53
  - sig/datadog/appsec/waf/context.rbs
68
54
  - sig/datadog/appsec/waf/converter.rbs
@@ -71,6 +57,10 @@ files:
71
57
  - sig/datadog/appsec/waf/result.rbs
72
58
  - sig/datadog/appsec/waf/version.rbs
73
59
  - sig/libddwaf.rbs
60
+ - vendor/libddwaf/libddwaf-1.22.0-darwin-arm64/lib/libddwaf.dylib
61
+ - vendor/libddwaf/libddwaf-1.22.0-darwin-x86_64/lib/libddwaf.dylib
62
+ - vendor/libddwaf/libddwaf-1.22.0-linux-aarch64/lib/libddwaf.so
63
+ - vendor/libddwaf/libddwaf-1.22.0-linux-x86_64/lib/libddwaf.so
74
64
  - vendor/rbs/gem/0/gem.rbs
75
65
  - vendor/rbs/jruby/0/jruby.rbs
76
66
  homepage: https://github.com/DataDog/libddwaf-rb
@@ -1,32 +0,0 @@
1
- ---
2
- name: Bug report
3
- about: File a bug report
4
- title: ''
5
- labels: bug
6
- assignees: ''
7
-
8
- ---
9
-
10
- **Current behaviour**
11
- <!-- What is be happening. -->
12
-
13
- **Expected behaviour**
14
- <!-- What should be happening. -->
15
-
16
- **Steps to reproduce**
17
- <!--
18
- How can we reproduce this issue in order to diagnose it?
19
- Code snippets, log messages, screenshots and sample apps are encouraged!
20
- -->
21
-
22
- **How does `libddwaf` help you?**
23
- <!-- Optionally, tell us why and how you're using ddtrace, and what your overall experience with it is! -->
24
-
25
- **Environment**
26
-
27
- * **libddwaf version:**
28
- * **libddwaf gem platform:**
29
- * **Ruby version:**
30
- * **Ruby platform:**
31
- * **Operating system:**
32
-
@@ -1,17 +0,0 @@
1
- **What does this PR do?**
2
- <!-- A brief description of the change being made with this pull request. -->
3
-
4
- **Motivation**
5
- <!-- What inspired you to submit this pull request? -->
6
-
7
- **Additional Notes**
8
- <!-- Anything else we should know when reviewing? -->
9
-
10
- **How to test the change?**
11
- <!--
12
- Describe here how the change can be validated.
13
- You are strongly encouraged to provide automated tests for this PR.
14
- If this change cannot be feasibly tested, please explain why,
15
- unless the change does not modify code (e.g. only modifies docs, comments).
16
- -->
17
-
@@ -1,5 +0,0 @@
1
- ARG RUBY_VERSION
2
-
3
- FROM ruby:${RUBY_VERSION:-2.5}
4
-
5
- RUN gem update --system 3.3.27
@@ -1,7 +0,0 @@
1
- ARG RUBY_VERSION
2
-
3
- FROM ruby:${RUBY_VERSION:-2.5}-alpine
4
-
5
- RUN apk add --no-cache build-base git
6
-
7
- RUN gem update --system 3.3.27
@@ -1,6 +0,0 @@
1
- ARG RUBY_VERSION
2
-
3
- FROM jruby:${RUBY_VERSION:-9.2}
4
-
5
- RUN apt-get update
6
- RUN apt-get install -y build-essential git
@@ -1,46 +0,0 @@
1
- name: Build docker image
2
- description:
3
- This action builds the image for the specified ruby version and libc.
4
-
5
- inputs:
6
- ruby-version:
7
- description: Ruby version
8
- required: true
9
-
10
- libc:
11
- description: Which libc is used
12
- required: true
13
-
14
- jruby:
15
- description: Whether to use JRuby
16
- required: false
17
- default: "false"
18
-
19
- outputs:
20
- run-cmd:
21
- description: Command to run the container
22
- value: ${{ steps.set-run-cmd.outputs.run-cmd }}
23
-
24
- runs:
25
- using: "composite"
26
- steps:
27
- - name: Set up Docker Buildx
28
- uses: docker/setup-buildx-action@v3
29
-
30
- - name: Build image
31
- uses: docker/build-push-action@v6
32
- with:
33
- file: .github/actions/docker-build-ruby/Dockerfile${{ inputs.libc == 'musl' && '.alpine' || '' }}${{ inputs.jruby == 'true' && '.jruby' || '' }}
34
- build-args: |
35
- "RUBY_VERSION=${{ inputs.ruby-version }}"
36
- push: false
37
- load: true
38
- tags: libddwaf-rb-test:latest
39
- cache-from: type=gha
40
- cache-to: type=gha,mode=max
41
-
42
- - name: Set run-cmd output
43
- id: set-run-cmd
44
- shell: bash
45
- run: |
46
- echo "run-cmd=docker run -v gems:/usr/local/bundle -v ${{ github.workspace }}:/libddwaf-rb -w /libddwaf-rb libddwaf-rb-test:latest" >> "$GITHUB_OUTPUT"
@@ -1,34 +0,0 @@
1
- name: Lint
2
- on:
3
- - push
4
-
5
- jobs:
6
- style-check:
7
- name: Style check
8
- runs-on: ubuntu-24.04
9
- container:
10
- image: ruby:3.3
11
- steps:
12
- - name: Checkout
13
- uses: actions/checkout@v2
14
-
15
- - name: Bundle
16
- run: bundle install
17
-
18
- - name: Run Rubocop
19
- run: bundle exec rubocop -D
20
-
21
- type-check:
22
- name: Type check
23
- runs-on: ubuntu-24.04
24
- container:
25
- image: ruby:3.3
26
- steps:
27
- - name: Checkout
28
- uses: actions/checkout@v2
29
-
30
- - name: Bundle
31
- run: bundle install
32
-
33
- - name: Run Steep
34
- run: bundle exec rake steep:check
@@ -1,130 +0,0 @@
1
- name: Package
2
- on:
3
- - push
4
-
5
- jobs:
6
- test-rake-build:
7
- strategy:
8
- fail-fast: false
9
- matrix:
10
- os: [ubuntu-24.04, ubuntu-24.04-arm]
11
- ruby: ["3.3"]
12
- libc: [gnu]
13
- include:
14
- - os: ubuntu-24.04
15
- platform: x86_64-linux
16
- - os: ubuntu-24.04-arm
17
- platform: aarch64-linux
18
-
19
- name: Test build without fetching libddwaf (Ruby ${{ matrix.ruby }}, ${{ matrix.os }}, ${{ matrix.libc }})
20
- runs-on: ${{ matrix.os }}
21
-
22
- steps:
23
- - name: Checkout
24
- uses: actions/checkout@v4
25
-
26
- - name: Build docker image
27
- id: build-image
28
- uses: ./.github/actions/docker-build-ruby
29
- with:
30
- ruby-version: ${{ matrix.ruby }}
31
- libc: ${{ matrix.libc }}
32
-
33
- - name: Bundle install
34
- run: ${{ steps.build-image.outputs.run-cmd }} bundle install
35
-
36
- - name: Build gem
37
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake build
38
-
39
- - name: List artifact files
40
- run: find .
41
- working-directory: pkg
42
-
43
- - name: Install gem
44
- run: ${{ steps.build-image.outputs.run-cmd }} gem install --verbose pkg/*.gem
45
-
46
- - name: Run smoke test
47
- run: ${{ steps.build-image.outputs.run-cmd }} ruby -e 'begin require "libddwaf"; rescue LoadError => e; puts e.message; else fail "loaded when it should not"; end'
48
-
49
- test-rake-binary:
50
- strategy:
51
- fail-fast: false
52
- matrix:
53
- os: [ubuntu-24.04, ubuntu-24.04-arm]
54
- ruby: ["3.3", "9.4"]
55
- libc: [gnu, musl]
56
- include:
57
- - os: ubuntu-24.04
58
- platform: x86_64-linux:llvm
59
- - os: ubuntu-24.04-arm
60
- platform: aarch64-linux:llvm
61
- - ruby: 3.3
62
- jruby: false
63
- - ruby: 9.4
64
- jruby: true
65
- exclude:
66
- - ruby: 9.4
67
- libc: musl
68
-
69
- name: Test gem build (${{ matrix.jruby == true && 'Jruby' || 'Ruby'}} ${{ matrix.ruby }}, ${{ matrix.os }}, ${{ matrix.libc }})
70
- runs-on: ${{ matrix.os }}
71
-
72
- steps:
73
- - name: Checkout
74
- uses: actions/checkout@v4
75
-
76
- - name: Build docker image
77
- id: build-image
78
- uses: ./.github/actions/docker-build-ruby
79
- with:
80
- ruby-version: ${{ matrix.ruby }}
81
- libc: ${{ matrix.libc }}
82
- jruby: ${{ matrix.jruby }}
83
-
84
- - name: Bundle install
85
- run: ${{ steps.build-image.outputs.run-cmd }} bundle install
86
-
87
- - name: Build binary gem
88
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake binary[${{ matrix.platform }}]
89
-
90
- - name: List artifact files
91
- run: find .
92
- working-directory: pkg
93
-
94
- - name: Install gem
95
- run: ${{ steps.build-image.outputs.run-cmd }} gem install --verbose pkg/*.gem
96
-
97
- - name: Run smoke test
98
- run: ${{ steps.build-image.outputs.run-cmd }} ruby -r 'libddwaf' -e 'p Datadog::AppSec::WAF::LibDDWAF.ddwaf_get_version'
99
-
100
- test-rake-binary-on-darwin:
101
- strategy:
102
- fail-fast: false
103
- matrix:
104
- os: [macos-15, macos-15-large]
105
- include:
106
- - os: macos-15
107
- platform: arm64-darwin
108
- - os: macos-15-large
109
- platform: x86_64-darwin
110
-
111
- name: Test gem build (${{ matrix.os }})
112
- runs-on: ${{ matrix.os }}
113
- env:
114
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
115
-
116
- steps:
117
- - name: Checkout
118
- uses: actions/checkout@v4
119
-
120
- - name: Bundle
121
- run: bundle install
122
-
123
- - name: Build binary gem
124
- run: bundle exec rake binary[${{ matrix.platform }}]
125
-
126
- - name: Install gem
127
- run: gem install --verbose pkg/*.gem
128
-
129
- - name: Run smoke test
130
- run: ruby -r 'libddwaf' -e 'p Datadog::AppSec::WAF::LibDDWAF.ddwaf_get_version'
@@ -1,123 +0,0 @@
1
- name: Test
2
- on:
3
- - push
4
-
5
- jobs:
6
- test-cruby-linux:
7
- strategy:
8
- fail-fast: false
9
- matrix:
10
- os: [ubuntu-24.04, ubuntu-24.04-arm]
11
- ruby: ["2.5", "2.6", "2.7", "3.0", "3.1", "3.2", "3.3", "3.4"]
12
- libc: [gnu, musl]
13
- include:
14
- - os: ubuntu-24.04
15
- platform: x86_64-linux
16
- - os: ubuntu-24.04-arm
17
- platform: aarch64-linux
18
-
19
- name: Test (Ruby ${{ matrix.ruby }}, ${{ matrix.os }}, ${{ matrix.libc }})
20
- runs-on: ${{ matrix.os }}
21
-
22
- steps:
23
- - name: Checkout
24
- uses: actions/checkout@v4
25
-
26
- - name: Build docker image
27
- id: build-image
28
- uses: ./.github/actions/docker-build-ruby
29
- with:
30
- ruby-version: ${{ matrix.ruby }}
31
- libc: ${{ matrix.libc }}
32
-
33
- - name: Bundle install
34
- run: ${{ steps.build-image.outputs.run-cmd }} bundle install
35
-
36
- - name: Fetch binary library
37
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake fetch[${{ matrix.platform }}]
38
-
39
- - name: Extract binary library
40
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake extract[${{ matrix.platform }}]
41
-
42
- - name: Run specs
43
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake spec
44
-
45
- - name: Run stress tests
46
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake spec:stress_tests
47
-
48
- test-jruby-linux:
49
- strategy:
50
- fail-fast: false
51
- matrix:
52
- os: [ubuntu-24.04, ubuntu-24.04-arm]
53
- jruby: ["9.3", "9.4"]
54
- include:
55
- - os: ubuntu-24.04
56
- platform: x86_64-linux
57
- - os: ubuntu-24.04-arm
58
- platform: aarch64-linux
59
-
60
- name: Test (Jruby ${{ matrix.jruby }}, ${{ matrix.os }})
61
- runs-on: ${{ matrix.os }}
62
-
63
- steps:
64
- - name: Checkout
65
- uses: actions/checkout@v4
66
-
67
- - name: Build docker image
68
- id: build-image
69
- uses: ./.github/actions/docker-build-ruby
70
- with:
71
- ruby-version: ${{ matrix.jruby }}
72
- jruby: true
73
- libc: gnu
74
-
75
- - name: Bundle install
76
- run: ${{ steps.build-image.outputs.run-cmd }} bundle install
77
-
78
- - name: Fetch binary library
79
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake fetch[${{ matrix.platform }}]
80
-
81
- - name: Extract binary library
82
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake extract[${{ matrix.platform }}]
83
-
84
- - name: Run specs
85
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake spec
86
-
87
- - name: Run stress tests
88
- run: ${{ steps.build-image.outputs.run-cmd }} bundle exec rake spec:stress_tests
89
-
90
- test-darwin:
91
- strategy:
92
- fail-fast: false
93
- matrix:
94
- os: [macos-15, macos-15-large]
95
- include:
96
- - os: macos-15
97
- platform: arm64-darwin
98
- - os: macos-15-large
99
- platform: x86_64-darwin
100
-
101
- name: Test (${{ matrix.os }})
102
- runs-on: ${{ matrix.os }}
103
- env:
104
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
105
-
106
- steps:
107
- - name: Checkout
108
- uses: actions/checkout@v4
109
-
110
- - name: Bundle
111
- run: bundle install
112
-
113
- - name: Fetch binary library
114
- run: bundle exec rake fetch[${{ matrix.platform }}]
115
-
116
- - name: Extract binary library
117
- run: bundle exec rake extract[${{ matrix.platform }}]
118
-
119
- - name: Run specs
120
- run: bundle exec rake spec
121
-
122
- - name: Run stress tests
123
- run: bundle exec rake spec:stress_tests
data/.gitignore DELETED
@@ -1,10 +0,0 @@
1
- /.envrc
2
- /vendor/bundle
3
- /vendor/libddwaf
4
- /pkg
5
- /tmp
6
- *.gem
7
- *.vim
8
- .ruby-version
9
- .github-token
10
- Gemfile.lock
data/.steepignore DELETED
@@ -1,4 +0,0 @@
1
- ffi/library.rbs:36:45 "Type `::FFI::DataConverter` is generic but used as a non generic type"
2
- ffi/struct.rbs:5:15 "Type application of `::FFI::Type::Mapped` doesn't satisfy the constraints"
3
- ffi/struct.rbs:23:29 "Type application of `::FFI::Type::Mapped` doesn't satisfy the constraints"
4
- ffi/auto_pointer.rbs:15:65 "Type application of `::FFI::AutoPointer::Releaser::_Proc` doesn't satisfy the constraints"
data/CONTRIBUTING.md DELETED
@@ -1,84 +0,0 @@
1
- # Contributing
2
-
3
- Community contributions to the Datadog bindings to libddwaf for Ruby are welcome! See below for some basic guidelines.
4
-
5
- ## Want to request a new feature?
6
-
7
- Many great ideas for new features come from the community, and we'd be happy to consider yours!
8
-
9
- To share your request, you can [open a Github issue](https://github.com/DataDog/libddwaf-rb/issues/new) with the details about what you'd like to see. At a minimum, please provide:
10
-
11
- - The goal of the new feature
12
- - A description of how it might be used or behave
13
- - Links to any important resources (e.g. Github repos, websites, screenshots, specifications, diagrams)
14
-
15
- Additionally, if you can, include:
16
-
17
- - A description of how it could be accomplished
18
- - Code snippets that might demonstrate its use or implementation
19
- - Screenshots or mockups that visually demonstrate the feature
20
- - Links to similar features that would serve as a good comparison
21
- - (Any other details that would be useful for implementing this feature!)
22
-
23
- Feature requests will be reviewed and discussed.
24
-
25
- ## Found a bug?
26
-
27
- For any urgent matters (such as outages) or issues concerning the Datadog service or UI, contact our support team via https://docs.datadoghq.com/help/ for direct, faster assistance.
28
-
29
- You may submit bug reports concerning the Datadog bindings to libddwaf for Ruby by [opening a Github issue](https://github.com/DataDog/libddwaf-rb/issues/new). At a minimum, please provide:
30
-
31
- - A description of the problem
32
- - Steps to reproduce
33
- - Expected behavior
34
- - Actual behavior
35
- - Errors (with stack traces) or warnings received
36
- - Any details you can share about your configuration including:
37
- - Ruby version & platform
38
- - `libddwaf` version
39
- - Versions of any other relevant gems (or a `Gemfile.lock` if available)
40
-
41
- If at all possible, also provide:
42
-
43
- - Logs from the application or other diagnostics
44
- - Screenshots, links, or other visual aids that are publicly accessible
45
- - Code sample or test that reproduces the problem
46
- - An explanation of what causes the bug and/or how it can be fixed
47
-
48
- Reports that include rich detail are better, and ones with code that reproduce the bug are best. Bug requests will be triaged and reviewed by our collaborators.
49
-
50
- ## Have a patch?
51
-
52
- We welcome code contributions to the library, which you can [submit as a pull request](https://github.com/DataDog/libddwaf-rb/pull/new/master). To create a pull request:
53
-
54
- 1. **Fork the repository** from https://github.com/DataDog/libddwaf-rb
55
- 2. **Make any changes** for your patch.
56
- 3. **Write tests** that demonstrate how the feature works or how the bug is fixed.
57
- 4. **Update any documentation** especially for new features.
58
- 5. **Submit the pull request** from your fork back to the latest revision of the `master` branch on https://github.com/DataDog/libddwaf-rb.
59
-
60
- The pull request will be run through our CI pipeline, and a project member will review the changes with you. At a minimum, to be accepted and merged, pull requests must:
61
-
62
- - Have a stated goal and detailed description of the changes made
63
- - Include thorough test coverage and documentation, where applicable
64
- - Pass all tests and code quality checks (linting/coverage) on CI
65
- - Receive at least one approval from a project member with push permissions
66
-
67
- We also recommend that you share in your description:
68
-
69
- - Any motivations or intent for the contribution
70
- - Links to any issues/pull requests it might be related to
71
- - Links to any webpages or other external resources that might be related to the change
72
- - Screenshots, code samples, or other visual aids that demonstrate the changes or how they are implemented
73
- - Benchmarks if the feature is anticipated to have performance implications
74
- - Any limitations, constraints or risks that are important to consider
75
-
76
- Pull requests will be reviewed by our collaborators.
77
-
78
- For more information on common topics such as debugging locally, or how to write new integrations, check out [our development guide](https://github.com/DataDog/libddwaf-rb/blob/master/README.md#development). If at any point you have a question or need assistance with your pull request, feel free to mention a project member! We're always happy to help contributors with their pull requests.
79
-
80
- ## Final word
81
-
82
- Many thanks to all of our contributors, and looking forward to seeing you on Github! :tada:
83
-
84
- - Datadog Ruby Team
data/Steepfile DELETED
@@ -1,21 +0,0 @@
1
- # D = Steep::Diagnostic
2
-
3
- target :lib do
4
- signature "sig"
5
-
6
- check "lib"
7
- library "logger"
8
- library "monitor" # needed by logger
9
- library "json"
10
-
11
- repo_path "vendor/rbs"
12
- library "ffi"
13
- library "jruby"
14
- library "gem"
15
-
16
- # # configure_code_diagnostics(D::Ruby.strict) # `strict` diagnostics setting
17
- # # configure_code_diagnostics(D::Ruby.lenient) # `lenient` diagnostics setting
18
- # # configure_code_diagnostics do |hash| # You can setup everything yourself
19
- # # hash[D::Ruby::NoMethod] = :information
20
- # # end
21
- end
data/shell.nix DELETED
@@ -1,35 +0,0 @@
1
- {
2
- # use the environment channel
3
- pkgs ? import <nixpkgs> {},
4
-
5
- # use a pinned package state
6
- pinned ? import(fetchTarball("https://github.com/NixOS/nixpkgs/archive/14d9b465c71.tar.gz")) {},
7
- }:
8
- let
9
- # specify ruby version to use
10
- ruby = pinned.ruby_3_1;
11
-
12
- # control llvm/clang version (e.g for packages built form source)
13
- llvm = pinned.llvmPackages_12;
14
- in llvm.stdenv.mkDerivation {
15
- # unique project name for this environment derivation
16
- name = "libddwaf-rb.devshell";
17
-
18
- buildInputs = [
19
- ruby
20
- ];
21
-
22
- shellHook = ''
23
- # get major.minor.0 ruby version
24
- export RUBY_VERSION="$(ruby -e 'puts RUBY_VERSION.gsub(/\d+$/, "0")')"
25
-
26
- # make gem install work in-project, compatibly with bundler
27
- export GEM_HOME="$(pwd)/vendor/bundle/ruby/$RUBY_VERSION"
28
-
29
- # make bundle work in-project
30
- export BUNDLE_PATH="$(pwd)/vendor/bundle"
31
-
32
- # enable calling gem scripts without bundle exec
33
- export PATH="$GEM_HOME/bin:$PATH"
34
- '';
35
- }