hermod 2.7.0 → 3.2.0

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: d661471576b43558cd71f9d1cdd5cc880f309c78b466ff282013691ea1f92f1f
4
- data.tar.gz: 111b5510e339ce143736e5d12f29ab7085e17b816702db3b497fe086843b5108
3
+ metadata.gz: 302360031558c04da583c3848285d0e8bdf06c78ae0c2043b8acee1c1956e949
4
+ data.tar.gz: a3d411386728d0a9535502027f17fcf068d3c144b5918ad6ce26f0f3d1568864
5
5
  SHA512:
6
- metadata.gz: ed2e552c55970afb070a10fd8066daba21217aca91a4116ca9f365a31c93f5a9033caf5d356d49e45506bbcb05125f88b1cc5d10540c282d52ba70bd5b654566
7
- data.tar.gz: 614466df8d6f6c6ca31a306a680f99f04dc865e14bba6fd7bbb89b272850fe3816234d8861cf2b1b9e711215e63b8f78d1d98e73e02316473f1f1c80430bbb1a
6
+ metadata.gz: 3cb736cc90afdbab08345354f8b4ffab923488f9208dfeb417382cb91bb14590b9532aa4638c0683950ee8702234569f56e81e6b9fa7775d4a1e18404b7d790b
7
+ data.tar.gz: d97888ab601cd78634837481260da4cae48f437ce7388d8ead4359b3b418260423d895833c1b625b095f91a4f1033e7ace0171f08000a55b65c9c82527553220
@@ -0,0 +1 @@
1
+ **/* @fac/tax-engineering
@@ -0,0 +1,11 @@
1
+ # To get started with Dependabot version updates, you'll need to specify which
2
+ # package ecosystems to update and where the package manifests are located.
3
+ # Please see the documentation for all configuration options:
4
+ # https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
5
+
6
+ version: 2
7
+ updates:
8
+ - package-ecosystem: "bundler" # See documentation for possible values
9
+ directory: "/" # Location of package manifests
10
+ schedule:
11
+ interval: "weekly"
@@ -0,0 +1,58 @@
1
+ # Duplicated from: https://github.com/fac/shared-workflows/blob/main/.github/workflows/actionlint.yml
2
+ # Using this public repo as a de facto public mirror for the shared workflow
3
+
4
+ name: Lint workflow files
5
+
6
+ on:
7
+ push:
8
+ paths:
9
+ - '.github/workflows/*.yml'
10
+ - '.github/workflows/*.yaml'
11
+ pull_request:
12
+ types:
13
+ - opened
14
+ - reopened
15
+ - synchronize
16
+ paths:
17
+ - '.github/workflows/*.yml'
18
+ - '.github/workflows/*.yaml'
19
+ workflow_call:
20
+
21
+ permissions:
22
+ pull-requests: write
23
+ contents: read
24
+
25
+ env:
26
+ REVIEWDOG_REPORTER: ${{ github.event_name == 'pull_request' && 'github-pr-review' || 'github-check' }}
27
+
28
+ jobs:
29
+ actionlint:
30
+ runs-on: ubuntu-latest
31
+ steps:
32
+ - name: Find PR
33
+ if: ${{ ! contains(env.REVIEWDOG_REPORTER, 'pr') }}
34
+ id: pr
35
+ env:
36
+ GH_TOKEN: ${{ secrets.github_token }}
37
+ run: |
38
+ pr_number="$(gh api graphql -f query='{
39
+ repository(name:"${{ github.event.repository.name }}", owner:"${{ github.repository_owner }}") {
40
+ object(oid:"${{ github.sha }}") {
41
+ ... on Commit {
42
+ associatedPullRequests(first:1) {
43
+ nodes {
44
+ number
45
+ }
46
+ }
47
+ }
48
+ }
49
+ }
50
+ }' --jq '.data.repository.object.associatedPullRequests.nodes[].number')"
51
+ echo "number=$pr_number" >> "$GITHUB_OUTPUT"
52
+
53
+ - uses: actions/checkout@v3
54
+ - uses: reviewdog/action-actionlint@v1.37.1
55
+ if: ${{ ! steps.pr.outputs.number }}
56
+ with:
57
+ fail_on_error: true
58
+ reporter: ${{ env.REVIEWDOG_REPORTER }}
@@ -1,58 +1,27 @@
1
- # Build, test and push gems to the FreeAgent registry.
2
- # https://github.com/orgs/fac/packages?ecosystem=rubygems
3
- # https://www.notion.so/freeagent/Internal-gems-5c8098501fcc48e4921be31aa9b4d495
4
- name: FreeAgent Gem
1
+ name: Release Gem
2
+
5
3
  on:
6
4
  push:
7
- branches: [master]
8
- pull_request:
5
+ branches:
6
+ - master
7
+ paths:
8
+ - "lib/hermod/version.rb"
9
9
 
10
10
  jobs:
11
- # Install the bundle and run the gems test suite.
12
- tests:
13
- runs-on: ubuntu-latest
14
-
15
- steps:
16
- - uses: actions/checkout@v2
17
- - uses: ruby/setup-ruby@v1 # .ruby-version
18
- with:
19
- bundler-cache: true # bundle install
20
-
21
- - name: Test
22
- run: bundle exec rake
23
-
24
- # Builds that pass testing above, will trigger a build and push of the new
25
- # gem version to the registry. If the version.rb has not been bumped since
26
- # the last release, the push will no-op.
27
11
  release:
28
- needs: tests
29
12
  runs-on: ubuntu-latest
30
13
 
31
- steps:
32
- - uses: fac/ruby-gem-setup-credentials-action@v2
33
- with:
34
- user: ""
35
- key: rubygems
36
- token: ${{ secrets.FAC_RUBYGEMS_KEY }}
14
+ permissions:
15
+ id-token: write
16
+ contents: write
37
17
 
38
- # Build the gem package
39
- - uses: actions/checkout@v2
40
- - uses: ruby/setup-ruby@v1
41
- with:
42
- bundler-cache: true
43
- - run: bundle exec rake build
18
+ steps:
19
+ - uses: actions/checkout@v4
20
+ - uses: ruby/setup-ruby@v1
21
+ with:
22
+ bundler-cache: true
44
23
 
45
- # Release production gem version from default branch
46
- - name: Release
47
- if: github.ref == 'refs/heads/master'
48
- uses: fac/ruby-gem-push-action@v2
49
- with:
50
- key: rubygems
24
+ - name: Test
25
+ run: bundle exec rake
51
26
 
52
- # PR branch builds will release pre-release gems
53
- - name: Pre-Release
54
- if: github.ref != 'refs/heads/master'
55
- uses: fac/ruby-gem-push-action@v2
56
- with:
57
- key: rubygems
58
- pre-release: true
27
+ - uses: rubygems/release-gem@v1
@@ -0,0 +1,17 @@
1
+ name: Run Tests
2
+
3
+ on:
4
+ pull_request:
5
+
6
+ jobs:
7
+ tests:
8
+ runs-on: ubuntu-latest
9
+
10
+ steps:
11
+ - uses: actions/checkout@v4
12
+ - uses: ruby/setup-ruby@v1
13
+ with:
14
+ bundler-cache: true
15
+
16
+ - name: Test
17
+ run: bundle exec rake
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.0.3
1
+ 3.4.1
data/CHANGELOG.md CHANGED
@@ -7,6 +7,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [3.2.0] - 2025-02-10
11
+ ### Changed
12
+ - Bumped minimum ruby version to 3.4.1
13
+ - Updated bundler version to 2.6.2
14
+
15
+ ## [3.1.0] - 2025-01-03
16
+ ### Changed
17
+ - Bumped minimum ruby requirement from 2.5 to 3.0
18
+ - Updated nokogiri, rake, libxml-ruby, guard, prydoc, pry-byebug versions
19
+
20
+ ## [3.0.0] - 2023-04-19
21
+ ### Removed
22
+ - Removed support for Ruby 2.0 - 2.4, minimum supported version is now 2.5
23
+ - Removed Travis CI
24
+
25
+ ### Changed
26
+ - Changed project Ruby version to 3.1.4
27
+ - Updated dependencies to versions supporting a minimum of Ruby 2.5
28
+
10
29
  ## [2.7.0] - 2022-05-25
11
30
  ### Fixed
12
31
  - Added missing require in `Hermod::XmlSectionBuilder`
data/Gemfile CHANGED
@@ -4,10 +4,8 @@ source 'https://rubygems.org'
4
4
  gemspec
5
5
 
6
6
  group :test do
7
- gem "guard", "~> 2.13.0"
8
- gem "guard-minitest", "~> 2.4.4"
9
- gem "pry-byebug", "~> 3.3.0", platform: [:mri_20, :mri_21]
10
- gem "pry-debugger", "~> 0.2.3", platform: :mri_19
11
- gem "pry-doc", "~> 0.8.0"
12
- gem "bond", "~> 0.5.1"
7
+ gem "guard", "~> 2.19.0"
8
+ gem "guard-minitest", "~> 2.4.6"
9
+ gem "pry-byebug", "~> 3.10.1"
10
+ gem "pry-doc", "~> 1.5.0"
13
11
  end
data/README.md CHANGED
@@ -1,9 +1,12 @@
1
+ [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=fac_hermod&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=fac_hermod)
2
+ [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=fac_hermod&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=fac_hermod)
3
+ [![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=fac_hermod&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=fac_hermod)
4
+
1
5
  # Hermod
2
6
 
3
7
  [![Gem](https://github.com/fac/hermod/actions/workflows/freeagent-gem.yml/badge.svg)](https://github.com/fac/hermod/actions/workflows/freeagent-gem.yml)
4
8
  [![Code
5
9
  Climate](https://codeclimate.com/github/fac/hermod/badges/gpa.svg)](https://codeclimate.com/github/fac/hermod)
6
- [![Build Status](https://travis-ci.org/fac/hermod.svg?branch=master)](https://travis-ci.org/fac/hermod)
7
10
 
8
11
  This gem makes it easier to talk to HMRC through the [Government Gateway][1] by
9
12
  providing a DSL you can use to create Ruby classes to build the XML required in
data/hermod.gemspec CHANGED
@@ -6,8 +6,8 @@ require 'hermod/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "hermod"
8
8
  spec.version = Hermod::VERSION
9
- spec.authors = ["Harry Mills"]
10
- spec.email = ["harry@freeagent.com"]
9
+ spec.authors = ["FreeAgent"]
10
+ spec.email = ["opensource@freeagent.com"]
11
11
  spec.summary = %q{A Ruby library for talking to the HMRC Government Gateway.}
12
12
  spec.description = %q{A Ruby library for talking to the HMRC Government Gateway.
13
13
  This provides a builder for creating classes that can generate the XML needed complete with type information and
@@ -20,16 +20,16 @@ Gem::Specification.new do |spec|
20
20
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
21
21
  spec.require_paths = ["lib"]
22
22
 
23
- spec.required_ruby_version = ">= 2.0.0"
23
+ spec.required_ruby_version = ">= 3.0"
24
24
 
25
- spec.add_runtime_dependency "libxml-ruby", "~> 3.2"
25
+ spec.add_runtime_dependency "libxml-ruby", "~> 5.0.3"
26
26
  spec.add_runtime_dependency "activesupport", "> 3.2"
27
27
 
28
- spec.add_development_dependency "bundler", "~> 2.0"
29
- spec.add_development_dependency "rake", "13.0.1"
28
+ spec.add_development_dependency "bundler", "~> 2.6", ">= 2.6.2"
29
+ spec.add_development_dependency "rake", "~> 13.2"
30
30
  spec.add_development_dependency "minitest", "~> 5.15"
31
- spec.add_development_dependency "minitest-reporters", ">= 1.0.16", "~> 1.5"
32
- spec.add_development_dependency "nokogiri", "~> 1.13"
31
+ spec.add_development_dependency "minitest-reporters", "~> 1.6"
32
+ spec.add_development_dependency "nokogiri", "~> 1.16"
33
33
 
34
34
  spec.metadata = {
35
35
  "allowed_push_host" => "https://rubygems.org",
@@ -1,3 +1,3 @@
1
1
  module Hermod
2
- VERSION = "2.7.0"
2
+ VERSION = "3.2.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hermod
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.0
4
+ version: 3.2.0
5
5
  platform: ruby
6
6
  authors:
7
- - Harry Mills
8
- autorequire:
7
+ - FreeAgent
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2022-05-25 00:00:00.000000000 Z
10
+ date: 2025-02-10 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: libxml-ruby
@@ -16,14 +15,14 @@ dependencies:
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: '3.2'
18
+ version: 5.0.3
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
- version: '3.2'
25
+ version: 5.0.3
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: activesupport
29
28
  requirement: !ruby/object:Gem::Requirement
@@ -44,28 +43,34 @@ dependencies:
44
43
  requirements:
45
44
  - - "~>"
46
45
  - !ruby/object:Gem::Version
47
- version: '2.0'
46
+ version: '2.6'
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: 2.6.2
48
50
  type: :development
49
51
  prerelease: false
50
52
  version_requirements: !ruby/object:Gem::Requirement
51
53
  requirements:
52
54
  - - "~>"
53
55
  - !ruby/object:Gem::Version
54
- version: '2.0'
56
+ version: '2.6'
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: 2.6.2
55
60
  - !ruby/object:Gem::Dependency
56
61
  name: rake
57
62
  requirement: !ruby/object:Gem::Requirement
58
63
  requirements:
59
- - - '='
64
+ - - "~>"
60
65
  - !ruby/object:Gem::Version
61
- version: 13.0.1
66
+ version: '13.2'
62
67
  type: :development
63
68
  prerelease: false
64
69
  version_requirements: !ruby/object:Gem::Requirement
65
70
  requirements:
66
- - - '='
71
+ - - "~>"
67
72
  - !ruby/object:Gem::Version
68
- version: 13.0.1
73
+ version: '13.2'
69
74
  - !ruby/object:Gem::Dependency
70
75
  name: minitest
71
76
  requirement: !ruby/object:Gem::Requirement
@@ -84,62 +89,53 @@ dependencies:
84
89
  name: minitest-reporters
85
90
  requirement: !ruby/object:Gem::Requirement
86
91
  requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: 1.0.16
90
92
  - - "~>"
91
93
  - !ruby/object:Gem::Version
92
- version: '1.5'
94
+ version: '1.6'
93
95
  type: :development
94
96
  prerelease: false
95
97
  version_requirements: !ruby/object:Gem::Requirement
96
98
  requirements:
97
- - - ">="
98
- - !ruby/object:Gem::Version
99
- version: 1.0.16
100
99
  - - "~>"
101
100
  - !ruby/object:Gem::Version
102
- version: '1.5'
101
+ version: '1.6'
103
102
  - !ruby/object:Gem::Dependency
104
103
  name: nokogiri
105
104
  requirement: !ruby/object:Gem::Requirement
106
105
  requirements:
107
106
  - - "~>"
108
107
  - !ruby/object:Gem::Version
109
- version: '1.13'
108
+ version: '1.16'
110
109
  type: :development
111
110
  prerelease: false
112
111
  version_requirements: !ruby/object:Gem::Requirement
113
112
  requirements:
114
113
  - - "~>"
115
114
  - !ruby/object:Gem::Version
116
- version: '1.13'
115
+ version: '1.16'
117
116
  description: |-
118
117
  A Ruby library for talking to the HMRC Government Gateway.
119
118
  This provides a builder for creating classes that can generate the XML needed complete with type information and
120
119
  runtime validation.
121
120
  email:
122
- - harry@freeagent.com
121
+ - opensource@freeagent.com
123
122
  executables: []
124
123
  extensions: []
125
124
  extra_rdoc_files: []
126
125
  files:
126
+ - ".github/CODEOWNERS"
127
+ - ".github/dependabot.yml"
128
+ - ".github/workflows/actionlint.yml"
127
129
  - ".github/workflows/freeagent-gem.yml"
128
- - ".github/workflows/reviewdog.yml"
130
+ - ".github/workflows/tests.yml"
129
131
  - ".gitignore"
130
132
  - ".ruby-version"
131
- - ".travis.yml"
132
133
  - CHANGELOG.md
133
134
  - Gemfile
134
135
  - Guardfile
135
136
  - LICENSE
136
137
  - README.md
137
138
  - Rakefile
138
- - gemfiles/activesupport-3.2
139
- - gemfiles/activesupport-4.0
140
- - gemfiles/activesupport-4.2
141
- - gemfiles/activesupport-5.0
142
- - gemfiles/activesupport-6.0
143
139
  - hermod.gemspec
144
140
  - lib/hermod.rb
145
141
  - lib/hermod/input_mutator.rb
@@ -188,7 +184,6 @@ metadata:
188
184
  changelog_uri: https://github.com/fac/hermod/blob/master/CHANGELOG.md
189
185
  source_code_uri: https://github.com/fac/hermod
190
186
  wiki_uri: https://github.com/fac/hermod/blob/master/README.md
191
- post_install_message:
192
187
  rdoc_options: []
193
188
  require_paths:
194
189
  - lib
@@ -196,15 +191,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
196
191
  requirements:
197
192
  - - ">="
198
193
  - !ruby/object:Gem::Version
199
- version: 2.0.0
194
+ version: '3.0'
200
195
  required_rubygems_version: !ruby/object:Gem::Requirement
201
196
  requirements:
202
197
  - - ">="
203
198
  - !ruby/object:Gem::Version
204
199
  version: '0'
205
200
  requirements: []
206
- rubygems_version: 3.2.32
207
- signing_key:
201
+ rubygems_version: 3.6.2
208
202
  specification_version: 4
209
203
  summary: A Ruby library for talking to the HMRC Government Gateway.
210
204
  test_files:
@@ -1,13 +0,0 @@
1
- name: reviewdog
2
- on: [pull_request]
3
- jobs:
4
- actionlint:
5
- name: runner / actionlint
6
- runs-on: ubuntu-latest
7
- steps:
8
- - uses: actions/checkout@v3
9
- - name: actionlint
10
- uses: reviewdog/action-actionlint@v1
11
- with:
12
- fail_on_error: true
13
- reporter: github-pr-review
data/.travis.yml DELETED
@@ -1,12 +0,0 @@
1
- language: ruby
2
- bundler_args: --without test
3
- rvm:
4
- - 2.2.4
5
- - 2.3.0
6
- gemfile:
7
- - gemfiles/activesupport-3.2
8
- - gemfiles/activesupport-4.0
9
- - gemfiles/activesupport-4.2
10
- - gemfiles/activesupport-5.0
11
- - gemfiles/activesupport-6.0
12
-
@@ -1,6 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in xml-section.gemspec
4
- gemspec :path => "../"
5
-
6
- gem "activesupport", "~> 3.2"
@@ -1,6 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in xml-section.gemspec
4
- gemspec :path => "../"
5
-
6
- gem "activesupport", "~> 4.0"
@@ -1,6 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in xml-section.gemspec
4
- gemspec :path => "../"
5
-
6
- gem "activesupport", "~> 4.2"
@@ -1,6 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in xml-section.gemspec
4
- gemspec :path => "../"
5
-
6
- gem "activesupport", "~> 5.0"
@@ -1,6 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in xml-section.gemspec
4
- gemspec :path => "../"
5
-
6
- gem "activesupport", "~> 6.0"