rack-logstasher 1.1.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0d877ce60ae84d0a7532df7b8e89c8947fc7fcb4d6bd3733894c5761bc877a7c
4
- data.tar.gz: 19b5da86c58508f8031737a65f4244ae7f1d91c4451a0587ae7559d0fa43b3d3
3
+ metadata.gz: 5a4370f7b7207d7d9fbdd41790ff2c33516eb7eae11872ebb8487c5ba14a5927
4
+ data.tar.gz: 5fc4eb96ab1fff94b08c3bf904c134d9ada78acc735a2c9e943782065d34808c
5
5
  SHA512:
6
- metadata.gz: 4607fc05644c2a62c82f326aa933f832f11f788a1ba462f5cd4aa48beb721544347d9f9ea3d2f59969769a1c2403da6fdbdfaa35da0238e9c24f6fcb951c0b00
7
- data.tar.gz: d47fe6f832f458d24e4ad6cf91d3235a93ccd5e3c311c6d16d8af3e13a64bf6abe08ee359e5c90a57d1419965e8517fd26b57c0fd1c5dab4906a99f0a66bb6fa
6
+ metadata.gz: d98b7afe5ecb8bbcbbe77e23c991532afe56329c8cd5ee0e8ab6035a1f588eb5d8559fc6683c4e0611563dad23ff7213bf332a5e022409b72b4b5537d4a1cc88
7
+ data.tar.gz: b869d0a6e1c3901d8ac5bdbab7fd255245d21b29a2c35c8eb49c15b58701cfa48fa7b1f8f80ac9c88dd31bd7b41c34e8b4608d28f4ca47cc8a64c0ee71dabdc4
@@ -0,0 +1,10 @@
1
+ on:
2
+ workflow_dispatch: {}
3
+ schedule:
4
+ - cron: '00 13 * * 2'
5
+
6
+ jobs:
7
+ autorelease:
8
+ uses: alphagov/govuk-infrastructure/.github/workflows/autorelease-rubygem.yml@main
9
+ secrets:
10
+ GH_TOKEN: ${{ secrets.GOVUK_CI_GITHUB_API_TOKEN }}
@@ -1,15 +1,36 @@
1
1
  on: [push, pull_request]
2
2
 
3
3
  jobs:
4
+ snyk-security:
5
+ name: SNYK security analysis
6
+ uses: alphagov/govuk-infrastructure/.github/workflows/snyk-security.yml@main
7
+ with:
8
+ skip_sca: true
9
+ secrets: inherit
10
+ permissions:
11
+ contents: read
12
+ security-events: write
13
+ actions: read
14
+
15
+ codeql-sast:
16
+ name: CodeQL SAST scan
17
+ uses: alphagov/govuk-infrastructure/.github/workflows/codeql-analysis.yml@main
18
+ permissions:
19
+ security-events: write
20
+
21
+ dependency-review:
22
+ name: Dependency Review scan
23
+ uses: alphagov/govuk-infrastructure/.github/workflows/dependency-review.yml@main
24
+
4
25
  test_matrix:
5
26
  strategy:
6
27
  fail-fast: false
7
28
  matrix:
8
29
  # Due to https://github.com/actions/runner/issues/849, we have to use quotes for '3.0'
9
- ruby: [ 2.7, '3.0', 3.1 ]
30
+ ruby: ['3.0', 3.1, 3.2]
10
31
  runs-on: ubuntu-latest
11
32
  steps:
12
- - uses: actions/checkout@v3
33
+ - uses: actions/checkout@v4
13
34
  - uses: ruby/setup-ruby@v1
14
35
  with:
15
36
  ruby-version: ${{ matrix.ruby }}
@@ -30,6 +51,6 @@ jobs:
30
51
  if: ${{ github.ref == 'refs/heads/main' }}
31
52
  permissions:
32
53
  contents: write
33
- uses: alphagov/govuk-infrastructure/.github/workflows/publish-rubygem.yaml@main
54
+ uses: alphagov/govuk-infrastructure/.github/workflows/publish-rubygem.yml@main
34
55
  secrets:
35
56
  GEM_HOST_API_KEY: ${{ secrets.ALPHAGOV_RUBYGEMS_API_KEY }}
@@ -0,0 +1,6 @@
1
+ api_version: 1
2
+ auto_merge:
3
+ - dependency: rubocop-govuk
4
+ allowed_semver_bumps:
5
+ - patch
6
+ - minor
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.7.6
1
+ 3.0.5
data/CHANGELOG.md CHANGED
@@ -1,3 +1,12 @@
1
+ ## 2.1.0
2
+
3
+ * Drop support for Ruby 2.7.
4
+
5
+ # 2.0.0
6
+
7
+ - Add support for Rack 3
8
+ - **BREAKING** Only allows lower case header keys due to [underlying Rack spec change at 3.0.0beta1](https://github.com/rack/rack/blob/main/CHANGELOG.md#300beta1---2022-08-08).
9
+
1
10
  # 1.1.0
2
11
 
3
12
  - Require Ruby 2.7 and greater
data/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # Rack::Logstasher
2
2
 
3
- Rack middleware to log requests in logstash json event format
3
+ Rack middleware to log requests in logstash json event format.
4
+ It is designed to give Rails-like logging to Sinatra apps.
5
+ The gem is currently used by [search-api](https://github.com/alphagov/search-api) and [contentful-listener-api](https://github.com/alphagov/contentful-listener-api).
4
6
 
5
7
  ## Installation
6
8
 
@@ -1,5 +1,5 @@
1
1
  module Rack
2
2
  module Logstasher
3
- VERSION = "1.1.0".freeze
3
+ VERSION = "2.1.0".freeze
4
4
  end
5
5
  end
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
12
12
  spec.homepage = "https://github.com/alphagov/rack-logstasher"
13
13
  spec.license = "MIT"
14
14
 
15
- spec.required_ruby_version = ">= 2.7"
15
+ spec.required_ruby_version = ">= 3.0"
16
16
 
17
17
  spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
18
18
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
@@ -20,10 +20,10 @@ Gem::Specification.new do |spec|
20
20
  spec.require_paths = %w[lib]
21
21
 
22
22
  spec.add_dependency "logstash-event", "~> 1.2"
23
- spec.add_dependency "rack", "~> 2.0"
23
+ spec.add_dependency "rack", ">= 2", "< 4"
24
24
 
25
25
  spec.add_development_dependency "rack-test", "~> 2"
26
26
  spec.add_development_dependency "rake"
27
27
  spec.add_development_dependency "rspec", "~> 3"
28
- spec.add_development_dependency "rubocop-govuk", "4.8.0"
28
+ spec.add_development_dependency "rubocop-govuk", "4.16.1"
29
29
  end
@@ -110,7 +110,7 @@ describe Rack::Logstasher::Logger do
110
110
 
111
111
  it "adds specified extra response headers to the log under the given key" do
112
112
  extra_response_headers["foo"] = "header_foo"
113
- inner_response_headers["Foo"] = "bar"
113
+ inner_response_headers["foo"] = "bar"
114
114
  get "/something"
115
115
 
116
116
  log_details = JSON.parse(last_log_line)
@@ -136,16 +136,6 @@ describe Rack::Logstasher::Logger do
136
136
 
137
137
  expect(log_details["cache_status"]).to eq("MISS")
138
138
  end
139
-
140
- it "matches header in a case-insensitive fashion" do
141
- extra_response_headers["X-CacHe"] = "cache_status"
142
- inner_response_headers["x-cAche"] = "MISS"
143
- get "/something"
144
-
145
- log_details = JSON.parse(last_log_line)
146
-
147
- expect(log_details["cache_status"]).to eq("MISS")
148
- end
149
139
  end
150
140
  end
151
141
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack-logstasher
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GOV.UK Dev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-31 00:00:00.000000000 Z
11
+ date: 2024-04-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: logstash-event
@@ -28,16 +28,22 @@ dependencies:
28
28
  name: rack
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '2'
34
+ - - "<"
32
35
  - !ruby/object:Gem::Version
33
- version: '2.0'
36
+ version: '4'
34
37
  type: :runtime
35
38
  prerelease: false
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
38
- - - "~>"
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: '2'
44
+ - - "<"
39
45
  - !ruby/object:Gem::Version
40
- version: '2.0'
46
+ version: '4'
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: rack-test
43
49
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +92,14 @@ dependencies:
86
92
  requirements:
87
93
  - - '='
88
94
  - !ruby/object:Gem::Version
89
- version: 4.8.0
95
+ version: 4.16.1
90
96
  type: :development
91
97
  prerelease: false
92
98
  version_requirements: !ruby/object:Gem::Requirement
93
99
  requirements:
94
100
  - - '='
95
101
  - !ruby/object:Gem::Version
96
- version: 4.8.0
102
+ version: 4.16.1
97
103
  description: Rack middleware to log requests in logstash json event format. Like
98
104
  the logstasher gem, but for rack apps.
99
105
  email:
@@ -103,8 +109,10 @@ extensions: []
103
109
  extra_rdoc_files: []
104
110
  files:
105
111
  - ".github/dependabot.yml"
112
+ - ".github/workflows/autorelease.yml"
106
113
  - ".github/workflows/ci.yml"
107
114
  - ".gitignore"
115
+ - ".govuk_dependabot_merger.yml"
108
116
  - ".rspec"
109
117
  - ".rubocop.yml"
110
118
  - ".ruby-version"
@@ -132,14 +140,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
132
140
  requirements:
133
141
  - - ">="
134
142
  - !ruby/object:Gem::Version
135
- version: '2.7'
143
+ version: '3.0'
136
144
  required_rubygems_version: !ruby/object:Gem::Requirement
137
145
  requirements:
138
146
  - - ">="
139
147
  - !ruby/object:Gem::Version
140
148
  version: '0'
141
149
  requirements: []
142
- rubygems_version: 3.3.24
150
+ rubygems_version: 3.5.7
143
151
  signing_key:
144
152
  specification_version: 4
145
153
  summary: Rack middleware to log requests in logstash json event format